@loafmarkets/ui 0.1.151 → 0.1.153
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 +167 -4
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +167 -4
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -7971,6 +7971,7 @@ function GalleryMapSection({
|
|
|
7971
7971
|
const [carouselIndex, setCarouselIndex] = React5.useState(0);
|
|
7972
7972
|
const [showVideo, setShowVideo] = React5.useState(false);
|
|
7973
7973
|
const [autoPlaying, setAutoPlaying] = React5.useState(autoPlay);
|
|
7974
|
+
const [showFullMap, setShowFullMap] = React5.useState(false);
|
|
7974
7975
|
const resolvedMapUrl = mapUrl ?? (tokenName ? `/map/${tokenName}?embed=true&zoom=14&hideOthers=true` : "about:blank");
|
|
7975
7976
|
React5.useEffect(() => {
|
|
7976
7977
|
if (!autoPlaying || images.length <= 1) return;
|
|
@@ -8064,7 +8065,13 @@ function GalleryMapSection({
|
|
|
8064
8065
|
/* @__PURE__ */ jsxRuntime.jsx(bi.BiMap, {}),
|
|
8065
8066
|
" Location"
|
|
8066
8067
|
] }),
|
|
8067
|
-
/* @__PURE__ */ jsxRuntime.
|
|
8068
|
+
/* @__PURE__ */ jsxRuntime.jsxs(MapHeaderRight, { children: [
|
|
8069
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: propertyLocation }),
|
|
8070
|
+
/* @__PURE__ */ jsxRuntime.jsxs("button", { type: "button", onClick: () => setShowFullMap(true), children: [
|
|
8071
|
+
/* @__PURE__ */ jsxRuntime.jsx("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", style: { width: 14, height: 14 }, children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M8 3H5a2 2 0 00-2 2v3m18 0V5a2 2 0 00-2-2h-3m0 18h3a2 2 0 002-2v-3M3 16v3a2 2 0 002 2h3" }) }),
|
|
8072
|
+
"Full Screen"
|
|
8073
|
+
] })
|
|
8074
|
+
] })
|
|
8068
8075
|
] }),
|
|
8069
8076
|
/* @__PURE__ */ jsxRuntime.jsxs(MapFrame, { children: [
|
|
8070
8077
|
/* @__PURE__ */ jsxRuntime.jsx(IframeShield, { onClick: (e) => e.currentTarget.style.display = "none" }),
|
|
@@ -8074,17 +8081,73 @@ function GalleryMapSection({
|
|
|
8074
8081
|
src: resolvedMapUrl,
|
|
8075
8082
|
width: "100%",
|
|
8076
8083
|
height: "100%",
|
|
8077
|
-
style: { border: 0, minHeight:
|
|
8084
|
+
style: { border: 0, minHeight: 380, pointerEvents: "auto" },
|
|
8078
8085
|
allow: "autoplay; fullscreen; web-share; xr-spatial-tracking;",
|
|
8079
8086
|
title: "Property Location",
|
|
8080
8087
|
referrerPolicy: "unsafe-url",
|
|
8081
8088
|
tabIndex: -1
|
|
8082
8089
|
}
|
|
8083
8090
|
)
|
|
8091
|
+
] }),
|
|
8092
|
+
/* @__PURE__ */ jsxRuntime.jsxs(SuburbProfile, { children: [
|
|
8093
|
+
/* @__PURE__ */ jsxRuntime.jsxs(SuburbProfileTitle, { children: [
|
|
8094
|
+
"Suburb Profile \u2014 ",
|
|
8095
|
+
propertyLocation.split(",")[0]?.trim() || propertyLocation
|
|
8096
|
+
] }),
|
|
8097
|
+
/* @__PURE__ */ jsxRuntime.jsxs(SuburbStatsGrid, { children: [
|
|
8098
|
+
/* @__PURE__ */ jsxRuntime.jsxs(SuburbStat, { children: [
|
|
8099
|
+
/* @__PURE__ */ jsxRuntime.jsx(SuburbStatLabel, { children: "Median House Price" }),
|
|
8100
|
+
/* @__PURE__ */ jsxRuntime.jsx(SuburbStatValue, { children: "$6.2M" })
|
|
8101
|
+
] }),
|
|
8102
|
+
/* @__PURE__ */ jsxRuntime.jsxs(SuburbStat, { children: [
|
|
8103
|
+
/* @__PURE__ */ jsxRuntime.jsx(SuburbStatLabel, { children: "5yr Growth" }),
|
|
8104
|
+
/* @__PURE__ */ jsxRuntime.jsx(SuburbStatValue, { children: "+42%" })
|
|
8105
|
+
] }),
|
|
8106
|
+
/* @__PURE__ */ jsxRuntime.jsxs(SuburbStat, { children: [
|
|
8107
|
+
/* @__PURE__ */ jsxRuntime.jsx(SuburbStatLabel, { children: "Rental Yield" }),
|
|
8108
|
+
/* @__PURE__ */ jsxRuntime.jsx(SuburbStatValue, { children: "2.1%" })
|
|
8109
|
+
] }),
|
|
8110
|
+
/* @__PURE__ */ jsxRuntime.jsxs(SuburbStat, { children: [
|
|
8111
|
+
/* @__PURE__ */ jsxRuntime.jsx(SuburbStatLabel, { children: "Population" }),
|
|
8112
|
+
/* @__PURE__ */ jsxRuntime.jsx(SuburbStatValue, { children: "30,200" })
|
|
8113
|
+
] })
|
|
8114
|
+
] }),
|
|
8115
|
+
/* @__PURE__ */ jsxRuntime.jsx(SuburbDesc, { children: "Premium harbourside suburb on Sydney's Lower North Shore. Known for heritage homes, village atmosphere, and proximity to Taronga Zoo and Balmoral Beach." })
|
|
8084
8116
|
] })
|
|
8085
|
-
] })
|
|
8117
|
+
] }),
|
|
8118
|
+
showFullMap && /* @__PURE__ */ jsxRuntime.jsx(FullMapPopup, { onClose: () => setShowFullMap(false) })
|
|
8086
8119
|
] });
|
|
8087
8120
|
}
|
|
8121
|
+
function FullMapPopup({ onClose }) {
|
|
8122
|
+
React5.useEffect(() => {
|
|
8123
|
+
const handleEsc = (e) => {
|
|
8124
|
+
if (e.key === "Escape") onClose();
|
|
8125
|
+
};
|
|
8126
|
+
window.addEventListener("keydown", handleEsc);
|
|
8127
|
+
return () => window.removeEventListener("keydown", handleEsc);
|
|
8128
|
+
}, [onClose]);
|
|
8129
|
+
return /* @__PURE__ */ jsxRuntime.jsx(FullMapOverlay, { onClick: onClose, children: /* @__PURE__ */ jsxRuntime.jsxs(FullMapPanel, { onClick: (e) => e.stopPropagation(), children: [
|
|
8130
|
+
/* @__PURE__ */ jsxRuntime.jsxs(FullMapHeader, { children: [
|
|
8131
|
+
/* @__PURE__ */ jsxRuntime.jsxs(FullMapTitle, { children: [
|
|
8132
|
+
/* @__PURE__ */ jsxRuntime.jsx(bi.BiMap, {}),
|
|
8133
|
+
" Map View"
|
|
8134
|
+
] }),
|
|
8135
|
+
/* @__PURE__ */ jsxRuntime.jsx(FullMapClose, { onClick: onClose, "aria-label": "Close map", children: "\u2715" })
|
|
8136
|
+
] }),
|
|
8137
|
+
/* @__PURE__ */ jsxRuntime.jsx(FullMapFrame, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
8138
|
+
"iframe",
|
|
8139
|
+
{
|
|
8140
|
+
src: "/map",
|
|
8141
|
+
width: "100%",
|
|
8142
|
+
height: "100%",
|
|
8143
|
+
style: { border: 0 },
|
|
8144
|
+
allow: "autoplay; fullscreen; web-share; xr-spatial-tracking;",
|
|
8145
|
+
title: "Full Screen Map",
|
|
8146
|
+
referrerPolicy: "unsafe-url"
|
|
8147
|
+
}
|
|
8148
|
+
) })
|
|
8149
|
+
] }) });
|
|
8150
|
+
}
|
|
8088
8151
|
var Row = styled9__default.default.div`
|
|
8089
8152
|
display: grid;
|
|
8090
8153
|
grid-template-columns: 2fr 1fr;
|
|
@@ -8202,11 +8265,111 @@ var MapPanel = styled9__default.default(PanelBase)`
|
|
|
8202
8265
|
min-width: 0; overflow: hidden;
|
|
8203
8266
|
`;
|
|
8204
8267
|
var MapFrame = styled9__default.default.div`
|
|
8205
|
-
flex: 1; border-radius: 6px; overflow: hidden; min-height:
|
|
8268
|
+
flex: 1; border-radius: 6px; overflow: hidden; min-height: 380px; position: relative;
|
|
8206
8269
|
`;
|
|
8207
8270
|
var IframeShield = styled9__default.default.div`
|
|
8208
8271
|
position: absolute; inset: 0; z-index: 1; cursor: pointer;
|
|
8209
8272
|
`;
|
|
8273
|
+
var SuburbProfile = styled9__default.default.div`
|
|
8274
|
+
margin-top: 1rem;
|
|
8275
|
+
padding-top: 0.85rem;
|
|
8276
|
+
border-top: 1px solid rgba(255,255,255,0.06);
|
|
8277
|
+
`;
|
|
8278
|
+
var SuburbProfileTitle = styled9__default.default.div`
|
|
8279
|
+
font-size: 0.65rem;
|
|
8280
|
+
color: #D4AF37;
|
|
8281
|
+
text-transform: uppercase;
|
|
8282
|
+
letter-spacing: 0.1em;
|
|
8283
|
+
font-weight: 600;
|
|
8284
|
+
margin-bottom: 0.75rem;
|
|
8285
|
+
`;
|
|
8286
|
+
var SuburbStatsGrid = styled9__default.default.div`
|
|
8287
|
+
display: grid;
|
|
8288
|
+
grid-template-columns: 1fr 1fr;
|
|
8289
|
+
gap: 0.5rem;
|
|
8290
|
+
margin-bottom: 0.75rem;
|
|
8291
|
+
`;
|
|
8292
|
+
var SuburbStat = styled9__default.default.div`
|
|
8293
|
+
background: rgba(255,255,255,0.03);
|
|
8294
|
+
border-radius: 6px;
|
|
8295
|
+
padding: 0.5rem 0.65rem;
|
|
8296
|
+
border: 1px solid rgba(255,255,255,0.04);
|
|
8297
|
+
`;
|
|
8298
|
+
var SuburbStatLabel = styled9__default.default.div`
|
|
8299
|
+
font-size: 0.6rem;
|
|
8300
|
+
color: rgba(255,255,255,0.4);
|
|
8301
|
+
text-transform: uppercase;
|
|
8302
|
+
letter-spacing: 0.06em;
|
|
8303
|
+
margin-bottom: 0.2rem;
|
|
8304
|
+
`;
|
|
8305
|
+
var SuburbStatValue = styled9__default.default.div`
|
|
8306
|
+
font-size: 0.9rem;
|
|
8307
|
+
font-weight: 600;
|
|
8308
|
+
color: #fff;
|
|
8309
|
+
font-variant-numeric: tabular-nums;
|
|
8310
|
+
`;
|
|
8311
|
+
var SuburbDesc = styled9__default.default.p`
|
|
8312
|
+
margin: 0;
|
|
8313
|
+
font-size: 0.75rem;
|
|
8314
|
+
color: rgba(255,255,255,0.45);
|
|
8315
|
+
line-height: 1.5;
|
|
8316
|
+
`;
|
|
8317
|
+
var MapHeaderRight = styled9__default.default.div`
|
|
8318
|
+
display: flex;
|
|
8319
|
+
align-items: center;
|
|
8320
|
+
gap: 0.75rem;
|
|
8321
|
+
`;
|
|
8322
|
+
var FullMapOverlay = styled9__default.default.div`
|
|
8323
|
+
position: fixed;
|
|
8324
|
+
inset: 0;
|
|
8325
|
+
background: rgba(0,0,0,0.75);
|
|
8326
|
+
z-index: 9999;
|
|
8327
|
+
display: flex;
|
|
8328
|
+
align-items: center;
|
|
8329
|
+
justify-content: center;
|
|
8330
|
+
backdrop-filter: blur(4px);
|
|
8331
|
+
`;
|
|
8332
|
+
var FullMapPanel = styled9__default.default.div`
|
|
8333
|
+
background: #111;
|
|
8334
|
+
border: 1px solid rgba(255,255,255,0.08);
|
|
8335
|
+
border-radius: 14px;
|
|
8336
|
+
width: 94%;
|
|
8337
|
+
height: 90vh;
|
|
8338
|
+
display: flex;
|
|
8339
|
+
flex-direction: column;
|
|
8340
|
+
overflow: hidden;
|
|
8341
|
+
`;
|
|
8342
|
+
var FullMapHeader = styled9__default.default.div`
|
|
8343
|
+
display: flex;
|
|
8344
|
+
align-items: center;
|
|
8345
|
+
justify-content: space-between;
|
|
8346
|
+
padding: 1rem 1.5rem;
|
|
8347
|
+
border-bottom: 1px solid rgba(255,255,255,0.06);
|
|
8348
|
+
flex-shrink: 0;
|
|
8349
|
+
`;
|
|
8350
|
+
var FullMapTitle = styled9__default.default.h3`
|
|
8351
|
+
margin: 0;
|
|
8352
|
+
font-size: 1.1rem;
|
|
8353
|
+
font-weight: 600;
|
|
8354
|
+
color: #fff;
|
|
8355
|
+
display: flex;
|
|
8356
|
+
align-items: center;
|
|
8357
|
+
gap: 0.5rem;
|
|
8358
|
+
`;
|
|
8359
|
+
var FullMapClose = styled9__default.default.button`
|
|
8360
|
+
background: none;
|
|
8361
|
+
border: none;
|
|
8362
|
+
color: rgba(255,255,255,0.4);
|
|
8363
|
+
font-size: 1.1rem;
|
|
8364
|
+
cursor: pointer;
|
|
8365
|
+
padding: 0.25rem;
|
|
8366
|
+
line-height: 1;
|
|
8367
|
+
&:hover { color: #fff; }
|
|
8368
|
+
`;
|
|
8369
|
+
var FullMapFrame = styled9__default.default.div`
|
|
8370
|
+
flex: 1;
|
|
8371
|
+
min-height: 0;
|
|
8372
|
+
`;
|
|
8210
8373
|
var BedIcon = /* @__PURE__ */ jsxRuntime.jsxs("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", children: [
|
|
8211
8374
|
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M2 4v16" }),
|
|
8212
8375
|
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M2 8h18a2 2 0 0 1 2 2v10" }),
|