@loafmarkets/ui 0.1.327 → 0.1.329
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 +16 -4
- package/dist/index.d.ts +16 -4
- package/dist/index.js +191 -500
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +191 -501
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -2832,6 +2832,7 @@ var PropertyNewsUpdates = React5.forwardRef(
|
|
|
2832
2832
|
viewAllHref,
|
|
2833
2833
|
viewAllLabel = "View All News",
|
|
2834
2834
|
connectionStatus = "live",
|
|
2835
|
+
disablePagination = false,
|
|
2835
2836
|
...props
|
|
2836
2837
|
}, ref) => {
|
|
2837
2838
|
const isPurchaseVariant = variant === "purchases";
|
|
@@ -2865,7 +2866,7 @@ var PropertyNewsUpdates = React5.forwardRef(
|
|
|
2865
2866
|
() => Math.max(1, Math.ceil(homeFilteredItems.length / ITEMS_PER_PAGE)),
|
|
2866
2867
|
[homeFilteredItems.length]
|
|
2867
2868
|
);
|
|
2868
|
-
const homePaginatedItems = homeFilteredItems.slice(homePage * ITEMS_PER_PAGE, (homePage + 1) * ITEMS_PER_PAGE);
|
|
2869
|
+
const homePaginatedItems = disablePagination ? homeFilteredItems : homeFilteredItems.slice(homePage * ITEMS_PER_PAGE, (homePage + 1) * ITEMS_PER_PAGE);
|
|
2869
2870
|
return /* @__PURE__ */ jsxs(
|
|
2870
2871
|
"div",
|
|
2871
2872
|
{
|
|
@@ -2920,7 +2921,7 @@ var PropertyNewsUpdates = React5.forwardRef(
|
|
|
2920
2921
|
/* @__PURE__ */ jsx(
|
|
2921
2922
|
"div",
|
|
2922
2923
|
{
|
|
2923
|
-
className: cn("flex flex-1 flex-col overflow-hidden", isHomeVariant ? "mt-2 gap-0" : "mt-4 gap-3"),
|
|
2924
|
+
className: cn("flex flex-1 flex-col overflow-y-auto overflow-x-hidden", isHomeVariant ? "mt-2 gap-0" : "mt-4 gap-3"),
|
|
2924
2925
|
style: !isPurchaseVariant && !isHomeVariant ? { minHeight: `${ITEMS_PER_PAGE * 86}px` } : void 0,
|
|
2925
2926
|
children: isPurchaseVariant ? purchaseItems.length > 0 ? purchaseItems.slice(0, 7).map((purchase, index) => {
|
|
2926
2927
|
const maxAmount = 6e4;
|
|
@@ -3064,7 +3065,7 @@ var PropertyNewsUpdates = React5.forwardRef(
|
|
|
3064
3065
|
] })
|
|
3065
3066
|
}
|
|
3066
3067
|
),
|
|
3067
|
-
isHomeVariant && homeTotalPages > 1 && /* @__PURE__ */ jsxs("div", { className: "mt-3 flex items-center justify-between text-xs text-white/60", children: [
|
|
3068
|
+
isHomeVariant && !disablePagination && homeTotalPages > 1 && /* @__PURE__ */ jsxs("div", { className: "mt-3 flex items-center justify-between text-xs text-white/60", children: [
|
|
3068
3069
|
/* @__PURE__ */ jsx(
|
|
3069
3070
|
"button",
|
|
3070
3071
|
{
|
|
@@ -3128,6 +3129,46 @@ var PropertyNewsUpdates = React5.forwardRef(
|
|
|
3128
3129
|
}
|
|
3129
3130
|
);
|
|
3130
3131
|
PropertyNewsUpdates.displayName = "PropertyNewsUpdates";
|
|
3132
|
+
function PropertyMediaRow({
|
|
3133
|
+
newsItems,
|
|
3134
|
+
newsConnectionStatus,
|
|
3135
|
+
videoSrc,
|
|
3136
|
+
videoTitle,
|
|
3137
|
+
className
|
|
3138
|
+
}) {
|
|
3139
|
+
return /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-4 lg:flex-row lg:items-stretch lg:gap-6 lg:h-[700px]", className), children: [
|
|
3140
|
+
/* @__PURE__ */ jsx("div", { className: "lg:hidden h-[320px]", children: /* @__PURE__ */ jsx(PropertyTour, { title: videoTitle, src: videoSrc, className: "h-full w-full !max-w-none" }) }),
|
|
3141
|
+
/* @__PURE__ */ jsx(
|
|
3142
|
+
"div",
|
|
3143
|
+
{
|
|
3144
|
+
className: "overflow-auto w-full max-h-[480px] lg:max-h-none lg:flex-[0_1_520px] lg:min-w-[380px] lg:max-w-[520px] lg:h-full border border-white/10 rounded-[12px]",
|
|
3145
|
+
style: { background: "#111111" },
|
|
3146
|
+
children: /* @__PURE__ */ jsx(
|
|
3147
|
+
PropertyNewsUpdates,
|
|
3148
|
+
{
|
|
3149
|
+
items: newsItems,
|
|
3150
|
+
variant: "home",
|
|
3151
|
+
heading: "Property News & Headlines",
|
|
3152
|
+
connectionStatus: newsConnectionStatus,
|
|
3153
|
+
highlightFirst: false,
|
|
3154
|
+
disablePagination: true,
|
|
3155
|
+
style: {
|
|
3156
|
+
maxWidth: "none",
|
|
3157
|
+
background: "transparent",
|
|
3158
|
+
borderRadius: 0,
|
|
3159
|
+
padding: "1.25rem 1.5rem",
|
|
3160
|
+
boxShadow: "none",
|
|
3161
|
+
border: "none",
|
|
3162
|
+
height: "100%",
|
|
3163
|
+
overflow: "visible"
|
|
3164
|
+
}
|
|
3165
|
+
}
|
|
3166
|
+
)
|
|
3167
|
+
}
|
|
3168
|
+
),
|
|
3169
|
+
/* @__PURE__ */ jsx("div", { className: "hidden lg:flex lg:flex-1 lg:min-w-0 lg:h-full", children: /* @__PURE__ */ jsx(PropertyTour, { title: videoTitle, src: videoSrc, className: "h-full w-full !max-w-none" }) })
|
|
3170
|
+
] });
|
|
3171
|
+
}
|
|
3131
3172
|
var defaultFormat = (value) => new Intl.NumberFormat("en-US", {
|
|
3132
3173
|
style: "currency",
|
|
3133
3174
|
currency: "USD",
|
|
@@ -8518,14 +8559,6 @@ var DEFAULT_FEATURES = [
|
|
|
8518
8559
|
{ icon: /* @__PURE__ */ jsx(MdYard, { size: 18 }), label: "Garden" },
|
|
8519
8560
|
{ icon: /* @__PURE__ */ jsx(MdFitnessCenter, { size: 18 }), label: "Gym" }
|
|
8520
8561
|
];
|
|
8521
|
-
var DEFAULT_PROPERTY_INFO = [
|
|
8522
|
-
{ label: "Property Type", value: "N/A" },
|
|
8523
|
-
{ label: "Built", value: "N/A" },
|
|
8524
|
-
{ label: "Ownership", value: "N/A" },
|
|
8525
|
-
{ label: "Zoning", value: "N/A" },
|
|
8526
|
-
{ label: "Levels", value: "N/A" },
|
|
8527
|
-
{ label: "Status", value: "N/A" }
|
|
8528
|
-
];
|
|
8529
8562
|
var DEFAULT_DESCRIPTION = "Property description not available.";
|
|
8530
8563
|
function truncateAddress(addr) {
|
|
8531
8564
|
if (addr.length <= 12) return addr;
|
|
@@ -8566,7 +8599,7 @@ function generateDividendHistory(valuation, totalTokens, tokenPrice, realPriceHi
|
|
|
8566
8599
|
return { records, priceHistory };
|
|
8567
8600
|
}
|
|
8568
8601
|
function PropertyOverview({
|
|
8569
|
-
propertyName,
|
|
8602
|
+
propertyName: _propertyName,
|
|
8570
8603
|
location,
|
|
8571
8604
|
midPrice,
|
|
8572
8605
|
onTradeClick,
|
|
@@ -8580,7 +8613,7 @@ function PropertyOverview({
|
|
|
8580
8613
|
landSizeSqm: landProp,
|
|
8581
8614
|
buildingSizeSqm: buildingProp,
|
|
8582
8615
|
features: featuresProp,
|
|
8583
|
-
propertyInfo:
|
|
8616
|
+
propertyInfo: _propertyInfoProp,
|
|
8584
8617
|
overviewData,
|
|
8585
8618
|
bedrooms,
|
|
8586
8619
|
bathrooms,
|
|
@@ -8618,25 +8651,11 @@ function PropertyOverview({
|
|
|
8618
8651
|
}
|
|
8619
8652
|
return f;
|
|
8620
8653
|
})();
|
|
8621
|
-
propertyInfoProp ?? (() => {
|
|
8622
|
-
const info = [...DEFAULT_PROPERTY_INFO];
|
|
8623
|
-
if (propertyTypeLabel && !overviewData) info[0] = { label: "Property Type", value: propertyTypeLabel };
|
|
8624
|
-
if (overviewData) {
|
|
8625
|
-
info[0] = { label: "Property Type", value: overviewData.propertyType ?? propertyTypeLabel ?? "N/A" };
|
|
8626
|
-
info[1] = { label: "Built", value: String(overviewData.yearBuilt) };
|
|
8627
|
-
info[2] = { label: "Ownership", value: overviewData.ownership };
|
|
8628
|
-
info[3] = { label: "Zoning", value: overviewData.zoning };
|
|
8629
|
-
info[4] = { label: "Levels", value: String(overviewData.levels) };
|
|
8630
|
-
info[5] = { label: "DA Status", value: overviewData.daStatus, status: overviewData.daStatus?.toLowerCase() === "approved" ? "active" : "progress" };
|
|
8631
|
-
}
|
|
8632
|
-
return info;
|
|
8633
|
-
})();
|
|
8634
8654
|
const resolvedTokensIssued = tokensIssued ?? overviewData?.tokensIssued ?? null;
|
|
8635
8655
|
const resolvedValuation = overviewData?.offeringValuation ?? (midPrice && resolvedTokensIssued ? midPrice * resolvedTokensIssued : null);
|
|
8636
8656
|
const tokenPriceValue = midPrice > 0 ? midPrice : null;
|
|
8637
8657
|
const weeklyRent = overviewData?.weeklyRent ?? 0;
|
|
8638
8658
|
const annualRent = weeklyRent * 52;
|
|
8639
|
-
resolvedValuation && annualRent > 0 ? (annualRent / resolvedValuation * 100).toFixed(2) : null;
|
|
8640
8659
|
const monthlyCoupon = annualRent / 12;
|
|
8641
8660
|
const tokenMarketCap = tokenPriceValue && resolvedTokensIssued ? tokenPriceValue * resolvedTokensIssued : null;
|
|
8642
8661
|
const currentDividendYield = tokenMarketCap && monthlyCoupon > 0 ? (monthlyCoupon * 12 / tokenMarketCap * 100).toFixed(2) : null;
|
|
@@ -8659,12 +8678,6 @@ function PropertyOverview({
|
|
|
8659
8678
|
{ label: "Location", value: location || "\u2014" }
|
|
8660
8679
|
];
|
|
8661
8680
|
const vol24hDollar = volume24h != null && tokenPriceValue ? volume24h * tokenPriceValue : null;
|
|
8662
|
-
(() => {
|
|
8663
|
-
if (!tokenMarketCap || tokenMarketCap <= 0 || vol24hDollar == null) return null;
|
|
8664
|
-
const turnover = vol24hDollar / (tokenMarketCap / 2);
|
|
8665
|
-
const holdPct = Math.max(0, Math.min(100, (1 - turnover) * 100));
|
|
8666
|
-
return { holdPct, tradePct: +(100 - holdPct).toFixed(1) };
|
|
8667
|
-
})();
|
|
8668
8681
|
const fmtDollar = (v) => {
|
|
8669
8682
|
if (v >= 1e6) return `$${(v / 1e6).toFixed(2)}M`;
|
|
8670
8683
|
if (v >= 1e3) return `$${Math.round(v).toLocaleString()}`;
|
|
@@ -9424,20 +9437,6 @@ var AssetBentoNarratives = styled9.div`
|
|
|
9424
9437
|
margin-top: 0.75rem;
|
|
9425
9438
|
@media (max-width: 768px) { grid-template-columns: 1fr; }
|
|
9426
9439
|
`;
|
|
9427
|
-
styled9.div`
|
|
9428
|
-
width: 100vw;
|
|
9429
|
-
position: relative;
|
|
9430
|
-
left: 50%;
|
|
9431
|
-
margin-left: -50vw;
|
|
9432
|
-
display: flex;
|
|
9433
|
-
justify-content: center;
|
|
9434
|
-
> * {
|
|
9435
|
-
width: 100%;
|
|
9436
|
-
max-width: 1800px;
|
|
9437
|
-
padding: 0 clamp(1rem, 2vw, 2rem);
|
|
9438
|
-
box-sizing: border-box;
|
|
9439
|
-
}
|
|
9440
|
-
`;
|
|
9441
9440
|
var Section = styled9.div`
|
|
9442
9441
|
background: #111;
|
|
9443
9442
|
border-radius: 12px;
|
|
@@ -9554,45 +9553,6 @@ var TokenDetailValue = styled9.span`
|
|
|
9554
9553
|
font-weight: 500;
|
|
9555
9554
|
font-family: ${(p) => p.$mono ? "'SF Mono', 'Fira Code', monospace" : "inherit"};
|
|
9556
9555
|
`;
|
|
9557
|
-
styled9.div`
|
|
9558
|
-
background: rgba(255,255,255,0.025);
|
|
9559
|
-
border: 1px solid rgba(255,255,255,0.06);
|
|
9560
|
-
border-radius: 10px;
|
|
9561
|
-
padding: 1rem 1.25rem;
|
|
9562
|
-
`;
|
|
9563
|
-
styled9.div`
|
|
9564
|
-
font-size: 0.6rem;
|
|
9565
|
-
color: rgba(255,255,255,0.3);
|
|
9566
|
-
text-transform: uppercase;
|
|
9567
|
-
letter-spacing: 0.1em;
|
|
9568
|
-
font-weight: 500;
|
|
9569
|
-
margin-bottom: 0.85rem;
|
|
9570
|
-
`;
|
|
9571
|
-
styled9.div`
|
|
9572
|
-
display: flex;
|
|
9573
|
-
gap: 0.5rem;
|
|
9574
|
-
justify-content: space-between;
|
|
9575
|
-
`;
|
|
9576
|
-
styled9.div`
|
|
9577
|
-
display: flex;
|
|
9578
|
-
flex-direction: column;
|
|
9579
|
-
align-items: center;
|
|
9580
|
-
gap: 0.4rem;
|
|
9581
|
-
flex: 1;
|
|
9582
|
-
min-width: 0;
|
|
9583
|
-
`;
|
|
9584
|
-
styled9.div`
|
|
9585
|
-
display: flex;
|
|
9586
|
-
align-items: center;
|
|
9587
|
-
justify-content: center;
|
|
9588
|
-
height: 44px;
|
|
9589
|
-
`;
|
|
9590
|
-
styled9.span`
|
|
9591
|
-
font-size: 0.62rem;
|
|
9592
|
-
color: rgba(255,255,255,0.35);
|
|
9593
|
-
font-weight: 400;
|
|
9594
|
-
text-align: center;
|
|
9595
|
-
`;
|
|
9596
9556
|
var CopyBtn = styled9.button`
|
|
9597
9557
|
background: none;
|
|
9598
9558
|
border: none;
|
|
@@ -9698,12 +9658,6 @@ var StatsTab = styled9.button`
|
|
|
9698
9658
|
var StatsTabContent = styled9.div`
|
|
9699
9659
|
padding: 0.5rem 1.25rem 1.25rem;
|
|
9700
9660
|
`;
|
|
9701
|
-
styled9.div`
|
|
9702
|
-
display: grid;
|
|
9703
|
-
grid-template-columns: 340px 340px;
|
|
9704
|
-
gap: 1rem;
|
|
9705
|
-
@media (max-width: 768px) { grid-template-columns: 1fr; }
|
|
9706
|
-
`;
|
|
9707
9661
|
var StatsColumn = styled9.div`
|
|
9708
9662
|
background: #111111;
|
|
9709
9663
|
border: 1px solid rgba(255,255,255,0.1);
|
|
@@ -9740,26 +9694,12 @@ var StatLabel = styled9.span`
|
|
|
9740
9694
|
align-items: center;
|
|
9741
9695
|
gap: 0.5rem;
|
|
9742
9696
|
`;
|
|
9743
|
-
styled9.span`
|
|
9744
|
-
font-size: 0.6rem;
|
|
9745
|
-
color: #4CAF50;
|
|
9746
|
-
display: inline-flex;
|
|
9747
|
-
align-items: center;
|
|
9748
|
-
gap: 3px;
|
|
9749
|
-
`;
|
|
9750
9697
|
var StatValue = styled9.span`
|
|
9751
9698
|
font-size: 0.88rem;
|
|
9752
9699
|
font-weight: 500;
|
|
9753
9700
|
color: ${(p) => p.$gold ? "#D4AF37" : "#fff"};
|
|
9754
9701
|
font-variant-numeric: tabular-nums;
|
|
9755
9702
|
`;
|
|
9756
|
-
styled9.div`
|
|
9757
|
-
display: grid;
|
|
9758
|
-
grid-template-columns: repeat(3, 1fr);
|
|
9759
|
-
gap: 0.75rem;
|
|
9760
|
-
margin-bottom: 1.25rem;
|
|
9761
|
-
@media (max-width: 768px) { grid-template-columns: 1fr; }
|
|
9762
|
-
`;
|
|
9763
9703
|
var NarrativeCard = styled9.div`
|
|
9764
9704
|
background: #111111;
|
|
9765
9705
|
border: 1px solid rgba(255,255,255,0.1);
|
|
@@ -10040,65 +9980,6 @@ var CompAssetTooltipRow = styled9.div`
|
|
|
10040
9980
|
font-variant-numeric: tabular-nums;
|
|
10041
9981
|
}
|
|
10042
9982
|
`;
|
|
10043
|
-
styled9.div`
|
|
10044
|
-
font-size: 0.65rem;
|
|
10045
|
-
color: rgba(255,255,255,0.35);
|
|
10046
|
-
text-transform: uppercase;
|
|
10047
|
-
letter-spacing: 0.08em;
|
|
10048
|
-
font-weight: 500;
|
|
10049
|
-
margin-top: 1rem;
|
|
10050
|
-
padding-top: 0.75rem;
|
|
10051
|
-
padding-bottom: 0.35rem;
|
|
10052
|
-
border-top: 1px solid rgba(255,255,255,0.04);
|
|
10053
|
-
`;
|
|
10054
|
-
styled9.div`
|
|
10055
|
-
font-size: 0.72rem;
|
|
10056
|
-
color: rgba(255,255,255,0.3);
|
|
10057
|
-
line-height: 1.5;
|
|
10058
|
-
margin-bottom: 0.6rem;
|
|
10059
|
-
`;
|
|
10060
|
-
styled9.div`
|
|
10061
|
-
display: flex;
|
|
10062
|
-
flex-direction: column;
|
|
10063
|
-
`;
|
|
10064
|
-
styled9.div`
|
|
10065
|
-
display: grid;
|
|
10066
|
-
grid-template-columns: 1fr 52px auto auto;
|
|
10067
|
-
align-items: center;
|
|
10068
|
-
gap: 0.4rem;
|
|
10069
|
-
padding: 0.45rem 0;
|
|
10070
|
-
border-bottom: ${(p) => p.$last ? "none" : "1px solid rgba(255,255,255,0.03)"};
|
|
10071
|
-
${(p) => p.$active ? `
|
|
10072
|
-
background: rgba(212,175,55,0.04);
|
|
10073
|
-
margin: 0 -0.5rem;
|
|
10074
|
-
padding-left: 0.5rem;
|
|
10075
|
-
padding-right: 0.5rem;
|
|
10076
|
-
border-radius: 6px;
|
|
10077
|
-
` : ""}
|
|
10078
|
-
`;
|
|
10079
|
-
styled9.span`
|
|
10080
|
-
font-size: 0.8rem;
|
|
10081
|
-
font-weight: 500;
|
|
10082
|
-
color: rgba(255,255,255,0.7);
|
|
10083
|
-
`;
|
|
10084
|
-
styled9.span`
|
|
10085
|
-
font-size: 0.72rem;
|
|
10086
|
-
color: rgba(255,255,255,0.3);
|
|
10087
|
-
text-align: center;
|
|
10088
|
-
font-variant-numeric: tabular-nums;
|
|
10089
|
-
`;
|
|
10090
|
-
styled9.span`
|
|
10091
|
-
font-size: 0.65rem;
|
|
10092
|
-
color: rgba(255,255,255,0.2);
|
|
10093
|
-
text-align: right;
|
|
10094
|
-
white-space: nowrap;
|
|
10095
|
-
`;
|
|
10096
|
-
styled9.span`
|
|
10097
|
-
font-size: 0.68rem;
|
|
10098
|
-
font-weight: 500;
|
|
10099
|
-
text-align: right;
|
|
10100
|
-
color: ${(p) => p.$status === "listed" ? "#D4AF37" : "rgba(255,255,255,0.25)"};
|
|
10101
|
-
`;
|
|
10102
9983
|
var FeaturesPanel = styled9.div`
|
|
10103
9984
|
display: flex;
|
|
10104
9985
|
flex-wrap: wrap;
|
|
@@ -10109,14 +9990,6 @@ var FeaturesPanel = styled9.div`
|
|
|
10109
9990
|
padding: 1rem 1.25rem;
|
|
10110
9991
|
justify-content: center;
|
|
10111
9992
|
`;
|
|
10112
|
-
styled9.div`
|
|
10113
|
-
display: flex;
|
|
10114
|
-
flex-wrap: wrap;
|
|
10115
|
-
gap: 0.5rem 1.25rem;
|
|
10116
|
-
padding-top: 0.75rem;
|
|
10117
|
-
margin-top: 0.25rem;
|
|
10118
|
-
border-top: 1px solid rgba(255,255,255,0.04);
|
|
10119
|
-
`;
|
|
10120
9993
|
var AssetFeatureItem = styled9.div`
|
|
10121
9994
|
display: flex;
|
|
10122
9995
|
align-items: center;
|
|
@@ -10213,101 +10086,6 @@ var SecurityDocLink = styled9.a`
|
|
|
10213
10086
|
color: rgba(212,175,55,0.9);
|
|
10214
10087
|
}
|
|
10215
10088
|
`;
|
|
10216
|
-
styled9.div`
|
|
10217
|
-
display: flex;
|
|
10218
|
-
flex-direction: column;
|
|
10219
|
-
gap: 6px;
|
|
10220
|
-
padding: 0.75rem 0 0;
|
|
10221
|
-
margin-top: 0.5rem;
|
|
10222
|
-
border-top: 1px solid rgba(255,255,255,0.04);
|
|
10223
|
-
`;
|
|
10224
|
-
styled9.div`
|
|
10225
|
-
display: flex;
|
|
10226
|
-
align-items: center;
|
|
10227
|
-
gap: 5px;
|
|
10228
|
-
`;
|
|
10229
|
-
styled9.span`
|
|
10230
|
-
font-size: 0.65rem;
|
|
10231
|
-
font-weight: 600;
|
|
10232
|
-
text-transform: uppercase;
|
|
10233
|
-
letter-spacing: 0.06em;
|
|
10234
|
-
color: rgba(255,255,255,0.4);
|
|
10235
|
-
`;
|
|
10236
|
-
styled9.span`
|
|
10237
|
-
position: relative;
|
|
10238
|
-
display: inline-flex;
|
|
10239
|
-
align-items: center;
|
|
10240
|
-
justify-content: center;
|
|
10241
|
-
width: 13px;
|
|
10242
|
-
height: 13px;
|
|
10243
|
-
border-radius: 50%;
|
|
10244
|
-
border: 1px solid rgba(255,255,255,0.15);
|
|
10245
|
-
font-size: 0.5rem;
|
|
10246
|
-
font-weight: 700;
|
|
10247
|
-
color: rgba(255,255,255,0.3);
|
|
10248
|
-
cursor: help;
|
|
10249
|
-
flex-shrink: 0;
|
|
10250
|
-
|
|
10251
|
-
&::after {
|
|
10252
|
-
content: attr(data-tip);
|
|
10253
|
-
position: absolute;
|
|
10254
|
-
bottom: calc(100% + 6px);
|
|
10255
|
-
left: 0;
|
|
10256
|
-
width: max-content;
|
|
10257
|
-
max-width: 260px;
|
|
10258
|
-
padding: 8px 12px;
|
|
10259
|
-
border-radius: 6px;
|
|
10260
|
-
background: #1a1a1e;
|
|
10261
|
-
border: 1px solid rgba(255,255,255,0.1);
|
|
10262
|
-
color: rgba(255,255,255,0.7);
|
|
10263
|
-
font-size: 0.7rem;
|
|
10264
|
-
font-weight: 400;
|
|
10265
|
-
letter-spacing: 0;
|
|
10266
|
-
text-transform: none;
|
|
10267
|
-
line-height: 1.45;
|
|
10268
|
-
white-space: normal;
|
|
10269
|
-
pointer-events: none;
|
|
10270
|
-
opacity: 0;
|
|
10271
|
-
transition: opacity 0.15s;
|
|
10272
|
-
z-index: 10;
|
|
10273
|
-
}
|
|
10274
|
-
|
|
10275
|
-
&:hover::after {
|
|
10276
|
-
opacity: 1;
|
|
10277
|
-
}
|
|
10278
|
-
`;
|
|
10279
|
-
styled9.div`
|
|
10280
|
-
display: flex;
|
|
10281
|
-
align-items: center;
|
|
10282
|
-
justify-content: space-between;
|
|
10283
|
-
`;
|
|
10284
|
-
styled9.span`
|
|
10285
|
-
font-size: 0.7rem;
|
|
10286
|
-
font-weight: 600;
|
|
10287
|
-
text-transform: uppercase;
|
|
10288
|
-
letter-spacing: 0.05em;
|
|
10289
|
-
color: ${(p) => p.$side === "trade" ? "rgba(246, 70, 93, 0.6)" : "rgba(14, 203, 129, 0.6)"};
|
|
10290
|
-
`;
|
|
10291
|
-
styled9.span`
|
|
10292
|
-
font-size: 0.75rem;
|
|
10293
|
-
font-weight: 600;
|
|
10294
|
-
font-variant-numeric: tabular-nums;
|
|
10295
|
-
color: ${(p) => p.$side === "trade" ? "rgba(246, 70, 93, 0.7)" : "rgba(14, 203, 129, 0.7)"};
|
|
10296
|
-
`;
|
|
10297
|
-
styled9.div`
|
|
10298
|
-
height: 6px;
|
|
10299
|
-
border-radius: 3px;
|
|
10300
|
-
background: rgba(246, 70, 93, 0.15);
|
|
10301
|
-
overflow: hidden;
|
|
10302
|
-
position: relative;
|
|
10303
|
-
`;
|
|
10304
|
-
styled9.div`
|
|
10305
|
-
height: 100%;
|
|
10306
|
-
width: ${(p) => p.$pct}%;
|
|
10307
|
-
border-radius: 3px;
|
|
10308
|
-
background: rgba(14, 203, 129, 0.35);
|
|
10309
|
-
transition: width 0.6s ease;
|
|
10310
|
-
`;
|
|
10311
10089
|
var DividendHistoryBtn = styled9.button`
|
|
10312
10090
|
margin-top: 0.75rem;
|
|
10313
10091
|
padding: 0.5rem 0;
|
|
@@ -11711,6 +11489,10 @@ var AssetName = styled9.div`
|
|
|
11711
11489
|
svg { margin-left: 0.75rem; transition: transform 0.3s cubic-bezier(0.4,0,0.2,1); opacity: 0.7; }
|
|
11712
11490
|
&:hover svg { opacity: 1; }
|
|
11713
11491
|
|
|
11492
|
+
@media (min-width: 769px) and (max-width: 1200px) {
|
|
11493
|
+
font-size: clamp(0.9rem, 0.5vw + 0.55rem, 1.15rem);
|
|
11494
|
+
}
|
|
11495
|
+
|
|
11714
11496
|
@media (max-width: 768px) {
|
|
11715
11497
|
font-size: 1rem;
|
|
11716
11498
|
}
|
|
@@ -11840,7 +11622,7 @@ var IPOOptionThumb = styled9.img`
|
|
|
11840
11622
|
var IPOOptionName = styled9.div`
|
|
11841
11623
|
font-weight: 500;
|
|
11842
11624
|
font-size: 0.82rem;
|
|
11843
|
-
color: ${
|
|
11625
|
+
color: ${"#ebebeb"};
|
|
11844
11626
|
line-height: 1.3;
|
|
11845
11627
|
`;
|
|
11846
11628
|
var IPOOptionLocation = styled9.div`
|
|
@@ -12871,9 +12653,9 @@ var Panel = styled9.div`
|
|
|
12871
12653
|
height: 100%;
|
|
12872
12654
|
display: flex;
|
|
12873
12655
|
flex-direction: column;
|
|
12874
|
-
min-width:
|
|
12875
|
-
max-width:
|
|
12876
|
-
width:
|
|
12656
|
+
min-width: 380px;
|
|
12657
|
+
max-width: 460px;
|
|
12658
|
+
width: 460px;
|
|
12877
12659
|
overflow: hidden;
|
|
12878
12660
|
@media (max-width: 1024px) {
|
|
12879
12661
|
min-width: 0;
|
|
@@ -13717,7 +13499,7 @@ var STATUS_COLOR2 = {
|
|
|
13717
13499
|
CLOSED: "#848e9c",
|
|
13718
13500
|
CANCELLED: "#f6465d"
|
|
13719
13501
|
};
|
|
13720
|
-
var ACTIVITY_PAGE_SIZE_DEFAULT =
|
|
13502
|
+
var ACTIVITY_PAGE_SIZE_DEFAULT = 8;
|
|
13721
13503
|
var formatCurrency4 = (value, opts) => {
|
|
13722
13504
|
const min = opts?.minimumFractionDigits ?? 2;
|
|
13723
13505
|
const max = opts?.maximumFractionDigits ?? 2;
|
|
@@ -13809,12 +13591,13 @@ function PortfolioActivityPanel({
|
|
|
13809
13591
|
compactPositions = false,
|
|
13810
13592
|
defaultTab,
|
|
13811
13593
|
pageSize = ACTIVITY_PAGE_SIZE_DEFAULT,
|
|
13812
|
-
blockExplorerBaseUrl = "https://sepolia.basescan.org/tx",
|
|
13594
|
+
blockExplorerBaseUrl: _blockExplorerBaseUrl = "https://sepolia.basescan.org/tx",
|
|
13813
13595
|
className,
|
|
13814
13596
|
style
|
|
13815
13597
|
}) {
|
|
13816
13598
|
const resolvedDefaultTab = defaultTab ?? (showPositionsTab ? "positions" : showSubscriptionsTab ? "subscriptions" : "orders");
|
|
13817
13599
|
const [activeTab, setActiveTab] = useState(resolvedDefaultTab);
|
|
13600
|
+
const [currentPage, setCurrentPage] = useState(0);
|
|
13818
13601
|
const [pendingCancelOrderId, setPendingCancelOrderId] = useState(null);
|
|
13819
13602
|
const [cancelAllConfirmOpen, setCancelAllConfirmOpen] = useState(false);
|
|
13820
13603
|
const [cancellingAll, setCancellingAll] = useState(false);
|
|
@@ -13917,24 +13700,6 @@ function PortfolioActivityPanel({
|
|
|
13917
13700
|
}));
|
|
13918
13701
|
return [...orderHistory, ...mapped].sort((a, b) => b.createdAt - a.createdAt);
|
|
13919
13702
|
}, [showSubscriptionsTab, offeringOrders, orderHistory]);
|
|
13920
|
-
useMemo(() => {
|
|
13921
|
-
switch (activeTab) {
|
|
13922
|
-
case "positions":
|
|
13923
|
-
return positions.length;
|
|
13924
|
-
case "subscriptions":
|
|
13925
|
-
return offeringOrders.length;
|
|
13926
|
-
case "open-orders":
|
|
13927
|
-
return openOrders.length;
|
|
13928
|
-
case "orders":
|
|
13929
|
-
return mergedOrderHistory.length;
|
|
13930
|
-
case "trades":
|
|
13931
|
-
return tradeHistory.length;
|
|
13932
|
-
case "transfers":
|
|
13933
|
-
return transfers.length;
|
|
13934
|
-
default:
|
|
13935
|
-
return 0;
|
|
13936
|
-
}
|
|
13937
|
-
}, [activeTab, positions.length, offeringOrders.length, openOrders.length, mergedOrderHistory.length, tradeHistory.length, transfers.length]);
|
|
13938
13703
|
const positionsCount = positions.length;
|
|
13939
13704
|
const openOrdersCount = useMemo(
|
|
13940
13705
|
() => openOrders.filter((o) => o.status === "OPEN" || o.status === "PARTIALLY_FILLED").length,
|
|
@@ -13953,7 +13718,30 @@ function PortfolioActivityPanel({
|
|
|
13953
13718
|
);
|
|
13954
13719
|
const handleTabChange = (tab) => {
|
|
13955
13720
|
setActiveTab(tab);
|
|
13721
|
+
setCurrentPage(0);
|
|
13956
13722
|
};
|
|
13723
|
+
const activeDataLength = (() => {
|
|
13724
|
+
switch (activeTab) {
|
|
13725
|
+
case "subscriptions":
|
|
13726
|
+
return offeringOrders.length;
|
|
13727
|
+
case "open-orders":
|
|
13728
|
+
return openOrders.length;
|
|
13729
|
+
case "orders":
|
|
13730
|
+
return mergedOrderHistory.length;
|
|
13731
|
+
case "trades":
|
|
13732
|
+
return tradeHistory.length;
|
|
13733
|
+
case "transfers":
|
|
13734
|
+
return transfers.length;
|
|
13735
|
+
default:
|
|
13736
|
+
return 0;
|
|
13737
|
+
}
|
|
13738
|
+
})();
|
|
13739
|
+
const totalPages = Math.ceil(activeDataLength / pageSize);
|
|
13740
|
+
const pagedOfferingOrders = offeringOrders.slice(currentPage * pageSize, (currentPage + 1) * pageSize);
|
|
13741
|
+
const pagedOpenOrders = openOrders.slice(currentPage * pageSize, (currentPage + 1) * pageSize);
|
|
13742
|
+
const pagedOrderHistory = mergedOrderHistory.slice(currentPage * pageSize, (currentPage + 1) * pageSize);
|
|
13743
|
+
const pagedTradeHistory = tradeHistory.slice(currentPage * pageSize, (currentPage + 1) * pageSize);
|
|
13744
|
+
const pagedTransfers = transfers.slice(currentPage * pageSize, (currentPage + 1) * pageSize);
|
|
13957
13745
|
return /* @__PURE__ */ jsxs(Container2, { className, style, children: [
|
|
13958
13746
|
/* @__PURE__ */ jsx(PanelTitle, { children: "Activity" }),
|
|
13959
13747
|
/* @__PURE__ */ jsxs(TabContainer, { children: [
|
|
@@ -14182,7 +13970,7 @@ function PortfolioActivityPanel({
|
|
|
14182
13970
|
/* @__PURE__ */ jsx(GridHeaderCell, { children: "Status" }),
|
|
14183
13971
|
/* @__PURE__ */ jsx(GridHeaderCell, { children: "Date" })
|
|
14184
13972
|
] }),
|
|
14185
|
-
|
|
13973
|
+
pagedOfferingOrders.map((order) => {
|
|
14186
13974
|
const meta = getOrderStatusMeta(order.status);
|
|
14187
13975
|
return /* @__PURE__ */ jsxs(GridRow, { $columns: "1.2fr 0.8fr 1fr 1fr 0.8fr 1fr", children: [
|
|
14188
13976
|
/* @__PURE__ */ jsx(GridCell, { children: /* @__PURE__ */ jsx(CellText, { $primary: true, children: order.tokenName }) }),
|
|
@@ -14209,7 +13997,7 @@ function PortfolioActivityPanel({
|
|
|
14209
13997
|
/* @__PURE__ */ jsx(GridHeaderCell, { children: "Status" }),
|
|
14210
13998
|
onCancelOrder && /* @__PURE__ */ jsx(GridHeaderCell, {})
|
|
14211
13999
|
] }),
|
|
14212
|
-
|
|
14000
|
+
pagedOpenOrders.map((order) => {
|
|
14213
14001
|
const meta = getOrderStatusMeta(order.status);
|
|
14214
14002
|
const isMarket = order.type === "MARKET";
|
|
14215
14003
|
const filledPercent = order.quantity > 0 ? Math.round(order.filledQuantity / order.quantity * 100) : 0;
|
|
@@ -14254,7 +14042,7 @@ function PortfolioActivityPanel({
|
|
|
14254
14042
|
/* @__PURE__ */ jsx(GridHeaderCell, { children: "Status" }),
|
|
14255
14043
|
/* @__PURE__ */ jsx(GridHeaderCell, { children: "Date" })
|
|
14256
14044
|
] }),
|
|
14257
|
-
|
|
14045
|
+
pagedOrderHistory.map((order) => {
|
|
14258
14046
|
const meta = getOrderStatusMeta(order.status);
|
|
14259
14047
|
const isMarket = order.type === "MARKET";
|
|
14260
14048
|
const filledPercent = order.quantity > 0 ? Math.round(order.filledQuantity / order.quantity * 100) : 0;
|
|
@@ -14278,40 +14066,50 @@ function PortfolioActivityPanel({
|
|
|
14278
14066
|
activeTab === "trades" && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
14279
14067
|
tradeHistory.length === 0 && /* @__PURE__ */ jsx(EmptyState, { children: "Completed trades will appear here." }),
|
|
14280
14068
|
tradeHistory.length > 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
14281
|
-
/* @__PURE__ */ jsxs(GridHeader, { $columns: "1.2fr 0.6fr 0.8fr 1fr 1fr
|
|
14069
|
+
/* @__PURE__ */ jsxs(GridHeader, { $columns: "1.2fr 0.6fr 0.8fr 1fr 1fr 1fr 1fr", children: [
|
|
14282
14070
|
/* @__PURE__ */ jsx(GridHeaderCell, { children: "Asset" }),
|
|
14283
14071
|
/* @__PURE__ */ jsx(GridHeaderCell, { children: "Side" }),
|
|
14284
14072
|
/* @__PURE__ */ jsx(GridHeaderCell, { children: "Qty" }),
|
|
14285
14073
|
/* @__PURE__ */ jsx(GridHeaderCell, { children: "Price" }),
|
|
14286
14074
|
/* @__PURE__ */ jsx(GridHeaderCell, { children: "Total" }),
|
|
14287
|
-
/* @__PURE__ */ jsx(GridHeaderCell, { children: "
|
|
14075
|
+
/* @__PURE__ */ jsx(GridHeaderCell, { children: "Settlement" }),
|
|
14288
14076
|
/* @__PURE__ */ jsx(GridHeaderCell, { children: "Date" })
|
|
14289
14077
|
] }),
|
|
14290
|
-
|
|
14291
|
-
|
|
14292
|
-
|
|
14293
|
-
|
|
14294
|
-
|
|
14295
|
-
|
|
14296
|
-
|
|
14297
|
-
/* @__PURE__ */
|
|
14298
|
-
|
|
14078
|
+
pagedTradeHistory.map((trade) => {
|
|
14079
|
+
const s = trade.status?.toUpperCase();
|
|
14080
|
+
const isSettled = s === "SETTLED" || s === "CONFIRMED" || s === "FILLED" || s === "ALLOCATED";
|
|
14081
|
+
const isFailed = s === "SETTLEMENT_FAILED" || s === "REJECTED" || s === "CANCELLED" || s === "CANCELED";
|
|
14082
|
+
const isSettling = !isSettled && !isFailed && !!trade.status;
|
|
14083
|
+
const settlementLabel = isSettled ? "Settled" : isFailed ? "Settlement Failed" : isSettling ? prettyLabel(trade.status) : "\u2014";
|
|
14084
|
+
const settlementMeta = isSettled ? { color: "#0ecb81", bg: "rgba(14,203,129,0.1)" } : isFailed ? { color: "#f6465d", bg: "rgba(246,70,93,0.12)" } : isSettling ? { color: "#f0b90b", bg: "rgba(240,185,11,0.15)" } : null;
|
|
14085
|
+
return /* @__PURE__ */ jsxs(GridRow, { $columns: "1.2fr 0.6fr 0.8fr 1fr 1fr 1fr 1fr", children: [
|
|
14086
|
+
/* @__PURE__ */ jsx(GridCell, { children: /* @__PURE__ */ jsx(CellText, { $primary: true, children: trade.tokenName }) }),
|
|
14087
|
+
/* @__PURE__ */ jsx(GridCell, { children: /* @__PURE__ */ jsx(SideBadge, { $side: sideLabel(trade.side), children: sideLabel(trade.side) }) }),
|
|
14088
|
+
/* @__PURE__ */ jsx(GridCell, { children: /* @__PURE__ */ jsx(CellText, { children: formatNumber2(trade.quantity) }) }),
|
|
14089
|
+
/* @__PURE__ */ jsx(GridCell, { children: /* @__PURE__ */ jsx(CellText, { children: formatCurrency4(trade.price) }) }),
|
|
14090
|
+
/* @__PURE__ */ jsx(GridCell, { children: /* @__PURE__ */ jsx(CellText, { children: formatCurrency4(trade.price * trade.quantity) }) }),
|
|
14091
|
+
/* @__PURE__ */ jsx(GridCell, { children: settlementMeta ? /* @__PURE__ */ jsx(ActivityTag, { $color: settlementMeta.color, $bg: settlementMeta.bg, children: settlementLabel }) : /* @__PURE__ */ jsx(CellText, { $muted: true, children: "\u2014" }) }),
|
|
14092
|
+
/* @__PURE__ */ jsx(GridCell, { children: /* @__PURE__ */ jsx(CellText, { $muted: true, children: formatTimestamp(trade.executedAt) }) })
|
|
14093
|
+
] }, trade.tradeId);
|
|
14094
|
+
})
|
|
14299
14095
|
] })
|
|
14300
14096
|
] }),
|
|
14301
14097
|
activeTab === "transfers" && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
14302
14098
|
transfers.length === 0 && /* @__PURE__ */ jsx(EmptyState, { children: "Deposits and withdrawals will appear here." }),
|
|
14303
14099
|
transfers.length > 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
14304
|
-
/* @__PURE__ */ jsxs(GridHeader, { $columns: "0.8fr 1fr 1.5fr 0.8fr 1fr", children: [
|
|
14100
|
+
/* @__PURE__ */ jsxs(GridHeader, { $columns: "0.8fr 1fr 1.5fr 0.8fr 1fr 36px", children: [
|
|
14305
14101
|
/* @__PURE__ */ jsx(GridHeaderCell, { children: "Type" }),
|
|
14306
14102
|
/* @__PURE__ */ jsx(GridHeaderCell, { children: "Amount" }),
|
|
14307
14103
|
/* @__PURE__ */ jsx(GridHeaderCell, { children: "Address" }),
|
|
14308
14104
|
/* @__PURE__ */ jsx(GridHeaderCell, { children: "Status" }),
|
|
14309
|
-
/* @__PURE__ */ jsx(GridHeaderCell, { children: "Date" })
|
|
14105
|
+
/* @__PURE__ */ jsx(GridHeaderCell, { children: "Date" }),
|
|
14106
|
+
/* @__PURE__ */ jsx(GridHeaderCell, {})
|
|
14310
14107
|
] }),
|
|
14311
|
-
|
|
14108
|
+
pagedTransfers.map((t, idx) => {
|
|
14312
14109
|
const isDeposit = t.type === "DEPOSIT";
|
|
14313
14110
|
const statusMeta = getOrderStatusMeta(t.status);
|
|
14314
|
-
|
|
14111
|
+
const txUrl = t.blockchainTxHash ? `${_blockExplorerBaseUrl}/${t.blockchainTxHash}` : null;
|
|
14112
|
+
return /* @__PURE__ */ jsxs(GridRow, { $columns: "0.8fr 1fr 1.5fr 0.8fr 1fr 36px", children: [
|
|
14315
14113
|
/* @__PURE__ */ jsx(GridCell, { children: /* @__PURE__ */ jsx(SideBadge, { $side: isDeposit ? "Buy" : "Sell", children: isDeposit ? "Deposit" : "Withdraw" }) }),
|
|
14316
14114
|
/* @__PURE__ */ jsx(GridCell, { children: /* @__PURE__ */ jsxs(CellText, { $color: isDeposit ? "#0ecb81" : "#f6465d", children: [
|
|
14317
14115
|
isDeposit ? "+" : "-",
|
|
@@ -14319,12 +14117,26 @@ function PortfolioActivityPanel({
|
|
|
14319
14117
|
] }) }),
|
|
14320
14118
|
/* @__PURE__ */ jsx(GridCell, { children: /* @__PURE__ */ jsx(CellText, { $muted: true, children: formatAddress(t.address) }) }),
|
|
14321
14119
|
/* @__PURE__ */ jsx(GridCell, { children: /* @__PURE__ */ jsx(ActivityTag, { $color: statusMeta.color, $bg: statusMeta.bg, children: prettyLabel(t.status) }) }),
|
|
14322
|
-
/* @__PURE__ */ jsx(GridCell, { children: /* @__PURE__ */ jsx(CellText, { $muted: true, children: formatTimestamp(t.createdAt) }) })
|
|
14120
|
+
/* @__PURE__ */ jsx(GridCell, { children: /* @__PURE__ */ jsx(CellText, { $muted: true, children: formatTimestamp(t.createdAt) }) }),
|
|
14121
|
+
/* @__PURE__ */ jsx(GridCell, { children: txUrl && /* @__PURE__ */ jsx(TxLink, { href: txUrl, target: "_blank", rel: "noopener noreferrer", title: "View on BaseScan", children: /* @__PURE__ */ jsxs("svg", { width: "15", height: "15", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [
|
|
14122
|
+
/* @__PURE__ */ jsx("path", { d: "M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6" }),
|
|
14123
|
+
/* @__PURE__ */ jsx("polyline", { points: "15 3 21 3 21 9" }),
|
|
14124
|
+
/* @__PURE__ */ jsx("line", { x1: "10", y1: "14", x2: "21", y2: "3" })
|
|
14125
|
+
] }) }) })
|
|
14323
14126
|
] }, t.blockchainTxHash ?? `transfer-${idx}`);
|
|
14324
14127
|
})
|
|
14325
14128
|
] })
|
|
14326
14129
|
] })
|
|
14327
14130
|
] }),
|
|
14131
|
+
totalPages > 1 && /* @__PURE__ */ jsxs(PaginationBar, { children: [
|
|
14132
|
+
/* @__PURE__ */ jsx(PaginationBtn, { disabled: currentPage === 0, onClick: () => setCurrentPage((p) => p - 1), children: "\u2039 Prev" }),
|
|
14133
|
+
/* @__PURE__ */ jsxs(PaginationInfo, { children: [
|
|
14134
|
+
currentPage + 1,
|
|
14135
|
+
" / ",
|
|
14136
|
+
totalPages
|
|
14137
|
+
] }),
|
|
14138
|
+
/* @__PURE__ */ jsx(PaginationBtn, { disabled: currentPage >= totalPages - 1, onClick: () => setCurrentPage((p) => p + 1), children: "Next \u203A" })
|
|
14139
|
+
] }),
|
|
14328
14140
|
cancelAllConfirmOpen && /* @__PURE__ */ jsx(CancelConfirmOverlay, { onClick: () => setCancelAllConfirmOpen(false), children: /* @__PURE__ */ jsxs(CancelConfirmModal, { onClick: (e) => e.stopPropagation(), children: [
|
|
14329
14141
|
/* @__PURE__ */ jsx(CancelConfirmTitle, { children: "Cancel All Orders" }),
|
|
14330
14142
|
/* @__PURE__ */ jsxs(CancelConfirmBody, { children: [
|
|
@@ -14445,48 +14257,6 @@ var TabCount = styled9.span`
|
|
|
14445
14257
|
font-weight: 600;
|
|
14446
14258
|
margin-left: 2px;
|
|
14447
14259
|
`;
|
|
14448
|
-
styled9.div`
|
|
14449
|
-
display: grid;
|
|
14450
|
-
grid-template-columns: auto 1fr auto auto;
|
|
14451
|
-
align-items: center;
|
|
14452
|
-
gap: 0 1rem;
|
|
14453
|
-
padding: 0.6rem 0.25rem;
|
|
14454
|
-
border-bottom: 1px solid rgba(255, 255, 255, 0.04);
|
|
14455
|
-
|
|
14456
|
-
&:last-child {
|
|
14457
|
-
border-bottom: none;
|
|
14458
|
-
}
|
|
14459
|
-
|
|
14460
|
-
&:hover {
|
|
14461
|
-
background: rgba(255, 255, 255, 0.015);
|
|
14462
|
-
}
|
|
14463
|
-
`;
|
|
14464
|
-
styled9.span`
|
|
14465
|
-
font-size: 0.6rem;
|
|
14466
|
-
font-weight: 700;
|
|
14467
|
-
text-transform: uppercase;
|
|
14468
|
-
letter-spacing: 0.03em;
|
|
14469
|
-
padding: 0.2rem 0.45rem;
|
|
14470
|
-
border-radius: 3px;
|
|
14471
|
-
min-width: 28px;
|
|
14472
|
-
text-align: center;
|
|
14473
|
-
color: ${({ $side }) => $side === "Buy" ? "#0ecb81" : "#f6465d"};
|
|
14474
|
-
background: ${({ $side }) => $side === "Buy" ? "rgba(14, 203, 129, 0.1)" : "rgba(246, 70, 93, 0.1)"};
|
|
14475
|
-
`;
|
|
14476
|
-
styled9.div`
|
|
14477
|
-
display: flex;
|
|
14478
|
-
flex-direction: column;
|
|
14479
|
-
gap: 0.1rem;
|
|
14480
|
-
`;
|
|
14481
|
-
styled9.span`
|
|
14482
|
-
font-size: 0.8rem;
|
|
14483
|
-
color: #fff;
|
|
14484
|
-
font-weight: 500;
|
|
14485
|
-
`;
|
|
14486
|
-
styled9.span`
|
|
14487
|
-
font-size: 0.6rem;
|
|
14488
|
-
color: rgba(255, 255, 255, 0.35);
|
|
14489
|
-
`;
|
|
14490
14260
|
var ActivityTag = styled9.span`
|
|
14491
14261
|
font-size: 0.58rem;
|
|
14492
14262
|
font-weight: 600;
|
|
@@ -14496,41 +14266,6 @@ var ActivityTag = styled9.span`
|
|
|
14496
14266
|
background: ${({ $bg }) => $bg || "rgba(255, 255, 255, 0.06)"};
|
|
14497
14267
|
white-space: nowrap;
|
|
14498
14268
|
`;
|
|
14499
|
-
styled9.span`
|
|
14500
|
-
font-size: 0.8rem;
|
|
14501
|
-
font-weight: 600;
|
|
14502
|
-
color: #fff;
|
|
14503
|
-
text-align: right;
|
|
14504
|
-
white-space: nowrap;
|
|
14505
|
-
`;
|
|
14506
|
-
styled9.div`
|
|
14507
|
-
display: flex;
|
|
14508
|
-
align-items: center;
|
|
14509
|
-
justify-content: flex-end;
|
|
14510
|
-
gap: 0.35rem;
|
|
14511
|
-
`;
|
|
14512
|
-
styled9.a`
|
|
14513
|
-
display: inline-flex;
|
|
14514
|
-
align-items: center;
|
|
14515
|
-
justify-content: center;
|
|
14516
|
-
width: 26px;
|
|
14517
|
-
height: 26px;
|
|
14518
|
-
border-radius: 6px;
|
|
14519
|
-
border: 1px solid rgba(14, 203, 129, 0.4);
|
|
14520
|
-
color: #0ecb81;
|
|
14521
|
-
transition: opacity 0.15s ease, transform 0.15s ease, border-color 0.15s ease;
|
|
14522
|
-
|
|
14523
|
-
&:hover {
|
|
14524
|
-
opacity: 0.85;
|
|
14525
|
-
transform: translateY(-1px);
|
|
14526
|
-
border-color: rgba(14, 203, 129, 0.8);
|
|
14527
|
-
}
|
|
14528
|
-
|
|
14529
|
-
&:focus-visible {
|
|
14530
|
-
outline: 2px solid rgba(14, 203, 129, 0.8);
|
|
14531
|
-
outline-offset: 2px;
|
|
14532
|
-
}
|
|
14533
|
-
`;
|
|
14534
14269
|
var EmptyState = styled9.div`
|
|
14535
14270
|
padding: 1.5rem 0.75rem;
|
|
14536
14271
|
text-align: center;
|
|
@@ -15035,13 +14770,6 @@ var CAssetName = styled9.div`
|
|
|
15035
14770
|
align-items: center;
|
|
15036
14771
|
gap: 0.3rem;
|
|
15037
14772
|
`;
|
|
15038
|
-
styled9.img`
|
|
15039
|
-
width: 22px;
|
|
15040
|
-
height: 22px;
|
|
15041
|
-
border-radius: 4px;
|
|
15042
|
-
object-fit: cover;
|
|
15043
|
-
flex-shrink: 0;
|
|
15044
|
-
`;
|
|
15045
14773
|
var CUnitsCell = styled9.div`
|
|
15046
14774
|
font-size: 0.78rem;
|
|
15047
14775
|
color: rgba(255, 255, 255, 0.8);
|
|
@@ -15117,6 +14845,48 @@ var CCloseBtn = styled9.button`
|
|
|
15117
14845
|
border-color: rgba(230, 200, 126, 0.5);
|
|
15118
14846
|
}
|
|
15119
14847
|
`;
|
|
14848
|
+
var TxLink = styled9.a`
|
|
14849
|
+
display: flex;
|
|
14850
|
+
align-items: center;
|
|
14851
|
+
justify-content: center;
|
|
14852
|
+
color: rgba(230, 200, 126, 0.7);
|
|
14853
|
+
transition: color 0.15s;
|
|
14854
|
+
&:hover { color: #E6C87E; }
|
|
14855
|
+
`;
|
|
14856
|
+
var PaginationBar = styled9.div`
|
|
14857
|
+
display: flex;
|
|
14858
|
+
align-items: center;
|
|
14859
|
+
justify-content: flex-end;
|
|
14860
|
+
gap: 0.5rem;
|
|
14861
|
+
padding: 0.45rem 0.75rem;
|
|
14862
|
+
border-top: 1px solid rgba(255, 255, 255, 0.06);
|
|
14863
|
+
flex-shrink: 0;
|
|
14864
|
+
`;
|
|
14865
|
+
var PaginationBtn = styled9.button`
|
|
14866
|
+
background: transparent;
|
|
14867
|
+
border: 1px solid rgba(255, 255, 255, 0.1);
|
|
14868
|
+
border-radius: 4px;
|
|
14869
|
+
padding: 0.2rem 0.6rem;
|
|
14870
|
+
font-size: 0.7rem;
|
|
14871
|
+
color: rgba(255, 255, 255, 0.55);
|
|
14872
|
+
cursor: pointer;
|
|
14873
|
+
transition: all 0.15s;
|
|
14874
|
+
&:hover:not(:disabled) {
|
|
14875
|
+
border-color: rgba(230, 200, 126, 0.4);
|
|
14876
|
+
color: #E6C87E;
|
|
14877
|
+
}
|
|
14878
|
+
&:disabled {
|
|
14879
|
+
opacity: 0.3;
|
|
14880
|
+
cursor: default;
|
|
14881
|
+
}
|
|
14882
|
+
`;
|
|
14883
|
+
var PaginationInfo = styled9.span`
|
|
14884
|
+
font-size: 0.7rem;
|
|
14885
|
+
color: rgba(255, 255, 255, 0.4);
|
|
14886
|
+
min-width: 3rem;
|
|
14887
|
+
text-align: center;
|
|
14888
|
+
font-variant-numeric: tabular-nums;
|
|
14889
|
+
`;
|
|
15120
14890
|
var formatOrderCurrency = (amount) => {
|
|
15121
14891
|
if (amount >= 1e6) return `$${(amount / 1e6).toFixed(2)}M`;
|
|
15122
14892
|
return `$${Math.round(amount).toLocaleString()}`;
|
|
@@ -15132,7 +14902,7 @@ var formatTimeAgo2 = (timestamp) => {
|
|
|
15132
14902
|
};
|
|
15133
14903
|
function PropertyBuy({
|
|
15134
14904
|
propertyName = "Loaf Property",
|
|
15135
|
-
propertyLocation:
|
|
14905
|
+
propertyLocation: _propertyLocationLabel = "Sydney, NSW",
|
|
15136
14906
|
tokenDisplayName = "Property Token",
|
|
15137
14907
|
tokenSymbol = "LOAF",
|
|
15138
14908
|
tokenName,
|
|
@@ -15157,6 +14927,7 @@ function PropertyBuy({
|
|
|
15157
14927
|
portfolioActivity,
|
|
15158
14928
|
newsItems = [],
|
|
15159
14929
|
newsConnectionStatus,
|
|
14930
|
+
videoUrl,
|
|
15160
14931
|
toast
|
|
15161
14932
|
}) {
|
|
15162
14933
|
const [sliderValue, setSliderValue] = useState(0);
|
|
@@ -15399,32 +15170,15 @@ function PropertyBuy({
|
|
|
15399
15170
|
purchaseError && /* @__PURE__ */ jsx("div", { style: { marginTop: "0.75rem", padding: "0.75rem 1rem", borderRadius: "8px", background: "rgba(246,70,93,0.1)", border: "1px solid rgba(246,70,93,0.3)", color: "#f6465d", fontSize: "0.8rem", fontWeight: 500 }, children: purchaseError })
|
|
15400
15171
|
] })
|
|
15401
15172
|
] }),
|
|
15402
|
-
/* @__PURE__ */
|
|
15403
|
-
|
|
15404
|
-
|
|
15405
|
-
|
|
15406
|
-
|
|
15407
|
-
|
|
15408
|
-
|
|
15409
|
-
|
|
15410
|
-
|
|
15411
|
-
style: {
|
|
15412
|
-
maxWidth: "none",
|
|
15413
|
-
background: "#111111",
|
|
15414
|
-
borderRadius: "8px",
|
|
15415
|
-
padding: "1.25rem 1.5rem",
|
|
15416
|
-
boxShadow: "0 4px 12px rgba(0,0,0,0.1)",
|
|
15417
|
-
border: "none",
|
|
15418
|
-
height: "100%",
|
|
15419
|
-
overflow: "hidden"
|
|
15420
|
-
}
|
|
15421
|
-
}
|
|
15422
|
-
),
|
|
15423
|
-
/* @__PURE__ */ jsxs(VideoPanel, { children: [
|
|
15424
|
-
/* @__PURE__ */ jsx("div", { className: "video-header", children: /* @__PURE__ */ jsx("h3", { children: propertyName }) }),
|
|
15425
|
-
/* @__PURE__ */ jsx("div", { className: "video-frame", children: /* @__PURE__ */ jsx("video", { controls: true, loop: true, autoPlay: true, muted: true, playsInline: true, children: /* @__PURE__ */ jsx("source", { src: "/properties/Musgrave/musgrave.mp4", type: "video/mp4" }) }) })
|
|
15426
|
-
] })
|
|
15427
|
-
] }),
|
|
15173
|
+
/* @__PURE__ */ jsx(
|
|
15174
|
+
PropertyMediaRow,
|
|
15175
|
+
{
|
|
15176
|
+
newsItems,
|
|
15177
|
+
newsConnectionStatus,
|
|
15178
|
+
videoSrc: videoUrl || "/property-showcase.mp4",
|
|
15179
|
+
videoTitle: propertyName
|
|
15180
|
+
}
|
|
15181
|
+
),
|
|
15428
15182
|
/* @__PURE__ */ jsx(
|
|
15429
15183
|
OrderConfirmationModal,
|
|
15430
15184
|
{
|
|
@@ -15447,7 +15201,7 @@ function PropertyBuy({
|
|
|
15447
15201
|
}
|
|
15448
15202
|
var HeroGrid = styled9.div`
|
|
15449
15203
|
display: grid;
|
|
15450
|
-
grid-template-columns: 1fr
|
|
15204
|
+
grid-template-columns: minmax(0, 1fr) 460px;
|
|
15451
15205
|
grid-template-rows: auto auto minmax(450px, 520px);
|
|
15452
15206
|
gap: 1.5rem;
|
|
15453
15207
|
width: 100%;
|
|
@@ -15457,16 +15211,21 @@ var HeroGrid = styled9.div`
|
|
|
15457
15211
|
& > div:nth-child(1) {
|
|
15458
15212
|
grid-column: 1 / 2;
|
|
15459
15213
|
grid-row: 1 / 2;
|
|
15214
|
+
min-width: 0;
|
|
15460
15215
|
}
|
|
15461
15216
|
|
|
15462
15217
|
& > div:nth-child(2) {
|
|
15463
15218
|
grid-column: 1 / 2;
|
|
15464
15219
|
grid-row: 2 / 3;
|
|
15220
|
+
min-width: 0;
|
|
15221
|
+
overflow: hidden;
|
|
15465
15222
|
}
|
|
15466
15223
|
|
|
15467
15224
|
& > div:nth-child(3) {
|
|
15468
15225
|
grid-column: 1 / 2;
|
|
15469
15226
|
grid-row: 3 / 4;
|
|
15227
|
+
min-width: 0;
|
|
15228
|
+
overflow: hidden;
|
|
15470
15229
|
}
|
|
15471
15230
|
|
|
15472
15231
|
& > div:nth-child(4) {
|
|
@@ -15474,9 +15233,10 @@ var HeroGrid = styled9.div`
|
|
|
15474
15233
|
grid-row: 1 / 4;
|
|
15475
15234
|
display: flex;
|
|
15476
15235
|
flex-direction: column;
|
|
15236
|
+
min-width: 0;
|
|
15477
15237
|
}
|
|
15478
15238
|
|
|
15479
|
-
@media (max-width:
|
|
15239
|
+
@media (max-width: 1280px) {
|
|
15480
15240
|
display: flex;
|
|
15481
15241
|
flex-direction: column;
|
|
15482
15242
|
gap: 1rem;
|
|
@@ -15535,15 +15295,17 @@ var BottomRow = styled9.div`
|
|
|
15535
15295
|
display: flex;
|
|
15536
15296
|
gap: 1.5rem;
|
|
15537
15297
|
align-items: stretch;
|
|
15538
|
-
|
|
15298
|
+
min-width: 0;
|
|
15299
|
+
overflow: hidden;
|
|
15300
|
+
@media (max-width: 1280px) {
|
|
15539
15301
|
flex-direction: column;
|
|
15540
15302
|
gap: 1rem;
|
|
15541
15303
|
}
|
|
15542
15304
|
`;
|
|
15543
15305
|
var RecentOrderPanel = styled9.div`
|
|
15544
|
-
flex: 0 0
|
|
15545
|
-
min-width:
|
|
15546
|
-
max-width:
|
|
15306
|
+
flex: 0 0 340px;
|
|
15307
|
+
min-width: 0;
|
|
15308
|
+
max-width: 380px;
|
|
15547
15309
|
background-color: var(--color-card-darker, #111);
|
|
15548
15310
|
border-radius: 8px;
|
|
15549
15311
|
padding: 1.5rem;
|
|
@@ -15709,78 +15471,6 @@ var PurchaseAmount = styled9.div`
|
|
|
15709
15471
|
white-space: nowrap;
|
|
15710
15472
|
margin-left: 1rem;
|
|
15711
15473
|
`;
|
|
15712
|
-
var NewsVideoRow = styled9.div`
|
|
15713
|
-
display: flex;
|
|
15714
|
-
gap: 1.5rem;
|
|
15715
|
-
height: 700px;
|
|
15716
|
-
align-items: stretch;
|
|
15717
|
-
|
|
15718
|
-
& > *:first-child {
|
|
15719
|
-
flex: 0 1 520px;
|
|
15720
|
-
min-width: 380px;
|
|
15721
|
-
max-width: 520px;
|
|
15722
|
-
}
|
|
15723
|
-
|
|
15724
|
-
& > *:last-child {
|
|
15725
|
-
flex: 1 1 0%;
|
|
15726
|
-
min-width: 0;
|
|
15727
|
-
}
|
|
15728
|
-
|
|
15729
|
-
@media (max-width: 1024px) {
|
|
15730
|
-
flex-direction: column;
|
|
15731
|
-
height: auto;
|
|
15732
|
-
gap: 1rem;
|
|
15733
|
-
|
|
15734
|
-
& > *:first-child {
|
|
15735
|
-
flex: none;
|
|
15736
|
-
max-width: none;
|
|
15737
|
-
width: 100%;
|
|
15738
|
-
}
|
|
15739
|
-
|
|
15740
|
-
& > *:last-child {
|
|
15741
|
-
flex: none;
|
|
15742
|
-
width: 100%;
|
|
15743
|
-
min-height: 400px;
|
|
15744
|
-
}
|
|
15745
|
-
}
|
|
15746
|
-
`;
|
|
15747
|
-
var VideoPanel = styled9.div`
|
|
15748
|
-
background: #111111;
|
|
15749
|
-
border-radius: 8px;
|
|
15750
|
-
display: flex;
|
|
15751
|
-
flex-direction: column;
|
|
15752
|
-
overflow: hidden;
|
|
15753
|
-
width: 100%;
|
|
15754
|
-
height: 100%;
|
|
15755
|
-
|
|
15756
|
-
.video-header {
|
|
15757
|
-
padding: 1.25rem 1.5rem 0;
|
|
15758
|
-
h3 {
|
|
15759
|
-
font-size: 1.1rem;
|
|
15760
|
-
font-weight: 600;
|
|
15761
|
-
color: #fff;
|
|
15762
|
-
margin: 0 0 1rem;
|
|
15763
|
-
}
|
|
15764
|
-
}
|
|
15765
|
-
|
|
15766
|
-
.video-frame {
|
|
15767
|
-
flex: 1;
|
|
15768
|
-
position: relative;
|
|
15769
|
-
margin: 0 1.5rem 1.5rem;
|
|
15770
|
-
border-radius: 8px;
|
|
15771
|
-
overflow: hidden;
|
|
15772
|
-
background: #000;
|
|
15773
|
-
|
|
15774
|
-
video {
|
|
15775
|
-
position: absolute;
|
|
15776
|
-
top: 0;
|
|
15777
|
-
left: 0;
|
|
15778
|
-
width: 100%;
|
|
15779
|
-
height: 100%;
|
|
15780
|
-
object-fit: cover;
|
|
15781
|
-
}
|
|
15782
|
-
}
|
|
15783
|
-
`;
|
|
15784
15474
|
var PaymentOption = styled9.div`
|
|
15785
15475
|
display: flex;
|
|
15786
15476
|
align-items: center;
|
|
@@ -18306,6 +17996,6 @@ function hasPendingActivity(data) {
|
|
|
18306
17996
|
}) ?? false;
|
|
18307
17997
|
}
|
|
18308
17998
|
|
|
18309
|
-
export { AssetSelectorBar, Badge, Button, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Header, HousePositionSlider, HousePositionSliderMobile, LoafLiquidityBadge, LoafLiquidityLogo, LoginPopup, MobileTradeNav, OfferingProgressCard, Orderbook, owner_booking_default as OwnerBooking, PaymentPopup, PortfolioActivityPanel, PortfolioSummary, PriceChart, PropertyBuy, PropertyCompareBar, PropertyDocuments, PropertyHeroHeader, PropertyHistory, PropertyInspectionTimes, PropertyNewsUpdates, PropertyOffers, PropertyOverview, PropertyPhotoGallery, PropertySubheader, PropertyTour, PropertyValuation, Skeleton, SlideDigit, ToastProvider, TradeConfirmationModal, TradingSlider, YourOrders, badgeVariants, buttonVariants, hasPendingActivity, useAdaptivePolling, useToast };
|
|
17999
|
+
export { AssetSelectorBar, Badge, Button, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Header, HousePositionSlider, HousePositionSliderMobile, LoafLiquidityBadge, LoafLiquidityLogo, LoginPopup, MobileTradeNav, OfferingProgressCard, Orderbook, owner_booking_default as OwnerBooking, PaymentPopup, PortfolioActivityPanel, PortfolioSummary, PriceChart, PropertyBuy, PropertyCompareBar, PropertyDocuments, PropertyHeroHeader, PropertyHistory, PropertyInspectionTimes, PropertyMediaRow, PropertyNewsUpdates, PropertyOffers, PropertyOverview, PropertyPhotoGallery, PropertySubheader, PropertyTour, PropertyValuation, Skeleton, SlideDigit, ToastProvider, TradeConfirmationModal, TradingSlider, YourOrders, badgeVariants, buttonVariants, hasPendingActivity, useAdaptivePolling, useToast };
|
|
18310
18000
|
//# sourceMappingURL=index.mjs.map
|
|
18311
18001
|
//# sourceMappingURL=index.mjs.map
|