@loafmarkets/ui 0.1.86 → 0.1.87

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.mjs CHANGED
@@ -2664,7 +2664,7 @@ var PropertyTour = React5.forwardRef(
2664
2664
  }
2665
2665
  );
2666
2666
  PropertyTour.displayName = "PropertyTour";
2667
- var ITEMS_PER_PAGE = 5;
2667
+ var ITEMS_PER_PAGE = 4;
2668
2668
  var ensureAnimationsInjected = () => {
2669
2669
  if (typeof document === "undefined") return;
2670
2670
  if (document.getElementById("property-news-updates-animations")) return;
@@ -2912,10 +2912,10 @@ var PropertyNewsUpdates = React5.forwardRef(
2912
2912
  children: [
2913
2913
  /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
2914
2914
  /* @__PURE__ */ jsxs("div", { style: { display: "flex", alignItems: "center", gap: "0.5rem" }, children: [
2915
- isHomeVariant && /* @__PURE__ */ jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", viewBox: "0 0 24 24", fill: "currentColor", style: { color: "var(--color-text, #fff)", flexShrink: 0, display: "block" }, children: /* @__PURE__ */ jsx("path", { d: "M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-5 14H4v-4h11v4zm0-5H4V9h11v4zm5 5h-4V9h4v9z" }) }),
2915
+ isHomeVariant && /* @__PURE__ */ jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "20", height: "20", viewBox: "0 0 24 24", fill: "currentColor", style: { color: "var(--color-text, #fff)" }, children: /* @__PURE__ */ jsx("path", { d: "M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-5 14H4v-4h11v4zm0-5H4V9h11v4zm5 5h-4V9h4v9z" }) }),
2916
2916
  isPurchaseVariant && /* @__PURE__ */ jsx("span", { style: { display: "inline-block", width: "8px", height: "8px", borderRadius: "50%", backgroundColor: "#0ecb81", boxShadow: "0 0 8px rgba(14,203,129,0.8)", animation: "propertyNewsPulse 1.5s infinite" } }),
2917
2917
  /* @__PURE__ */ jsxs("div", { children: [
2918
- /* @__PURE__ */ jsx("p", { className: isHomeVariant ? "text-base font-semibold text-white" : "text-lg font-semibold text-white", style: { margin: 0 }, children: resolvedHeading }),
2918
+ /* @__PURE__ */ jsx("p", { className: isHomeVariant ? "text-base font-semibold text-white" : "text-lg font-semibold text-white", children: resolvedHeading }),
2919
2919
  subheading ? /* @__PURE__ */ jsx("p", { className: "text-sm text-white/60", children: subheading }) : null
2920
2920
  ] })
2921
2921
  ] }),
@@ -2930,7 +2930,7 @@ var PropertyNewsUpdates = React5.forwardRef(
2930
2930
  "LIVE"
2931
2931
  ] }) : null
2932
2932
  ] }),
