@burdenoff/microfe-housingvista 2026.930.2 → 2026.1001.2

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.
@@ -19,19 +19,19 @@ import { CoordinatePicker as Se } from "../../components/maps/CoordinatePicker.j
19
19
  import { amenityOptions as d } from "../../utils/amenities.js";
20
20
  import { currencyOptions as Ce, facingOptions as we, furnishingOptions as Te, propertyCategoryOptions as Ee, propertyTypeOptions as De } from "../../utils/propertyOptions.js";
21
21
  import { useMemo as Oe, useState as f } from "react";
22
- import { ArrowLeft as ke, BadgeCheck as Ae, Bath as je, Bed as Me, Building as Ne, Calculator as Pe, Calendar as Fe, Car as Ie, CheckCircle as p, ChevronLeft as Le, ChevronRight as Re, Compass as ze, DollarSign as Be, Download as Ve, Dumbbell as m, Flame as He, Heart as Ue, KeyRound as We, MapPin as Ge, MessageSquare as Ke, Navigation as qe, ParkingCircle as Je, Pencil as Ye, Share2 as Xe, Shield as h, Square as Ze, Trash2 as Qe, TreePine as g, TrendingUp as $e, Utensils as et, Waves as _, Wifi as tt, Wind as nt } from "lucide-react";
23
- import { useLocation as rt, useNavigate as it, useParams as at } from "react-router";
24
- import { Fragment as ot, jsx as v, jsxs as y } from "react/jsx-runtime";
25
- import { Button as b, EmphasisPanel as st, NextSteps as ct, PagePurpose as lt, ResponsiveDialog as x, ResponsiveDialogContent as S, ResponsiveDialogDescription as C, ResponsiveDialogFooter as w, ResponsiveDialogHeader as T, ResponsiveDialogTitle as E } from "@burdenoff/fe-libs/ui";
22
+ import { ArrowLeft as ke, BadgeCheck as Ae, Bath as je, Bed as Me, Building as Ne, Calculator as Pe, Calendar as Fe, Car as Ie, CheckCircle as p, ChevronLeft as Le, ChevronRight as Re, Compass as ze, DollarSign as Be, Download as Ve, Dumbbell as m, Flame as He, Heart as Ue, KeyRound as We, MapPin as Ge, MessageSquare as Ke, Navigation as qe, ParkingCircle as Je, Pencil as Ye, PencilRuler as Xe, Share2 as Ze, Shield as h, Square as Qe, Trash2 as $e, TreePine as g, TrendingUp as et, Utensils as tt, Waves as nt, Wifi as _, Wind as rt } from "lucide-react";
23
+ import { useLocation as it, useNavigate as at, useParams as ot } from "react-router";
24
+ import { Fragment as st, jsx as v, jsxs as y } from "react/jsx-runtime";
25
+ import { Button as b, EmphasisPanel as ct, NextSteps as lt, PagePurpose as ut, ResponsiveDialog as x, ResponsiveDialogContent as S, ResponsiveDialogDescription as C, ResponsiveDialogFooter as w, ResponsiveDialogHeader as T, ResponsiveDialogTitle as E } from "@burdenoff/fe-libs/ui";
26
26
  //#region src/housingvista/pages/properties/PropertyDetailPage.tsx
