@myrjfa/state 3.0.8 → 3.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/actions/application.d.ts +5 -3
- package/dist/lib/actions/application.d.ts.map +1 -1
- package/dist/lib/actions/application.js +45 -2
- package/dist/lib/actions/auth.d.ts +18 -3
- package/dist/lib/actions/auth.d.ts.map +1 -1
- package/dist/lib/actions/auth.js +22 -0
- package/dist/lib/actions/blog.d.ts.map +1 -1
- package/dist/lib/actions/blog.js +3 -2
- package/dist/lib/actions/booking.d.ts +29 -1
- package/dist/lib/actions/booking.d.ts.map +1 -1
- package/dist/lib/actions/booking.js +186 -0
- package/dist/lib/actions/brand.d.ts +7 -0
- package/dist/lib/actions/brand.d.ts.map +1 -1
- package/dist/lib/actions/brand.js +4 -0
- package/dist/lib/actions/chat.d.ts +3 -0
- package/dist/lib/actions/chat.d.ts.map +1 -1
- package/dist/lib/actions/chat.js +40 -1
- package/dist/lib/actions/community.d.ts +2 -1
- package/dist/lib/actions/community.d.ts.map +1 -1
- package/dist/lib/actions/community.js +10 -4
- package/dist/lib/actions/companion.d.ts +13 -7
- package/dist/lib/actions/companion.d.ts.map +1 -1
- package/dist/lib/actions/companion.js +6 -4
- package/dist/lib/actions/companionUpload.d.ts +2 -1
- package/dist/lib/actions/companionUpload.d.ts.map +1 -1
- package/dist/lib/actions/companionUpload.js +2 -1
- package/dist/lib/actions/event.d.ts +1 -1
- package/dist/lib/actions/event.d.ts.map +1 -1
- package/dist/lib/actions/event.js +5 -2
- package/dist/lib/actions/fetcher.d.ts +7 -1
- package/dist/lib/actions/fetcher.d.ts.map +1 -1
- package/dist/lib/actions/fetcher.js +56 -11
- package/dist/lib/actions/guide.js +1 -0
- package/dist/lib/actions/homeBanner.d.ts +8 -0
- package/dist/lib/actions/homeBanner.d.ts.map +1 -0
- package/dist/lib/actions/homeBanner.js +33 -0
- package/dist/lib/actions/hostDashboard.d.ts +1 -11
- package/dist/lib/actions/hostDashboard.d.ts.map +1 -1
- package/dist/lib/actions/hostDashboard.js +1 -146
- package/dist/lib/actions/itinerary.d.ts +1 -1
- package/dist/lib/actions/itinerary.d.ts.map +1 -1
- package/dist/lib/actions/itinerary.js +2 -2
- package/dist/lib/actions/listingInterest.d.ts +2 -5
- package/dist/lib/actions/listingInterest.d.ts.map +1 -1
- package/dist/lib/actions/listingInterest.js +18 -3
- package/dist/lib/actions/location.d.ts +4 -0
- package/dist/lib/actions/location.d.ts.map +1 -1
- package/dist/lib/actions/location.js +10 -6
- package/dist/lib/actions/marketplaceContract.d.ts.map +1 -1
- package/dist/lib/actions/marketplaceContract.js +3 -2
- package/dist/lib/actions/nativeTransport.d.ts +25 -0
- package/dist/lib/actions/nativeTransport.d.ts.map +1 -0
- package/dist/lib/actions/nativeTransport.js +50 -0
- package/dist/lib/actions/notification.d.ts +3 -3
- package/dist/lib/actions/package.d.ts +5 -3
- package/dist/lib/actions/package.d.ts.map +1 -1
- package/dist/lib/actions/package.js +11 -6
- package/dist/lib/actions/profile.d.ts +5 -0
- package/dist/lib/actions/profile.d.ts.map +1 -1
- package/dist/lib/actions/profile.js +12 -0
- package/dist/lib/actions/review.d.ts +7 -0
- package/dist/lib/actions/review.d.ts.map +1 -1
- package/dist/lib/actions/review.js +64 -31
- package/dist/lib/actions/serverActions.native.d.ts +4 -0
- package/dist/lib/actions/serverActions.native.d.ts.map +1 -0
- package/dist/lib/actions/serverActions.native.js +5 -0
- package/dist/lib/actions/socket.d.ts.map +1 -1
- package/dist/lib/actions/socket.js +6 -5
- package/dist/lib/actions/stay.d.ts +14 -1
- package/dist/lib/actions/stay.d.ts.map +1 -1
- package/dist/lib/actions/stay.js +29 -2
- package/dist/lib/actions/store.d.ts +1 -0
- package/dist/lib/actions/store.d.ts.map +1 -1
- package/dist/lib/actions/store.js +9 -0
- package/dist/lib/actions/user.d.ts +2 -0
- package/dist/lib/actions/user.d.ts.map +1 -1
- package/dist/lib/actions/user.js +5 -0
- package/dist/lib/data/catalogueLocations.d.ts +3 -0
- package/dist/lib/data/catalogueLocations.d.ts.map +1 -0
- package/dist/lib/data/catalogueLocations.js +21 -0
- package/dist/lib/data/skills.d.ts +5 -0
- package/dist/lib/data/skills.d.ts.map +1 -0
- package/dist/lib/data/skills.js +97 -0
- package/dist/lib/forms/application.d.ts +4 -0
- package/dist/lib/forms/application.d.ts.map +1 -0
- package/dist/lib/forms/application.js +17 -0
- package/dist/lib/forms/packageEnquiry.d.ts +4 -0
- package/dist/lib/forms/packageEnquiry.d.ts.map +1 -0
- package/dist/lib/forms/packageEnquiry.js +12 -0
- package/dist/lib/forms/review.d.ts +6 -0
- package/dist/lib/forms/review.d.ts.map +1 -0
- package/dist/lib/forms/review.js +20 -0
- package/dist/lib/models/application.d.ts +21 -0
- package/dist/lib/models/application.d.ts.map +1 -1
- package/dist/lib/models/authorization.d.ts +1 -1
- package/dist/lib/models/authorization.d.ts.map +1 -1
- package/dist/lib/models/authorization.js +2 -0
- package/dist/lib/models/booking.d.ts +3 -0
- package/dist/lib/models/booking.d.ts.map +1 -1
- package/dist/lib/models/chat.d.ts +8 -0
- package/dist/lib/models/chat.d.ts.map +1 -1
- package/dist/lib/models/chat.js +10 -0
- package/dist/lib/models/community.d.ts +2 -0
- package/dist/lib/models/community.d.ts.map +1 -1
- package/dist/lib/models/community.js +2 -1
- package/dist/lib/models/companion.d.ts +42 -0
- package/dist/lib/models/companion.d.ts.map +1 -1
- package/dist/lib/models/discount.d.ts +8 -8
- package/dist/lib/models/enquiry.d.ts +13 -0
- package/dist/lib/models/enquiry.d.ts.map +1 -1
- package/dist/lib/models/homeBanner.d.ts +17 -0
- package/dist/lib/models/homeBanner.d.ts.map +1 -0
- package/dist/lib/models/homeBanner.js +1 -0
- package/dist/lib/models/interest.d.ts +42 -0
- package/dist/lib/models/interest.d.ts.map +1 -0
- package/dist/lib/models/interest.js +1 -0
- package/dist/lib/models/location.d.ts +1 -0
- package/dist/lib/models/location.d.ts.map +1 -1
- package/dist/lib/models/notifications.d.ts +2 -2
- package/dist/lib/models/opportunities/freelance.d.ts +37 -4
- package/dist/lib/models/opportunities/freelance.d.ts.map +1 -1
- package/dist/lib/models/opportunities/internship.d.ts +37 -4
- package/dist/lib/models/opportunities/internship.d.ts.map +1 -1
- package/dist/lib/models/opportunities/job.d.ts +37 -4
- package/dist/lib/models/opportunities/job.d.ts.map +1 -1
- package/dist/lib/models/opportunities/opportunity.d.ts +38 -5
- package/dist/lib/models/opportunities/opportunity.d.ts.map +1 -1
- package/dist/lib/models/opportunities/opportunity.js +1 -1
- package/dist/lib/models/opportunities/volunteerJob.d.ts +37 -4
- package/dist/lib/models/opportunities/volunteerJob.d.ts.map +1 -1
- package/dist/lib/models/pricing.d.ts +2 -0
- package/dist/lib/models/pricing.d.ts.map +1 -1
- package/dist/lib/models/pricing.js +4 -0
- package/dist/lib/models/props.d.ts +4 -43
- package/dist/lib/models/props.d.ts.map +1 -1
- package/dist/lib/models/props.js +3 -121
- package/dist/lib/models/question.d.ts +14 -0
- package/dist/lib/models/question.d.ts.map +1 -0
- package/dist/lib/models/question.js +6 -0
- package/dist/lib/models/review.d.ts +13 -1
- package/dist/lib/models/review.d.ts.map +1 -1
- package/dist/lib/models/review.js +4 -0
- package/dist/lib/models/tile.d.ts +7 -1
- package/dist/lib/models/tile.d.ts.map +1 -1
- package/dist/lib/models/travelPackage.d.ts +37 -4
- package/dist/lib/models/travelPackage.d.ts.map +1 -1
- package/dist/lib/models/travelPackage.js +1 -1
- package/dist/lib/models/user.d.ts +25 -2
- package/dist/lib/models/user.d.ts.map +1 -1
- package/dist/lib/models/user.js +1 -0
- package/dist/lib/userAtom.d.ts +30 -5
- package/dist/lib/userAtom.d.ts.map +1 -1
- package/dist/lib/utils/entityTiles.d.ts.map +1 -1
- package/dist/lib/utils/entityTiles.js +3 -2
- package/dist/lib/utils/htmlDescription.d.ts +3 -0
- package/dist/lib/utils/htmlDescription.d.ts.map +1 -0
- package/dist/lib/utils/htmlDescription.js +7 -0
- package/dist/lib/utils/htmlDescription.native.d.ts +3 -0
- package/dist/lib/utils/htmlDescription.native.d.ts.map +1 -0
- package/dist/lib/utils/htmlDescription.native.js +7 -0
- package/dist/lib/utils/text.d.ts +3 -1
- package/dist/lib/utils/text.d.ts.map +1 -1
- package/dist/lib/utils/text.js +5 -6
- package/dist/lib/utils/uploadFile.d.ts +9 -0
- package/dist/lib/utils/uploadFile.d.ts.map +1 -0
- package/dist/lib/utils/uploadFile.js +9 -0
- package/dist/lib/utils/uploadTasks.d.ts.map +1 -1
- package/dist/lib/utils/uploadTasks.js +9 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/chat.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,cAAc,EACd,YAAY,EACZ,SAAS,EACT,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EACjB,wBAAwB,EACxB,mBAAmB,EACnB,cAAc,EACd,yBAAyB,EACzB,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,EACrB,oCAAoC,EACpC,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,OAAO,EAEP,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACtB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/chat.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/actions/chat.js
CHANGED
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { get, post, patch, put, del } from "./fetcher";
|
|
2
|
+
import { getNativeTransport, nativeInteractionGuard } from "./nativeTransport";
|
|
3
|
+
import { appendUploadFile } from '../utils/uploadFile';
|
|
4
|
+
import { runUploadTask } from '../utils/uploadTasks';
|
|
2
5
|
const BASE_PATH = "/chat";
|
|
3
6
|
const idString = (value) => String(value || "");
|
|
4
7
|
const normalizeActorRef = (actor) => ({
|
|
@@ -240,6 +243,8 @@ export const chatApi = {
|
|
|
240
243
|
return (response.data || []).map(normalizeConversation);
|
|
241
244
|
}
|
|
242
245
|
catch (error) {
|
|
246
|
+
if (getNativeTransport())
|
|
247
|
+
throw error;
|
|
243
248
|
console.error(error);
|
|
244
249
|
return [];
|
|
245
250
|
}
|
|
@@ -250,6 +255,8 @@ export const chatApi = {
|
|
|
250
255
|
return response.data ? normalizeConversation(response.data) : null;
|
|
251
256
|
}
|
|
252
257
|
catch (error) {
|
|
258
|
+
if (getNativeTransport())
|
|
259
|
+
throw error;
|
|
253
260
|
console.error(error);
|
|
254
261
|
return null;
|
|
255
262
|
}
|
|
@@ -330,6 +337,8 @@ export const chatApi = {
|
|
|
330
337
|
return (response.data || []).map(normalizeChatMessage);
|
|
331
338
|
}
|
|
332
339
|
catch (error) {
|
|
340
|
+
if (getNativeTransport())
|
|
341
|
+
throw error;
|
|
333
342
|
console.error(error);
|
|
334
343
|
return [];
|
|
335
344
|
}
|
|
@@ -357,6 +366,28 @@ export const chatApi = {
|
|
|
357
366
|
return { data: null, error };
|
|
358
367
|
}
|
|
359
368
|
},
|
|
369
|
+
/** Same upload/send phases used by web chat, with native URI multipart support. */
|
|
370
|
+
sendTravellerAttachments: async (convId, text, files, replyTo) => {
|
|
371
|
+
if (!files.length || files.length > 5)
|
|
372
|
+
throw new Error('Choose 1–5 attachments');
|
|
373
|
+
const assertActor = nativeInteractionGuard();
|
|
374
|
+
return runUploadTask({ title: 'Chat attachments', completeLabel: 'Message sent', retrySafe: false, href: `/conversation/${convId}`, operation: async ({ progress, submitting, assertCurrent }) => {
|
|
375
|
+
const body = new FormData();
|
|
376
|
+
files.forEach(file => appendUploadFile(body, 'files', file));
|
|
377
|
+
const uploaded = await chatApi.uploadFiles(body, progress);
|
|
378
|
+
assertCurrent();
|
|
379
|
+
assertActor();
|
|
380
|
+
if (!uploaded.data?.files?.length)
|
|
381
|
+
throw new Error('Attachment upload could not be confirmed');
|
|
382
|
+
submitting();
|
|
383
|
+
const sent = await chatApi.sendMessage(convId, { text: text.trim(), media: uploaded.data.files, replyTo, type: 'media' });
|
|
384
|
+
assertCurrent();
|
|
385
|
+
assertActor();
|
|
386
|
+
if (sent.error || !sent.data)
|
|
387
|
+
throw new Error('Message confirmation is uncertain. Check the conversation before retrying.');
|
|
388
|
+
return sent.data;
|
|
389
|
+
} });
|
|
390
|
+
},
|
|
360
391
|
sendSharedCard: async (convId, data) => {
|
|
361
392
|
const response = await post(`${BASE_PATH}/conversations/${convId}/messages/shared-card`, data);
|
|
362
393
|
return normalizeChatMessage(response.data);
|
|
@@ -612,7 +643,7 @@ export const chatApi = {
|
|
|
612
643
|
return normalizeChatMessage(response.data);
|
|
613
644
|
},
|
|
614
645
|
requestChatAICommand: async (conversationId, command) => {
|
|
615
|
-
const response = await post(`${BASE_PATH}/conversations/${conversationId}/ai/command`, { command, idempotencyKey: crypto.randomUUID() });
|
|
646
|
+
const response = await post(`${BASE_PATH}/conversations/${conversationId}/ai/command`, { command, idempotencyKey: (getNativeTransport()?.randomUUID?.() ?? crypto.randomUUID()) });
|
|
616
647
|
return response.data;
|
|
617
648
|
},
|
|
618
649
|
decideChatAIProposal: async (proposalId, confirm) => {
|
|
@@ -673,6 +704,8 @@ export const chatApi = {
|
|
|
673
704
|
return (response.data || []).map(normalizeMilestone);
|
|
674
705
|
}
|
|
675
706
|
catch (error) {
|
|
707
|
+
if (getNativeTransport())
|
|
708
|
+
throw error;
|
|
676
709
|
console.error(error);
|
|
677
710
|
return [];
|
|
678
711
|
}
|
|
@@ -724,6 +757,8 @@ export const chatApi = {
|
|
|
724
757
|
return (response.data || []).map(normalizeExpense);
|
|
725
758
|
}
|
|
726
759
|
catch (error) {
|
|
760
|
+
if (getNativeTransport())
|
|
761
|
+
throw error;
|
|
727
762
|
console.error(error);
|
|
728
763
|
return [];
|
|
729
764
|
}
|
|
@@ -782,6 +817,8 @@ export const chatApi = {
|
|
|
782
817
|
} : null;
|
|
783
818
|
}
|
|
784
819
|
catch (error) {
|
|
820
|
+
if (getNativeTransport())
|
|
821
|
+
throw error;
|
|
785
822
|
console.error(error);
|
|
786
823
|
return null;
|
|
787
824
|
}
|
|
@@ -831,6 +868,8 @@ export const chatApi = {
|
|
|
831
868
|
return response.data;
|
|
832
869
|
}
|
|
833
870
|
catch (error) {
|
|
871
|
+
if (getNativeTransport())
|
|
872
|
+
throw error;
|
|
834
873
|
console.error(error);
|
|
835
874
|
return [];
|
|
836
875
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type UploadFile } from "../utils/uploadFile";
|
|
1
2
|
import type { CommunityComment, CommunityContent, CommunityEntitySearchKind, CommunityEntitySearchPage, CommunityModerationQueue, CommunityPlaceContentPage, CommunityPreferences, CommunitySearchPage, CommunityVideoPosterUpload, ContentPage, CreateCommunityContentInput, FeedPage } from "../models/community";
|
|
2
3
|
export declare const getCommunityFeed: (mode?: "for_you" | "following", cursor?: string, sessionId?: string) => Promise<FeedPage>;
|
|
3
4
|
export declare const getCommunityContent: (slug: string, authenticated?: boolean) => Promise<CommunityContent>;
|
|
@@ -7,7 +8,7 @@ export declare const getPlaceCommunityContent: (slugPath: string, cursor?: strin
|
|
|
7
8
|
export declare const searchCommunityContent: (query: string, cursor?: string) => Promise<CommunitySearchPage>;
|
|
8
9
|
export declare const searchCommunityEntities: (type: CommunityEntitySearchKind, query?: string, limit?: number) => Promise<CommunityEntitySearchPage>;
|
|
9
10
|
export declare const createCommunityContent: (input: CreateCommunityContentInput) => Promise<CommunityContent>;
|
|
10
|
-
export declare const uploadCommunityAssets: (files:
|
|
11
|
+
export declare const uploadCommunityAssets: (files: UploadFile[], videoPosters?: CommunityVideoPosterUpload[], onUploadProgress?: (percent: number) => void) => Promise<import("../models/community").CommunityMedia[]>;
|
|
11
12
|
export declare const updateCommunityContent: (id: string, input: Partial<CreateCommunityContentInput>) => Promise<CommunityContent>;
|
|
12
13
|
export declare const deleteCommunityContent: (id: string) => Promise<unknown>;
|
|
13
14
|
export declare const setCommunityReaction: (contentId: string, kind: "like" | "bookmark", enabled: boolean) => Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"community.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/community.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"community.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/community.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { runUploadTask } from "../utils/uploadTasks";
|
|
2
|
+
import { appendUploadFile } from "../utils/uploadFile";
|
|
3
|
+
import { nativeInteractionGuard } from "./nativeTransport";
|
|
2
4
|
import { del, get, patch, post, put } from "./fetcher";
|
|
3
5
|
export const getCommunityFeed = async (mode = "for_you", cursor, sessionId) => (await get(`/community/feed?mode=${mode}${cursor ? `&cursor=${encodeURIComponent(cursor)}` : ""}${sessionId ? `&sessionId=${encodeURIComponent(sessionId)}` : ""}`)).data;
|
|
4
6
|
export const getCommunityContent = async (slug, authenticated = true) => (await get(`/community/content/${encodeURIComponent(slug)}`, authenticated)).data;
|
|
@@ -9,8 +11,9 @@ export const searchCommunityContent = async (query, cursor) => (await get(`/comm
|
|
|
9
11
|
export const searchCommunityEntities = async (type, query = "", limit = 12) => (await get(`/community/entities?type=${type}&q=${encodeURIComponent(query)}&limit=${Math.max(1, Math.min(limit, 20))}`)).data;
|
|
10
12
|
export const createCommunityContent = async (input) => (await post("/community/content", input)).data;
|
|
11
13
|
export const uploadCommunityAssets = async (files, videoPosters = [], onUploadProgress) => {
|
|
14
|
+
const assertCurrent = nativeInteractionGuard();
|
|
12
15
|
const form = new FormData();
|
|
13
|
-
files.slice(0, 10).forEach((file) => form
|
|
16
|
+
files.slice(0, 10).forEach((file) => appendUploadFile(form, "portfolio", file));
|
|
14
17
|
const validPosters = videoPosters
|
|
15
18
|
.filter(({ assetIndex }) => Number.isInteger(assetIndex) && assetIndex >= 0 && assetIndex < Math.min(files.length, 10))
|
|
16
19
|
.slice(0, 10);
|
|
@@ -19,9 +22,12 @@ export const uploadCommunityAssets = async (files, videoPosters = [], onUploadPr
|
|
|
19
22
|
validPosters.forEach(({ file }) => form.append("videoPoster", file));
|
|
20
23
|
}
|
|
21
24
|
const upload = (progress) => post("/community/assets", form, true, { onUploadProgress: progress });
|
|
22
|
-
if (onUploadProgress)
|
|
23
|
-
|
|
24
|
-
|
|
25
|
+
if (onUploadProgress) {
|
|
26
|
+
const response = await upload(onUploadProgress);
|
|
27
|
+
assertCurrent();
|
|
28
|
+
return response.data;
|
|
29
|
+
}
|
|
30
|
+
return (await runUploadTask({ title: 'Community media', retrySafe: true, href: typeof window === "undefined" || !window.location ? undefined : window.location.pathname, operation: ({ progress }) => upload(progress), resultHref: result => result.data[0]?.url })).data;
|
|
25
31
|
};
|
|
26
32
|
export const updateCommunityContent = async (id, input) => (await patch(`/community/content/${id}`, input)).data;
|
|
27
33
|
export const deleteCommunityContent = async (id) => (await del(`/community/content/${id}`)).data;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CompanionListingCard, CompanionListingSuggestions, CompanionSavedType, CompanionStandaloneKind } from "../models/companion";
|
|
1
|
+
import type { CompanionDiscoveryTraveler, CompanionDiscoveryTrip, CompanionListingCard, CompanionListingSuggestions, CompanionSavedType, CompanionStandaloneKind } from "../models/companion";
|
|
2
2
|
export declare function getCompanionEligibility(): Promise<{
|
|
3
3
|
eligible: boolean;
|
|
4
4
|
missingFields: string[];
|
|
@@ -179,7 +179,10 @@ export declare function toggleLikePlan(id: string): Promise<{
|
|
|
179
179
|
isLiked: any;
|
|
180
180
|
error?: undefined;
|
|
181
181
|
}>;
|
|
182
|
-
export declare function getMyTravelPlans(
|
|
182
|
+
export declare function getMyTravelPlans(options?: {
|
|
183
|
+
page?: number;
|
|
184
|
+
limit?: number;
|
|
185
|
+
}): Promise<{
|
|
183
186
|
success: boolean;
|
|
184
187
|
error: any;
|
|
185
188
|
plans: never[];
|
|
@@ -241,11 +244,11 @@ export declare function handleJoinRequest(planId: string, requestId: string, act
|
|
|
241
244
|
}>;
|
|
242
245
|
export declare function discoverTrips(filters?: Record<string, string>): Promise<{
|
|
243
246
|
success: boolean;
|
|
244
|
-
error:
|
|
247
|
+
error: string | undefined;
|
|
245
248
|
trips: never[];
|
|
246
249
|
} | {
|
|
247
250
|
success: boolean;
|
|
248
|
-
trips:
|
|
251
|
+
trips: CompanionDiscoveryTrip[];
|
|
249
252
|
error?: undefined;
|
|
250
253
|
}>;
|
|
251
254
|
export declare function swipeTrip(travelPlanId: string, action: "like" | "pass"): Promise<{
|
|
@@ -259,11 +262,11 @@ export declare function swipeTrip(travelPlanId: string, action: "like" | "pass")
|
|
|
259
262
|
}>;
|
|
260
263
|
export declare function discoverTravelers(filters?: Record<string, string>): Promise<{
|
|
261
264
|
success: boolean;
|
|
262
|
-
error:
|
|
265
|
+
error: string | undefined;
|
|
263
266
|
travelers: never[];
|
|
264
267
|
} | {
|
|
265
268
|
success: boolean;
|
|
266
|
-
travelers:
|
|
269
|
+
travelers: CompanionDiscoveryTraveler[];
|
|
267
270
|
error?: undefined;
|
|
268
271
|
}>;
|
|
269
272
|
export declare function swipeTraveler(targetUserId: string, action: "like" | "pass"): Promise<{
|
|
@@ -279,7 +282,10 @@ export declare function swipeTraveler(targetUserId: string, action: "like" | "pa
|
|
|
279
282
|
matchScore: any;
|
|
280
283
|
error?: undefined;
|
|
281
284
|
}>;
|
|
282
|
-
export declare function getMyMatches(
|
|
285
|
+
export declare function getMyMatches(options?: {
|
|
286
|
+
page?: number;
|
|
287
|
+
limit?: number;
|
|
288
|
+
}): Promise<{
|
|
283
289
|
success: boolean;
|
|
284
290
|
error: any;
|
|
285
291
|
matches: never[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"companion.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/companion.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,oBAAoB,EAEpB,2BAA2B,EAE3B,kBAAkB,EAClB,uBAAuB,EACxB,MAAM,qBAAqB,CAAC;AAI7B,wBAAsB,uBAAuB;;;;;;;;GAQ5C;AAED,wBAAsB,uBAAuB,CAAC,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM;;;;;;;;GAOvF;AAED,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;;;;;;;;GAOrG;AAED,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,MAAM;;;;;;;;;;GAQrF;AAID,wBAAsB,kBAAkB;;;;;;;;;;GASvC;AAED,wBAAsB,mBAAmB,CAAC,WAAW,EAAE,GAAG;;;;;;;;GAQzD;AAID,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,GAAG;;;;;;;;GAQnD;AAED,wBAAsB,wBAAwB,CAAC,IAAI,EAAE,IAAI;;;;;;;;GAExD;AAED,wBAAsB,6BAA6B,CACjD,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,UAAU,GAAE,mBAAmB,GAAG,MAA4B,EAC9D,OAAO,GAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO;;;;;;;;;;GAY9D;AAED,wBAAsB,2BAA2B,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;;;;;;;;GAcpF;AAED,wBAAsB,8BAA8B,CAAC,MAAM,EAAE,MAAM;;;;;;;;GAOlE;AAED,wBAAsB,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB,EAAE,QAAQ,EAAE,MAAM;;;;;;;;GAO/G;AAED,wBAAsB,6BAA6B,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB,EAAE,QAAQ,EAAE,MAAM;;;;;;GAOlH;AAED,wBAAsB,2BAA2B,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;;;;;;;;GAQhF;AAED,wBAAsB,cAAc,CAAC,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM;;;;;;;;;;GASxE;AAED,wBAAsB,aAAa,CAAC,EAAE,EAAE,MAAM;;;;;;;;GAQ7C;AAED,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG;;;;;;;;GAQ/D;AAED,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,MAAM;;;;;;;;GAQhD;AAED,wBAAsB,cAAc,CAAC,EAAE,EAAE,MAAM;;;;;;;;GAQ9C;AAED,wBAAsB,gBAAgB;;;;;;;;
|
|
1
|
+
{"version":3,"file":"companion.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/companion.ts"],"names":[],"mappings":"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"}
|
|
@@ -198,9 +198,10 @@ export async function toggleLikePlan(id) {
|
|
|
198
198
|
return { success: false, error: "Failed to like plan" };
|
|
199
199
|
}
|
|
200
200
|
}
|
|
201
|
-
export async function getMyTravelPlans() {
|
|
201
|
+
export async function getMyTravelPlans(options) {
|
|
202
202
|
try {
|
|
203
|
-
const
|
|
203
|
+
const query = options ? new URLSearchParams({ page: String(Math.max(1, Math.floor(options.page || 1))), limit: String(Math.min(20, Math.max(1, Math.floor(options.limit || 20)))) }).toString() : "";
|
|
204
|
+
const data = await get(`${BASE_PATH}/plans/mine${query ? `?${query}` : ""}`);
|
|
204
205
|
if (data.statusCode >= 400)
|
|
205
206
|
return { success: false, error: data.message, plans: [] };
|
|
206
207
|
return { success: true, plans: data.data?.plans ?? data.data ?? [] };
|
|
@@ -323,9 +324,10 @@ export async function swipeTraveler(targetUserId, action) {
|
|
|
323
324
|
}
|
|
324
325
|
}
|
|
325
326
|
// ── Matches ─────────────────────────────────────────────────────────────────────
|
|
326
|
-
export async function getMyMatches() {
|
|
327
|
+
export async function getMyMatches(options) {
|
|
327
328
|
try {
|
|
328
|
-
const
|
|
329
|
+
const query = options ? new URLSearchParams({ page: String(Math.max(1, Math.floor(options.page || 1))), limit: String(Math.min(20, Math.max(1, Math.floor(options.limit || 20)))) }).toString() : "";
|
|
330
|
+
const data = await get(`${BASE_PATH}/matches${query ? `?${query}` : ""}`);
|
|
329
331
|
if (data.statusCode >= 400)
|
|
330
332
|
return { success: false, error: data.message, matches: [] };
|
|
331
333
|
return { success: true, matches: data.data ?? [] };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"companionUpload.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/companionUpload.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"companionUpload.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/companionUpload.ts"],"names":[],"mappings":"AAEA,OAAO,EAAoB,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAExE,wBAAsB,wBAAwB,CAAC,IAAI,EAAE,UAAU;;;;;;;;GAS9D"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { post } from "./fetcher";
|
|
2
2
|
import { runUploadTask } from "../utils/uploadTasks";
|
|
3
|
+
import { appendUploadFile } from "../utils/uploadFile";
|
|
3
4
|
export async function uploadCompanionTripCover(file) {
|
|
4
5
|
const body = new FormData();
|
|
5
|
-
body
|
|
6
|
+
appendUploadFile(body, "images", file);
|
|
6
7
|
try {
|
|
7
8
|
const response = await runUploadTask({ title: "Trip cover", recoveryKey: "companion-cover", retrySafe: true, href: "/find-companion/create", operation: ({ progress }) => post("/companion/uploads/trip-cover", body, true, { onUploadProgress: progress }) });
|
|
8
9
|
return { success: true, url: response.data.url };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare function fetchEvents(params?: Record<string, string
|
|
1
|
+
export declare function fetchEvents(params?: Record<string, string>, signal?: AbortSignal): Promise<any>;
|
|
2
2
|
export declare function fetchEventBySlug(slug: string): Promise<{
|
|
3
3
|
success: boolean;
|
|
4
4
|
event: any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/event.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/event.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { runUploadTask } from "../utils/uploadTasks";
|
|
2
2
|
import { post, get, patch, del } from "./fetcher";
|
|
3
|
+
import { getNativeTransport } from './nativeTransport';
|
|
3
4
|
import { calculatePricingStrategyDisplayUnitPrice, getPrimaryPricingStrategy } from "../models/pricing";
|
|
4
5
|
function formatTrendingEventDate(value) {
|
|
5
6
|
const date = new Date(value);
|
|
@@ -11,10 +12,10 @@ function formatTrendingEventDate(value) {
|
|
|
11
12
|
});
|
|
12
13
|
}
|
|
13
14
|
// ── Public ────────────────────────────────────────────────────────────────────
|
|
14
|
-
export async function fetchEvents(params = {}) {
|
|
15
|
+
export async function fetchEvents(params = {}, signal) {
|
|
15
16
|
try {
|
|
16
17
|
const qs = new URLSearchParams(params).toString();
|
|
17
|
-
const data = await get(`/events?${qs}
|
|
18
|
+
const data = await get(`/events?${qs}`, true, { signal });
|
|
18
19
|
return { success: true, ...data.data };
|
|
19
20
|
}
|
|
20
21
|
catch (err) {
|
|
@@ -27,6 +28,8 @@ export async function fetchEventBySlug(slug) {
|
|
|
27
28
|
return { success: true, event: data.data };
|
|
28
29
|
}
|
|
29
30
|
catch (err) {
|
|
31
|
+
if (getNativeTransport())
|
|
32
|
+
return { success: false, error: err.message, event: null };
|
|
30
33
|
try {
|
|
31
34
|
const data = await get(`/events/host/my?status=all`);
|
|
32
35
|
const event = (data.data || []).find((item) => item.slug === slug);
|
|
@@ -6,7 +6,13 @@ interface FetchOptions {
|
|
|
6
6
|
keepalive?: boolean;
|
|
7
7
|
onUploadProgress?: (percent: number) => void;
|
|
8
8
|
}
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* #2 — Stable device fingerprint stored in localStorage.
|
|
11
|
+
* Survives browser sessions (unlike cookies which can expire/be cleared).
|
|
12
|
+
* Generated once per browser using crypto.randomUUID().
|
|
13
|
+
*/
|
|
14
|
+
export declare function getOrCreateDeviceId(): string | null;
|
|
15
|
+
export declare function get<T>(url: string, includeAuth?: boolean, options?: Pick<FetchOptions, 'signal'>): Promise<T>;
|
|
10
16
|
export declare function post<T>(url: string, body: any, includeAuth?: boolean, options?: Pick<FetchOptions, 'signal' | 'headers' | 'retry' | 'keepalive' | 'onUploadProgress'>): Promise<T>;
|
|
11
17
|
export declare function put<T>(url: string, body: any, options?: Pick<FetchOptions, 'onUploadProgress'>): Promise<T>;
|
|
12
18
|
export declare function patch<T>(url: string, body: any, options?: Pick<FetchOptions, 'onUploadProgress'>): Promise<T>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetcher.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/fetcher.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"fetcher.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/fetcher.ts"],"names":[],"mappings":"AA0BA,UAAU,YAAY;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAChD;AAuCD;;;;GAIG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,GAAG,IAAI,CAYnD;AAoLD,wBAAsB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,GAAE,OAAc,EAAE,OAAO,GAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAM,cAEhH;AAED,wBAAsB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,GAAE,OAAc,EAAE,OAAO,GAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,GAAG,kBAAkB,CAAM,cAErL;AAED,wBAAsB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,GAAE,IAAI,CAAC,YAAY,EAAE,kBAAkB,CAAM,cAExG;AAED,wBAAsB,KAAK,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,GAAE,IAAI,CAAC,YAAY,EAAE,kBAAkB,CAAM,cAE1G;AAED,wBAAsB,GAAG,CAAC,CAAC,EACvB,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,GAAG,EACV,WAAW,GAAE,OAAc,EAC3B,OAAO,GAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAM,cAGnE"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { getAccountType, getCookieHeader, getRole } from "./serverActions";
|
|
2
2
|
import { normalizeRefreshFailureStatus } from "../authSessionPolicy";
|
|
3
|
+
import { acceptNativeSession, getNativeTransport, nativeSessionGeneration } from "./nativeTransport";
|
|
3
4
|
// Custom API error class — do NOT import from next/dist internals
|
|
4
5
|
class ApiError extends Error {
|
|
5
6
|
constructor(statusCode, message, data) {
|
|
@@ -20,7 +21,7 @@ function uploadWithProgress(url, init, onProgress) {
|
|
|
20
21
|
}
|
|
21
22
|
const request = new XMLHttpRequest();
|
|
22
23
|
request.open(init.method || 'POST', url);
|
|
23
|
-
request.withCredentials =
|
|
24
|
+
request.withCredentials = init.credentials === 'include';
|
|
24
25
|
new Headers(init.headers).forEach((value, key) => request.setRequestHeader(key, value));
|
|
25
26
|
const abort = () => request.abort();
|
|
26
27
|
const cleanup = () => {
|
|
@@ -50,7 +51,7 @@ function uploadWithProgress(url, init, onProgress) {
|
|
|
50
51
|
* Survives browser sessions (unlike cookies which can expire/be cleared).
|
|
51
52
|
* Generated once per browser using crypto.randomUUID().
|
|
52
53
|
*/
|
|
53
|
-
function getOrCreateDeviceId() {
|
|
54
|
+
export function getOrCreateDeviceId() {
|
|
54
55
|
if (typeof window === 'undefined')
|
|
55
56
|
return null; // SSR guard
|
|
56
57
|
try {
|
|
@@ -67,22 +68,33 @@ function getOrCreateDeviceId() {
|
|
|
67
68
|
}
|
|
68
69
|
async function customFetch(input, method, body, options = {}) {
|
|
69
70
|
const { includeAuth = false, retry = true, signal, keepalive } = options;
|
|
70
|
-
const
|
|
71
|
+
const native = getNativeTransport();
|
|
72
|
+
const nativeEpoch = nativeSessionGeneration();
|
|
73
|
+
if (!native && !baseURL)
|
|
74
|
+
throw new ApiError(503, 'API configuration is missing');
|
|
75
|
+
const url = `${native?.apiUrl.replace(/\/$/, '') ?? baseURL}${input}`;
|
|
71
76
|
const isFormData = typeof FormData !== 'undefined' && body instanceof FormData;
|
|
72
77
|
let headers = isFormData
|
|
73
78
|
? { Accept: 'application/json' }
|
|
74
79
|
: { 'Content-Type': 'application/json', Accept: 'application/json' };
|
|
75
80
|
// #2: Attach stable device ID so backend can correctly identify the same browser
|
|
76
|
-
const deviceId = getOrCreateDeviceId();
|
|
81
|
+
const deviceId = native?.deviceId ?? getOrCreateDeviceId();
|
|
77
82
|
if (deviceId) {
|
|
78
83
|
headers['X-Device-Id'] = deviceId;
|
|
79
84
|
}
|
|
80
85
|
headers = { ...headers, ...(options.headers || {}) };
|
|
86
|
+
if (native) {
|
|
87
|
+
const token = includeAuth ? native.accessToken() : null;
|
|
88
|
+
if (token || /^\/users\/(login|verify-otp|refresh-token)(?:$|\?)/.test(input))
|
|
89
|
+
headers = { ...headers, 'X-Trippeaze-Client': 'native' };
|
|
90
|
+
if (token)
|
|
91
|
+
headers = { ...headers, Authorization: `Bearer ${token}` };
|
|
92
|
+
}
|
|
81
93
|
// Browsers attach HTTP-only cookies through credentials. Calling a Next
|
|
82
94
|
// server action here creates an avoidable production-only RSC round trip
|
|
83
95
|
// and can block the actual REST request. Explicit Cookie forwarding is
|
|
84
96
|
// needed only for fetches executing on the server.
|
|
85
|
-
if (includeAuth && typeof window === 'undefined') {
|
|
97
|
+
if (!native && includeAuth && typeof window === 'undefined') {
|
|
86
98
|
try {
|
|
87
99
|
const cookieHeader = await getCookieHeader();
|
|
88
100
|
headers = { ...headers, Cookie: cookieHeader };
|
|
@@ -97,17 +109,22 @@ async function customFetch(input, method, body, options = {}) {
|
|
|
97
109
|
}
|
|
98
110
|
const init = {
|
|
99
111
|
method,
|
|
100
|
-
credentials: includeAuth ? 'include' : 'omit',
|
|
112
|
+
credentials: !native && includeAuth ? 'include' : 'omit',
|
|
101
113
|
headers,
|
|
102
114
|
signal,
|
|
103
115
|
keepalive,
|
|
104
116
|
...(body ? { body: isFormData ? body : JSON.stringify(body) } : {}),
|
|
105
117
|
};
|
|
106
|
-
const response = options.onUploadProgress && isFormData && includeAuth && typeof window !== 'undefined'
|
|
118
|
+
const response = options.onUploadProgress && isFormData && includeAuth && (native || typeof window !== 'undefined')
|
|
107
119
|
? await uploadWithProgress(url, init, options.onUploadProgress)
|
|
108
120
|
: await fetch(url, init);
|
|
121
|
+
if (native && (getNativeTransport() !== native || nativeEpoch !== nativeSessionGeneration()))
|
|
122
|
+
throw new ApiError(401, 'The account changed. Return to your draft before continuing.');
|
|
109
123
|
if (response.ok) {
|
|
110
|
-
|
|
124
|
+
const result = response.status !== 204 ? (await response.json()) : {};
|
|
125
|
+
if (native && (getNativeTransport() !== native || nativeEpoch !== nativeSessionGeneration()))
|
|
126
|
+
throw new ApiError(401, 'The account changed. Return to your draft before continuing.');
|
|
127
|
+
return result;
|
|
111
128
|
}
|
|
112
129
|
// Token refresh logic on 401 (only for authenticated requests)
|
|
113
130
|
if (response.status === 401 && retry && includeAuth && !input.includes('/login')) {
|
|
@@ -124,12 +141,40 @@ async function customFetch(input, method, body, options = {}) {
|
|
|
124
141
|
error: typeof error === 'string' ? error : 'Unknown error',
|
|
125
142
|
};
|
|
126
143
|
}
|
|
127
|
-
throw new ApiError(errorBody.statusCode, errorBody.error
|
|
144
|
+
throw new ApiError(errorBody.statusCode || response.status, errorBody.error || errorBody.message || `Request failed (${response.status})`, errorBody.data);
|
|
128
145
|
}
|
|
129
146
|
// Single in-flight refresh promise — prevents concurrent 401s from firing multiple refresh calls
|
|
130
147
|
let refreshPromise = null;
|
|
131
148
|
// Token refresh function — internal only, not exported
|
|
132
149
|
async function refreshToken(input, method, body, options = {}) {
|
|
150
|
+
const native = getNativeTransport();
|
|
151
|
+
if (native) {
|
|
152
|
+
const generation = nativeSessionGeneration();
|
|
153
|
+
if (!refreshPromise)
|
|
154
|
+
refreshPromise = (async () => {
|
|
155
|
+
const refresh = await native.refreshToken();
|
|
156
|
+
if (!refresh)
|
|
157
|
+
throw new ApiError(401, 'Please sign in again');
|
|
158
|
+
const response = await fetch(`${native.apiUrl.replace(/\/$/, '')}/users/refresh-token`, {
|
|
159
|
+
method: 'POST', credentials: 'omit',
|
|
160
|
+
headers: { 'Content-Type': 'application/json', 'X-Device-Id': native.deviceId, 'X-Trippeaze-Client': 'native' },
|
|
161
|
+
body: JSON.stringify({ refreshToken: refresh }),
|
|
162
|
+
});
|
|
163
|
+
const payload = await response.json();
|
|
164
|
+
if (generation !== nativeSessionGeneration())
|
|
165
|
+
throw new ApiError(401, 'Session changed');
|
|
166
|
+
if (!response.ok) {
|
|
167
|
+
if ([400, 401, 403, 422].includes(response.status))
|
|
168
|
+
await native.clearSession();
|
|
169
|
+
throw new ApiError(normalizeRefreshFailureStatus(response.status), payload.error || 'Session expired');
|
|
170
|
+
}
|
|
171
|
+
await acceptNativeSession(payload.data?.session, generation);
|
|
172
|
+
})().finally(() => { refreshPromise = null; });
|
|
173
|
+
await refreshPromise;
|
|
174
|
+
if (generation !== nativeSessionGeneration())
|
|
175
|
+
throw new ApiError(401, 'Session changed');
|
|
176
|
+
return customFetch(input, method, body, { ...options, includeAuth: true, retry: false });
|
|
177
|
+
}
|
|
133
178
|
let refreshEndpoint = "/auth/session/refresh";
|
|
134
179
|
if (typeof window === "undefined") {
|
|
135
180
|
const accountType = await getAccountType();
|
|
@@ -187,8 +232,8 @@ async function refreshToken(input, method, body, options = {}) {
|
|
|
187
232
|
}
|
|
188
233
|
}
|
|
189
234
|
// ✅ Server-safe exported functions
|
|
190
|
-
export async function get(url, includeAuth = true) {
|
|
191
|
-
return customFetch(url, 'GET', undefined, { includeAuth });
|
|
235
|
+
export async function get(url, includeAuth = true, options = {}) {
|
|
236
|
+
return customFetch(url, 'GET', undefined, { includeAuth, ...options });
|
|
192
237
|
}
|
|
193
238
|
export async function post(url, body, includeAuth = true, options = {}) {
|
|
194
239
|
return customFetch(url, 'POST', body, { includeAuth, ...options });
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { HomeBanner, HomeBannerInput } from "../models/homeBanner";
|
|
2
|
+
export declare function getPublicHomeBanners(): Promise<HomeBanner[]>;
|
|
3
|
+
export declare function getStaffHomeBanners(): Promise<HomeBanner[]>;
|
|
4
|
+
export declare function createHomeBanner(input: HomeBannerInput): Promise<HomeBanner>;
|
|
5
|
+
export declare function updateHomeBanner(id: string, input: HomeBannerInput): Promise<HomeBanner>;
|
|
6
|
+
export declare function reorderHomeBanners(ids: string[]): Promise<void>;
|
|
7
|
+
export declare function deleteHomeBanner(id: string): Promise<void>;
|
|
8
|
+
//# sourceMappingURL=homeBanner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"homeBanner.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/homeBanner.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAIxE,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC,CAGlE;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC,CAGjE;AAYD,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,CAGlF;AAED,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,CAG9F;AAED,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAErE;AAED,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEhE"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { del, get, patch, post, put } from "./fetcher";
|
|
2
|
+
export async function getPublicHomeBanners() {
|
|
3
|
+
const response = await get("/home-banners", false);
|
|
4
|
+
return response.data;
|
|
5
|
+
}
|
|
6
|
+
export async function getStaffHomeBanners() {
|
|
7
|
+
const response = await get("/home-banners/admin");
|
|
8
|
+
return response.data;
|
|
9
|
+
}
|
|
10
|
+
function form(input) {
|
|
11
|
+
const body = new FormData();
|
|
12
|
+
body.set("description", input.description);
|
|
13
|
+
body.set("buttonLabel", input.buttonLabel || "");
|
|
14
|
+
body.set("href", input.href);
|
|
15
|
+
body.set("published", String(Boolean(input.published)));
|
|
16
|
+
if (input.photo)
|
|
17
|
+
body.set("photo", input.photo);
|
|
18
|
+
return body;
|
|
19
|
+
}
|
|
20
|
+
export async function createHomeBanner(input) {
|
|
21
|
+
const response = await post("/home-banners/admin", form(input));
|
|
22
|
+
return response.data;
|
|
23
|
+
}
|
|
24
|
+
export async function updateHomeBanner(id, input) {
|
|
25
|
+
const response = await patch(`/home-banners/admin/${encodeURIComponent(id)}`, form(input));
|
|
26
|
+
return response.data;
|
|
27
|
+
}
|
|
28
|
+
export async function reorderHomeBanners(ids) {
|
|
29
|
+
await put("/home-banners/admin/order", { ids });
|
|
30
|
+
}
|
|
31
|
+
export async function deleteHomeBanner(id) {
|
|
32
|
+
await del(`/home-banners/admin/${encodeURIComponent(id)}`);
|
|
33
|
+
}
|