@loafmarkets/ui 0.1.153 → 0.1.155
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 +109 -60
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +109 -60
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -8384,29 +8384,6 @@ var GymIcon = /* @__PURE__ */ jsxs("svg", { width: "16", height: "16", viewBox:
|
|
|
8384
8384
|
/* @__PURE__ */ jsx("path", { d: "M10 6h4" }),
|
|
8385
8385
|
/* @__PURE__ */ jsx("path", { d: "M10 18h4" })
|
|
8386
8386
|
] });
|
|
8387
|
-
var ShieldIcon = /* @__PURE__ */ jsx("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "#D4AF37", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", children: /* @__PURE__ */ jsx("path", { d: "M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z" }) });
|
|
8388
|
-
var LockIcon = /* @__PURE__ */ jsxs("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "#D4AF37", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", children: [
|
|
8389
|
-
/* @__PURE__ */ jsx("rect", { x: "3", y: "11", width: "18", height: "11", rx: "2", ry: "2" }),
|
|
8390
|
-
/* @__PURE__ */ jsx("path", { d: "M7 11V7a5 5 0 0 1 10 0v4" })
|
|
8391
|
-
] });
|
|
8392
|
-
var FileCheckIcon = /* @__PURE__ */ jsxs("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "#D4AF37", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", children: [
|
|
8393
|
-
/* @__PURE__ */ jsx("path", { d: "M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z" }),
|
|
8394
|
-
/* @__PURE__ */ jsx("polyline", { points: "14 2 14 8 20 8" }),
|
|
8395
|
-
/* @__PURE__ */ jsx("path", { d: "M9 15l2 2 4-4" })
|
|
8396
|
-
] });
|
|
8397
|
-
var BuildingIcon = /* @__PURE__ */ jsxs("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "#D4AF37", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", children: [
|
|
8398
|
-
/* @__PURE__ */ jsx("rect", { x: "4", y: "2", width: "16", height: "20", rx: "2", ry: "2" }),
|
|
8399
|
-
/* @__PURE__ */ jsx("path", { d: "M9 22v-4h6v4" }),
|
|
8400
|
-
/* @__PURE__ */ jsx("path", { d: "M8 6h.01" }),
|
|
8401
|
-
/* @__PURE__ */ jsx("path", { d: "M16 6h.01" }),
|
|
8402
|
-
/* @__PURE__ */ jsx("path", { d: "M12 6h.01" }),
|
|
8403
|
-
/* @__PURE__ */ jsx("path", { d: "M12 10h.01" }),
|
|
8404
|
-
/* @__PURE__ */ jsx("path", { d: "M12 14h.01" }),
|
|
8405
|
-
/* @__PURE__ */ jsx("path", { d: "M16 10h.01" }),
|
|
8406
|
-
/* @__PURE__ */ jsx("path", { d: "M16 14h.01" }),
|
|
8407
|
-
/* @__PURE__ */ jsx("path", { d: "M8 10h.01" }),
|
|
8408
|
-
/* @__PURE__ */ jsx("path", { d: "M8 14h.01" })
|
|
8409
|
-
] });
|
|
8410
8387
|
var DEFAULT_FEATURES = [
|
|
8411
8388
|
{ icon: BedIcon, value: "\u2014", label: "Beds" },
|
|
8412
8389
|
{ icon: BathIcon, value: "\u2014", label: "Baths" },
|
|
@@ -8424,12 +8401,6 @@ var DEFAULT_PROPERTY_INFO = [
|
|
|
8424
8401
|
{ label: "Status", value: "N/A" }
|
|
8425
8402
|
];
|
|
8426
8403
|
var DEFAULT_DESCRIPTION = "Property description not available.";
|
|
8427
|
-
var TOKENHOLDER_PROTECTIONS = [
|
|
8428
|
-
{ icon: ShieldIcon, title: "SPV Structure", desc: "Each property is held in a dedicated Special Purpose Vehicle, isolating investor assets from platform risk." },
|
|
8429
|
-
{ icon: LockIcon, title: "Smart Contract Audit", desc: "All token contracts are audited by independent security firms before deployment." },
|
|
8430
|
-
{ icon: FileCheckIcon, title: "Title Insurance", desc: "Full title insurance coverage protects token holders against title defects and encumbrances." },
|
|
8431
|
-
{ icon: BuildingIcon, title: "Regulated Exchange", desc: "Trading occurs on a regulated marketplace with KYC/AML compliance and investor protections." }
|
|
8432
|
-
];
|
|
8433
8404
|
function truncateAddress(addr) {
|
|
8434
8405
|
if (addr.length <= 12) return addr;
|
|
8435
8406
|
return `${addr.slice(0, 6)}...${addr.slice(-4)}`;
|
|
@@ -8567,7 +8538,6 @@ function PropertyOverview({
|
|
|
8567
8538
|
{ label: "Last Valuation", value: isLoading && resolvedValuation == null ? loadingSkeleton : resolvedValuation ? resolvedValuation >= 1e6 ? `$${(resolvedValuation / 1e6).toFixed(2)}M` : `$${resolvedValuation.toLocaleString()}` : "\u2014" },
|
|
8568
8539
|
{ label: "Number of Offers", value: "\u2014" },
|
|
8569
8540
|
{ label: "Growth (Past 5 Years)", value: "\u2014" },
|
|
8570
|
-
{ label: "Security Interest in Asset", value: "Yes, secured to Land Registry" },
|
|
8571
8541
|
{ label: "Last Dividend", value: isLoading && monthlyDivPerShare == null ? loadingSkeleton : monthlyDivPerShare != null ? `${(monthlyDivPerShare * 100).toFixed(1)} cents` : "\u2014" },
|
|
8572
8542
|
{ label: "Upcoming Dividend", value: (() => {
|
|
8573
8543
|
const now = /* @__PURE__ */ new Date();
|
|
@@ -8730,12 +8700,59 @@ function PropertyOverview({
|
|
|
8730
8700
|
] })
|
|
8731
8701
|
] }),
|
|
8732
8702
|
/* @__PURE__ */ jsxs(Section, { children: [
|
|
8733
|
-
/* @__PURE__ */ jsx(SectionHeader, { children: "Tokenholder
|
|
8734
|
-
/* @__PURE__ */
|
|
8735
|
-
/* @__PURE__ */
|
|
8736
|
-
|
|
8737
|
-
|
|
8738
|
-
|
|
8703
|
+
/* @__PURE__ */ jsx(SectionHeader, { children: "Tokenholder Security" }),
|
|
8704
|
+
/* @__PURE__ */ jsxs(SecurityTable, { children: [
|
|
8705
|
+
/* @__PURE__ */ jsxs(SecurityRow, { children: [
|
|
8706
|
+
/* @__PURE__ */ jsxs(SecurityRowLeft, { children: [
|
|
8707
|
+
/* @__PURE__ */ jsx(SecurityRowLabel, { children: "Legal Structuring" }),
|
|
8708
|
+
/* @__PURE__ */ jsx(SecurityRowLogo, { children: /* @__PURE__ */ jsx("img", { src: "/Baker_McKenzie.png", alt: "Baker McKenzie", style: { height: "22px", filter: "brightness(0) invert(1)", opacity: 0.8 } }) })
|
|
8709
|
+
] }),
|
|
8710
|
+
/* @__PURE__ */ jsx(SecurityRowRight, { children: /* @__PURE__ */ jsxs(SecurityRowLinks, { children: [
|
|
8711
|
+
/* @__PURE__ */ jsx(SecurityDocLink, { href: "#documents", children: "Legal Opinion" }),
|
|
8712
|
+
/* @__PURE__ */ jsx(SecurityDocLink, { href: "#documents", children: "Structuring Memo" })
|
|
8713
|
+
] }) })
|
|
8714
|
+
] }),
|
|
8715
|
+
/* @__PURE__ */ jsxs(SecurityRow, { children: [
|
|
8716
|
+
/* @__PURE__ */ jsxs(SecurityRowLeft, { children: [
|
|
8717
|
+
/* @__PURE__ */ jsx(SecurityRowLabel, { children: "Security Interest in Asset" }),
|
|
8718
|
+
/* @__PURE__ */ jsxs(SecurityRowValue, { children: [
|
|
8719
|
+
/* @__PURE__ */ jsx(SecurityStatusDot, {}),
|
|
8720
|
+
"Secured \u2014 NSW Land Registry"
|
|
8721
|
+
] })
|
|
8722
|
+
] }),
|
|
8723
|
+
/* @__PURE__ */ jsx(SecurityRowRight, { children: /* @__PURE__ */ jsxs(SecurityRowLinks, { children: [
|
|
8724
|
+
/* @__PURE__ */ jsx(SecurityDocLink, { href: "#documents", children: "Mortgage Agreement" }),
|
|
8725
|
+
/* @__PURE__ */ jsx(SecurityDocLink, { href: "#documents", children: "Registry Filing" })
|
|
8726
|
+
] }) })
|
|
8727
|
+
] }),
|
|
8728
|
+
/* @__PURE__ */ jsxs(SecurityRow, { children: [
|
|
8729
|
+
/* @__PURE__ */ jsxs(SecurityRowLeft, { children: [
|
|
8730
|
+
/* @__PURE__ */ jsx(SecurityRowLabel, { children: "Bankruptcy Remote" }),
|
|
8731
|
+
/* @__PURE__ */ jsxs(SecurityRowValue, { children: [
|
|
8732
|
+
/* @__PURE__ */ jsx(SecurityStatusDot, {}),
|
|
8733
|
+
"Active \u2014 Dedicated SPV"
|
|
8734
|
+
] })
|
|
8735
|
+
] }),
|
|
8736
|
+
/* @__PURE__ */ jsx(SecurityRowRight, { children: /* @__PURE__ */ jsx(SecurityRowLinks, { children: /* @__PURE__ */ jsx(SecurityDocLink, { href: "#documents", children: "SPV Constitution" }) }) })
|
|
8737
|
+
] }),
|
|
8738
|
+
/* @__PURE__ */ jsxs(SecurityRow, { children: [
|
|
8739
|
+
/* @__PURE__ */ jsxs(SecurityRowLeft, { children: [
|
|
8740
|
+
/* @__PURE__ */ jsx(SecurityRowLabel, { children: "Independent Valuation" }),
|
|
8741
|
+
/* @__PURE__ */ jsx(SecurityRowValue, { children: "CBRE & Savills" })
|
|
8742
|
+
] }),
|
|
8743
|
+
/* @__PURE__ */ jsx(SecurityRowRight, { children: /* @__PURE__ */ jsx(SecurityRowLinks, { children: /* @__PURE__ */ jsx(SecurityDocLink, { href: "#documents", children: "Valuation Report" }) }) })
|
|
8744
|
+
] }),
|
|
8745
|
+
/* @__PURE__ */ jsxs(SecurityRow, { $noBorder: true, children: [
|
|
8746
|
+
/* @__PURE__ */ jsxs(SecurityRowLeft, { children: [
|
|
8747
|
+
/* @__PURE__ */ jsx(SecurityRowLabel, { children: "Data Protection" }),
|
|
8748
|
+
/* @__PURE__ */ jsxs(SecurityRowValue, { children: [
|
|
8749
|
+
/* @__PURE__ */ jsx(SecurityStatusDot, {}),
|
|
8750
|
+
"Compliant \u2014 Australian Privacy Act"
|
|
8751
|
+
] })
|
|
8752
|
+
] }),
|
|
8753
|
+
/* @__PURE__ */ jsx(SecurityRowRight, { children: /* @__PURE__ */ jsx(SecurityRowLinks, { children: /* @__PURE__ */ jsx(SecurityDocLink, { href: "#documents", children: "DPA Agreement" }) }) })
|
|
8754
|
+
] })
|
|
8755
|
+
] })
|
|
8739
8756
|
] })
|
|
8740
8757
|
] });
|
|
8741
8758
|
}
|
|
@@ -9109,38 +9126,70 @@ var TradingHoursNote = styled9.div`
|
|
|
9109
9126
|
color: rgba(255,255,255,0.35);
|
|
9110
9127
|
border-top: 1px solid rgba(255,255,255,0.04);
|
|
9111
9128
|
`;
|
|
9112
|
-
var
|
|
9113
|
-
display:
|
|
9114
|
-
|
|
9115
|
-
gap: 1rem;
|
|
9116
|
-
@media (max-width: 768px) { grid-template-columns: 1fr; }
|
|
9117
|
-
`;
|
|
9118
|
-
var ProtectionCard = styled9.div`
|
|
9119
|
-
background: rgba(255,255,255,0.025);
|
|
9120
|
-
border: 1px solid rgba(255,255,255,0.06);
|
|
9121
|
-
border-radius: 10px;
|
|
9122
|
-
padding: 1.25rem;
|
|
9129
|
+
var SecurityTable = styled9.div`
|
|
9130
|
+
display: flex;
|
|
9131
|
+
flex-direction: column;
|
|
9123
9132
|
`;
|
|
9124
|
-
var
|
|
9125
|
-
width: 36px;
|
|
9126
|
-
height: 36px;
|
|
9127
|
-
border-radius: 8px;
|
|
9128
|
-
background: rgba(212,175,55,0.1);
|
|
9133
|
+
var SecurityRow = styled9.div`
|
|
9129
9134
|
display: flex;
|
|
9130
9135
|
align-items: center;
|
|
9131
|
-
justify-content:
|
|
9132
|
-
|
|
9136
|
+
justify-content: space-between;
|
|
9137
|
+
padding: 1rem 0;
|
|
9138
|
+
border-bottom: ${({ $noBorder }) => $noBorder ? "none" : "1px solid rgba(255,255,255,0.06)"};
|
|
9139
|
+
gap: 1rem;
|
|
9140
|
+
@media (max-width: 640px) { flex-direction: column; align-items: flex-start; }
|
|
9133
9141
|
`;
|
|
9134
|
-
var
|
|
9135
|
-
|
|
9142
|
+
var SecurityRowLeft = styled9.div`
|
|
9143
|
+
display: flex;
|
|
9144
|
+
flex-direction: column;
|
|
9145
|
+
gap: 4px;
|
|
9146
|
+
`;
|
|
9147
|
+
var SecurityRowLabel = styled9.div`
|
|
9148
|
+
font-size: 0.88rem;
|
|
9136
9149
|
font-weight: 600;
|
|
9137
9150
|
color: #fff;
|
|
9138
|
-
margin-bottom: 0.4rem;
|
|
9139
9151
|
`;
|
|
9140
|
-
var
|
|
9141
|
-
|
|
9152
|
+
var SecurityRowValue = styled9.div`
|
|
9153
|
+
display: flex;
|
|
9154
|
+
align-items: center;
|
|
9155
|
+
gap: 6px;
|
|
9156
|
+
font-size: 0.78rem;
|
|
9142
9157
|
color: rgba(255,255,255,0.5);
|
|
9143
|
-
|
|
9158
|
+
`;
|
|
9159
|
+
var SecurityRowLogo = styled9.div`
|
|
9160
|
+
display: flex;
|
|
9161
|
+
align-items: center;
|
|
9162
|
+
margin-top: 2px;
|
|
9163
|
+
`;
|
|
9164
|
+
var SecurityStatusDot = styled9.span`
|
|
9165
|
+
width: 6px;
|
|
9166
|
+
height: 6px;
|
|
9167
|
+
border-radius: 50%;
|
|
9168
|
+
background: #4ade80;
|
|
9169
|
+
display: inline-block;
|
|
9170
|
+
flex-shrink: 0;
|
|
9171
|
+
`;
|
|
9172
|
+
var SecurityRowRight = styled9.div`
|
|
9173
|
+
display: flex;
|
|
9174
|
+
align-items: center;
|
|
9175
|
+
flex-shrink: 0;
|
|
9176
|
+
`;
|
|
9177
|
+
var SecurityRowLinks = styled9.div`
|
|
9178
|
+
display: flex;
|
|
9179
|
+
gap: 1.25rem;
|
|
9180
|
+
`;
|
|
9181
|
+
var SecurityDocLink = styled9.a`
|
|
9182
|
+
font-size: 0.78rem;
|
|
9183
|
+
color: rgba(255,255,255,0.45);
|
|
9184
|
+
text-decoration: underline;
|
|
9185
|
+
text-underline-offset: 3px;
|
|
9186
|
+
text-decoration-color: rgba(255,255,255,0.2);
|
|
9187
|
+
cursor: pointer;
|
|
9188
|
+
transition: color 0.15s, text-decoration-color 0.15s;
|
|
9189
|
+
&:hover {
|
|
9190
|
+
color: rgba(212,175,55,0.9);
|
|
9191
|
+
text-decoration-color: rgba(212,175,55,0.5);
|
|
9192
|
+
}
|
|
9144
9193
|
`;
|
|
9145
9194
|
var HoldRatioWrap = styled9.div`
|
|
9146
9195
|
display: flex;
|