@retinalabsllc/zairusjs 17.2.1 → 17.2.6

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
@@ -53,6 +53,7 @@ __export(index_exports, {
53
53
  MedicalFeatureStatsBlock: () => MedicalFeatureStatsBlock,
54
54
  MobileNav: () => MobileNav,
55
55
  NumberInput: () => NumberInput,
56
+ OpenBidHome: () => OpenBidHome,
56
57
  PageSpinner: () => PageSpinner,
57
58
  PinDialerBottomSheet: () => PinDialerBottomSheet,
58
59
  PipleAuth: () => PipleAuth,
@@ -5369,14 +5370,262 @@ var UniversalHome2 = ({
5369
5370
  ))))));
5370
5371
  };
5371
5372
 
5372
- // src/components/UniversalSettings.tsx
5373
+ // src/components/OpenBidHome.tsx
5374
+ var import_react92 = __toESM(require("react"));
5375
+ var import_react93 = require("@hugeicons/react");
5376
+ var import_core_free_icons35 = require("@hugeicons/core-free-icons");
5377
+
5378
+ // src/components/OptionWithIcon.tsx
5373
5379
  var import_react90 = __toESM(require("react"));
5374
- var import_react_hot_toast15 = __toESM(require("react-hot-toast"));
5375
5380
  var import_react91 = require("@hugeicons/react");
5376
5381
  var import_core_free_icons34 = require("@hugeicons/core-free-icons");
