@myrjfa/state 2.1.9 → 2.2.0

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.
Files changed (174) hide show
  1. package/dist/hooks/usePersistentDraftState.d.ts +20 -0
  2. package/dist/hooks/usePersistentDraftState.d.ts.map +1 -0
  3. package/dist/hooks/usePersistentDraftState.js +47 -0
  4. package/dist/index.d.ts +3 -0
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +3 -0
  7. package/dist/lib/actions/actions.d.ts +17 -19
  8. package/dist/lib/actions/actions.d.ts.map +1 -1
  9. package/dist/lib/actions/actions.js +24 -7
  10. package/dist/lib/actions/auth.d.ts +2 -2
  11. package/dist/lib/actions/auth.d.ts.map +1 -1
  12. package/dist/lib/actions/auth.js +9 -0
  13. package/dist/lib/actions/booking.js +2 -2
  14. package/dist/lib/actions/fetcher.js +2 -1
  15. package/dist/lib/actions.d.ts +556 -0
  16. package/dist/lib/actions.d.ts.map +1 -0
  17. package/dist/lib/actions.js +1327 -0
  18. package/dist/lib/adminDashboardActions.d.ts +61 -0
  19. package/dist/lib/adminDashboardActions.d.ts.map +1 -0
  20. package/dist/lib/adminDashboardActions.js +89 -0
  21. package/dist/lib/adventureActions.d.ts +102 -0
  22. package/dist/lib/adventureActions.d.ts.map +1 -0
  23. package/dist/lib/adventureActions.js +202 -0
  24. package/dist/lib/adventureDummyData.d.ts +3 -0
  25. package/dist/lib/adventureDummyData.d.ts.map +1 -0
  26. package/dist/lib/adventureDummyData.js +138 -0
  27. package/dist/lib/adventureFormPage.d.ts +39 -0
  28. package/dist/lib/adventureFormPage.d.ts.map +1 -0
  29. package/dist/lib/adventureFormPage.js +70 -0
  30. package/dist/lib/brandActions.d.ts +83 -0
  31. package/dist/lib/brandActions.d.ts.map +1 -0
  32. package/dist/lib/brandActions.js +28 -0
  33. package/dist/lib/companionActions.d.ts +174 -0
  34. package/dist/lib/companionActions.d.ts.map +1 -0
  35. package/dist/lib/companionActions.js +276 -0
  36. package/dist/lib/companionDummyData.d.ts +99 -0
  37. package/dist/lib/companionDummyData.d.ts.map +1 -0
  38. package/dist/lib/companionDummyData.js +203 -0
  39. package/dist/lib/destinations.d.ts +14 -0
  40. package/dist/lib/destinations.d.ts.map +1 -0
  41. package/dist/lib/destinations.js +203 -0
  42. package/dist/lib/entitySubmission.d.ts +21 -0
  43. package/dist/lib/entitySubmission.d.ts.map +1 -0
  44. package/dist/lib/entitySubmission.js +10 -0
  45. package/dist/lib/eventActions.d.ts +176 -0
  46. package/dist/lib/eventActions.d.ts.map +1 -0
  47. package/dist/lib/eventActions.js +222 -0
  48. package/dist/lib/eventFormPage.d.ts +49 -0
  49. package/dist/lib/eventFormPage.d.ts.map +1 -0
  50. package/dist/lib/eventFormPage.js +84 -0
  51. package/dist/lib/eventsDummyData.d.ts +54 -0
  52. package/dist/lib/eventsDummyData.d.ts.map +1 -0
  53. package/dist/lib/eventsDummyData.js +586 -0
  54. package/dist/lib/guideActions.d.ts +53 -0
  55. package/dist/lib/guideActions.d.ts.map +1 -0
  56. package/dist/lib/guideActions.js +127 -0
  57. package/dist/lib/guideDummyData.d.ts +3 -0
  58. package/dist/lib/guideDummyData.d.ts.map +1 -0
  59. package/dist/lib/guideDummyData.js +66 -0
  60. package/dist/lib/hooks/use-mobile.js +0 -1
  61. package/dist/lib/hooks/useChatSocket.js +0 -1
  62. package/dist/lib/hooks/useHostCalendarSelection.d.ts +51 -0
  63. package/dist/lib/hooks/useHostCalendarSelection.d.ts.map +1 -0
  64. package/dist/lib/hooks/useHostCalendarSelection.js +200 -0
  65. package/dist/lib/hostDashboardActions.d.ts +189 -0
  66. package/dist/lib/hostDashboardActions.d.ts.map +1 -0
  67. package/dist/lib/hostDashboardActions.js +400 -0
  68. package/dist/lib/imageUpload.d.ts +4 -0
  69. package/dist/lib/imageUpload.d.ts.map +1 -0
  70. package/dist/lib/imageUpload.js +36 -0
  71. package/dist/lib/locationActions.d.ts +141 -0
  72. package/dist/lib/locationActions.d.ts.map +1 -0
  73. package/dist/lib/locationActions.js +113 -0
  74. package/dist/lib/models/adventure.d.ts +26 -9
  75. package/dist/lib/models/adventure.d.ts.map +1 -1
  76. package/dist/lib/models/blog.d.ts +2 -2
  77. package/dist/lib/models/discount.d.ts +160 -0
  78. package/dist/lib/models/discount.d.ts.map +1 -0
  79. package/dist/lib/models/discount.js +106 -0
  80. package/dist/lib/models/enquiry.d.ts +34 -0
  81. package/dist/lib/models/enquiry.d.ts.map +1 -0
  82. package/dist/lib/models/enquiry.js +140 -0
  83. package/dist/lib/models/guide.d.ts +4 -3
  84. package/dist/lib/models/guide.d.ts.map +1 -1
  85. package/dist/lib/models/notifications.d.ts +12 -12
  86. package/dist/lib/models/opportunities/freelance.d.ts +76 -76
  87. package/dist/lib/models/opportunities/internship.d.ts +76 -76
  88. package/dist/lib/models/opportunities/job.d.ts +78 -78
  89. package/dist/lib/models/opportunities/opportunity.d.ts +76 -76
  90. package/dist/lib/models/opportunities/volunteerJob.d.ts +76 -76
  91. package/dist/lib/models/package.d.ts +380 -86
  92. package/dist/lib/models/package.d.ts.map +1 -1
  93. package/dist/lib/models/package.js +9 -8
  94. package/dist/lib/models/pricing.d.ts +255 -0
  95. package/dist/lib/models/pricing.d.ts.map +1 -0
  96. package/dist/lib/models/pricing.js +145 -0
  97. package/dist/lib/models/rental.d.ts +12 -7
  98. package/dist/lib/models/rental.d.ts.map +1 -1
  99. package/dist/lib/models/review.d.ts +5 -2
  100. package/dist/lib/models/review.d.ts.map +1 -1
  101. package/dist/lib/models/stay.d.ts +11 -8
  102. package/dist/lib/models/stay.d.ts.map +1 -1
  103. package/dist/lib/models/stay.js +1 -0
  104. package/dist/lib/models/tile.d.ts +11 -7
  105. package/dist/lib/models/tile.d.ts.map +1 -1
  106. package/dist/lib/models/travelPackage.d.ts +943 -0
  107. package/dist/lib/models/travelPackage.d.ts.map +1 -0
  108. package/dist/lib/models/travelPackage.js +326 -0
  109. package/dist/lib/multistepDraft.d.ts +4 -0
  110. package/dist/lib/multistepDraft.d.ts.map +1 -0
  111. package/dist/lib/multistepDraft.js +18 -0
  112. package/dist/lib/opportunityFormData.d.ts +13 -0
  113. package/dist/lib/opportunityFormData.d.ts.map +1 -0
  114. package/dist/lib/opportunityFormData.js +62 -0
  115. package/dist/lib/opportunityFormPage.d.ts +38 -0
  116. package/dist/lib/opportunityFormPage.d.ts.map +1 -0
  117. package/dist/lib/opportunityFormPage.js +33 -0
  118. package/dist/lib/packageActions.d.ts +86 -0
  119. package/dist/lib/packageActions.d.ts.map +1 -0
  120. package/dist/lib/packageActions.js +168 -0
  121. package/dist/lib/packageDummyData.d.ts +3 -0
  122. package/dist/lib/packageDummyData.d.ts.map +1 -0
  123. package/dist/lib/packageDummyData.js +57 -0
  124. package/dist/lib/placeActions.d.ts +192 -0
  125. package/dist/lib/placeActions.d.ts.map +1 -0
  126. package/dist/lib/placeActions.js +57 -0
  127. package/dist/lib/propertyActions.d.ts +17 -0
  128. package/dist/lib/propertyActions.d.ts.map +1 -0
  129. package/dist/lib/propertyActions.js +16 -0
  130. package/dist/lib/rentalActions.d.ts +86 -0
  131. package/dist/lib/rentalActions.d.ts.map +1 -0
  132. package/dist/lib/rentalActions.js +235 -0
  133. package/dist/lib/rentalDummyData.d.ts +3 -0
  134. package/dist/lib/rentalDummyData.d.ts.map +1 -0
  135. package/dist/lib/rentalDummyData.js +402 -0
  136. package/dist/lib/rentalFormPage.d.ts +48 -0
  137. package/dist/lib/rentalFormPage.d.ts.map +1 -0
  138. package/dist/lib/rentalFormPage.js +97 -0
  139. package/dist/lib/roomActions.d.ts +39 -0
  140. package/dist/lib/roomActions.d.ts.map +1 -0
  141. package/dist/lib/roomActions.js +74 -0
  142. package/dist/lib/stayActions.d.ts +97 -0
  143. package/dist/lib/stayActions.d.ts.map +1 -0
  144. package/dist/lib/stayActions.js +138 -0
  145. package/dist/lib/staysDummyData.d.ts +72 -0
  146. package/dist/lib/staysDummyData.d.ts.map +1 -0
  147. package/dist/lib/staysDummyData.js +694 -0
  148. package/dist/lib/storeDummyData.d.ts +33 -0
  149. package/dist/lib/storeDummyData.d.ts.map +1 -0
  150. package/dist/lib/storeDummyData.js +336 -0
  151. package/dist/lib/travelPackageActions.d.ts +102 -0
  152. package/dist/lib/travelPackageActions.d.ts.map +1 -0
  153. package/dist/lib/travelPackageActions.js +487 -0
  154. package/dist/lib/travelPackageFormData.d.ts +20 -0
  155. package/dist/lib/travelPackageFormData.d.ts.map +1 -0
  156. package/dist/lib/travelPackageFormData.js +54 -0
  157. package/dist/lib/travelPackageFormPage.d.ts +32 -0
  158. package/dist/lib/travelPackageFormPage.d.ts.map +1 -0
  159. package/dist/lib/travelPackageFormPage.js +43 -0
  160. package/dist/lib/userAtom.d.ts +32 -32
  161. package/dist/lib/userAtom.d.ts.map +1 -1
  162. package/dist/lib/userAtom.js +17 -1
  163. package/dist/lib/util.d.ts +11 -0
  164. package/dist/lib/util.d.ts.map +1 -0
  165. package/dist/lib/util.js +82 -0
  166. package/dist/lib/utils.d.ts.map +1 -1
  167. package/dist/lib/utils.js +1 -0
  168. package/dist/lib/vehicleData.d.ts +2 -0
  169. package/dist/lib/vehicleData.d.ts.map +1 -0
  170. package/dist/lib/vehicleData.js +181 -0
  171. package/dist/lib/vehicleModels.d.ts +2 -0
  172. package/dist/lib/vehicleModels.d.ts.map +1 -0
  173. package/dist/lib/vehicleModels.js +128 -0
  174. package/package.json +6 -5
