@loafmarkets/ui 0.1.86 → 0.1.88
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.d.mts +2 -3
- package/dist/index.d.ts +2 -3
- package/dist/index.js +66 -287
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +66 -287
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
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 =
|
|
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: "
|
|
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",
|
|
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:
|
|
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
|
|
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:
|
|
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
|
-
|
|
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
|
|
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: "
|
|
3111
|
-
children:
|
|
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: "
|
|
3126
|
-
children:
|
|
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
|
|
3138
|
-
|
|
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
|
|
3155
|
-
|
|
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
|
-
|
|
5666
|
-
|
|
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;
|
|
@@ -6184,6 +6155,11 @@ var LoginPopup = ({
|
|
|
6184
6155
|
setView(initialView);
|
|
6185
6156
|
}
|
|
6186
6157
|
}, [initialView]);
|
|
6158
|
+
useEffect(() => {
|
|
6159
|
+
if (view === "kyc" && renderKycWidget) {
|
|
6160
|
+
setShowKycWidget(true);
|
|
6161
|
+
}
|
|
6162
|
+
}, [view, renderKycWidget]);
|
|
6187
6163
|
useEffect(() => {
|
|
6188
6164
|
if (!transakWidgetUrl) return;
|
|
6189
6165
|
const handleTransakMessage = (event) => {
|
|
@@ -6696,7 +6672,7 @@ var LoginPopup = ({
|
|
|
6696
6672
|
] }) });
|
|
6697
6673
|
}
|
|
6698
6674
|
if (view === "funding") {
|
|
6699
|
-
return /* @__PURE__ */ jsx(Overlay2, { children: /* @__PURE__ */ jsxs(
|
|
6675
|
+
return /* @__PURE__ */ jsx(Overlay2, { onClick: onClose, children: /* @__PURE__ */ jsxs(
|
|
6700
6676
|
FundingPopupContainer,
|
|
6701
6677
|
{
|
|
6702
6678
|
onClick: (event) => event.stopPropagation(),
|
|
@@ -6766,16 +6742,6 @@ var Overlay2 = styled25.div`
|
|
|
6766
6742
|
justify-content: center;
|
|
6767
6743
|
align-items: center;
|
|
6768
6744
|
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
6745
|
`;
|
|
6780
6746
|
var PopupContainer = styled25.div`
|
|
6781
6747
|
background-color: var(--color-background, #0a0a0a);
|
|
@@ -6785,20 +6751,8 @@ var PopupContainer = styled25.div`
|
|
|
6785
6751
|
max-width: 440px;
|
|
6786
6752
|
width: 90%;
|
|
6787
6753
|
position: relative;
|
|
6788
|
-
animation: slideUp 0.3s ease-out;
|
|
6789
6754
|
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
|
|
6790
6755
|
|
|
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
6756
|
@media (max-width: 768px) {
|
|
6803
6757
|
padding: 2rem;
|
|
6804
6758
|
max-width: 90%;
|
|
@@ -6812,21 +6766,9 @@ var KycPopupContainer = styled25.div`
|
|
|
6812
6766
|
max-width: ${(props) => props.$expanded ? "680px" : "440px"};
|
|
6813
6767
|
width: 90%;
|
|
6814
6768
|
position: relative;
|
|
6815
|
-
animation: slideUp 0.3s ease-out;
|
|
6816
6769
|
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
|
|
6817
6770
|
transition: max-width 0.3s ease;
|
|
6818
6771
|
|
|
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
6772
|
@media (max-width: 768px) {
|
|
6831
6773
|
padding: 1.5rem;
|
|
6832
6774
|
max-width: 95%;
|
|
@@ -7154,21 +7096,9 @@ var FundingPopupContainer = styled25.div`
|
|
|
7154
7096
|
max-width: ${(props) => props.$hasWidget ? "900px" : "440px"};
|
|
7155
7097
|
width: 90%;
|
|
7156
7098
|
position: relative;
|
|
7157
|
-
animation: slideUp 0.3s ease-out;
|
|
7158
7099
|
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
|
|
7159
7100
|
overflow: hidden;
|
|
7160
7101
|
|
|
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
7102
|
@media (max-width: 768px) {
|
|
7173
7103
|
padding: ${(props) => props.$hasWidget ? "0" : "2rem"};
|
|
7174
7104
|
max-width: 95%;
|
|
@@ -9673,7 +9603,6 @@ function OfferingProgressCard({
|
|
|
9673
9603
|
raisedAmount,
|
|
9674
9604
|
targetAmount,
|
|
9675
9605
|
isPrivateClient = false,
|
|
9676
|
-
variant = "default",
|
|
9677
9606
|
style,
|
|
9678
9607
|
className
|
|
9679
9608
|
}) {
|
|
@@ -9705,108 +9634,6 @@ function OfferingProgressCard({
|
|
|
9705
9634
|
const interval = setInterval(() => setCountdown(calculateCountdown()), 1e3);
|
|
9706
9635
|
return () => clearInterval(interval);
|
|
9707
9636
|
}, [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
9637
|
return /* @__PURE__ */ jsxs(Container, { style, className, children: [
|
|
9811
9638
|
/* @__PURE__ */ jsxs(Header2, { children: [
|
|
9812
9639
|
/* @__PURE__ */ jsxs("h3", { children: [
|
|
@@ -9875,7 +9702,7 @@ function OfferingProgressCard({
|
|
|
9875
9702
|
/* @__PURE__ */ jsx("span", { children: "\u24D8" })
|
|
9876
9703
|
] }),
|
|
9877
9704
|
/* @__PURE__ */ jsxs(LivePercent, { children: [
|
|
9878
|
-
percentSold.toFixed(1),
|
|
9705
|
+
percentSold < 0.1 && percentSold > 0 ? percentSold.toFixed(3) : percentSold.toFixed(1),
|
|
9879
9706
|
"%",
|
|
9880
9707
|
/* @__PURE__ */ jsx("span", { className: "arrow", children: "\u2191" })
|
|
9881
9708
|
] })
|
|
@@ -10108,59 +9935,6 @@ var ProgressAmounts = styled25.div`
|
|
|
10108
9935
|
.raised { color: #D4AF37; }
|
|
10109
9936
|
.target { color: rgba(255,255,255,0.3); }
|
|
10110
9937
|
`;
|
|
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
9938
|
var MAX_DISPLAY_AMOUNT = 6e4;
|
|
10165
9939
|
var formatCurrency4 = (amount) => {
|
|
10166
9940
|
if (amount >= 1e6) return `$${(amount / 1e6).toFixed(2)}M`;
|
|
@@ -11838,14 +11612,7 @@ function PortfolioActivityPanel({
|
|
|
11838
11612
|
formatTimestamp(trade.executedAt)
|
|
11839
11613
|
] })
|
|
11840
11614
|
] }),
|
|
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
|
-
),
|
|
11615
|
+
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
11616
|
/* @__PURE__ */ jsx(ActivityAmount, { children: formatCurrency5(trade.price * trade.quantity) })
|
|
11850
11617
|
] }, trade.tradeId))
|
|
11851
11618
|
] }),
|
|
@@ -13917,7 +13684,7 @@ function PropertyValuation({
|
|
|
13917
13684
|
/* @__PURE__ */ jsxs("div", { style: { display: "flex", flexDirection: "column", gap: "0.5rem" }, children: [
|
|
13918
13685
|
/* @__PURE__ */ jsxs(PricingModelDetail, { children: [
|
|
13919
13686
|
/* @__PURE__ */ jsx(PropertyDetailLabel, { children: "Last Price" }),
|
|
13920
|
-
/* @__PURE__ */ jsx(PricingDetailValue, { children:
|
|
13687
|
+
/* @__PURE__ */ jsx(PricingDetailValue, { children: formatCompact(lastPrice) })
|
|
13921
13688
|
] }),
|
|
13922
13689
|
/* @__PURE__ */ jsxs(PricingModelDetail, { children: [
|
|
13923
13690
|
/* @__PURE__ */ jsxs("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center", width: "100%" }, children: [
|
|
@@ -13928,11 +13695,11 @@ function PropertyValuation({
|
|
|
13928
13695
|
] })
|
|
13929
13696
|
] }),
|
|
13930
13697
|
/* @__PURE__ */ jsxs(PricingDetailValue, { style: { color: "var(--color-accent)", fontWeight: "bold" }, children: [
|
|
13931
|
-
|
|
13698
|
+
formatCompact(fairValue),
|
|
13932
13699
|
" ",
|
|
13933
13700
|
/* @__PURE__ */ jsxs("span", { style: { fontSize: "0.85em", fontWeight: "normal", opacity: 0.8 }, children: [
|
|
13934
13701
|
"(",
|
|
13935
|
-
|
|
13702
|
+
formatCompact(fairValue * tokensOutstanding),
|
|
13936
13703
|
")"
|
|
13937
13704
|
] })
|
|
13938
13705
|
] })
|
|
@@ -13949,7 +13716,7 @@ function PropertyValuation({
|
|
|
13949
13716
|
/* @__PURE__ */ jsx(GaugeIndicator, { type: "fairValue", position: 50 }),
|
|
13950
13717
|
/* @__PURE__ */ jsxs(GaugePriceTag, { position: gaugePosition, children: [
|
|
13951
13718
|
/* @__PURE__ */ jsx("span", { children: "Last Price" }),
|
|
13952
|
-
/* @__PURE__ */ jsx("span", { children:
|
|
13719
|
+
/* @__PURE__ */ jsx("span", { children: formatCompact(lastPrice) })
|
|
13953
13720
|
] }),
|
|
13954
13721
|
/* @__PURE__ */ jsx(GaugeIndicator, { type: "lastPrice", position: gaugePosition })
|
|
13955
13722
|
] }),
|
|
@@ -13957,36 +13724,36 @@ function PropertyValuation({
|
|
|
13957
13724
|
/* @__PURE__ */ jsx(ValuationItem, { children: /* @__PURE__ */ jsxs(ValuationValue, { style: { color: "#4CAF50" }, children: [
|
|
13958
13725
|
/* @__PURE__ */ jsxs("span", { children: [
|
|
13959
13726
|
"< ",
|
|
13960
|
-
|
|
13727
|
+
formatCompact(undervaluedThreshold)
|
|
13961
13728
|
] }),
|
|
13962
13729
|
/* @__PURE__ */ jsxs("span", { className: "valuation-amount-span", style: { fontSize: "0.8rem", fontWeight: "normal" }, children: [
|
|
13963
13730
|
"(",
|
|
13964
|
-
|
|
13731
|
+
formatCompact(undervaluedThreshold * tokensOutstanding),
|
|
13965
13732
|
")"
|
|
13966
13733
|
] })
|
|
13967
13734
|
] }) }),
|
|
13968
13735
|
/* @__PURE__ */ jsx(ValuationItem, { children: /* @__PURE__ */ jsxs(ValuationValue, { style: { color: "var(--color-accent)" }, children: [
|
|
13969
|
-
/* @__PURE__ */ jsx("span", { children:
|
|
13736
|
+
/* @__PURE__ */ jsx("span", { children: formatCompact(fairValue) }),
|
|
13970
13737
|
/* @__PURE__ */ jsxs("span", { className: "valuation-amount-span", style: { fontSize: "0.8rem", fontWeight: "normal" }, children: [
|
|
13971
13738
|
"(",
|
|
13972
|
-
|
|
13739
|
+
formatCompact(fairValue * tokensOutstanding),
|
|
13973
13740
|
")"
|
|
13974
13741
|
] })
|
|
13975
13742
|
] }) }),
|
|
13976
13743
|
/* @__PURE__ */ jsx(ValuationItem, { children: /* @__PURE__ */ jsxs(ValuationValue, { style: { color: "#F44336" }, children: [
|
|
13977
13744
|
/* @__PURE__ */ jsxs("span", { children: [
|
|
13978
13745
|
"> ",
|
|
13979
|
-
|
|
13746
|
+
formatCompact(overvaluedThreshold)
|
|
13980
13747
|
] }),
|
|
13981
13748
|
/* @__PURE__ */ jsxs("span", { className: "valuation-amount-span", style: { fontSize: "0.8rem", fontWeight: "normal" }, children: [
|
|
13982
13749
|
"(",
|
|
13983
|
-
|
|
13750
|
+
formatCompact(overvaluedThreshold * tokensOutstanding),
|
|
13984
13751
|
")"
|
|
13985
13752
|
] })
|
|
13986
13753
|
] }) })
|
|
13987
13754
|
] })
|
|
13988
13755
|
] }),
|
|
13989
|
-
/* @__PURE__ */ jsxs(
|
|
13756
|
+
/* @__PURE__ */ jsxs("div", { children: [
|
|
13990
13757
|
/* @__PURE__ */ jsx("h3", { style: { marginBottom: "1rem", fontSize: "1.1rem", color: "#fff" }, children: "Historical Valuation" }),
|
|
13991
13758
|
/* @__PURE__ */ jsx(ChartContainer, { children: /* @__PURE__ */ jsxs(ChartBackground, { children: [
|
|
13992
13759
|
axisLabels.map((label, index) => /* @__PURE__ */ jsx(YAxisLabel, { style: { top: `${10 + index * 22}%` }, children: label }, `${label}-${index}`)),
|
|
@@ -14105,15 +13872,7 @@ function PropertyValuation({
|
|
|
14105
13872
|
] })
|
|
14106
13873
|
] }) })
|
|
14107
13874
|
] })
|
|
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
|
-
] }) })
|
|
13875
|
+
] })
|
|
14117
13876
|
] })
|
|
14118
13877
|
] }),
|
|
14119
13878
|
/* @__PURE__ */ jsxs(RecentSalesSection, { children: [
|
|
@@ -14187,6 +13946,14 @@ function formatMillions(value) {
|
|
|
14187
13946
|
}
|
|
14188
13947
|
return `$${(value / 1e6).toFixed(2)}m`;
|
|
14189
13948
|
}
|
|
13949
|
+
function formatCompact(value) {
|
|
13950
|
+
if (value == null || !Number.isFinite(value)) return "\u2014";
|
|
13951
|
+
const abs = Math.abs(value);
|
|
13952
|
+
if (abs >= 1e9) return `$${(value / 1e9).toFixed(2)}B`;
|
|
13953
|
+
if (abs >= 1e6) return `$${(value / 1e6).toFixed(2)}M`;
|
|
13954
|
+
if (abs >= 1e3) return `$${(value / 1e3).toFixed(1)}K`;
|
|
13955
|
+
return formatCurrency6(value);
|
|
13956
|
+
}
|
|
14190
13957
|
function formatBedroomLabel(bedrooms) {
|
|
14191
13958
|
if (!Number.isFinite(bedrooms)) return "\u2014";
|
|
14192
13959
|
return `${bedrooms} Bed`;
|
|
@@ -14310,12 +14077,6 @@ var GaugePriceTag = styled25.div`
|
|
|
14310
14077
|
color: var(--color-accent);
|
|
14311
14078
|
}
|
|
14312
14079
|
`;
|
|
14313
|
-
var HiddenMobileChart = styled25.div`
|
|
14314
|
-
display: none;
|
|
14315
|
-
@media (max-width: 480px) {
|
|
14316
|
-
display: block;
|
|
14317
|
-
}
|
|
14318
|
-
`;
|
|
14319
14080
|
var ValuationWrapper = styled25.div`
|
|
14320
14081
|
display: flex;
|
|
14321
14082
|
flex-direction: column;
|
|
@@ -14367,9 +14128,10 @@ var PricingModelCard = styled25.div`
|
|
|
14367
14128
|
var PricingModelHeader = styled25.div`
|
|
14368
14129
|
display: flex;
|
|
14369
14130
|
justify-content: space-between;
|
|
14370
|
-
align-items:
|
|
14131
|
+
align-items: flex-start;
|
|
14371
14132
|
margin-bottom: 1.5rem;
|
|
14372
14133
|
gap: 1rem;
|
|
14134
|
+
flex-wrap: wrap;
|
|
14373
14135
|
|
|
14374
14136
|
.valuation-info {
|
|
14375
14137
|
display: flex;
|
|
@@ -14377,6 +14139,7 @@ var PricingModelHeader = styled25.div`
|
|
|
14377
14139
|
gap: 0.25rem;
|
|
14378
14140
|
font-size: 0.85rem;
|
|
14379
14141
|
color: rgba(255, 255, 255, 0.75);
|
|
14142
|
+
flex-shrink: 0;
|
|
14380
14143
|
}
|
|
14381
14144
|
`;
|
|
14382
14145
|
var PricingModelTitle = styled25.h3`
|
|
@@ -14443,15 +14206,31 @@ var ValuationDetails = styled25.div`
|
|
|
14443
14206
|
display: flex;
|
|
14444
14207
|
justify-content: space-between;
|
|
14445
14208
|
margin-top: 1rem;
|
|
14209
|
+
gap: 0.25rem;
|
|
14446
14210
|
`;
|
|
14447
14211
|
var ValuationItem = styled25.div`
|
|
14448
14212
|
display: flex;
|
|
14449
14213
|
flex-direction: column;
|
|
14214
|
+
min-width: 0;
|
|
14215
|
+
overflow: hidden;
|
|
14450
14216
|
`;
|
|
14451
14217
|
var ValuationValue = styled25.div`
|
|
14452
14218
|
font-size: 1rem;
|
|
14453
14219
|
font-weight: 600;
|
|
14454
14220
|
color: #fff;
|
|
14221
|
+
display: flex;
|
|
14222
|
+
flex-direction: column;
|
|
14223
|
+
gap: 2px;
|
|
14224
|
+
overflow-wrap: break-word;
|
|
14225
|
+
word-break: break-word;
|
|
14226
|
+
|
|
14227
|
+
@media (max-width: 480px) {
|
|
14228
|
+
font-size: 0.72rem;
|
|
14229
|
+
|
|
14230
|
+
.valuation-amount-span {
|
|
14231
|
+
display: none;
|
|
14232
|
+
}
|
|
14233
|
+
}
|
|
14455
14234
|
`;
|
|
14456
14235
|
var ChartContainer = styled25.div`
|
|
14457
14236
|
width: 100%;
|