5382
+ var OptionWithIcon = ({
5383
+ isOpen,
5384
+ onClose,
5385
+ title,
5386
+ options,
5387
+ selectedOption,
5388
+ onSelect,
5389
+ showSearch = false
5390
+ }) => {
5391
+ const [searchQuery, setSearchQuery] = (0, import_react90.useState)("");
5392
+ if (!isOpen) return null;
5393
+ const filteredOptions = options.filter(
5394
+ (opt) => opt.label.toLowerCase().includes(searchQuery.toLowerCase())
5395
+ );
5396
+ return /* @__PURE__ */ import_react90.default.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "absolute inset-0 bg-black/30", onClick: onClose }), /* @__PURE__ */ import_react90.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]" }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 " }, /* @__PURE__ */ import_react90.default.createElement("h3", { className: "text-[15px] text-black tracking-tight" }, title), /* @__PURE__ */ import_react90.default.createElement("button", { onClick: onClose, className: "text-neutral-400 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ import_react90.default.createElement(import_react91.HugeiconsIcon, { icon: import_core_free_icons34.CancelCircleIcon, size: 18 }))), showSearch && /* @__PURE__ */ import_react90.default.createElement("div", { className: "p-4 shrink-0 " }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "relative w-full" }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "absolute inset-y-0 left-0 pl-4 flex items-center pointer-events-none" }, /* @__PURE__ */ import_react90.default.createElement(import_react91.HugeiconsIcon, { icon: import_core_free_icons34.Search01Icon, size: 16, className: "text-neutral-400" })), /* @__PURE__ */ import_react90.default.createElement(
5397
+ "input",
5398
+ {
5399
+ type: "text",
5400
+ placeholder: "Search...",
5401
+ value: searchQuery,
5402
+ onChange: (e) => setSearchQuery(e.target.value),
5403
+ className: "w-full pl-10 pr-4 py-2.5 bg-neutral-100 rounded-full text-[12px] text-black placeholder-neutral-400 outline-none focus:bg-neutral-200 transition-colors"
5404
+ }
5405
+ ))), /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-2" }, filteredOptions.length === 0 ? /* @__PURE__ */ import_react90.default.createElement("div", { className: "p-6 text-center text-[12px] text-neutral-400" }, "No options found.") : filteredOptions.map((opt) => {
5406
+ const isSelected = selectedOption.label === opt.label;
5407
+ return /* @__PURE__ */ import_react90.default.createElement(
5408
+ "button",
5409
+ {
5410
+ key: opt.label,
5411
+ onClick: () => {
5412
+ onSelect(opt);
5413
+ onClose();
5414
+ },
5415
+ className: `w-full flex items-center gap-3 p-4 text-[12px] tracking-tight rounded-full transition-colors outline-none ${isSelected ? "text-[#068afe] bg-[#068afe]/10" : "text-neutral-600 hover:bg-neutral-50/50"}`
5416
+ },
5417
+ opt.icon && /* @__PURE__ */ import_react90.default.createElement(import_react91.HugeiconsIcon, { icon: opt.icon, size: 16, className: isSelected ? "text-[#068afe]" : "text-neutral-400" }),
5418
+ /* @__PURE__ */ import_react90.default.createElement("span", null, opt.label.charAt(0).toUpperCase() + opt.label.slice(1).toLowerCase())
5419
+ );
5420
+ }))));
5421
+ };
5422
+
5423
+ // src/components/OpenBidHome.tsx
5424
+ var CATEGORIES = [
5425
+ { label: "Leaderboards & Attention", icon: import_core_free_icons35.StarIcon },
5426
+ { label: "SEO & AI Visibility", icon: import_core_free_icons35.Search01Icon },
5427
+ { label: "AI Agents & Infrastructure", icon: import_core_free_icons35.Link01Icon },
5428
+ { label: "Marketing & Advertising", icon: import_core_free_icons35.StarIcon },
5429
+ { label: "Developer Tools", icon: import_core_free_icons35.ListSettingIcon },
5430
+ { label: "Crypto, Web3 & Investing", icon: import_core_free_icons35.StarIcon }
5431
+ ];
5432
+ var SiteAvatar = ({ src, sizeClass = "w-9 h-9" }) => {
5433
+ const [loaded, setLoaded] = (0, import_react92.useState)(false);
5434
+ const [error, setError] = (0, import_react92.useState)(false);
5435
+ return /* @__PURE__ */ import_react92.default.createElement("div", { className: `relative shrink-0 ${sizeClass}` }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "w-full h-full flex items-center justify-center overflow-hidden" }, !loaded && !error && src && /* @__PURE__ */ import_react92.default.createElement(import_react93.HugeiconsIcon, { icon: import_core_free_icons35.Loading03Icon, className: "animate-spin text-neutral-400 absolute", size: 14 }), error || !src ? /* @__PURE__ */ import_react92.default.createElement(import_react93.HugeiconsIcon, { icon: import_core_free_icons35.StarIcon, className: "text-neutral-300", size: 18 }) : /* @__PURE__ */ import_react92.default.createElement(
5436
+ "img",
5437
+ {
5438
+ src,
5439
+ alt: "Site icon",
5440
+ className: `w-full h-full object-cover transition-opacity duration-300 ${loaded ? "opacity-100" : "opacity-0"}`,
5441
+ onLoad: () => setLoaded(true),
5442
+ onError: () => setError(true)
5443
+ }
5444
+ )));
5445
+ };
5446
+ var AnimatedCounter = ({ value }) => {
5447
+ const [count, setCount] = (0, import_react92.useState)(0);
5448
+ (0, import_react92.useEffect)(() => {
5449
+ let startTimestamp = 0;
5450
+ const duration = 2e3;
5451
+ let animationFrameId;
5452
+ const step = (timestamp) => {
5453
+ if (!startTimestamp) startTimestamp = timestamp;
5454
+ const progress = Math.min((timestamp - startTimestamp) / duration, 1);
5455
+ const easeProgress = progress === 1 ? 1 : 1 - Math.pow(2, -10 * progress);
5456
+ setCount(Math.floor(easeProgress * value));
5457
+ if (progress < 1) {
5458
+ animationFrameId = window.requestAnimationFrame(step);
5459
+ }
5460
+ };
5461
+ animationFrameId = window.requestAnimationFrame(step);
5462
+ return () => window.cancelAnimationFrame(animationFrameId);
5463
+ }, [value]);
5464
+ return /* @__PURE__ */ import_react92.default.createElement(import_react92.default.Fragment, null, count.toLocaleString());
5465
+ };
5466
+ var SkeletonRow = () => /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex items-center gap-3 p-3 md:p-4 rounded-2xl mb-2" }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "w-10 h-10 md:w-14 md:h-14 rounded-xl bg-neutral-200 animate-pulse shrink-0" }), /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex-1 flex flex-col gap-3" }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex items-center justify-between" }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "h-4 bg-neutral-200 rounded w-1/3 animate-pulse" }), /* @__PURE__ */ import_react92.default.createElement("div", { className: "h-4 bg-neutral-200 rounded w-16 animate-pulse" })), /* @__PURE__ */ import_react92.default.createElement("div", { className: "h-3 bg-neutral-200 rounded w-2/3 animate-pulse" })));
5467
+ function OpenBidHome({
5468
+ data,
5469
+ latestActivity,
5470
+ isLoading,
5471
+ currentPage,
5472
+ totalPages,
5473
+ totalItems,
5474
+ onPageChange,
5475
+ totalProcessedAmount,
5476
+ inputFaviconSrc,
5477
+ onIdentityChange,
5478
+ onOutbidSubmit,
5479
+ isSubmitting,
5480
+ onlineCount = 0,
5481
+ visitorCount = 0
5482
+ }) {
5483
+ const topRef = (0, import_react92.useRef)(null);
5484
+ const [bidAmount, setBidAmount] = (0, import_react92.useState)(3134);
5485
+ const [identity, setIdentity] = (0, import_react92.useState)("");
5486
+ const [selectedCategory, setSelectedCategory] = (0, import_react92.useState)(CATEGORIES[0]);
5487
+ const [isCategoryModalOpen, setIsCategoryModalOpen] = (0, import_react92.useState)(false);
5488
+ const [isActivityExpanded, setIsActivityExpanded] = (0, import_react92.useState)(false);
5489
+ const handleBidChange = (delta) => {
5490
+ setBidAmount((prev) => Math.max(5, prev + delta));
5491
+ };
5492
+ const handleClaimRankClick = (requiredAmount) => {
5493
+ setBidAmount(requiredAmount);
5494
+ topRef.current?.scrollIntoView({ behavior: "smooth" });
5495
+ const input = document.getElementById("identity-input");
5496
+ if (input) input.focus();
5497
+ };
5498
+ const handleSubmit = (e) => {
5499
+ e.preventDefault();
5500
+ onOutbidSubmit(identity, bidAmount, selectedCategory.label);
5501
+ };
5502
+ const handleIdentityChange = (e) => {
5503
+ const val = e.target.value;
5504
+ setIdentity(val);
5505
+ onIdentityChange(val);
5506
+ };
5507
+ return /* @__PURE__ */ import_react92.default.createElement("div", { className: "w-full max-w-4xl mx-auto flex flex-col px-4 pt-12 pb-24 animate-in fade-in duration-300" }, /* @__PURE__ */ import_react92.default.createElement("header", { className: "mb-12 px-2 text-center", ref: topRef }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "inline-block max-w-full bg-white rounded-full px-4 py-2 text-xs text-neutral-500 transition-colors hover:text-black cursor-pointer leading-relaxed text-balance" }, /* @__PURE__ */ import_react92.default.createElement("span", { className: "inline-flex items-center gap-1.5 text-emerald-600 align-text-bottom whitespace-nowrap" }, /* @__PURE__ */ import_react92.default.createElement("span", { className: "relative flex h-2 w-2 shrink-0" }, /* @__PURE__ */ import_react92.default.createElement("span", { className: "animate-ping absolute inline-flex h-full w-full rounded-full bg-emerald-400 opacity-75" }), /* @__PURE__ */ import_react92.default.createElement("span", { className: "relative inline-flex rounded-full h-2 w-2 bg-emerald-500" })), /* @__PURE__ */ import_react92.default.createElement("span", null, onlineCount.toLocaleString(), " online")), /* @__PURE__ */ import_react92.default.createElement("span", { className: "mx-1.5" }, "\xB7"), /* @__PURE__ */ import_react92.default.createElement("span", null, visitorCount.toLocaleString(), " visitors since launch"), /* @__PURE__ */ import_react92.default.createElement("span", { className: "mx-1.5" }, "\xB7"), /* @__PURE__ */ import_react92.default.createElement("span", { className: "text-black underline decoration-neutral-300 hover:decoration-black transition-colors whitespace-nowrap" }, "Live stats"))), /* @__PURE__ */ import_react92.default.createElement("section", { className: "flex flex-col items-center mb-16" }, /* @__PURE__ */ import_react92.default.createElement("h2", { className: "flex flex-wrap items-center justify-center gap-x-3 text-center text-3xl md:text-5xl tracking-tight text-black mb-3" }, /* @__PURE__ */ import_react92.default.createElement("span", null, "Claim #1 for"), /* @__PURE__ */ import_react92.default.createElement("span", { className: "inline-flex items-center gap-3 bg-neutral-100 rounded-full p-1.5 border border-neutral-200" }, /* @__PURE__ */ import_react92.default.createElement("button", { onClick: () => handleBidChange(-1), type: "button", className: "w-8 h-8 md:w-10 md:h-10 flex items-center justify-center rounded-full bg-white text-black hover:bg-neutral-50 transition-colors outline-none text-lg" }, "\u2212"), /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex items-center tracking-tight px-2 w-24 justify-center" }, /* @__PURE__ */ import_react92.default.createElement("span", { className: "text-[#068afe] mr-0.5" }, "$"), /* @__PURE__ */ import_react92.default.createElement(
5508
+ "input",
5509
+ {
5510
+ type: "number",
5511
+ value: bidAmount,
5512
+ onChange: (e) => setBidAmount(Number(e.target.value)),
5513
+ className: "w-full bg-transparent p-0 outline-none text-center tabular-nums text-[#068afe] "
5514
+ }
5515
+ )), /* @__PURE__ */ import_react92.default.createElement("button", { onClick: () => handleBidChange(1), type: "button", className: "w-8 h-8 md:w-10 md:h-10 flex items-center justify-center rounded-full bg-white text-black hover:bg-neutral-50 transition-colors outline-none text-lg" }, "+"))), /* @__PURE__ */ import_react92.default.createElement("p", { className: "text-center text-sm text-neutral-500 max-w-md" }, /* @__PURE__ */ import_react92.default.createElement("span", { className: "text-[#068afe]" }, "New spots start at $5."), " Paying less than the #1 price puts you on the board at whatever rank your bid secures."), /* @__PURE__ */ import_react92.default.createElement("form", { onSubmit: handleSubmit, className: "mt-8 flex flex-col md:flex-row items-stretch md:items-center gap-3 w-full max-w-3xl bg-white p-2 rounded-2xl md:rounded-full" }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "relative flex-1 min-w-0" }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "absolute inset-y-0 left-0 pl-3 md:pl-4 flex items-center pointer-events-none" }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "w-7 h-7 rounded-full bg-neutral-100 flex items-center justify-center overflow-hidden" }, inputFaviconSrc ? /* @__PURE__ */ import_react92.default.createElement("img", { src: inputFaviconSrc, alt: "", className: "w-full h-full object-cover" }) : /* @__PURE__ */ import_react92.default.createElement(import_react93.HugeiconsIcon, { icon: import_core_free_icons35.Link01Icon, size: 14, className: "text-neutral-400" }))), /* @__PURE__ */ import_react92.default.createElement(
5516
+ "input",
5517
+ {
5518
+ id: "identity-input",
5519
+ type: "text",
5520
+ placeholder: "Your product URL or @handle",
5521
+ value: identity,
5522
+ onChange: handleIdentityChange,
5523
+ required: true,
5524
+ className: "w-full pl-12 md:pl-14 pr-4 h-12 bg-transparent text-sm text-black placeholder-neutral-400 outline-none transition-colors"
5525
+ }
5526
+ )), /* @__PURE__ */ import_react92.default.createElement("div", { className: "h-px w-full md:h-8 md:w-px bg-neutral-200 hidden md:block" }), /* @__PURE__ */ import_react92.default.createElement("div", { className: "min-w-0 md:w-64 shrink-0" }, /* @__PURE__ */ import_react92.default.createElement(
5527
+ "button",
5528
+ {
5529
+ type: "button",
5530
+ onClick: () => setIsCategoryModalOpen(true),
5531
+ className: "flex items-center justify-between w-full gap-2 h-12 px-4 bg-transparent outline-none text-sm text-black hover:text-black"
5532
+ },
5533
+ /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex items-center gap-2 truncate" }, selectedCategory.icon && /* @__PURE__ */ import_react92.default.createElement(import_react93.HugeiconsIcon, { icon: selectedCategory.icon, size: 16, className: "text-[#068afe] shrink-0" }), /* @__PURE__ */ import_react92.default.createElement("span", { className: "truncate" }, selectedCategory.label)),
5534
+ /* @__PURE__ */ import_react92.default.createElement(import_react93.HugeiconsIcon, { icon: import_core_free_icons35.ListSettingIcon, size: 16, className: "text-neutral-400 shrink-0" })
5535
+ )), /* @__PURE__ */ import_react92.default.createElement(
5536
+ ThreeDActionButton,
5537
+ {
5538
+ type: "submit",
5539
+ isLoading: isSubmitting,
5540
+ disabled: !identity || isSubmitting,
5541
+ className: "h-12 px-8 min-w-30 w-full md:w-auto md:rounded-full"
5542
+ },
5543
+ "Place Bid"
5544
+ )), /* @__PURE__ */ import_react92.default.createElement("p", { className: "mt-4 text-xs text-neutral-400" }, "Already on the list? Enter the same URL to increase your bid.")), /* @__PURE__ */ import_react92.default.createElement("div", { className: "mb-6 relative" }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex overflow-x-auto gap-2 pb-2 custom-scrollbar items-center" }, /* @__PURE__ */ import_react92.default.createElement("button", { className: "flex items-center gap-1.5 px-4 py-1.5 rounded-full border border-black bg-black text-white text-xs shrink-0 whitespace-nowrap transition-colors outline-none" }, "All"), CATEGORIES.map((cat) => /* @__PURE__ */ import_react92.default.createElement("button", { key: cat.label, className: "flex items-center gap-1.5 px-4 py-2 rounded-full bg-white text-black hover:bg-neutral-50 text-xs shrink-0 whitespace-nowrap transition-colors outline-none" }, cat.icon && /* @__PURE__ */ import_react92.default.createElement(import_react93.HugeiconsIcon, { icon: cat.icon, size: 14, className: "text-neutral-400" }), cat.label))), /* @__PURE__ */ import_react92.default.createElement("div", { className: "absolute inset-y-0 right-0 w-12 bg-linear-to-l from-neutral-100 to-transparent pointer-events-none" })), /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex flex-col relative w-full" }, isLoading ? /* @__PURE__ */ import_react92.default.createElement(import_react92.default.Fragment, null, Array.from({ length: 5 }).map((_, i) => /* @__PURE__ */ import_react92.default.createElement(SkeletonRow, { key: `skel-${i}` }))) : data.length === 0 ? /* @__PURE__ */ import_react92.default.createElement("div", { className: "text-center py-12 text-sm text-neutral-500" }, "No data") : data.map((item, index) => {
5545
+ const requiredBid = item.amount + 1;
5546
+ const isRank1 = item.rank === 1;
5547
+ const isRank2 = item.rank === 2;
5548
+ const isRank3 = item.rank === 3;
5549
+ const showActivity = item.rank === 4 || data.length < 4 && index === data.length - 1;
5550
+ let cardClasses = "";
5551
+ let numClasses = "";
5552
+ if (isRank1) {
5553
+ cardClasses = "bg-[#068afe]/20 rounded-2xl md:px-4 px-3 py-2 md:py-3 my-1.5 md:my-3";
5554
+ numClasses = "bg-[#068afe] text-white";
5555
+ } else if (isRank2) {
5556
+ cardClasses = "bg-[#068afe]/10 rounded-2xl md:px-4 px-3 py-2 md:py-3 my-1.5 md:my-3";
5557
+ numClasses = "bg-[#068afe] text-white";
5558
+ } else if (isRank3) {
5559
+ cardClasses = "bg-[#068afe]/5 rounded-2xl md:px-4 px-3 py-2 md:py-3 my-1.5 md:my-3";
5560
+ numClasses = "bg-[#068afe] text-white";
5561
+ } else {
5562
+ cardClasses = "border-t border-neutral-200 bg-transparent px-3 md:px-4 py-3 md:py-4 rounded-none";
5563
+ numClasses = "text-neutral-400 bg-transparent";
5564
+ }
5565
+ return /* @__PURE__ */ import_react92.default.createElement(import_react92.default.Fragment, { key: item.id }, showActivity && /* @__PURE__ */ import_react92.default.createElement("div", { className: "my-6 md:my-8 bg-white rounded-2xl p-4 md:p-5 relative" }, /* @__PURE__ */ import_react92.default.createElement("h2", { className: "text-sm mb-3 flex items-center gap-2" }, /* @__PURE__ */ import_react92.default.createElement("span", { className: "relative flex h-2 w-2" }, /* @__PURE__ */ import_react92.default.createElement("span", { className: "animate-ping absolute inline-flex h-full w-full rounded-full bg-[#068afe] opacity-75" }), /* @__PURE__ */ import_react92.default.createElement("span", { className: "relative inline-flex rounded-full h-2 w-2 bg-[#068afe]" })), "Latest activity"), latestActivity.length === 0 ? /* @__PURE__ */ import_react92.default.createElement("div", { className: "text-center py-6 text-sm text-neutral-400" }, "No data") : /* @__PURE__ */ import_react92.default.createElement("div", { className: `relative ${!isActivityExpanded ? "max-h-18 md:max-h-22 overflow-hidden md:overflow-visible" : ""}` }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex flex-col md:grid md:grid-cols-5 md:gap-2" }, latestActivity.map((act, idx) => /* @__PURE__ */ import_react92.default.createElement("div", { key: act.id, className: `flex flex-row items-center gap-3 py-2 md:p-3 md:rounded-2xl md:bg-neutral-50 md:hover:bg-neutral-100 transition-colors ${idx !== 0 ? "border-t border-neutral-100 md:border-0" : ""}` }, /* @__PURE__ */ import_react92.default.createElement(SiteAvatar, { src: act.favicon, sizeClass: "w-7 h-7 shrink-0" }), /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex flex-col min-w-0" }, /* @__PURE__ */ import_react92.default.createElement("p", { className: "text-xs text-black truncate" }, act.name), /* @__PURE__ */ import_react92.default.createElement("p", { className: "text-[10px] text-neutral-500 mt-0.5" }, "at #", act.rank, " \xB7 $", act.amount), /* @__PURE__ */ import_react92.default.createElement("p", { className: "text-[9px] text-neutral-400 mt-0.5" }, act.time))))), !isActivityExpanded && /* @__PURE__ */ import_react92.default.createElement("div", { className: "absolute inset-x-0 bottom-0 h-16 bg-linear-to-t from-white via-white/90 to-transparent pointer-events-none md:hidden flex items-end justify-center pb-1" }, /* @__PURE__ */ import_react92.default.createElement(
5566
+ "button",
5567
+ {
5568
+ onClick: () => setIsActivityExpanded(true),
5569
+ className: "pointer-events-auto px-4 py-1.5 bg-white border border-neutral-200 rounded-full text-[11px] outline-none"
5570
+ },
5571
+ "Show more"
5572
+ ))), isActivityExpanded && latestActivity.length > 0 && /* @__PURE__ */ import_react92.default.createElement("div", { className: "mt-4 flex justify-center md:hidden" }, /* @__PURE__ */ import_react92.default.createElement(
5573
+ "button",
5574
+ {
5575
+ onClick: () => setIsActivityExpanded(false),
5576
+ className: "px-4 py-1.5 bg-white border border-neutral-200 rounded-full text-[11px] outline-none"
5577
+ },
5578
+ "Show less"
5579
+ ))), /* @__PURE__ */ import_react92.default.createElement("div", { className: `group relative flex items-center justify-between transition-colors duration-300 ${cardClasses}` }, /* @__PURE__ */ import_react92.default.createElement("a", { href: item.url, target: "_blank", rel: "noopener noreferrer", className: "absolute inset-0 z-0 outline-none" }), /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex items-center gap-3 md:gap-4 flex-1 min-w-0 z-10 pointer-events-none group-hover:text-[#068afe]" }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex flex-col md:flex-row items-center gap-2 md:gap-3 shrink-0" }, /* @__PURE__ */ import_react92.default.createElement("span", { className: `inline-flex items-center justify-center tabular-nums min-w-7 md:min-w-10 px-2 py-0.5 md:py-1 rounded-full text-[11px] md:text-xs ${numClasses}` }, "#", item.rank), /* @__PURE__ */ import_react92.default.createElement(SiteAvatar, { src: item.favicon })), /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex flex-col min-w-0 flex-1 transition-opacity duration-300" }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex items-baseline gap-2 mb-0.5" }, /* @__PURE__ */ import_react92.default.createElement("p", { className: "text-black group-hover:text-[#068afe] text-sm truncate tracking-tight" }, item.name), /* @__PURE__ */ import_react92.default.createElement("p", { className: "text-[#068afe] text-[12px] shrink-0 tabular-nums" }, "$", item.amount.toLocaleString())), /* @__PURE__ */ import_react92.default.createElement("p", { className: "text-neutral-500 text-xs line-clamp-1 md:line-clamp-2 leading-relaxed" }, item.desc), /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex items-center gap-2 mt-1.5 text-[10px] md:text-[11px] text-neutral-400 " }, /* @__PURE__ */ import_react92.default.createElement("span", null, item.time), /* @__PURE__ */ import_react92.default.createElement("span", { className: "flex items-center gap-1 text-black" }, /* @__PURE__ */ import_react92.default.createElement("span", { className: "relative flex h-1.5 w-1.5" }, /* @__PURE__ */ import_react92.default.createElement("span", { className: "animate-ping absolute inline-flex h-full w-full rounded-full bg-[#068afe] opacity-75" }), /* @__PURE__ */ import_react92.default.createElement("span", { className: "relative inline-flex rounded-full h-1.5 w-1.5 bg-[#068afe]" })), item.clicks, " clicks")))), /* @__PURE__ */ import_react92.default.createElement("div", { className: "absolute left-1/2 -translate-x-1/2 top-0 -translate-y-1/2 z-20 opacity-0 group-hover:opacity-100 focus-within:opacity-100 transition-opacity duration-200" }, /* @__PURE__ */ import_react92.default.createElement(
5580
+ "button",
5581
+ {
5582
+ onClick: (e) => {
5583
+ e.stopPropagation();
5584
+ handleClaimRankClick(requiredBid);
5585
+ },
5586
+ className: "px-3 py-0.5 bg-[#068afe] text-white text-[11px] md:text-xs whitespace-nowrap rounded-full outline-none pointer-events-auto hover:bg-[#0575d9] transition-colors"
5587
+ },
5588
+ "claim this rank for $",
5589
+ requiredBid
5590
+ ))), item.rank === 10 && /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex items-center gap-3 py-6 px-4" }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "h-0.5 flex-1 bg-[#068afe]/20 rounded-full" }), /* @__PURE__ */ import_react92.default.createElement("span", { className: "text-xs tracking-widest text-[#068afe] px-3 py-1 bg-[#068afe]/10 border border-[#068afe]/20 rounded-full" }, "Top 10"), /* @__PURE__ */ import_react92.default.createElement("div", { className: "h-0.5 flex-1 bg-[#068afe]/20 rounded-full" })), item.rank === 20 && /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex items-center gap-3 py-6 px-4" }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "h-0.5 flex-1 bg-[#068afe]/20 rounded-full" }), /* @__PURE__ */ import_react92.default.createElement("span", { className: "text-xs tracking-widest text-[#068afe] px-3 py-1 bg-[#068afe]/10 border border-[#068afe]/20 rounded-full" }, "Top 20"), /* @__PURE__ */ import_react92.default.createElement("div", { className: "h-0.5 flex-1 bg-[#068afe]/20 rounded-full" })));
5591
+ })), !isLoading && data.length > 0 && /* @__PURE__ */ import_react92.default.createElement("div", { className: "mt-12 flex flex-col items-center gap-3" }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ import_react92.default.createElement(
5592
+ "button",
5593
+ {
5594
+ disabled: currentPage <= 1,
5595
+ onClick: () => onPageChange(currentPage - 1),
5596
+ className: "w-10 h-10 flex items-center justify-center rounded-full bg-white text-black hover:bg-neutral-50 disabled:text-neutral-300 disabled:bg-white outline-none transition-colors"
5597
+ },
5598
+ /* @__PURE__ */ import_react92.default.createElement(import_react93.HugeiconsIcon, { icon: import_core_free_icons35.ArrowLeft01Icon, size: 16 })
5599
+ ), /* @__PURE__ */ import_react92.default.createElement("span", { className: "w-10 h-10 flex items-center justify-center rounded-full bg-black text-white text-sm outline-none" }, currentPage), /* @__PURE__ */ import_react92.default.createElement(
5600
+ "button",
5601
+ {
5602
+ disabled: currentPage >= totalPages,
5603
+ onClick: () => onPageChange(currentPage + 1),
5604
+ className: "w-10 h-10 flex items-center justify-center rounded-full bg-white text-black hover:bg-neutral-50 disabled:text-neutral-300 disabled:bg-white outline-none transition-colors"
5605
+ },
5606
+ /* @__PURE__ */ import_react92.default.createElement(import_react93.HugeiconsIcon, { icon: import_core_free_icons35.ArrowRight01Icon, size: 16 })
5607
+ )), /* @__PURE__ */ import_react92.default.createElement("p", { className: "text-[11px] text-neutral-400 tracking-widest mt-1" }, Math.min((currentPage - 1) * 50 + 1, totalItems), " - ", Math.min(currentPage * 50, totalItems), " of ", totalItems)), /* @__PURE__ */ import_react92.default.createElement("section", { className: "mt-8 flex flex-col items-center" }, /* @__PURE__ */ import_react92.default.createElement("p", { className: "mb-4 text-xs tracking-widest text-neutral-400" }), /* @__PURE__ */ import_react92.default.createElement("div", { className: "bg-white rounded-full px-10 py-3 flex items-baseline justify-center tracking-tighter text-4xl text-black" }, /* @__PURE__ */ import_react92.default.createElement("span", { className: "text-[#068afe] mr-2" }, "$"), /* @__PURE__ */ import_react92.default.createElement(AnimatedCounter, { value: totalProcessedAmount })), /* @__PURE__ */ import_react92.default.createElement("p", { className: "mt-4 text-xs tracking-widest text-neutral-400" }, "Total Processed")), /* @__PURE__ */ import_react92.default.createElement(
5608
+ OptionWithIcon,
5609
+ {
5610
+ isOpen: isCategoryModalOpen,
5611
+ onClose: () => setIsCategoryModalOpen(false),
5612
+ title: "Select Category",
5613
+ options: CATEGORIES,
5614
+ selectedOption: selectedCategory,
5615
+ onSelect: (val) => setSelectedCategory(val),
5616
+ showSearch: true
5617
+ }
5618
+ ));
5619
+ }
5620
+
5621
+ // src/components/UniversalSettings.tsx
5622
+ var import_react94 = __toESM(require("react"));
5623
+ var import_react_hot_toast15 = __toESM(require("react-hot-toast"));
5624
+ var import_react95 = require("@hugeicons/react");
5625
+ var import_core_free_icons36 = require("@hugeicons/core-free-icons");
5377
5626
  var MemberAvatar3 = ({ src, status, sizeClass = "w-10 h-10" }) => {
5378
- const [loaded, setLoaded] = (0, import_react90.useState)(false);
5379
- const [error, setError] = (0, import_react90.useState)(false);
5627
+ const [loaded, setLoaded] = (0, import_react94.useState)(false);
5628
+ const [error, setError] = (0, import_react94.useState)(false);
5380
5629
  const defaultAvatar = "https://storage.googleapis.com/retina-cloud-v2/assets/images/avatar.avif";
5381
5630
  const finalSrc = error || !src ? defaultAvatar : src;
5382
5631
  const getStatusColor = () => {
@@ -5393,10 +5642,10 @@ var MemberAvatar3 = ({ src, status, sizeClass = "w-10 h-10" }) => {
5393
5642
  return "bg-neutral-200";
5394
5643
  }
5395
5644
  };
5396
- return /* @__PURE__ */ import_react90.default.createElement("div", { className: `relative shrink-0 ${sizeClass}` }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "w-full h-full rounded-lg bg-neutral-100 flex items-center justify-center overflow-hidden" }, !loaded && !error && /* @__PURE__ */ import_react90.default.createElement(import_react91.HugeiconsIcon, { icon: import_core_free_icons34.Loading03Icon, className: "animate-spin text-neutral-400 absolute", size: 14 }), /* @__PURE__ */ import_react90.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_react90.default.createElement("div", { className: `absolute -bottom-1 -right-1 w-3.5 h-3.5 rounded-full border-2 border-white z-10 ${getStatusColor()}` }));
5645
+ return /* @__PURE__ */ import_react94.default.createElement("div", { className: `relative shrink-0 ${sizeClass}` }, /* @__PURE__ */ import_react94.default.createElement("div", { className: "w-full h-full rounded-lg bg-neutral-100 flex items-center justify-center overflow-hidden" }, !loaded && !error && /* @__PURE__ */ import_react94.default.createElement(import_react95.HugeiconsIcon, { icon: import_core_free_icons36.Loading03Icon, className: "animate-spin text-neutral-400 absolute", size: 14 }), /* @__PURE__ */ import_react94.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_react94.default.createElement("div", { className: `absolute -bottom-1 -right-1 w-3.5 h-3.5 rounded-full border-2 border-white z-10 ${getStatusColor()}` }));
5397
5646
  };
