@myrjfa/state 3.0.6 → 3.0.8

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 (73) hide show
  1. package/dist/lib/actions/adminDashboard.d.ts.map +1 -1
  2. package/dist/lib/actions/adminDashboard.js +2 -1
  3. package/dist/lib/actions/adventure.d.ts.map +1 -1
  4. package/dist/lib/actions/adventure.js +3 -2
  5. package/dist/lib/actions/application.d.ts.map +1 -1
  6. package/dist/lib/actions/application.js +3 -2
  7. package/dist/lib/actions/blog.d.ts.map +1 -1
  8. package/dist/lib/actions/blog.js +3 -2
  9. package/dist/lib/actions/community.d.ts +5 -2
  10. package/dist/lib/actions/community.d.ts.map +1 -1
  11. package/dist/lib/actions/community.js +10 -3
  12. package/dist/lib/actions/companion.d.ts +14 -8
  13. package/dist/lib/actions/companion.d.ts.map +1 -1
  14. package/dist/lib/actions/companion.js +16 -11
  15. package/dist/lib/actions/companionUpload.d.ts +10 -0
  16. package/dist/lib/actions/companionUpload.d.ts.map +1 -0
  17. package/dist/lib/actions/companionUpload.js +13 -0
  18. package/dist/lib/actions/event.d.ts.map +1 -1
  19. package/dist/lib/actions/event.js +3 -2
  20. package/dist/lib/actions/fetcher.d.ts +2 -2
  21. package/dist/lib/actions/fetcher.d.ts.map +1 -1
  22. package/dist/lib/actions/fetcher.js +4 -4
  23. package/dist/lib/actions/guide.d.ts.map +1 -1
  24. package/dist/lib/actions/guide.js +3 -2
  25. package/dist/lib/actions/notification.d.ts +52 -0
  26. package/dist/lib/actions/notification.d.ts.map +1 -1
  27. package/dist/lib/actions/notification.js +13 -1
  28. package/dist/lib/actions/opportunity.d.ts.map +1 -1
  29. package/dist/lib/actions/opportunity.js +3 -2
  30. package/dist/lib/actions/package.d.ts.map +1 -1
  31. package/dist/lib/actions/package.js +6 -5
  32. package/dist/lib/actions/portfolio.d.ts.map +1 -1
  33. package/dist/lib/actions/portfolio.js +2 -1
  34. package/dist/lib/actions/profile.d.ts.map +1 -1
  35. package/dist/lib/actions/profile.js +3 -2
  36. package/dist/lib/actions/rental.d.ts.map +1 -1
  37. package/dist/lib/actions/rental.js +3 -2
  38. package/dist/lib/actions/review.d.ts.map +1 -1
  39. package/dist/lib/actions/review.js +3 -2
  40. package/dist/lib/actions/room.d.ts +0 -4
  41. package/dist/lib/actions/room.d.ts.map +1 -1
  42. package/dist/lib/actions/room.js +3 -2
  43. package/dist/lib/actions/socialAutomation.d.ts.map +1 -1
  44. package/dist/lib/actions/socialAutomation.js +3 -2
  45. package/dist/lib/actions/stay.d.ts.map +1 -1
  46. package/dist/lib/actions/stay.js +3 -2
  47. package/dist/lib/companion/discoveryPrefill.d.ts +17 -0
  48. package/dist/lib/companion/discoveryPrefill.d.ts.map +1 -1
  49. package/dist/lib/companion/discoveryPrefill.js +20 -0
  50. package/dist/lib/context/ChatContext.d.ts.map +1 -1
  51. package/dist/lib/context/ChatContext.js +59 -51
  52. package/dist/lib/hooks/useSubmissionGuard.d.ts +2 -0
  53. package/dist/lib/hooks/useSubmissionGuard.d.ts.map +1 -0
  54. package/dist/lib/hooks/useSubmissionGuard.js +12 -0
  55. package/dist/lib/hooks/useUploadTasks.d.ts +7 -0
  56. package/dist/lib/hooks/useUploadTasks.d.ts.map +1 -0
  57. package/dist/lib/hooks/useUploadTasks.js +11 -0
  58. package/dist/lib/models/blog.d.ts +2 -2
  59. package/dist/lib/models/community.d.ts +28 -0
  60. package/dist/lib/models/community.d.ts.map +1 -1
  61. package/dist/lib/models/companion.d.ts +4 -0
  62. package/dist/lib/models/companion.d.ts.map +1 -1
  63. package/dist/lib/models/discount.d.ts +12 -12
  64. package/dist/lib/models/notifications.d.ts +28 -0
  65. package/dist/lib/models/notifications.d.ts.map +1 -1
  66. package/dist/lib/models/notifications.js +6 -0
  67. package/dist/lib/utils/text.d.ts +2 -0
  68. package/dist/lib/utils/text.d.ts.map +1 -1
  69. package/dist/lib/utils/text.js +13 -0
  70. package/dist/lib/utils/uploadTasks.d.ts +76 -0
  71. package/dist/lib/utils/uploadTasks.d.ts.map +1 -0
  72. package/dist/lib/utils/uploadTasks.js +94 -0
  73. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"opportunity.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/opportunity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"opportunity.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/opportunity.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { runUploadTask } from "../utils/uploadTasks";
1
2
  import { del, get, patch, post } from "./fetcher";
2
3
  import { convertOpportunityToTileProps } from "../utils/entityTiles";
