@myrjfa/state 2.3.1 → 2.3.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.
Files changed (179) hide show
  1. package/dist/lib/actions/actions.d.ts +6 -6
  2. package/dist/lib/actions/auth.d.ts +23 -19
  3. package/dist/lib/actions/auth.d.ts.map +1 -1
  4. package/dist/lib/actions/auth.js +24 -5
  5. package/dist/lib/actions/chat.d.ts +20 -14
  6. package/dist/lib/actions/chat.d.ts.map +1 -1
  7. package/dist/lib/actions/chat.js +2 -2
  8. package/dist/lib/actions/fetcher.d.ts.map +1 -1
  9. package/dist/lib/actions/fetcher.js +15 -8
  10. package/dist/lib/actions.d.ts +12 -12
  11. package/dist/lib/actions.d.ts.map +1 -1
  12. package/dist/lib/actions.js +3 -1
  13. package/dist/lib/authSessionManager.d.ts.map +1 -1
  14. package/dist/lib/authSessionManager.js +77 -13
  15. package/dist/lib/authSessionPolicy.d.ts +34 -0
  16. package/dist/lib/authSessionPolicy.d.ts.map +1 -1
  17. package/dist/lib/authSessionPolicy.js +52 -0
  18. package/dist/lib/context/ChatContext.d.ts.map +1 -1
  19. package/dist/lib/context/ChatContext.js +12 -6
  20. package/dist/lib/models/authorization.d.ts +4 -3
  21. package/dist/lib/models/authorization.d.ts.map +1 -1
  22. package/dist/lib/models/authorization.js +10 -4
  23. package/dist/lib/models/blog.d.ts +4 -4
  24. package/dist/lib/models/chat.d.ts +10 -2
  25. package/dist/lib/models/chat.d.ts.map +1 -1
  26. package/dist/lib/models/chat.js +8 -0
  27. package/dist/lib/models/discount.d.ts +52 -52
  28. package/dist/lib/models/notifications.d.ts +2 -2
  29. package/dist/lib/models/opportunities/freelance.d.ts +34 -34
  30. package/dist/lib/models/opportunities/internship.d.ts +34 -34
  31. package/dist/lib/models/opportunities/job.d.ts +34 -34
  32. package/dist/lib/models/opportunities/opportunity.d.ts +34 -34
  33. package/dist/lib/models/opportunities/volunteerJob.d.ts +34 -34
  34. package/dist/lib/models/package.d.ts +16 -16
  35. package/dist/lib/models/portfolio.d.ts +2 -2
  36. package/dist/lib/models/pricing.d.ts +12 -12
  37. package/dist/lib/models/review.d.ts +2 -2
  38. package/dist/lib/models/stay.d.ts +18 -18
  39. package/dist/lib/models/travelPackage.d.ts +36 -36
  40. package/dist/lib/models/user.d.ts +12 -12
  41. package/dist/lib/userAtom.d.ts +126 -25
  42. package/dist/lib/userAtom.d.ts.map +1 -1
  43. package/dist/lib/userAtom.js +79 -45
  44. package/package.json +1 -1
  45. package/dist/lib/actions/adminDashboard.d.ts +0 -4
  46. package/dist/lib/actions/adminDashboard.d.ts.map +0 -1
  47. package/dist/lib/actions/adminDashboard.js +0 -29
  48. package/dist/lib/actions/adventure.d.ts +0 -104
  49. package/dist/lib/actions/adventure.d.ts.map +0 -1
  50. package/dist/lib/actions/adventure.js +0 -203
  51. package/dist/lib/actions/application.d.ts +0 -35
  52. package/dist/lib/actions/application.d.ts.map +0 -1
  53. package/dist/lib/actions/application.js +0 -573
  54. package/dist/lib/actions/blog.d.ts +0 -61
  55. package/dist/lib/actions/blog.d.ts.map +0 -1
  56. package/dist/lib/actions/blog.js +0 -762
  57. package/dist/lib/actions/brand.d.ts +0 -83
  58. package/dist/lib/actions/brand.d.ts.map +0 -1
  59. package/dist/lib/actions/brand.js +0 -28
  60. package/dist/lib/actions/companion.d.ts +0 -174
  61. package/dist/lib/actions/companion.d.ts.map +0 -1
  62. package/dist/lib/actions/companion.js +0 -276
  63. package/dist/lib/actions/event.d.ts +0 -178
  64. package/dist/lib/actions/event.d.ts.map +0 -1
  65. package/dist/lib/actions/event.js +0 -214
  66. package/dist/lib/actions/guide.d.ts +0 -55
  67. package/dist/lib/actions/guide.d.ts.map +0 -1
  68. package/dist/lib/actions/guide.js +0 -128
  69. package/dist/lib/actions/hostDashboard.d.ts +0 -122
  70. package/dist/lib/actions/hostDashboard.d.ts.map +0 -1
  71. package/dist/lib/actions/hostDashboard.js +0 -329
  72. package/dist/lib/actions/location.d.ts +0 -141
  73. package/dist/lib/actions/location.d.ts.map +0 -1
  74. package/dist/lib/actions/location.js +0 -113
  75. package/dist/lib/actions/notifications.d.ts +0 -91
  76. package/dist/lib/actions/notifications.d.ts.map +0 -1
  77. package/dist/lib/actions/notifications.js +0 -83
  78. package/dist/lib/actions/opportunity.d.ts +0 -44
  79. package/dist/lib/actions/opportunity.d.ts.map +0 -1
  80. package/dist/lib/actions/opportunity.js +0 -318
  81. package/dist/lib/actions/package.d.ts +0 -85
  82. package/dist/lib/actions/package.d.ts.map +0 -1
  83. package/dist/lib/actions/package.js +0 -167
  84. package/dist/lib/actions/place.d.ts +0 -191
  85. package/dist/lib/actions/place.d.ts.map +0 -1
  86. package/dist/lib/actions/place.js +0 -57
  87. package/dist/lib/actions/portfolio.d.ts +0 -65
  88. package/dist/lib/actions/portfolio.d.ts.map +0 -1
  89. package/dist/lib/actions/portfolio.js +0 -62
  90. package/dist/lib/actions/property.d.ts +0 -17
  91. package/dist/lib/actions/property.d.ts.map +0 -1
  92. package/dist/lib/actions/property.js +0 -16
  93. package/dist/lib/actions/rental.d.ts +0 -87
  94. package/dist/lib/actions/rental.d.ts.map +0 -1
  95. package/dist/lib/actions/rental.js +0 -205
  96. package/dist/lib/actions/review.d.ts +0 -8
  97. package/dist/lib/actions/review.d.ts.map +0 -1
  98. package/dist/lib/actions/review.js +0 -102
  99. package/dist/lib/actions/room.d.ts +0 -39
  100. package/dist/lib/actions/room.d.ts.map +0 -1
  101. package/dist/lib/actions/room.js +0 -74
  102. package/dist/lib/actions/stay.d.ts +0 -97
  103. package/dist/lib/actions/stay.d.ts.map +0 -1
  104. package/dist/lib/actions/stay.js +0 -138
  105. package/dist/lib/actions/travelPackage.d.ts +0 -104
  106. package/dist/lib/actions/travelPackage.d.ts.map +0 -1
  107. package/dist/lib/actions/travelPackage.js +0 -487
  108. package/dist/lib/data/adventureDummyData.d.ts +0 -3
  109. package/dist/lib/data/adventureDummyData.d.ts.map +0 -1
  110. package/dist/lib/data/adventureDummyData.js +0 -138
  111. package/dist/lib/data/adventureFormPage.d.ts +0 -28
  112. package/dist/lib/data/adventureFormPage.d.ts.map +0 -1
  113. package/dist/lib/data/adventureFormPage.js +0 -58
  114. package/dist/lib/data/companionDummyData.d.ts +0 -99
  115. package/dist/lib/data/companionDummyData.d.ts.map +0 -1
  116. package/dist/lib/data/companionDummyData.js +0 -203
  117. package/dist/lib/data/destinations.d.ts +0 -14
  118. package/dist/lib/data/destinations.d.ts.map +0 -1
  119. package/dist/lib/data/destinations.js +0 -203
  120. package/dist/lib/data/eventFormPage.d.ts +0 -38
  121. package/dist/lib/data/eventFormPage.d.ts.map +0 -1
  122. package/dist/lib/data/eventFormPage.js +0 -56
  123. package/dist/lib/data/eventsDummyData.d.ts +0 -54
  124. package/dist/lib/data/eventsDummyData.d.ts.map +0 -1
  125. package/dist/lib/data/eventsDummyData.js +0 -586
  126. package/dist/lib/data/guideDummyData.d.ts +0 -3
  127. package/dist/lib/data/guideDummyData.d.ts.map +0 -1
  128. package/dist/lib/data/guideDummyData.js +0 -66
  129. package/dist/lib/data/opportunityFormData.d.ts +0 -13
  130. package/dist/lib/data/opportunityFormData.d.ts.map +0 -1
  131. package/dist/lib/data/opportunityFormData.js +0 -62
  132. package/dist/lib/data/opportunityFormPage.d.ts +0 -12
  133. package/dist/lib/data/opportunityFormPage.d.ts.map +0 -1
  134. package/dist/lib/data/opportunityFormPage.js +0 -33
  135. package/dist/lib/data/packageDummyData.d.ts +0 -3
  136. package/dist/lib/data/packageDummyData.d.ts.map +0 -1
  137. package/dist/lib/data/packageDummyData.js +0 -56
  138. package/dist/lib/data/rentalDummyData.d.ts +0 -3
  139. package/dist/lib/data/rentalDummyData.d.ts.map +0 -1
  140. package/dist/lib/data/rentalDummyData.js +0 -382
  141. package/dist/lib/data/rentalFormPage.d.ts +0 -11
  142. package/dist/lib/data/rentalFormPage.d.ts.map +0 -1
  143. package/dist/lib/data/rentalFormPage.js +0 -86
  144. package/dist/lib/data/staysDummyData.d.ts +0 -72
  145. package/dist/lib/data/staysDummyData.d.ts.map +0 -1
  146. package/dist/lib/data/staysDummyData.js +0 -694
  147. package/dist/lib/data/storeDummyData.d.ts +0 -33
  148. package/dist/lib/data/storeDummyData.d.ts.map +0 -1
  149. package/dist/lib/data/storeDummyData.js +0 -336
  150. package/dist/lib/data/travelPackageFormData.d.ts +0 -19
  151. package/dist/lib/data/travelPackageFormData.d.ts.map +0 -1
  152. package/dist/lib/data/travelPackageFormData.js +0 -51
  153. package/dist/lib/data/travelPackageFormPage.d.ts +0 -22
  154. package/dist/lib/data/travelPackageFormPage.d.ts.map +0 -1
  155. package/dist/lib/data/travelPackageFormPage.js +0 -40
  156. package/dist/lib/data/vehicleData.d.ts +0 -2
  157. package/dist/lib/data/vehicleData.d.ts.map +0 -1
  158. package/dist/lib/data/vehicleData.js +0 -187
  159. package/dist/lib/data/vehicleModels.d.ts +0 -2
  160. package/dist/lib/data/vehicleModels.d.ts.map +0 -1
  161. package/dist/lib/data/vehicleModels.js +0 -128
  162. package/dist/lib/hooks/usePersistentDraftState.d.ts +0 -20
  163. package/dist/lib/hooks/usePersistentDraftState.d.ts.map +0 -1
  164. package/dist/lib/hooks/usePersistentDraftState.js +0 -47
  165. package/dist/lib/models/forms.d.ts +0 -384
  166. package/dist/lib/models/forms.d.ts.map +0 -1
  167. package/dist/lib/models/forms.js +0 -121
  168. package/dist/lib/pricingActions.d.ts +0 -13
  169. package/dist/lib/pricingActions.d.ts.map +0 -1
  170. package/dist/lib/pricingActions.js +0 -16
  171. package/dist/lib/utils/entitySubmission.d.ts +0 -21
  172. package/dist/lib/utils/entitySubmission.d.ts.map +0 -1
  173. package/dist/lib/utils/entitySubmission.js +0 -10
  174. package/dist/lib/utils/imageUpload.d.ts +0 -4
  175. package/dist/lib/utils/imageUpload.d.ts.map +0 -1
  176. package/dist/lib/utils/imageUpload.js +0 -36
  177. package/dist/lib/utils/tileConverters.d.ts +0 -8
  178. package/dist/lib/utils/tileConverters.d.ts.map +0 -1
  179. package/dist/lib/utils/tileConverters.js +0 -59