27
- var ut = {
27
+ var dt = {
28
28
  for_sale: "success",
29
29
  for_rent: "info",
30
30
  sold: "muted",
31
31
  rented: "muted",
32
32
  under_contract: "warning",
33
33
  off_market: "error"
34
- }, dt = [
34
+ }, ft = [
35
35
  {
36
36
  value: "for_sale",
37
37
  label: "For Sale"
@@ -56,7 +56,7 @@ var ut = {
56
56
  value: "off_market",
57
57
  label: "Off Market"
58
58
  }
59
- ], ft = [
59
+ ], pt = [
60
60
  {
61
61
  value: "sale",
62
62
  label: "Sale"
@@ -69,7 +69,7 @@ var ut = {
69
69
  value: "lease",
70
70
  label: "Lease"
71
71
  }
72
- ], pt = [
72
+ ], mt = [
73
73
  {
74
74
  value: "",
75
75
  label: "— (one-time)"
@@ -86,7 +86,7 @@ var ut = {
86
86
  value: "yearly",
87
87
  label: "Yearly"
88
88
  }
89
- ], mt = {
89
+ ], ht = {
90
90
  title: "",
91
91
  description: "",
92
92
  status: "for_sale",
@@ -129,7 +129,7 @@ var ut = {
129
129
  }, O = (e) => {
130
130
  let t = D(e);
131
131
  return t === null ? void 0 : t;
132
- }, k = (e) => e == null ? "" : String(e), A = (e) => e ?? "", ht = (e) => e.split(",").map((e) => e.trim()).filter(Boolean), gt = [
132
+ }, k = (e) => e == null ? "" : String(e), A = (e) => e ?? "", gt = (e) => e.split(",").map((e) => e.trim()).filter(Boolean), _t = [
133
133
  {
134
134
  key: "bedrooms",
135
135
  label: "Bedrooms",
@@ -191,11 +191,11 @@ var ut = {
191
191
  step: "1"
192
192
  }
193
193
  ];
194
- function _t() {
194
+ function vt() {
195
195
  let e = new Date(Date.now() + 10080 * 60 * 1e3);
196
196
  return (/* @__PURE__ */ new Date(e.getTime() - e.getTimezoneOffset() * 6e4)).toISOString().slice(0, 16);
197
197
  }
198
- var vt = [
198
+ var yt = [
199
199
  {
200
200
  id: "details",
201
201
  label: "Details"
@@ -208,10 +208,10 @@ var vt = [
208
208
  id: "location",
209
209
  label: "Location"
210
210
  }
211
- ], j = "h-10 w-full rounded-md border border-border-subtle bg-bg-surface px-3 text-sm text-text-primary placeholder:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]", yt = [
211
+ ], j = "h-10 w-full rounded-md border border-border-subtle bg-bg-surface px-3 text-sm text-text-primary placeholder:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]", bt = [
212
212
  {
213
213
  match: /pool|swim/i,
214
- icon: _
214
+ icon: nt
215
215
  },
216
216
  {
217
217
  match: /gym|fitness/i,
@@ -231,11 +231,11 @@ var vt = [
231
231
  },
232
232
  {
233
233
  match: /wifi|internet|broadband/i,
234
- icon: tt
234
+ icon: _
235
235
  },
236
236
  {
237
237
  match: /a\/?c|air.?condition|central air|hvac/i,
238
- icon: nt
238
+ icon: rt
239
239
  },
240
240
  {
241
241
  match: /fire|chimney|heat/i,
@@ -243,14 +243,14 @@ var vt = [
243
243
  },
244
244
  {
245
245
  match: /kitchen|modular|dining/i,
246
- icon: et
246
+ icon: tt
247
247
  },
248
248
  {
249
249
  match: /car|garage/i,
250
250
  icon: Ie
251
251
  }
252
- ], bt = (e) => yt.find((t) => t.match.test(e))?.icon ?? p;
253
- function xt(e) {
252
+ ], xt = (e) => bt.find((t) => t.match.test(e))?.icon ?? p;
253
+ function St(e) {
254
254
  switch (e.toLowerCase()) {
255
255
  case "vacant": return "Vacant — accepting applications";
256
256
  case "occupied": return "Currently occupied";
@@ -259,7 +259,7 @@ function xt(e) {
259
259
  default: return e.replace(/[-_]/g, " ");
260
260
  }
261
261
  }
262
- function St(e) {
262
+ function Ct(e) {
263
263
  switch (e.toLowerCase()) {
264
264
  case "vacant": return "success";
265
265
  case "occupied": return "muted";
@@ -268,20 +268,20 @@ function St(e) {
268
268
  default: return "muted";
269
269
  }
270
270
  }
271
- var Ct = () => {
272
- let { id: p } = at(), m = it(), He = rt(), { emit: Je, emitResource: h } = ee();
271
+ var wt = () => {
272
+ let { id: p } = ot(), m = at(), He = it(), { emit: Je, emitResource: h } = ee();
273
273
  te("housingvista.property.viewed", p);
274
- let { data: g, loading: et } = ae(p), { data: _ } = ie({ pagination: {
274
+ let { data: g, loading: tt } = ae(p), { data: nt } = ie({ pagination: {
275
275
  limit: 8,
276
276
  offset: 0
277
- } }), { data: tt } = le(), { data: nt } = se({
277
+ } }), { data: _ } = le(), { data: rt } = se({
278
278
  filter: p ? { propertyId: p } : void 0,
279
279
  pagination: {
280
280
  limit: 1,
281
281
  offset: 0
282
282
  }
283
- }), { saveShortlist: yt, loading: Ct } = ce(), { removeShortlist: wt, loading: Tt } = oe(), { bookViewing: Et, loading: Dt } = l(), { submitOffer: Ot, loading: kt } = ue(), { updateProperty: At, loading: M } = fe(), { deleteProperty: jt, loading: Mt } = re(), { submitRentalApplication: Nt, loading: Pt } = de(), { createInvestment: Ft, loading: It } = ne(), { updatePropertyReraStatus: Lt, loading: Rt } = pe(), zt = Oe(() => _.filter((e) => e.id !== p).slice(0, 3), [_, p]), N = Oe(() => tt.some((e) => e.propertyId === p), [tt, p]), [P, Bt] = f(0), [F, Vt] = f("details"), [Ht, I] = f(!1), [Ut, L] = f(!1), [Wt, R] = f(!1), [Gt, Kt] = f(!1), [qt, z] = f(!1), [Jt, Yt] = f(!1), [B, Xt] = f(""), [Zt, Qt] = f(""), [$t, en] = f(""), [tn, nn] = f(""), [rn, an] = f(""), [on, sn] = f(""), [cn, ln] = f(""), [un, dn] = f("8"), [V, fn] = f(!0), [pn, mn] = f("6"), [H, hn] = f(!1), [gn, _n] = f("20"), [vn, yn] = f("8.5"), [bn, xn] = f("20"), [U, Sn] = f(""), [Cn, wn] = f("in_person"), [Tn, En] = f(""), [Dn, On] = f(""), [kn, An] = f(""), [jn, Mn] = f(""), [Nn, Pn] = f(""), [Fn, W] = f(""), [G, In] = f(mt), [Ln, Rn] = f(mt);
284
- if (et) return /* @__PURE__ */ y("div", {
283
+ }), { saveShortlist: bt, loading: wt } = ce(), { removeShortlist: Tt, loading: Et } = oe(), { bookViewing: Dt, loading: Ot } = l(), { submitOffer: kt, loading: At } = ue(), { updateProperty: jt, loading: M } = fe(), { deleteProperty: Mt, loading: Nt } = re(), { submitRentalApplication: Pt, loading: Ft } = de(), { createInvestment: It, loading: Lt } = ne(), { updatePropertyReraStatus: Rt, loading: zt } = pe(), Bt = Oe(() => nt.filter((e) => e.id !== p).slice(0, 3), [nt, p]), N = Oe(() => _.some((e) => e.propertyId === p), [_, p]), [P, F] = f(0), [I, Vt] = f("details"), [Ht, L] = f(!1), [Ut, R] = f(!1), [Wt, z] = f(!1), [Gt, Kt] = f(!1), [qt, B] = f(!1), [Jt, Yt] = f(!1), [Xt, Zt] = f(""), [Qt, $t] = f(""), [en, tn] = f(""), [nn, rn] = f(""), [an, on] = f(""), [sn, cn] = f(""), [ln, un] = f(""), [dn, fn] = f("8"), [V, pn] = f(!0), [mn, hn] = f("6"), [H, gn] = f(!1), [_n, vn] = f("20"), [yn, bn] = f("8.5"), [xn, Sn] = f("20"), [U, Cn] = f(""), [wn, Tn] = f("in_person"), [En, Dn] = f(""), [On, kn] = f(""), [An, jn] = f(""), [Mn, Nn] = f(""), [Pn, Fn] = f(""), [In, W] = f(""), [G, Ln] = f(ht), [Rn, zn] = f(ht);
284
+ if (tt) return /* @__PURE__ */ y("div", {
285
285
  className: "space-y-6 p-6",
286
286
  children: [/* @__PURE__ */ v(c, { className: "h-80" }), /* @__PURE__ */ v(c, { variant: "detail" })]
287
287
  });
@@ -299,56 +299,56 @@ var Ct = () => {
299
299
  })
300
300
  })
301
301
  });
302
- let zn = [{
302
+ let Bn = [{
303
303
  label: "Properties",
304
304
  href: "../"
305
- }, { label: g.title }], Bn = (e) => {
305
+ }, { label: g.title }], Vn = (e) => {
306
306
  let t = n(e.amount, e.currency);
307
307
  return e.type === "rent" && e.period ? `${t}/${e.period.replace("ly", "")}` : t;
308
- }, Vn = () => Bt((e) => e === g.images.length - 1 ? 0 : e + 1), Hn = () => Bt((e) => e === 0 ? g.images.length - 1 : e - 1), Un = () => {
308
+ }, Hn = () => F((e) => e === g.images.length - 1 ? 0 : e + 1), Un = () => F((e) => e === 0 ? g.images.length - 1 : e - 1), Wn = () => {
309
309
  navigator.share ? navigator.share({
310
310
  title: g.title,
311
311
  text: g.description,
312
312
  url: window.location.href
313
313
  }) : (navigator.clipboard.writeText(window.location.href), u.info("Link copied", "The property link is on your clipboard."));
314
- }, Wn = async () => {
314
+ }, Gn = async () => {
315
315
  try {
316
- N ? (await wt(g.id), u.success("Removed from shortlist")) : (await yt(g.id), h("housingvista.shortlist.property_added", g.id), u.success("Saved to shortlist"));
316
+ N ? (await Tt(g.id), u.success("Removed from shortlist")) : (await bt(g.id), h("housingvista.shortlist.property_added", g.id), u.success("Saved to shortlist"));
317
317
  } catch (e) {
318
318
  u.error("Could not update shortlist", e.message);
319
319
  }
320
- }, Gn = async (e) => {
320
+ }, Kn = async (e) => {
321
321
  if (e.preventDefault(), U) try {
322
- await Et({
322
+ await Dt({
323
323
  propertyId: g.id,
324
324
  scheduledAt: new Date(U).toISOString(),
325
- type: Cn,
326
- attendeeName: Tn.trim() || void 0,
327
- attendeeEmail: Dn.trim() || void 0,
328
- notes: kn.trim() || void 0
329
- }), h("housingvista.viewing.scheduled", g.id), u.success("Viewing requested", "The owner will confirm your slot shortly."), I(!1), Sn(""), En(""), On(""), An("");
325
+ type: wn,
326
+ attendeeName: En.trim() || void 0,
327
+ attendeeEmail: On.trim() || void 0,
328
+ notes: An.trim() || void 0
329
+ }), h("housingvista.viewing.scheduled", g.id), u.success("Viewing requested", "The owner will confirm your slot shortly."), L(!1), Cn(""), Dn(""), kn(""), jn("");
330
330
  } catch (e) {
331
331
  u.error("Could not book viewing", e.message);
332
332
  }
333
- }, Kn = async (e) => {
333
+ }, qn = async (e) => {
334
334
  e.preventDefault();
335
- let t = Number(jn);
335
+ let t = Number(Mn);
336
336
  if (!t || t <= 0) {
337
337
  u.warning("Enter a valid offer amount");
338
338
  return;
339
339
  }
340
340
  try {
341
- await Ot({
341
+ await kt({
342
342
  propertyId: g.id,
343
343
  amount: t,
344
344
  currency: g.price.currency,
345
- notes: Nn.trim() || void 0,
346
- expiresAt: Fn ? new Date(Fn).toISOString() : void 0
347
- }), h("housingvista.offer.created", g.id), u.success("Offer submitted", `Your offer of ${n(t, g.price.currency)} was sent.`), L(!1), Mn(""), Pn(""), W("");
345
+ notes: Pn.trim() || void 0,
346
+ expiresAt: In ? new Date(In).toISOString() : void 0
347
+ }), h("housingvista.offer.created", g.id), u.success("Offer submitted", `Your offer of ${n(t, g.price.currency)} was sent.`), R(!1), Nn(""), Fn(""), W("");
348
348
  } catch (e) {
349
349
  u.error("Could not submit offer", e.message);
350
350
  }
351
- }, qn = () => {
351
+ }, Jn = () => {
352
352
  let e = g.location.coordinates, t = {
353
353
  title: g.title,
354
354
  description: A(g.description),
@@ -388,11 +388,11 @@ var Ct = () => {
388
388
  extraAmenities: g.amenities.filter((e) => !d.some((t) => t.label === e.name)),
389
389
  catalogAmenities: g.amenities.filter((e) => d.some((t) => t.label === e.name))
390
390
  };
391
- In(t), Rn(t), R(!0);
392
- }, K = (e) => In((t) => ({
391
+ Ln(t), zn(t), z(!0);
392
+ }, K = (e) => Ln((t) => ({
393
393
  ...t,
394
394
  ...e
395
- })), q = (e) => e.trim(), Jn = async (e) => {
395
+ })), q = (e) => e.trim(), Yn = async (e) => {
396
396
  e.preventDefault();
397
397
  let t = G.title.trim(), n = G.city.trim(), r = G.state.trim(), i = D(G.bedrooms), a = D(G.bathrooms), o = D(G.totalArea), s = D(G.price);
398
398
  if (!t || !n || !r) {
@@ -415,7 +415,7 @@ var Ct = () => {
415
415
  u.warning("Enter a price greater than zero");
416
416
  return;
417
417
  }
418
- let c = ht(G.landmarks), ee = c.join("|") !== ht(Ln.landmarks).join("|"), te = [...G.amenities].sort().join("|") !== [...Ln.amenities].sort().join("|"), l = {
418
+ let c = gt(G.landmarks), ee = c.join("|") !== gt(Rn.landmarks).join("|"), te = [...G.amenities].sort().join("|") !== [...Rn.amenities].sort().join("|"), l = {
419
419
  title: t,
420
420
  description: q(G.description),
421
421
  status: G.status,
@@ -471,40 +471,40 @@ var Ct = () => {
471
471
  l.amenities = [...t.values()];
472
472
  }
473
473
  try {
474
- await At(g.id, l), h("housingvista.property.updated", g.id), u.success("Property updated"), R(!1);
474
+ await jt(g.id, l), h("housingvista.property.updated", g.id), u.success("Property updated"), z(!1);
475
475
  } catch (e) {
476
476
  u.error("Could not update property", e.message);
477
477
  }
478
- }, Yn = async () => {
478
+ }, Xn = async () => {
479
479
  try {
480
- await jt(g.id), h("housingvista.property.deleted", g.id), u.success("Property deleted"), m("../properties");
480
+ await Mt(g.id), h("housingvista.property.deleted", g.id), u.success("Property deleted"), m("../properties");
481
481
  } catch (e) {
482
482
  u.error("Could not delete property", e.message);
483
483
  }
484
- }, J = nt[0], Y = J?.id, Xn = async (e) => {
484
+ }, J = rt[0], Y = J?.id, Zn = async (e) => {
485
485
  if (e.preventDefault(), !Y) {
486
486
  u.warning("No rental unit is available for this property yet");
487
487
  return;
488
488
  }
489
- if (!B.trim() || !Zt.trim()) {
489
+ if (!Xt.trim() || !Qt.trim()) {
490
490
  u.warning("Enter your name and email to apply");
491
491
  return;
492
492
  }
493
493
  try {
494
- await Nt({
494
+ await Pt({
495
495
  rentalUnitId: Y,
496
- applicantName: B.trim(),
497
- applicantEmail: Zt.trim(),
498
- applicantPhone: $t.trim() || void 0,
499
- monthlyIncome: tn ? Number(tn) : void 0,
500
- moveInDate: rn ? new Date(rn).toISOString() : void 0
501
- }), u.success("Application submitted", "The owner will review your rental application shortly."), z(!1), Xt(""), Qt(""), en(""), nn(""), an("");
496
+ applicantName: Xt.trim(),
497
+ applicantEmail: Qt.trim(),
498
+ applicantPhone: en.trim() || void 0,
499
+ monthlyIncome: nn ? Number(nn) : void 0,
500
+ moveInDate: an ? new Date(an).toISOString() : void 0
501
+ }), u.success("Application submitted", "The owner will review your rental application shortly."), B(!1), Zt(""), $t(""), tn(""), rn(""), on("");
502
502
  } catch (e) {
503
503
  u.error("Could not submit application", e.message);
504
504
  }
505
- }, Zn = async () => {
505
+ }, Qn = async () => {
506
506
  try {
507
- await Ft({
507
+ await It({
508
508
  propertyId: g.id,
509
509
  title: `${g.title} — investment`,
510
510
  status: "active",
@@ -516,20 +516,20 @@ var Ct = () => {
516
516
  } catch (e) {
517
517
  u.error("Could not track investment", e.message);
518
518
  }
519
- }, Qn = async (e) => {
519
+ }, $n = async (e) => {
520
520
  try {
521
- await Lt(g.id, e), u.success(e === "verified" ? "RERA registration verified" : "RERA registration rejected", g.title);
521
+ await Rt(g.id, e), u.success(e === "verified" ? "RERA registration verified" : "RERA registration rejected", g.title);
522
522
  } catch (e) {
523
523
  u.error("Could not update RERA status", e.message);
524
524
  }
525
- }, X = g.price.amount, $n = Number(on) || Math.round(X * .005), er = Number(cn) || Math.round(X * .0015), tr = $n * 12, nr = X > 0 ? tr / X * 100 : 0, rr = tr - er * 12, ir = X > 0 ? rr / X * 100 : 0, ar = Math.max(0, Number(un) || 0) / 100, or = Array.from({ length: 6 }, (e, t) => ({
525
+ }, X = g.price.amount, er = Number(sn) || Math.round(X * .005), tr = Number(ln) || Math.round(X * .0015), nr = er * 12, rr = X > 0 ? nr / X * 100 : 0, ir = nr - tr * 12, ar = X > 0 ? ir / X * 100 : 0, or = Math.max(0, Number(dn) || 0) / 100, sr = Array.from({ length: 6 }, (e, t) => ({
526
526
  label: t === 0 ? "Now" : `Yr ${t}`,
527
- value: Math.round(X * (1 + ar) ** +t)
528
- })), sr = or[or.length - 1].value, cr = sr - X + rr * 5, lr = X > 0 ? cr / X * 100 : 0, ur = Math.max(0, Number(pn) || 0), dr = V ? ur / 100 * X : 0, fr = Math.min(100, Math.max(0, Number(gn) || 0)), pr = Math.max(0, Number(vn) || 0) / 100, mr = Math.max(1, Number(bn) || 1), hr = H ? fr / 100 * X : X, Z = H ? X - hr : 0, Q = pr / 12, gr = mr * 12, _r = H && Z > 0 ? Q > 0 ? Z * Q * (1 + Q) ** +gr / ((1 + Q) ** +gr - 1) : Z / gr : 0, vr = _r * 12, $ = hr + dr, yr = rr - vr, br = $ > 0 ? yr / $ * 100 : 0;
527
+ value: Math.round(X * (1 + or) ** +t)
528
+ })), cr = sr[sr.length - 1].value, lr = cr - X + ir * 5, ur = X > 0 ? lr / X * 100 : 0, dr = Math.max(0, Number(mn) || 0), fr = V ? dr / 100 * X : 0, pr = Math.min(100, Math.max(0, Number(_n) || 0)), mr = Math.max(0, Number(yn) || 0) / 100, hr = Math.max(1, Number(xn) || 1), gr = H ? pr / 100 * X : X, Z = H ? X - gr : 0, Q = mr / 12, _r = hr * 12, vr = H && Z > 0 ? Q > 0 ? Z * Q * (1 + Q) ** +_r / ((1 + Q) ** +_r - 1) : Z / _r : 0, yr = vr * 12, $ = gr + fr, br = ir - yr, xr = $ > 0 ? br / $ * 100 : 0;
529
529
  return /* @__PURE__ */ y("div", {
530
530
  className: "space-y-6 p-6",
531
531
  children: [
532
- /* @__PURE__ */ v(s, { items: zn }),
532
+ /* @__PURE__ */ v(s, { items: Bn }),
533
533
  /* @__PURE__ */ y("div", {
534
534
  className: "flex flex-wrap items-center gap-3",
535
535
  children: [
@@ -540,7 +540,7 @@ var Ct = () => {
540
540
  }),
541
541
  /* @__PURE__ */ v(a, {
542
542
  label: g.status.replace("_", " "),
543
- variant: ut[g.status] ?? "default",
543
+ variant: dt[g.status] ?? "default",
544
544
  dot: !0
545
545
  }),
546
546
  g.verificationStatus === "verified" && /* @__PURE__ */ v(a, {
@@ -558,37 +558,37 @@ var Ct = () => {
558
558
  type: "button",
559
559
  variant: "outline",
560
560
  size: "sm",
561
- onClick: qn,
561
+ onClick: Jn,
562
562
  children: [/* @__PURE__ */ v(Ye, { className: "mr-1.5 h-4 w-4" }), "Edit"]
563
563
  }), /* @__PURE__ */ y(b, {
564
564
  type: "button",
565
565
  variant: "outline",
566
566
  size: "sm",
567
567
  onClick: () => Kt(!0),
568
- children: [/* @__PURE__ */ v(Qe, { className: "mr-1.5 h-4 w-4" }), "Delete"]
568
+ children: [/* @__PURE__ */ v($e, { className: "mr-1.5 h-4 w-4" }), "Delete"]
569
569
  })]
570
570
  })
571
571
  ]
572
572
  }),
573
- /* @__PURE__ */ v(lt, {
573
+ /* @__PURE__ */ v(ut, {
574
574
  className: "max-w-3xl",
575
575
  children: "Everything you need to evaluate this property in one place — photos, specifications, amenities, and location. Use it to shortlist the property, schedule a viewing, or make an offer."
576
576
  }),
577
- /* @__PURE__ */ v(ct, {
577
+ /* @__PURE__ */ v(lt, {
578
578
  storageKey: "housingvista-property-detail",
579
579
  steps: [
580
580
  {
581
581
  id: "schedule",
582
582
  label: "Schedule a viewing",
583
583
  description: "Book a time to see the property in person or virtually.",
584
- onClick: () => I(!0)
584
+ onClick: () => L(!0)
585
585
  },
586
586
  {
587
587
  id: "offer",
588
588
  label: "Make an offer",
589
589
  description: "Submit a price and let the owner respond.",
590
590
  onClick: () => {
591
- W(_t()), L(!0);
591
+ W(vt()), R(!0);
592
592
  }
593
593
  },
594
594
  {
@@ -601,82 +601,107 @@ var Ct = () => {
601
601
  }),
602
602
  /* @__PURE__ */ y("div", {
603
603
  className: "space-y-3",
604
- children: [/* @__PURE__ */ y("div", {
605
- className: "relative overflow-hidden rounded-xl border border-border-subtle bg-bg-sunken",
606
- children: [
607
- g.images.length > 0 ? /* @__PURE__ */ v("img", {
608
- src: g.images[P]?.url,
609
- alt: g.images[P]?.title ?? g.title,
610
- className: "h-80 w-full object-cover sm:h-[26rem]"
611
- }) : /* @__PURE__ */ y("div", {
612
- className: "flex h-80 w-full flex-col items-center justify-center gap-3 bg-gradient-to-br from-[var(--color-action-primary-bg)]/12 via-bg-sunken to-[var(--color-accent-blue)]/12 text-text-secondary/70 sm:h-[26rem]",
613
- children: [/* @__PURE__ */ v(Ne, { className: "h-12 w-12" }), /* @__PURE__ */ v("span", {
614
- className: "text-sm font-medium tracking-wide",
615
- children: "No photos yet"
616
- })]
617
- }),
618
- g.images.length > 1 && /* @__PURE__ */ y(ot, { children: [/* @__PURE__ */ v("button", {
619
- onClick: Hn,
620
- "aria-label": "Previous photo",
621
- className: "absolute left-4 top-1/2 -translate-y-1/2 rounded-full bg-bg-overlay/70 p-2 text-text-inverse transition-colors hover:bg-bg-overlay",
622
- children: /* @__PURE__ */ v(Le, { className: "h-5 w-5" })
623
- }), /* @__PURE__ */ v("button", {
624
- onClick: Vn,
625
- "aria-label": "Next photo",
626
- className: "absolute right-4 top-1/2 -translate-y-1/2 rounded-full bg-bg-overlay/70 p-2 text-text-inverse transition-colors hover:bg-bg-overlay",
627
- children: /* @__PURE__ */ v(Re, { className: "h-5 w-5" })
628
- })] }),
629
- g.verificationStatus === "verified" && /* @__PURE__ */ y("div", {
630
- className: "absolute left-4 top-4 inline-flex items-center gap-1.5 rounded-full bg-status-success-bg-subtle px-3 py-1 text-xs font-semibold text-status-success-text shadow-elevation-1 backdrop-blur-sm",
631
- children: [/* @__PURE__ */ v(Ae, { className: "h-4 w-4" }), "Verified listing"]
632
- }),
633
- /* @__PURE__ */ y("div", {
634
- className: "absolute right-4 top-4 flex gap-2",
635
- children: [/* @__PURE__ */ v("button", {
636
- onClick: Wn,
637
- disabled: Ct || Tt,
638
- "aria-label": N ? "Remove from shortlist" : "Save to shortlist",
639
- className: "rounded-full bg-bg-surface/85 p-2 shadow-elevation-1 backdrop-blur-sm transition-colors hover:bg-bg-surface disabled:opacity-60",
640
- children: /* @__PURE__ */ v(Ue, { className: e("h-5 w-5", N ? "fill-status-error-text text-status-error-text" : "text-text-secondary") })
641
- }), /* @__PURE__ */ v("button", {
604
+ children: [
605
+ /* @__PURE__ */ y("div", {
606
+ className: "relative overflow-hidden rounded-xl border border-border-subtle bg-bg-sunken",
607
+ children: [
608
+ g.images.length > 0 ? /* @__PURE__ */ v("img", {
609
+ src: g.images[P]?.url,
610
+ alt: g.images[P]?.title ?? g.title,
611
+ className: "h-80 w-full object-cover sm:h-[26rem]"
612
+ }) : /* @__PURE__ */ y("div", {
613
+ className: "flex h-80 w-full flex-col items-center justify-center gap-3 bg-gradient-to-br from-[var(--color-action-primary-bg)]/12 via-bg-sunken to-[var(--color-accent-blue)]/12 text-text-secondary/70 sm:h-[26rem]",
614
+ children: [/* @__PURE__ */ v(Ne, { className: "h-12 w-12" }), /* @__PURE__ */ v("span", {
615
+ className: "text-sm font-medium tracking-wide",
616
+ children: "No photos yet"
617
+ })]
618
+ }),
619
+ g.images.length > 1 && /* @__PURE__ */ y(st, { children: [/* @__PURE__ */ v("button", {
642
620
  onClick: Un,
643
- "aria-label": "Share this listing",
644
- className: "rounded-full bg-bg-surface/85 p-2 shadow-elevation-1 backdrop-blur-sm transition-colors hover:bg-bg-surface",
645
- children: /* @__PURE__ */ v(Xe, { className: "h-5 w-5 text-text-secondary" })
646
- })]
647
- }),
648
- g.images.length > 0 && /* @__PURE__ */ v("div", {
649
- className: "absolute bottom-4 right-4",
650
- children: /* @__PURE__ */ y("span", {
651
- className: "rounded-md bg-bg-overlay/70 px-2 py-1 text-xs font-medium text-text-inverse",
652
- children: [
653
- P + 1,
654
- " / ",
655
- g.images.length
656
- ]
621
+ "aria-label": "Previous photo",
622
+ className: "absolute left-4 top-1/2 -translate-y-1/2 rounded-full bg-bg-overlay/70 p-2 text-text-inverse transition-colors hover:bg-bg-overlay",
623
+ children: /* @__PURE__ */ v(Le, { className: "h-5 w-5" })
624
+ }), /* @__PURE__ */ v("button", {
625
+ onClick: Hn,
626
+ "aria-label": "Next photo",
627
+ className: "absolute right-4 top-1/2 -translate-y-1/2 rounded-full bg-bg-overlay/70 p-2 text-text-inverse transition-colors hover:bg-bg-overlay",
628
+ children: /* @__PURE__ */ v(Re, { className: "h-5 w-5" })
629
+ })] }),
630
+ g.verificationStatus === "verified" && /* @__PURE__ */ y("div", {
631
+ className: "absolute left-4 top-4 inline-flex items-center gap-1.5 rounded-full bg-status-success-bg-subtle px-3 py-1 text-xs font-semibold text-status-success-text shadow-elevation-1 backdrop-blur-sm",
632
+ children: [/* @__PURE__ */ v(Ae, { className: "h-4 w-4" }), "Verified listing"]
633
+ }),
634
+ /* @__PURE__ */ y("div", {
635
+ className: "absolute right-4 top-4 flex gap-2",
636
+ children: [/* @__PURE__ */ v("button", {
637
+ onClick: Gn,
638
+ disabled: wt || Et,
639
+ "aria-label": N ? "Remove from shortlist" : "Save to shortlist",
640
+ className: "rounded-full bg-bg-surface/85 p-2 shadow-elevation-1 backdrop-blur-sm transition-colors hover:bg-bg-surface disabled:opacity-60",
641
+ children: /* @__PURE__ */ v(Ue, { className: e("h-5 w-5", N ? "fill-status-error-text text-status-error-text" : "text-text-secondary") })
642
+ }), /* @__PURE__ */ v("button", {
643
+ onClick: Wn,
644
+ "aria-label": "Share this listing",
645
+ className: "rounded-full bg-bg-surface/85 p-2 shadow-elevation-1 backdrop-blur-sm transition-colors hover:bg-bg-surface",
646
+ children: /* @__PURE__ */ v(Ze, { className: "h-5 w-5 text-text-secondary" })
647
+ })]
648
+ }),
649
+ g.images.length > 0 && /* @__PURE__ */ v("div", {
650
+ className: "absolute bottom-4 right-4",
651
+ children: /* @__PURE__ */ y("span", {
652
+ className: "rounded-md bg-bg-overlay/70 px-2 py-1 text-xs font-medium text-text-inverse",
653
+ children: [
654
+ P + 1,
655
+ " / ",
656
+ g.images.length
657
+ ]
658
+ })
657
659
  })
658
- })
659
- ]
660
- }), g.images.length > 1 && /* @__PURE__ */ v("div", {
661
- className: "flex gap-3 overflow-x-auto pb-1",
662
- children: g.images.map((t, n) => /* @__PURE__ */ v("button", {
663
- onClick: () => Bt(n),
664
- "aria-label": `View photo ${n + 1}`,
665
- "aria-current": n === P,
666
- className: e("h-16 w-24 shrink-0 overflow-hidden rounded-lg border-2 transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-focus-ring)]", n === P ? "border-action-primary-border" : "border-transparent opacity-70 hover:opacity-100"),
667
- children: /* @__PURE__ */ v("img", {
668
- src: t.url,
669
- alt: t.title ?? `Photo ${n + 1}`,
670
- className: "h-full w-full object-cover"
671
- })
672
- }, t.id))
673
- })]
660
+ ]
661
+ }),
662
+ g.images.length > 1 && /* @__PURE__ */ v("div", {
663
+ className: "flex gap-3 overflow-x-auto pb-1",
664
+ children: g.images.map((t, n) => /* @__PURE__ */ v("button", {
665
+ onClick: () => F(n),
666
+ "aria-label": `View photo ${n + 1}`,
667
+ "aria-current": n === P,
668
+ className: e("h-16 w-24 shrink-0 overflow-hidden rounded-lg border-2 transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-focus-ring)]", n === P ? "border-action-primary-border" : "border-transparent opacity-70 hover:opacity-100"),
669
+ children: /* @__PURE__ */ v("img", {
670
+ src: t.url,
671
+ alt: t.title ?? `Photo ${n + 1}`,
672
+ className: "h-full w-full object-cover"
673
+ })
674
+ }, t.id))
675
+ }),
676
+ g.images.some((e) => e.type === "floor_plan") && /* @__PURE__ */ y("div", {
677
+ className: "rounded-lg border border-border-subtle bg-bg-sunken/50 p-3",
678
+ children: [/* @__PURE__ */ y("p", {
679
+ className: "mb-2 flex items-center gap-1.5 text-xs font-medium text-text-secondary",
680
+ children: [/* @__PURE__ */ v(Xe, { className: "h-3.5 w-3.5" }), "Floor plans"]
681
+ }), /* @__PURE__ */ v("div", {
682
+ className: "flex gap-3 overflow-x-auto pb-1",
683
+ children: g.images.map((e, t) => ({
684
+ img: e,
685
+ index: t
686
+ })).filter(({ img: e }) => e.type === "floor_plan").map(({ img: e, index: t }) => /* @__PURE__ */ v("button", {
687
+ onClick: () => F(t),
688
+ "aria-label": `View floor plan ${t + 1}`,
689
+ className: "h-20 w-28 shrink-0 overflow-hidden rounded-lg border-2 border-border-subtle opacity-80 transition-opacity hover:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-focus-ring)]",
690
+ children: /* @__PURE__ */ v("img", {
691
+ src: e.url,
692
+ alt: e.title ?? `Floor plan ${t + 1}`,
693
+ className: "h-full w-full object-cover"
694
+ })
695
+ }, e.id))
696
+ })]
697
+ })
698
+ ]
674
699
  }),
675
700
  /* @__PURE__ */ y("div", {
676
701
  className: "grid grid-cols-1 gap-6 lg:grid-cols-3",
677
702
  children: [/* @__PURE__ */ y("div", {
678
703
  className: "space-y-6 lg:col-span-2",
679
- children: [/* @__PURE__ */ y(st, { children: [
704
+ children: [/* @__PURE__ */ y(ct, { children: [
680
705
  /* @__PURE__ */ y("div", {
681
706
  className: "flex flex-col gap-4 sm:flex-row sm:items-start sm:justify-between",
682
707
  children: [/* @__PURE__ */ y("div", { children: [/* @__PURE__ */ v("h1", {
@@ -696,7 +721,7 @@ var Ct = () => {
696
721
  className: "text-right",
697
722
  children: [/* @__PURE__ */ v("div", {
698
723
  className: "text-2xl font-bold text-text-primary",
699
- children: Bn(g.price)
724
+ children: Vn(g.price)
700
725
  }), g.price.pricePerSqft && /* @__PURE__ */ y("div", {
701
726
  className: "text-sm text-text-secondary",
702
727
  children: [n(g.price.pricePerSqft), "/sqft"]
@@ -717,7 +742,7 @@ var Ct = () => {
717
742
  label: g.specifications.bathrooms === 1 ? "Bathroom" : "Bathrooms"
718
743
  },
719
744
  {
720
- icon: Ze,
745
+ icon: Qe,
721
746
  value: i(g.specifications.totalArea),
722
747
  label: "sq ft"
723
748
  },
@@ -764,16 +789,16 @@ var Ct = () => {
764
789
  className: "border-b border-border-subtle",
765
790
  children: /* @__PURE__ */ v("nav", {
766
791
  className: "flex space-x-6 overflow-x-auto px-6",
767
- children: vt.map((t) => /* @__PURE__ */ v("button", {
792
+ children: yt.map((t) => /* @__PURE__ */ v("button", {
768
793
  onClick: () => Vt(t.id),
769
- className: e("whitespace-nowrap border-b-2 py-3 text-sm font-medium transition-colors", F === t.id ? "border-action-primary-border text-text-primary" : "border-transparent text-text-secondary hover:text-text-primary"),
794
+ className: e("whitespace-nowrap border-b-2 py-3 text-sm font-medium transition-colors", I === t.id ? "border-action-primary-border text-text-primary" : "border-transparent text-text-secondary hover:text-text-primary"),
770
795
  children: t.label
771
796
  }, t.id))
772
797
  })
773
798
  }), /* @__PURE__ */ y("div", {
774
799
  className: "p-6",
775
800
  children: [
776
- F === "details" && /* @__PURE__ */ y("div", {
801
+ I === "details" && /* @__PURE__ */ y("div", {
777
802
  className: "grid grid-cols-1 gap-6 sm:grid-cols-2",
778
803
  children: [/* @__PURE__ */ y("div", { children: [/* @__PURE__ */ v("h4", {
779
804
  className: "mb-3 text-sm font-semibold text-text-primary",
@@ -895,13 +920,13 @@ var Ct = () => {
895
920
  ]
896
921
  })] })]
897
922
  }),
898
- F === "amenities" && /* @__PURE__ */ v("div", { children: g.amenities.length > 0 ? /* @__PURE__ */ v("div", {
923
+ I === "amenities" && /* @__PURE__ */ v("div", { children: g.amenities.length > 0 ? /* @__PURE__ */ v("div", {
899
924
  className: "grid grid-cols-2 gap-3 sm:grid-cols-3 lg:grid-cols-4",
900
925
  children: g.amenities.map((e) => /* @__PURE__ */ y("div", {
901
926
  className: "flex flex-col items-center gap-2 rounded-lg border border-border-subtle bg-bg-sunken/40 p-4 text-center",
902
927
  children: [/* @__PURE__ */ v("span", {
903
928
  className: "flex h-10 w-10 items-center justify-center rounded-full bg-status-success-bg-subtle text-status-success-text",
904
- children: /* @__PURE__ */ v(bt(e.name), { className: "h-5 w-5" })
929
+ children: /* @__PURE__ */ v(xt(e.name), { className: "h-5 w-5" })
905
930
  }), /* @__PURE__ */ v("span", {
906
931
  className: "text-sm font-medium text-text-primary",
907
932
  children: e.name
@@ -913,7 +938,7 @@ var Ct = () => {
913
938
  description: "This property has no amenities recorded yet.",
914
939
  className: "border-0 bg-transparent p-6"
915
940
  }) }),
916
- F === "location" && /* @__PURE__ */ y("div", {
941
+ I === "location" && /* @__PURE__ */ y("div", {
917
942
  className: "space-y-4",
918
943
  children: [
919
944
  /* @__PURE__ */ y("div", {
@@ -1018,7 +1043,7 @@ var Ct = () => {
1018
1043
  className: "flex flex-wrap items-baseline gap-x-2 gap-y-1",
1019
1044
  children: [/* @__PURE__ */ v("span", {
1020
1045
  className: "text-3xl font-bold text-text-primary",
1021
- children: Bn(g.price)
1046
+ children: Vn(g.price)
1022
1047
  }), g.price.negotiable && /* @__PURE__ */ v("span", {
1023
1048
  className: "text-sm text-text-secondary",
1024
1049
  children: "· Negotiable"
@@ -1035,14 +1060,14 @@ var Ct = () => {
1035
1060
  type: "button",
1036
1061
  className: "w-full justify-center",
1037
1062
  onClick: () => {
1038
- W(_t()), L(!0);
1063
+ W(vt()), R(!0);
1039
1064
  },
1040
1065
  children: [/* @__PURE__ */ v(Be, { className: "mr-2 h-4 w-4" }), "Make Offer"]
1041
1066
  }),
1042
- g.status === "for_rent" && /* @__PURE__ */ y(ot, { children: [/* @__PURE__ */ y(b, {
1067
+ g.status === "for_rent" && /* @__PURE__ */ y(st, { children: [/* @__PURE__ */ y(b, {
1043
1068
  type: "button",
1044
1069
  className: "w-full justify-center",
1045
- onClick: () => z(!0),
1070
+ onClick: () => B(!0),
1046
1071
  disabled: !Y,
1047
1072
  children: [/* @__PURE__ */ v(We, { className: "mr-2 h-4 w-4" }), "Apply to Rent"]
1048
1073
  }), !Y && /* @__PURE__ */ v("p", {
@@ -1055,7 +1080,7 @@ var Ct = () => {
1055
1080
  type: "button",
1056
1081
  variant: "outline",
1057
1082
  className: "w-full justify-center",
1058
- onClick: () => I(!0),
1083
+ onClick: () => L(!0),
1059
1084
  children: [/* @__PURE__ */ v(Fe, { className: "mr-2 h-4 w-4" }), "Viewing"]
1060
1085
  }), /* @__PURE__ */ y(b, {
1061
1086
  type: "button",
@@ -1069,8 +1094,8 @@ var Ct = () => {
1069
1094
  type: "button",
1070
1095
  variant: "outline",
1071
1096
  className: "w-full justify-center",
1072
- onClick: Wn,
1073
- disabled: Ct || Tt,
1097
+ onClick: Gn,
1098
+ disabled: wt || Et,
1074
1099
  children: [/* @__PURE__ */ v(Ue, { className: e("mr-2 h-4 w-4", N && "fill-status-error-text text-status-error-text") }), N ? "Saved to Shortlist" : "Save to Shortlist"]
1075
1100
  })
1076
1101
  ]
@@ -1104,9 +1129,9 @@ var Ct = () => {
1104
1129
  }), /* @__PURE__ */ v("input", {
1105
1130
  type: "number",
1106
1131
  min: 0,
1107
- value: on,
1108
- onChange: (e) => sn(e.target.value),
1109
- placeholder: String($n),
1132
+ value: sn,
1133
+ onChange: (e) => cn(e.target.value),
1134
+ placeholder: String(er),
1110
1135
  className: j
1111
1136
  })] }),
1112
1137
  /* @__PURE__ */ y("div", {
@@ -1121,9 +1146,9 @@ var Ct = () => {
1121
1146
  }), /* @__PURE__ */ v("input", {
1122
1147
  type: "number",
1123
1148
  min: 0,
1124
- value: cn,
1125
- onChange: (e) => ln(e.target.value),
1126
- placeholder: String(er),
1149
+ value: ln,
1150
+ onChange: (e) => un(e.target.value),
1151
+ placeholder: String(tr),
1127
1152
  className: j
1128
1153
  })] }), /* @__PURE__ */ y("div", { children: [/* @__PURE__ */ v("label", {
1129
1154
  className: "mb-1.5 block text-xs font-medium text-text-secondary",
@@ -1132,8 +1157,8 @@ var Ct = () => {
1132
1157
  type: "number",
1133
1158
  min: 0,
1134
1159
  step: .5,
1135
- value: un,
1136
- onChange: (e) => dn(e.target.value),
1160
+ value: dn,
1161
+ onChange: (e) => fn(e.target.value),
1137
1162
  className: j
1138
1163
  })] })]
1139
1164
  }),
@@ -1153,15 +1178,15 @@ var Ct = () => {
1153
1178
  children: [/* @__PURE__ */ v("input", {
1154
1179
  type: "checkbox",
1155
1180
  checked: V,
1156
- onChange: (e) => fn(e.target.checked),
1181
+ onChange: (e) => pn(e.target.checked),
1157
1182
  className: "h-3.5 w-3.5 rounded border-border-subtle"
1158
1183
  }), "Include stamp duty & registration"]
1159
1184
  }), V && /* @__PURE__ */ v("input", {
1160
1185
  type: "number",
1161
1186
  min: 0,
1162
1187
  step: .5,
1163
- value: pn,
1164
- onChange: (e) => mn(e.target.value),
1188
+ value: mn,
1189
+ onChange: (e) => hn(e.target.value),
1165
1190
  "aria-label": "Stamp duty rate percent",
1166
1191
  className: "h-7 w-16 rounded-md border border-border-subtle bg-bg-surface px-2 text-right text-xs text-text-primary"
1167
1192
  })]
@@ -1173,7 +1198,7 @@ var Ct = () => {
1173
1198
  children: [/* @__PURE__ */ v("input", {
1174
1199
  type: "checkbox",
1175
1200
  checked: H,
1176
- onChange: (e) => hn(e.target.checked),
1201
+ onChange: (e) => gn(e.target.checked),
1177
1202
  className: "h-3.5 w-3.5 rounded border-border-subtle"
1178
1203
  }), "Include financing (loan)"]
1179
1204
  })
@@ -1188,8 +1213,8 @@ var Ct = () => {
1188
1213
  type: "number",
1189
1214
  min: 0,
1190
1215
  max: 100,
1191
- value: gn,
1192
- onChange: (e) => _n(e.target.value),
1216
+ value: _n,
1217
+ onChange: (e) => vn(e.target.value),
1193
1218
  className: j
1194
1219
  })] }),
1195
1220
  /* @__PURE__ */ y("div", { children: [/* @__PURE__ */ v("label", {
@@ -1199,8 +1224,8 @@ var Ct = () => {
1199
1224
  type: "number",
1200
1225
  min: 0,
1201
1226
  step: .1,
1202
- value: vn,
1203
- onChange: (e) => yn(e.target.value),
1227
+ value: yn,
1228
+ onChange: (e) => bn(e.target.value),
1204
1229
  className: j
1205
1230
  })] }),
1206
1231
  /* @__PURE__ */ y("div", { children: [/* @__PURE__ */ v("label", {
@@ -1209,8 +1234,8 @@ var Ct = () => {
1209
1234
  }), /* @__PURE__ */ v("input", {
1210
1235
  type: "number",
1211
1236
  min: 1,
1212
- value: bn,
1213
- onChange: (e) => xn(e.target.value),
1237
+ value: xn,
1238
+ onChange: (e) => Sn(e.target.value),
1214
1239
  className: j
1215
1240
  })] })
1216
1241
  ]
@@ -1223,7 +1248,7 @@ var Ct = () => {
1223
1248
  " ",
1224
1249
  /* @__PURE__ */ v("span", {
1225
1250
  className: "font-semibold text-text-primary",
1226
- children: t(dr, g.price.currency)
1251
+ children: t(fr, g.price.currency)
1227
1252
  })
1228
1253
  ] }),
1229
1254
  H && /* @__PURE__ */ y("span", { children: [
@@ -1231,7 +1256,7 @@ var Ct = () => {
1231
1256
  " ",
1232
1257
  /* @__PURE__ */ v("span", {
1233
1258
  className: "font-semibold text-text-primary",
1234
- children: t(_r, g.price.currency)
1259
+ children: t(vr, g.price.currency)
1235
1260
  })
1236
1261
  ] }),
1237
1262
  /* @__PURE__ */ y("span", { children: [
@@ -1256,7 +1281,7 @@ var Ct = () => {
1256
1281
  children: "Gross Yield"
1257
1282
  }), /* @__PURE__ */ y("div", {
1258
1283
  className: "mt-0.5 text-lg font-bold text-status-success-text",
1259
- children: [nr.toFixed(1), "%"]
1284
+ children: [rr.toFixed(1), "%"]
1260
1285
  })]
1261
1286
  }),
1262
1287
  /* @__PURE__ */ y("div", {
@@ -1266,7 +1291,7 @@ var Ct = () => {
1266
1291
  children: "Net Yield"
1267
1292
  }), /* @__PURE__ */ y("div", {
1268
1293
  className: "mt-0.5 text-lg font-bold text-text-primary",
1269
- children: [ir.toFixed(1), "%"]
1294
+ children: [ar.toFixed(1), "%"]
1270
1295
  })]
1271
1296
  }),
1272
1297
  /* @__PURE__ */ y("div", {
@@ -1276,7 +1301,7 @@ var Ct = () => {
1276
1301
  children: H ? "Cash-on-Cash" : "5-yr ROI"
1277
1302
  }), /* @__PURE__ */ y("div", {
1278
1303
  className: "mt-0.5 text-lg font-bold text-text-primary",
1279
- children: [H ? br.toFixed(1) : lr.toFixed(0), "%"]
1304
+ children: [H ? xr.toFixed(1) : ur.toFixed(0), "%"]
1280
1305
  })]
1281
1306
  })
1282
1307
  ]
@@ -1291,7 +1316,7 @@ var Ct = () => {
1291
1316
  children: "Projected Value Growth"
1292
1317
  }), /* @__PURE__ */ v("span", {
1293
1318
  className: "text-xs font-semibold text-text-primary",
1294
- children: t(sr, g.price.currency)
1319
+ children: t(cr, g.price.currency)
1295
1320
  })]
1296
1321
  }),
1297
1322
  /* @__PURE__ */ v("div", {
@@ -1300,7 +1325,7 @@ var Ct = () => {
1300
1325
  width: "100%",
1301
1326
  height: "100%",
1302
1327
  children: /* @__PURE__ */ y(xe, {
1303
- data: or,
1328
+ data: sr,
1304
1329
  margin: {
1305
1330
  top: 4,
1306
1331
  right: 4,
@@ -1361,9 +1386,9 @@ var Ct = () => {
1361
1386
  type: "button",
1362
1387
  variant: "outline",
1363
1388
  className: "flex-1 justify-center",
1364
- onClick: Zn,
1365
- disabled: It,
1366
- children: [/* @__PURE__ */ v($e, { className: "mr-2 h-4 w-4" }), It ? "Adding…" : "Track as Investment"]
1389
+ onClick: Qn,
1390
+ disabled: Lt,
1391
+ children: [/* @__PURE__ */ v(et, { className: "mr-2 h-4 w-4" }), Lt ? "Adding…" : "Track as Investment"]
1367
1392
  }), /* @__PURE__ */ v(b, {
1368
1393
  type: "button",
1369
1394
  variant: "ghost",
@@ -1374,29 +1399,29 @@ var Ct = () => {
1374
1399
  `Generated: ${(/* @__PURE__ */ new Date()).toISOString().slice(0, 10)}`,
1375
1400
  "",
1376
1401
  `Listing price,${X}`,
1377
- `Expected monthly rent,${$n}`,
1378
- `Monthly holding costs,${er}`,
1379
- `Gross rental yield,${nr.toFixed(2)}%`,
1380
- `Net rental yield,${ir.toFixed(2)}%`,
1381
- `Appreciation rate (input),${(ar * 100).toFixed(2)}%`,
1382
- `Projected value (5yr),${sr}`,
1383
- `Projected ROI (5yr, unleveraged),${lr.toFixed(2)}%`,
1402
+ `Expected monthly rent,${er}`,
1403
+ `Monthly holding costs,${tr}`,
1404
+ `Gross rental yield,${rr.toFixed(2)}%`,
1405
+ `Net rental yield,${ar.toFixed(2)}%`,
1406
+ `Appreciation rate (input),${(or * 100).toFixed(2)}%`,
1407
+ `Projected value (5yr),${cr}`,
1408
+ `Projected ROI (5yr, unleveraged),${ur.toFixed(2)}%`,
1384
1409
  "",
1385
1410
  `Stamp duty & registration included,${V ? "Yes" : "No"}`,
1386
- `Stamp duty rate,${ur}%`,
1387
- `Stamp duty & registration cost,${dr.toFixed(0)}`,
1411
+ `Stamp duty rate,${dr}%`,
1412
+ `Stamp duty & registration cost,${fr.toFixed(0)}`,
1388
1413
  "",
1389
1414
  `Financing included,${H ? "Yes" : "No"}`,
1390
1415
  ...H ? [
1391
- `Down payment (${fr}%),${hr.toFixed(0)}`,
1416
+ `Down payment (${pr}%),${gr.toFixed(0)}`,
1392
1417
  `Loan amount,${Z.toFixed(0)}`,
1393
- `Loan rate,${(pr * 100).toFixed(2)}%`,
1394
- `Loan tenure (years),${mr}`,
1395
- `Monthly EMI,${_r.toFixed(0)}`,
1396
- `Annual debt service,${vr.toFixed(0)}`
1418
+ `Loan rate,${(mr * 100).toFixed(2)}%`,
1419
+ `Loan tenure (years),${hr}`,
1420
+ `Monthly EMI,${vr.toFixed(0)}`,
1421
+ `Annual debt service,${yr.toFixed(0)}`
1397
1422
  ] : [],
1398
1423
  `Net cash outlay,${$.toFixed(0)}`,
1399
- `Cash-on-cash return,${br.toFixed(2)}%`,
1424
+ `Cash-on-cash return,${xr.toFixed(2)}%`,
1400
1425
  "",
1401
1426
  "This is not financial advice. Consult a licensed financial advisor before investing."
1402
1427
  ], t = new Blob([e.join("\n")], { type: "text/csv;charset=utf-8;" }), n = URL.createObjectURL(t), r = document.createElement("a");
@@ -1425,7 +1450,7 @@ var Ct = () => {
1425
1450
  children: "Status"
1426
1451
  }), /* @__PURE__ */ v(a, {
1427
1452
  label: g.status.replace("_", " "),
1428
- variant: ut[g.status] ?? "default"
1453
+ variant: dt[g.status] ?? "default"
1429
1454
  })]
1430
1455
  }),
1431
1456
  /* @__PURE__ */ y("div", {
@@ -1476,28 +1501,28 @@ var Ct = () => {
1476
1501
  type: "button",
1477
1502
  variant: "outline",
1478
1503
  className: "flex-1 justify-center",
1479
- disabled: Rt,
1480
- onClick: () => Qn("verified"),
1504
+ disabled: zt,
1505
+ onClick: () => $n("verified"),
1481
1506
  children: "Verify RERA"
1482
1507
  }), /* @__PURE__ */ v(b, {
1483
1508
  type: "button",
1484
1509
  variant: "ghost",
1485
1510
  className: "flex-1 justify-center",
1486
- disabled: Rt,
1487
- onClick: () => Qn("rejected"),
1511
+ disabled: zt,
1512
+ onClick: () => $n("rejected"),
1488
1513
  children: "Reject"
1489
1514
  })]
1490
1515
  })
1491
1516
  ]
1492
1517
  }),
1493
- zt.length > 0 && /* @__PURE__ */ y("div", {
1518
+ Bt.length > 0 && /* @__PURE__ */ y("div", {
1494
1519
  className: "rounded-lg border border-border-subtle bg-bg-surface p-5",
1495
1520
  children: [/* @__PURE__ */ v("h3", {
1496
1521
  className: "mb-4 text-base font-semibold text-text-primary",
1497
1522
  children: "Similar Properties"
1498
1523
  }), /* @__PURE__ */ v("div", {
1499
1524
  className: "space-y-3",
1500
- children: zt.map((e) => /* @__PURE__ */ y("button", {
1525
+ children: Bt.map((e) => /* @__PURE__ */ y("button", {
1501
1526
  onClick: () => m(`../properties/${e.id}`),
1502
1527
  className: "flex w-full items-start gap-3 rounded-lg border border-border-subtle p-3 text-left transition-colors hover:bg-bg-sunken/50",
1503
1528
  children: [e.images[0] && /* @__PURE__ */ v("img", {
@@ -1543,11 +1568,11 @@ var Ct = () => {
1543
1568
  }),
1544
1569
  /* @__PURE__ */ v(x, {
1545
1570
  open: qt,
1546
- onOpenChange: z,
1571
+ onOpenChange: B,
1547
1572
  children: /* @__PURE__ */ v(S, {
1548
1573
  className: "sm:max-w-2xl",
1549
1574
  children: /* @__PURE__ */ y("form", {
1550
- onSubmit: Xn,
1575
+ onSubmit: Zn,
1551
1576
  children: [
1552
1577
  /* @__PURE__ */ y(T, { children: [/* @__PURE__ */ v(E, { children: "Apply to rent" }), /* @__PURE__ */ y(C, { children: [
1553
1578
  "Submit a rental application for ",
@@ -1567,8 +1592,8 @@ var Ct = () => {
1567
1592
  }), /* @__PURE__ */ v("input", {
1568
1593
  type: "text",
1569
1594
  required: !0,
1570
- value: B,
1571
- onChange: (e) => Xt(e.target.value),
1595
+ value: Xt,
1596
+ onChange: (e) => Zt(e.target.value),
1572
1597
  className: j
1573
1598
  })] }), /* @__PURE__ */ y("div", { children: [/* @__PURE__ */ v("label", {
1574
1599
  className: "mb-1.5 block text-sm font-medium text-text-primary",
@@ -1576,8 +1601,8 @@ var Ct = () => {
1576
1601
  }), /* @__PURE__ */ v("input", {
1577
1602
  type: "email",
1578
1603
  required: !0,
1579
- value: Zt,
1580
- onChange: (e) => Qt(e.target.value),
1604
+ value: Qt,
1605
+ onChange: (e) => $t(e.target.value),
1581
1606
  className: j
1582
1607
  })] })]
1583
1608
  }),
@@ -1588,8 +1613,8 @@ var Ct = () => {
1588
1613
  children: "Phone"
1589
1614
  }), /* @__PURE__ */ v("input", {
1590
1615
  type: "tel",
1591
- value: $t,
1592
- onChange: (e) => en(e.target.value),
1616
+ value: en,
1617
+ onChange: (e) => tn(e.target.value),
1593
1618
  className: j
1594
1619
  })] }), /* @__PURE__ */ y("div", { children: [/* @__PURE__ */ y("label", {
1595
1620
  className: "mb-1.5 block text-sm font-medium text-text-primary",
@@ -1601,8 +1626,8 @@ var Ct = () => {
1601
1626
  }), /* @__PURE__ */ v("input", {
1602
1627
  type: "number",
1603
1628
  min: 0,
1604
- value: tn,
1605
- onChange: (e) => nn(e.target.value),
1629
+ value: nn,
1630
+ onChange: (e) => rn(e.target.value),
1606
1631
  className: j
1607
1632
  })] })]
1608
1633
  }),
@@ -1611,8 +1636,8 @@ var Ct = () => {
1611
1636
  children: "Preferred move-in date"
1612
1637
  }), /* @__PURE__ */ v("input", {
1613
1638
  type: "date",
1614
- value: rn,
1615
- onChange: (e) => an(e.target.value),
1639
+ value: an,
1640
+ onChange: (e) => on(e.target.value),
1616
1641
  className: j
1617
1642
  })] })
1618
1643
  ]
@@ -1641,7 +1666,7 @@ var Ct = () => {
1641
1666
  })]
1642
1667
  })]
1643
1668
  }),
1644
- J ? /* @__PURE__ */ y(ot, { children: [/* @__PURE__ */ y("dl", {
1669
+ J ? /* @__PURE__ */ y(st, { children: [/* @__PURE__ */ y("dl", {
1645
1670
  className: "mt-3 grid grid-cols-2 gap-3 border-t border-border-subtle pt-3",
1646
1671
  children: [
1647
1672
  /* @__PURE__ */ y("div", { children: [/* @__PURE__ */ v("dt", {
@@ -1671,8 +1696,8 @@ var Ct = () => {
1671
1696
  }), /* @__PURE__ */ v("dd", {
1672
1697
  className: "mt-0.5",
1673
1698
  children: /* @__PURE__ */ v(a, {
1674
- label: xt(J.status),
1675
- variant: St(J.status)
1699
+ label: St(J.status),
1700
+ variant: Ct(J.status)
1676
1701
  })
1677
1702
  })] })
1678
1703
  ]
@@ -1694,7 +1719,7 @@ var Ct = () => {
1694
1719
  className: "mt-1.5 space-y-1.5",
1695
1720
  children: g.amenities.slice(0, 5).map((e) => /* @__PURE__ */ y("li", {
1696
1721
  className: "flex items-center gap-2 text-sm text-text-primary",
1697
- children: [/* @__PURE__ */ v(bt(e.name), { className: "h-4 w-4 shrink-0 text-text-secondary" }), /* @__PURE__ */ v("span", {
1722
+ children: [/* @__PURE__ */ v(xt(e.name), { className: "h-4 w-4 shrink-0 text-text-secondary" }), /* @__PURE__ */ v("span", {
1698
1723
  className: "truncate",
1699
1724
  children: e.name
1700
1725
  })]
@@ -1716,12 +1741,12 @@ var Ct = () => {
1716
1741
  /* @__PURE__ */ y(w, { children: [/* @__PURE__ */ v(b, {
1717
1742
  type: "button",
1718
1743
  variant: "outline",
1719
- onClick: () => z(!1),
1744
+ onClick: () => B(!1),
1720
1745
  children: "Cancel"
1721
1746
  }), /* @__PURE__ */ v(b, {
1722
1747
  type: "submit",
1723
- disabled: Pt || !Y,
1724
- children: Pt ? "Submitting…" : "Submit application"
1748
+ disabled: Ft || !Y,
1749
+ children: Ft ? "Submitting…" : "Submit application"
1725
1750
  })] })
1726
1751
  ]
1727
1752
  })
@@ -1729,11 +1754,11 @@ var Ct = () => {
1729
1754
  }),
1730
1755
  /* @__PURE__ */ v(x, {
1731
1756
  open: Ht,
1732
- onOpenChange: I,
1757
+ onOpenChange: L,
1733
1758
  children: /* @__PURE__ */ v(S, {
1734
1759
  className: "sm:max-w-md",
1735
1760
  children: /* @__PURE__ */ y("form", {
1736
- onSubmit: Gn,
1761
+ onSubmit: Kn,
1737
1762
  children: [
1738
1763
  /* @__PURE__ */ y(T, { children: [/* @__PURE__ */ v(E, { children: "Schedule a viewing" }), /* @__PURE__ */ y(C, { children: [
1739
1764
  "Pick a date and time to see ",
@@ -1750,15 +1775,15 @@ var Ct = () => {
1750
1775
  type: "datetime-local",
1751
1776
  required: !0,
1752
1777
  value: U,
1753
- onChange: (e) => Sn(e.target.value),
1778
+ onChange: (e) => Cn(e.target.value),
1754
1779
  className: j
1755
1780
  })] }),
1756
1781
  /* @__PURE__ */ y("div", { children: [/* @__PURE__ */ v("label", {
1757
1782
  className: "mb-1.5 block text-sm font-medium text-text-primary",
1758
1783
  children: "Type"
1759
1784
  }), /* @__PURE__ */ y("select", {
1760
- value: Cn,
1761
- onChange: (e) => wn(e.target.value),
1785
+ value: wn,
1786
+ onChange: (e) => Tn(e.target.value),
1762
1787
  className: j,
1763
1788
  children: [/* @__PURE__ */ v("option", {
1764
1789
  value: "in_person",
@@ -1773,22 +1798,22 @@ var Ct = () => {
1773
1798
  children: [/* @__PURE__ */ v("input", {
1774
1799
  type: "text",
1775
1800
  placeholder: "Your name",
1776
- value: Tn,
1777
- onChange: (e) => En(e.target.value),
1801
+ value: En,
1802
+ onChange: (e) => Dn(e.target.value),
1778
1803
  className: j
1779
1804
  }), /* @__PURE__ */ v("input", {
1780
1805
  type: "email",
1781
1806
  placeholder: "Your email",
1782
- value: Dn,
1783
- onChange: (e) => On(e.target.value),
1807
+ value: On,
1808
+ onChange: (e) => kn(e.target.value),
1784
1809
  className: j
1785
1810
  })]
1786
1811
  }),
1787
1812
  /* @__PURE__ */ v("textarea", {
1788
1813
  placeholder: "Notes (optional)",
1789
1814
  rows: 2,
1790
- value: kn,
1791
- onChange: (e) => An(e.target.value),
1815
+ value: An,
1816
+ onChange: (e) => jn(e.target.value),
1792
1817
  className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary placeholder:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
1793
1818
  })
1794
1819
  ]
@@ -1796,12 +1821,12 @@ var Ct = () => {
1796
1821
  /* @__PURE__ */ y(w, { children: [/* @__PURE__ */ v(b, {
1797
1822
  type: "button",
1798
1823
  variant: "outline",
1799
- onClick: () => I(!1),
1824
+ onClick: () => L(!1),
1800
1825
  children: "Cancel"
1801
1826
  }), /* @__PURE__ */ v(b, {
1802
1827
  type: "submit",
1803
- disabled: Dt || !U,
1804
- children: Dt ? "Booking…" : "Request viewing"
1828
+ disabled: Ot || !U,
1829
+ children: Ot ? "Booking…" : "Request viewing"
1805
1830
  })] })
1806
1831
  ]
1807
1832
  })
@@ -1809,15 +1834,15 @@ var Ct = () => {
1809
1834
  }),
1810
1835
  /* @__PURE__ */ v(x, {
1811
1836
  open: Ut,
1812
- onOpenChange: L,
1837
+ onOpenChange: R,
1813
1838
  children: /* @__PURE__ */ v(S, {
1814
1839
  className: "sm:max-w-md",
1815
1840
  children: /* @__PURE__ */ y("form", {
1816
- onSubmit: Kn,
1841
+ onSubmit: qn,
1817
1842
  children: [
1818
1843
  /* @__PURE__ */ y(T, { children: [/* @__PURE__ */ v(E, { children: "Make an offer" }), /* @__PURE__ */ y(C, { children: [
1819
1844
  "Listing price is ",
1820
- Bn(g.price),
1845
+ Vn(g.price),
1821
1846
  "."
1822
1847
  ] })] }),
1823
1848
  /* @__PURE__ */ y("div", {
@@ -1834,16 +1859,16 @@ var Ct = () => {
1834
1859
  type: "number",
1835
1860
  required: !0,
1836
1861
  min: 1,
1837
- value: jn,
1838
- onChange: (e) => Mn(e.target.value),
1862
+ value: Mn,
1863
+ onChange: (e) => Nn(e.target.value),
1839
1864
  placeholder: "Enter amount",
1840
1865
  className: j
1841
1866
  })] }),
1842
1867
  /* @__PURE__ */ v("textarea", {
1843
1868
  placeholder: "Message to the owner (optional)",
1844
1869
  rows: 3,
1845
- value: Nn,
1846
- onChange: (e) => Pn(e.target.value),
1870
+ value: Pn,
1871
+ onChange: (e) => Fn(e.target.value),
1847
1872
  className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary placeholder:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
1848
1873
  }),
1849
1874
  /* @__PURE__ */ y("div", { children: [
@@ -1855,7 +1880,7 @@ var Ct = () => {
1855
1880
  /* @__PURE__ */ v("input", {
1856
1881
  id: "offer-expires",
1857
1882
  type: "datetime-local",
1858
- value: Fn,
1883
+ value: In,
1859
1884
  onChange: (e) => W(e.target.value),
1860
1885
  className: j
1861
1886
  }),
@@ -1869,12 +1894,12 @@ var Ct = () => {
1869
1894
  /* @__PURE__ */ y(w, { children: [/* @__PURE__ */ v(b, {
1870
1895
  type: "button",
1871
1896
  variant: "outline",
1872
- onClick: () => L(!1),
1897
+ onClick: () => R(!1),
1873
1898
  children: "Cancel"
1874
1899
  }), /* @__PURE__ */ v(b, {
1875
1900
  type: "submit",
1876
- disabled: kt,
1877
- children: kt ? "Submitting…" : "Submit offer"
1901
+ disabled: At,
1902
+ children: At ? "Submitting…" : "Submit offer"
1878
1903
  })] })
1879
1904
  ]
1880
1905
  })
@@ -1882,11 +1907,11 @@ var Ct = () => {
1882
1907
  }),
1883
1908
  /* @__PURE__ */ v(x, {
1884
1909
  open: Wt,
1885
- onOpenChange: (e) => !e && !M && R(!1),
1910
+ onOpenChange: (e) => !e && !M && z(!1),
1886
1911
  children: /* @__PURE__ */ v(S, {
1887
1912
  className: "sm:max-w-2xl",
1888
1913
  children: /* @__PURE__ */ y("form", {
1889
- onSubmit: Jn,
1914
+ onSubmit: Yn,
1890
1915
  children: [
1891
1916
  /* @__PURE__ */ y(T, { children: [/* @__PURE__ */ v(E, { children: "Edit property" }), /* @__PURE__ */ v(C, { children: "Update the listing details — basics, location, specifications and pricing. Photos are managed separately from the gallery." })] }),
1892
1917
  /* @__PURE__ */ y("div", {
@@ -1928,7 +1953,7 @@ var Ct = () => {
1928
1953
  value: G.status,
1929
1954
  onChange: (e) => K({ status: e.target.value }),
1930
1955
  className: j,
1931
- children: dt.map((e) => /* @__PURE__ */ v("option", {
1956
+ children: ft.map((e) => /* @__PURE__ */ v("option", {
1932
1957
  value: e.value,
1933
1958
  children: e.label
1934
1959
  }, e.value))
@@ -2059,7 +2084,7 @@ var Ct = () => {
2059
2084
  }), /* @__PURE__ */ y("div", {
2060
2085
  className: "grid grid-cols-2 gap-3 sm:grid-cols-4",
2061
2086
  children: [
2062
- gt.map((e) => /* @__PURE__ */ y("div", { children: [/* @__PURE__ */ v("label", {
2087
+ _t.map((e) => /* @__PURE__ */ y("div", { children: [/* @__PURE__ */ v("label", {
2063
2088
  className: "mb-1.5 block text-sm font-medium text-text-primary",
2064
2089
  children: e.label
2065
2090
  }), /* @__PURE__ */ v("input", {
@@ -2127,7 +2152,7 @@ var Ct = () => {
2127
2152
  value: G.priceType,
2128
2153
  onChange: (e) => K({ priceType: e.target.value }),
2129
2154
  className: j,
2130
- children: ft.map((e) => /* @__PURE__ */ v("option", {
2155
+ children: pt.map((e) => /* @__PURE__ */ v("option", {
2131
2156
  value: e.value,
2132
2157
  children: e.label
2133
2158
  }, e.value))
@@ -2139,7 +2164,7 @@ var Ct = () => {
2139
2164
  value: G.pricePeriod,
2140
2165
  onChange: (e) => K({ pricePeriod: e.target.value }),
2141
2166
  className: j,
2142
- children: pt.map((e) => /* @__PURE__ */ v("option", {
2167
+ children: mt.map((e) => /* @__PURE__ */ v("option", {
2143
2168
  value: e.value,
2144
2169
  children: e.label
2145
2170
  }, e.value))
@@ -2203,7 +2228,7 @@ var Ct = () => {
2203
2228
  /* @__PURE__ */ y(w, { children: [/* @__PURE__ */ v(b, {
2204
2229
  type: "button",
2205
2230
  variant: "outline",
2206
- onClick: () => R(!1),
2231
+ onClick: () => z(!1),
2207
2232
  disabled: M,
2208
2233
  children: "Cancel"
2209
2234
  }), /* @__PURE__ */ v(b, {
@@ -2228,9 +2253,9 @@ var Ct = () => {
2228
2253
  }), /* @__PURE__ */ v(b, {
2229
2254
  type: "button",
2230
2255
  variant: "destructive",
2231
- onClick: Yn,
2232
- disabled: Mt,
2233
- children: Mt ? "Deleting…" : "Delete property"
2256
+ onClick: Xn,
2257
+ disabled: Nt,
2258
+ children: Nt ? "Deleting…" : "Delete property"
2234
2259
  })] })]
2235
2260
  })
2236
2261
  })
@@ -2238,6 +2263,6 @@ var Ct = () => {
2238
2263
  });
2239
2264
  };
2240
2265
  //#endregion
2241
- export { Ct as PropertyDetailPage };
2266
+ export { wt as PropertyDetailPage };
2242
2267
 
2243
2268
  //# sourceMappingURL=PropertyDetailPage.js.map