3
4
  export async function getOpportunityTilesByStatus(status, limit) {
@@ -147,7 +148,7 @@ export async function opportunityMetaData(slug) {
147
148
  export async function createOpportunity(formData) {
148
149
  try {
149
150
  const endpoint = `/newHostPost/create`;
150
- const data = await post(endpoint, formData);
151
+ const data = await runUploadTask({ title: 'Opportunity listing', retrySafe: false, href: "/dashboard/host/opportunities", body: formData, operation: ({ progress }) => post(endpoint, formData, true, { onUploadProgress: progress }) });
151
152
  return {
152
153
  success: true,
153
154
  slug: data.data,
@@ -165,7 +166,7 @@ export async function createOpportunity(formData) {
165
166
  export async function editOpportunity(formData, slug) {
166
167
  try {
167
168
  const endpoint = `/newHostPost/update/${slug}`;
168
- const data = await patch(endpoint, formData);
169
+ const data = await runUploadTask({ title: 'Opportunity listing', retrySafe: false, href: "/dashboard/host/opportunities", body: formData, operation: ({ progress }) => patch(endpoint, formData, { onUploadProgress: progress }) });
169
170
  return {
170
171
  success: true,
171
172
  slug: data.data,
@@ -1 +1 @@
1
- {"version":3,"file":"package.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/package.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"package.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/package.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { runUploadTask } from "../utils/uploadTasks";
1
2
  import { get, patch, post, del } from "./fetcher";
2
3
  import { calculatePricingStrategyDisplayUnitPrice, getPricingCurrency, getPricingStrategies } from "../models/pricing";
3
4
  import { convertTravelPackageToTileProps } from "../utils/entityTiles";
@@ -159,7 +160,7 @@ export async function packagesByHost() {
159
160
  }
160
161
  export async function createPackage(formData) {
161
162
  try {
162
- const data = await post("/packages/create", formData);
163
+ const data = await runUploadTask({ title: 'Package', retrySafe: false, href: "/dashboard/host/packages", body: formData, operation: ({ progress }) => post("/packages/create", formData, true, { onUploadProgress: progress }) });
163
164
  return {
164
165
  success: true,
165
166
  slug: extractPackageSlug(data.data),
@@ -179,7 +180,7 @@ export async function extractPackageFromPdf(file) {
179
180
  try {
180
181
  const formData = new FormData();
181
182
  formData.append("packagePdf", file);
182
- const response = await post("/packages/source-pdfs/extract", formData);
183
+ const response = await runUploadTask({ title: 'Package PDF import', recoveryKey: 'package-pdf', retrySafe: true, href: typeof window === 'undefined' ? undefined : window.location.pathname, body: formData, operation: ({ progress }) => post("/packages/source-pdfs/extract", formData, true, { onUploadProgress: progress }) });
183
184
  return {
184
185
  success: true,
185
186
  data: response.data,
@@ -196,7 +197,7 @@ export async function extractPackageFromPdf(file) {
196
197
  }
197
198
  export async function editPackage(formData, slug) {
198
199
  try {
199
- const data = await patch(`/packages/update/${slug}`, formData);
200
+ const data = await runUploadTask({ title: 'Package', retrySafe: false, href: "/dashboard/host/packages", body: formData, operation: ({ progress }) => patch(`/packages/update/${slug}`, formData, { onUploadProgress: progress }) });
200
201
  return {
201
202
  success: true,
202
203
  slug: extractPackageSlug(data.data) || slug,
@@ -246,7 +247,7 @@ export async function getEnquiriesForPackage(slug) {
246
247
  }
247
248
  export async function savePackageEnquiry(formData) {
248
249
  try {
249
- const data = await post("/enquiries/enquireForPackage", formData);
250
+ const data = await runUploadTask({ title: 'Package', retrySafe: false, href: "/dashboard/host/packages", body: formData, operation: ({ progress }) => post("/enquiries/enquireForPackage", formData, true, { onUploadProgress: progress }) });
250
251
  return { success: true, message: data.message };
251
252
  }
252
253
  catch (error) {
@@ -264,7 +265,7 @@ export async function updateEnquiryStatus(status, id) {
264
265
  }
265
266
  export async function editPackageEnquiry(formData, id) {
266
267
  try {
267
- const data = await patch(`/enquiries/updateEnquiry/${id}`, formData);
268
+ const data = await runUploadTask({ title: 'Package', retrySafe: false, href: "/dashboard/host/packages", body: formData, operation: ({ progress }) => patch(`/enquiries/updateEnquiry/${id}`, formData, { onUploadProgress: progress }) });
268
269
  return { success: true, message: data.message };
269
270
  }
270
271
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"portfolio.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/portfolio.ts"],"names":[],"mappings":"AAMA,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;GAYhD;AACD,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ;;;;;;;;;;;;;;;;;;;;;;;GAYxD;AAED,wBAAsB,mBAAmB,CAAC,EAAE,EAAE,MAAM;;;;;;;;GAenD"}
1
+ {"version":3,"file":"portfolio.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/portfolio.ts"],"names":[],"mappings":"AAOA,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;GAYhD;AACD,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ;;;;;;;;;;;;;;;;;;;;;;;GAYxD;AAED,wBAAsB,mBAAmB,CAAC,EAAE,EAAE,MAAM;;;;;;;;GAenD"}
@@ -1,3 +1,4 @@
1
+ import { runUploadTask } from "../utils/uploadTasks";
1
2
  import { del, get, post } from "./fetcher";
2
3
  // volunteer specific
3
4
  // portfolio
@@ -18,7 +19,7 @@ export async function getUserPortfolio(id) {
18
19
  export async function addPortfolioItem(formData) {
19
20
  try {
20
21
  const endpoint = "/portfolio/add";
21
- const data = await post(endpoint, formData);
22
+ const data = await runUploadTask({ title: 'Portfolio', retrySafe: false, href: typeof window === "undefined" ? undefined : window.location.pathname, operation: ({ progress }) => post(endpoint, formData, true, { onUploadProgress: progress }) });
22
23
  return { success: true, message: data.message, portfolio: data.data };
23
24
  }
24
25
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/profile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAGlE,wBAAsB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;;;;;;;;GAYhG;AACD,wBAAsB,cAAc,CAClC,IAAI,EAAE,QAAQ,GAAG,MAAM,EACvB,QAAQ,EAAE,QAAQ,EAClB,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,GAChC,OAAO,CAAC;IACT,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;CACnB,CAAC,CAYD;AAED,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,kBAAkB,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAY3J;AAED,wBAAsB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC7E,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,GAAG,CAAA;CAChE,CAAC,CAkBD;AAGD,wBAAsB,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC;IACxD,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;CACnB,CAAC,CAiBD"}
1
+ {"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/profile.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAGlE,wBAAsB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;;;;;;;;GAYhG;AACD,wBAAsB,cAAc,CAClC,IAAI,EAAE,QAAQ,GAAG,MAAM,EACvB,QAAQ,EAAE,QAAQ,EAClB,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,GAChC,OAAO,CAAC;IACT,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;CACnB,CAAC,CASD;AAED,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,kBAAkB,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAY3J;AAED,wBAAsB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC7E,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,GAAG,CAAA;CAChE,CAAC,CAkBD;AAGD,wBAAsB,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC;IACxD,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;CACnB,CAAC,CAgBD"}
@@ -1,3 +1,4 @@
1
+ import { runUploadTask } from "../utils/uploadTasks";
1
2
  import { get, patch } from "./fetcher";
2
3
  export async function updateUserSkillExpertise(username, skill, expertise) {
3
4
  try {
@@ -17,7 +18,7 @@ export async function updateUserData(role, formData, baseAccountType) {
17
18
  try {
18
19
  const accountType = baseAccountType || (role === "host" ? "host" : "user");
19
20
  const endpoint = accountType === "host" ? "/hosts/update" : "/users/update";
20
- const data = await patch(endpoint, formData);
21
+ const data = await runUploadTask({ title: "Profile upload", retrySafe: false, href: typeof window === "undefined" ? undefined : window.location.pathname, body: formData, operation: ({ progress }) => patch(endpoint, formData, { onUploadProgress: progress }) });
21
22
  return { success: true, user: data.data, message: data.message };
22
23
  }
23
24
  catch (error) {
@@ -63,7 +64,7 @@ export async function saveUserResume(file) {
63
64
  const endpoint = `/users/resume-update`;
64
65
  const formData = new FormData();
65
66
  formData.append("resume", file);
66
- const data = await patch(endpoint, formData);
67
+ const data = await runUploadTask({ title: 'Profile', retrySafe: true, href: typeof window === "undefined" ? undefined : window.location.pathname, operation: ({ progress }) => patch(endpoint, formData, { onUploadProgress: progress }) });
67
68
  return {
68
69
  success: true,
69
70
  message: data.message,
@@ -1 +1 @@
1
- {"version":3,"file":"rental.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/rental.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rental.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/rental.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { runUploadTask } from "../utils/uploadTasks";
1
2
  import { get, patch, post, del } from "./fetcher";
2
3
  import { calculatePricingStrategyDisplayUnitPrice, getPricingStrategies, getPricingCurrency } from "../models/pricing";
3
4
  // ─── Public ───────────────────────────────────────────────────────────────────
@@ -91,7 +92,7 @@ export async function rentalsByHost() {
91
92
  }
92
93
  export async function createRental(formData) {
93
94
  try {
94
- const data = await post(`/rentals/create`, formData);
95
+ const data = await runUploadTask({ title: 'Rental listing', retrySafe: false, href: "/dashboard/host/rentals", body: formData, operation: ({ progress }) => post(`/rentals/create`, formData, true, { onUploadProgress: progress }) });
95
96
  return { success: true, slug: data.data.slug, message: data.message };
96
97
  }
97
98
  catch (error) {
@@ -101,7 +102,7 @@ export async function createRental(formData) {
101
102
  }
102
103
  export async function editRental(formData, slug) {
103
104
  try {
104
- const data = await patch(`/rentals/update/${slug}`, formData);
105
+ const data = await runUploadTask({ title: 'Rental listing', retrySafe: false, href: "/dashboard/host/rentals", body: formData, operation: ({ progress }) => patch(`/rentals/update/${slug}`, formData, { onUploadProgress: progress }) });
105
106
  return { success: true, slug: data.data.slug, message: data.message };
106
107
  }
107
108
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"review.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/review.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,MAAM,EACN,cAAc,EACd,gBAAgB,EACnB,MAAM,kBAAkB,CAAC;AAG1B,wBAAsB,cAAc,CAChC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,gBAAgB,EACtB,OAAO,GAAE;IACL,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACd,GACP,OAAO,CAAC;IACP,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC,CA4BD;AAED,wBAAsB,aAAa,CAC/B,GAAG,EAAE,MAAM,EAAE,EACb,IAAI,EAAE,gBAAgB,GACvB,OAAO,CAAC;IACP,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACzF,CAAC,CAcD;AAED,wBAAsB,SAAS,CAC3B,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,gBAAgB,EACtB,QAAQ,EAAE,cAAc,GACzB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAyBxF;AAED,wBAAsB,UAAU,CAC5B,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,cAAc,GACzB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAqBxF;AAED,wBAAsB,YAAY,CAC9B,EAAE,EAAE,MAAM,GACX,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAQjE"}
1
+ {"version":3,"file":"review.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/review.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,MAAM,EACN,cAAc,EACd,gBAAgB,EACnB,MAAM,kBAAkB,CAAC;AAI1B,wBAAsB,cAAc,CAChC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,gBAAgB,EACtB,OAAO,GAAE;IACL,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACd,GACP,OAAO,CAAC;IACP,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC,CA4BD;AAED,wBAAsB,aAAa,CAC/B,GAAG,EAAE,MAAM,EAAE,EACb,IAAI,EAAE,gBAAgB,GACvB,OAAO,CAAC;IACP,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACzF,CAAC,CAcD;AAED,wBAAsB,SAAS,CAC3B,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,gBAAgB,EACtB,QAAQ,EAAE,cAAc,GACzB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAyBxF;AAED,wBAAsB,UAAU,CAC5B,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,cAAc,GACzB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAkBxF;AAED,wBAAsB,YAAY,CAC9B,EAAE,EAAE,MAAM,GACX,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAQjE"}
@@ -1,4 +1,5 @@
1
1
  import { del, get, patch, post } from "./fetcher";
2
+ import { runUploadTask } from "../utils/uploadTasks";
2
3
  export async function getReviewsById(id, type, options = {}) {
3
4
  try {
4
5
  const { page = 1, limit = 5, sortBy = "createdAt", sortOrder = "desc", rating } = options;
@@ -60,7 +61,7 @@ export async function addReview(id, type, formData) {
60
61
  comment: formData.comment,
61
62
  };
62
63
  }
63
- const data = await post("/reviews/", body);
64
+ const data = await runUploadTask({ title: "Review", href: typeof window === "undefined" ? undefined : window.location.pathname, operation: ({ progress }) => post("/reviews/", body, true, { onUploadProgress: progress }) });
64
65
  return { success: true, review: data.data, message: data.message };
65
66
  }
66
67
  catch (error) {
@@ -81,7 +82,7 @@ export async function editReview(id, formData) {
81
82
  else {
82
83
  body = { rating: formData.rating, comment: formData.comment };
83
84
  }
84
- const data = await patch(`/reviews/${encodeURIComponent(id)}`, body);
85
+ const data = await runUploadTask({ title: "Review update", href: typeof window === "undefined" ? undefined : window.location.pathname, operation: ({ progress }) => patch(`/reviews/${encodeURIComponent(id)}`, body, { onUploadProgress: progress }) });
85
86
  return { success: true, review: data.data, message: data.message };
86
87
  }
87
88
  catch (error) {
@@ -1,7 +1,3 @@
1
- /**
2
- * Room Actions — CRUD operations for the Room entity
3
- * Rooms are linked to properties via propertyId
4
- */
5
1
  export declare function getRoomsByProperty(propertyId: string): Promise<{
6
2
  success: boolean;
7
3
  rooms: any[];
@@ -1 +1 @@
1
- {"version":3,"file":"room.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/room.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,GAAG,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAO7D;AAED,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,GAAG,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAO7D;AAID,wBAAsB,WAAW,CAC/B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,GAAG,GAAG,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAOjE;AAID,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,GAAG,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAO3D;AAID,wBAAsB,UAAU,CAC9B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,GAAG,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAU3D;AAID,wBAAsB,eAAe,CACnC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,GAAG,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAO3D;AAID,wBAAsB,UAAU,CAC9B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAO/C"}
1
+ {"version":3,"file":"room.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/room.ts"],"names":[],"mappings":"AAUA,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,GAAG,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAO7D;AAED,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,GAAG,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAO7D;AAID,wBAAsB,WAAW,CAC/B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,GAAG,GAAG,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAOjE;AAID,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,GAAG,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAO3D;AAID,wBAAsB,UAAU,CAC9B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,GAAG,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAS3D;AAID,wBAAsB,eAAe,CACnC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,GAAG,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAO3D;AAID,wBAAsB,UAAU,CAC9B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAO/C"}
@@ -1,3 +1,4 @@
1
+ import { runUploadTask } from "../utils/uploadTasks";
1
2
  /**
2
3
  * Room Actions — CRUD operations for the Room entity
3
4
  * Rooms are linked to properties via propertyId
@@ -35,7 +36,7 @@ export async function getRoomById(roomId) {
35
36
  // ─── Create room ─────────────────────────────────────────────────────────────
36
37
  export async function createRoom(formData) {
37
38
  try {
38
- const data = await post(`/rooms`, formData);
39
+ const data = await runUploadTask({ title: 'Room listing', retrySafe: false, href: "/dashboard/host/stays", body: formData, operation: ({ progress }) => post(`/rooms`, formData, true, { onUploadProgress: progress }) });
39
40
  return { success: true, room: data.data };
40
41
  }
41
42
  catch (err) {
@@ -45,7 +46,7 @@ export async function createRoom(formData) {
45
46
  // ─── Update room ─────────────────────────────────────────────────────────────
46
47
  export async function updateRoom(roomId, formData) {
47
48
  try {
48
- const data = await patch(`/rooms/${roomId}`, formData);
49
+ const data = await runUploadTask({ title: 'Room listing', retrySafe: false, href: "/dashboard/host/stays", body: formData, operation: ({ progress }) => patch(`/rooms/${roomId}`, formData, { onUploadProgress: progress }) });
49
50
  return { success: true, room: data.data };
50
51
  }
51
52
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"socialAutomation.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/socialAutomation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,aAAa,EAAE,eAAe,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAGzM,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAO/G,eAAO,MAAM,kBAAkB,8CAA+G,CAAC;AAC/I,eAAO,MAAM,mBAAmB,GAAI,aAAa,MAAM;sBAA8C,MAAM;GAAsG,CAAC;AAClN,eAAO,MAAM,sBAAsB,GAAI,OAAO,MAAM,EAAE,MAAM,MAAM,mFAAkK,CAAC;AACrO,eAAO,MAAM,uBAAuB,GAAI,IAAI,MAAM,mCAA2G,CAAC;AAC9J,eAAO,MAAM,gBAAgB,GAAI,OAAO,OAAO,CAAC,sBAAsB,CAAC,kDAA8H,CAAC;AACtM,eAAO,MAAM,yBAAyB,GAAI,OAAO;IAAE,IAAI,EAAE,WAAW,GAAG,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAAE,iDAAkI,CAAC;AACnS,eAAO,MAAM,iBAAiB,oDAAqI,CAAC;AACpK,eAAO,MAAM,iBAAiB,GAAI,OAAO,gBAAgB,yCAAyG,CAAC;AACnK,eAAO,MAAM,mBAAmB,GAAI,OAAO,gBAAgB,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,yCAAoH,CAAC;AAClP,eAAO,MAAM,iBAAiB,GAAI,IAAI,MAAM,EAAE,OAAO,OAAO,CAAC,gBAAgB,CAAC,yCAAgH,CAAC;AAC/L,eAAO,MAAM,oBAAoB,GAAI,IAAI,MAAM,yCAAuH,CAAC;AACvK,eAAO,MAAM,qBAAqB,GAAI,IAAI,MAAM,EAAE,cAAc,MAAM,yCAAuI,CAAC;AAC9M,eAAO,MAAM,oBAAoB,GAAI,IAAI,MAAM,yCAAuH,CAAC;AACvK,eAAO,MAAM,mBAAmB,GAAI,IAAI,MAAM,yCAAqH,CAAC;AACpK,eAAO,MAAM,wBAAwB,GAAI,IAAI,MAAM,EAAE,MAAM,MAAM,6CAA+H,CAAC;AACjM,eAAO,MAAM,iBAAiB,GAAI,IAAI,MAAM,EAAE,QAAQ,OAAO,6CAAyI,CAAC;AACvM,eAAO,MAAM,mBAAmB;YAAwC,MAAM;GAA6E,CAAC;AAC5J,eAAO,MAAM,kBAAkB,GAAI,OAAO,IAAI,EAAE,8CAAgN,CAAC"}
1
+ {"version":3,"file":"socialAutomation.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/socialAutomation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,aAAa,EAAE,eAAe,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAGzM,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAO/G,eAAO,MAAM,kBAAkB,8CAA+G,CAAC;AAC/I,eAAO,MAAM,mBAAmB,GAAI,aAAa,MAAM;sBAA8C,MAAM;GAAsG,CAAC;AAClN,eAAO,MAAM,sBAAsB,GAAI,OAAO,MAAM,EAAE,MAAM,MAAM,mFAAkK,CAAC;AACrO,eAAO,MAAM,uBAAuB,GAAI,IAAI,MAAM,mCAA2G,CAAC;AAC9J,eAAO,MAAM,gBAAgB,GAAI,OAAO,OAAO,CAAC,sBAAsB,CAAC,kDAA8H,CAAC;AACtM,eAAO,MAAM,yBAAyB,GAAI,OAAO;IAAE,IAAI,EAAE,WAAW,GAAG,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAAE,iDAAkI,CAAC;AACnS,eAAO,MAAM,iBAAiB,oDAAqI,CAAC;AACpK,eAAO,MAAM,iBAAiB,GAAI,OAAO,gBAAgB,yCAAyG,CAAC;AACnK,eAAO,MAAM,mBAAmB,GAAI,OAAO,gBAAgB,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,yCAAoH,CAAC;AAClP,eAAO,MAAM,iBAAiB,GAAI,IAAI,MAAM,EAAE,OAAO,OAAO,CAAC,gBAAgB,CAAC,yCAAgH,CAAC;AAC/L,eAAO,MAAM,oBAAoB,GAAI,IAAI,MAAM,yCAAuH,CAAC;AACvK,eAAO,MAAM,qBAAqB,GAAI,IAAI,MAAM,EAAE,cAAc,MAAM,yCAAuI,CAAC;AAC9M,eAAO,MAAM,oBAAoB,GAAI,IAAI,MAAM,yCAA+S,CAAC;AAC/V,eAAO,MAAM,mBAAmB,GAAI,IAAI,MAAM,yCAAqH,CAAC;AACpK,eAAO,MAAM,wBAAwB,GAAI,IAAI,MAAM,EAAE,MAAM,MAAM,6CAA+H,CAAC;AACjM,eAAO,MAAM,iBAAiB,GAAI,IAAI,MAAM,EAAE,QAAQ,OAAO,6CAAyI,CAAC;AACvM,eAAO,MAAM,mBAAmB;YAAwC,MAAM;GAA6E,CAAC;AAC5J,eAAO,MAAM,kBAAkB,GAAI,OAAO,IAAI,EAAE,8CAA4Y,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { del, get, patch, post } from "./fetcher";
2
+ import { runUploadTask } from "../utils/uploadTasks";
2
3
  const failure = (error, fallback) => ({ success: false, error: error?.message || fallback });
3
4
  const action = async (request, fallback) => {
4
5
  try {
@@ -21,9 +22,9 @@ export const generateSocialDraft = (input) => action(post("/social-automation/co
21
22
  export const updateSocialDraft = (id, input) => action(patch(`/social-automation/content/${id}`, input), "Unable to update draft");
22
23
  export const approveSocialContent = (id) => action(post(`/social-automation/content/${id}/approve`, {}), "Unable to approve content");
23
24
  export const scheduleSocialContent = (id, scheduledFor) => action(post(`/social-automation/content/${id}/schedule`, { scheduledFor }), "Unable to schedule content");
24
- export const publishSocialContent = (id) => action(post(`/social-automation/content/${id}/publish`, {}), "Unable to publish content");
25
+ export const publishSocialContent = (id) => action(runUploadTask({ title: "Social publication", completeLabel: "Publication request received", href: "/dashboard/host/social", operation: ({ submitting }) => { submitting(); return post(`/social-automation/content/${id}/publish`, {}); } }), "Unable to publish content");
25
26
  export const cancelSocialContent = (id) => action(post(`/social-automation/content/${id}/cancel`, {}), "Unable to cancel content");
26
27
  export const replyToSocialInteraction = (id, text) => action(post(`/social-automation/interactions/${id}/reply`, { text }), "Unable to send reply");
27
28
  export const setSocialTakeover = (id, active) => action(post(`/social-automation/interactions/${id}/takeover`, { active }), "Unable to update takeover");
28
29
  export const syncSocialAnalytics = () => action(post("/social-automation/analytics/sync", {}), "Unable to refresh analytics");
29
- export const uploadSocialAssets = (files) => { const body = new FormData(); files.forEach((file) => body.append("socialMedia", file)); return action(post("/social-automation/assets", body), "Unable to upload media"); };
30
+ export const uploadSocialAssets = (files) => { const body = new FormData(); files.forEach((file) => body.append("socialMedia", file)); return action(runUploadTask({ title: "Social media", recoveryKey: "social-assets", retrySafe: true, href: "/dashboard/host/social", operation: ({ progress }) => post("/social-automation/assets", body, true, { onUploadProgress: progress }) }), "Unable to upload media"); };
@@ -1 +1 @@
1
- {"version":3,"file":"stay.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/stay.ts"],"names":[],"mappings":"AAIA,wBAAsB,UAAU,CAAC,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,gBAQnE;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM;;;;;;;;GAOjD;AAID,wBAAsB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC;IACnE,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC,CAYD;AAED,wBAAsB,iBAAiB,CACrC,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAOjE;AAED,wBAAsB,iBAAiB,CACrC,EAAE,EAAE,MAAM,GACT,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAOjE;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC;IACjD,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,GAAG,EAAE,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC,CAOD;AAID,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM;;;;;;;;GAOjD;AAED,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;IACP,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;;;;;;;;GAWF;AAED,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE;IACP,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;;;;;;;;GAWF;AAED,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;;;;;;;;GAStE;AAID,wBAAsB,eAAe,IAAI,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,GAAG,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAOnG;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAO/G;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAOvI;AAED,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IACpE,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,GAAG,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC,CAOD"}
1
+ {"version":3,"file":"stay.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/stay.ts"],"names":[],"mappings":"AAKA,wBAAsB,UAAU,CAAC,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,gBAQnE;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM;;;;;;;;GAOjD;AAID,wBAAsB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC;IACnE,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC,CAYD;AAED,wBAAsB,iBAAiB,CACrC,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAOjE;AAED,wBAAsB,iBAAiB,CACrC,EAAE,EAAE,MAAM,GACT,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAOjE;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC;IACjD,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,GAAG,EAAE,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC,CAOD;AAID,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM;;;;;;;;GAOjD;AAED,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;IACP,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;;;;;;;;GAWF;AAED,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE;IACP,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;;;;;;;;GAWF;AAED,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;;;;;;;;GAStE;AAID,wBAAsB,eAAe,IAAI,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,GAAG,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAOnG;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAO/G;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAOvI;AAED,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IACpE,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,GAAG,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC,CAOD"}
@@ -1,3 +1,4 @@
1
+ import { runUploadTask } from "../utils/uploadTasks";
1
2
  import { get, post, patch, del } from "./fetcher";
2
3
  // ─── Public ───────────────────────────────────────────────────────────────────
3
4
  export async function fetchStays(params = {}) {
@@ -22,7 +23,7 @@ export async function fetchStayBySlug(slug) {
22
23
  // ─── Host Actions ─────────────────────────────────────────────────────────────
23
24
  export async function createStayListing(formData) {
24
25
  try {
25
- const data = await post(`/stays`, formData);
26
+ const data = await runUploadTask({ title: 'Stay listing', retrySafe: false, href: "/dashboard/host/stays", body: formData, operation: ({ progress }) => post(`/stays`, formData, true, { onUploadProgress: progress }) });
26
27
  return {
27
28
  success: true,
28
29
  slug: data.data?.slug,
@@ -36,7 +37,7 @@ export async function createStayListing(formData) {
36
37
  }
37
38
  export async function updateStayListing(id, formData) {
38
39
  try {
39
- const data = await patch(`/stays/${id}`, formData);
40
+ const data = await runUploadTask({ title: 'Stay listing', retrySafe: false, href: "/dashboard/host/stays", body: formData, operation: ({ progress }) => patch(`/stays/${id}`, formData, { onUploadProgress: progress }) });
40
41
  return { success: true, message: data.message };
41
42
  }
42
43
  catch (err) {
@@ -23,5 +23,22 @@ type SearchParamsReader = {
23
23
  };
24
24
  export declare function parseCompanionDiscoveryPrefill(params: SearchParamsReader, locations?: readonly CompanionDiscoveryLocation[]): CompanionDiscoveryPrefill;
25
25
  export declare function serializeCompanionDiscoveryPrefill(prefill: CompanionDiscoveryPrefill): URLSearchParams;
26
+ /** Shared Tune-deck preferences use the existing public travel-profile fields. */
27
+ export declare function companionPreferencesFromProfile(profile: any): CompanionDiscoveryPrefill;
28
+ export declare function companionPreferencesToProfile(preferences: CompanionDiscoveryPrefill): {
29
+ destinations: {
30
+ country: string;
31
+ state: string;
32
+ city: string;
33
+ fromDate: string | null;
34
+ toDate: string | null;
35
+ }[];
36
+ travelStyle: string | null;
37
+ budgetRange: {
38
+ min: number | null;
39
+ max: number | null;
40
+ };
41
+ interests: string[];
42
+ };
26
43
  export {};
27
44
  //# sourceMappingURL=discoveryPrefill.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"discoveryPrefill.d.ts","sourceRoot":"","sources":["../../../src/lib/companion/discoveryPrefill.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAAC;IAC9C,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC,CAAC;AAEH,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,KAAK,kBAAkB,GAAG;IAAE,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC;AA0B/D,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,kBAAkB,EAC1B,SAAS,GAAE,SAAS,0BAA0B,EAAO,GACpD,yBAAyB,CA2C3B;AAED,wBAAgB,kCAAkC,CAAC,OAAO,EAAE,yBAAyB,mBAOpF"}
1
+ {"version":3,"file":"discoveryPrefill.d.ts","sourceRoot":"","sources":["../../../src/lib/companion/discoveryPrefill.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAAC;IAC9C,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC,CAAC;AAEH,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,KAAK,kBAAkB,GAAG;IAAE,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC;AA0B/D,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,kBAAkB,EAC1B,SAAS,GAAE,SAAS,0BAA0B,EAAO,GACpD,yBAAyB,CA2C3B;AAED,wBAAgB,kCAAkC,CAAC,OAAO,EAAE,yBAAyB,mBAOpF;AAED,kFAAkF;AAClF,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,GAAG,GAAG,yBAAyB,CASvF;AAED,wBAAgB,6BAA6B,CAAC,WAAW,EAAE,yBAAyB;;;;;;;;;;;;;;EAQnF"}
@@ -78,3 +78,23 @@ export function serializeCompanionDiscoveryPrefill(prefill) {
78
78
  }
79
79
  return params;
80
80
  }
81
+ /** Shared Tune-deck preferences use the existing public travel-profile fields. */
82
+ export function companionPreferencesFromProfile(profile) {
83
+ const destination = profile?.destinations?.[0];
84
+ const number = (value) => value === null || value === undefined ? "" : String(value);
85
+ return {
86
+ country: destination?.country || "", state: destination?.state || "", city: destination?.city || "",
87
+ startDate: destination?.fromDate?.slice(0, 10) || "", endDate: destination?.toDate?.slice(0, 10) || "",
88
+ style: profile?.travelStyle || "", minBudget: number(profile?.budgetRange?.min), maxBudget: number(profile?.budgetRange?.max),
89
+ interest: profile?.interests?.[0] || "",
90
+ };
91
+ }
92
+ export function companionPreferencesToProfile(preferences) {
93
+ const { country = "", state = "", city = "", startDate = "", endDate = "", style = "", minBudget = "", maxBudget = "", interest = "" } = preferences;
94
+ return {
95
+ destinations: country || state || city || startDate || endDate ? [{ country, state, city, fromDate: startDate || null, toDate: endDate || null }] : [],
96
+ travelStyle: style || null,
97
+ budgetRange: { min: minBudget === "" ? null : Number(minBudget), max: maxBudget === "" ? null : Number(maxBudget) },
98
+ interests: interest ? [interest] : [],
99
+ };
100
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"ChatContext.d.ts","sourceRoot":"","sources":["../../../src/lib/context/ChatContext.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChatContext.d.ts","sourceRoot":"","sources":["../../../src/lib/context/ChatContext.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import { createContext, useCallback, useContext, useEffect, useRef, useState, } from "react";
4
+ import { runUploadTask } from "../utils/uploadTasks";
4
5
  import { useAtomValue } from "jotai";
5
6
  import { getSocket } from "../actions/socket";
6
7
  import { chatApi, normalizeChatMessage, } from "../actions/chat";
@@ -68,60 +69,67 @@ export function ChatProvider({ children }) {
68
69
  }
69
70
  }, [setActiveConversation]);
70
71
  const sendMessage = useCallback(async (conversationId, text, files, replyTo, options) => {
71
- const trimmed = text.trim();
72
- let media = [];
73
- if (files?.length) {
74
- const formData = new FormData();
75
- files.forEach((file) => formData.append("files", file));
76
- const upload = await chatApi.uploadFiles(formData, options?.onUploadProgress);
77
- media = upload?.data?.files || [];
78
- if (!media.length) {
79
- const errMsg = upload?.error?.message || "Unable to upload attachments";
80
- throw new Error(errMsg);
72
+ const performSend = async ({ progress, submitting, assertCurrent }) => {
73
+ const trimmed = text.trim();
74
+ let media = [];
75
+ if (files?.length) {
76
+ const formData = new FormData();
77
+ files.forEach((file) => formData.append("files", file));
78
+ const upload = await chatApi.uploadFiles(formData, percent => { progress(percent); options?.onUploadProgress?.(percent); });
79
+ media = upload?.data?.files || [];
80
+ if (!media.length) {
81
+ const errMsg = upload?.error?.message || "Unable to upload attachments";
82
+ throw new Error(errMsg);
83
+ }
84
+ media = media.map((item, index) => {
85
+ const metadata = files[index]?.chatMediaMetadata;
86
+ return metadata ? { ...item, ...metadata } : item;
87
+ });
81
88
  }
82
- media = media.map((item, index) => {
83
- const metadata = files[index]?.chatMediaMetadata;
84
- return metadata ? { ...item, ...metadata } : item;
85
- });
86
- }
87
- if (!trimmed && !media.length)
88
- return;
89
- const socket = socketRef.current;
90
- if (socket?.connected) {
91
- await new Promise((resolve, reject) => {
92
- socket.emit("message:send", {
93
- conversationId,
94
- text: trimmed,
95
- replyTo,
96
- media,
97
- type: options?.type || (media.length ? "media" : "text"),
98
- mentions: options?.mentions || [],
99
- }, (result) => {
100
- if (result?.success)
101
- resolve();
102
- else
103
- reject(new Error(result?.error?.message || "Unable to send message"));
89
+ if (!trimmed && !media.length)
90
+ return;
91
+ assertCurrent();
92
+ submitting();
93
+ const socket = socketRef.current;
94
+ if (socket?.connected) {
95
+ await new Promise((resolve, reject) => {
96
+ socket.emit("message:send", {
97
+ conversationId,
98
+ text: trimmed,
99
+ replyTo,
100
+ media,
101
+ type: options?.type || (media.length ? "media" : "text"),
102
+ mentions: options?.mentions || [],
103
+ }, (result) => {
104
+ if (result?.success)
105
+ resolve();
106
+ else
107
+ reject(new Error(result?.error?.message || "Unable to send message"));
108
+ });
104
109
  });
110
+ return;
111
+ }
112
+ const result = await chatApi.sendMessage(conversationId, {
113
+ text: trimmed,
114
+ replyTo,
115
+ media,
116
+ type: options?.type || (media.length ? "media" : "text"),
117
+ mentions: options?.mentions || [],
105
118
  });
106
- return;
107
- }
108
- const result = await chatApi.sendMessage(conversationId, {
109
- text: trimmed,
110
- replyTo,
111
- media,
112
- type: options?.type || (media.length ? "media" : "text"),
113
- mentions: options?.mentions || [],
114
- });
115
- if (result.error) {
116
- throw result.error;
117
- }
118
- const message = result.data;
119
- if (message) {
120
- setMessages((current) => current.some((item) => item._id === message._id)
121
- ? current
122
- : [...current, message]);
123
- await refreshConversations();
124
- }
119
+ assertCurrent();
120
+ if (result.error) {
121
+ throw result.error;
122
+ }
123
+ const message = result.data;
124
+ if (message && activeConversationRef.current?._id === conversationId) {
125
+ setMessages((current) => current.some((item) => item._id === message._id)
126
+ ? current
127
+ : [...current, message]);
128
+ }
129
+ if (message)
130
+ await refreshConversations();
131
+ };
132
+ return files?.length ? runUploadTask({ title: "Chat attachments", completeLabel: "Message sent", href: "/chat", operation: performSend }) : performSend({ progress: () => { }, submitting: () => { }, assertCurrent: () => { } });
125
133
  }, [refreshConversations]);
126
134
  const editMessage = useCallback(async (messageId, text) => {
127
135
  if (socketRef.current?.connected) {
@@ -0,0 +1,2 @@
1
+ export declare function useSubmissionGuard(): () => () => boolean;
2
+ //# sourceMappingURL=useSubmissionGuard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSubmissionGuard.d.ts","sourceRoot":"","sources":["../../../src/lib/hooks/useSubmissionGuard.ts"],"names":[],"mappings":"AAKA,wBAAgB,kBAAkB,wBAOjC"}
@@ -0,0 +1,12 @@
1
+ 'use client';
2
+ import { useEffect, useRef } from 'react';
3
+ // A completion belongs to the component instance that started it, even if a
4
+ // different instance of the same route has since opened a new draft.
5
+ export function useSubmissionGuard() {
6
+ const mounted = useRef(true);
7
+ useEffect(() => { mounted.current = true; return () => { mounted.current = false; }; }, []);
8
+ return () => {
9
+ const path = window.location.pathname;
10
+ return () => mounted.current && window.location.pathname === path;
11
+ };
12
+ }
@@ -0,0 +1,7 @@
1
+ import { type UploadTask } from '../utils/uploadTasks';
2
+ export declare function useUploadActivity(): {
3
+ open: boolean;
4
+ taskId: string | undefined;
5
+ };
6
+ export declare function useUploadTasks(): UploadTask[];
7
+ //# sourceMappingURL=useUploadTasks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useUploadTasks.d.ts","sourceRoot":"","sources":["../../../src/lib/hooks/useUploadTasks.ts"],"names":[],"mappings":"AAEA,OAAO,EAAe,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGpE,wBAAgB,iBAAiB;;YADkB,MAAM,GAAG,SAAS;EAGpE;AACD,wBAAgB,cAAc,iBAE7B"}
@@ -0,0 +1,11 @@
1
+ 'use client';
2
+ import { useSyncExternalStore } from 'react';
3
+ import { uploadTasks } from '../utils/uploadTasks';
4
+ const empty = [];
5
+ const closed = { open: false, taskId: undefined };
6
+ export function useUploadActivity() {
7
+ return useSyncExternalStore(uploadTasks.subscribe, uploadTasks.getActivity, () => closed);
8
+ }
9
+ export function useUploadTasks() {
10
+ return useSyncExternalStore(uploadTasks.subscribe, uploadTasks.getSnapshot, () => empty);
11
+ }