@@ -1,762 +0,0 @@
1
- import { del, get, patch, post } from "./fetcher";
2
- import { truncateText } from "../utils";
3
- // all opportunities (may not be required or may delete in future)
4
- // export async function getAllOpportunities(): Promise<{ success: boolean, opportunities: Opportunity[], message?: string, error?: string }> {
5
- // try {
6
- // const res = await fetch('/sample/opportunity.json');
7
- // const opportunities = await res.json() as Opportunity[];
8
- // return {
9
- // success: true,
10
- // message: "fetch success",
11
- // opportunities: opportunities,
12
- // }
13
- // } catch (error: any) {
14
- // console.error('Failed to fetch all oppotunities: ', error);
15
- // return {
16
- // success: false,
17
- // error: error.message,
18
- // opportunities: []
19
- // };
20
- // }
21
- // };
22
- // for admin dashboard
23
- // export async function getOpportunitiesByStatus(status: string[], limit?: number): Promise<{ success: boolean, opportunities: Opportunity[], message?: string, error?: string }> {
24
- // try {
25
- // const endpoint = `/newHostPost/getAllOppTiles?status=${status}${limit ? ("&limit=" + limit) : ""}`;
26
- // const data: {
27
- // data: Opportunity[], message: string
28
- // } = await get(endpoint);
29
- // return {
30
- // success: true,
31
- // message: data.message,
32
- // opportunities: data.data,
33
- // }
34
- // } catch (error: any) {
35
- // console.error('Failed to fetch opportunities by status: ', error);
36
- // return {
37
- // success: false,
38
- // error: error.message,
39
- // opportunities: []
40
- // };
41
- // }
42
- // };
43
- // export async function approveOpportunity(formData: FormData, slug: string): Promise<{ success: boolean, slug?: string, message?: string, error?: string }> {
44
- // try {
45
- // const endpoint = `/admin/approve-post/${slug}`
46
- // const data: { message: string, data: string } = await patch(endpoint, formData);
47
- // return {
48
- // success: true,
49
- // slug: data.data,
50
- // message: data.message,
51
- // }
52
- // }
53
- // catch (error: any) {
54
- // console.error('Failed to save opportuntiy: ', error);
55
- // return {
56
- // success: false,
57
- // error: error.message,
58
- // };
59
- // }
60
- // }
61
- // blogs
62
- export async function getBlogTilesByStatus(status, limit) {
63
- try {
64
- const endpoint = `/blog/getAllBlogTiles?status=${status}${limit ? "&limit=" + limit : ""}`;
65
- const data = await get(endpoint);
66
- console.log(data);
67
- return {
68
- success: true,
69
- message: data.message,
70
- tiles: data.data.map((blog) => ({
71
- slug: blog.slug || "",
72
- image: blog.blogImages?.[0] || "/images/placeholder.svg",
73
- title: blog.title || "",
74
- description: truncateText(blog.overview, 150),
75
- location: "",
76
- date: blog.createdAt,
77
- rating: blog.likes || 0,
78
- skills: [],
79
- className: "",
80
- host: blog.author
81
- ? {
82
- name: blog.author,
83
- image: blog.authorImage,
84
- }
85
- : null,
86
- isJob: false,
87
- })),
88
- };
89
- }
90
- catch (error) {
91
- console.error("Failed to fetch blogs: ", error);
92
- return {
93
- success: false,
94
- error: error.message,
95
- tiles: [],
96
- };
97
- }
98
- }
99
- // all opportunities (may not be required or may delete in future)
100
- // export async function getAllOpportunities(): Promise<{ success: boolean, opportunities: Opportunity[], message?: string, error?: string }> {
101
- // try {
102
- // const res = await fetch('/sample/opportunity.json');
103
- // const opportunities = await res.json() as Opportunity[];
104
- // return {
105
- // success: true,
106
- // message: "fetch success",
107
- // opportunities: opportunities,
108
- // }
109
- // } catch (error: any) {
110
- // console.error('Failed to fetch all oppotunities: ', error);
111
- // return {
112
- // success: false,
113
- // error: error.message,
114
- // opportunities: []
115
- // };
116
- // }
117
- // };
118
- // for admin dashboard
119
- // export async function getOpportunitiesByStatus(status: string[], limit?: number): Promise<{ success: boolean, opportunities: Opportunity[], message?: string, error?: string }> {
120
- // try {
121
- // const endpoint = `/newHostPost/getAllOppTiles?status=${status}${limit ? ("&limit=" + limit) : ""}`;
122
- // const data: {
123
- // data: Opportunity[], message: string
124
- // } = await get(endpoint);
125
- // return {
126
- // success: true,
127
- // message: data.message,
128
- // opportunities: data.data,
129
- // }
130
- // } catch (error: any) {
131
- // console.error('Failed to fetch opportunities by status: ', error);
132
- // return {
133
- // success: false,
134
- // error: error.message,
135
- // opportunities: []
136
- // };
137
- // }
138
- // };
139
- // export async function approveOpportunity(formData: FormData, slug: string): Promise<{ success: boolean, slug?: string, message?: string, error?: string }> {
140
- // try {
141
- // const endpoint = `/admin/approve-post/${slug}`
142
- // const data: { message: string, data: string } = await patch(endpoint, formData);
143
- // return {
144
- // success: true,
145
- // slug: data.data,
146
- // message: data.message,
147
- // }
148
- // }
149
- // catch (error: any) {
150
- // console.error('Failed to save opportuntiy: ', error);
151
- // return {
152
- // success: false,
153
- // error: error.message,
154
- // };
155
- // }
156
- // }
157
- // blogs
158
- export async function relatedBlogTiles(slug, limit) {
159
- try {
160
- const endpoint = `/blog/getAllBlogTiles?status=posted${limit ? "&limit=" + (limit + 1) : ""}`;
161
- const data = await get(endpoint);
162
- console.log(data);
163
- return {
164
- success: true,
165
- message: data.message,
166
- tiles: data.data
167
- .filter((blog) => blog.slug != slug)
168
- .slice(0, limit)
169
- .map((blog) => ({
170
- slug: blog.slug || "",
171
- image: blog.blogImages?.[0] || "/images/placeholder.svg",
172
- title: blog.title || "",
173
- description: truncateText(blog.overview, 150),
174
- location: "",
175
- date: blog.createdAt,
176
- rating: blog.likes || 0,
177
- skills: [],
178
- className: "",
179
- host: blog.author
180
- ? {
181
- name: blog.author,
182
- image: blog.authorImage,
183
- }
184
- : null,
185
- isJob: false,
186
- })),
187
- };
188
- }
189
- catch (error) {
190
- console.error("Failed to fetch related blogs: ", error);
191
- return {
192
- success: false,
193
- error: error.message,
194
- tiles: [],
195
- };
196
- }
197
- }
198
- export async function blogsByUsername(username, role) {
199
- try {
200
- // pending and admin blogs
201
- const endpoint = `/blog/getBlogsByUsername/${role}/${username}`;
202
- const data = await get(endpoint);
203
- return {
204
- success: true,
205
- message: "fetch success",
206
- tiles: data.data.map((blog) => ({
207
- slug: blog.slug || "",
208
- image: blog.blogImages?.[0] || "/images/placeholder.svg",
209
- title: blog.title || "",
210
- description: truncateText(blog.overview, 150),
211
- location: "",
212
- date: blog.createdAt,
213
- rating: blog.likes || 0,
214
- skills: [],
215
- className: "",
216
- host: blog.author
217
- ? {
218
- name: blog.author,
219
- image: blog.authorImage,
220
- }
221
- : null,
222
- isJob: false,
223
- })),
224
- };
225
- }
226
- catch (error) {
227
- console.error("Failed to fetch blogs: ", error);
228
- return {
229
- success: false,
230
- error: error.message,
231
- tiles: [],
232
- };
233
- }
234
- }
235
- export async function getMyBlogs() {
236
- try {
237
- const endpoint = `/blog/getUserBlogs`;
238
- const data = await get(endpoint);
239
- return {
240
- success: true,
241
- message: "fetch success",
242
- blogs: data.data,
243
- };
244
- }
245
- catch (error) {
246
- console.error("Failed to fetch blogs: ", error);
247
- return {
248
- success: false,
249
- error: error.message,
250
- blogs: [],
251
- };
252
- }
253
- }
254
- export async function deleteBlog(slug) {
255
- try {
256
- const endpoint = `/blog/delete/${slug}`;
257
- const data = await del(endpoint);
258
- return {
259
- success: true,
260
- message: data.message,
261
- };
262
- }
263
- catch (error) {
264
- console.error("Failed to delete blog: ", error);
265
- return {
266
- success: false,
267
- error: error.message,
268
- };
269
- }
270
- }
271
- // all opportunities (may not be required or may delete in future)
272
- // export async function getAllOpportunities(): Promise<{ success: boolean, opportunities: Opportunity[], message?: string, error?: string }> {
273
- // try {
274
- // const res = await fetch('/sample/opportunity.json');
275
- // const opportunities = await res.json() as Opportunity[];
276
- // return {
277
- // success: true,
278
- // message: "fetch success",
279
- // opportunities: opportunities,
280
- // }
281
- // } catch (error: any) {
282
- // console.error('Failed to fetch all oppotunities: ', error);
283
- // return {
284
- // success: false,
285
- // error: error.message,
286
- // opportunities: []
287
- // };
288
- // }
289
- // };
290
- // for admin dashboard
291
- // export async function getOpportunitiesByStatus(status: string[], limit?: number): Promise<{ success: boolean, opportunities: Opportunity[], message?: string, error?: string }> {
292
- // try {
293
- // const endpoint = `/newHostPost/getAllOppTiles?status=${status}${limit ? ("&limit=" + limit) : ""}`;
294
- // const data: {
295
- // data: Opportunity[], message: string
296
- // } = await get(endpoint);
297
- // return {
298
- // success: true,
299
- // message: data.message,
300
- // opportunities: data.data,
301
- // }
302
- // } catch (error: any) {
303
- // console.error('Failed to fetch opportunities by status: ', error);
304
- // return {
305
- // success: false,
306
- // error: error.message,
307
- // opportunities: []
308
- // };
309
- // }
310
- // };
311
- // export async function approveOpportunity(formData: FormData, slug: string): Promise<{ success: boolean, slug?: string, message?: string, error?: string }> {
312
- // try {
313
- // const endpoint = `/admin/approve-post/${slug}`
314
- // const data: { message: string, data: string } = await patch(endpoint, formData);
315
- // return {
316
- // success: true,
317
- // slug: data.data,
318
- // message: data.message,
319
- // }
320
- // }
321
- // catch (error: any) {
322
- // console.error('Failed to save opportuntiy: ', error);
323
- // return {
324
- // success: false,
325
- // error: error.message,
326
- // };
327
- // }
328
- // }
329
- // blogs
330
- // may not be needed
331
- // export async function getAllBlogs(): Promise<{ success: boolean, blogs: Blog[], message?: string, error?: string }> {
332
- // try {
333
- // const res = await fetch('/sample/blogs.json');
334
- // const blogs = await res.json() as Blog[];
335
- // return {
336
- // success: true,
337
- // message: "fetch success",
338
- // blogs: blogs,
339
- // };
340
- // } catch (error: any) {
341
- // console.error('Failed to fetch blogs: ', error);
342
- // return {
343
- // success: false,
344
- // error: error.message,
345
- // blogs: [],
346
- // };
347
- // }
348
- // }
349
- // for admin dashboard
350
- export async function blogDetails(id) {
351
- try {
352
- const endpoint = `/blog/getBlogBySlug/${id}`;
353
- const data = await get(endpoint);
354
- return {
355
- success: true,
356
- message: "fetch success",
357
- blog: data.blog,
358
- };
359
- }
360
- catch (error) {
361
- console.error("Failed to fetch blogs: ", error);
362
- return {
363
- success: false,
364
- error: error.message,
365
- blog: null,
366
- };
367
- }
368
- }
369
- // all opportunities (may not be required or may delete in future)
370
- // export async function getAllOpportunities(): Promise<{ success: boolean, opportunities: Opportunity[], message?: string, error?: string }> {
371
- // try {
372
- // const res = await fetch('/sample/opportunity.json');
373
- // const opportunities = await res.json() as Opportunity[];
374
- // return {
375
- // success: true,
376
- // message: "fetch success",
377
- // opportunities: opportunities,
378
- // }
379
- // } catch (error: any) {
380
- // console.error('Failed to fetch all oppotunities: ', error);
381
- // return {
382
- // success: false,
383
- // error: error.message,
384
- // opportunities: []
385
- // };
386
- // }
387
- // };
388
- // for admin dashboard
389
- // export async function getOpportunitiesByStatus(status: string[], limit?: number): Promise<{ success: boolean, opportunities: Opportunity[], message?: string, error?: string }> {
390
- // try {
391
- // const endpoint = `/newHostPost/getAllOppTiles?status=${status}${limit ? ("&limit=" + limit) : ""}`;
392
- // const data: {
393
- // data: Opportunity[], message: string
394
- // } = await get(endpoint);
395
- // return {
396
- // success: true,
397
- // message: data.message,
398
- // opportunities: data.data,
399
- // }
400
- // } catch (error: any) {
401
- // console.error('Failed to fetch opportunities by status: ', error);
402
- // return {
403
- // success: false,
404
- // error: error.message,
405
- // opportunities: []
406
- // };
407
- // }
408
- // };
409
- // export async function approveOpportunity(formData: FormData, slug: string): Promise<{ success: boolean, slug?: string, message?: string, error?: string }> {
410
- // try {
411
- // const endpoint = `/admin/approve-post/${slug}`
412
- // const data: { message: string, data: string } = await patch(endpoint, formData);
413
- // return {
414
- // success: true,
415
- // slug: data.data,
416
- // message: data.message,
417
- // }
418
- // }
419
- // catch (error: any) {
420
- // console.error('Failed to save opportuntiy: ', error);
421
- // return {
422
- // success: false,
423
- // error: error.message,
424
- // };
425
- // }
426
- // }
427
- // blogs
428
- // may not be needed
429
- // export async function getAllBlogs(): Promise<{ success: boolean, blogs: Blog[], message?: string, error?: string }> {
430
- // try {
431
- // const res = await fetch('/sample/blogs.json');
432
- // const blogs = await res.json() as Blog[];
433
- // return {
434
- // success: true,
435
- // message: "fetch success",
436
- // blogs: blogs,
437
- // };
438
- // } catch (error: any) {
439
- // console.error('Failed to fetch blogs: ', error);
440
- // return {
441
- // success: false,
442
- // error: error.message,
443
- // blogs: [],
444
- // };
445
- // }
446
- // }
447
- // for admin dashboard
448
- export async function blogMetaData(slug) {
449
- try {
450
- const endpoint = `/blog/getBlogMetaData/${slug}`;
451
- const data = await get(endpoint);
452
- const blog = data.data;
453
- return {
454
- success: true,
455
- message: data.message,
456
- metadata: {
457
- image: blog.blogImages?.[0] || "/images/placeholder.svg",
458
- title: blog.title || "Trippeaze Blog",
459
- overview: blog.overview ||
460
- "Volunteer travel exchange platform - connect with global hosts and opportunities.",
461
- },
462
- };
463
- }
464
- catch (error) {
465
- console.error("Failed to add oppotunities by status: ", error);
466
- return {
467
- success: false,
468
- error: error.message,
469
- metadata: null,
470
- };
471
- }
472
- }
473
- // all opportunities (may not be required or may delete in future)
474
- // export async function getAllOpportunities(): Promise<{ success: boolean, opportunities: Opportunity[], message?: string, error?: string }> {
475
- // try {
476
- // const res = await fetch('/sample/opportunity.json');
477
- // const opportunities = await res.json() as Opportunity[];
478
- // return {
479
- // success: true,
480
- // message: "fetch success",
481
- // opportunities: opportunities,
482
- // }
483
- // } catch (error: any) {
484
- // console.error('Failed to fetch all oppotunities: ', error);
485
- // return {
486
- // success: false,
487
- // error: error.message,
488
- // opportunities: []
489
- // };
490
- // }
491
- // };
492
- // for admin dashboard
493
- // export async function getOpportunitiesByStatus(status: string[], limit?: number): Promise<{ success: boolean, opportunities: Opportunity[], message?: string, error?: string }> {
494
- // try {
495
- // const endpoint = `/newHostPost/getAllOppTiles?status=${status}${limit ? ("&limit=" + limit) : ""}`;
496
- // const data: {
497
- // data: Opportunity[], message: string
498
- // } = await get(endpoint);
499
- // return {
500
- // success: true,
501
- // message: data.message,
502
- // opportunities: data.data,
503
- // }
504
- // } catch (error: any) {
505
- // console.error('Failed to fetch opportunities by status: ', error);
506
- // return {
507
- // success: false,
508
- // error: error.message,
509
- // opportunities: []
510
- // };
511
- // }
512
- // };
513
- // export async function approveOpportunity(formData: FormData, slug: string): Promise<{ success: boolean, slug?: string, message?: string, error?: string }> {
514
- // try {
515
- // const endpoint = `/admin/approve-post/${slug}`
516
- // const data: { message: string, data: string } = await patch(endpoint, formData);
517
- // return {
518
- // success: true,
519
- // slug: data.data,
520
- // message: data.message,
521
- // }
522
- // }
523
- // catch (error: any) {
524
- // console.error('Failed to save opportuntiy: ', error);
525
- // return {
526
- // success: false,
527
- // error: error.message,
528
- // };
529
- // }
530
- // }
531
- // blogs
532
- // may not be needed
533
- // export async function getAllBlogs(): Promise<{ success: boolean, blogs: Blog[], message?: string, error?: string }> {
534
- // try {
535
- // const res = await fetch('/sample/blogs.json');
536
- // const blogs = await res.json() as Blog[];
537
- // return {
538
- // success: true,
539
- // message: "fetch success",
540
- // blogs: blogs,
541
- // };
542
- // } catch (error: any) {
543
- // console.error('Failed to fetch blogs: ', error);
544
- // return {
545
- // success: false,
546
- // error: error.message,
547
- // blogs: [],
548
- // };
549
- // }
550
- // }
551
- // for admin dashboard
552
- export async function createBlog(formData) {
553
- try {
554
- const endpoint = `/blog/create`;
555
- const data = await post(endpoint, formData);
556
- return {
557
- success: true,
558
- slug: data.data,
559
- message: data.message,
560
- };
561
- }
562
- catch (error) {
563
- console.error("Failed to save blog: ", error);
564
- return {
565
- success: false,
566
- error: error.message,
567
- };
568
- }
569
- }
570
- // all opportunities (may not be required or may delete in future)
571
- // export async function getAllOpportunities(): Promise<{ success: boolean, opportunities: Opportunity[], message?: string, error?: string }> {
572
- // try {
573
- // const res = await fetch('/sample/opportunity.json');
574
- // const opportunities = await res.json() as Opportunity[];
575
- // return {
576
- // success: true,
577
- // message: "fetch success",
578
- // opportunities: opportunities,
579
- // }
580
- // } catch (error: any) {
581
- // console.error('Failed to fetch all oppotunities: ', error);
582
- // return {
583
- // success: false,
584
- // error: error.message,
585
- // opportunities: []
586
- // };
587
- // }
588
- // };
589
- // for admin dashboard
590
- // export async function getOpportunitiesByStatus(status: string[], limit?: number): Promise<{ success: boolean, opportunities: Opportunity[], message?: string, error?: string }> {
591
- // try {
592
- // const endpoint = `/newHostPost/getAllOppTiles?status=${status}${limit ? ("&limit=" + limit) : ""}`;
593
- // const data: {
594
- // data: Opportunity[], message: string
595
- // } = await get(endpoint);
596
- // return {
597
- // success: true,
598
- // message: data.message,
599
- // opportunities: data.data,
600
- // }
601
- // } catch (error: any) {
602
- // console.error('Failed to fetch opportunities by status: ', error);
603
- // return {
604
- // success: false,
605
- // error: error.message,
606
- // opportunities: []
607
- // };
608
- // }
609
- // };
610
- // export async function approveOpportunity(formData: FormData, slug: string): Promise<{ success: boolean, slug?: string, message?: string, error?: string }> {
611
- // try {
612
- // const endpoint = `/admin/approve-post/${slug}`
613
- // const data: { message: string, data: string } = await patch(endpoint, formData);
614
- // return {
615
- // success: true,
616
- // slug: data.data,
617
- // message: data.message,
618
- // }
619
- // }
620
- // catch (error: any) {
621
- // console.error('Failed to save opportuntiy: ', error);
622
- // return {
623
- // success: false,
624
- // error: error.message,
625
- // };
626
- // }
627
- // }
628
- // blogs
629
- // may not be needed
630
- // export async function getAllBlogs(): Promise<{ success: boolean, blogs: Blog[], message?: string, error?: string }> {
631
- // try {
632
- // const res = await fetch('/sample/blogs.json');
633
- // const blogs = await res.json() as Blog[];
634
- // return {
635
- // success: true,
636
- // message: "fetch success",
637
- // blogs: blogs,
638
- // };
639
- // } catch (error: any) {
640
- // console.error('Failed to fetch blogs: ', error);
641
- // return {
642
- // success: false,
643
- // error: error.message,
644
- // blogs: [],
645
- // };
646
- // }
647
- // }
648
- // for admin dashboard
649
- export async function editBlog(formData, slug) {
650
- try {
651
- const endpoint = `/blog/update/${slug}`;
652
- const data = await patch(endpoint, formData);
653
- return {
654
- success: true,
655
- slug: data.data,
656
- message: data.message,
657
- };
658
- }
659
- catch (error) {
660
- console.error("Failed to save blog: ", error);
661
- return {
662
- success: false,
663
- error: error.message,
664
- };
665
- }
666
- }
667
- // all opportunities (may not be required or may delete in future)
668
- // export async function getAllOpportunities(): Promise<{ success: boolean, opportunities: Opportunity[], message?: string, error?: string }> {
669
- // try {
670
- // const res = await fetch('/sample/opportunity.json');
671
- // const opportunities = await res.json() as Opportunity[];
672
- // return {
673
- // success: true,
674
- // message: "fetch success",
675
- // opportunities: opportunities,
676
- // }
677
- // } catch (error: any) {
678
- // console.error('Failed to fetch all oppotunities: ', error);
679
- // return {
680
- // success: false,
681
- // error: error.message,
682
- // opportunities: []
683
- // };
684
- // }
685
- // };
686
- // for admin dashboard
687
- // export async function getOpportunitiesByStatus(status: string[], limit?: number): Promise<{ success: boolean, opportunities: Opportunity[], message?: string, error?: string }> {
688
- // try {
689
- // const endpoint = `/newHostPost/getAllOppTiles?status=${status}${limit ? ("&limit=" + limit) : ""}`;
690
- // const data: {
691
- // data: Opportunity[], message: string
692
- // } = await get(endpoint);
693
- // return {
694
- // success: true,
695
- // message: data.message,
696
- // opportunities: data.data,
697
- // }
698
- // } catch (error: any) {
699
- // console.error('Failed to fetch opportunities by status: ', error);
700
- // return {
701
- // success: false,
702
- // error: error.message,
703
- // opportunities: []
704
- // };
705
- // }
706
- // };
707
- // export async function approveOpportunity(formData: FormData, slug: string): Promise<{ success: boolean, slug?: string, message?: string, error?: string }> {
708
- // try {
709
- // const endpoint = `/admin/approve-post/${slug}`
710
- // const data: { message: string, data: string } = await patch(endpoint, formData);
711
- // return {
712
- // success: true,
713
- // slug: data.data,
714
- // message: data.message,
715
- // }
716
- // }
717
- // catch (error: any) {
718
- // console.error('Failed to save opportuntiy: ', error);
719
- // return {
720
- // success: false,
721
- // error: error.message,
722
- // };
723
- // }
724
- // }
725
- // blogs
726
- // may not be needed
727
- // export async function getAllBlogs(): Promise<{ success: boolean, blogs: Blog[], message?: string, error?: string }> {
728
- // try {
729
- // const res = await fetch('/sample/blogs.json');
730
- // const blogs = await res.json() as Blog[];
731
- // return {
732
- // success: true,
733
- // message: "fetch success",
734
- // blogs: blogs,
735
- // };
736
- // } catch (error: any) {
737
- // console.error('Failed to fetch blogs: ', error);
738
- // return {
739
- // success: false,
740
- // error: error.message,
741
- // blogs: [],
742
- // };
743
- // }
744
- // }
745
- // for admin dashboard
746
- export async function toogleBlogLike(slug) {
747
- try {
748
- const endpoint = `/blog/${slug}/toogleLike`;
749
- const data = await get(endpoint);
750
- return {
751
- success: true,
752
- message: data.message,
753
- };
754
- }
755
- catch (error) {
756
- console.error(error);
757
- return {
758
- success: false,
759
- error: error,
760
- };
761
- }
762
- }