@myrjfa/state 2.2.0 → 2.3.1
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/LICENSE +201 -201
- package/README.md +20 -3
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -0
- package/dist/lib/actions/actions.d.ts +13 -13
- package/dist/lib/actions/actions.d.ts.map +1 -1
- package/dist/lib/actions/actions.js +5 -4
- package/dist/lib/actions/adminDashboard.d.ts +4 -0
- package/dist/lib/actions/adminDashboard.d.ts.map +1 -0
- package/dist/lib/actions/adminDashboard.js +29 -0
- package/dist/lib/actions/adventure.d.ts +104 -0
- package/dist/lib/actions/adventure.d.ts.map +1 -0
- package/dist/lib/actions/adventure.js +203 -0
- package/dist/lib/actions/application.d.ts +35 -0
- package/dist/lib/actions/application.d.ts.map +1 -0
- package/dist/lib/actions/application.js +573 -0
- package/dist/lib/actions/auth.d.ts +108 -3
- package/dist/lib/actions/auth.d.ts.map +1 -1
- package/dist/lib/actions/auth.js +38 -8
- package/dist/lib/actions/blog.d.ts +61 -0
- package/dist/lib/actions/blog.d.ts.map +1 -0
- package/dist/lib/actions/blog.js +762 -0
- package/dist/lib/actions/brand.d.ts +83 -0
- package/dist/lib/actions/brand.d.ts.map +1 -0
- package/dist/lib/actions/brand.js +28 -0
- package/dist/lib/actions/chat.d.ts +261 -24
- package/dist/lib/actions/chat.d.ts.map +1 -1
- package/dist/lib/actions/chat.js +525 -41
- package/dist/lib/actions/companion.d.ts +174 -0
- package/dist/lib/actions/companion.d.ts.map +1 -0
- package/dist/lib/actions/companion.js +276 -0
- package/dist/lib/actions/event.d.ts +178 -0
- package/dist/lib/actions/event.d.ts.map +1 -0
- package/dist/lib/actions/event.js +214 -0
- package/dist/lib/actions/fetcher.d.ts.map +1 -1
- package/dist/lib/actions/fetcher.js +18 -8
- package/dist/lib/actions/guide.d.ts +55 -0
- package/dist/lib/actions/guide.d.ts.map +1 -0
- package/dist/lib/actions/guide.js +128 -0
- package/dist/lib/actions/hostDashboard.d.ts +122 -0
- package/dist/lib/actions/hostDashboard.d.ts.map +1 -0
- package/dist/lib/actions/hostDashboard.js +329 -0
- package/dist/lib/actions/location.d.ts +141 -0
- package/dist/lib/actions/location.d.ts.map +1 -0
- package/dist/lib/actions/location.js +113 -0
- package/dist/lib/actions/notifications.d.ts +91 -0
- package/dist/lib/actions/notifications.d.ts.map +1 -0
- package/dist/lib/actions/notifications.js +83 -0
- package/dist/lib/actions/opportunity.d.ts +44 -0
- package/dist/lib/actions/opportunity.d.ts.map +1 -0
- package/dist/lib/actions/opportunity.js +318 -0
- package/dist/lib/actions/package.d.ts +85 -0
- package/dist/lib/actions/package.d.ts.map +1 -0
- package/dist/lib/actions/package.js +167 -0
- package/dist/lib/actions/place.d.ts +191 -0
- package/dist/lib/actions/place.d.ts.map +1 -0
- package/dist/lib/actions/place.js +57 -0
- package/dist/lib/actions/portfolio.d.ts +65 -0
- package/dist/lib/actions/portfolio.d.ts.map +1 -0
- package/dist/lib/actions/portfolio.js +62 -0
- package/dist/lib/actions/property.d.ts +17 -0
- package/dist/lib/actions/property.d.ts.map +1 -0
- package/dist/lib/actions/property.js +16 -0
- package/dist/lib/actions/rental.d.ts +87 -0
- package/dist/lib/actions/rental.d.ts.map +1 -0
- package/dist/lib/actions/rental.js +205 -0
- package/dist/lib/actions/review.d.ts +8 -0
- package/dist/lib/actions/review.d.ts.map +1 -0
- package/dist/lib/actions/review.js +102 -0
- package/dist/lib/actions/room.d.ts +39 -0
- package/dist/lib/actions/room.d.ts.map +1 -0
- package/dist/lib/actions/room.js +74 -0
- package/dist/lib/actions/serverActions.d.ts +1 -0
- package/dist/lib/actions/serverActions.d.ts.map +1 -1
- package/dist/lib/actions/serverActions.js +15 -0
- package/dist/lib/actions/socket.d.ts.map +1 -1
- package/dist/lib/actions/socket.js +5 -1
- package/dist/lib/actions/stay.d.ts +97 -0
- package/dist/lib/actions/stay.d.ts.map +1 -0
- package/dist/lib/actions/stay.js +138 -0
- package/dist/lib/actions/travelPackage.d.ts +104 -0
- package/dist/lib/actions/travelPackage.d.ts.map +1 -0
- package/dist/lib/actions/travelPackage.js +487 -0
- package/dist/lib/actions.d.ts +24 -24
- package/dist/lib/actions.d.ts.map +1 -1
- package/dist/lib/actions.js +14 -11
- package/dist/lib/adminDashboardActions.d.ts +15 -3
- package/dist/lib/adminDashboardActions.d.ts.map +1 -1
- package/dist/lib/adminDashboardActions.js +16 -7
- package/dist/lib/authSessionManager.d.ts.map +1 -1
- package/dist/lib/authSessionManager.js +4 -3
- package/dist/lib/authSessionPolicy.d.ts +10 -0
- package/dist/lib/authSessionPolicy.d.ts.map +1 -0
- package/dist/lib/authSessionPolicy.js +9 -0
- package/dist/lib/authorizationActions.d.ts +77 -0
- package/dist/lib/authorizationActions.d.ts.map +1 -0
- package/dist/lib/authorizationActions.js +61 -0
- package/dist/lib/context/ChatContext.d.ts +25 -6
- package/dist/lib/context/ChatContext.d.ts.map +1 -1
- package/dist/lib/context/ChatContext.js +356 -245
- package/dist/lib/data/adventureDummyData.d.ts +3 -0
- package/dist/lib/data/adventureDummyData.d.ts.map +1 -0
- package/dist/lib/data/adventureDummyData.js +138 -0
- package/dist/lib/data/adventureFormPage.d.ts +28 -0
- package/dist/lib/data/adventureFormPage.d.ts.map +1 -0
- package/dist/lib/data/adventureFormPage.js +58 -0
- package/dist/lib/data/companionDummyData.d.ts +99 -0
- package/dist/lib/data/companionDummyData.d.ts.map +1 -0
- package/dist/lib/data/companionDummyData.js +203 -0
- package/dist/lib/data/destinations.d.ts +14 -0
- package/dist/lib/data/destinations.d.ts.map +1 -0
- package/dist/lib/data/destinations.js +203 -0
- package/dist/lib/data/eventFormPage.d.ts +38 -0
- package/dist/lib/data/eventFormPage.d.ts.map +1 -0
- package/dist/lib/data/eventFormPage.js +56 -0
- package/dist/lib/data/eventsDummyData.d.ts +54 -0
- package/dist/lib/data/eventsDummyData.d.ts.map +1 -0
- package/dist/lib/data/eventsDummyData.js +586 -0
- package/dist/lib/data/guideDummyData.d.ts +3 -0
- package/dist/lib/data/guideDummyData.d.ts.map +1 -0
- package/dist/lib/data/guideDummyData.js +66 -0
- package/dist/lib/data/opportunityFormData.d.ts +13 -0
- package/dist/lib/data/opportunityFormData.d.ts.map +1 -0
- package/dist/lib/data/opportunityFormData.js +62 -0
- package/dist/lib/data/opportunityFormPage.d.ts +12 -0
- package/dist/lib/data/opportunityFormPage.d.ts.map +1 -0
- package/dist/lib/data/opportunityFormPage.js +33 -0
- package/dist/lib/data/packageDummyData.d.ts +3 -0
- package/dist/lib/data/packageDummyData.d.ts.map +1 -0
- package/dist/lib/data/packageDummyData.js +56 -0
- package/dist/lib/data/rentalDummyData.d.ts +3 -0
- package/dist/lib/data/rentalDummyData.d.ts.map +1 -0
- package/dist/lib/data/rentalDummyData.js +382 -0
- package/dist/lib/data/rentalFormPage.d.ts +11 -0
- package/dist/lib/data/rentalFormPage.d.ts.map +1 -0
- package/dist/lib/data/rentalFormPage.js +86 -0
- package/dist/lib/data/staysDummyData.d.ts +72 -0
- package/dist/lib/data/staysDummyData.d.ts.map +1 -0
- package/dist/lib/data/staysDummyData.js +694 -0
- package/dist/lib/data/storeDummyData.d.ts +33 -0
- package/dist/lib/data/storeDummyData.d.ts.map +1 -0
- package/dist/lib/data/storeDummyData.js +336 -0
- package/dist/lib/data/travelPackageFormData.d.ts +19 -0
- package/dist/lib/data/travelPackageFormData.d.ts.map +1 -0
- package/dist/lib/data/travelPackageFormData.js +51 -0
- package/dist/lib/data/travelPackageFormPage.d.ts +22 -0
- package/dist/lib/data/travelPackageFormPage.d.ts.map +1 -0
- package/dist/lib/data/travelPackageFormPage.js +40 -0
- package/dist/lib/data/vehicleData.d.ts +2 -0
- package/dist/lib/data/vehicleData.d.ts.map +1 -0
- package/dist/lib/data/vehicleData.js +187 -0
- package/dist/lib/data/vehicleModels.d.ts +2 -0
- package/dist/lib/data/vehicleModels.d.ts.map +1 -0
- package/dist/lib/data/vehicleModels.js +128 -0
- package/dist/lib/discountActions.d.ts +43 -0
- package/dist/lib/discountActions.d.ts.map +1 -0
- package/dist/lib/discountActions.js +69 -0
- package/dist/lib/hooks/usePersistentDraftState.d.ts +20 -0
- package/dist/lib/hooks/usePersistentDraftState.d.ts.map +1 -0
- package/dist/lib/hooks/usePersistentDraftState.js +47 -0
- package/dist/lib/loyaltyActions.d.ts +32 -0
- package/dist/lib/loyaltyActions.d.ts.map +1 -0
- package/dist/lib/loyaltyActions.js +92 -0
- package/dist/lib/models/adventure.d.ts +0 -2
- package/dist/lib/models/adventure.d.ts.map +1 -1
- package/dist/lib/models/authorization.d.ts +107 -0
- package/dist/lib/models/authorization.d.ts.map +1 -0
- package/dist/lib/models/authorization.js +263 -0
- package/dist/lib/models/blog.d.ts +2 -2
- package/dist/lib/models/booking.d.ts +7 -2
- package/dist/lib/models/booking.d.ts.map +1 -1
- package/dist/lib/models/chat.d.ts +418 -32
- package/dist/lib/models/chat.d.ts.map +1 -1
- package/dist/lib/models/chat.js +5 -1
- package/dist/lib/models/discount.d.ts +587 -136
- package/dist/lib/models/discount.d.ts.map +1 -1
- package/dist/lib/models/discount.js +118 -96
- package/dist/lib/models/forms.d.ts +384 -0
- package/dist/lib/models/forms.d.ts.map +1 -0
- package/dist/lib/models/forms.js +121 -0
- package/dist/lib/models/guide.d.ts +0 -2
- package/dist/lib/models/guide.d.ts.map +1 -1
- package/dist/lib/models/loyalty.d.ts +88 -0
- package/dist/lib/models/loyalty.d.ts.map +1 -0
- package/dist/lib/models/loyalty.js +1 -0
- package/dist/lib/models/notifications.d.ts +4 -4
- package/dist/lib/models/opportunities/freelance.d.ts +66 -20
- package/dist/lib/models/opportunities/freelance.d.ts.map +1 -1
- package/dist/lib/models/opportunities/internship.d.ts +66 -20
- package/dist/lib/models/opportunities/internship.d.ts.map +1 -1
- package/dist/lib/models/opportunities/job.d.ts +66 -20
- package/dist/lib/models/opportunities/job.d.ts.map +1 -1
- package/dist/lib/models/opportunities/opportunity.d.ts +66 -20
- package/dist/lib/models/opportunities/opportunity.d.ts.map +1 -1
- package/dist/lib/models/opportunities/opportunity.js +2 -0
- package/dist/lib/models/opportunities/volunteerJob.d.ts +66 -20
- package/dist/lib/models/opportunities/volunteerJob.d.ts.map +1 -1
- package/dist/lib/models/package.d.ts +81 -220
- package/dist/lib/models/package.d.ts.map +1 -1
- package/dist/lib/models/package.js +0 -2
- package/dist/lib/models/props.d.ts +1 -1
- package/dist/lib/models/props.d.ts.map +1 -1
- package/dist/lib/models/rental.d.ts +0 -2
- package/dist/lib/models/rental.d.ts.map +1 -1
- package/dist/lib/models/stay.d.ts +4 -4
- package/dist/lib/models/store.d.ts +71 -0
- package/dist/lib/models/store.d.ts.map +1 -0
- package/dist/lib/models/store.js +1 -0
- package/dist/lib/models/tile.d.ts +0 -2
- package/dist/lib/models/tile.d.ts.map +1 -1
- package/dist/lib/models/travelPackage.d.ts +206 -305
- package/dist/lib/models/travelPackage.d.ts.map +1 -1
- package/dist/lib/models/travelPackage.js +0 -2
- package/dist/lib/models/user.d.ts +28 -4
- package/dist/lib/models/user.d.ts.map +1 -1
- package/dist/lib/models/user.js +10 -1
- package/dist/lib/opportunityFormPage.d.ts +1 -0
- package/dist/lib/opportunityFormPage.d.ts.map +1 -1
- package/dist/lib/opportunityFormPage.js +1 -0
- package/dist/lib/pricingActions.d.ts +13 -0
- package/dist/lib/pricingActions.d.ts.map +1 -0
- package/dist/lib/pricingActions.js +16 -0
- package/dist/lib/rentalActions.js +0 -1
- package/dist/lib/rentalDummyData.d.ts.map +1 -1
- package/dist/lib/rentalDummyData.js +0 -35
- package/dist/lib/rentalFormPage.d.ts +0 -2
- package/dist/lib/rentalFormPage.d.ts.map +1 -1
- package/dist/lib/rentalFormPage.js +0 -3
- package/dist/lib/storeActions.d.ts +25 -0
- package/dist/lib/storeActions.d.ts.map +1 -0
- package/dist/lib/storeActions.js +46 -0
- package/dist/lib/storeDummyData.d.ts +2 -26
- package/dist/lib/storeDummyData.d.ts.map +1 -1
- package/dist/lib/userAtom.d.ts +71 -36
- package/dist/lib/userAtom.d.ts.map +1 -1
- package/dist/lib/userAtom.js +11 -17
- package/dist/lib/utils/entitySubmission.d.ts +21 -0
- package/dist/lib/utils/entitySubmission.d.ts.map +1 -0
- package/dist/lib/utils/entitySubmission.js +10 -0
- package/dist/lib/utils/imageUpload.d.ts +4 -0
- package/dist/lib/utils/imageUpload.d.ts.map +1 -0
- package/dist/lib/utils/imageUpload.js +36 -0
- package/dist/lib/utils/tileConverters.d.ts +8 -0
- package/dist/lib/utils/tileConverters.d.ts.map +1 -0
- package/dist/lib/utils/tileConverters.js +59 -0
- package/dist/lib/utils.d.ts.map +1 -1
- package/dist/lib/utils.js +1 -1
- package/package.json +4 -2
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
import { post, get, patch, del } from "./fetcher";
|
|
2
|
+
import { calculatePricingStrategyDisplayUnitPrice, getPrimaryPricingStrategy } from "../models/pricing";
|
|
3
|
+
function formatTrendingEventDate(value) {
|
|
4
|
+
const date = new Date(value);
|
|
5
|
+
if (Number.isNaN(date.getTime()))
|
|
6
|
+
return "";
|
|
7
|
+
return date.toLocaleDateString("en-IN", {
|
|
8
|
+
day: "numeric",
|
|
9
|
+
month: "short",
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
// ── Public ────────────────────────────────────────────────────────────────────
|
|
13
|
+
export async function fetchEvents(params = {}) {
|
|
14
|
+
try {
|
|
15
|
+
const qs = new URLSearchParams(params).toString();
|
|
16
|
+
const data = await get(`/events?${qs}`);
|
|
17
|
+
return { success: true, ...data.data };
|
|
18
|
+
}
|
|
19
|
+
catch (err) {
|
|
20
|
+
return { success: false, error: err.message, events: [], total: 0 };
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
export async function fetchEventBySlug(slug, options = {}) {
|
|
24
|
+
try {
|
|
25
|
+
const query = options.edit ? "?context=edit" : "";
|
|
26
|
+
const data = await get(`/events/${slug}${query}`);
|
|
27
|
+
return { success: true, event: data.data };
|
|
28
|
+
}
|
|
29
|
+
catch (err) {
|
|
30
|
+
return { success: false, error: err.message, event: null };
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
export async function trendingEventTiles(limit) {
|
|
34
|
+
try {
|
|
35
|
+
const result = await fetchEvents({
|
|
36
|
+
sort: "popular",
|
|
37
|
+
limit: String(limit),
|
|
38
|
+
page: "1",
|
|
39
|
+
});
|
|
40
|
+
if (!result.success) {
|
|
41
|
+
return { success: false, events: [], error: result.error };
|
|
42
|
+
}
|
|
43
|
+
return {
|
|
44
|
+
success: true,
|
|
45
|
+
events: (result.events || []).map((event) => ({
|
|
46
|
+
title: event.title,
|
|
47
|
+
city: event.city,
|
|
48
|
+
category: event.category,
|
|
49
|
+
image: event.images?.[0] || "",
|
|
50
|
+
date: formatTrendingEventDate(event.eventDate),
|
|
51
|
+
price: event.isFree
|
|
52
|
+
? 0
|
|
53
|
+
: (calculatePricingStrategyDisplayUnitPrice(getPrimaryPricingStrategy(event))),
|
|
54
|
+
rating: event.rating || 0,
|
|
55
|
+
ratingCount: event.ratingCount || 0,
|
|
56
|
+
slug: event.slug,
|
|
57
|
+
isFree: !!event.isFree,
|
|
58
|
+
isFeatured: !!event.isFeatured,
|
|
59
|
+
startTime: event.startTime || "",
|
|
60
|
+
shortDescription: event.shortDescription || "",
|
|
61
|
+
venue: event.venue || "",
|
|
62
|
+
availableSeats: event.availableSeats || 0,
|
|
63
|
+
totalCapacity: event.totalCapacity || 0,
|
|
64
|
+
hostId: event.hostId,
|
|
65
|
+
})),
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
catch (err) {
|
|
69
|
+
return { success: false, error: err.message, events: [] };
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
export async function fetchFeaturedEvents() {
|
|
73
|
+
try {
|
|
74
|
+
const data = await get(`/events/featured`);
|
|
75
|
+
return { success: true, events: data.data };
|
|
76
|
+
}
|
|
77
|
+
catch (err) {
|
|
78
|
+
return { success: false, error: err.message, events: [] };
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
export async function fetchEventCities() {
|
|
82
|
+
try {
|
|
83
|
+
const data = await get(`/events/cities`);
|
|
84
|
+
return { success: true, cities: data.data };
|
|
85
|
+
}
|
|
86
|
+
catch (err) {
|
|
87
|
+
return { success: false, error: err.message, cities: [] };
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
// ── Booking ───────────────────────────────────────────────────────────────────
|
|
91
|
+
export async function bookEventApi(payload) {
|
|
92
|
+
try {
|
|
93
|
+
const data = await post(`/events/book`, payload);
|
|
94
|
+
return { success: true, booking: data.data, message: data.message };
|
|
95
|
+
}
|
|
96
|
+
catch (err) {
|
|
97
|
+
return { success: false, error: err.message };
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
export async function getMyEventBookingsApi() {
|
|
101
|
+
try {
|
|
102
|
+
const data = await get(`/events/bookings/me`);
|
|
103
|
+
return { success: true, bookings: data.data };
|
|
104
|
+
}
|
|
105
|
+
catch (err) {
|
|
106
|
+
return { success: false, error: err.message, bookings: [] };
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
export async function cancelEventBookingApi(bookingId) {
|
|
110
|
+
try {
|
|
111
|
+
const data = await patch(`/events/bookings/${bookingId}/cancel`, {});
|
|
112
|
+
return { success: true, booking: data.data, message: data.message };
|
|
113
|
+
}
|
|
114
|
+
catch (err) {
|
|
115
|
+
return { success: false, error: err.message };
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
// ── Host Event Management ─────────────────────────────────────────────────────
|
|
119
|
+
export async function createEventListing(formData) {
|
|
120
|
+
try {
|
|
121
|
+
const data = await post(`/events/host/create`, formData);
|
|
122
|
+
return {
|
|
123
|
+
success: true,
|
|
124
|
+
slug: data.data?.slug,
|
|
125
|
+
_id: data.data?._id,
|
|
126
|
+
message: data.message,
|
|
127
|
+
};
|
|
128
|
+
}
|
|
129
|
+
catch (err) {
|
|
130
|
+
return { success: false, error: err.message };
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
export async function updateEventListing(eventId, formData) {
|
|
134
|
+
try {
|
|
135
|
+
const data = await patch(`/events/host/${eventId}`, formData);
|
|
136
|
+
return { success: true, event: data.data, message: data.message };
|
|
137
|
+
}
|
|
138
|
+
catch (err) {
|
|
139
|
+
return { success: false, error: err.message };
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
export async function deleteEventListing(eventId) {
|
|
143
|
+
try {
|
|
144
|
+
const data = await del(`/events/host/${eventId}`);
|
|
145
|
+
return { success: true, message: data.message };
|
|
146
|
+
}
|
|
147
|
+
catch (err) {
|
|
148
|
+
return { success: false, error: err.message };
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
export async function archiveEventApi(eventId) {
|
|
152
|
+
try {
|
|
153
|
+
const data = await patch(`/events/host/${eventId}/archive`, {});
|
|
154
|
+
return { success: true, event: data.data, message: data.message };
|
|
155
|
+
}
|
|
156
|
+
catch (err) {
|
|
157
|
+
return { success: false, error: err.message };
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
export async function restoreEventApi(eventId) {
|
|
161
|
+
try {
|
|
162
|
+
const data = await patch(`/events/host/${eventId}/restore`, {});
|
|
163
|
+
return { success: true, event: data.data, message: data.message };
|
|
164
|
+
}
|
|
165
|
+
catch (err) {
|
|
166
|
+
return { success: false, error: err.message };
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
export async function getMyEventsApi(status = "all") {
|
|
170
|
+
try {
|
|
171
|
+
const data = await get(`/events/host/my?status=${status}`);
|
|
172
|
+
return { success: true, events: data.data };
|
|
173
|
+
}
|
|
174
|
+
catch (err) {
|
|
175
|
+
return { success: false, error: err.message, events: [] };
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
export async function getEventBookingsHost(eventId) {
|
|
179
|
+
try {
|
|
180
|
+
const data = await get(`/events/host/${eventId}/bookings`);
|
|
181
|
+
return { success: true, bookings: data.data };
|
|
182
|
+
}
|
|
183
|
+
catch (err) {
|
|
184
|
+
return { success: false, error: err.message, bookings: [] };
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
// ── Admin ─────────────────────────────────────────────────────────────────────
|
|
188
|
+
export async function getAllEventsAdmin(status = "all") {
|
|
189
|
+
try {
|
|
190
|
+
const data = await get(`/admin/events?status=${status}`);
|
|
191
|
+
return { success: true, events: data.data || [] };
|
|
192
|
+
}
|
|
193
|
+
catch (err) {
|
|
194
|
+
return { success: false, error: err.message, events: [] };
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
export async function approveEventAdmin(eventId) {
|
|
198
|
+
try {
|
|
199
|
+
const data = await patch(`/admin/events/approve/${eventId}`, {});
|
|
200
|
+
return { success: true, message: data.message };
|
|
201
|
+
}
|
|
202
|
+
catch (err) {
|
|
203
|
+
return { success: false, error: err.message };
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
export async function rejectEventAdmin(eventId, rejectionReason) {
|
|
207
|
+
try {
|
|
208
|
+
const data = await patch(`/admin/events/reject/${eventId}`, { rejectionReason, reason: rejectionReason });
|
|
209
|
+
return { success: true, message: data.message };
|
|
210
|
+
}
|
|
211
|
+
catch (err) {
|
|
212
|
+
return { success: false, error: err.message };
|
|
213
|
+
}
|
|
214
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetcher.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/fetcher.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"fetcher.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/fetcher.ts"],"names":[],"mappings":"AAoLA,wBAAsB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,GAAE,OAAc,cAEpE;AAED,wBAAsB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,GAAE,OAAc,cAEhF;AAED,wBAAsB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,cAElD;AAED,wBAAsB,KAAK,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,cAEpD;AAED,wBAAsB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,cAEnD"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { getCookieHeader, getRole } from "./serverActions";
|
|
1
|
+
import { getAccountType, getCookieHeader, getRole } from "./serverActions";
|
|
2
|
+
import { normalizeRefreshFailureStatus } from "../authSessionPolicy";
|
|
2
3
|
// Custom API error class — do NOT import from next/dist internals
|
|
3
4
|
class ApiError extends Error {
|
|
4
5
|
constructor(statusCode, message, data) {
|
|
@@ -85,9 +86,13 @@ async function customFetch(input, method, body, options = {}) {
|
|
|
85
86
|
let refreshPromise = null;
|
|
86
87
|
// Token refresh function — internal only, not exported
|
|
87
88
|
async function refreshToken(input, method, body) {
|
|
88
|
-
const
|
|
89
|
-
|
|
90
|
-
const
|
|
89
|
+
const accountType = await getAccountType();
|
|
90
|
+
const legacyRole = accountType ? null : await getRole();
|
|
91
|
+
const refreshEndpoint = accountType === "staff"
|
|
92
|
+
? "/auth/staff/refresh-token"
|
|
93
|
+
: accountType === "host" || legacyRole === "host"
|
|
94
|
+
? "/hosts/refresh-token"
|
|
95
|
+
: "/users/refresh-token";
|
|
91
96
|
// Deduplicate: if a refresh is already in flight, wait for it rather than firing a second one
|
|
92
97
|
if (!refreshPromise) {
|
|
93
98
|
refreshPromise = (async () => {
|
|
@@ -104,19 +109,26 @@ async function refreshToken(input, method, body) {
|
|
|
104
109
|
catch {
|
|
105
110
|
// CSR or static context — credentials:'include' handles cookie forwarding to backend
|
|
106
111
|
}
|
|
107
|
-
const response = await fetch(`${baseURL}
|
|
112
|
+
const response = await fetch(`${baseURL}${refreshEndpoint}`, {
|
|
108
113
|
method: 'POST',
|
|
109
114
|
credentials: 'include',
|
|
110
115
|
headers: refreshHeaders,
|
|
111
116
|
});
|
|
112
117
|
if (!response.ok) {
|
|
113
118
|
const data = await response.json();
|
|
114
|
-
|
|
119
|
+
// A rejected refresh means this browser no longer has a usable
|
|
120
|
+
// session, regardless of whether validation/auth middleware
|
|
121
|
+
// returned 400, 401, 403, or 422. Normalize client-side refresh
|
|
122
|
+
// failures to 401 so expected signed-out initialization stays
|
|
123
|
+
// quiet instead of surfacing as a Next.js error overlay.
|
|
124
|
+
const statusCode = normalizeRefreshFailureStatus(response.status);
|
|
125
|
+
throw { statusCode, error: data.error || data.message || 'Session expired' };
|
|
115
126
|
}
|
|
116
127
|
})().finally(() => { refreshPromise = null; });
|
|
117
128
|
}
|
|
118
129
|
try {
|
|
119
130
|
await refreshPromise;
|
|
131
|
+
return customFetch(input, method, body, { includeAuth: true, retry: false });
|
|
120
132
|
}
|
|
121
133
|
catch (error) {
|
|
122
134
|
if (error && typeof error === 'object' && ('$$typeof' in error || error.digest === 'DYNAMIC_SERVER_USAGE')) {
|
|
@@ -124,8 +136,6 @@ async function refreshToken(input, method, body) {
|
|
|
124
136
|
}
|
|
125
137
|
throw new ApiError(error.statusCode ?? 500, error.error || error.message || 'Session expired. Please log in again.');
|
|
126
138
|
}
|
|
127
|
-
// Preserve the original error if the retried request itself fails.
|
|
128
|
-
return customFetch(input, method, body, { includeAuth: true, retry: false });
|
|
129
139
|
}
|
|
130
140
|
// ✅ Server-safe exported functions
|
|
131
141
|
export async function get(url, includeAuth = true) {
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { Guide } from "../models/guide";
|
|
2
|
+
import { TileProps } from "../models/tile";
|
|
3
|
+
export declare function getGuideTiles(limit?: number, city?: string): Promise<{
|
|
4
|
+
success: boolean;
|
|
5
|
+
tiles: TileProps[];
|
|
6
|
+
message?: string;
|
|
7
|
+
error?: string;
|
|
8
|
+
}>;
|
|
9
|
+
export declare function guideDetails(slug: string, options?: {
|
|
10
|
+
edit?: boolean;
|
|
11
|
+
}): Promise<{
|
|
12
|
+
success: boolean;
|
|
13
|
+
guide: Guide | null;
|
|
14
|
+
message?: string;
|
|
15
|
+
error?: string;
|
|
16
|
+
}>;
|
|
17
|
+
export declare function guidesByHost(): Promise<{
|
|
18
|
+
success: boolean;
|
|
19
|
+
guides: Guide[];
|
|
20
|
+
message?: string;
|
|
21
|
+
error?: string;
|
|
22
|
+
}>;
|
|
23
|
+
export declare function createGuide(formData: FormData): Promise<{
|
|
24
|
+
success: boolean;
|
|
25
|
+
slug?: string;
|
|
26
|
+
message?: string;
|
|
27
|
+
error?: string;
|
|
28
|
+
}>;
|
|
29
|
+
export declare function editGuide(formData: FormData, slug: string): Promise<{
|
|
30
|
+
success: boolean;
|
|
31
|
+
message?: string;
|
|
32
|
+
error?: string;
|
|
33
|
+
}>;
|
|
34
|
+
export declare function deleteGuide(slug: string): Promise<{
|
|
35
|
+
success: boolean;
|
|
36
|
+
message?: string;
|
|
37
|
+
error?: string;
|
|
38
|
+
}>;
|
|
39
|
+
export declare function getPendingGuides(): Promise<{
|
|
40
|
+
success: boolean;
|
|
41
|
+
guides: Guide[];
|
|
42
|
+
message?: string;
|
|
43
|
+
error?: string;
|
|
44
|
+
}>;
|
|
45
|
+
export declare function approveGuide(slug: string): Promise<{
|
|
46
|
+
success: boolean;
|
|
47
|
+
message?: string;
|
|
48
|
+
error?: string;
|
|
49
|
+
}>;
|
|
50
|
+
export declare function rejectGuide(slug: string, rejectionReason: string): Promise<{
|
|
51
|
+
success: boolean;
|
|
52
|
+
message?: string;
|
|
53
|
+
error?: string;
|
|
54
|
+
}>;
|
|
55
|
+
//# sourceMappingURL=guide.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guide.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/guide.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAI3C,wBAAsB,aAAa,CACjC,KAAK,CAAC,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC;IACT,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC,CAgBD;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACxD,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC,CAUD;AAID,wBAAsB,YAAY,IAAI,OAAO,CAAC;IAC5C,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC,CAcD;AAED,wBAAsB,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC7D,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC,CAWD;AAED,wBAAsB,SAAS,CAC7B,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAWjE;AAED,wBAAsB,WAAW,CAC/B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAOjE;AAID,wBAAsB,gBAAgB,IAAI,OAAO,CAAC;IAChD,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC,CAQD;AAGD,wBAAsB,YAAY,CAChC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAUjE;AAED,wBAAsB,WAAW,CAC/B,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAUjE"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { del, get, patch, post } from "./fetcher";
|
|
2
|
+
import { calculatePricingStrategyDisplayUnitPrice, getPrimaryPricingStrategy, getPricingCurrency } from "../models/pricing";
|
|
3
|
+
// ─── Public ───────────────────────────────────────────────────────────────────
|
|
4
|
+
export async function getGuideTiles(limit, city) {
|
|
5
|
+
try {
|
|
6
|
+
let endpoint = `/guides/getAllGuideTiles?status=open`;
|
|
7
|
+
if (limit)
|
|
8
|
+
endpoint += `&limit=${limit}`;
|
|
9
|
+
if (city)
|
|
10
|
+
endpoint += `&city=${city}`;
|
|
11
|
+
const data = await get(endpoint);
|
|
12
|
+
return {
|
|
13
|
+
success: true,
|
|
14
|
+
message: data.message,
|
|
15
|
+
tiles: data.data.map(guideToTile),
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
catch (error) {
|
|
19
|
+
console.error("Failed to fetch guide tiles:", error);
|
|
20
|
+
return { success: false, error: error.message, tiles: [] };
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
export async function guideDetails(slug, options = {}) {
|
|
24
|
+
try {
|
|
25
|
+
const query = options.edit ? "?context=edit" : "";
|
|
26
|
+
const data = await get(`/guides/getGuide/${slug}${query}`);
|
|
27
|
+
return { success: true, message: data.message, guide: data.data };
|
|
28
|
+
}
|
|
29
|
+
catch (error) {
|
|
30
|
+
console.error("Failed to fetch guide details:", error);
|
|
31
|
+
return { success: false, error: error.message, guide: null };
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
// ─── Host Dashboard ───────────────────────────────────────────────────────────
|
|
35
|
+
export async function guidesByHost() {
|
|
36
|
+
try {
|
|
37
|
+
const data = await get(`/host/dashboard/listings?category=guide`);
|
|
38
|
+
return {
|
|
39
|
+
success: true,
|
|
40
|
+
message: data.message,
|
|
41
|
+
guides: data.data?.listings || [],
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
catch (error) {
|
|
45
|
+
console.error("Failed to fetch host guides:", error);
|
|
46
|
+
return { success: false, error: error.message, guides: [] };
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
export async function createGuide(formData) {
|
|
50
|
+
try {
|
|
51
|
+
const data = await post(`/guides/create`, formData);
|
|
52
|
+
return { success: true, slug: data.data, message: data.message };
|
|
53
|
+
}
|
|
54
|
+
catch (error) {
|
|
55
|
+
console.error("Failed to create guide:", error);
|
|
56
|
+
return { success: false, error: error.message };
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
export async function editGuide(formData, slug) {
|
|
60
|
+
try {
|
|
61
|
+
const data = await patch(`/guides/update/${slug}`, formData);
|
|
62
|
+
return { success: true, message: data.message };
|
|
63
|
+
}
|
|
64
|
+
catch (error) {
|
|
65
|
+
console.error("Failed to update guide:", error);
|
|
66
|
+
return { success: false, error: error.message };
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
export async function deleteGuide(slug) {
|
|
70
|
+
try {
|
|
71
|
+
const data = await del(`/guides/delete/${slug}`);
|
|
72
|
+
return { success: true, message: data.message };
|
|
73
|
+
}
|
|
74
|
+
catch (error) {
|
|
75
|
+
return { success: false, error: error.message };
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
// ─── Admin Dashboard ──────────────────────────────────────────────────────────
|
|
79
|
+
export async function getPendingGuides() {
|
|
80
|
+
try {
|
|
81
|
+
const data = await get(`/guides/pending`);
|
|
82
|
+
return { success: true, message: data.message, guides: data.data };
|
|
83
|
+
}
|
|
84
|
+
catch (error) {
|
|
85
|
+
return { success: false, error: error.message, guides: [] };
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
// Reuse admin moderation endpoints if available, or use the guide update endpoint if admin
|
|
89
|
+
export async function approveGuide(slug) {
|
|
90
|
+
try {
|
|
91
|
+
// Assuming admin can use the update endpoint with status 'open'
|
|
92
|
+
const data = await patch(`/guides/update/${slug}`, {
|
|
93
|
+
status: "open",
|
|
94
|
+
});
|
|
95
|
+
return { success: true, message: data.message };
|
|
96
|
+
}
|
|
97
|
+
catch (error) {
|
|
98
|
+
return { success: false, error: error.message };
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
export async function rejectGuide(slug, rejectionReason) {
|
|
102
|
+
try {
|
|
103
|
+
const data = await patch(`/guides/update/${slug}`, {
|
|
104
|
+
status: "denied",
|
|
105
|
+
rejectionReason,
|
|
106
|
+
});
|
|
107
|
+
return { success: true, message: data.message };
|
|
108
|
+
}
|
|
109
|
+
catch (error) {
|
|
110
|
+
return { success: false, error: error.message };
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
// ─── Helper ───────────────────────────────────────────────────────────────────
|
|
114
|
+
function guideToTile(guide) {
|
|
115
|
+
return {
|
|
116
|
+
slug: guide.slug || "",
|
|
117
|
+
image: guide.images?.[0] || "/images/placeholder.svg",
|
|
118
|
+
title: guide.title || "",
|
|
119
|
+
description: guide.description || "",
|
|
120
|
+
location: `${guide.city}, ${guide.state}`,
|
|
121
|
+
date: guide.createdAt,
|
|
122
|
+
rating: guide.rating,
|
|
123
|
+
price: calculatePricingStrategyDisplayUnitPrice(getPrimaryPricingStrategy(guide)),
|
|
124
|
+
currency: getPricingCurrency(guide),
|
|
125
|
+
tileType: "guides",
|
|
126
|
+
host: guide.host,
|
|
127
|
+
};
|
|
128
|
+
}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
export declare function getHostDashboardOverview(): Promise<{
|
|
2
|
+
success: boolean;
|
|
3
|
+
data: any;
|
|
4
|
+
error?: undefined;
|
|
5
|
+
} | {
|
|
6
|
+
success: boolean;
|
|
7
|
+
data: null;
|
|
8
|
+
error: any;
|
|
9
|
+
}>;
|
|
10
|
+
export declare function getHostDashboardListings(params?: {
|
|
11
|
+
page?: number;
|
|
12
|
+
limit?: number;
|
|
13
|
+
category?: string;
|
|
14
|
+
status?: string;
|
|
15
|
+
}): Promise<any>;
|
|
16
|
+
export declare function deleteHostDashboardListing(id: string, category: string): Promise<{
|
|
17
|
+
success: boolean;
|
|
18
|
+
data: any;
|
|
19
|
+
error?: undefined;
|
|
20
|
+
} | {
|
|
21
|
+
success: boolean;
|
|
22
|
+
error: any;
|
|
23
|
+
data?: undefined;
|
|
24
|
+
}>;
|
|
25
|
+
export declare function archiveHostDashboardListing(id: string, category: string): Promise<{
|
|
26
|
+
success: boolean;
|
|
27
|
+
data: any;
|
|
28
|
+
error?: undefined;
|
|
29
|
+
} | {
|
|
30
|
+
success: boolean;
|
|
31
|
+
error: any;
|
|
32
|
+
data?: undefined;
|
|
33
|
+
}>;
|
|
34
|
+
export declare function restoreHostDashboardListing(id: string, category: string): Promise<{
|
|
35
|
+
success: boolean;
|
|
36
|
+
data: any;
|
|
37
|
+
error?: undefined;
|
|
38
|
+
} | {
|
|
39
|
+
success: boolean;
|
|
40
|
+
error: any;
|
|
41
|
+
data?: undefined;
|
|
42
|
+
}>;
|
|
43
|
+
export declare function getHostDashboardBookings(params?: {
|
|
44
|
+
page?: number;
|
|
45
|
+
limit?: number;
|
|
46
|
+
status?: string;
|
|
47
|
+
}): Promise<any>;
|
|
48
|
+
export declare function updateHostBookingStatus(id: string, status: string, type: string): Promise<{
|
|
49
|
+
success: boolean;
|
|
50
|
+
booking: any;
|
|
51
|
+
error?: undefined;
|
|
52
|
+
} | {
|
|
53
|
+
success: boolean;
|
|
54
|
+
error: any;
|
|
55
|
+
booking?: undefined;
|
|
56
|
+
}>;
|
|
57
|
+
export declare function getHostDashboardReviews(params?: {
|
|
58
|
+
page?: number;
|
|
59
|
+
limit?: number;
|
|
60
|
+
}): Promise<any>;
|
|
61
|
+
export declare function getHostDashboardEarnings(): Promise<any>;
|
|
62
|
+
export declare function getHostEarningsBookings(params?: {
|
|
63
|
+
page?: number;
|
|
64
|
+
limit?: number;
|
|
65
|
+
status?: string;
|
|
66
|
+
}): Promise<any>;
|
|
67
|
+
export declare function updateListingAvailability(id: string, data: {
|
|
68
|
+
category: string;
|
|
69
|
+
dates: string[];
|
|
70
|
+
action: "block" | "unblock" | "set-inventory-blocks" | "add-inventory-blocks";
|
|
71
|
+
count?: number;
|
|
72
|
+
}): Promise<{
|
|
73
|
+
success: boolean;
|
|
74
|
+
data: any;
|
|
75
|
+
error?: undefined;
|
|
76
|
+
} | {
|
|
77
|
+
success: boolean;
|
|
78
|
+
error: any;
|
|
79
|
+
data?: undefined;
|
|
80
|
+
}>;
|
|
81
|
+
export declare function getHostBookingDetail(id: string, type: string): Promise<{
|
|
82
|
+
success: boolean;
|
|
83
|
+
booking: any;
|
|
84
|
+
type: any;
|
|
85
|
+
error?: undefined;
|
|
86
|
+
} | {
|
|
87
|
+
success: boolean;
|
|
88
|
+
booking: null;
|
|
89
|
+
error: any;
|
|
90
|
+
type?: undefined;
|
|
91
|
+
}>;
|
|
92
|
+
export declare function getMyBookings(): Promise<{
|
|
93
|
+
success: boolean;
|
|
94
|
+
bookings: any[];
|
|
95
|
+
packageEnquiries: any[];
|
|
96
|
+
error?: undefined;
|
|
97
|
+
} | {
|
|
98
|
+
success: boolean;
|
|
99
|
+
bookings: never[];
|
|
100
|
+
packageEnquiries: never[];
|
|
101
|
+
error: any;
|
|
102
|
+
}>;
|
|
103
|
+
export declare function verifyBookingCodeHost(code: string): Promise<any>;
|
|
104
|
+
export declare function manageAdventureSlots(id: string, slots: any[]): Promise<{
|
|
105
|
+
success: boolean;
|
|
106
|
+
data: any;
|
|
107
|
+
error?: undefined;
|
|
108
|
+
} | {
|
|
109
|
+
success: boolean;
|
|
110
|
+
error: any;
|
|
111
|
+
data?: undefined;
|
|
112
|
+
}>;
|
|
113
|
+
export declare function updateAdventurePricingDiscount(id: string, discountPercentage: number): Promise<{
|
|
114
|
+
success: boolean;
|
|
115
|
+
data: any;
|
|
116
|
+
error?: undefined;
|
|
117
|
+
} | {
|
|
118
|
+
success: boolean;
|
|
119
|
+
error: any;
|
|
120
|
+
data?: undefined;
|
|
121
|
+
}>;
|
|
122
|
+
//# sourceMappingURL=hostDashboard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hostDashboard.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/hostDashboard.ts"],"names":[],"mappings":"AA8GA,wBAAsB,wBAAwB;;;;;;;;GAS7C;AAGD,wBAAsB,wBAAwB,CAAC,MAAM,CAAC,EAAE;IACtD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,gBAkBA;AAED,wBAAsB,0BAA0B,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;;;;;;;;GAS5E;AAED,wBAAsB,2BAA2B,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;;;;;;;;GAU7E;AAED,wBAAsB,2BAA2B,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;;;;;;;;GAU7E;AAGD,wBAAsB,wBAAwB,CAAC,MAAM,CAAC,EAAE;IACtD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,gBAgBA;AAED,wBAAsB,uBAAuB,CAC3C,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM;;;;;;;;GAWb;AAGD,wBAAsB,uBAAuB,CAAC,MAAM,CAAC,EAAE;IACrD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,gBAgBA;AAGD,wBAAsB,wBAAwB,iBAO7C;AAED,wBAAsB,uBAAuB,CAAC,MAAM,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,gBAWxG;AAGD,wBAAsB,yBAAyB,CAC7C,EAAE,EAAE,MAAM,EACV,IAAI,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,OAAO,GAAG,SAAS,CAAA;CAAE;;;;;;;;GAQzE;AAGD,wBAAsB,oBAAoB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;;;;;;;;;;GAOlE;AAED,wBAAsB,aAAa;;;;;;;;;;GAwDlC;AAED,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,MAAM,gBAOvD;AAED,wBAAsB,oBAAoB,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE;;;;;;;;GASlE;AAED,wBAAsB,8BAA8B,CAClD,EAAE,EAAE,MAAM,EACV,kBAAkB,EAAE,MAAM;;;;;;;;GAU3B"}
|