@@ -0,0 +1,168 @@
1
+ import { get, patch, post, del } from "@myrjfa/state/dist/lib/actions/fetcher";
2
+ import { calculatePricingStrategyDisplayUnitPrice, getPricingCurrency, getPricingStrategies } from "@myrjfa/state/dist/lib/models/pricing";
3
+ // ─── Public ───────────────────────────────────────────────────────────────────
4
+ export async function getPackageTiles(limit, filters) {
5
+ try {
6
+ let endpoint = `/packages/getAllPackageTiles?status=open`;
7
+ if (limit)
8
+ endpoint += `&limit=${limit}`;
9
+ if (filters?.categoryId)
10
+ endpoint += `&categoryId=${filters.categoryId}`;
11
+ if (filters?.difficultyLevel)
12
+ endpoint += `&difficultyLevel=${filters.difficultyLevel}`;
13
+ const data = await get(endpoint);
14
+ return {
15
+ success: true,
16
+ message: data.message,
17
+ tiles: data.data.map(packageToTile),
18
+ };
19
+ }
20
+ catch (error) {
21
+ console.error("Failed to fetch package tiles:", error);
22
+ return { success: false, error: error.message, tiles: [] };
23
+ }
24
+ }
25
+ export async function trendingPackageTiles(limit) {
26
+ return getPackageTiles(limit);
27
+ }
28
+ export async function packageDetails(slug) {
29
+ try {
30
+ const data = await get(`/packages/getPackage/${slug}`);
31
+ return { success: true, message: data.message, package: data.data };
32
+ }
33
+ catch (error) {
34
+ console.error("Failed to fetch package details:", error);
35
+ return { success: false, error: error.message, package: null };
36
+ }
37
+ }
38
+ export async function packageMetaData(slug) {
39
+ try {
40
+ const data = await get(`/packages/getPackage/${slug}`);
41
+ const p = data.data;
42
+ return {
43
+ success: true,
44
+ metadata: {
45
+ image: p.packageImages?.[0] || "/images/placeholder.svg",
46
+ title: p.title,
47
+ city: p.city,
48
+ state: p.state,
49
+ categoryId: p.categoryId,
50
+ difficultyLevel: p.difficultyLevel,
51
+ price: calculatePricingStrategyDisplayUnitPrice(getPricingStrategies(p)?.[0]),
52
+ currency: getPricingCurrency(p),
53
+ },
54
+ };
55
+ }
56
+ catch (error) {
57
+ return { success: false, error: error.message, metadata: null };
58
+ }
59
+ }
60
+ export async function packagesByUsername(username, limit) {
61
+ try {
62
+ let endpoint = `/packages/getPackagesByUsername/${username}?status=open`;
63
+ if (limit)
64
+ endpoint += `&limit=${limit}`;
65
+ const data = await get(endpoint);
66
+ return {
67
+ success: true,
68
+ message: data.message,
69
+ tiles: (data.data || []).map(packageToTile),
70
+ };
71
+ }
72
+ catch (error) {
73
+ return { success: false, error: error.message, tiles: [] };
74
+ }
75
+ }
76
+ export async function adminPackagesByHost(username) {
77
+ try {
78
+ const data = await get(`/packages/getPackagesByUsername/${username}?status=open,pending,draft,denied,archived,closed`);
79
+ return { success: true, packages: data.data || [] };
80
+ }
81
+ catch (error) {
82
+ return { success: false, packages: [], error: error.message };
83
+ }
84
+ }
85
+ // ─── Host Dashboard ───────────────────────────────────────────────────────────
86
+ export async function packagesByHost() {
87
+ try {
88
+ const data = await get(`/host/dashboard/listings?category=package`);
89
+ return {
90
+ success: true,
91
+ message: data.message,
92
+ packages: data.data?.listings || [],
93
+ };
94
+ }
95
+ catch (error) {
96
+ return { success: false, error: error.message, packages: [] };
97
+ }
98
+ }
99
+ export async function createPackage(formData) {
100
+ try {
101
+ const data = await post("/packages/create", formData);
102
+ return {
103
+ success: true,
104
+ slug: data.data.slug,
105
+ _id: data.data._id,
106
+ message: data.message,
107
+ };
108
+ }
109
+ catch (error) {
110
+ return { success: false, error: error.message };
111
+ }
112
+ }
113
+ export async function deletePackage(slug) {
114
+ try {
115
+ const data = await del(`/packages/delete/${slug}`);
116
+ return { success: true, message: data.message };
117
+ }
118
+ catch (error) {
119
+ return { success: false, error: error.message };
120
+ }
121
+ }
122
+ // ─── Admin ────────────────────────────────────────────────────────────────────
123
+ export async function getPendingPackages() {
124
+ try {
125
+ const data = await get(`/admin/packages?status=all`);
126
+ return { success: true, message: data.message, packages: data.data };
127
+ }
128
+ catch (error) {
129
+ return { success: false, error: error.message, packages: [] };
130
+ }
131
+ }
132
+ export async function approvePackage(slug) {
133
+ try {
134
+ const data = await patch(`/admin/packages/approve/${slug}`, {});
135
+ return { success: true, message: data.message };
136
+ }
137
+ catch (error) {
138
+ return { success: false, error: error.message };
139
+ }
140
+ }
141
+ export async function rejectPackage(slug, rejectionReason) {
142
+ try {
143
+ const data = await patch(`/admin/packages/reject/${slug}`, { rejectionReason });
144
+ return { success: true, message: data.message };
145
+ }
146
+ catch (error) {
147
+ return { success: false, error: error.message };
148
+ }
149
+ }
150
+ // ─── Helper ───────────────────────────────────────────────────────────────────
151
+ function packageToTile(p) {
152
+ return {
153
+ slug: p.slug || "",
154
+ image: p.packageImages?.[0] || "/images/placeholder.svg",
155
+ title: p.title || "",
156
+ description: p.description || "",
157
+ location: `${p.city}, ${p.state}`,
158
+ date: p.createdAt ? new Date(p.createdAt) : new Date(),
159
+ rating: p.rating,
160
+ price: calculatePricingStrategyDisplayUnitPrice(getPricingStrategies(p)?.[0]),
161
+ currency: getPricingCurrency(p),
162
+ duration: p.duration,
163
+ difficultyLevel: p.difficultyLevel,
164
+ className: p.categoryId,
165
+ tileType: "packages",
166
+ host: p.host,
167
+ };
168
+ }
@@ -0,0 +1,3 @@
1
+ import { TileProps } from "@myrjfa/state/dist/lib/models/tile";
2
+ export declare const packageDummyData: TileProps[];
3
+ //# sourceMappingURL=packageDummyData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packageDummyData.d.ts","sourceRoot":"","sources":["../../src/lib/packageDummyData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAG/D,eAAO,MAAM,gBAAgB,EAAE,SAAS,EA4DvC,CAAC"}
@@ -0,0 +1,57 @@
1
+ import { DifficultyEnum } from "./models/travelPackage";
2
+ export const packageDummyData = [
3
+ {
4
+ slug: "luxury-kerala-backwaters-houseboat",
5
+ image: "https://images.pexels.com/photos/962512/pexels-photo-962512.jpeg",
6
+ title: "Luxury Kerala Backwaters & Houseboat",
7
+ description: "5 Nights / 6 Days covering Kochi, Munnar, Thekkady, and Alleppey. Experience the serene backwaters in a premium houseboat.",
8
+ location: "Kochi, Kerala",
9
+ date: new Date("2025-05-15"),
10
+ rating: 4.9,
11
+ price: 35000,
12
+ currency: "INR",
13
+ tileType: "packages",
14
+ duration: 6,
15
+ difficultyLevel: DifficultyEnum.Easy,
16
+ host: {
17
+ name: "Kerala Travels",
18
+ image: "https://images.pexels.com/photos/1722198/pexels-photo-1722198.jpeg",
19
+ },
20
+ },
21
+ {
22
+ slug: "rajasthan-royal-heritage-tour",
23
+ image: "https://images.pexels.com/photos/3581369/pexels-photo-3581369.jpeg",
24
+ title: "Rajasthan Royal Heritage Tour",
25
+ description: "7 Nights / 8 Days exploring Jaipur, Jodhpur, and Udaipur. Stay in authentic palace hotels and experience Rajputana hospitality.",
26
+ location: "Jaipur, Rajasthan",
27
+ date: new Date("2025-06-01"),
28
+ rating: 4.8,
29
+ price: 45000,
30
+ currency: "INR",
31
+ tileType: "packages",
32
+ duration: 8,
33
+ difficultyLevel: DifficultyEnum.Easy,
34
+ host: {
35
+ name: "Rajasthan Royals",
36
+ image: "https://images.pexels.com/photos/733872/pexels-photo-733872.jpeg",
37
+ },
38
+ },
39
+ {
40
+ slug: "le-ladakh-adventure-circuit",
41
+ image: "https://images.pexels.com/photos/3802510/pexels-photo-3802510.jpeg",
42
+ title: "Leh-Ladakh Adventure Circuit",
43
+ description: "9 Nights / 10 Days across Manali, Leh, Nubra Valley, and Pangong Lake. An ultimate road trip for adventure seekers.",
44
+ location: "Leh, Ladakh",
45
+ date: new Date("2025-07-10"),
46
+ rating: 4.9,
47
+ price: 55000,
48
+ currency: "INR",
49
+ tileType: "packages",
50
+ duration: 10,
51
+ difficultyLevel: DifficultyEnum.Hard,
52
+ host: {
53
+ name: "Ladakh Adventures",
54
+ image: "https://images.pexels.com/photos/2379005/pexels-photo-2379005.jpeg",
55
+ },
56
+ },
57
+ ];
@@ -0,0 +1,192 @@
1
+ import type { Location } from "./locationActions";
2
+ import { DifficultyEnum } from "./models/travelPackage";
3
+ export interface ListingPreview {
4
+ _id?: string;
5
+ slug: string;
6
+ title: string;
7
+ city?: string;
8
+ state?: string;
9
+ country?: string;
10
+ images?: string[];
11
+ packageImages?: string[];
12
+ rating?: number;
13
+ views?: number;
14
+ vehicleType?: string;
15
+ propertyType?: string;
16
+ category?: string;
17
+ eventDate?: string;
18
+ price?: number;
19
+ currency?: string;
20
+ isFree?: boolean;
21
+ difficultyLevel?: DifficultyEnum;
22
+ }
23
+ export interface BrandSummary {
24
+ _id: string;
25
+ name: string;
26
+ slug: string;
27
+ description?: string;
28
+ logo?: string;
29
+ coverImage?: string;
30
+ verificationStatus?: string;
31
+ stats?: {
32
+ followers?: number;
33
+ clicks?: number;
34
+ };
35
+ locations?: string[];
36
+ locationPaths?: string[];
37
+ offerings?: Array<{
38
+ type: string;
39
+ refId: string;
40
+ }>;
41
+ }
42
+ export interface AdOfferSummary {
43
+ _id: string;
44
+ slug: string;
45
+ title: string;
46
+ shortDescription?: string;
47
+ description?: string;
48
+ creative?: Array<{
49
+ image?: string;
50
+ title?: string;
51
+ subtitle?: string;
52
+ ctaLabel?: string;
53
+ badge?: string;
54
+ aspectRatio?: string;
55
+ }>;
56
+ brand?: BrandSummary;
57
+ promotedEntity?: {
58
+ entityType: string;
59
+ slug?: string;
60
+ href?: string;
61
+ };
62
+ maxCommission?: {
63
+ booking?: number;
64
+ click?: number;
65
+ view?: number;
66
+ };
67
+ placement?: {
68
+ expectedCommission?: {
69
+ booking?: number;
70
+ click?: number;
71
+ view?: number;
72
+ };
73
+ platformFeeRate?: number;
74
+ publisherPayoutRate?: number;
75
+ scores?: {
76
+ relevanceScore?: number;
77
+ trustScore?: number;
78
+ consistencyScore?: number;
79
+ fraudGuardScore?: number;
80
+ finalScore?: number;
81
+ };
82
+ explanation?: string[];
83
+ };
84
+ href?: string;
85
+ }
86
+ export interface DiscussionSummary {
87
+ _id: string;
88
+ title: string;
89
+ content: string;
90
+ slug: string;
91
+ tags: string[];
92
+ upvotes: number;
93
+ downvotes: number;
94
+ repliesCount: number;
95
+ createdAt: string;
96
+ authorName?: string;
97
+ entityType?: "place" | "brand" | null;
98
+ entityId?: string | null;
99
+ parentId?: string | null;
100
+ linkedPlaces?: string[];
101
+ }
102
+ export interface PlacePageData {
103
+ place: Location;
104
+ childPlaces: Location[];
105
+ nearbyPlaces: Location[];
106
+ relatedPlaces: Location[];
107
+ topListings: {
108
+ stays: ListingPreview[];
109
+ packages: ListingPreview[];
110
+ rentals: ListingPreview[];
111
+ events: ListingPreview[];
112
+ };
113
+ discussions: DiscussionSummary[];
114
+ featuredBrands: BrandSummary[];
115
+ trendingContent: DiscussionSummary[];
116
+ }
117
+ export interface TripPlanSummary {
118
+ _id: string;
119
+ title?: string;
120
+ slug?: string;
121
+ destination?: string;
122
+ numberOfDays?: number;
123
+ budgetType?: string;
124
+ interests?: string[];
125
+ totalEstimatedCost?: number;
126
+ overview?: string;
127
+ startDate?: string;
128
+ endDate?: string;
129
+ createdAt?: string;
130
+ }
131
+ export interface PlaceFullPageData {
132
+ place: Location;
133
+ breadcrumb: Array<{
134
+ name: string;
135
+ slug: string;
136
+ href: string;
137
+ }>;
138
+ images: string[];
139
+ thingsToDo: Location[];
140
+ famousPlaces: Location[];
141
+ events: ListingPreview[];
142
+ adventures: ListingPreview[];
143
+ packages: ListingPreview[];
144
+ stays: ListingPreview[];
145
+ guides: ListingPreview[];
146
+ opportunities: ListingPreview[];
147
+ restaurants: ListingPreview[];
148
+ brands: BrandSummary[];
149
+ discussions: DiscussionSummary[];
150
+ trips: TripPlanSummary[];
151
+ adOffers: AdOfferSummary[];
152
+ }
153
+ export interface PlaceResolution {
154
+ place: Pick<Location, "_id" | "name" | "slug" | "slugPath" | "type" | "ancestors"> & {
155
+ path?: string;
156
+ };
157
+ href: string;
158
+ }
159
+ export declare function fetchPlacePage(slugPath: string): Promise<{
160
+ success: boolean;
161
+ pageData?: PlacePageData;
162
+ error?: string;
163
+ }>;
164
+ export declare function fetchPlaceFullPage(slugPath: string): Promise<{
165
+ success: boolean;
166
+ pageData?: PlaceFullPageData;
167
+ error?: string;
168
+ }>;
169
+ export declare function fetchPlaces(params?: Record<string, string>): Promise<{
170
+ success: boolean;
171
+ items: Location[];
172
+ total: number;
173
+ error?: string;
174
+ }>;
175
+ export declare function resolvePlaceLink(params: {
176
+ country?: string;
177
+ state?: string;
178
+ city?: string;
179
+ area?: string;
180
+ landmark?: string;
181
+ path?: string;
182
+ }): Promise<{
183
+ success: boolean;
184
+ resolution?: PlaceResolution;
185
+ error?: string;
186
+ }>;
187
+ export declare function fetchAdOffers(params?: Record<string, string>): Promise<{
188
+ success: boolean;
189
+ items: AdOfferSummary[];
190
+ error?: string;
191
+ }>;
192
+ //# sourceMappingURL=placeActions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"placeActions.d.ts","sourceRoot":"","sources":["../../src/lib/placeActions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ import { get } from "@myrjfa/state/dist/lib/actions/fetcher";
2
+ export async function fetchPlacePage(slugPath) {
3
+ try {
4
+ const data = await get(`/places/${slugPath}`);
5
+ return { success: true, pageData: data.data };
6
+ }
7
+ catch (err) {
8
+ return { success: false, error: err.message };
9
+ }
10
+ }
11
+ export async function fetchPlaceFullPage(slugPath) {
12
+ try {
13
+ const data = await get(`/places/${slugPath}/full-data`);
14
+ return { success: true, pageData: data.data };
15
+ }
16
+ catch (err) {
17
+ return { success: false, error: err.message };
18
+ }
19
+ }
20
+ export async function fetchPlaces(params = {}) {
21
+ try {
22
+ const query = new URLSearchParams(params).toString();
23
+ const data = await get(`/places${query ? `?${query}` : ""}`);
24
+ return {
25
+ success: true,
26
+ items: data.data?.items || [],
27
+ total: data.data?.total || 0,
28
+ };
29
+ }
30
+ catch (err) {
31
+ return { success: false, items: [], total: 0, error: err.message };
32
+ }
33
+ }
34
+ export async function resolvePlaceLink(params) {
35
+ try {
36
+ const query = new URLSearchParams();
37
+ Object.entries(params).forEach(([key, value]) => {
38
+ if (value)
39
+ query.set(key, value);
40
+ });
41
+ const data = await get(`/places/resolve?${query.toString()}`);
42
+ return { success: true, resolution: data.data };
43
+ }
44
+ catch (err) {
45
+ return { success: false, error: err.message };
46
+ }
47
+ }
48
+ export async function fetchAdOffers(params = {}) {
49
+ try {
50
+ const query = new URLSearchParams(params).toString();
51
+ const data = await get(`/ads${query ? `?${query}` : ""}`, false);
52
+ return { success: true, items: data.data || [] };
53
+ }
54
+ catch (err) {
55
+ return { success: false, items: [], error: err.message };
56
+ }
57
+ }
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Property Actions — thin wrapper over stayActions.ts
3
+ *
4
+ * "Property" is the user-facing name for "Stay".
5
+ * All API calls go through the same /stays backend routes.
6
+ */
7
+ export { fetchStays as fetchProperties } from "./stayActions";
8
+ export { fetchStayBySlug as fetchPropertyBySlug } from "./stayActions";
9
+ export { createStayListing as createProperty } from "./stayActions";
10
+ export { updateStayListing as updateProperty } from "./stayActions";
11
+ export { deleteStayListing as deleteProperty } from "./stayActions";
12
+ export { getMyStayListings as getMyProperties } from "./stayActions";
13
+ export { getStayManagers as getPropertyManagers } from "./stayActions";
14
+ export { addStayManager as addPropertyManager } from "./stayActions";
15
+ export { updateStayManager as updatePropertyManager } from "./stayActions";
16
+ export { removeStayManager as removePropertyManager } from "./stayActions";
17
+ //# sourceMappingURL=propertyActions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"propertyActions.d.ts","sourceRoot":"","sources":["../../src/lib/propertyActions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,IAAI,eAAe,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,eAAe,IAAI,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,iBAAiB,IAAI,cAAc,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,iBAAiB,IAAI,cAAc,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,iBAAiB,IAAI,cAAc,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,iBAAiB,IAAI,eAAe,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,eAAe,IAAI,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,cAAc,IAAI,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,iBAAiB,IAAI,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAC3E,OAAO,EAAE,iBAAiB,IAAI,qBAAqB,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Property Actions — thin wrapper over stayActions.ts
3
+ *
4
+ * "Property" is the user-facing name for "Stay".
5
+ * All API calls go through the same /stays backend routes.
6
+ */
7
+ export { fetchStays as fetchProperties } from "./stayActions";
8
+ export { fetchStayBySlug as fetchPropertyBySlug } from "./stayActions";
9
+ export { createStayListing as createProperty } from "./stayActions";
10
+ export { updateStayListing as updateProperty } from "./stayActions";
11
+ export { deleteStayListing as deleteProperty } from "./stayActions";
12
+ export { getMyStayListings as getMyProperties } from "./stayActions";
13
+ export { getStayManagers as getPropertyManagers } from "./stayActions";
14
+ export { addStayManager as addPropertyManager } from "./stayActions";
15
+ export { updateStayManager as updatePropertyManager } from "./stayActions";
16
+ export { removeStayManager as removePropertyManager } from "./stayActions";
@@ -0,0 +1,86 @@
1
+ import { Rental, RentalMetaData } from "@myrjfa/state/dist/lib/models/rental";
2
+ import { TileProps } from "@myrjfa/state/dist/lib/models/tile";
3
+ export declare function getRentalTiles(limit?: number, filters?: {
4
+ vehicleType?: string;
5
+ fuelType?: string;
6
+ driverOption?: string;
7
+ }): Promise<{
8
+ success: boolean;
9
+ tiles: TileProps[];
10
+ message?: string;
11
+ error?: string;
12
+ }>;
13
+ export declare function trendingRentalTiles(limit: number): Promise<{
14
+ success: boolean;
15
+ tiles: TileProps[];
16
+ message?: string;
17
+ error?: string;
18
+ }>;
19
+ export declare function rentalDetails(slug: string): Promise<{
20
+ success: boolean;
21
+ rental: Rental | null;
22
+ message?: string;
23
+ error?: string;
24
+ }>;
25
+ export declare function rentalMetaData(slug: string): Promise<{
26
+ success: boolean;
27
+ metadata: RentalMetaData | null;
28
+ message?: string;
29
+ error?: string;
30
+ }>;
31
+ export declare function rentalsByUsername(username: string, limit?: number): Promise<{
32
+ success: boolean;
33
+ tiles: TileProps[];
34
+ message?: string;
35
+ error?: string;
36
+ }>;
37
+ export declare function rentalsByHost(): Promise<{
38
+ success: boolean;
39
+ rentals: Rental[];
40
+ message?: string;
41
+ error?: string;
42
+ }>;
43
+ export declare function createRental(formData: FormData): Promise<{
44
+ success: boolean;
45
+ slug?: string;
46
+ message?: string;
47
+ error?: string;
48
+ }>;
49
+ export declare function editRental(formData: FormData, slug: string): Promise<{
50
+ success: boolean;
51
+ message?: string;
52
+ error?: string;
53
+ }>;
54
+ export declare function deleteRental(slug: string): Promise<{
55
+ success: boolean;
56
+ message?: string;
57
+ error?: string;
58
+ }>;
59
+ export declare function getPendingRentals(): Promise<{
60
+ success: boolean;
61
+ rentals: Rental[];
62
+ message?: string;
63
+ error?: string;
64
+ }>;
65
+ export declare function adminRentalsByHost(username: string): Promise<{
66
+ success: boolean;
67
+ rentals: Rental[];
68
+ error?: string;
69
+ }>;
70
+ export declare function approveRental(slug: string, modelImage?: File): Promise<{
71
+ success: boolean;
72
+ message?: string;
73
+ error?: string;
74
+ data?: any;
75
+ }>;
76
+ export declare function rejectRental(slug: string, rejectionReason: string): Promise<{
77
+ success: boolean;
78
+ message?: string;
79
+ error?: string;
80
+ }>;
81
+ export declare function getRentalBookingsAdmin(slugOrId: string): Promise<{
82
+ success: boolean;
83
+ bookings: any[];
84
+ error?: string;
85
+ }>;
86
+ //# sourceMappingURL=rentalActions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rentalActions.d.ts","sourceRoot":"","sources":["../../src/lib/rentalActions.ts"],"names":[],"mappings":"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"}