@loafmarkets/ui 0.1.192 → 0.1.193
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +33 -3
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +33 -3
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -8496,6 +8496,7 @@ function PropertyOverview({
|
|
|
8496
8496
|
}) {
|
|
8497
8497
|
const [isDescExpanded, setDescExpanded] = useState(false);
|
|
8498
8498
|
const [showDividendHistory, setShowDividendHistory] = useState(false);
|
|
8499
|
+
const [copiedAddress, setCopiedAddress] = useState(false);
|
|
8499
8500
|
const description = descriptionProp ?? overviewData?.description ?? DEFAULT_DESCRIPTION;
|
|
8500
8501
|
const landSize = landProp ?? overviewData?.landSizeSqm ?? null;
|
|
8501
8502
|
const buildingSize = buildingProp ?? overviewData?.buildingSizeSqm ?? null;
|
|
@@ -8545,7 +8546,7 @@ function PropertyOverview({
|
|
|
8545
8546
|
] });
|
|
8546
8547
|
const tokenDetailsItems = [
|
|
8547
8548
|
{ label: "Chain", value: chainValue },
|
|
8548
|
-
{ label: "On-Chain Address", value: contractAddress ? truncateAddress(contractAddress) : "\u2014", mono: true, link: contractAddress ? `https://basescan.org/address/${contractAddress}` : void 0 },
|
|
8549
|
+
{ label: "On-Chain Address", value: contractAddress ? truncateAddress(contractAddress) : "\u2014", mono: true, link: contractAddress ? `https://basescan.org/address/${contractAddress}` : void 0, copyValue: contractAddress },
|
|
8549
8550
|
{ label: "Token Ticker", value: ticker ?? "\u2014" },
|
|
8550
8551
|
{ label: "Total Circulating Tokens", value: isLoading && resolvedTokensIssued == null ? loadingSkeleton : resolvedTokensIssued?.toLocaleString() ?? "\u2014" },
|
|
8551
8552
|
{ label: "Percentage Tokenized", value: percentageTokenized != null ? `${percentageTokenized}%` : "\u2014" },
|
|
@@ -8604,7 +8605,24 @@ function PropertyOverview({
|
|
|
8604
8605
|
/* @__PURE__ */ jsx(TokenDetailsTitle, { children: "Token Details" }),
|
|
8605
8606
|
tokenDetailsItems.map((item) => /* @__PURE__ */ jsxs(TokenDetailRow, { children: [
|
|
8606
8607
|
/* @__PURE__ */ jsx(TokenDetailLabel, { children: item.label }),
|
|
8607
|
-
/* @__PURE__ */
|
|
8608
|
+
/* @__PURE__ */ jsxs(TokenDetailValue, { $mono: !!item.mono, children: [
|
|
8609
|
+
item.link ? /* @__PURE__ */ jsx("a", { href: item.link, target: "_blank", rel: "noopener noreferrer", style: { color: "#3380FF", textDecoration: "none" }, children: item.value }) : item.value,
|
|
8610
|
+
item.copyValue && /* @__PURE__ */ jsx(
|
|
8611
|
+
CopyBtn,
|
|
8612
|
+
{
|
|
8613
|
+
onClick: () => {
|
|
8614
|
+
navigator.clipboard.writeText(item.copyValue);
|
|
8615
|
+
setCopiedAddress(true);
|
|
8616
|
+
setTimeout(() => setCopiedAddress(false), 1500);
|
|
8617
|
+
},
|
|
8618
|
+
title: copiedAddress ? "Copied!" : "Copy address",
|
|
8619
|
+
children: copiedAddress ? /* @__PURE__ */ jsx("svg", { width: "12", height: "12", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: /* @__PURE__ */ jsx("path", { d: "M20 6L9 17l-5-5" }) }) : /* @__PURE__ */ jsxs("svg", { width: "12", height: "12", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: [
|
|
8620
|
+
/* @__PURE__ */ jsx("rect", { x: "9", y: "9", width: "13", height: "13", rx: "2" }),
|
|
8621
|
+
/* @__PURE__ */ jsx("path", { d: "M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1" })
|
|
8622
|
+
] })
|
|
8623
|
+
}
|
|
8624
|
+
)
|
|
8625
|
+
] })
|
|
8608
8626
|
] }, item.label))
|
|
8609
8627
|
] }),
|
|
8610
8628
|
/* @__PURE__ */ jsxs(TrustBadgesCard, { children: [
|
|
@@ -8619,7 +8637,7 @@ function PropertyOverview({
|
|
|
8619
8637
|
/* @__PURE__ */ jsx(TrustBadgeLabel, { children: "Land Title" })
|
|
8620
8638
|
] }),
|
|
8621
8639
|
/* @__PURE__ */ jsxs(TrustBadge, { children: [
|
|
8622
|
-
/* @__PURE__ */ jsx(TrustBadgeLogoWrap, { children: /* @__PURE__ */ jsx("img", { src: "/savills.png", alt: "Savills", style: { height: 38, borderRadius: 3, opacity: 0.
|
|
8640
|
+
/* @__PURE__ */ jsx(TrustBadgeLogoWrap, { children: /* @__PURE__ */ jsx("img", { src: "/savills.png", alt: "Savills", style: { height: 38, borderRadius: 3, filter: "grayscale(1) brightness(1.2) contrast(1.6)", opacity: 0.7 } }) }),
|
|
8623
8641
|
/* @__PURE__ */ jsx(TrustBadgeLabel, { children: "Valuation" })
|
|
8624
8642
|
] })
|
|
8625
8643
|
] })
|
|
@@ -9312,6 +9330,18 @@ var TrustBadgeLabel = styled9.span`
|
|
|
9312
9330
|
font-weight: 400;
|
|
9313
9331
|
text-align: center;
|
|
9314
9332
|
`;
|
|
9333
|
+
var CopyBtn = styled9.button`
|
|
9334
|
+
background: none;
|
|
9335
|
+
border: none;
|
|
9336
|
+
color: rgba(255,255,255,0.3);
|
|
9337
|
+
cursor: pointer;
|
|
9338
|
+
padding: 2px;
|
|
9339
|
+
margin-left: 6px;
|
|
9340
|
+
display: inline-flex;
|
|
9341
|
+
align-items: center;
|
|
9342
|
+
transition: color 0.15s;
|
|
9343
|
+
&:hover { color: rgba(255,255,255,0.7); }
|
|
9344
|
+
`;
|
|
9315
9345
|
var ChainLogos = styled9.span`
|
|
9316
9346
|
display: inline-flex;
|
|
9317
9347
|
align-items: center;
|