2933
- isHomeVariant && /* @__PURE__ */ jsx("div", { style: { display: "flex", gap: "1.5rem", marginTop: "0.75rem", marginBottom: "0.5rem", borderBottom: "1px solid rgba(255, 255, 255, 0.08)", paddingBottom: "0.5rem" }, children: ["all", "property", "market"].map((tab) => /* @__PURE__ */ jsx(
2933
+ isHomeVariant && /* @__PURE__ */ jsx("div", { style: { display: "flex", gap: 0, marginTop: "0.75rem", marginBottom: "0.25rem" }, children: ["all", "property", "market"].map((tab) => /* @__PURE__ */ jsx(
2934
2934
  "button",
2935
2935
  {
2936
2936
  type: "button",
@@ -2939,8 +2939,7 @@ var PropertyNewsUpdates = React5.forwardRef(
2939
2939
  background: "transparent",
2940
2940
  border: "none",
2941
2941
  borderBottom: homeTab === tab ? "2px solid var(--color-accent, #f0b90b)" : "2px solid transparent",
2942
- padding: "0 0 0.5rem 0",
2943
- marginBottom: "-1px",
2942
+ padding: "0.5rem 0.75rem",
2944
2943
  fontSize: "0.75rem",
2945
2944
  fontWeight: homeTab === tab ? 600 : 400,
2946
2945
  color: homeTab === tab ? "var(--color-text, #fff)" : "var(--color-text-secondary, #848e9c)",
@@ -2954,7 +2953,7 @@ var PropertyNewsUpdates = React5.forwardRef(
2954
2953
  /* @__PURE__ */ jsx(
2955
2954
  "div",
2956
2955
  {
2957
- className: cn("flex flex-1 flex-col overflow-hidden", isHomeVariant ? "mt-2 gap-0" : "mt-4 gap-3"),
2956
+ className: "mt-4 flex flex-1 flex-col gap-3 overflow-hidden",
2958
2957
  style: !isPurchaseVariant && !isHomeVariant ? { minHeight: `${ITEMS_PER_PAGE * 86}px` } : void 0,
2959
2958
  children: isPurchaseVariant ? purchaseItems.length > 0 ? purchaseItems.slice(0, 7).map((purchase, index) => {
2960
2959
  const maxAmount = 6e4;
@@ -2993,7 +2992,7 @@ var PropertyNewsUpdates = React5.forwardRef(
2993
2992
  style: {
2994
2993
  width: "100%",
2995
2994
  textAlign: "left",
2996
- backgroundColor: "transparent",
2995
+ background: "transparent",
2997
2996
  border: "none",
2998
2997
  cursor: "pointer",
2999
2998
  padding: "0.75rem 0",
@@ -3002,22 +3001,11 @@ var PropertyNewsUpdates = React5.forwardRef(
3002
3001
  justifyContent: "space-between",
3003
3002
  alignItems: "flex-start",
3004
3003
  gap: "0.5rem",
3005
- color: "inherit",
3006
- transition: "background-color 0.15s"
3007
- },
3008
- onMouseEnter: (e) => {
3009
- e.currentTarget.style.backgroundColor = "rgba(255,255,255,0.04)";
3010
- const title = e.currentTarget.querySelector("h3");
3011
- if (title) title.style.color = "var(--color-accent, #E6C87E)";
3012
- },
3013
- onMouseLeave: (e) => {
3014
- e.currentTarget.style.backgroundColor = "transparent";
3015
- const title = e.currentTarget.querySelector("h3");
3016
- if (title) title.style.color = "#f8f9fa";
3004
+ color: "inherit"
3017
3005
  },
3018
3006
  children: [
3019
3007
  /* @__PURE__ */ jsxs("div", { style: { flex: 1 }, children: [
3020
- /* @__PURE__ */ jsx("h3", { style: { fontSize: "0.85rem", fontWeight: 400, marginBottom: "0.25rem", color: "#f8f9fa", lineHeight: 1.4, transition: "color 0.15s" }, children: item.title }),
3008
+ /* @__PURE__ */ jsx("h3", { style: { fontSize: "0.85rem", fontWeight: 400, marginBottom: "0.25rem", color: "#f8f9fa", lineHeight: 1.4 }, children: item.title }),
3021
3009
  /* @__PURE__ */ jsxs("div", { style: { display: "flex", gap: "0.5rem", alignItems: "center", flexWrap: "wrap" }, children: [
3022
3010
  /* @__PURE__ */ jsx("span", { style: { color: "#848e9c", fontSize: "0.7rem" }, children: typeof item.date === "string" ? item.date : formatDate(item.date) }),
3023
3011
  item.source && /* @__PURE__ */ jsx("span", { style: { padding: "0.1rem 0.4rem", borderRadius: "3px", fontSize: "0.62rem", fontWeight: 500, backgroundColor: "rgba(255,255,255,0.07)", color: "#848e9c", whiteSpace: "nowrap" }, children: item.source }),
@@ -3107,8 +3095,8 @@ var PropertyNewsUpdates = React5.forwardRef(
3107
3095
  type: "button",
3108
3096
  onClick: () => setHomePage((p) => Math.max(0, p - 1)),
3109
3097
  disabled: homePage === 0,
3110
- style: { background: "transparent", border: "1px solid rgba(255,255,255,0.15)", borderRadius: "50%", width: "28px", height: "28px", display: "flex", alignItems: "center", justifyContent: "center", padding: 0, cursor: homePage === 0 ? "not-allowed" : "pointer", opacity: homePage === 0 ? 0.4 : 1, color: "rgba(255,255,255,0.6)" },
3111
- children: /* @__PURE__ */ jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "14", height: "14", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ jsx("path", { d: "M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z" }) })
3098
+ style: { background: "transparent", border: "1px solid rgba(255,255,255,0.15)", borderRadius: "999px", padding: "0.2rem 0.75rem", fontSize: "0.7rem", textTransform: "uppercase", letterSpacing: "0.15em", cursor: homePage === 0 ? "not-allowed" : "pointer", opacity: homePage === 0 ? 0.4 : 1, color: "rgba(255,255,255,0.6)" },
3099
+ children: "Prev"
3112
3100
  }
3113
3101
  ),
3114
3102
  /* @__PURE__ */ jsxs("span", { style: { fontSize: "0.7rem", color: "rgba(255,255,255,0.5)" }, children: [
@@ -3122,8 +3110,8 @@ var PropertyNewsUpdates = React5.forwardRef(
3122
3110
  type: "button",
3123
3111
  onClick: () => setHomePage((p) => Math.min(homeTotalPages - 1, p + 1)),
3124
3112
  disabled: homePage >= homeTotalPages - 1,
3125
- style: { background: "transparent", border: "1px solid rgba(255,255,255,0.15)", borderRadius: "50%", width: "28px", height: "28px", display: "flex", alignItems: "center", justifyContent: "center", padding: 0, cursor: homePage >= homeTotalPages - 1 ? "not-allowed" : "pointer", opacity: homePage >= homeTotalPages - 1 ? 0.4 : 1, color: "rgba(255,255,255,0.6)" },
3126
- children: /* @__PURE__ */ jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "14", height: "14", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ jsx("path", { d: "M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z" }) })
3113
+ style: { background: "transparent", border: "1px solid rgba(255,255,255,0.15)", borderRadius: "999px", padding: "0.2rem 0.75rem", fontSize: "0.7rem", textTransform: "uppercase", letterSpacing: "0.15em", cursor: homePage >= homeTotalPages - 1 ? "not-allowed" : "pointer", opacity: homePage >= homeTotalPages - 1 ? 0.4 : 1, color: "rgba(255,255,255,0.6)" },
3114
+ children: "Next"
3127
3115
  }
3128
3116
  )
3129
3117
  ] }),
@@ -3134,9 +3122,8 @@ var PropertyNewsUpdates = React5.forwardRef(
3134
3122
  type: "button",
3135
3123
  onClick: () => setPage((p) => Math.max(0, p - 1)),
3136
3124
  disabled: page === 0,
3137
- className: cn("rounded-full border border-white/15 flex items-center justify-center", page === 0 ? "opacity-40 cursor-not-allowed" : "hover:border-white/40"),
3138
- style: { width: "28px", height: "28px", padding: 0, background: "transparent", color: "rgba(255,255,255,0.6)" },
3139
- children: /* @__PURE__ */ jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "14", height: "14", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ jsx("path", { d: "M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z" }) })
3125
+ className: cn("rounded-full border border-white/15 px-3 py-1 uppercase tracking-[0.2em]", page === 0 ? "opacity-40 cursor-not-allowed" : "hover:border-white/40"),
3126
+ children: "Prev"
3140
3127
  }
3141
3128
  ),
3142
3129
  /* @__PURE__ */ jsxs("span", { className: "font-medium text-white/70", children: [
@@ -3151,9 +3138,8 @@ var PropertyNewsUpdates = React5.forwardRef(
3151
3138
  type: "button",
3152
3139
  onClick: () => setPage((p) => Math.min(totalPages - 1, p + 1)),
3153
3140
  disabled: page >= totalPages - 1,
3154
- className: cn("rounded-full border border-white/15 flex items-center justify-center", page >= totalPages - 1 ? "opacity-40 cursor-not-allowed" : "hover:border-white/40"),
3155
- style: { width: "28px", height: "28px", padding: 0, background: "transparent", color: "rgba(255,255,255,0.6)" },
3156
- children: /* @__PURE__ */ jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "14", height: "14", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ jsx("path", { d: "M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z" }) })
3141
+ className: cn("rounded-full border border-white/15 px-3 py-1 uppercase tracking-[0.2em]", page >= totalPages - 1 ? "opacity-40 cursor-not-allowed" : "hover:border-white/40"),
3142
+ children: "Next"
3157
3143
  }
3158
3144
  )
3159
3145
  ] }),
@@ -5662,19 +5648,8 @@ var HeaderContainer = styled25.header`
5662
5648
  box-sizing: border-box;
5663
5649
 
5664
5650
  @media (max-width: 768px) {
5665
- top: 0.5rem;
5666
- left: 0.75rem;
5667
- right: 0.75rem;
5668
- width: calc(100% - 1.5rem);
5669
- height: 46px;
5670
- min-height: 46px;
5671
- padding: 0 0.75rem;
5672
- border-radius: 12px;
5673
- background-color: rgba(13, 17, 23, 0.92);
5674
- backdrop-filter: blur(12px);
5675
- border: 1px solid rgba(255, 255, 255, 0.08);
5676
- border-bottom: 1px solid rgba(255, 255, 255, 0.08);
5677
- box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
5651
+ padding: 0 1rem;
5652
+ padding-top: max(env(safe-area-inset-top, 0px), var(--telegram-safe-top, 0px));
5678
5653
  }
5679
5654
  `;
5680
5655
  var HeaderSpacer = styled25.div`
@@ -5682,10 +5657,6 @@ var HeaderSpacer = styled25.div`
5682
5657
  min-height: 56px;
5683
5658
  min-height: calc(56px + max(env(safe-area-inset-top, 0px), var(--telegram-safe-top, 0px)));
5684
5659
  flex-shrink: 0;
5685
-
5686
- @media (max-width: 768px) {
5687
- min-height: calc(46px + 0.5rem);
5688
- }
5689
5660
  `;
5690
5661
  var Logo = styled25.div`
5691
5662
  display: flex;
@@ -6696,7 +6667,7 @@ var LoginPopup = ({
6696
6667
  ] }) });
6697
6668
  }
6698
6669
  if (view === "funding") {
6699
- return /* @__PURE__ */ jsx(Overlay2, { children: /* @__PURE__ */ jsxs(
6670
+ return /* @__PURE__ */ jsx(Overlay2, { onClick: onClose, children: /* @__PURE__ */ jsxs(
6700
6671
  FundingPopupContainer,
6701
6672
  {
6702
6673
  onClick: (event) => event.stopPropagation(),
@@ -6766,16 +6737,6 @@ var Overlay2 = styled25.div`
6766
6737
  justify-content: center;
6767
6738
  align-items: center;
6768
6739
  z-index: 10000;
6769
- animation: fadeIn 0.2s ease-in-out;
6770
-
6771
- @keyframes fadeIn {
6772
- from {
6773
- opacity: 0;
6774
- }
6775
- to {
6776
- opacity: 1;
6777
- }
6778
- }
6779
6740
  `;
6780
6741
  var PopupContainer = styled25.div`
6781
6742
  background-color: var(--color-background, #0a0a0a);
@@ -6785,20 +6746,8 @@ var PopupContainer = styled25.div`
6785
6746
  max-width: 440px;
6786
6747
  width: 90%;
6787
6748
  position: relative;
6788
- animation: slideUp 0.3s ease-out;
6789
6749
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
6790
6750
 
6791
- @keyframes slideUp {
6792
- from {
6793
- transform: translateY(20px);
6794
- opacity: 0;
6795
- }
6796
- to {
6797
- transform: translateY(0);
6798
- opacity: 1;
6799
- }
6800
- }
6801
-
6802
6751
  @media (max-width: 768px) {
6803
6752
  padding: 2rem;
6804
6753
  max-width: 90%;
@@ -6812,21 +6761,9 @@ var KycPopupContainer = styled25.div`
6812
6761
  max-width: ${(props) => props.$expanded ? "680px" : "440px"};
6813
6762
  width: 90%;
6814
6763
  position: relative;
6815
- animation: slideUp 0.3s ease-out;
6816
6764
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
6817
6765
  transition: max-width 0.3s ease;
6818
6766
 
6819
- @keyframes slideUp {
6820
- from {
6821
- transform: translateY(20px);
6822
- opacity: 0;
6823
- }
6824
- to {
6825
- transform: translateY(0);
6826
- opacity: 1;
6827
- }
6828
- }
6829
-
6830
6767
  @media (max-width: 768px) {
6831
6768
  padding: 1.5rem;
6832
6769
  max-width: 95%;
@@ -7154,21 +7091,9 @@ var FundingPopupContainer = styled25.div`
7154
7091
  max-width: ${(props) => props.$hasWidget ? "900px" : "440px"};
7155
7092
  width: 90%;
7156
7093
  position: relative;
7157
- animation: slideUp 0.3s ease-out;
7158
7094
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
7159
7095
  overflow: hidden;
7160
7096
 
7161
- @keyframes slideUp {
7162
- from {
7163
- transform: translateY(20px);
7164
- opacity: 0;
7165
- }
7166
- to {
7167
- transform: translateY(0);
7168
- opacity: 1;
7169
- }
7170
- }
7171
-
7172
7097
  @media (max-width: 768px) {
7173
7098
  padding: ${(props) => props.$hasWidget ? "0" : "2rem"};
7174
7099
  max-width: 95%;
@@ -9673,7 +9598,6 @@ function OfferingProgressCard({
9673
9598
  raisedAmount,
9674
9599
  targetAmount,
9675
9600
  isPrivateClient = false,
9676
- variant = "default",
9677
9601
  style,
9678
9602
  className
9679
9603
  }) {
@@ -9705,108 +9629,6 @@ function OfferingProgressCard({
9705
9629
  const interval = setInterval(() => setCountdown(calculateCountdown()), 1e3);
9706
9630
  return () => clearInterval(interval);
9707
9631
  }, [opensAt]);
9708
- if (variant === "compact") {
9709
- return /* @__PURE__ */ jsxs(CompactContainer, { style, className, children: [
9710
- /* @__PURE__ */ jsx(ProgressBarOuter, { children: /* @__PURE__ */ jsx(ProgressBarInner, { style: { width: `${Math.min(percentSold, 100)}%` } }) }),
9711
- /* @__PURE__ */ jsxs(ProgressInfo, { children: [
9712
- /* @__PURE__ */ jsxs(ProgressSubscribers, { children: [
9713
- "Subscribers: ",
9714
- subscriberCount.toLocaleString()
9715
- ] }),
9716
- /* @__PURE__ */ jsxs(ProgressAmounts, { children: [
9717
- /* @__PURE__ */ jsx("span", { className: "raised", children: formatCurrency3(computedRaised) }),
9718
- /* @__PURE__ */ jsxs("span", { className: "target", children: [
9719
- " / ",
9720
- formatCurrency3(computedTarget)
9721
- ] })
9722
- ] })
9723
- ] })
9724
- ] });
9725
- }
9726
- if (variant === "home") {
9727
- const isPreLive = !ipoStarted && ipoStatus !== "CLOSED" && ipoStatus !== "CANCELLED";
9728
- return /* @__PURE__ */ jsxs(Container, { style, className, children: [
9729
- /* @__PURE__ */ jsxs(Header2, { children: [
9730
- /* @__PURE__ */ jsxs("h3", { children: [
9731
- /* @__PURE__ */ jsx(FaChartLine, {}),
9732
- " Offering Progress"
9733
- ] }),
9734
- /* @__PURE__ */ jsx("div", { style: { display: "flex", alignItems: "center", gap: "0.4rem" }, children: ipoStarted ? /* @__PURE__ */ jsxs(StatusSpan, { $color: "#0ecb81", children: [
9735
- /* @__PURE__ */ jsx(StatusDot, { $color: "#0ecb81", $pulse: true }),
9736
- "LIVE"
9737
- ] }) : /* @__PURE__ */ jsxs(StatusSpan, { $color: statusColor || "#D4AF37", children: [
9738
- /* @__PURE__ */ jsx(StatusDot, { $color: statusColor || "#D4AF37" }),
9739
- statusLabel || "Preparing"
9740
- ] }) })
9741
- ] }),
9742
- isPreLive ? /* @__PURE__ */ jsxs(HomePreLiveRow, { children: [
9743
- countdown ? /* @__PURE__ */ jsxs(HomeCountdownSide, { children: [
9744
- /* @__PURE__ */ jsx(CountdownLabel, { children: "Opens In" }),
9745
- /* @__PURE__ */ jsxs(CountdownDigits, { children: [
9746
- /* @__PURE__ */ jsx(CountdownNumber, { children: String(countdown.days).padStart(2, "0") }),
9747
- /* @__PURE__ */ jsx(CountdownUnitLabel, { children: "D" }),
9748
- /* @__PURE__ */ jsx(CountdownSeparator, { children: ":" }),
9749
- /* @__PURE__ */ jsx(CountdownNumber, { children: String(countdown.hours).padStart(2, "0") }),
9750
- /* @__PURE__ */ jsx(CountdownUnitLabel, { children: "H" }),
9751
- /* @__PURE__ */ jsx(CountdownSeparator, { children: ":" }),
9752
- /* @__PURE__ */ jsx(CountdownNumber, { children: String(countdown.minutes).padStart(2, "0") }),
9753
- /* @__PURE__ */ jsx(CountdownUnitLabel, { children: "M" }),
9754
- /* @__PURE__ */ jsx(CountdownSeparator, { children: ":" }),
9755
- /* @__PURE__ */ jsx(CountdownNumber, { children: String(countdown.seconds).padStart(2, "0") }),
9756
- /* @__PURE__ */ jsx(CountdownUnitLabel, { children: "S" })
9757
- ] })
9758
- ] }) : /* @__PURE__ */ jsx(HomeCountdownSide, { children: /* @__PURE__ */ jsx(PreLiveStatus, { $statusColor: statusColor, children: "Sale Not Yet Open" }) }),
9759
- /* @__PURE__ */ jsxs(HomeUnitsSide, { children: [
9760
- /* @__PURE__ */ jsx(HomeUnitsLabel, { children: "Units Subscribed" }),
9761
- /* @__PURE__ */ jsxs(HomeUnitsValue, { children: [
9762
- /* @__PURE__ */ jsx(HomeSpinner, {}),
9763
- /* @__PURE__ */ jsxs("span", { children: [
9764
- " / ",
9765
- supplyToSell.toLocaleString()
9766
- ] })
9767
- ] })
9768
- ] })
9769
- ] }) : /* @__PURE__ */ jsxs(LiveBody, { children: [
9770
- /* @__PURE__ */ jsxs(LiveTopRow, { children: [
9771
- /* @__PURE__ */ jsxs("div", { children: [
9772
- /* @__PURE__ */ jsxs(LiveLabel, { children: [
9773
- "Offering Subscribed ",
9774
- /* @__PURE__ */ jsx("span", { children: "\u24D8" })
9775
- ] }),
9776
- /* @__PURE__ */ jsxs(LivePercent, { children: [
9777
- percentSold.toFixed(1),
9778
- "%",
9779
- /* @__PURE__ */ jsx("span", { className: "arrow", children: "\u2191" })
9780
- ] })
9781
- ] }),
9782
- /* @__PURE__ */ jsxs("div", { style: { textAlign: "right" }, children: [
9783
- /* @__PURE__ */ jsx(LiveLabel, { children: "Units Subscribed" }),
9784
- /* @__PURE__ */ jsxs(UnitsValue, { children: [
9785
- /* @__PURE__ */ jsx("span", { children: totalSold.toLocaleString() }),
9786
- /* @__PURE__ */ jsxs("small", { children: [
9787
- "/ ",
9788
- supplyToSell.toLocaleString()
9789
- ] })
9790
- ] })
9791
- ] })
9792
- ] }),
9793
- /* @__PURE__ */ jsx(ProgressBarOuter, { children: /* @__PURE__ */ jsx(ProgressBarInner, { style: { width: `${Math.min(percentSold, 100)}%` } }) }),
9794
- /* @__PURE__ */ jsxs(ProgressInfo, { children: [
9795
- /* @__PURE__ */ jsxs(ProgressSubscribers, { children: [
9796
- "Subscribers: ",
9797
- subscriberCount.toLocaleString()
9798
- ] }),
9799
- /* @__PURE__ */ jsxs(ProgressAmounts, { children: [
9800
- /* @__PURE__ */ jsx("span", { className: "raised", children: formatCurrency3(computedRaised) }),
9801
- /* @__PURE__ */ jsxs("span", { className: "target", children: [
9802
- " / ",
9803
- formatCurrency3(computedTarget)
9804
- ] })
9805
- ] })
9806
- ] })
9807
- ] })
9808
- ] });
9809
- }
9810
9632
  return /* @__PURE__ */ jsxs(Container, { style, className, children: [
9811
9633
  /* @__PURE__ */ jsxs(Header2, { children: [
9812
9634
  /* @__PURE__ */ jsxs("h3", { children: [
@@ -9875,7 +9697,7 @@ function OfferingProgressCard({
9875
9697
  /* @__PURE__ */ jsx("span", { children: "\u24D8" })
9876
9698
  ] }),
9877
9699
  /* @__PURE__ */ jsxs(LivePercent, { children: [
9878
- percentSold.toFixed(1),
9700
+ percentSold < 0.1 && percentSold > 0 ? percentSold.toFixed(3) : percentSold.toFixed(1),
9879
9701
  "%",
9880
9702
  /* @__PURE__ */ jsx("span", { className: "arrow", children: "\u2191" })
9881
9703
  ] })
@@ -10108,59 +9930,6 @@ var ProgressAmounts = styled25.div`
10108
9930
  .raised { color: #D4AF37; }
10109
9931
  .target { color: rgba(255,255,255,0.3); }
10110
9932
  `;
10111
- var CompactContainer = styled25.div`
10112
- width: 100%;
10113
- margin: 1.5rem 0;
10114
- display: flex;
10115
- flex-direction: column;
10116
- gap: 0.5rem;
10117
- `;
10118
- var HomePreLiveRow = styled25.div`
10119
- display: flex;
10120
- align-items: center;
10121
- justify-content: space-between;
10122
- padding-top: 1rem;
10123
- `;
10124
- var HomeCountdownSide = styled25.div`
10125
- display: flex;
10126
- flex-direction: column;
10127
- align-items: center;
10128
- flex: 1;
10129
- `;
10130
- var HomeUnitsSide = styled25.div`
10131
- text-align: center;
10132
- flex-shrink: 0;
10133
- `;
10134
- var HomeUnitsLabel = styled25.div`
10135
- font-size: 0.6rem;
10136
- color: var(--color-text-secondary);
10137
- text-transform: uppercase;
10138
- letter-spacing: 0.1em;
10139
- margin-bottom: 0.2rem;
10140
- `;
10141
- var HomeUnitsValue = styled25.div`
10142
- font-size: 1.1rem;
10143
- font-weight: 700;
10144
- font-family: monospace;
10145
- span {
10146
- color: var(--color-text-secondary);
10147
- font-weight: 400;
10148
- }
10149
- `;
10150
- var HomeSpinner = styled25.span`
10151
- display: inline-block;
10152
- width: 14px;
10153
- height: 14px;
10154
- border: 2px solid rgba(255, 255, 255, 0.1);
10155
- border-top-color: var(--color-accent, #f0b90b);
10156
- border-radius: 50%;
10157
- animation: homeSpin 1s linear infinite;
10158
- vertical-align: middle;
10159
- margin-right: 0.15rem;
10160
- @keyframes homeSpin {
10161
- to { transform: rotate(360deg); }
10162
- }
10163
- `;
10164
9933
  var MAX_DISPLAY_AMOUNT = 6e4;
10165
9934
  var formatCurrency4 = (amount) => {
10166
9935
  if (amount >= 1e6) return `$${(amount / 1e6).toFixed(2)}M`;
@@ -11838,14 +11607,7 @@ function PortfolioActivityPanel({
11838
11607
  formatTimestamp(trade.executedAt)
11839
11608
  ] })
11840
11609
  ] }),
11841
- /* @__PURE__ */ jsx(
11842
- ActivityTag,
11843
- {
11844
- $color: trade.side === "SELL" ? "#f6465d" : "#0ecb81",
11845
- $bg: trade.side === "SELL" ? "rgba(246,70,93,0.12)" : "rgba(14,203,129,0.12)",
11846
- children: sideLabel(trade.side)
11847
- }
11848
- ),
11610
+ trade.status === "SETTLEMENT_FAILED" ? /* @__PURE__ */ jsx(ActivityTag, { $color: "#f6465d", $bg: "rgba(246,70,93,0.12)", children: "Failed" }) : trade.status === "SETTLED" ? /* @__PURE__ */ jsx(ActivityTag, { $color: "#0ecb81", $bg: "rgba(14,203,129,0.12)", children: "Settled" }) : /* @__PURE__ */ jsx(ActivityTag, { $color: "#f0b90b", $bg: "rgba(240,185,11,0.15)", children: "Settling" }),
11849
11611
  /* @__PURE__ */ jsx(ActivityAmount, { children: formatCurrency5(trade.price * trade.quantity) })
11850
11612
  ] }, trade.tradeId))
11851
11613
  ] }),
@@ -13917,7 +13679,7 @@ function PropertyValuation({
13917
13679
  /* @__PURE__ */ jsxs("div", { style: { display: "flex", flexDirection: "column", gap: "0.5rem" }, children: [
13918
13680
  /* @__PURE__ */ jsxs(PricingModelDetail, { children: [
13919
13681
  /* @__PURE__ */ jsx(PropertyDetailLabel, { children: "Last Price" }),
13920
- /* @__PURE__ */ jsx(PricingDetailValue, { children: formatCurrency6(lastPrice) })
13682
+ /* @__PURE__ */ jsx(PricingDetailValue, { children: formatCompact(lastPrice) })
13921
13683
  ] }),
13922
13684
  /* @__PURE__ */ jsxs(PricingModelDetail, { children: [
13923
13685
  /* @__PURE__ */ jsxs("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center", width: "100%" }, children: [
@@ -13928,11 +13690,11 @@ function PropertyValuation({
13928
13690
  ] })
13929
13691
  ] }),
13930
13692
  /* @__PURE__ */ jsxs(PricingDetailValue, { style: { color: "var(--color-accent)", fontWeight: "bold" }, children: [
13931
- formatCurrency6(fairValue),
13693
+ formatCompact(fairValue),
13932
13694
  " ",
13933
13695
  /* @__PURE__ */ jsxs("span", { style: { fontSize: "0.85em", fontWeight: "normal", opacity: 0.8 }, children: [
13934
13696
  "(",
13935
- formatCurrency6(fairValue * tokensOutstanding, { maximumFractionDigits: 0 }),
13697
+ formatCompact(fairValue * tokensOutstanding),
13936
13698
  ")"
13937
13699
  ] })
13938
13700
  ] })
@@ -13949,7 +13711,7 @@ function PropertyValuation({
13949
13711
  /* @__PURE__ */ jsx(GaugeIndicator, { type: "fairValue", position: 50 }),
13950
13712
  /* @__PURE__ */ jsxs(GaugePriceTag, { position: gaugePosition, children: [
13951
13713
  /* @__PURE__ */ jsx("span", { children: "Last Price" }),
13952
- /* @__PURE__ */ jsx("span", { children: formatCurrency6(lastPrice) })
13714
+ /* @__PURE__ */ jsx("span", { children: formatCompact(lastPrice) })
13953
13715
  ] }),
13954
13716
  /* @__PURE__ */ jsx(GaugeIndicator, { type: "lastPrice", position: gaugePosition })
13955
13717
  ] }),
@@ -13957,36 +13719,36 @@ function PropertyValuation({
13957
13719
  /* @__PURE__ */ jsx(ValuationItem, { children: /* @__PURE__ */ jsxs(ValuationValue, { style: { color: "#4CAF50" }, children: [
13958
13720
  /* @__PURE__ */ jsxs("span", { children: [
13959
13721
  "< ",
13960
- formatCurrency6(undervaluedThreshold)
13722
+ formatCompact(undervaluedThreshold)
13961
13723
  ] }),
13962
13724
  /* @__PURE__ */ jsxs("span", { className: "valuation-amount-span", style: { fontSize: "0.8rem", fontWeight: "normal" }, children: [
13963
13725
  "(",
13964
- formatMillions(undervaluedThreshold * tokensOutstanding),
13726
+ formatCompact(undervaluedThreshold * tokensOutstanding),
13965
13727
  ")"
13966
13728
  ] })
13967
13729
  ] }) }),
13968
13730
  /* @__PURE__ */ jsx(ValuationItem, { children: /* @__PURE__ */ jsxs(ValuationValue, { style: { color: "var(--color-accent)" }, children: [
13969
- /* @__PURE__ */ jsx("span", { children: formatCurrency6(fairValue) }),
13731
+ /* @__PURE__ */ jsx("span", { children: formatCompact(fairValue) }),
13970
13732
  /* @__PURE__ */ jsxs("span", { className: "valuation-amount-span", style: { fontSize: "0.8rem", fontWeight: "normal" }, children: [
13971
13733
  "(",
13972
- formatMillions(fairValue * tokensOutstanding),
13734
+ formatCompact(fairValue * tokensOutstanding),
13973
13735
  ")"
13974
13736
  ] })
13975
13737
  ] }) }),
13976
13738
  /* @__PURE__ */ jsx(ValuationItem, { children: /* @__PURE__ */ jsxs(ValuationValue, { style: { color: "#F44336" }, children: [
13977
13739
  /* @__PURE__ */ jsxs("span", { children: [
13978
13740
  "> ",
13979
- formatCurrency6(overvaluedThreshold)
13741
+ formatCompact(overvaluedThreshold)
13980
13742
  ] }),
13981
13743
  /* @__PURE__ */ jsxs("span", { className: "valuation-amount-span", style: { fontSize: "0.8rem", fontWeight: "normal" }, children: [
13982
13744
  "(",
13983
- formatMillions(overvaluedThreshold * tokensOutstanding),
13745
+ formatCompact(overvaluedThreshold * tokensOutstanding),
13984
13746
  ")"
13985
13747
  ] })
13986
13748
  ] }) })
13987
13749
  ] })
13988
13750
  ] }),
13989
- /* @__PURE__ */ jsxs(HiddenMobileChart, { children: [
13751
+ /* @__PURE__ */ jsxs("div", { children: [
13990
13752
  /* @__PURE__ */ jsx("h3", { style: { marginBottom: "1rem", fontSize: "1.1rem", color: "#fff" }, children: "Historical Valuation" }),
13991
13753
  /* @__PURE__ */ jsx(ChartContainer, { children: /* @__PURE__ */ jsxs(ChartBackground, { children: [
13992
13754
  axisLabels.map((label, index) => /* @__PURE__ */ jsx(YAxisLabel, { style: { top: `${10 + index * 22}%` }, children: label }, `${label}-${index}`)),
@@ -14105,15 +13867,7 @@ function PropertyValuation({
14105
13867
  ] })
14106
13868
  ] }) })
14107
13869
  ] })
14108
- ] }),
14109
- /* @__PURE__ */ jsx("h3", { className: "desktop-only-historical-chart", style: { marginBottom: "1rem", fontSize: "1.1rem", color: "#fff" }, children: "Historical Valuation" }),
14110
- /* @__PURE__ */ jsx(ChartContainer, { className: "desktop-only-historical-chart", children: /* @__PURE__ */ jsxs(ChartBackground, { children: [
14111
- axisLabels.map((label, index) => /* @__PURE__ */ jsx(YAxisLabel, { style: { top: `${10 + index * 22}%` }, children: label }, `${label}-${index}`)),
14112
- /* @__PURE__ */ jsxs(ValuationSvg, { viewBox: `0 0 ${CHART_WIDTH} ${CHART_HEIGHT}`, preserveAspectRatio: "none", children: [
14113
- valuationPath ? /* @__PURE__ */ jsx("path", { d: valuationPath, fill: "none", stroke: "#D4AF37", strokeWidth: "2.5", strokeLinecap: "round", strokeLinejoin: "round", vectorEffect: "non-scaling-stroke" }) : null,
14114
- fairValuePath ? /* @__PURE__ */ jsx("path", { d: fairValuePath, fill: "none", stroke: "#FFFFFF", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", vectorEffect: "non-scaling-stroke" }) : null
14115
- ] })
14116
- ] }) })
13870
+ ] })
14117
13871
  ] })
14118
13872
  ] }),
14119
13873
  /* @__PURE__ */ jsxs(RecentSalesSection, { children: [
@@ -14187,6 +13941,14 @@ function formatMillions(value) {
14187
13941
  }
14188
13942
  return `$${(value / 1e6).toFixed(2)}m`;
14189
13943
  }
13944
+ function formatCompact(value) {
13945
+ if (value == null || !Number.isFinite(value)) return "\u2014";
13946
+ const abs = Math.abs(value);
13947
+ if (abs >= 1e9) return `$${(value / 1e9).toFixed(2)}B`;
13948
+ if (abs >= 1e6) return `$${(value / 1e6).toFixed(2)}M`;
13949
+ if (abs >= 1e3) return `$${(value / 1e3).toFixed(1)}K`;
13950
+ return formatCurrency6(value);
13951
+ }
14190
13952
  function formatBedroomLabel(bedrooms) {
14191
13953
  if (!Number.isFinite(bedrooms)) return "\u2014";
14192
13954
  return `${bedrooms} Bed`;
@@ -14310,12 +14072,6 @@ var GaugePriceTag = styled25.div`
14310
14072
  color: var(--color-accent);
14311
14073
  }
14312
14074
  `;
14313
- var HiddenMobileChart = styled25.div`
14314
- display: none;
14315
- @media (max-width: 480px) {
14316
- display: block;
14317
- }
14318
- `;
14319
14075
  var ValuationWrapper = styled25.div`
14320
14076
  display: flex;
14321
14077
  flex-direction: column;
@@ -14367,9 +14123,10 @@ var PricingModelCard = styled25.div`
14367
14123
  var PricingModelHeader = styled25.div`
14368
14124
  display: flex;
14369
14125
  justify-content: space-between;
14370
- align-items: center;
14126
+ align-items: flex-start;
14371
14127
  margin-bottom: 1.5rem;
14372
14128
  gap: 1rem;
14129
+ flex-wrap: wrap;
14373
14130
 
14374
14131
  .valuation-info {
14375
14132
  display: flex;
@@ -14377,6 +14134,7 @@ var PricingModelHeader = styled25.div`
14377
14134
  gap: 0.25rem;
14378
14135
  font-size: 0.85rem;
14379
14136
  color: rgba(255, 255, 255, 0.75);
14137
+ flex-shrink: 0;
14380
14138
  }
14381
14139
  `;
14382
14140
  var PricingModelTitle = styled25.h3`
@@ -14443,15 +14201,31 @@ var ValuationDetails = styled25.div`
14443
14201
  display: flex;
14444
14202
  justify-content: space-between;
14445
14203
  margin-top: 1rem;
14204
+ gap: 0.25rem;
14446
14205
  `;
14447
14206
  var ValuationItem = styled25.div`
14448
14207
  display: flex;
14449
14208
  flex-direction: column;
14209
+ min-width: 0;
14210
+ overflow: hidden;
14450
14211
  `;
14451
14212
  var ValuationValue = styled25.div`
14452
14213
  font-size: 1rem;
14453
14214
  font-weight: 600;
14454
14215
  color: #fff;
14216
+ display: flex;
14217
+ flex-direction: column;
14218
+ gap: 2px;
14219
+ overflow-wrap: break-word;
14220
+ word-break: break-word;
14221
+
14222
+ @media (max-width: 480px) {
14223
+ font-size: 0.72rem;
14224
+
14225
+ .valuation-amount-span {
14226
+ display: none;
14227
+ }
14228
+ }
14455
14229
  `;
14456
14230
  var ChartContainer = styled25.div`
14457
14231
  width: 100%;