5398
- var PageSpinner8 = () => /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex justify-center items-center py-12" }, /* @__PURE__ */ import_react90.default.createElement(import_react91.HugeiconsIcon, { icon: import_core_free_icons34.Loading03Icon, size: 32, className: "animate-spin mb-4 text-black" }));
5399
- var InputSpinner3 = () => /* @__PURE__ */ import_react90.default.createElement("svg", { className: "animate-spin h-4 w-4 text-neutral-400", xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }, /* @__PURE__ */ import_react90.default.createElement("circle", { className: "opacity-25", cx: "12", cy: "12", r: "10", stroke: "currentColor", strokeWidth: "4" }), /* @__PURE__ */ import_react90.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" }));
5647
+ var PageSpinner8 = () => /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex justify-center items-center py-12" }, /* @__PURE__ */ import_react94.default.createElement(import_react95.HugeiconsIcon, { icon: import_core_free_icons36.Loading03Icon, size: 32, className: "animate-spin mb-4 text-black" }));
5648
+ var InputSpinner3 = () => /* @__PURE__ */ import_react94.default.createElement("svg", { className: "animate-spin h-4 w-4 text-neutral-400", xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }, /* @__PURE__ */ import_react94.default.createElement("circle", { className: "opacity-25", cx: "12", cy: "12", r: "10", stroke: "currentColor", strokeWidth: "4" }), /* @__PURE__ */ import_react94.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" }));
5400
5649
  var UniversalSettings = ({
5401
5650
  accountType,
5402
5651
  userRole,
@@ -5435,36 +5684,36 @@ var UniversalSettings = ({
5435
5684
  });
5436
5685
  const isOrg = accountType === "ORGANIZATION";
5437
5686
  const canManage = userRole === "ADMIN" || userRole === "MANAGER" || userRole === "OWNER";
5438
- const [activeTab, setActiveTab] = (0, import_react90.useState)(isOrg ? "MEMBERS" : "ACCOUNT");
5439
- const [expandedId, setExpandedId] = (0, import_react90.useState)(null);
5440
- const [memberToRemove, setMemberToRemove] = (0, import_react90.useState)(null);
5441
- const [isRemoving, setIsRemoving] = (0, import_react90.useState)(false);
5442
- const [isInviteMode, setIsInviteMode] = (0, import_react90.useState)(false);
5443
- const [inviteEmail, setInviteEmail] = (0, import_react90.useState)("");
5444
- const [isInviting, setIsInviting] = (0, import_react90.useState)(false);
5445
- const [localSearchQuery, setLocalSearchQuery] = (0, import_react90.useState)(membersSearchQuery);
5446
- const [isTyping, setIsTyping] = (0, import_react90.useState)(false);
5447
- const isFirstSearchMount = (0, import_react90.useRef)(true);
5448
- const [isStatusModalOpen, setIsStatusModalOpen] = (0, import_react90.useState)(false);
5449
- const [isRoleModalOpen, setIsRoleModalOpen] = (0, import_react90.useState)(false);
5450
- const [roleEditTarget, setRoleEditTarget] = (0, import_react90.useState)(null);
5451
- const [isUpdatingRole, setIsUpdatingRole] = (0, import_react90.useState)(false);
5452
- const [orgName, setOrgName] = (0, import_react90.useState)(initialOrgName);
5453
- const [orgSlug, setOrgSlug] = (0, import_react90.useState)(initialOrgSlug);
5454
- const [firstName, setFirstName] = (0, import_react90.useState)("");
5455
- const [lastName, setLastName] = (0, import_react90.useState)("");
5456
- const [isCheckingSlug, setIsCheckingSlug] = (0, import_react90.useState)(false);
5457
- const [slugAvailable, setSlugAvailable] = (0, import_react90.useState)(null);
5458
- const [isSavingOrg, setIsSavingOrg] = (0, import_react90.useState)(false);
5459
- const [isSavingProfile, setIsSavingProfile] = (0, import_react90.useState)(false);
5460
- (0, import_react90.useEffect)(() => {
5687
+ const [activeTab, setActiveTab] = (0, import_react94.useState)(isOrg ? "MEMBERS" : "ACCOUNT");
5688
+ const [expandedId, setExpandedId] = (0, import_react94.useState)(null);
5689
+ const [memberToRemove, setMemberToRemove] = (0, import_react94.useState)(null);
5690
+ const [isRemoving, setIsRemoving] = (0, import_react94.useState)(false);
5691
+ const [isInviteMode, setIsInviteMode] = (0, import_react94.useState)(false);
5692
+ const [inviteEmail, setInviteEmail] = (0, import_react94.useState)("");
5693
+ const [isInviting, setIsInviting] = (0, import_react94.useState)(false);
5694
+ const [localSearchQuery, setLocalSearchQuery] = (0, import_react94.useState)(membersSearchQuery);
5695
+ const [isTyping, setIsTyping] = (0, import_react94.useState)(false);
5696
+ const isFirstSearchMount = (0, import_react94.useRef)(true);
5697
+ const [isStatusModalOpen, setIsStatusModalOpen] = (0, import_react94.useState)(false);
5698
+ const [isRoleModalOpen, setIsRoleModalOpen] = (0, import_react94.useState)(false);
5699
+ const [roleEditTarget, setRoleEditTarget] = (0, import_react94.useState)(null);
5700
+ const [isUpdatingRole, setIsUpdatingRole] = (0, import_react94.useState)(false);
5701
+ const [orgName, setOrgName] = (0, import_react94.useState)(initialOrgName);
5702
+ const [orgSlug, setOrgSlug] = (0, import_react94.useState)(initialOrgSlug);
5703
+ const [firstName, setFirstName] = (0, import_react94.useState)("");
5704
+ const [lastName, setLastName] = (0, import_react94.useState)("");
5705
+ const [isCheckingSlug, setIsCheckingSlug] = (0, import_react94.useState)(false);
5706
+ const [slugAvailable, setSlugAvailable] = (0, import_react94.useState)(null);
5707
+ const [isSavingOrg, setIsSavingOrg] = (0, import_react94.useState)(false);
5708
+ const [isSavingProfile, setIsSavingProfile] = (0, import_react94.useState)(false);
5709
+ (0, import_react94.useEffect)(() => {
5461
5710
  setOrgName(initialOrgName || "");
5462
5711
  setOrgSlug(initialOrgSlug || "");
5463
5712
  const parts = (initialFullName || "").split(" ");
5464
5713
  setFirstName(parts[0] || "");
5465
5714
  setLastName(parts.slice(1).join(" ") || "");
5466
5715
  }, [initialOrgName, initialOrgSlug, initialFullName]);
5467
- (0, import_react90.useEffect)(() => {
5716
+ (0, import_react94.useEffect)(() => {
5468
5717
  if (activeTab !== "MEMBERS") return;
5469
5718
  if (isFirstSearchMount.current) {
5470
5719
  isFirstSearchMount.current = false;
@@ -5521,7 +5770,7 @@ var UniversalSettings = ({
5521
5770
  }
5522
5771
  };
5523
5772
  const activeExpandedMember = expandedId ? members.find((m) => m.id === expandedId) : null;
5524
- (0, import_react90.useEffect)(() => {
5773
+ (0, import_react94.useEffect)(() => {
5525
5774
  if (!isOrg || !orgSlug || orgSlug === initialOrgSlug) {
5526
5775
  setSlugAvailable(null);
5527
5776
  setIsCheckingSlug(false);
@@ -5581,11 +5830,11 @@ var UniversalSettings = ({
5581
5830
  const isOrgSaveDisabled = isSavingOrg || !canManage || isCheckingSlug || !hasOrgChanges || orgName.length < 3 || orgSlug.length < 3 || orgSlug !== initialOrgSlug && slugAvailable === false;
5582
5831
  const hasProfileChanges = `${firstName} ${lastName}`.trim() !== initialFullName;
5583
5832
  const isProfileSaveDisabled = isSavingProfile || !hasProfileChanges || firstName.length < 2 || lastName.length < 2;
5584
- return /* @__PURE__ */ import_react90.default.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300" }, /* @__PURE__ */ import_react90.default.createElement(ManagedToaster, null), /* @__PURE__ */ import_react90.default.createElement("div", { className: "mb-6 flex w-full items-center px-1" }, /* @__PURE__ */ import_react90.default.createElement("button", { onClick: onBackHandler, className: "flex items-center gap-2 text-[#068afe] hover:text-[#068afe] transition-colors text-[12px] outline-none" }, /* @__PURE__ */ import_react90.default.createElement(import_react91.HugeiconsIcon, { icon: import_core_free_icons34.ArrowLeft01Icon, size: 16 }), " Back")), /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex flex-col gap-1 mb-8 px-1" }, /* @__PURE__ */ import_react90.default.createElement("h1", { className: "text-black text-xl tracking-tight" }, "System Settings"), /* @__PURE__ */ import_react90.default.createElement("p", { className: "text-xs text-neutral-500" }, "Manage your workspace identity, team configurations, and AI billing parameters.")), /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex items-center gap-6 mb-6 overflow-x-auto custom-scrollbar px-1" }, isOrg && /* @__PURE__ */ import_react90.default.createElement("button", { onClick: () => {
5833
+ return /* @__PURE__ */ import_react94.default.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300" }, /* @__PURE__ */ import_react94.default.createElement(ManagedToaster, null), /* @__PURE__ */ import_react94.default.createElement("div", { className: "mb-6 flex w-full items-center px-1" }, /* @__PURE__ */ import_react94.default.createElement("button", { onClick: onBackHandler, className: "flex items-center gap-2 text-[#068afe] hover:text-[#068afe] transition-colors text-[12px] outline-none" }, /* @__PURE__ */ import_react94.default.createElement(import_react95.HugeiconsIcon, { icon: import_core_free_icons36.ArrowLeft01Icon, size: 16 }), " Back")), /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex flex-col gap-1 mb-8 px-1" }, /* @__PURE__ */ import_react94.default.createElement("h1", { className: "text-black text-xl tracking-tight" }, "System Settings"), /* @__PURE__ */ import_react94.default.createElement("p", { className: "text-xs text-neutral-500" }, "Manage your workspace identity, team configurations, and AI billing parameters.")), /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex items-center gap-6 mb-6 overflow-x-auto custom-scrollbar px-1" }, isOrg && /* @__PURE__ */ import_react94.default.createElement("button", { onClick: () => {
5585
5834
  setActiveTab("MEMBERS");
5586
5835
  setExpandedId(null);
5587
5836
  setIsInviteMode(false);
5588
- }, className: `pb-3 text-[12px] tracking-wide outline-none transition-colors border-b-2 whitespace-nowrap ${activeTab === "MEMBERS" ? "border-black text-black" : "border-transparent text-neutral-500 hover:text-black"}` }, "Members"), isOrg && /* @__PURE__ */ import_react90.default.createElement("button", { onClick: () => setActiveTab("ORGANIZATION"), className: `pb-3 text-[12px] tracking-wide outline-none transition-colors border-b-2 whitespace-nowrap ${activeTab === "ORGANIZATION" ? "border-black text-black" : "border-transparent text-neutral-500 hover:text-black"}` }, "Organization"), /* @__PURE__ */ import_react90.default.createElement("button", { onClick: () => setActiveTab("ACCOUNT"), className: `pb-3 text-[12px] tracking-wide outline-none transition-colors border-b-2 whitespace-nowrap ${activeTab === "ACCOUNT" ? "border-black text-black" : "border-transparent text-neutral-500 hover:text-black"}` }, "Profile")), activeTab === "MEMBERS" && isOrg && /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex flex-col animate-in fade-in duration-300" }, /* @__PURE__ */ import_react90.default.createElement(
5837
+ }, className: `pb-3 text-[12px] tracking-wide outline-none transition-colors border-b-2 whitespace-nowrap ${activeTab === "MEMBERS" ? "border-black text-black" : "border-transparent text-neutral-500 hover:text-black"}` }, "Members"), isOrg && /* @__PURE__ */ import_react94.default.createElement("button", { onClick: () => setActiveTab("ORGANIZATION"), className: `pb-3 text-[12px] tracking-wide outline-none transition-colors border-b-2 whitespace-nowrap ${activeTab === "ORGANIZATION" ? "border-black text-black" : "border-transparent text-neutral-500 hover:text-black"}` }, "Organization"), /* @__PURE__ */ import_react94.default.createElement("button", { onClick: () => setActiveTab("ACCOUNT"), className: `pb-3 text-[12px] tracking-wide outline-none transition-colors border-b-2 whitespace-nowrap ${activeTab === "ACCOUNT" ? "border-black text-black" : "border-transparent text-neutral-500 hover:text-black"}` }, "Profile")), activeTab === "MEMBERS" && isOrg && /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex flex-col animate-in fade-in duration-300" }, /* @__PURE__ */ import_react94.default.createElement(
5589
5838
  ConfirmationDialog,
5590
5839
  {
5591
5840
  isOpen: !!memberToRemove,
@@ -5598,7 +5847,7 @@ var UniversalSettings = ({
5598
5847
  onClose: () => setMemberToRemove(null),
5599
5848
  onConfirm: handleConfirmRemove
5600
5849
  }
5601
- ), !isInviteMode && !activeExpandedMember && /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex flex-row flex-nowrap mb-4 items-center justify-between gap-4 w-full px-1" }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "relative flex-1 min-w-0 max-w-full" }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "absolute inset-y-0 left-0 pl-4 flex items-center pointer-events-none" }, /* @__PURE__ */ import_react90.default.createElement(import_react91.HugeiconsIcon, { icon: import_core_free_icons34.Search01Icon, size: 16, className: "text-neutral-400" })), /* @__PURE__ */ import_react90.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-[12px] text-black placeholder-neutral-400 outline-none transition-colors focus:border-black" })), /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex items-center gap-3 w-auto pb-0 shrink-0" }, /* @__PURE__ */ import_react90.default.createElement("button", { onClick: () => setIsStatusModalOpen(true), className: "flex items-center justify-center bg-white w-9 h-9 rounded-full text-neutral-500 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ import_react90.default.createElement(import_react91.HugeiconsIcon, { icon: import_core_free_icons34.SearchList02Icon, size: 16 })), /* @__PURE__ */ import_react90.default.createElement("button", { onClick: () => setIsRoleModalOpen(true), className: "flex items-center justify-center bg-white w-9 h-9 rounded-full text-neutral-500 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ import_react90.default.createElement(import_react91.HugeiconsIcon, { icon: import_core_free_icons34.ListSettingIcon, size: 16 })))), /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex flex-col gap-8 p-6 rounded-2xl bg-white w-full" }, activeExpandedMember ? /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex flex-col animate-in fade-in zoom-in-95 duration-300 w-full" }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex flex-col gap-1 mb-8" }, /* @__PURE__ */ import_react90.default.createElement("h2", { className: "text-black text-xl tracking-tight" }, "Member Profile"), /* @__PURE__ */ import_react90.default.createElement("p", { className: "text-[12px] text-neutral-500" }, "View and manage this member's access privileges.")), /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex items-center gap-4 mb-8" }, /* @__PURE__ */ import_react90.default.createElement(MemberAvatar3, { src: activeExpandedMember.avatarUrl, status: activeExpandedMember.status, sizeClass: "w-14 h-14" }), /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex flex-col min-w-0" }, /* @__PURE__ */ import_react90.default.createElement("span", { className: "text-sm text-black tracking-tight truncate" }, activeExpandedMember.fullName), /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex items-center gap-2 mt-0.5" }, /* @__PURE__ */ import_react90.default.createElement("span", { className: "text-[12px] text-neutral-500 capitalize" }, activeExpandedMember.role.toLowerCase()), canManage && !activeExpandedMember.isRootAdmin && (isUpdatingRole ? /* @__PURE__ */ import_react90.default.createElement(import_react91.HugeiconsIcon, { icon: import_core_free_icons34.Loading03Icon, size: 12, className: "animate-spin text-neutral-400 ml-1" }) : /* @__PURE__ */ import_react90.default.createElement("button", { onClick: () => setRoleEditTarget(activeExpandedMember), className: "text-[11px] text-[#068afe] hover:underline outline-none" }, "Edit"))))), /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex flex-col sm:flex-row gap-3 pt-6 " }, canManage && !activeExpandedMember.isRootAdmin && /* @__PURE__ */ import_react90.default.createElement(
5850
+ ), !isInviteMode && !activeExpandedMember && /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex flex-row flex-nowrap mb-4 items-center justify-between gap-4 w-full px-1" }, /* @__PURE__ */ import_react94.default.createElement("div", { className: "relative flex-1 min-w-0 max-w-full" }, /* @__PURE__ */ import_react94.default.createElement("div", { className: "absolute inset-y-0 left-0 pl-4 flex items-center pointer-events-none" }, /* @__PURE__ */ import_react94.default.createElement(import_react95.HugeiconsIcon, { icon: import_core_free_icons36.Search01Icon, size: 16, className: "text-neutral-400" })), /* @__PURE__ */ import_react94.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-[12px] text-black placeholder-neutral-400 outline-none transition-colors focus:border-black" })), /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex items-center gap-3 w-auto pb-0 shrink-0" }, /* @__PURE__ */ import_react94.default.createElement("button", { onClick: () => setIsStatusModalOpen(true), className: "flex items-center justify-center bg-white w-9 h-9 rounded-full text-neutral-500 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ import_react94.default.createElement(import_react95.HugeiconsIcon, { icon: import_core_free_icons36.SearchList02Icon, size: 16 })), /* @__PURE__ */ import_react94.default.createElement("button", { onClick: () => setIsRoleModalOpen(true), className: "flex items-center justify-center bg-white w-9 h-9 rounded-full text-neutral-500 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ import_react94.default.createElement(import_react95.HugeiconsIcon, { icon: import_core_free_icons36.ListSettingIcon, size: 16 })))), /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex flex-col gap-8 p-6 rounded-2xl bg-white w-full" }, activeExpandedMember ? /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex flex-col animate-in fade-in zoom-in-95 duration-300 w-full" }, /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex flex-col gap-1 mb-8" }, /* @__PURE__ */ import_react94.default.createElement("h2", { className: "text-black text-xl tracking-tight" }, "Member Profile"), /* @__PURE__ */ import_react94.default.createElement("p", { className: "text-[12px] text-neutral-500" }, "View and manage this member's access privileges.")), /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex items-center gap-4 mb-8" }, /* @__PURE__ */ import_react94.default.createElement(MemberAvatar3, { src: activeExpandedMember.avatarUrl, status: activeExpandedMember.status, sizeClass: "w-14 h-14" }), /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex flex-col min-w-0" }, /* @__PURE__ */ import_react94.default.createElement("span", { className: "text-sm text-black tracking-tight truncate" }, activeExpandedMember.fullName), /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex items-center gap-2 mt-0.5" }, /* @__PURE__ */ import_react94.default.createElement("span", { className: "text-[12px] text-neutral-500 capitalize" }, activeExpandedMember.role.toLowerCase()), canManage && !activeExpandedMember.isRootAdmin && (isUpdatingRole ? /* @__PURE__ */ import_react94.default.createElement(import_react95.HugeiconsIcon, { icon: import_core_free_icons36.Loading03Icon, size: 12, className: "animate-spin text-neutral-400 ml-1" }) : /* @__PURE__ */ import_react94.default.createElement("button", { onClick: () => setRoleEditTarget(activeExpandedMember), className: "text-[11px] text-[#068afe] hover:underline outline-none" }, "Edit"))))), /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex flex-col sm:flex-row gap-3 pt-6 " }, canManage && !activeExpandedMember.isRootAdmin && /* @__PURE__ */ import_react94.default.createElement(
5602
5851
  "button",
5603
5852
  {
5604
5853
  onClick: () => setMemberToRemove(activeExpandedMember),
@@ -5606,25 +5855,25 @@ var UniversalSettings = ({
5606
5855
  className: "w-full sm:flex-1 py-2.5 bg-white border border-rose-200 text-rose-600 hover:bg-rose-50 rounded-full text-[12px] tracking-wide transition-colors outline-none disabled:opacity-50"
5607
5856
  },
5608
5857
  "Remove Access"
5609
- ), /* @__PURE__ */ import_react90.default.createElement("button", { onClick: () => setExpandedId(null), disabled: isUpdatingRole, className: "w-full sm:flex-1 py-2.5 bg-white border border-neutral-200 text-black hover:bg-neutral-100 rounded-full text-[12px] tracking-wide transition-colors outline-none disabled:opacity-50" }, "Close Profile"))) : /* @__PURE__ */ import_react90.default.createElement(import_react90.default.Fragment, null, /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex flex-col gap-1" }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex flex-row items-center justify-between gap-4" }, /* @__PURE__ */ import_react90.default.createElement("h2", { className: "text-black text-xl tracking-tight" }, isInviteMode ? "Add Member" : "Team Directory"), !isInviteMode && canManage && /* @__PURE__ */ import_react90.default.createElement("button", { onClick: () => setIsInviteMode(true), className: "shrink-0 px-4 py-1.5 border border-neutral-200 text-black text-[12px] tracking-wide rounded-full hover:bg-neutral-50 transition-colors outline-none" }, "Invite Team")), !isInviteMode && /* @__PURE__ */ import_react90.default.createElement("p", { className: "text-[12px] text-neutral-500" }, "Manage members and access controls across your organization.")), /* @__PURE__ */ import_react90.default.createElement("div", { className: "w-full overflow-hidden" }, isInviteMode ? /* @__PURE__ */ import_react90.default.createElement("form", { onSubmit: handleInviteSubmit, className: "flex flex-col gap-8 animate-in fade-in duration-300" }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "space-y-1.5 mt-2" }, /* @__PURE__ */ import_react90.default.createElement("label", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block" }, "Email Address"), /* @__PURE__ */ import_react90.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-neutral-200 text-black outline-none focus:border-black transition-all duration-300", placeholder: "name@company.com" })), /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex flex-col gap-3" }, /* @__PURE__ */ import_react90.default.createElement(ThreeDActionButton, { type: "submit", disabled: inviteEmail.length < 5 || isInviting, isLoading: isInviting, className: "w-full" }, "Send Invitation"), /* @__PURE__ */ import_react90.default.createElement("button", { type: "button", onClick: () => {
5858
+ ), /* @__PURE__ */ import_react94.default.createElement("button", { onClick: () => setExpandedId(null), disabled: isUpdatingRole, className: "w-full sm:flex-1 py-2.5 bg-white border border-neutral-200 text-black hover:bg-neutral-100 rounded-full text-[12px] tracking-wide transition-colors outline-none disabled:opacity-50" }, "Close Profile"))) : /* @__PURE__ */ import_react94.default.createElement(import_react94.default.Fragment, null, /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex flex-col gap-1" }, /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex flex-row items-center justify-between gap-4" }, /* @__PURE__ */ import_react94.default.createElement("h2", { className: "text-black text-xl tracking-tight" }, isInviteMode ? "Add Member" : "Team Directory"), !isInviteMode && canManage && /* @__PURE__ */ import_react94.default.createElement("button", { onClick: () => setIsInviteMode(true), className: "shrink-0 px-4 py-1.5 border border-neutral-200 text-black text-[12px] tracking-wide rounded-full hover:bg-neutral-50 transition-colors outline-none" }, "Invite Team")), !isInviteMode && /* @__PURE__ */ import_react94.default.createElement("p", { className: "text-[12px] text-neutral-500" }, "Manage members and access controls across your organization.")), /* @__PURE__ */ import_react94.default.createElement("div", { className: "w-full overflow-hidden" }, isInviteMode ? /* @__PURE__ */ import_react94.default.createElement("form", { onSubmit: handleInviteSubmit, className: "flex flex-col gap-8 animate-in fade-in duration-300" }, /* @__PURE__ */ import_react94.default.createElement("div", { className: "space-y-1.5 mt-2" }, /* @__PURE__ */ import_react94.default.createElement("label", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block" }, "Email Address"), /* @__PURE__ */ import_react94.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-neutral-200 text-black outline-none focus:border-black transition-all duration-300", placeholder: "name@company.com" })), /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex flex-col gap-3" }, /* @__PURE__ */ import_react94.default.createElement(ThreeDActionButton, { type: "submit", disabled: inviteEmail.length < 5 || isInviting, isLoading: isInviting, className: "w-full" }, "Send Invitation"), /* @__PURE__ */ import_react94.default.createElement("button", { type: "button", onClick: () => {
5610
5859
  setIsInviteMode(false);
5611
5860
  setInviteEmail("");
5612
- }, disabled: isInviting, className: "w-full flex items-center justify-center py-2.5 rounded-full border border-neutral-200 text-black hover:bg-neutral-50 transition-colors outline-none text-xs tracking-wide" }, "Cancel"))) : isMembersLoading || isTyping ? /* @__PURE__ */ import_react90.default.createElement(PageSpinner8, null) : /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex flex-col min-w-0 animate-in fade-in duration-300" }, /* @__PURE__ */ import_react90.default.createElement("div", null, members.length === 0 ? /* @__PURE__ */ import_react90.default.createElement("p", { className: "text-[12px] text-neutral-400 py-6 text-center" }, "No members found") : members.map((member) => /* @__PURE__ */ import_react90.default.createElement("div", { key: member.id, onClick: () => setExpandedId(member.id), className: "flex items-center justify-between py-3 hover:bg-neutral-50 transition-colors cursor-pointer group min-w-0 px-3 -mx-3 rounded-xl" }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex items-center gap-4 min-w-0 flex-1" }, /* @__PURE__ */ import_react90.default.createElement(MemberAvatar3, { src: member.avatarUrl, status: member.status }), /* @__PURE__ */ import_react90.default.createElement("div", { className: "min-w-0 flex-1 flex flex-col gap-0.5" }, /* @__PURE__ */ import_react90.default.createElement("p", { className: "text-[12px] text-black truncate" }, member.fullName), /* @__PURE__ */ import_react90.default.createElement("p", { className: "text-[11px] text-neutral-500 capitalize truncate" }, member.role.toLowerCase())))))), /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex items-center justify-between pt-6 mt-2 " }, /* @__PURE__ */ import_react90.default.createElement("span", { className: "text-[11px] text-neutral-400 tracking-[0.2em]" }, "Page ", membersCurrentPage, " of ", membersTotalPages === 0 ? 1 : membersTotalPages), /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ import_react90.default.createElement("button", { onClick: () => onMembersPageChange(membersCurrentPage - 1), disabled: membersCurrentPage <= 1 || isMembersLoading, className: "p-2 bg-white border border-neutral-200 rounded-full text-black hover:bg-neutral-50 disabled:opacity-30 disabled:cursor-not-allowed transition-all outline-none" }, /* @__PURE__ */ import_react90.default.createElement(import_react91.HugeiconsIcon, { icon: import_core_free_icons34.ArrowLeft01Icon, size: 14 })), /* @__PURE__ */ import_react90.default.createElement("button", { onClick: () => onMembersPageChange(membersCurrentPage + 1), disabled: membersCurrentPage >= membersTotalPages || isMembersLoading || membersTotalPages === 0, className: "p-2 bg-white border border-neutral-200 rounded-full text-black hover:bg-neutral-50 disabled:opacity-30 disabled:cursor-not-allowed transition-all outline-none" }, /* @__PURE__ */ import_react90.default.createElement(import_react91.HugeiconsIcon, { icon: import_core_free_icons34.ArrowRight01Icon, size: 14 })))))))), /* @__PURE__ */ import_react90.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_react90.default.createElement(ReusableOptions, { isOpen: isRoleModalOpen, onClose: () => setIsRoleModalOpen(false), title: "Role Filter", options: ["ALL", "ADMIN", "MANAGER", "MEMBER"], selectedOption: activeRoleFilter, onSelect: (role) => onRoleFilterChange(role) }), /* @__PURE__ */ import_react90.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_react90.default.createElement("div", { className: "flex flex-col gap-8 animate-in rounded-2xl p-6 bg-white fade-in duration-300" }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex items-start justify-between gap-4" }, /* @__PURE__ */ import_react90.default.createElement("div", null, /* @__PURE__ */ import_react90.default.createElement("h2", { className: "text-black text-xl mb-1 tracking-tight" }, "Workspace Details"), /* @__PURE__ */ import_react90.default.createElement("p", { className: "text-xs text-neutral-500" }, "Manage your organizational identity and handles.")), !canManage && /* @__PURE__ */ import_react90.default.createElement("span", { className: "p-2 w-9 h-9 bg-neutral-100 text-neutral-400 rounded-full shrink-0" }, /* @__PURE__ */ import_react90.default.createElement(import_react91.HugeiconsIcon, { icon: import_core_free_icons34.CircleLock02Icon, size: 18, className: "text-current" }))), /* @__PURE__ */ import_react90.default.createElement("form", { className: "flex flex-col gap-8 w-full max-w-5xl", onSubmit: handleSaveOrganization, autoComplete: "off" }, /* @__PURE__ */ import_react90.default.createElement(TextInput, { label: "Workspace Name", value: orgName, onChange: handleOrgNameChange, disabled: !canManage || isSavingOrg, placeholder: "Acme Corporation", maxLength: 50 }), /* @__PURE__ */ import_react90.default.createElement("div", { className: "space-y-1.5 relative w-full" }, /* @__PURE__ */ import_react90.default.createElement("label", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block" }, "Workspace Handle"), /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex items-center relative w-full border-b border-neutral-200 focus-within:border-black transition-all duration-300 overflow-hidden" }, /* @__PURE__ */ import_react90.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_react90.default.createElement("div", { className: "absolute right-2 top-1/2 -translate-y-1/2" }, isCheckingSlug && /* @__PURE__ */ import_react90.default.createElement(InputSpinner3, null), !isCheckingSlug && canManage && orgSlug !== initialOrgSlug && orgSlug.length >= 3 && slugAvailable === false && /* @__PURE__ */ import_react90.default.createElement("span", { className: "inline-flex items-center justify-center w-4 h-4 rounded-full bg-red-100" }, /* @__PURE__ */ import_react90.default.createElement("svg", { className: "w-2 h-2 text-red-600", viewBox: "0 0 20 20", fill: "currentColor" }, /* @__PURE__ */ import_react90.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_react90.default.createElement("span", { className: "inline-flex items-center justify-center w-4 h-4 rounded-full bg-green-100" }, /* @__PURE__ */ import_react90.default.createElement("svg", { className: "w-2 h-2 text-green-600", viewBox: "0 0 20 20", fill: "currentColor" }, /* @__PURE__ */ import_react90.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_react90.default.createElement("div", { className: "pt-8 mt-2 flex items-center gap-4" }, /* @__PURE__ */ import_react90.default.createElement(ThreeDActionButton, { type: "submit", disabled: isOrgSaveDisabled, isLoading: isSavingOrg, className: "min-w-32" }, "Save Changes"), hasOrgChanges && !isSavingOrg && canManage && /* @__PURE__ */ import_react90.default.createElement("button", { type: "button", onClick: () => {
5861
+ }, disabled: isInviting, className: "w-full flex items-center justify-center py-2.5 rounded-full border border-neutral-200 text-black hover:bg-neutral-50 transition-colors outline-none text-xs tracking-wide" }, "Cancel"))) : isMembersLoading || isTyping ? /* @__PURE__ */ import_react94.default.createElement(PageSpinner8, null) : /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex flex-col min-w-0 animate-in fade-in duration-300" }, /* @__PURE__ */ import_react94.default.createElement("div", null, members.length === 0 ? /* @__PURE__ */ import_react94.default.createElement("p", { className: "text-[12px] text-neutral-400 py-6 text-center" }, "No members found") : members.map((member) => /* @__PURE__ */ import_react94.default.createElement("div", { key: member.id, onClick: () => setExpandedId(member.id), className: "flex items-center justify-between py-3 hover:bg-neutral-50 transition-colors cursor-pointer group min-w-0 px-3 -mx-3 rounded-xl" }, /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex items-center gap-4 min-w-0 flex-1" }, /* @__PURE__ */ import_react94.default.createElement(MemberAvatar3, { src: member.avatarUrl, status: member.status }), /* @__PURE__ */ import_react94.default.createElement("div", { className: "min-w-0 flex-1 flex flex-col gap-0.5" }, /* @__PURE__ */ import_react94.default.createElement("p", { className: "text-[12px] text-black truncate" }, member.fullName), /* @__PURE__ */ import_react94.default.createElement("p", { className: "text-[11px] text-neutral-500 capitalize truncate" }, member.role.toLowerCase())))))), /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex items-center justify-between pt-6 mt-2 " }, /* @__PURE__ */ import_react94.default.createElement("span", { className: "text-[11px] text-neutral-400 tracking-[0.2em]" }, "Page ", membersCurrentPage, " of ", membersTotalPages === 0 ? 1 : membersTotalPages), /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ import_react94.default.createElement("button", { onClick: () => onMembersPageChange(membersCurrentPage - 1), disabled: membersCurrentPage <= 1 || isMembersLoading, className: "p-2 bg-white border border-neutral-200 rounded-full text-black hover:bg-neutral-50 disabled:opacity-30 disabled:cursor-not-allowed transition-all outline-none" }, /* @__PURE__ */ import_react94.default.createElement(import_react95.HugeiconsIcon, { icon: import_core_free_icons36.ArrowLeft01Icon, size: 14 })), /* @__PURE__ */ import_react94.default.createElement("button", { onClick: () => onMembersPageChange(membersCurrentPage + 1), disabled: membersCurrentPage >= membersTotalPages || isMembersLoading || membersTotalPages === 0, className: "p-2 bg-white border border-neutral-200 rounded-full text-black hover:bg-neutral-50 disabled:opacity-30 disabled:cursor-not-allowed transition-all outline-none" }, /* @__PURE__ */ import_react94.default.createElement(import_react95.HugeiconsIcon, { icon: import_core_free_icons36.ArrowRight01Icon, size: 14 })))))))), /* @__PURE__ */ import_react94.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_react94.default.createElement(ReusableOptions, { isOpen: isRoleModalOpen, onClose: () => setIsRoleModalOpen(false), title: "Role Filter", options: ["ALL", "ADMIN", "MANAGER", "MEMBER"], selectedOption: activeRoleFilter, onSelect: (role) => onRoleFilterChange(role) }), /* @__PURE__ */ import_react94.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_react94.default.createElement("div", { className: "flex flex-col gap-8 animate-in rounded-2xl p-6 bg-white fade-in duration-300" }, /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex items-start justify-between gap-4" }, /* @__PURE__ */ import_react94.default.createElement("div", null, /* @__PURE__ */ import_react94.default.createElement("h2", { className: "text-black text-xl mb-1 tracking-tight" }, "Workspace Details"), /* @__PURE__ */ import_react94.default.createElement("p", { className: "text-xs text-neutral-500" }, "Manage your organizational identity and handles.")), !canManage && /* @__PURE__ */ import_react94.default.createElement("span", { className: "p-2 w-9 h-9 bg-neutral-100 text-neutral-400 rounded-full shrink-0" }, /* @__PURE__ */ import_react94.default.createElement(import_react95.HugeiconsIcon, { icon: import_core_free_icons36.CircleLock02Icon, size: 18, className: "text-current" }))), /* @__PURE__ */ import_react94.default.createElement("form", { className: "flex flex-col gap-8 w-full max-w-5xl", onSubmit: handleSaveOrganization, autoComplete: "off" }, /* @__PURE__ */ import_react94.default.createElement(TextInput, { label: "Workspace Name", value: orgName, onChange: handleOrgNameChange, disabled: !canManage || isSavingOrg, placeholder: "Acme Corporation", maxLength: 50 }), /* @__PURE__ */ import_react94.default.createElement("div", { className: "space-y-1.5 relative w-full" }, /* @__PURE__ */ import_react94.default.createElement("label", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block" }, "Workspace Handle"), /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex items-center relative w-full border-b border-neutral-200 focus-within:border-black transition-all duration-300 overflow-hidden" }, /* @__PURE__ */ import_react94.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_react94.default.createElement("div", { className: "absolute right-2 top-1/2 -translate-y-1/2" }, isCheckingSlug && /* @__PURE__ */ import_react94.default.createElement(InputSpinner3, null), !isCheckingSlug && canManage && orgSlug !== initialOrgSlug && orgSlug.length >= 3 && slugAvailable === false && /* @__PURE__ */ import_react94.default.createElement("span", { className: "inline-flex items-center justify-center w-4 h-4 rounded-full bg-red-100" }, /* @__PURE__ */ import_react94.default.createElement("svg", { className: "w-2 h-2 text-red-600", viewBox: "0 0 20 20", fill: "currentColor" }, /* @__PURE__ */ import_react94.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_react94.default.createElement("span", { className: "inline-flex items-center justify-center w-4 h-4 rounded-full bg-green-100" }, /* @__PURE__ */ import_react94.default.createElement("svg", { className: "w-2 h-2 text-green-600", viewBox: "0 0 20 20", fill: "currentColor" }, /* @__PURE__ */ import_react94.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_react94.default.createElement("div", { className: "pt-8 mt-2 flex items-center gap-4" }, /* @__PURE__ */ import_react94.default.createElement(ThreeDActionButton, { type: "submit", disabled: isOrgSaveDisabled, isLoading: isSavingOrg, className: "min-w-32" }, "Save Changes"), hasOrgChanges && !isSavingOrg && canManage && /* @__PURE__ */ import_react94.default.createElement("button", { type: "button", onClick: () => {
5613
5862
  setOrgName(initialOrgName || "");
5614
5863
  setOrgSlug(initialOrgSlug || "");
5615
- }, className: "text-[11px] tracking-widest text-neutral-400 hover:text-black transition-colors outline-none" }, "Cancel")))), activeTab === "ACCOUNT" && /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex flex-col gap-6 animate-in fade-in duration-300" }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex flex-col gap-8 rounded-2xl p-6 bg-white w-full" }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex items-start justify-between gap-4" }, /* @__PURE__ */ import_react90.default.createElement("div", null, /* @__PURE__ */ import_react90.default.createElement("h2", { className: "text-black text-xl mb-1 tracking-tight" }, "Personal Identity"), /* @__PURE__ */ import_react90.default.createElement("p", { className: "text-xs text-neutral-500" }, "Update your system display name and contact email."))), /* @__PURE__ */ import_react90.default.createElement("form", { className: "flex flex-col gap-6 w-full max-w-5xl", onSubmit: handleSaveProfile, autoComplete: "off" }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "grid grid-cols-1 sm:grid-cols-2 gap-6" }, /* @__PURE__ */ import_react90.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_react90.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_react90.default.createElement("div", { className: "space-y-1.5 w-full" }, /* @__PURE__ */ import_react90.default.createElement("label", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block" }, "Email Address"), /* @__PURE__ */ import_react90.default.createElement("input", { type: "email", value: initialEmail, disabled: true, className: "w-full pb-3 pt-3 text-sm bg-transparent text-neutral-400 border-b border-neutral-200 outline-none cursor-not-allowed" })), /* @__PURE__ */ import_react90.default.createElement("div", { className: "pt-4 flex items-center gap-4" }, /* @__PURE__ */ import_react90.default.createElement(ThreeDActionButton, { type: "submit", disabled: isProfileSaveDisabled, isLoading: isSavingProfile, className: "min-w-32" }, "Update Identity")))), /* @__PURE__ */ import_react90.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-neutral-100" }, /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex flex-col items-start max-w-sm" }, /* @__PURE__ */ import_react90.default.createElement("p", { className: "text-[11px] text-neutral-400 tracking-[0.2em] mb-2 uppercase" }, "AI Credits Balance"), isBillingLoading ? /* @__PURE__ */ import_react90.default.createElement("div", { className: "h-8 w-32 bg-neutral-100 animate-pulse rounded mt-1" }) : /* @__PURE__ */ import_react90.default.createElement("div", { className: "flex items-center gap-2 mt-1" }, /* @__PURE__ */ import_react90.default.createElement(import_react91.HugeiconsIcon, { icon: import_core_free_icons34.Coins01Icon, size: 28, className: "text-[#000000]" }), /* @__PURE__ */ import_react90.default.createElement("span", { className: "text-3xl text-black tracking-tight" }, aiCredits)), /* @__PURE__ */ import_react90.default.createElement("p", { className: "text-[11px] text-neutral-500 mt-4 leading-relaxed" }, "AI credits are consumed when generating intelligent summaries, transcriptions, and automated huddle insights.")), /* @__PURE__ */ import_react90.default.createElement("button", { onClick: onTopUp, className: "w-12 h-12 rounded-full border border-neutral-200 flex items-center justify-center text-black hover:bg-neutral-50 transition-colors outline-none shrink-0", "aria-label": "Top Up Credits" }, /* @__PURE__ */ import_react90.default.createElement(import_react91.HugeiconsIcon, { icon: import_core_free_icons34.PlusSignIcon, size: 20 })))));
5864
+ }, className: "text-[11px] tracking-widest text-neutral-400 hover:text-black transition-colors outline-none" }, "Cancel")))), activeTab === "ACCOUNT" && /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex flex-col gap-6 animate-in fade-in duration-300" }, /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex flex-col gap-8 rounded-2xl p-6 bg-white w-full" }, /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex items-start justify-between gap-4" }, /* @__PURE__ */ import_react94.default.createElement("div", null, /* @__PURE__ */ import_react94.default.createElement("h2", { className: "text-black text-xl mb-1 tracking-tight" }, "Personal Identity"), /* @__PURE__ */ import_react94.default.createElement("p", { className: "text-xs text-neutral-500" }, "Update your system display name and contact email."))), /* @__PURE__ */ import_react94.default.createElement("form", { className: "flex flex-col gap-6 w-full max-w-5xl", onSubmit: handleSaveProfile, autoComplete: "off" }, /* @__PURE__ */ import_react94.default.createElement("div", { className: "grid grid-cols-1 sm:grid-cols-2 gap-6" }, /* @__PURE__ */ import_react94.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_react94.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_react94.default.createElement("div", { className: "space-y-1.5 w-full" }, /* @__PURE__ */ import_react94.default.createElement("label", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block" }, "Email Address"), /* @__PURE__ */ import_react94.default.createElement("input", { type: "email", value: initialEmail, disabled: true, className: "w-full pb-3 pt-3 text-sm bg-transparent text-neutral-400 border-b border-neutral-200 outline-none cursor-not-allowed" })), /* @__PURE__ */ import_react94.default.createElement("div", { className: "pt-4 flex items-center gap-4" }, /* @__PURE__ */ import_react94.default.createElement(ThreeDActionButton, { type: "submit", disabled: isProfileSaveDisabled, isLoading: isSavingProfile, className: "min-w-32" }, "Update Identity")))), /* @__PURE__ */ import_react94.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-neutral-100" }, /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex flex-col items-start max-w-sm" }, /* @__PURE__ */ import_react94.default.createElement("p", { className: "text-[11px] text-neutral-400 tracking-[0.2em] mb-2 uppercase" }, "AI Credits Balance"), isBillingLoading ? /* @__PURE__ */ import_react94.default.createElement("div", { className: "h-8 w-32 bg-neutral-100 animate-pulse rounded mt-1" }) : /* @__PURE__ */ import_react94.default.createElement("div", { className: "flex items-center gap-2 mt-1" }, /* @__PURE__ */ import_react94.default.createElement(import_react95.HugeiconsIcon, { icon: import_core_free_icons36.Coins01Icon, size: 28, className: "text-[#000000]" }), /* @__PURE__ */ import_react94.default.createElement("span", { className: "text-3xl text-black tracking-tight" }, aiCredits)), /* @__PURE__ */ import_react94.default.createElement("p", { className: "text-[11px] text-neutral-500 mt-4 leading-relaxed" }, "AI credits are consumed when generating intelligent summaries, transcriptions, and automated huddle insights.")), /* @__PURE__ */ import_react94.default.createElement("button", { onClick: onTopUp, className: "w-12 h-12 rounded-full border border-neutral-200 flex items-center justify-center text-black hover:bg-neutral-50 transition-colors outline-none shrink-0", "aria-label": "Top Up Credits" }, /* @__PURE__ */ import_react94.default.createElement(import_react95.HugeiconsIcon, { icon: import_core_free_icons36.PlusSignIcon, size: 20 })))));
5616
5865
  };
