@burdenoff/microfe-housingvista 2026.709.2 → 2026.709.3
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/housingvista/HousingVistaRoutes.d.ts.map +1 -1
- package/dist/housingvista/HousingVistaRoutes.js +136 -37
- package/dist/housingvista/HousingVistaRoutes.js.map +1 -1
- package/dist/housingvista/hooks/useHousingVistaAnalytics.d.ts +1 -1
- package/dist/housingvista/hooks/useHousingVistaAnalytics.d.ts.map +1 -1
- package/dist/housingvista/hooks/useHousingVistaAnalytics.js +4 -4
- package/dist/housingvista/hooks/useHousingVistaAnalytics.js.map +1 -1
- package/dist/housingvista/pages/amc/AMCManagementPage.d.ts.map +1 -1
- package/dist/housingvista/pages/amc/AMCManagementPage.js +62 -60
- package/dist/housingvista/pages/amc/AMCManagementPage.js.map +1 -1
- package/dist/housingvista/pages/assets/AssetDetailPage.d.ts.map +1 -1
- package/dist/housingvista/pages/assets/AssetDetailPage.js +141 -138
- package/dist/housingvista/pages/assets/AssetDetailPage.js.map +1 -1
- package/dist/housingvista/pages/assets/AssetManagementPage.d.ts.map +1 -1
- package/dist/housingvista/pages/assets/AssetManagementPage.js +193 -191
- package/dist/housingvista/pages/assets/AssetManagementPage.js.map +1 -1
- package/dist/housingvista/pages/chat/ChatPage.d.ts.map +1 -1
- package/dist/housingvista/pages/chat/ChatPage.js +115 -113
- package/dist/housingvista/pages/chat/ChatPage.js.map +1 -1
- package/dist/housingvista/pages/finance/HomeLoanDetailPage.d.ts.map +1 -1
- package/dist/housingvista/pages/finance/HomeLoanDetailPage.js +152 -149
- package/dist/housingvista/pages/finance/HomeLoanDetailPage.js.map +1 -1
- package/dist/housingvista/pages/finance/HomeLoansPage.d.ts.map +1 -1
- package/dist/housingvista/pages/finance/HomeLoansPage.js +141 -139
- package/dist/housingvista/pages/finance/HomeLoansPage.js.map +1 -1
- package/dist/housingvista/pages/investments/InvestmentDetailPage.d.ts.map +1 -1
- package/dist/housingvista/pages/investments/InvestmentDetailPage.js +290 -287
- package/dist/housingvista/pages/investments/InvestmentDetailPage.js.map +1 -1
- package/dist/housingvista/pages/investments/InvestmentsPage.d.ts.map +1 -1
- package/dist/housingvista/pages/investments/InvestmentsPage.js +64 -62
- package/dist/housingvista/pages/investments/InvestmentsPage.js.map +1 -1
- package/dist/housingvista/pages/legal/LegalPage.d.ts.map +1 -1
- package/dist/housingvista/pages/legal/LegalPage.js +95 -93
- package/dist/housingvista/pages/legal/LegalPage.js.map +1 -1
- package/dist/housingvista/pages/legal/LegalServiceDetailPage.d.ts.map +1 -1
- package/dist/housingvista/pages/legal/LegalServiceDetailPage.js +129 -126
- package/dist/housingvista/pages/legal/LegalServiceDetailPage.js.map +1 -1
- package/dist/housingvista/pages/market/AreaInsightsPage.d.ts.map +1 -1
- package/dist/housingvista/pages/market/AreaInsightsPage.js +99 -97
- package/dist/housingvista/pages/market/AreaInsightsPage.js.map +1 -1
- package/dist/housingvista/pages/market/MarketAnalyticsPage.d.ts.map +1 -1
- package/dist/housingvista/pages/market/MarketAnalyticsPage.js +138 -136
- package/dist/housingvista/pages/market/MarketAnalyticsPage.js.map +1 -1
- package/dist/housingvista/pages/marketplace/MarketplacePage.d.ts.map +1 -1
- package/dist/housingvista/pages/marketplace/MarketplacePage.js +99 -97
- package/dist/housingvista/pages/marketplace/MarketplacePage.js.map +1 -1
- package/dist/housingvista/pages/marketplace/ServiceDetailPage.d.ts.map +1 -1
- package/dist/housingvista/pages/marketplace/ServiceDetailPage.js +137 -134
- package/dist/housingvista/pages/marketplace/ServiceDetailPage.js.map +1 -1
- package/dist/housingvista/pages/offers/OffersPage.d.ts.map +1 -1
- package/dist/housingvista/pages/offers/OffersPage.js +94 -92
- package/dist/housingvista/pages/offers/OffersPage.js.map +1 -1
- package/dist/housingvista/pages/properties/AddPropertyPage.d.ts.map +1 -1
- package/dist/housingvista/pages/properties/AddPropertyPage.js +280 -279
- package/dist/housingvista/pages/properties/AddPropertyPage.js.map +1 -1
- package/dist/housingvista/pages/rental/RentalManagementPage.d.ts.map +1 -1
- package/dist/housingvista/pages/rental/RentalManagementPage.js +153 -151
- package/dist/housingvista/pages/rental/RentalManagementPage.js.map +1 -1
- package/dist/housingvista/pages/settings/ProfilePage.d.ts.map +1 -1
- package/dist/housingvista/pages/settings/ProfilePage.js +52 -50
- package/dist/housingvista/pages/settings/ProfilePage.js.map +1 -1
- package/dist/housingvista/pages/settings/SettingsPage.d.ts.map +1 -1
- package/dist/housingvista/pages/settings/SettingsPage.js +54 -52
- package/dist/housingvista/pages/settings/SettingsPage.js.map +1 -1
- package/dist/housingvista/pages/shortlist/ShortlistPage.d.ts.map +1 -1
- package/dist/housingvista/pages/shortlist/ShortlistPage.js +43 -41
- package/dist/housingvista/pages/shortlist/ShortlistPage.js.map +1 -1
- package/dist/housingvista/pages/transactions/TransactionDetailPage.d.ts.map +1 -1
- package/dist/housingvista/pages/transactions/TransactionDetailPage.js +211 -208
- package/dist/housingvista/pages/transactions/TransactionDetailPage.js.map +1 -1
- package/dist/housingvista/pages/transactions/TransactionsPage.d.ts.map +1 -1
- package/dist/housingvista/pages/transactions/TransactionsPage.js +85 -83
- package/dist/housingvista/pages/transactions/TransactionsPage.js.map +1 -1
- package/dist/housingvista/pages/verification/VerificationDetailPage.d.ts.map +1 -1
- package/dist/housingvista/pages/verification/VerificationDetailPage.js +25 -22
- package/dist/housingvista/pages/verification/VerificationDetailPage.js.map +1 -1
- package/dist/housingvista/pages/verification/VerificationPage.d.ts.map +1 -1
- package/dist/housingvista/pages/verification/VerificationPage.js +123 -121
- package/dist/housingvista/pages/verification/VerificationPage.js.map +1 -1
- package/dist/housingvista/pages/viewings/ViewingsPage.d.ts.map +1 -1
- package/dist/housingvista/pages/viewings/ViewingsPage.js +128 -126
- package/dist/housingvista/pages/viewings/ViewingsPage.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,102 +1,103 @@
|
|
|
1
1
|
import { cn as e } from "../../utils/helpers.js";
|
|
2
2
|
import { PageLayout as t } from "../../components/PageLayout.js";
|
|
3
3
|
import { Breadcrumbs as n } from "../../components/Breadcrumbs.js";
|
|
4
|
-
import { useHousingVistaAnalytics as r } from "../../hooks/useHousingVistaAnalytics.js";
|
|
5
|
-
import { useCreateProperty as
|
|
6
|
-
import { notify as
|
|
7
|
-
import { FileUploader as
|
|
4
|
+
import { useHousingVistaAnalytics as r, useTrackPageView as i } from "../../hooks/useHousingVistaAnalytics.js";
|
|
5
|
+
import { useCreateProperty as a } from "../../hooks/index.js";
|
|
6
|
+
import { notify as o } from "../../lib/toast.js";
|
|
7
|
+
import { FileUploader as s } from "../../components/FileUploader.js";
|
|
8
8
|
import "../../components/index.js";
|
|
9
|
-
import { useCallback as
|
|
10
|
-
import { Bath as
|
|
11
|
-
import { useNavigate as
|
|
12
|
-
import { jsx as
|
|
13
|
-
import { EmphasisPanel as
|
|
9
|
+
import { useCallback as c, useState as l } from "react";
|
|
10
|
+
import { Bath as u, Bed as d, Calendar as f, Car as p, CheckCircle as m, ChevronLeft as h, ChevronRight as g, DollarSign as _, Dumbbell as v, Flame as y, Home as b, MapPin as x, Maximize as S, Shield as C, TreePine as w, Upload as T, Waves as E, Wifi as D, Wind as O } from "lucide-react";
|
|
11
|
+
import { useNavigate as k } from "react-router-dom";
|
|
12
|
+
import { jsx as A, jsxs as j } from "react/jsx-runtime";
|
|
13
|
+
import { EmphasisPanel as M } from "@burdenoff/fe-libs/ui";
|
|
14
14
|
//#region src/housingvista/pages/properties/AddPropertyPage.tsx
|
|
15
|
-
var
|
|
15
|
+
var N = {
|
|
16
16
|
sale: "for_sale",
|
|
17
17
|
rent: "for_rent",
|
|
18
18
|
lease: "for_rent"
|
|
19
|
-
},
|
|
19
|
+
}, P = {
|
|
20
20
|
sale: "sale",
|
|
21
21
|
rent: "rent",
|
|
22
22
|
lease: "lease"
|
|
23
|
-
},
|
|
23
|
+
}, F = [
|
|
24
24
|
{
|
|
25
25
|
id: "basic",
|
|
26
26
|
label: "Basic Info",
|
|
27
|
-
icon:
|
|
27
|
+
icon: b
|
|
28
28
|
},
|
|
29
29
|
{
|
|
30
30
|
id: "location",
|
|
31
31
|
label: "Location",
|
|
32
|
-
icon:
|
|
32
|
+
icon: x
|
|
33
33
|
},
|
|
34
34
|
{
|
|
35
35
|
id: "specs",
|
|
36
36
|
label: "Specifications",
|
|
37
|
-
icon:
|
|
37
|
+
icon: S
|
|
38
38
|
},
|
|
39
39
|
{
|
|
40
40
|
id: "amenities",
|
|
41
41
|
label: "Amenities",
|
|
42
|
-
icon:
|
|
42
|
+
icon: D
|
|
43
43
|
},
|
|
44
44
|
{
|
|
45
45
|
id: "pricing",
|
|
46
46
|
label: "Pricing",
|
|
47
|
-
icon:
|
|
47
|
+
icon: _
|
|
48
48
|
},
|
|
49
49
|
{
|
|
50
50
|
id: "images",
|
|
51
51
|
label: "Images",
|
|
52
|
-
icon:
|
|
52
|
+
icon: T
|
|
53
53
|
}
|
|
54
|
-
],
|
|
54
|
+
], I = [
|
|
55
55
|
{
|
|
56
56
|
id: "swimming_pool",
|
|
57
57
|
label: "Swimming Pool",
|
|
58
|
-
icon:
|
|
58
|
+
icon: E
|
|
59
59
|
},
|
|
60
60
|
{
|
|
61
61
|
id: "gym",
|
|
62
62
|
label: "Gym / Fitness",
|
|
63
|
-
icon:
|
|
63
|
+
icon: v
|
|
64
64
|
},
|
|
65
65
|
{
|
|
66
66
|
id: "parking",
|
|
67
67
|
label: "Parking",
|
|
68
|
-
icon:
|
|
68
|
+
icon: p
|
|
69
69
|
},
|
|
70
70
|
{
|
|
71
71
|
id: "garden",
|
|
72
72
|
label: "Garden",
|
|
73
|
-
icon:
|
|
73
|
+
icon: w
|
|
74
74
|
},
|
|
75
75
|
{
|
|
76
76
|
id: "security",
|
|
77
77
|
label: "24/7 Security",
|
|
78
|
-
icon:
|
|
78
|
+
icon: C
|
|
79
79
|
},
|
|
80
80
|
{
|
|
81
81
|
id: "wifi",
|
|
82
82
|
label: "Wi-Fi",
|
|
83
|
-
icon:
|
|
83
|
+
icon: D
|
|
84
84
|
},
|
|
85
85
|
{
|
|
86
86
|
id: "fireplace",
|
|
87
87
|
label: "Fireplace",
|
|
88
|
-
icon:
|
|
88
|
+
icon: y
|
|
89
89
|
},
|
|
90
90
|
{
|
|
91
91
|
id: "ac",
|
|
92
92
|
label: "Central AC",
|
|
93
|
-
icon:
|
|
93
|
+
icon: O
|
|
94
94
|
}
|
|
95
|
-
],
|
|
95
|
+
], L = [{
|
|
96
96
|
label: "Properties",
|
|
97
97
|
href: "../"
|
|
98
|
-
}, { label: "Add New" }],
|
|
99
|
-
|
|
98
|
+
}, { label: "Add New" }], R = () => {
|
|
99
|
+
i("housingvista.property.create_viewed");
|
|
100
|
+
let v = k(), { createProperty: y, loading: b } = a(), { emitResource: C } = r(), [w, E] = l(0), [D, O] = l({
|
|
100
101
|
title: "",
|
|
101
102
|
description: "",
|
|
102
103
|
propertyType: "residential",
|
|
@@ -121,132 +122,132 @@ var M = {
|
|
|
121
122
|
currency: "USD",
|
|
122
123
|
negotiable: !1,
|
|
123
124
|
images: []
|
|
124
|
-
}),
|
|
125
|
-
|
|
125
|
+
}), R = c((e) => {
|
|
126
|
+
O((t) => {
|
|
126
127
|
let n = new Set(t.images.map((e) => e.id)), r = [...t.images, ...e.filter((e) => !n.has(e.id))];
|
|
127
128
|
return {
|
|
128
129
|
...t,
|
|
129
130
|
images: r
|
|
130
131
|
};
|
|
131
132
|
});
|
|
132
|
-
}, []),
|
|
133
|
-
|
|
133
|
+
}, []), z = c((e) => {
|
|
134
|
+
O((t) => ({
|
|
134
135
|
...t,
|
|
135
136
|
images: t.images.filter((t) => t.id !== e)
|
|
136
137
|
}));
|
|
137
|
-
}, []),
|
|
138
|
+
}, []), B = c((e) => {
|
|
138
139
|
let { name: t, value: n, type: r } = e.target;
|
|
139
|
-
|
|
140
|
+
O((i) => ({
|
|
140
141
|
...i,
|
|
141
142
|
[t]: r === "checkbox" ? e.target.checked : n
|
|
142
143
|
}));
|
|
143
|
-
}, []),
|
|
144
|
-
|
|
144
|
+
}, []), V = c((e) => {
|
|
145
|
+
O((t) => ({
|
|
145
146
|
...t,
|
|
146
147
|
amenities: t.amenities.includes(e) ? t.amenities.filter((t) => t !== e) : [...t.amenities, e]
|
|
147
148
|
}));
|
|
148
|
-
}, []),
|
|
149
|
-
switch (
|
|
150
|
-
case 0: return
|
|
151
|
-
case 1: return
|
|
152
|
-
case 2: return
|
|
149
|
+
}, []), H = () => {
|
|
150
|
+
switch (w) {
|
|
151
|
+
case 0: return D.title.trim() !== "" && D.description.trim() !== "";
|
|
152
|
+
case 1: return D.address.trim() !== "" && D.city.trim() !== "" && D.state.trim() !== "";
|
|
153
|
+
case 2: return D.area.trim() !== "";
|
|
153
154
|
case 3: return !0;
|
|
154
|
-
case 4: return
|
|
155
|
+
case 4: return D.price.trim() !== "";
|
|
155
156
|
case 5: return !0;
|
|
156
157
|
default: return !1;
|
|
157
158
|
}
|
|
158
|
-
},
|
|
159
|
+
}, U = async () => {
|
|
159
160
|
let e = {
|
|
160
|
-
title:
|
|
161
|
-
description:
|
|
162
|
-
status:
|
|
163
|
-
type:
|
|
164
|
-
category:
|
|
165
|
-
address:
|
|
166
|
-
city:
|
|
167
|
-
state:
|
|
168
|
-
country:
|
|
169
|
-
pincode:
|
|
170
|
-
neighborhood:
|
|
171
|
-
price: Number(
|
|
172
|
-
currency:
|
|
173
|
-
priceType:
|
|
174
|
-
negotiable:
|
|
175
|
-
bedrooms: Number(
|
|
176
|
-
bathrooms: Number(
|
|
177
|
-
totalArea: Number(
|
|
178
|
-
floors:
|
|
179
|
-
parking:
|
|
180
|
-
furnishingStatus:
|
|
181
|
-
ageOfProperty:
|
|
182
|
-
facing:
|
|
183
|
-
amenities:
|
|
184
|
-
name:
|
|
161
|
+
title: D.title.trim(),
|
|
162
|
+
description: D.description.trim() || void 0,
|
|
163
|
+
status: N[D.listingType] ?? "for_sale",
|
|
164
|
+
type: D.propertyType,
|
|
165
|
+
category: D.category,
|
|
166
|
+
address: D.address.trim() || void 0,
|
|
167
|
+
city: D.city.trim(),
|
|
168
|
+
state: D.state.trim(),
|
|
169
|
+
country: D.country || void 0,
|
|
170
|
+
pincode: D.zipCode.trim() || void 0,
|
|
171
|
+
neighborhood: D.neighborhood.trim() || void 0,
|
|
172
|
+
price: Number(D.price) || 0,
|
|
173
|
+
currency: D.currency,
|
|
174
|
+
priceType: P[D.listingType] ?? "sale",
|
|
175
|
+
negotiable: D.negotiable,
|
|
176
|
+
bedrooms: Number(D.bedrooms) || 0,
|
|
177
|
+
bathrooms: Number(D.bathrooms) || 0,
|
|
178
|
+
totalArea: Number(D.area) || 0,
|
|
179
|
+
floors: D.floors ? Number(D.floors) : void 0,
|
|
180
|
+
parking: D.parking ? Number(D.parking) : void 0,
|
|
181
|
+
furnishingStatus: D.furnishing,
|
|
182
|
+
ageOfProperty: D.yearBuilt ? Math.max(0, (/* @__PURE__ */ new Date()).getFullYear() - Number(D.yearBuilt)) : void 0,
|
|
183
|
+
facing: D.facing,
|
|
184
|
+
amenities: D.amenities.map((e) => ({
|
|
185
|
+
name: I.find((t) => t.id === e)?.label ?? e,
|
|
185
186
|
category: "general",
|
|
186
187
|
available: !0
|
|
187
188
|
})),
|
|
188
|
-
images:
|
|
189
|
+
images: D.images.map((e, t) => ({
|
|
189
190
|
url: e.url,
|
|
190
191
|
isPrimary: t === 0,
|
|
191
192
|
order: t
|
|
192
193
|
}))
|
|
193
194
|
};
|
|
194
195
|
try {
|
|
195
|
-
let t = await
|
|
196
|
-
|
|
196
|
+
let t = await y(e);
|
|
197
|
+
C("housingvista.property.created", t.id), o.success("Property created", `${t.title} has been added to your listings.`), v(`../properties/${t.id}`);
|
|
197
198
|
} catch (e) {
|
|
198
|
-
|
|
199
|
+
o.error("Could not create property", e.message);
|
|
199
200
|
}
|
|
200
|
-
},
|
|
201
|
-
return /* @__PURE__ */
|
|
201
|
+
}, W = w === F.length - 1;
|
|
202
|
+
return /* @__PURE__ */ j(t, {
|
|
202
203
|
title: "Add New Property",
|
|
203
204
|
description: "List your property for sale or rent",
|
|
204
205
|
purpose: "Create a complete, market-ready listing in a few guided steps. Fill in the basics, location, specifications, amenities, pricing, and photos — the more detail you add, the more inquiries and stronger offers your property attracts.",
|
|
205
206
|
children: [
|
|
206
|
-
/* @__PURE__ */
|
|
207
|
-
/* @__PURE__ */
|
|
207
|
+
/* @__PURE__ */ A(n, { items: L }),
|
|
208
|
+
/* @__PURE__ */ j(M, {
|
|
208
209
|
className: "p-5",
|
|
209
210
|
children: [
|
|
210
|
-
/* @__PURE__ */
|
|
211
|
+
/* @__PURE__ */ j("div", {
|
|
211
212
|
className: "mb-3 flex items-center justify-between",
|
|
212
|
-
children: [/* @__PURE__ */
|
|
213
|
+
children: [/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ j("p", {
|
|
213
214
|
className: "text-xs font-medium uppercase tracking-wide text-text-secondary",
|
|
214
215
|
children: [
|
|
215
216
|
"Step ",
|
|
216
|
-
|
|
217
|
+
w + 1,
|
|
217
218
|
" of ",
|
|
218
|
-
|
|
219
|
+
F.length
|
|
219
220
|
]
|
|
220
|
-
}), /* @__PURE__ */
|
|
221
|
+
}), /* @__PURE__ */ A("p", {
|
|
221
222
|
className: "text-base font-semibold text-text-primary",
|
|
222
|
-
children:
|
|
223
|
-
})] }), /* @__PURE__ */
|
|
223
|
+
children: F[w].label
|
|
224
|
+
})] }), /* @__PURE__ */ j("span", {
|
|
224
225
|
className: "text-sm font-semibold text-text-primary",
|
|
225
|
-
children: [Math.round((
|
|
226
|
+
children: [Math.round((w + 1) / F.length * 100), "%"]
|
|
226
227
|
})]
|
|
227
228
|
}),
|
|
228
|
-
/* @__PURE__ */
|
|
229
|
+
/* @__PURE__ */ A("div", {
|
|
229
230
|
className: "h-1.5 w-full overflow-hidden rounded-full bg-bg-sunken",
|
|
230
|
-
children: /* @__PURE__ */
|
|
231
|
+
children: /* @__PURE__ */ A("div", {
|
|
231
232
|
className: "h-full rounded-full bg-action-primary-bg transition-[width] duration-300",
|
|
232
|
-
style: { width: `${(
|
|
233
|
+
style: { width: `${(w + 1) / F.length * 100}%` }
|
|
233
234
|
})
|
|
234
235
|
}),
|
|
235
|
-
/* @__PURE__ */
|
|
236
|
+
/* @__PURE__ */ A("div", {
|
|
236
237
|
className: "mt-4 flex items-center gap-1 overflow-x-auto pb-1",
|
|
237
|
-
children:
|
|
238
|
-
let r = t.icon, i = n ===
|
|
239
|
-
return /* @__PURE__ */
|
|
240
|
-
onClick: () => n <=
|
|
241
|
-
className: e("flex shrink-0 items-center gap-2 rounded-full px-3 py-1.5 text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-focus-ring)]", i && "bg-action-primary-bg text-action-primary-text", a && "bg-status-success-bg-subtle text-status-success-text", !i && !a && "text-text-secondary hover:bg-bg-sunken/50", n >
|
|
242
|
-
disabled: n >
|
|
238
|
+
children: F.map((t, n) => {
|
|
239
|
+
let r = t.icon, i = n === w, a = n < w;
|
|
240
|
+
return /* @__PURE__ */ j("button", {
|
|
241
|
+
onClick: () => n <= w && E(n),
|
|
242
|
+
className: e("flex shrink-0 items-center gap-2 rounded-full px-3 py-1.5 text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-focus-ring)]", i && "bg-action-primary-bg text-action-primary-text", a && "bg-status-success-bg-subtle text-status-success-text", !i && !a && "text-text-secondary hover:bg-bg-sunken/50", n > w && "cursor-not-allowed"),
|
|
243
|
+
disabled: n > w,
|
|
243
244
|
children: [
|
|
244
|
-
|
|
245
|
-
/* @__PURE__ */
|
|
245
|
+
A(a ? m : r, { className: "h-4 w-4" }),
|
|
246
|
+
/* @__PURE__ */ A("span", {
|
|
246
247
|
className: "hidden sm:inline",
|
|
247
248
|
children: t.label
|
|
248
249
|
}),
|
|
249
|
-
/* @__PURE__ */
|
|
250
|
+
/* @__PURE__ */ A("span", {
|
|
250
251
|
className: "sm:hidden",
|
|
251
252
|
children: n + 1
|
|
252
253
|
})
|
|
@@ -256,145 +257,145 @@ var M = {
|
|
|
256
257
|
})
|
|
257
258
|
]
|
|
258
259
|
}),
|
|
259
|
-
/* @__PURE__ */
|
|
260
|
+
/* @__PURE__ */ j("div", {
|
|
260
261
|
className: "max-w-3xl",
|
|
261
|
-
children: [/* @__PURE__ */
|
|
262
|
+
children: [/* @__PURE__ */ j("div", {
|
|
262
263
|
className: "rounded-lg border border-border-subtle bg-bg-surface p-6",
|
|
263
264
|
children: [
|
|
264
|
-
|
|
265
|
+
w === 0 && /* @__PURE__ */ j("div", {
|
|
265
266
|
className: "space-y-4",
|
|
266
267
|
children: [
|
|
267
|
-
/* @__PURE__ */
|
|
268
|
+
/* @__PURE__ */ A("h3", {
|
|
268
269
|
className: "text-lg font-semibold text-text-primary",
|
|
269
270
|
children: "Basic Information"
|
|
270
271
|
}),
|
|
271
|
-
/* @__PURE__ */
|
|
272
|
+
/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ A("label", {
|
|
272
273
|
htmlFor: "title",
|
|
273
274
|
className: "mb-1.5 block text-sm font-medium text-text-primary",
|
|
274
275
|
children: "Property Title *"
|
|
275
|
-
}), /* @__PURE__ */
|
|
276
|
+
}), /* @__PURE__ */ A("input", {
|
|
276
277
|
id: "title",
|
|
277
278
|
name: "title",
|
|
278
|
-
value:
|
|
279
|
-
onChange:
|
|
279
|
+
value: D.title,
|
|
280
|
+
onChange: B,
|
|
280
281
|
placeholder: "e.g., Luxury 3BHK Apartment in Downtown",
|
|
281
282
|
required: !0,
|
|
282
283
|
className: "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)]"
|
|
283
284
|
})] }),
|
|
284
|
-
/* @__PURE__ */
|
|
285
|
+
/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ A("label", {
|
|
285
286
|
htmlFor: "description",
|
|
286
287
|
className: "mb-1.5 block text-sm font-medium text-text-primary",
|
|
287
288
|
children: "Description *"
|
|
288
|
-
}), /* @__PURE__ */
|
|
289
|
+
}), /* @__PURE__ */ A("textarea", {
|
|
289
290
|
id: "description",
|
|
290
291
|
name: "description",
|
|
291
|
-
value:
|
|
292
|
-
onChange:
|
|
292
|
+
value: D.description,
|
|
293
|
+
onChange: B,
|
|
293
294
|
placeholder: "Describe your property in detail...",
|
|
294
295
|
required: !0,
|
|
295
296
|
rows: 4,
|
|
296
297
|
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)]"
|
|
297
298
|
})] }),
|
|
298
|
-
/* @__PURE__ */
|
|
299
|
+
/* @__PURE__ */ j("div", {
|
|
299
300
|
className: "grid grid-cols-1 gap-4 sm:grid-cols-2",
|
|
300
|
-
children: [/* @__PURE__ */
|
|
301
|
+
children: [/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ A("label", {
|
|
301
302
|
htmlFor: "propertyType",
|
|
302
303
|
className: "mb-1.5 block text-sm font-medium text-text-primary",
|
|
303
304
|
children: "Property Type *"
|
|
304
|
-
}), /* @__PURE__ */
|
|
305
|
+
}), /* @__PURE__ */ j("select", {
|
|
305
306
|
id: "propertyType",
|
|
306
307
|
name: "propertyType",
|
|
307
|
-
value:
|
|
308
|
-
onChange:
|
|
308
|
+
value: D.propertyType,
|
|
309
|
+
onChange: B,
|
|
309
310
|
className: "h-10 w-full rounded-md border border-border-subtle bg-bg-surface px-3 text-sm text-text-primary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]",
|
|
310
311
|
children: [
|
|
311
|
-
/* @__PURE__ */
|
|
312
|
+
/* @__PURE__ */ A("option", {
|
|
312
313
|
value: "residential",
|
|
313
314
|
children: "Residential"
|
|
314
315
|
}),
|
|
315
|
-
/* @__PURE__ */
|
|
316
|
+
/* @__PURE__ */ A("option", {
|
|
316
317
|
value: "commercial",
|
|
317
318
|
children: "Commercial"
|
|
318
319
|
}),
|
|
319
|
-
/* @__PURE__ */
|
|
320
|
+
/* @__PURE__ */ A("option", {
|
|
320
321
|
value: "industrial",
|
|
321
322
|
children: "Industrial"
|
|
322
323
|
}),
|
|
323
|
-
/* @__PURE__ */
|
|
324
|
+
/* @__PURE__ */ A("option", {
|
|
324
325
|
value: "agricultural",
|
|
325
326
|
children: "Agricultural"
|
|
326
327
|
}),
|
|
327
|
-
/* @__PURE__ */
|
|
328
|
+
/* @__PURE__ */ A("option", {
|
|
328
329
|
value: "mixed_use",
|
|
329
330
|
children: "Mixed Use"
|
|
330
331
|
})
|
|
331
332
|
]
|
|
332
|
-
})] }), /* @__PURE__ */
|
|
333
|
+
})] }), /* @__PURE__ */ j("div", { children: [/* @__PURE__ */ A("label", {
|
|
333
334
|
htmlFor: "category",
|
|
334
335
|
className: "mb-1.5 block text-sm font-medium text-text-primary",
|
|
335
336
|
children: "Category *"
|
|
336
|
-
}), /* @__PURE__ */
|
|
337
|
+
}), /* @__PURE__ */ j("select", {
|
|
337
338
|
id: "category",
|
|
338
339
|
name: "category",
|
|
339
|
-
value:
|
|
340
|
-
onChange:
|
|
340
|
+
value: D.category,
|
|
341
|
+
onChange: B,
|
|
341
342
|
className: "h-10 w-full rounded-md border border-border-subtle bg-bg-surface px-3 text-sm text-text-primary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]",
|
|
342
343
|
children: [
|
|
343
|
-
/* @__PURE__ */
|
|
344
|
+
/* @__PURE__ */ A("option", {
|
|
344
345
|
value: "apartment",
|
|
345
346
|
children: "Apartment"
|
|
346
347
|
}),
|
|
347
|
-
/* @__PURE__ */
|
|
348
|
+
/* @__PURE__ */ A("option", {
|
|
348
349
|
value: "house",
|
|
349
350
|
children: "House"
|
|
350
351
|
}),
|
|
351
|
-
/* @__PURE__ */
|
|
352
|
+
/* @__PURE__ */ A("option", {
|
|
352
353
|
value: "villa",
|
|
353
354
|
children: "Villa"
|
|
354
355
|
}),
|
|
355
|
-
/* @__PURE__ */
|
|
356
|
+
/* @__PURE__ */ A("option", {
|
|
356
357
|
value: "office",
|
|
357
358
|
children: "Office"
|
|
358
359
|
}),
|
|
359
|
-
/* @__PURE__ */
|
|
360
|
+
/* @__PURE__ */ A("option", {
|
|
360
361
|
value: "retail",
|
|
361
362
|
children: "Retail"
|
|
362
363
|
}),
|
|
363
|
-
/* @__PURE__ */
|
|
364
|
+
/* @__PURE__ */ A("option", {
|
|
364
365
|
value: "warehouse",
|
|
365
366
|
children: "Warehouse"
|
|
366
367
|
}),
|
|
367
|
-
/* @__PURE__ */
|
|
368
|
+
/* @__PURE__ */ A("option", {
|
|
368
369
|
value: "land",
|
|
369
370
|
children: "Land"
|
|
370
371
|
}),
|
|
371
|
-
/* @__PURE__ */
|
|
372
|
+
/* @__PURE__ */ A("option", {
|
|
372
373
|
value: "plot",
|
|
373
374
|
children: "Plot"
|
|
374
375
|
})
|
|
375
376
|
]
|
|
376
377
|
})] })]
|
|
377
378
|
}),
|
|
378
|
-
/* @__PURE__ */
|
|
379
|
+
/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ A("label", {
|
|
379
380
|
htmlFor: "listingType",
|
|
380
381
|
className: "mb-1.5 block text-sm font-medium text-text-primary",
|
|
381
382
|
children: "Listing Type *"
|
|
382
|
-
}), /* @__PURE__ */
|
|
383
|
+
}), /* @__PURE__ */ j("select", {
|
|
383
384
|
id: "listingType",
|
|
384
385
|
name: "listingType",
|
|
385
|
-
value:
|
|
386
|
-
onChange:
|
|
386
|
+
value: D.listingType,
|
|
387
|
+
onChange: B,
|
|
387
388
|
className: "h-10 w-full rounded-md border border-border-subtle bg-bg-surface px-3 text-sm text-text-primary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)] sm:max-w-xs",
|
|
388
389
|
children: [
|
|
389
|
-
/* @__PURE__ */
|
|
390
|
+
/* @__PURE__ */ A("option", {
|
|
390
391
|
value: "sale",
|
|
391
392
|
children: "For Sale"
|
|
392
393
|
}),
|
|
393
|
-
/* @__PURE__ */
|
|
394
|
+
/* @__PURE__ */ A("option", {
|
|
394
395
|
value: "rent",
|
|
395
396
|
children: "For Rent"
|
|
396
397
|
}),
|
|
397
|
-
/* @__PURE__ */
|
|
398
|
+
/* @__PURE__ */ A("option", {
|
|
398
399
|
value: "lease",
|
|
399
400
|
children: "For Lease"
|
|
400
401
|
})
|
|
@@ -402,106 +403,106 @@ var M = {
|
|
|
402
403
|
})] })
|
|
403
404
|
]
|
|
404
405
|
}),
|
|
405
|
-
|
|
406
|
+
w === 1 && /* @__PURE__ */ j("div", {
|
|
406
407
|
className: "space-y-4",
|
|
407
408
|
children: [
|
|
408
|
-
/* @__PURE__ */
|
|
409
|
+
/* @__PURE__ */ j("h3", {
|
|
409
410
|
className: "flex items-center gap-2 text-lg font-semibold text-text-primary",
|
|
410
|
-
children: [/* @__PURE__ */
|
|
411
|
+
children: [/* @__PURE__ */ A(x, { className: "h-5 w-5" }), "Location Details"]
|
|
411
412
|
}),
|
|
412
|
-
/* @__PURE__ */
|
|
413
|
+
/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ A("label", {
|
|
413
414
|
htmlFor: "address",
|
|
414
415
|
className: "mb-1.5 block text-sm font-medium text-text-primary",
|
|
415
416
|
children: "Street Address *"
|
|
416
|
-
}), /* @__PURE__ */
|
|
417
|
+
}), /* @__PURE__ */ A("input", {
|
|
417
418
|
id: "address",
|
|
418
419
|
name: "address",
|
|
419
|
-
value:
|
|
420
|
-
onChange:
|
|
420
|
+
value: D.address,
|
|
421
|
+
onChange: B,
|
|
421
422
|
placeholder: "e.g., 123 Main Street, Unit 2504",
|
|
422
423
|
required: !0,
|
|
423
424
|
className: "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)]"
|
|
424
425
|
})] }),
|
|
425
|
-
/* @__PURE__ */
|
|
426
|
+
/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ A("label", {
|
|
426
427
|
htmlFor: "neighborhood",
|
|
427
428
|
className: "mb-1.5 block text-sm font-medium text-text-primary",
|
|
428
429
|
children: "Neighborhood"
|
|
429
|
-
}), /* @__PURE__ */
|
|
430
|
+
}), /* @__PURE__ */ A("input", {
|
|
430
431
|
id: "neighborhood",
|
|
431
432
|
name: "neighborhood",
|
|
432
|
-
value:
|
|
433
|
-
onChange:
|
|
433
|
+
value: D.neighborhood,
|
|
434
|
+
onChange: B,
|
|
434
435
|
placeholder: "e.g., Midtown",
|
|
435
436
|
className: "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)]"
|
|
436
437
|
})] }),
|
|
437
|
-
/* @__PURE__ */
|
|
438
|
+
/* @__PURE__ */ j("div", {
|
|
438
439
|
className: "grid grid-cols-1 gap-4 sm:grid-cols-3",
|
|
439
440
|
children: [
|
|
440
|
-
/* @__PURE__ */
|
|
441
|
+
/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ A("label", {
|
|
441
442
|
htmlFor: "city",
|
|
442
443
|
className: "mb-1.5 block text-sm font-medium text-text-primary",
|
|
443
444
|
children: "City *"
|
|
444
|
-
}), /* @__PURE__ */
|
|
445
|
+
}), /* @__PURE__ */ A("input", {
|
|
445
446
|
id: "city",
|
|
446
447
|
name: "city",
|
|
447
|
-
value:
|
|
448
|
-
onChange:
|
|
448
|
+
value: D.city,
|
|
449
|
+
onChange: B,
|
|
449
450
|
placeholder: "City",
|
|
450
451
|
required: !0,
|
|
451
452
|
className: "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)]"
|
|
452
453
|
})] }),
|
|
453
|
-
/* @__PURE__ */
|
|
454
|
+
/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ A("label", {
|
|
454
455
|
htmlFor: "state",
|
|
455
456
|
className: "mb-1.5 block text-sm font-medium text-text-primary",
|
|
456
457
|
children: "State *"
|
|
457
|
-
}), /* @__PURE__ */
|
|
458
|
+
}), /* @__PURE__ */ A("input", {
|
|
458
459
|
id: "state",
|
|
459
460
|
name: "state",
|
|
460
|
-
value:
|
|
461
|
-
onChange:
|
|
461
|
+
value: D.state,
|
|
462
|
+
onChange: B,
|
|
462
463
|
placeholder: "State",
|
|
463
464
|
required: !0,
|
|
464
465
|
className: "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)]"
|
|
465
466
|
})] }),
|
|
466
|
-
/* @__PURE__ */
|
|
467
|
+
/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ A("label", {
|
|
467
468
|
htmlFor: "zipCode",
|
|
468
469
|
className: "mb-1.5 block text-sm font-medium text-text-primary",
|
|
469
470
|
children: "ZIP Code *"
|
|
470
|
-
}), /* @__PURE__ */
|
|
471
|
+
}), /* @__PURE__ */ A("input", {
|
|
471
472
|
id: "zipCode",
|
|
472
473
|
name: "zipCode",
|
|
473
|
-
value:
|
|
474
|
-
onChange:
|
|
474
|
+
value: D.zipCode,
|
|
475
|
+
onChange: B,
|
|
475
476
|
placeholder: "ZIP Code",
|
|
476
477
|
required: !0,
|
|
477
478
|
className: "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)]"
|
|
478
479
|
})] })
|
|
479
480
|
]
|
|
480
481
|
}),
|
|
481
|
-
/* @__PURE__ */
|
|
482
|
+
/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ A("label", {
|
|
482
483
|
htmlFor: "country",
|
|
483
484
|
className: "mb-1.5 block text-sm font-medium text-text-primary",
|
|
484
485
|
children: "Country"
|
|
485
|
-
}), /* @__PURE__ */
|
|
486
|
+
}), /* @__PURE__ */ j("select", {
|
|
486
487
|
id: "country",
|
|
487
488
|
name: "country",
|
|
488
|
-
value:
|
|
489
|
-
onChange:
|
|
489
|
+
value: D.country,
|
|
490
|
+
onChange: B,
|
|
490
491
|
className: "h-10 w-full rounded-md border border-border-subtle bg-bg-surface px-3 text-sm text-text-primary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)] sm:max-w-xs",
|
|
491
492
|
children: [
|
|
492
|
-
/* @__PURE__ */
|
|
493
|
+
/* @__PURE__ */ A("option", {
|
|
493
494
|
value: "USA",
|
|
494
495
|
children: "United States"
|
|
495
496
|
}),
|
|
496
|
-
/* @__PURE__ */
|
|
497
|
+
/* @__PURE__ */ A("option", {
|
|
497
498
|
value: "Canada",
|
|
498
499
|
children: "Canada"
|
|
499
500
|
}),
|
|
500
|
-
/* @__PURE__ */
|
|
501
|
+
/* @__PURE__ */ A("option", {
|
|
501
502
|
value: "UK",
|
|
502
503
|
children: "United Kingdom"
|
|
503
504
|
}),
|
|
504
|
-
/* @__PURE__ */
|
|
505
|
+
/* @__PURE__ */ A("option", {
|
|
505
506
|
value: "India",
|
|
506
507
|
children: "India"
|
|
507
508
|
})
|
|
@@ -509,152 +510,152 @@ var M = {
|
|
|
509
510
|
})] })
|
|
510
511
|
]
|
|
511
512
|
}),
|
|
512
|
-
|
|
513
|
+
w === 2 && /* @__PURE__ */ j("div", {
|
|
513
514
|
className: "space-y-4",
|
|
514
515
|
children: [
|
|
515
|
-
/* @__PURE__ */
|
|
516
|
+
/* @__PURE__ */ A("h3", {
|
|
516
517
|
className: "text-lg font-semibold text-text-primary",
|
|
517
518
|
children: "Property Specifications"
|
|
518
519
|
}),
|
|
519
|
-
/* @__PURE__ */
|
|
520
|
+
/* @__PURE__ */ j("div", {
|
|
520
521
|
className: "grid grid-cols-1 gap-4 sm:grid-cols-2",
|
|
521
|
-
children: [/* @__PURE__ */
|
|
522
|
+
children: [/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ j("label", {
|
|
522
523
|
htmlFor: "area",
|
|
523
524
|
className: "mb-1.5 flex items-center gap-1.5 text-sm font-medium text-text-primary",
|
|
524
|
-
children: [/* @__PURE__ */
|
|
525
|
-
}), /* @__PURE__ */
|
|
525
|
+
children: [/* @__PURE__ */ A(S, { className: "h-4 w-4" }), "Total Area (sq ft) *"]
|
|
526
|
+
}), /* @__PURE__ */ A("input", {
|
|
526
527
|
id: "area",
|
|
527
528
|
name: "area",
|
|
528
529
|
type: "number",
|
|
529
|
-
value:
|
|
530
|
-
onChange:
|
|
530
|
+
value: D.area,
|
|
531
|
+
onChange: B,
|
|
531
532
|
placeholder: "Enter area",
|
|
532
533
|
required: !0,
|
|
533
534
|
className: "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)]"
|
|
534
|
-
})] }), /* @__PURE__ */
|
|
535
|
+
})] }), /* @__PURE__ */ j("div", { children: [/* @__PURE__ */ j("label", {
|
|
535
536
|
htmlFor: "yearBuilt",
|
|
536
537
|
className: "mb-1.5 flex items-center gap-1.5 text-sm font-medium text-text-primary",
|
|
537
|
-
children: [/* @__PURE__ */
|
|
538
|
-
}), /* @__PURE__ */
|
|
538
|
+
children: [/* @__PURE__ */ A(f, { className: "h-4 w-4" }), "Year Built"]
|
|
539
|
+
}), /* @__PURE__ */ A("input", {
|
|
539
540
|
id: "yearBuilt",
|
|
540
541
|
name: "yearBuilt",
|
|
541
542
|
type: "number",
|
|
542
|
-
value:
|
|
543
|
-
onChange:
|
|
543
|
+
value: D.yearBuilt,
|
|
544
|
+
onChange: B,
|
|
544
545
|
placeholder: "YYYY",
|
|
545
546
|
className: "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)]"
|
|
546
547
|
})] })]
|
|
547
548
|
}),
|
|
548
|
-
/* @__PURE__ */
|
|
549
|
+
/* @__PURE__ */ j("div", {
|
|
549
550
|
className: "grid grid-cols-1 gap-4 sm:grid-cols-3",
|
|
550
551
|
children: [
|
|
551
|
-
/* @__PURE__ */
|
|
552
|
+
/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ j("label", {
|
|
552
553
|
htmlFor: "bedrooms",
|
|
553
554
|
className: "mb-1.5 flex items-center gap-1.5 text-sm font-medium text-text-primary",
|
|
554
|
-
children: [/* @__PURE__ */
|
|
555
|
-
}), /* @__PURE__ */
|
|
555
|
+
children: [/* @__PURE__ */ A(d, { className: "h-4 w-4" }), "Bedrooms"]
|
|
556
|
+
}), /* @__PURE__ */ A("input", {
|
|
556
557
|
id: "bedrooms",
|
|
557
558
|
name: "bedrooms",
|
|
558
559
|
type: "number",
|
|
559
|
-
value:
|
|
560
|
-
onChange:
|
|
560
|
+
value: D.bedrooms,
|
|
561
|
+
onChange: B,
|
|
561
562
|
placeholder: "0",
|
|
562
563
|
className: "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)]"
|
|
563
564
|
})] }),
|
|
564
|
-
/* @__PURE__ */
|
|
565
|
+
/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ j("label", {
|
|
565
566
|
htmlFor: "bathrooms",
|
|
566
567
|
className: "mb-1.5 flex items-center gap-1.5 text-sm font-medium text-text-primary",
|
|
567
|
-
children: [/* @__PURE__ */
|
|
568
|
-
}), /* @__PURE__ */
|
|
568
|
+
children: [/* @__PURE__ */ A(u, { className: "h-4 w-4" }), "Bathrooms"]
|
|
569
|
+
}), /* @__PURE__ */ A("input", {
|
|
569
570
|
id: "bathrooms",
|
|
570
571
|
name: "bathrooms",
|
|
571
572
|
type: "number",
|
|
572
|
-
value:
|
|
573
|
-
onChange:
|
|
573
|
+
value: D.bathrooms,
|
|
574
|
+
onChange: B,
|
|
574
575
|
placeholder: "0",
|
|
575
576
|
className: "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)]"
|
|
576
577
|
})] }),
|
|
577
|
-
/* @__PURE__ */
|
|
578
|
+
/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ j("label", {
|
|
578
579
|
htmlFor: "parking",
|
|
579
580
|
className: "mb-1.5 flex items-center gap-1.5 text-sm font-medium text-text-primary",
|
|
580
|
-
children: [/* @__PURE__ */
|
|
581
|
-
}), /* @__PURE__ */
|
|
581
|
+
children: [/* @__PURE__ */ A(p, { className: "h-4 w-4" }), "Parking Spots"]
|
|
582
|
+
}), /* @__PURE__ */ A("input", {
|
|
582
583
|
id: "parking",
|
|
583
584
|
name: "parking",
|
|
584
585
|
type: "number",
|
|
585
|
-
value:
|
|
586
|
-
onChange:
|
|
586
|
+
value: D.parking,
|
|
587
|
+
onChange: B,
|
|
587
588
|
placeholder: "0",
|
|
588
589
|
className: "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)]"
|
|
589
590
|
})] })
|
|
590
591
|
]
|
|
591
592
|
}),
|
|
592
|
-
/* @__PURE__ */
|
|
593
|
+
/* @__PURE__ */ j("div", {
|
|
593
594
|
className: "grid grid-cols-1 gap-4 sm:grid-cols-2",
|
|
594
|
-
children: [/* @__PURE__ */
|
|
595
|
+
children: [/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ A("label", {
|
|
595
596
|
htmlFor: "furnishing",
|
|
596
597
|
className: "mb-1.5 block text-sm font-medium text-text-primary",
|
|
597
598
|
children: "Furnishing Status"
|
|
598
|
-
}), /* @__PURE__ */
|
|
599
|
+
}), /* @__PURE__ */ j("select", {
|
|
599
600
|
id: "furnishing",
|
|
600
601
|
name: "furnishing",
|
|
601
|
-
value:
|
|
602
|
-
onChange:
|
|
602
|
+
value: D.furnishing,
|
|
603
|
+
onChange: B,
|
|
603
604
|
className: "h-10 w-full rounded-md border border-border-subtle bg-bg-surface px-3 text-sm text-text-primary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]",
|
|
604
605
|
children: [
|
|
605
|
-
/* @__PURE__ */
|
|
606
|
+
/* @__PURE__ */ A("option", {
|
|
606
607
|
value: "unfurnished",
|
|
607
608
|
children: "Unfurnished"
|
|
608
609
|
}),
|
|
609
|
-
/* @__PURE__ */
|
|
610
|
+
/* @__PURE__ */ A("option", {
|
|
610
611
|
value: "semi_furnished",
|
|
611
612
|
children: "Semi Furnished"
|
|
612
613
|
}),
|
|
613
|
-
/* @__PURE__ */
|
|
614
|
+
/* @__PURE__ */ A("option", {
|
|
614
615
|
value: "furnished",
|
|
615
616
|
children: "Furnished"
|
|
616
617
|
})
|
|
617
618
|
]
|
|
618
|
-
})] }), /* @__PURE__ */
|
|
619
|
+
})] }), /* @__PURE__ */ j("div", { children: [/* @__PURE__ */ A("label", {
|
|
619
620
|
htmlFor: "facing",
|
|
620
621
|
className: "mb-1.5 block text-sm font-medium text-text-primary",
|
|
621
622
|
children: "Facing Direction"
|
|
622
|
-
}), /* @__PURE__ */
|
|
623
|
+
}), /* @__PURE__ */ j("select", {
|
|
623
624
|
id: "facing",
|
|
624
625
|
name: "facing",
|
|
625
|
-
value:
|
|
626
|
-
onChange:
|
|
626
|
+
value: D.facing,
|
|
627
|
+
onChange: B,
|
|
627
628
|
className: "h-10 w-full rounded-md border border-border-subtle bg-bg-surface px-3 text-sm text-text-primary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]",
|
|
628
629
|
children: [
|
|
629
|
-
/* @__PURE__ */
|
|
630
|
+
/* @__PURE__ */ A("option", {
|
|
630
631
|
value: "North",
|
|
631
632
|
children: "North"
|
|
632
633
|
}),
|
|
633
|
-
/* @__PURE__ */
|
|
634
|
+
/* @__PURE__ */ A("option", {
|
|
634
635
|
value: "South",
|
|
635
636
|
children: "South"
|
|
636
637
|
}),
|
|
637
|
-
/* @__PURE__ */
|
|
638
|
+
/* @__PURE__ */ A("option", {
|
|
638
639
|
value: "East",
|
|
639
640
|
children: "East"
|
|
640
641
|
}),
|
|
641
|
-
/* @__PURE__ */
|
|
642
|
+
/* @__PURE__ */ A("option", {
|
|
642
643
|
value: "West",
|
|
643
644
|
children: "West"
|
|
644
645
|
}),
|
|
645
|
-
/* @__PURE__ */
|
|
646
|
+
/* @__PURE__ */ A("option", {
|
|
646
647
|
value: "Northeast",
|
|
647
648
|
children: "Northeast"
|
|
648
649
|
}),
|
|
649
|
-
/* @__PURE__ */
|
|
650
|
+
/* @__PURE__ */ A("option", {
|
|
650
651
|
value: "Northwest",
|
|
651
652
|
children: "Northwest"
|
|
652
653
|
}),
|
|
653
|
-
/* @__PURE__ */
|
|
654
|
+
/* @__PURE__ */ A("option", {
|
|
654
655
|
value: "Southeast",
|
|
655
656
|
children: "Southeast"
|
|
656
657
|
}),
|
|
657
|
-
/* @__PURE__ */
|
|
658
|
+
/* @__PURE__ */ A("option", {
|
|
658
659
|
value: "Southwest",
|
|
659
660
|
children: "Southwest"
|
|
660
661
|
})
|
|
@@ -663,97 +664,97 @@ var M = {
|
|
|
663
664
|
})
|
|
664
665
|
]
|
|
665
666
|
}),
|
|
666
|
-
|
|
667
|
+
w === 3 && /* @__PURE__ */ j("div", {
|
|
667
668
|
className: "space-y-4",
|
|
668
669
|
children: [
|
|
669
|
-
/* @__PURE__ */
|
|
670
|
+
/* @__PURE__ */ A("h3", {
|
|
670
671
|
className: "text-lg font-semibold text-text-primary",
|
|
671
672
|
children: "Property Amenities"
|
|
672
673
|
}),
|
|
673
|
-
/* @__PURE__ */
|
|
674
|
+
/* @__PURE__ */ A("p", {
|
|
674
675
|
className: "text-sm text-text-secondary",
|
|
675
676
|
children: "Select all amenities available at this property."
|
|
676
677
|
}),
|
|
677
|
-
/* @__PURE__ */
|
|
678
|
+
/* @__PURE__ */ A("div", {
|
|
678
679
|
className: "grid grid-cols-2 gap-3 sm:grid-cols-4",
|
|
679
|
-
children:
|
|
680
|
-
let n = t.icon, r =
|
|
681
|
-
return /* @__PURE__ */
|
|
680
|
+
children: I.map((t) => {
|
|
681
|
+
let n = t.icon, r = D.amenities.includes(t.id);
|
|
682
|
+
return /* @__PURE__ */ j("button", {
|
|
682
683
|
type: "button",
|
|
683
|
-
onClick: () =>
|
|
684
|
+
onClick: () => V(t.id),
|
|
684
685
|
className: e("flex flex-col items-center gap-2 rounded-lg border p-4 text-sm font-medium transition-colors", r ? "border-action-primary-border bg-action-primary-bg/5 text-text-primary" : "border-border-subtle text-text-secondary hover:bg-bg-sunken/50"),
|
|
685
686
|
children: [
|
|
686
|
-
/* @__PURE__ */
|
|
687
|
-
/* @__PURE__ */
|
|
688
|
-
r && /* @__PURE__ */
|
|
687
|
+
/* @__PURE__ */ A(n, { className: "h-6 w-6" }),
|
|
688
|
+
/* @__PURE__ */ A("span", { children: t.label }),
|
|
689
|
+
r && /* @__PURE__ */ A(m, { className: "h-4 w-4 text-status-success-text" })
|
|
689
690
|
]
|
|
690
691
|
}, t.id);
|
|
691
692
|
})
|
|
692
693
|
})
|
|
693
694
|
]
|
|
694
695
|
}),
|
|
695
|
-
|
|
696
|
+
w === 4 && /* @__PURE__ */ j("div", {
|
|
696
697
|
className: "space-y-4",
|
|
697
698
|
children: [
|
|
698
|
-
/* @__PURE__ */
|
|
699
|
+
/* @__PURE__ */ j("h3", {
|
|
699
700
|
className: "flex items-center gap-2 text-lg font-semibold text-text-primary",
|
|
700
|
-
children: [/* @__PURE__ */
|
|
701
|
+
children: [/* @__PURE__ */ A(_, { className: "h-5 w-5" }), "Pricing Details"]
|
|
701
702
|
}),
|
|
702
|
-
/* @__PURE__ */
|
|
703
|
+
/* @__PURE__ */ j("div", {
|
|
703
704
|
className: "grid grid-cols-1 gap-4 sm:grid-cols-2",
|
|
704
|
-
children: [/* @__PURE__ */
|
|
705
|
+
children: [/* @__PURE__ */ j("div", { children: [/* @__PURE__ */ A("label", {
|
|
705
706
|
htmlFor: "price",
|
|
706
707
|
className: "mb-1.5 block text-sm font-medium text-text-primary",
|
|
707
708
|
children: "Price *"
|
|
708
|
-
}), /* @__PURE__ */
|
|
709
|
+
}), /* @__PURE__ */ A("input", {
|
|
709
710
|
id: "price",
|
|
710
711
|
name: "price",
|
|
711
712
|
type: "number",
|
|
712
|
-
value:
|
|
713
|
-
onChange:
|
|
713
|
+
value: D.price,
|
|
714
|
+
onChange: B,
|
|
714
715
|
placeholder: "Enter price",
|
|
715
716
|
required: !0,
|
|
716
717
|
className: "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)]"
|
|
717
|
-
})] }), /* @__PURE__ */
|
|
718
|
+
})] }), /* @__PURE__ */ j("div", { children: [/* @__PURE__ */ A("label", {
|
|
718
719
|
htmlFor: "currency",
|
|
719
720
|
className: "mb-1.5 block text-sm font-medium text-text-primary",
|
|
720
721
|
children: "Currency"
|
|
721
|
-
}), /* @__PURE__ */
|
|
722
|
+
}), /* @__PURE__ */ j("select", {
|
|
722
723
|
id: "currency",
|
|
723
724
|
name: "currency",
|
|
724
|
-
value:
|
|
725
|
-
onChange:
|
|
725
|
+
value: D.currency,
|
|
726
|
+
onChange: B,
|
|
726
727
|
className: "h-10 w-full rounded-md border border-border-subtle bg-bg-surface px-3 text-sm text-text-primary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]",
|
|
727
728
|
children: [
|
|
728
|
-
/* @__PURE__ */
|
|
729
|
+
/* @__PURE__ */ A("option", {
|
|
729
730
|
value: "USD",
|
|
730
731
|
children: "USD ($)"
|
|
731
732
|
}),
|
|
732
|
-
/* @__PURE__ */
|
|
733
|
+
/* @__PURE__ */ A("option", {
|
|
733
734
|
value: "EUR",
|
|
734
735
|
children: "EUR"
|
|
735
736
|
}),
|
|
736
|
-
/* @__PURE__ */
|
|
737
|
+
/* @__PURE__ */ A("option", {
|
|
737
738
|
value: "GBP",
|
|
738
739
|
children: "GBP"
|
|
739
740
|
}),
|
|
740
|
-
/* @__PURE__ */
|
|
741
|
+
/* @__PURE__ */ A("option", {
|
|
741
742
|
value: "INR",
|
|
742
743
|
children: "INR"
|
|
743
744
|
})
|
|
744
745
|
]
|
|
745
746
|
})] })]
|
|
746
747
|
}),
|
|
747
|
-
/* @__PURE__ */
|
|
748
|
+
/* @__PURE__ */ j("div", {
|
|
748
749
|
className: "flex items-center gap-2",
|
|
749
|
-
children: [/* @__PURE__ */
|
|
750
|
+
children: [/* @__PURE__ */ A("input", {
|
|
750
751
|
type: "checkbox",
|
|
751
752
|
id: "negotiable",
|
|
752
753
|
name: "negotiable",
|
|
753
|
-
checked:
|
|
754
|
-
onChange:
|
|
754
|
+
checked: D.negotiable,
|
|
755
|
+
onChange: B,
|
|
755
756
|
className: "h-4 w-4 rounded border-border-subtle"
|
|
756
|
-
}), /* @__PURE__ */
|
|
757
|
+
}), /* @__PURE__ */ A("label", {
|
|
757
758
|
htmlFor: "negotiable",
|
|
758
759
|
className: "text-sm text-text-primary",
|
|
759
760
|
children: "Price is negotiable"
|
|
@@ -761,34 +762,34 @@ var M = {
|
|
|
761
762
|
})
|
|
762
763
|
]
|
|
763
764
|
}),
|
|
764
|
-
|
|
765
|
+
w === 5 && /* @__PURE__ */ j("div", {
|
|
765
766
|
className: "space-y-4",
|
|
766
767
|
children: [
|
|
767
|
-
/* @__PURE__ */
|
|
768
|
+
/* @__PURE__ */ j("h3", {
|
|
768
769
|
className: "flex items-center gap-2 text-lg font-semibold text-text-primary",
|
|
769
|
-
children: [/* @__PURE__ */
|
|
770
|
+
children: [/* @__PURE__ */ A(T, { className: "h-5 w-5" }), "Property Images"]
|
|
770
771
|
}),
|
|
771
|
-
/* @__PURE__ */
|
|
772
|
+
/* @__PURE__ */ A("p", {
|
|
772
773
|
className: "text-sm text-text-secondary",
|
|
773
774
|
children: "Upload photos of the property (JPG, PNG). The first image becomes the cover."
|
|
774
775
|
}),
|
|
775
|
-
/* @__PURE__ */
|
|
776
|
+
/* @__PURE__ */ A(s, {
|
|
776
777
|
accept: "image/*",
|
|
777
778
|
multiple: !0,
|
|
778
779
|
label: "Upload property images",
|
|
779
|
-
value:
|
|
780
|
-
onUploaded:
|
|
781
|
-
onRemove:
|
|
780
|
+
value: D.images,
|
|
781
|
+
onUploaded: R,
|
|
782
|
+
onRemove: z
|
|
782
783
|
}),
|
|
783
|
-
|
|
784
|
+
D.images.length > 0 && /* @__PURE__ */ A("div", {
|
|
784
785
|
className: "grid grid-cols-3 gap-3 sm:grid-cols-4",
|
|
785
|
-
children:
|
|
786
|
+
children: D.images.map((e, t) => /* @__PURE__ */ j("div", {
|
|
786
787
|
className: "relative aspect-square overflow-hidden rounded-lg border border-border-subtle bg-bg-sunken/50",
|
|
787
|
-
children: [/* @__PURE__ */
|
|
788
|
+
children: [/* @__PURE__ */ A("img", {
|
|
788
789
|
src: e.url,
|
|
789
790
|
alt: e.name,
|
|
790
791
|
className: "h-full w-full object-cover"
|
|
791
|
-
}), t === 0 && /* @__PURE__ */
|
|
792
|
+
}), t === 0 && /* @__PURE__ */ A("span", {
|
|
792
793
|
className: "absolute left-1.5 top-1.5 rounded bg-action-primary-bg px-1.5 py-0.5 text-[10px] font-semibold text-action-primary-text",
|
|
793
794
|
children: "Cover"
|
|
794
795
|
})]
|
|
@@ -797,26 +798,26 @@ var M = {
|
|
|
797
798
|
]
|
|
798
799
|
})
|
|
799
800
|
]
|
|
800
|
-
}), /* @__PURE__ */
|
|
801
|
+
}), /* @__PURE__ */ j("div", {
|
|
801
802
|
className: "mt-6 flex items-center justify-between",
|
|
802
|
-
children: [/* @__PURE__ */
|
|
803
|
+
children: [/* @__PURE__ */ j("button", {
|
|
803
804
|
type: "button",
|
|
804
|
-
onClick: () =>
|
|
805
|
-
disabled:
|
|
805
|
+
onClick: () => w === 0 ? v("../properties") : E((e) => e - 1),
|
|
806
|
+
disabled: b,
|
|
806
807
|
className: "inline-flex items-center gap-2 rounded-md border border-border-subtle px-4 py-2 text-sm font-medium text-text-primary transition-colors hover:bg-bg-sunken disabled:opacity-50",
|
|
807
|
-
children: [/* @__PURE__ */
|
|
808
|
-
}),
|
|
808
|
+
children: [/* @__PURE__ */ A(h, { className: "h-4 w-4" }), w === 0 ? "Cancel" : "Previous"]
|
|
809
|
+
}), W ? /* @__PURE__ */ A("button", {
|
|
809
810
|
type: "button",
|
|
810
|
-
onClick:
|
|
811
|
-
disabled: !
|
|
811
|
+
onClick: U,
|
|
812
|
+
disabled: !H() || b,
|
|
812
813
|
className: "inline-flex items-center gap-2 rounded-md bg-action-primary-bg px-6 py-2 text-sm font-medium text-action-primary-text transition-colors hover:bg-action-primary-bg-hover disabled:opacity-50",
|
|
813
|
-
children:
|
|
814
|
-
}) : /* @__PURE__ */
|
|
814
|
+
children: b ? "Adding Property..." : "Submit Property"
|
|
815
|
+
}) : /* @__PURE__ */ j("button", {
|
|
815
816
|
type: "button",
|
|
816
|
-
onClick: () =>
|
|
817
|
-
disabled: !
|
|
817
|
+
onClick: () => E((e) => e + 1),
|
|
818
|
+
disabled: !H(),
|
|
818
819
|
className: "inline-flex items-center gap-2 rounded-md bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text transition-colors hover:bg-action-primary-bg-hover disabled:opacity-50",
|
|
819
|
-
children: ["Next", /* @__PURE__ */
|
|
820
|
+
children: ["Next", /* @__PURE__ */ A(g, { className: "h-4 w-4" })]
|
|
820
821
|
})]
|
|
821
822
|
})]
|
|
822
823
|
})
|
|
@@ -824,6 +825,6 @@ var M = {
|
|
|
824
825
|
});
|
|
825
826
|
};
|
|
826
827
|
//#endregion
|
|
827
|
-
export {
|
|
828
|
+
export { R as AddPropertyPage };
|
|
828
829
|
|
|
829
830
|
//# sourceMappingURL=AddPropertyPage.js.map
|