5617
5866
 
5618
5867
  // src/components/UniversalCreateHuddle.tsx
5619
- var import_react92 = __toESM(require("react"));
5868
+ var import_react96 = __toESM(require("react"));
5620
5869
  var import_react_hot_toast16 = __toESM(require("react-hot-toast"));
5621
- var import_react93 = require("@hugeicons/react");
5622
- var import_core_free_icons35 = require("@hugeicons/core-free-icons");
5870
+ var import_react97 = require("@hugeicons/react");
5871
+ var import_core_free_icons37 = require("@hugeicons/core-free-icons");
5623
5872
  var MemberAvatar4 = ({ src, sizeClass = "w-10 h-10" }) => {
5624
- const [loaded, setLoaded] = (0, import_react92.useState)(false);
5625
- const [error, setError] = (0, import_react92.useState)(false);
5873
+ const [loaded, setLoaded] = (0, import_react96.useState)(false);
5874
+ const [error, setError] = (0, import_react96.useState)(false);
5626
5875
  const defaultAvatar = "https://storage.googleapis.com/retina-cloud-v2/assets/images/avatar.avif";
5627
- return /* @__PURE__ */ import_react92.default.createElement("div", { className: `relative shrink-0 ${sizeClass}` }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "w-full h-full rounded-lg bg-neutral-100 flex items-center justify-center overflow-hidden" }, !loaded && !error && /* @__PURE__ */ import_react92.default.createElement(import_react93.HugeiconsIcon, { icon: import_core_free_icons35.Loading03Icon, className: "animate-spin text-neutral-400 absolute", size: 14 }), /* @__PURE__ */ import_react92.default.createElement(
5876
+ return /* @__PURE__ */ import_react96.default.createElement("div", { className: `relative shrink-0 ${sizeClass}` }, /* @__PURE__ */ import_react96.default.createElement("div", { className: "w-full h-full rounded-lg bg-neutral-100 flex items-center justify-center overflow-hidden" }, !loaded && !error && /* @__PURE__ */ import_react96.default.createElement(import_react97.HugeiconsIcon, { icon: import_core_free_icons37.Loading03Icon, className: "animate-spin text-neutral-400 absolute", size: 14 }), /* @__PURE__ */ import_react96.default.createElement(
5628
5877
  "img",
5629
5878
  {
5630
5879
  src: error || !src ? defaultAvatar : src,
@@ -5665,28 +5914,28 @@ var UniversalCreateHuddle = ({
5665
5914
  onCreateSubmit
5666
5915
  }) => {
5667
5916
  const canManage = userRole === "ADMIN" || userRole === "MANAGER" || userRole === "OWNER";
5668
- const [huddleDate, setHuddleDate] = (0, import_react92.useState)(() => {
5917
+ const [huddleDate, setHuddleDate] = (0, import_react96.useState)(() => {
5669
5918
  const d = /* @__PURE__ */ new Date();
5670
5919
  d.setHours(d.getHours() + 1, 0, 0, 0);
5671
5920
  return d;
5672
5921
  });
5673
- const [title, setTitle] = (0, import_react92.useState)("");
5674
- const [isPrivate, setIsPrivate] = (0, import_react92.useState)(false);
5675
- const [timezone, setTimezone] = (0, import_react92.useState)("UTC");
5676
- (0, import_react92.useEffect)(() => {
5922
+ const [title, setTitle] = (0, import_react96.useState)("");
5923
+ const [isPrivate, setIsPrivate] = (0, import_react96.useState)(false);
5924
+ const [timezone, setTimezone] = (0, import_react96.useState)("UTC");
5925
+ (0, import_react96.useEffect)(() => {
5677
5926
  try {
5678
5927
  setTimezone(Intl.DateTimeFormat().resolvedOptions().timeZone);
5679
5928
  } catch (e) {
5680
5929
  }
5681
5930
  }, []);
5682
- const [calendarMode, setCalendarMode] = (0, import_react92.useState)(null);
5683
- const [showTimezoneModal, setShowTimezoneModal] = (0, import_react92.useState)(false);
5684
- const [showMembersModal, setShowMembersModal] = (0, import_react92.useState)(false);
5685
- const [selectedParticipants, setSelectedParticipants] = (0, import_react92.useState)(/* @__PURE__ */ new Set());
5686
- const [isSubmitting, setIsSubmitting] = (0, import_react92.useState)(false);
5687
- const [localSearchQuery, setLocalSearchQuery] = (0, import_react92.useState)(membersSearchQuery);
5688
- const [isTyping, setIsTyping] = (0, import_react92.useState)(false);
5689
- const typingTimer = (0, import_react92.useRef)(null);
5931
+ const [calendarMode, setCalendarMode] = (0, import_react96.useState)(null);
5932
+ const [showTimezoneModal, setShowTimezoneModal] = (0, import_react96.useState)(false);
5933
+ const [showMembersModal, setShowMembersModal] = (0, import_react96.useState)(false);
5934
+ const [selectedParticipants, setSelectedParticipants] = (0, import_react96.useState)(/* @__PURE__ */ new Set());
5935
+ const [isSubmitting, setIsSubmitting] = (0, import_react96.useState)(false);
5936
+ const [localSearchQuery, setLocalSearchQuery] = (0, import_react96.useState)(membersSearchQuery);
5937
+ const [isTyping, setIsTyping] = (0, import_react96.useState)(false);
5938
+ const typingTimer = (0, import_react96.useRef)(null);
5690
5939
  const handleSearchInput = (e) => {
5691
5940
  const val = e.target.value;
5692
5941
  setLocalSearchQuery(val);
@@ -5724,7 +5973,7 @@ var UniversalCreateHuddle = ({
5724
5973
  setIsSubmitting(false);
5725
5974
  }
5726
5975
  };
5727
- return /* @__PURE__ */ import_react92.default.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300 relative" }, /* @__PURE__ */ import_react92.default.createElement(ManagedToaster, null), /* @__PURE__ */ import_react92.default.createElement("div", { className: "mb-6 flex w-full items-center px-1" }, /* @__PURE__ */ import_react92.default.createElement("a", { href: onBackHref, className: "flex items-center gap-2 text-[#068afe] hover:text-[#068afe] transition-colors text-[12px] outline-none" }, /* @__PURE__ */ import_react92.default.createElement(import_react93.HugeiconsIcon, { icon: import_core_free_icons35.ArrowLeft01Icon, size: 16 }), " Back")), /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex flex-col gap-1 mb-8 px-1" }, /* @__PURE__ */ import_react92.default.createElement("h1", { className: "text-black text-xl tracking-tight" }, "Create Huddle"), /* @__PURE__ */ import_react92.default.createElement("p", { className: "text-xs text-neutral-500" }, "Schedule a new workspace huddle and manage participant access.")), /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex flex-col gap-8 animate-in rounded-2xl p-6 bg-white fade-in duration-300" }, /* @__PURE__ */ import_react92.default.createElement("form", { className: "flex flex-col gap-8", onSubmit: handleSubmit, autoComplete: "off" }, !canManage && /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex items-start gap-3 p-4 bg-neutral-50 rounded-xl" }, /* @__PURE__ */ import_react92.default.createElement(import_react93.HugeiconsIcon, { icon: import_core_free_icons35.CircleLock02Icon, size: 20, className: "text-neutral-500 shrink-0 mt-0.5" }), /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex flex-col" }, /* @__PURE__ */ import_react92.default.createElement("span", { className: "text-[12px] text-black tracking-tight" }, "Access Restricted"), /* @__PURE__ */ import_react92.default.createElement("span", { className: "text-[12px] text-neutral-500 mt-1 leading-relaxed" }, "You do not have sufficient permissions to access this page. Contact organization admin or manager."))), /* @__PURE__ */ import_react92.default.createElement(
5976
+ return /* @__PURE__ */ import_react96.default.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300 relative" }, /* @__PURE__ */ import_react96.default.createElement(ManagedToaster, null), /* @__PURE__ */ import_react96.default.createElement("div", { className: "mb-6 flex w-full items-center px-1" }, /* @__PURE__ */ import_react96.default.createElement("a", { href: onBackHref, className: "flex items-center gap-2 text-[#068afe] hover:text-[#068afe] transition-colors text-[12px] outline-none" }, /* @__PURE__ */ import_react96.default.createElement(import_react97.HugeiconsIcon, { icon: import_core_free_icons37.ArrowLeft01Icon, size: 16 }), " Back")), /* @__PURE__ */ import_react96.default.createElement("div", { className: "flex flex-col gap-1 mb-8 px-1" }, /* @__PURE__ */ import_react96.default.createElement("h1", { className: "text-black text-xl tracking-tight" }, "Create Huddle"), /* @__PURE__ */ import_react96.default.createElement("p", { className: "text-xs text-neutral-500" }, "Schedule a new workspace huddle and manage participant access.")), /* @__PURE__ */ import_react96.default.createElement("div", { className: "flex flex-col gap-8 animate-in rounded-2xl p-6 bg-white fade-in duration-300" }, /* @__PURE__ */ import_react96.default.createElement("form", { className: "flex flex-col gap-8", onSubmit: handleSubmit, autoComplete: "off" }, !canManage && /* @__PURE__ */ import_react96.default.createElement("div", { className: "flex items-start gap-3 p-4 bg-neutral-50 rounded-xl" }, /* @__PURE__ */ import_react96.default.createElement(import_react97.HugeiconsIcon, { icon: import_core_free_icons37.CircleLock02Icon, size: 20, className: "text-neutral-500 shrink-0 mt-0.5" }), /* @__PURE__ */ import_react96.default.createElement("div", { className: "flex flex-col" }, /* @__PURE__ */ import_react96.default.createElement("span", { className: "text-[12px] text-black tracking-tight" }, "Access Restricted"), /* @__PURE__ */ import_react96.default.createElement("span", { className: "text-[12px] text-neutral-500 mt-1 leading-relaxed" }, "You do not have sufficient permissions to access this page. Contact organization admin or manager."))), /* @__PURE__ */ import_react96.default.createElement(
5728
5977
  TextInput,
5729
5978
  {
5730
5979
  label: "Huddle Subject",
@@ -5734,31 +5983,31 @@ var UniversalCreateHuddle = ({
5734
5983
  placeholder: "e.g. Q4 Engineering Sync",
5735
5984
  maxLength: 80
5736
5985
  }
5737
- ), /* @__PURE__ */ import_react92.default.createElement("div", { className: "grid grid-cols-1 sm:grid-cols-3 gap-6" }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "space-y-1.5 w-full" }, /* @__PURE__ */ import_react92.default.createElement("label", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block" }, "Date"), /* @__PURE__ */ import_react92.default.createElement(
5986
+ ), /* @__PURE__ */ import_react96.default.createElement("div", { className: "grid grid-cols-1 sm:grid-cols-3 gap-6" }, /* @__PURE__ */ import_react96.default.createElement("div", { className: "space-y-1.5 w-full" }, /* @__PURE__ */ import_react96.default.createElement("label", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block" }, "Date"), /* @__PURE__ */ import_react96.default.createElement(
5738
5987
  "div",
5739
5988
  {
5740
5989
  onClick: () => canManage && !isSubmitting && setCalendarMode("DATE"),
5741
5990
  className: `flex items-center relative w-full border-b border-neutral-200 transition-all duration-300 pb-3 pt-3 ${!canManage || isSubmitting ? "opacity-50 pointer-events-none" : "hover:border-black cursor-pointer"}`
5742
5991
  },
5743
- /* @__PURE__ */ import_react92.default.createElement(import_react93.HugeiconsIcon, { icon: import_core_free_icons35.Calendar01Icon, size: 16, className: "text-neutral-400 absolute left-0" }),
5744
- /* @__PURE__ */ import_react92.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" }))
5745
- )), /* @__PURE__ */ import_react92.default.createElement("div", { className: "space-y-1.5 w-full" }, /* @__PURE__ */ import_react92.default.createElement("label", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block" }, "Time"), /* @__PURE__ */ import_react92.default.createElement(
5992
+ /* @__PURE__ */ import_react96.default.createElement(import_react97.HugeiconsIcon, { icon: import_core_free_icons37.Calendar01Icon, size: 16, className: "text-neutral-400 absolute left-0" }),
5993
+ /* @__PURE__ */ import_react96.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" }))
5994
+ )), /* @__PURE__ */ import_react96.default.createElement("div", { className: "space-y-1.5 w-full" }, /* @__PURE__ */ import_react96.default.createElement("label", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block" }, "Time"), /* @__PURE__ */ import_react96.default.createElement(
5746
5995
  "div",
5747
5996
  {
5748
5997
  onClick: () => canManage && !isSubmitting && setCalendarMode("TIME"),
5749
5998
  className: `flex items-center relative w-full border-b border-neutral-200 transition-all duration-300 pb-3 pt-3 ${!canManage || isSubmitting ? "opacity-50 pointer-events-none" : "hover:border-black cursor-pointer"}`
5750
5999
  },
5751
- /* @__PURE__ */ import_react92.default.createElement(import_react93.HugeiconsIcon, { icon: import_core_free_icons35.Clock01Icon, size: 16, className: "text-neutral-400 absolute left-0" }),
5752
- /* @__PURE__ */ import_react92.default.createElement("span", { className: "w-full pl-8 text-sm text-black truncate block" }, huddleDate.toLocaleTimeString([], { hour: "2-digit", minute: "2-digit" }))
5753
- )), /* @__PURE__ */ import_react92.default.createElement("div", { className: "space-y-1.5 w-full" }, /* @__PURE__ */ import_react92.default.createElement("label", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block" }, "Timezone"), /* @__PURE__ */ import_react92.default.createElement(
6000
+ /* @__PURE__ */ import_react96.default.createElement(import_react97.HugeiconsIcon, { icon: import_core_free_icons37.Clock01Icon, size: 16, className: "text-neutral-400 absolute left-0" }),
6001
+ /* @__PURE__ */ import_react96.default.createElement("span", { className: "w-full pl-8 text-sm text-black truncate block" }, huddleDate.toLocaleTimeString([], { hour: "2-digit", minute: "2-digit" }))
6002
+ )), /* @__PURE__ */ import_react96.default.createElement("div", { className: "space-y-1.5 w-full" }, /* @__PURE__ */ import_react96.default.createElement("label", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block" }, "Timezone"), /* @__PURE__ */ import_react96.default.createElement(
5754
6003
  "div",
5755
6004
  {
5756
6005
  onClick: () => canManage && !isSubmitting && setShowTimezoneModal(true),
5757
6006
  className: `flex items-center relative w-full border-b border-neutral-200 transition-all duration-300 pb-3 pt-3 ${!canManage || isSubmitting ? "opacity-50 pointer-events-none" : "hover:border-black cursor-pointer"}`
5758
6007
  },
5759
- /* @__PURE__ */ import_react92.default.createElement(import_react93.HugeiconsIcon, { icon: import_core_free_icons35.Globe02Icon, size: 16, className: "text-neutral-400 absolute left-0" }),
5760
- /* @__PURE__ */ import_react92.default.createElement("span", { className: "w-full pl-8 text-sm text-black truncate block" }, timezone)
5761
- ))), /* @__PURE__ */ import_react92.default.createElement("div", { className: `flex items-center justify-between py-2 mt-2 ${!canManage ? "opacity-50 pointer-events-none" : ""}` }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex flex-col" }, /* @__PURE__ */ import_react92.default.createElement("span", { className: "text-[12px] text-black tracking-tight" }, "Private Huddle"), /* @__PURE__ */ import_react92.default.createElement("span", { className: "text-[11px] text-neutral-500" }, "Only invited members can join.")), /* @__PURE__ */ import_react92.default.createElement(
6008
+ /* @__PURE__ */ import_react96.default.createElement(import_react97.HugeiconsIcon, { icon: import_core_free_icons37.Globe02Icon, size: 16, className: "text-neutral-400 absolute left-0" }),
6009
+ /* @__PURE__ */ import_react96.default.createElement("span", { className: "w-full pl-8 text-sm text-black truncate block" }, timezone)
6010
+ ))), /* @__PURE__ */ import_react96.default.createElement("div", { className: `flex items-center justify-between py-2 mt-2 ${!canManage ? "opacity-50 pointer-events-none" : ""}` }, /* @__PURE__ */ import_react96.default.createElement("div", { className: "flex flex-col" }, /* @__PURE__ */ import_react96.default.createElement("span", { className: "text-[12px] text-black tracking-tight" }, "Private Huddle"), /* @__PURE__ */ import_react96.default.createElement("span", { className: "text-[11px] text-neutral-500" }, "Only invited members can join.")), /* @__PURE__ */ import_react96.default.createElement(
5762
6011
  "button",
5763
6012
  {
5764
6013
  type: "button",
@@ -5766,8 +6015,8 @@ var UniversalCreateHuddle = ({
5766
6015
  disabled: !canManage || isSubmitting,
5767
6016
  className: `relative w-11 h-6 rounded-full transition-colors outline-none shrink-0 ${isPrivate ? "bg-[#068afe]" : "bg-neutral-200"}`
5768
6017
  },
5769
- /* @__PURE__ */ import_react92.default.createElement("div", { className: `absolute top-1 left-1 bg-white w-4 h-4 rounded-full transition-transform ${isPrivate ? "translate-x-5" : "translate-x-0"}` })
5770
- )), isPrivate && /* @__PURE__ */ import_react92.default.createElement("div", { className: `flex items-center justify-between animate-in fade-in zoom-in-95 duration-200 bg-neutral-50 p-4 rounded-xl ${!canManage ? "opacity-50" : ""}` }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex flex-col" }, /* @__PURE__ */ import_react92.default.createElement("span", { className: "text-[12px] text-black tracking-tight" }, "Participants"), /* @__PURE__ */ import_react92.default.createElement("span", { className: "text-[11px] text-[#068afe] " }, selectedParticipants.size === 0 ? "0 added" : selectedParticipants.size >= 1e3 ? `${(selectedParticipants.size / 1e3).toFixed(1)}k+ added` : `${selectedParticipants.size} added`)), /* @__PURE__ */ import_react92.default.createElement(
6018
+ /* @__PURE__ */ import_react96.default.createElement("div", { className: `absolute top-1 left-1 bg-white w-4 h-4 rounded-full transition-transform ${isPrivate ? "translate-x-5" : "translate-x-0"}` })
6019
+ )), isPrivate && /* @__PURE__ */ import_react96.default.createElement("div", { className: `flex items-center justify-between animate-in fade-in zoom-in-95 duration-200 bg-neutral-50 p-4 rounded-xl ${!canManage ? "opacity-50" : ""}` }, /* @__PURE__ */ import_react96.default.createElement("div", { className: "flex flex-col" }, /* @__PURE__ */ import_react96.default.createElement("span", { className: "text-[12px] text-black tracking-tight" }, "Participants"), /* @__PURE__ */ import_react96.default.createElement("span", { className: "text-[11px] text-[#068afe] " }, selectedParticipants.size === 0 ? "0 added" : selectedParticipants.size >= 1e3 ? `${(selectedParticipants.size / 1e3).toFixed(1)}k+ added` : `${selectedParticipants.size} added`)), /* @__PURE__ */ import_react96.default.createElement(
5771
6020
  "button",
5772
6021
  {
5773
6022
  type: "button",
@@ -5776,7 +6025,7 @@ var UniversalCreateHuddle = ({
5776
6025
  className: "px-4 py-2 border border-neutral-200 text-black text-[11px] tracking-wide rounded-full hover:bg-white transition-colors outline-none bg-transparent disabled:cursor-not-allowed"
5777
6026
  },
5778
6027
  "Manage Access"
5779
- )), canManage && /* @__PURE__ */ import_react92.default.createElement("div", { className: "pt-6" }, /* @__PURE__ */ import_react92.default.createElement(
6028
+ )), canManage && /* @__PURE__ */ import_react96.default.createElement("div", { className: "pt-6" }, /* @__PURE__ */ import_react96.default.createElement(
5780
6029
  ThreeDActionButton,
5781
6030
  {
5782
6031
  type: "submit",
@@ -5785,7 +6034,7 @@ var UniversalCreateHuddle = ({
5785
6034
  className: "w-full sm:w-auto min-w-40"
5786
6035
  },
5787
6036
  "Schedule Huddle"
5788
- )))), canManage && /* @__PURE__ */ import_react92.default.createElement(import_react92.default.Fragment, null, /* @__PURE__ */ import_react92.default.createElement(
6037
+ )))), canManage && /* @__PURE__ */ import_react96.default.createElement(import_react96.default.Fragment, null, /* @__PURE__ */ import_react96.default.createElement(
5789
6038
  CalendarPicker,
5790
6039
  {
5791
6040
  isOpen: calendarMode !== null,
@@ -5794,7 +6043,7 @@ var UniversalCreateHuddle = ({
5794
6043
  defaultMode: calendarMode || "DATE",
5795
6044
  onConfirm: (d) => setHuddleDate(d)
5796
6045
  }
5797
- ), /* @__PURE__ */ import_react92.default.createElement(
6046
+ ), /* @__PURE__ */ import_react96.default.createElement(
5798
6047
  ReusableOptions,
5799
6048
  {
5800
6049
  isOpen: showTimezoneModal,
@@ -5805,7 +6054,7 @@ var UniversalCreateHuddle = ({
5805
6054
  onSelect: (tz) => setTimezone(tz),
5806
6055
  showSearch: true
5807
6056
  }
5808
- )), showMembersModal && canManage && /* @__PURE__ */ import_react92.default.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "absolute inset-0 bg-black/30", onClick: () => setShowMembersModal(false) }), /* @__PURE__ */ import_react92.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_react92.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 " }, /* @__PURE__ */ import_react92.default.createElement("h3", { className: "text-[15px] text-black tracking-tight" }, "Select Participants"), /* @__PURE__ */ import_react92.default.createElement("button", { onClick: () => setShowMembersModal(false), className: "text-[#068afe] hover:text-[#068afe] transition-colors outline-none text-[12px] " }, "Done")), /* @__PURE__ */ import_react92.default.createElement("div", { className: "p-4 shrink-0 " }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "relative w-full" }, /* @__PURE__ */ import_react92.default.createElement("div", { className: "absolute inset-y-0 left-0 pl-4 flex items-center pointer-events-none" }, /* @__PURE__ */ import_react92.default.createElement(import_react93.HugeiconsIcon, { icon: import_core_free_icons35.Search01Icon, size: 16, className: "text-neutral-400" })), /* @__PURE__ */ import_react92.default.createElement(
6057
+ )), showMembersModal && canManage && /* @__PURE__ */ import_react96.default.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react96.default.createElement("div", { className: "absolute inset-0 bg-black/30", onClick: () => setShowMembersModal(false) }), /* @__PURE__ */ import_react96.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_react96.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 " }, /* @__PURE__ */ import_react96.default.createElement("h3", { className: "text-[15px] text-black tracking-tight" }, "Select Participants"), /* @__PURE__ */ import_react96.default.createElement("button", { onClick: () => setShowMembersModal(false), className: "text-[#068afe] hover:text-[#068afe] transition-colors outline-none text-[12px] " }, "Done")), /* @__PURE__ */ import_react96.default.createElement("div", { className: "p-4 shrink-0 " }, /* @__PURE__ */ import_react96.default.createElement("div", { className: "relative w-full" }, /* @__PURE__ */ import_react96.default.createElement("div", { className: "absolute inset-y-0 left-0 pl-4 flex items-center pointer-events-none" }, /* @__PURE__ */ import_react96.default.createElement(import_react97.HugeiconsIcon, { icon: import_core_free_icons37.Search01Icon, size: 16, className: "text-neutral-400" })), /* @__PURE__ */ import_react96.default.createElement(
5809
6058
  "input",
5810
6059
  {
5811
6060
  type: "text",
@@ -5814,34 +6063,34 @@ var UniversalCreateHuddle = ({
5814
6063
  onChange: handleSearchInput,
5815
6064
  className: "w-full pl-10 pr-4 py-2.5 bg-neutral-100 rounded-full text-[12px] text-black placeholder-neutral-400 outline-none focus:bg-neutral-200 transition-colors"
5816
6065
  }
5817
- ))), /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-2 relative" }, isMembersLoading || isTyping ? /* @__PURE__ */ import_react92.default.createElement("div", { className: "absolute inset-0 flex items-center justify-center" }, /* @__PURE__ */ import_react92.default.createElement(import_react93.HugeiconsIcon, { icon: import_core_free_icons35.Loading03Icon, size: 28, className: "animate-spin text-black" })) : members.length === 0 ? /* @__PURE__ */ import_react92.default.createElement("div", { className: "p-8 text-center text-xs text-neutral-400" }, "No members found.") : members.map((member) => {
6066
+ ))), /* @__PURE__ */ import_react96.default.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-2 relative" }, isMembersLoading || isTyping ? /* @__PURE__ */ import_react96.default.createElement("div", { className: "absolute inset-0 flex items-center justify-center" }, /* @__PURE__ */ import_react96.default.createElement(import_react97.HugeiconsIcon, { icon: import_core_free_icons37.Loading03Icon, size: 28, className: "animate-spin text-black" })) : members.length === 0 ? /* @__PURE__ */ import_react96.default.createElement("div", { className: "p-8 text-center text-xs text-neutral-400" }, "No members found.") : members.map((member) => {
5818
6067
  const isChecked = selectedParticipants.has(member.userId);
5819
- return /* @__PURE__ */ import_react92.default.createElement(
6068
+ return /* @__PURE__ */ import_react96.default.createElement(
5820
6069
  "div",
5821
6070
  {
5822
6071
  key: member.id,
5823
6072
  onClick: () => toggleParticipant(member.userId),
5824
6073
  className: "flex items-center justify-between p-3 rounded-xl cursor-pointer hover:bg-neutral-50 transition-colors select-none"
5825
6074
  },
5826
- /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex items-center gap-3 min-w-0 flex-1" }, /* @__PURE__ */ import_react92.default.createElement(MemberAvatar4, { src: member.avatarUrl, sizeClass: "w-9 h-9" }), /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex flex-col min-w-0 flex-1" }, /* @__PURE__ */ import_react92.default.createElement("span", { className: "text-[12px] text-black truncate" }, member.fullName), /* @__PURE__ */ import_react92.default.createElement("span", { className: "text-[11px] text-neutral-400 capitalize truncate" }, member.role.toLowerCase()))),
5827
- /* @__PURE__ */ import_react92.default.createElement("div", { className: "shrink-0 pl-3" }, /* @__PURE__ */ import_react92.default.createElement("div", { className: `w-5 h-5 rounded-full flex items-center justify-center transition-colors ${isChecked ? "bg-[#068afe]" : "border border-neutral-300 bg-white"}` }, isChecked && /* @__PURE__ */ import_react92.default.createElement(import_react93.HugeiconsIcon, { icon: import_core_free_icons35.Tick02Icon, size: 14, className: "text-white" })))
6075
+ /* @__PURE__ */ import_react96.default.createElement("div", { className: "flex items-center gap-3 min-w-0 flex-1" }, /* @__PURE__ */ import_react96.default.createElement(MemberAvatar4, { src: member.avatarUrl, sizeClass: "w-9 h-9" }), /* @__PURE__ */ import_react96.default.createElement("div", { className: "flex flex-col min-w-0 flex-1" }, /* @__PURE__ */ import_react96.default.createElement("span", { className: "text-[12px] text-black truncate" }, member.fullName), /* @__PURE__ */ import_react96.default.createElement("span", { className: "text-[11px] text-neutral-400 capitalize truncate" }, member.role.toLowerCase()))),
6076
+ /* @__PURE__ */ import_react96.default.createElement("div", { className: "shrink-0 pl-3" }, /* @__PURE__ */ import_react96.default.createElement("div", { className: `w-5 h-5 rounded-full flex items-center justify-center transition-colors ${isChecked ? "bg-[#068afe]" : "border border-neutral-300 bg-white"}` }, isChecked && /* @__PURE__ */ import_react96.default.createElement(import_react97.HugeiconsIcon, { icon: import_core_free_icons37.Tick02Icon, size: 14, className: "text-white" })))
5828
6077
  );
5829
- })), /* @__PURE__ */ import_react92.default.createElement("div", { className: "p-4 flex items-center justify-between shrink-0 bg-white" }, /* @__PURE__ */ import_react92.default.createElement("span", { className: "text-[10px] text-neutral-400 tracking-widest" }, "Page ", membersCurrentPage, " of ", membersTotalPages === 0 ? 1 : membersTotalPages), /* @__PURE__ */ import_react92.default.createElement("div", { className: "flex gap-1" }, /* @__PURE__ */ import_react92.default.createElement(
6078
+ })), /* @__PURE__ */ import_react96.default.createElement("div", { className: "p-4 flex items-center justify-between shrink-0 bg-white" }, /* @__PURE__ */ import_react96.default.createElement("span", { className: "text-[10px] text-neutral-400 tracking-widest" }, "Page ", membersCurrentPage, " of ", membersTotalPages === 0 ? 1 : membersTotalPages), /* @__PURE__ */ import_react96.default.createElement("div", { className: "flex gap-1" }, /* @__PURE__ */ import_react96.default.createElement(
5830
6079
  "button",
5831
6080
  {
5832
6081
  disabled: membersCurrentPage <= 1 || isMembersLoading,
5833
6082
  onClick: () => onMembersPageChange(membersCurrentPage - 1),
5834
6083
  className: "w-7 h-7 flex items-center justify-center rounded-full bg-white border border-neutral-200 text-neutral-600 disabled:opacity-30 outline-none hover:bg-neutral-50 transition-colors"
5835
6084
  },
5836
- /* @__PURE__ */ import_react92.default.createElement(import_react93.HugeiconsIcon, { icon: import_core_free_icons35.ArrowLeft01Icon, size: 12 })
5837
- ), /* @__PURE__ */ import_react92.default.createElement(
6085
+ /* @__PURE__ */ import_react96.default.createElement(import_react97.HugeiconsIcon, { icon: import_core_free_icons37.ArrowLeft01Icon, size: 12 })
6086
+ ), /* @__PURE__ */ import_react96.default.createElement(
5838
6087
  "button",
5839
6088
  {
5840
6089
  disabled: membersCurrentPage >= membersTotalPages || membersTotalPages === 0 || isMembersLoading,
5841
6090
  onClick: () => onMembersPageChange(membersCurrentPage + 1),
5842
6091
  className: "w-7 h-7 flex items-center justify-center rounded-full bg-white border border-neutral-200 text-neutral-600 disabled:opacity-30 outline-none hover:bg-neutral-50 transition-colors"
5843
6092
  },
5844
- /* @__PURE__ */ import_react92.default.createElement(import_react93.HugeiconsIcon, { icon: import_core_free_icons35.ArrowRight01Icon, size: 12 })
6093
+ /* @__PURE__ */ import_react96.default.createElement(import_react97.HugeiconsIcon, { icon: import_core_free_icons37.ArrowRight01Icon, size: 12 })
5845
6094
  ))))));
5846
6095
  };
5847
6096
  // Annotate the CommonJS export names for ESM import in node:
@@ -5868,6 +6117,7 @@ var UniversalCreateHuddle = ({
5868
6117
  MedicalFeatureStatsBlock,
5869
6118
  MobileNav,
5870
6119
  NumberInput,
6120
+ OpenBidHome,
5871
6121
  PageSpinner,
5872
6122
  PinDialerBottomSheet,
5873
6123
  PipleAuth,