@myrjfa/state 3.0.8 → 3.0.10
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 +20 -3
- package/dist/lib/actions/auth.d.ts.map +1 -1
- package/dist/lib/actions/auth.js +31 -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 +82 -62
- 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.d.ts.map +1 -1
- package/dist/lib/actions/serverActions.js +3 -2
- 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/authSessionManager.d.ts.map +1 -1
- package/dist/lib/authSessionManager.js +42 -39
- package/dist/lib/authSessionPolicy.d.ts +2 -0
- package/dist/lib/authSessionPolicy.d.ts.map +1 -1
- package/dist/lib/authSessionPolicy.js +3 -1
- 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/userAtom.js +16 -25
- package/dist/lib/utils/authCookies.d.ts +3 -0
- package/dist/lib/utils/authCookies.d.ts.map +1 -0
- package/dist/lib/utils/authCookies.js +4 -0
- 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 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/user.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAK3C,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAe3D;AACD,wBAAsB,cAAc,CAChC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,QAAQ,GAAG,MAAM,GACxB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAmBrG;AAED,eAAO,MAAM,OAAO;wBAEU,MAAM,QAAQ,MAAM;eAED,MAAM;cAAQ,GAAG;;;;;0BAQlC,MAAM,QAAQ,MAAM;eAEH,MAAM;cAAQ,GAAG;;;;;;;6BA4B/B,MAAM,QAAQ,MAAM;mBAEoB,OAAO;oBAAc,OAAO;;CAOtG,CAAC;AAEF,0DAA0D;AAC1D,eAAO,MAAM,WAAW,uBAAiB,CAAC;AAE1C,wBAAsB,cAAc,CAAC,QAAQ,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,CAAC;IAAC,OAAO,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;CAAE,CAAC,CAiB5O"}
|
|
1
|
+
{"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../src/lib/actions/user.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAK3C,oFAAoF;AACpF,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC,CAG7D;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAe3D;AACD,wBAAsB,cAAc,CAChC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,QAAQ,GAAG,MAAM,GACxB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAmBrG;AAED,eAAO,MAAM,OAAO;wBAEU,MAAM,QAAQ,MAAM;eAED,MAAM;cAAQ,GAAG;;;;;0BAQlC,MAAM,QAAQ,MAAM;eAEH,MAAM;cAAQ,GAAG;;;;;;;6BA4B/B,MAAM,QAAQ,MAAM;mBAEoB,OAAO;oBAAc,OAAO;;CAOtG,CAAC;AAEF,0DAA0D;AAC1D,eAAO,MAAM,WAAW,uBAAiB,CAAC;AAE1C,wBAAsB,cAAc,CAAC,QAAQ,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,CAAC;IAAC,OAAO,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;CAAE,CAAC,CAiB5O"}
|
package/dist/lib/actions/user.js
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { get, post } from "./fetcher";
|
|
2
2
|
import { getAccountType } from "./serverActions";
|
|
3
3
|
const BASE_PATH = "/users";
|
|
4
|
+
/** Strict session read for native restoration: outages must not look signed out. */
|
|
5
|
+
export async function getTravellerSessionUser() {
|
|
6
|
+
const response = await get("/users/me");
|
|
7
|
+
return response.data;
|
|
8
|
+
}
|
|
4
9
|
export async function getCurrentUser() {
|
|
5
10
|
try {
|
|
6
11
|
const accountType = await getAccountType();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authSessionManager.d.ts","sourceRoot":"","sources":["../../src/lib/authSessionManager.tsx"],"names":[],"mappings":"AAuBA,MAAM,CAAC,OAAO,UAAU,kBAAkB,
|
|
1
|
+
{"version":3,"file":"authSessionManager.d.ts","sourceRoot":"","sources":["../../src/lib/authSessionManager.tsx"],"names":[],"mappings":"AAuBA,MAAM,CAAC,OAAO,UAAU,kBAAkB,SAiGzC"}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { useAtomValue, useSetAtom } from "jotai";
|
|
3
3
|
import { useEffect } from 'react';
|
|
4
|
-
import { useQuery } from '@tanstack/react-query';
|
|
5
|
-
import { authRevisionAtom,
|
|
6
|
-
import {
|
|
4
|
+
import { useQuery, useQueryClient } from '@tanstack/react-query';
|
|
5
|
+
import { authRevisionAtom, commitLoginAtom, resetAuthStateAtom, authSessionStatusAtom, initializeAuthSessionAtom, isLoggedInAtom, storageInitializedAtom, userAtom, } from "./userAtom";
|
|
6
|
+
import { validateSession } from './actions/auth';
|
|
7
7
|
import { bindSessionFailureToRevision, sessionIdentityMatchesPersistedUser, shouldResetAuthStateForQuery, } from './authSessionPolicy';
|
|
8
8
|
export default function AuthSessionManager() {
|
|
9
|
+
const queryClient = useQueryClient();
|
|
10
|
+
const commitLogin = useSetAtom(commitLoginAtom);
|
|
11
|
+
const updateUser = useSetAtom(userAtom);
|
|
12
|
+
const resetLocal = useSetAtom(resetAuthStateAtom);
|
|
9
13
|
const initializeAuthSession = useSetAtom(initializeAuthSessionAtom);
|
|
10
|
-
const beginAuthCleanup = useSetAtom(beginAuthCleanupAtom);
|
|
11
|
-
const finishAuthCleanup = useSetAtom(finishAuthCleanupAtom);
|
|
12
14
|
const setAuthSessionStatus = useSetAtom(authSessionStatusAtom);
|
|
13
15
|
const authRevision = useAtomValue(authRevisionAtom);
|
|
14
16
|
const user = useAtomValue(userAtom);
|
|
@@ -24,6 +26,16 @@ export default function AuthSessionManager() {
|
|
|
24
26
|
});
|
|
25
27
|
return () => window.cancelAnimationFrame(frame);
|
|
26
28
|
}, [initializeAuthSession]);
|
|
29
|
+
useEffect(() => {
|
|
30
|
+
const reconcile = (event) => {
|
|
31
|
+
if (event.key === process.env.NEXT_PUBLIC_USER_KEY || event.key === process.env.NEXT_PUBLIC_LOGIN_KEY) {
|
|
32
|
+
setAuthSessionStatus("validating");
|
|
33
|
+
void queryClient.invalidateQueries({ queryKey: ["session"] });
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
window.addEventListener("storage", reconcile);
|
|
37
|
+
return () => window.removeEventListener("storage", reconcile);
|
|
38
|
+
}, [queryClient, setAuthSessionStatus]);
|
|
27
39
|
// --- Continuous Background Re-validation ---
|
|
28
40
|
const { data: sessionResult, error, } = useQuery({
|
|
29
41
|
queryKey: ["session", authRevision],
|
|
@@ -38,62 +50,53 @@ export default function AuthSessionManager() {
|
|
|
38
50
|
throw bindSessionFailureToRevision(queryError, authRevision);
|
|
39
51
|
}
|
|
40
52
|
},
|
|
41
|
-
refetchOnWindowFocus:
|
|
42
|
-
refetchOnReconnect:
|
|
53
|
+
refetchOnWindowFocus: "always",
|
|
54
|
+
refetchOnReconnect: "always",
|
|
43
55
|
retry: (failureCount, err) => {
|
|
44
56
|
if (err?.statusCode === 401)
|
|
45
57
|
return false;
|
|
46
58
|
return failureCount < 2;
|
|
47
59
|
},
|
|
48
60
|
staleTime: 15 * 60 * 1000,
|
|
49
|
-
enabled: storageInitialized
|
|
61
|
+
enabled: storageInitialized,
|
|
50
62
|
});
|
|
51
63
|
// Clear auth state only when the backend explicitly says the session is invalid (401).
|
|
52
64
|
// Network errors or 5xx (backend down) are ignored to avoid false logouts.
|
|
53
65
|
useEffect(() => {
|
|
54
|
-
|
|
55
|
-
if (!isLoggedIn && !user)
|
|
66
|
+
if (!storageInitialized)
|
|
56
67
|
return;
|
|
57
|
-
const
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
? sessionResult
|
|
65
|
-
: null;
|
|
66
|
-
if (shouldClearRejectedOrInvalidSession || (currentSuccessfulResult
|
|
67
|
-
&& !sessionIdentityMatchesPersistedUser(currentSuccessfulResult.session.identity, user))) {
|
|
68
|
-
// Keep auth controls non-interactive until the Set-Cookie cleanup
|
|
69
|
-
// response settles; otherwise a delayed response can erase a new
|
|
70
|
-
// login performed while cleanup is still in flight.
|
|
71
|
-
beginAuthCleanup();
|
|
72
|
-
const cleanupRevision = authRevision + 1;
|
|
73
|
-
void (async () => {
|
|
74
|
-
try {
|
|
75
|
-
await clearSessionCookies();
|
|
76
|
-
}
|
|
77
|
-
finally {
|
|
78
|
-
finishAuthCleanup(cleanupRevision);
|
|
79
|
-
}
|
|
80
|
-
})();
|
|
68
|
+
const current = sessionResult?.revision === authRevision ? sessionResult.session : null;
|
|
69
|
+
const rejected = shouldResetAuthStateForQuery({ session: current, sessionRevision: sessionResult?.revision, error: error, currentRevision: authRevision });
|
|
70
|
+
if (rejected) {
|
|
71
|
+
if (isLoggedIn || user)
|
|
72
|
+
resetLocal();
|
|
73
|
+
else
|
|
74
|
+
setAuthSessionStatus("signed-out");
|
|
81
75
|
return;
|
|
82
76
|
}
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
77
|
+
if (!current?.success) {
|
|
78
|
+
if (error && !user)
|
|
79
|
+
setAuthSessionStatus("signed-out");
|
|
86
80
|
return;
|
|
81
|
+
}
|
|
82
|
+
if (!sessionIdentityMatchesPersistedUser(current.identity, user)) {
|
|
83
|
+
if (current.user)
|
|
84
|
+
commitLogin(current.user);
|
|
85
|
+
else
|
|
86
|
+
resetLocal();
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
if (current.user && JSON.stringify(current.user) !== JSON.stringify(user))
|
|
90
|
+
updateUser(current.user);
|
|
87
91
|
setAuthSessionStatus("authenticated");
|
|
88
92
|
}, [
|
|
93
|
+
commitLogin, resetLocal, updateUser,
|
|
89
94
|
sessionResult,
|
|
90
95
|
error,
|
|
91
96
|
authRevision,
|
|
92
97
|
isLoggedIn,
|
|
93
98
|
storageInitialized,
|
|
94
99
|
user,
|
|
95
|
-
beginAuthCleanup,
|
|
96
|
-
finishAuthCleanup,
|
|
97
100
|
setAuthSessionStatus,
|
|
98
101
|
]);
|
|
99
102
|
return null;
|
|
@@ -24,6 +24,8 @@ export interface PersistedIdentityLike {
|
|
|
24
24
|
export type AuthSessionStatus = "initializing" | "clearing" | "signed-out" | "validating" | "authenticated";
|
|
25
25
|
export declare function isAuthSessionPending(status: AuthSessionStatus): boolean;
|
|
26
26
|
export declare function canFinishAuthCleanup(expectedRevision: number, currentRevision: number): boolean;
|
|
27
|
+
/** Legacy explicit-cleanup compatibility export. Never call this merely because
|
|
28
|
+
* an origin-local profile cache is absent; reconcile the cookie session instead. */
|
|
27
29
|
export declare function clearCacheMissSessionBoundary({ cleanupRevision, getCurrentRevision, clearSession, }: {
|
|
28
30
|
cleanupRevision: number;
|
|
29
31
|
getCurrentRevision: () => number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authSessionPolicy.d.ts","sourceRoot":"","sources":["../../src/lib/authSessionPolicy.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,wBAAyB,SAAQ,kBAAkB;IAChE,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,qBAAqB;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,eAAe;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACvC,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,qBAAqB;IAClC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACxC,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAClC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED,MAAM,MAAM,iBAAiB,GACvB,cAAc,GACd,UAAU,GACV,YAAY,GACZ,YAAY,GACZ,eAAe,CAAC;AAEtB,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAIvE;AAED,wBAAgB,oBAAoB,CAChC,gBAAgB,EAAE,MAAM,EACxB,eAAe,EAAE,MAAM,GACxB,OAAO,CAET;AAED,wBAAsB,6BAA6B,CAAC,EAChD,eAAe,EACf,kBAAkB,EAClB,YAAY,GACf,EAAE;IACC,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,MAAM,CAAC;IACjC,YAAY,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACrC,GAAG,OAAO,CAAC,OAAO,CAAC,CAInB;AAED,wBAAgB,4BAA4B,CACxC,KAAK,EAAE,OAAO,EACd,YAAY,EAAE,MAAM,GACrB,wBAAwB,CAO1B;AAED,wBAAgB,4BAA4B,CAAC,EACzC,OAAO,EACP,eAAe,EACf,KAAK,EACL,eAAe,GAClB,EAAE;IACC,OAAO,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACvC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,wBAAwB,GAAG,IAAI,CAAC;IACxC,eAAe,EAAE,MAAM,CAAC;CAC3B,GAAG,OAAO,CAIV;AAED,wBAAgB,uBAAuB,CACnC,IAAI,EAAE,qBAAqB,GAC5B,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAMlC;AAED,wBAAgB,6BAA6B,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAExE;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAE9F;AAED,wBAAgB,oBAAoB,CAChC,OAAO,EAAE,qBAAqB,GAAG,IAAI,GAAG,SAAS,EACjD,KAAK,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,GAC7C,OAAO,CAET;AAED,wBAAgB,mCAAmC,CAC/C,QAAQ,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,EAC5C,IAAI,EAAE,qBAAqB,GAAG,IAAI,GAAG,SAAS,GAC/C,OAAO,CAcT"}
|
|
1
|
+
{"version":3,"file":"authSessionPolicy.d.ts","sourceRoot":"","sources":["../../src/lib/authSessionPolicy.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,wBAAyB,SAAQ,kBAAkB;IAChE,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,qBAAqB;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,eAAe;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACvC,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,qBAAqB;IAClC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACxC,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAClC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED,MAAM,MAAM,iBAAiB,GACvB,cAAc,GACd,UAAU,GACV,YAAY,GACZ,YAAY,GACZ,eAAe,CAAC;AAEtB,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAIvE;AAED,wBAAgB,oBAAoB,CAChC,gBAAgB,EAAE,MAAM,EACxB,eAAe,EAAE,MAAM,GACxB,OAAO,CAET;AAED;oFACoF;AACpF,wBAAsB,6BAA6B,CAAC,EAChD,eAAe,EACf,kBAAkB,EAClB,YAAY,GACf,EAAE;IACC,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,MAAM,CAAC;IACjC,YAAY,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACrC,GAAG,OAAO,CAAC,OAAO,CAAC,CAInB;AAED,wBAAgB,4BAA4B,CACxC,KAAK,EAAE,OAAO,EACd,YAAY,EAAE,MAAM,GACrB,wBAAwB,CAO1B;AAED,wBAAgB,4BAA4B,CAAC,EACzC,OAAO,EACP,eAAe,EACf,KAAK,EACL,eAAe,GAClB,EAAE;IACC,OAAO,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACvC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,wBAAwB,GAAG,IAAI,CAAC;IACxC,eAAe,EAAE,MAAM,CAAC;CAC3B,GAAG,OAAO,CAIV;AAED,wBAAgB,uBAAuB,CACnC,IAAI,EAAE,qBAAqB,GAC5B,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAMlC;AAED,wBAAgB,6BAA6B,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAExE;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAE9F;AAED,wBAAgB,oBAAoB,CAChC,OAAO,EAAE,qBAAqB,GAAG,IAAI,GAAG,SAAS,EACjD,KAAK,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,GAC7C,OAAO,CAET;AAED,wBAAgB,mCAAmC,CAC/C,QAAQ,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,EAC5C,IAAI,EAAE,qBAAqB,GAAG,IAAI,GAAG,SAAS,GAC/C,OAAO,CAcT"}
|
|
@@ -6,6 +6,8 @@ export function isAuthSessionPending(status) {
|
|
|
6
6
|
export function canFinishAuthCleanup(expectedRevision, currentRevision) {
|
|
7
7
|
return expectedRevision === currentRevision;
|
|
8
8
|
}
|
|
9
|
+
/** Legacy explicit-cleanup compatibility export. Never call this merely because
|
|
10
|
+
* an origin-local profile cache is absent; reconcile the cookie session instead. */
|
|
9
11
|
export async function clearCacheMissSessionBoundary({ cleanupRevision, getCurrentRevision, clearSession, }) {
|
|
10
12
|
if (getCurrentRevision() !== cleanupRevision)
|
|
11
13
|
return false;
|
|
@@ -38,7 +40,7 @@ export function getPersistedAccountType(user) {
|
|
|
38
40
|
return null;
|
|
39
41
|
}
|
|
40
42
|
export function normalizeRefreshFailureStatus(statusCode) {
|
|
41
|
-
return
|
|
43
|
+
return [400, 401, 403, 422].includes(statusCode) ? 401 : statusCode;
|
|
42
44
|
}
|
|
43
45
|
export function isExpectedSignedOutError(error) {
|
|
44
46
|
return error?.statusCode === 401;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catalogueLocations.d.ts","sourceRoot":"","sources":["../../../src/lib/data/catalogueLocations.ts"],"names":[],"mappings":"AAAA,uGAAuG;AACvG,eAAO,MAAM,wBAAwB,EAAE,MAAM,EAmB5C,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/** Exact legacy website catalogue city suggestions; distinct from the richer destination directory. */
|
|
2
|
+
export const WEBSITE_DISCOVERY_CITIES = [
|
|
3
|
+
"Manali", "Shimla", "Spiti Valley", "Kasol", "Mcleod Ganj", "Dharamshala", "Dalhousie", "Kullu", "Kinnaur",
|
|
4
|
+
"Rishikesh", "Haridwar", "Nainital", "Mussoorie", "Dehradun", "Auli", "Lansdowne", "Ranikhet", "Jim Corbett", "Chopta",
|
|
5
|
+
"Darjeeling", "Kalimpong", "Gangtok", "Pelling", "Lachung",
|
|
6
|
+
"Shillong", "Cherrapunji", "Mawlynnong", "Tawang", "Ziro",
|
|
7
|
+
"Srinagar", "Gulmarg", "Pahalgam", "Sonamarg", "Vaishno Devi",
|
|
8
|
+
"Ladakh", "Leh", "Nubra Valley", "Pangong Lake", "Tso Moriri", "Zanskar Valley",
|
|
9
|
+
"Jaipur", "Udaipur", "Jodhpur", "Jaisalmer", "Pushkar", "Ajmer", "Bikaner", "Mount Abu", "Ranthambore", "Bundi", "Chittorgarh",
|
|
10
|
+
"Goa", "Panaji", "Calangute", "Arambol", "Palolem",
|
|
11
|
+
"Munnar", "Alleppey", "Varkala", "Kochi", "Wayanad", "Thekkady", "Kozhikode", "Kovalam", "Kannur", "Vagamon",
|
|
12
|
+
"Ooty", "Kodaikanal", "Chennai", "Madurai", "Coimbatore", "Pondicherry", "Rameswaram", "Kanyakumari", "Mahabalipuram", "Yercaud",
|
|
13
|
+
"Coorg", "Mysore", "Bangalore", "Hampi", "Badami", "Chikmagalur", "Dandeli", "Mangalore", "Udupi", "Gokarna", "Sakleshpur", "Nagarhole",
|
|
14
|
+
"Mumbai", "Pune", "Mahabaleshwar", "Lonavala", "Alibaug", "Aurangabad", "Nagpur", "Nashik", "Shirdi", "Kolhapur", "Matheran", "Tadoba",
|
|
15
|
+
"Ahmedabad", "Surat", "Rann of Kutch", "Dwarka", "Somnath", "Gir", "Vadodara", "Rajkot", "Mandvi", "Saputara",
|
|
16
|
+
"Varanasi", "Agra", "Lucknow", "Prayagraj", "Mathura", "Vrindavan", "Ayodhya", "Kanpur",
|
|
17
|
+
"Delhi", "Kolkata", "Hyderabad", "Chandigarh", "Amritsar", "Bhubaneswar", "Patna",
|
|
18
|
+
"Andaman Islands", "Havelock Island", "Lakshadweep", "Puri", "Vizag", "Tirupati",
|
|
19
|
+
"Khajuraho", "Bhopal", "Indore", "Ujjain", "Orchha", "Pachmarhi", "Bandhavgarh", "Kanha",
|
|
20
|
+
"Kaziranga", "Guwahati", "Majuli", "Imphal", "Kohima", "Shillong",
|
|
21
|
+
];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../../src/lib/data/skills.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,eAAO,MAAM,aAAa;;GA+FzB,CAAC"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/** Existing website suggestions; custom application skills remain supported. */
|
|
2
|
+
export const skillsOptions = [
|
|
3
|
+
{ title: "Graphic Design" },
|
|
4
|
+
{ title: "Branding" },
|
|
5
|
+
{ title: "UI/UX" },
|
|
6
|
+
{ title: "Motion Graphics" },
|
|
7
|
+
{ title: "Video Editing" },
|
|
8
|
+
{ title: "Photography" },
|
|
9
|
+
{ title: "Illustration" },
|
|
10
|
+
{ title: "Copywriting" },
|
|
11
|
+
{ title: "Content Writing" },
|
|
12
|
+
{ title: "Social Media" },
|
|
13
|
+
{ title: "SEO" },
|
|
14
|
+
{ title: "UX Research" },
|
|
15
|
+
{ title: "AR Design" },
|
|
16
|
+
{ title: "3D Modeling" },
|
|
17
|
+
{ title: "Typography" },
|
|
18
|
+
{ title: "Email Marketing" },
|
|
19
|
+
{ title: "Influencer Marketing" },
|
|
20
|
+
{ title: "Growth Hacking" },
|
|
21
|
+
{ title: "No-Code Development" },
|
|
22
|
+
{ title: "Art Direction" },
|
|
23
|
+
{ title: "Web Development" },
|
|
24
|
+
{ title: "E-commerce" },
|
|
25
|
+
{ title: "Podcasting" },
|
|
26
|
+
{ title: "Data Visualization" },
|
|
27
|
+
{ title: "Advertising" },
|
|
28
|
+
{ title: "Web Animation" },
|
|
29
|
+
{ title: "Music Production" },
|
|
30
|
+
{ title: "NFT Strategy" },
|
|
31
|
+
{ title: "AI Content Creation" },
|
|
32
|
+
{ title: "Innovator" },
|
|
33
|
+
{ title: "Writer" },
|
|
34
|
+
{ title: "Content Creator" },
|
|
35
|
+
{ title: "Photographer" },
|
|
36
|
+
{ title: "Videographer" },
|
|
37
|
+
{ title: "Musician" },
|
|
38
|
+
{ title: "Comedian" },
|
|
39
|
+
{ title: "Architect" },
|
|
40
|
+
{ title: "Interior Design" },
|
|
41
|
+
{ title: "Event Management" },
|
|
42
|
+
{ title: "Community Engagement" },
|
|
43
|
+
{ title: "Chef" },
|
|
44
|
+
{ title: "Teacher" },
|
|
45
|
+
{ title: "Wildlife Conservation" },
|
|
46
|
+
{ title: "Hospitality Management" },
|
|
47
|
+
{ title: "Web Designer" },
|
|
48
|
+
{ title: "Digital Marketing" },
|
|
49
|
+
{ title: "Sales" },
|
|
50
|
+
{ title: "Business Development" },
|
|
51
|
+
{ title: "Public Relations" },
|
|
52
|
+
{ title: "HR" },
|
|
53
|
+
{ title: "Supply Chain" },
|
|
54
|
+
{ title: "Operations" },
|
|
55
|
+
{ title: "Farming" },
|
|
56
|
+
{ title: "Tour Guide" },
|
|
57
|
+
{ title: "Gardening" },
|
|
58
|
+
{ title: "Bartending" },
|
|
59
|
+
{ title: "Kitchen Help" },
|
|
60
|
+
{ title: "Pottery" },
|
|
61
|
+
{ title: "Jewelry Design" },
|
|
62
|
+
{ title: "Scientist" },
|
|
63
|
+
{ title: "Language Teaching" },
|
|
64
|
+
{ title: "Artist" },
|
|
65
|
+
{ title: "Grant Writing" },
|
|
66
|
+
{ title: "Waste Management" },
|
|
67
|
+
{ title: "Experience Design" },
|
|
68
|
+
{ title: "Wall Art" },
|
|
69
|
+
{ title: "Upcycling" },
|
|
70
|
+
{ title: "Party Promotion" },
|
|
71
|
+
{ title: "Crafting" },
|
|
72
|
+
{ title: "Social Media Management" },
|
|
73
|
+
{ title: "Community Management" },
|
|
74
|
+
{ title: "Creative Writing" },
|
|
75
|
+
{ title: "Blogging" },
|
|
76
|
+
{ title: "Scriptwriting" },
|
|
77
|
+
{ title: "Voiceover" },
|
|
78
|
+
{ title: "Animation" },
|
|
79
|
+
{ title: "Photo Editing" },
|
|
80
|
+
{ title: "Sound Design" },
|
|
81
|
+
{ title: "Live Streaming" },
|
|
82
|
+
{ title: "Wireframing" },
|
|
83
|
+
{ title: "Prototyping" },
|
|
84
|
+
{ title: "Visual Design" },
|
|
85
|
+
{ title: "Campaign Strategy" },
|
|
86
|
+
{ title: "Marketing Strategy" },
|
|
87
|
+
{ title: "Content Strategy" },
|
|
88
|
+
{ title: "Creative Strategy" },
|
|
89
|
+
{ title: "Digital Illustration" },
|
|
90
|
+
{ title: "Color Grading" },
|
|
91
|
+
{ title: "Editing" },
|
|
92
|
+
{ title: "Subtitling" },
|
|
93
|
+
{ title: "Voice Editing" },
|
|
94
|
+
{ title: "Photography Styling" },
|
|
95
|
+
{ title: "Property Management" },
|
|
96
|
+
{ title: "Decoration" },
|
|
97
|
+
];
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ApplicationInput } from "../models/application";
|
|
2
|
+
/** The existing multipart endpoints strip sentinel values around skills. */
|
|
3
|
+
export declare function applicationFormData(input: ApplicationInput, editing?: boolean): FormData;
|
|
4
|
+
//# sourceMappingURL=application.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../../../src/lib/forms/application.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,4EAA4E;AAC5E,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,gBAAgB,EACvB,OAAO,UAAQ,GACd,QAAQ,CAYV"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { appendUploadFile } from "../utils/uploadFile";
|
|
2
|
+
/** The existing multipart endpoints strip sentinel values around skills. */
|
|
3
|
+
export function applicationFormData(input, editing = false) {
|
|
4
|
+
const body = new FormData();
|
|
5
|
+
body.append("opportunityId", input.opportunityId);
|
|
6
|
+
body.append("skills", "start");
|
|
7
|
+
input.skills.forEach((skill) => body.append("skills", skill));
|
|
8
|
+
body.append("skills", "end");
|
|
9
|
+
body.append("fromDate", input.fromDate);
|
|
10
|
+
body.append("toDate", input.toDate);
|
|
11
|
+
body.append("helpAnswer", input.helpAnswer);
|
|
12
|
+
if (input.resume)
|
|
13
|
+
appendUploadFile(body, "resume", input.resume);
|
|
14
|
+
if (editing)
|
|
15
|
+
body.append("status", "pending");
|
|
16
|
+
return body;
|
|
17
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"packageEnquiry.d.ts","sourceRoot":"","sources":["../../../src/lib/forms/packageEnquiry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,yEAAyE;AACzE,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,mBAAmB,GAAG,QAAQ,CAS3E"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** The create route uses multer.none and JSON-encoded activity names. */
|
|
2
|
+
export function packageEnquiryFormData(input) {
|
|
3
|
+
const body = new FormData();
|
|
4
|
+
body.append("packageId", input.packageId);
|
|
5
|
+
body.append("males", String(input.males));
|
|
6
|
+
body.append("females", String(input.females));
|
|
7
|
+
body.append("message", input.message);
|
|
8
|
+
if (input.desiredStartDate)
|
|
9
|
+
body.append("desiredStartDate", input.desiredStartDate);
|
|
10
|
+
body.append("selectedActivities", JSON.stringify(input.selectedActivities));
|
|
11
|
+
return body;
|
|
12
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ReviewFormData, reviewTargetType } from "../models/review";
|
|
2
|
+
export declare function reviewRequestBody(input: ReviewFormData, target?: {
|
|
3
|
+
id: string;
|
|
4
|
+
type: reviewTargetType;
|
|
5
|
+
}): FormData | Record<string, unknown>;
|
|
6
|
+
//# sourceMappingURL=review.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review.d.ts","sourceRoot":"","sources":["../../../src/lib/forms/review.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzE,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,cAAc,EACrB,MAAM,CAAC,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,gBAAgB,CAAA;CAAE,GAC9C,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAmBpC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { appendUploadFile } from "../utils/uploadFile";
|
|
2
|
+
export function reviewRequestBody(input, target) {
|
|
3
|
+
const images = input.images?.filter((image) => typeof image !== "string") || [];
|
|
4
|
+
if (images.length) {
|
|
5
|
+
const body = new FormData();
|
|
6
|
+
if (target) {
|
|
7
|
+
body.append("reviewee", target.id);
|
|
8
|
+
body.append("revieweeType", target.type);
|
|
9
|
+
}
|
|
10
|
+
body.append("rating", String(input.rating));
|
|
11
|
+
body.append("comment", input.comment || "");
|
|
12
|
+
images.forEach((image) => appendUploadFile(body, "images", image));
|
|
13
|
+
return body;
|
|
14
|
+
}
|
|
15
|
+
return {
|
|
16
|
+
...(target ? { reviewee: target.id, revieweeType: target.type } : {}),
|
|
17
|
+
rating: input.rating,
|
|
18
|
+
comment: input.comment,
|
|
19
|
+
};
|
|
20
|
+
}
|
|
@@ -21,6 +21,27 @@ export interface Application {
|
|
|
21
21
|
tripEndDate: string;
|
|
22
22
|
createdAt: string;
|
|
23
23
|
updatedAt: string;
|
|
24
|
+
isDeleted?: boolean;
|
|
25
|
+
membershipAccessSnapshot?: {
|
|
26
|
+
requiredTier?: string;
|
|
27
|
+
currentTier?: string;
|
|
28
|
+
requirementStatus?: string;
|
|
29
|
+
passUsed?: boolean;
|
|
30
|
+
benefitKey?: string;
|
|
31
|
+
lifetimeLimit?: number;
|
|
32
|
+
};
|
|
24
33
|
}
|
|
34
|
+
/** Common traveller form supported by every opportunity category. */
|
|
35
|
+
export interface ApplicationInput {
|
|
36
|
+
opportunityId: string;
|
|
37
|
+
skills: string[];
|
|
38
|
+
fromDate: string;
|
|
39
|
+
toDate: string;
|
|
40
|
+
helpAnswer: string;
|
|
41
|
+
resume?: import('../utils/uploadFile').UploadFile;
|
|
42
|
+
}
|
|
43
|
+
export type ApplicationSummary = Pick<Application, '_id' | 'status' | 'tripStartDate' | 'tripEndDate' | 'opportunityId' | 'opportunityType' | 'hostId' | 'opportunityTitle'> & {
|
|
44
|
+
isDeleted?: boolean;
|
|
45
|
+
};
|
|
25
46
|
export declare const mockApplications: Application[];
|
|
26
47
|
//# sourceMappingURL=application.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../../../src/lib/models/application.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,eAAe,GAAG,UAAU,GAAG,WAAW,GAAG,QAAQ,CAAC;AAElG,MAAM,WAAW,WAAW;IACxB,GAAG,EAAE,MAAM,CAAC;IAEZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,WAAW,GAAG,KAAK,GAAG,YAAY,GAAG,WAAW,GAAG,gBAAgB,CAAC;IACtF,QAAQ,EAAE,MAAM,CAAC;IAEjB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../../../src/lib/models/application.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,eAAe,GAAG,UAAU,GAAG,WAAW,GAAG,QAAQ,CAAC;AAElG,MAAM,WAAW,WAAW;IACxB,GAAG,EAAE,MAAM,CAAC;IAEZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,WAAW,GAAG,KAAK,GAAG,YAAY,GAAG,WAAW,GAAG,gBAAgB,CAAC;IACtF,QAAQ,EAAE,MAAM,CAAC;IAEjB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wBAAwB,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3K;AAED,qEAAqE;AACrE,MAAM,WAAW,gBAAgB;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,qBAAqB,EAAE,UAAU,CAAC;CACrD;AACD,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,WAAW,EAAE,KAAK,GAAG,QAAQ,GAAG,eAAe,GAAG,aAAa,GAAG,eAAe,GAAG,iBAAiB,GAAG,QAAQ,GAAG,kBAAkB,CAAC,GAAG;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEvM,eAAO,MAAM,gBAAgB,EAAE,WAAW,EAiIzC,CAAC"}
|
|
@@ -110,7 +110,7 @@ export declare function canAccessListingEditor(actor: PermissionAwareActor | nul
|
|
|
110
110
|
export declare function canAccessOpportunityApplicationReview(actor: PermissionAwareActor | null | undefined): boolean;
|
|
111
111
|
export declare function canManageOpportunityApplicationReview(actor: PermissionAwareActor | null | undefined): boolean;
|
|
112
112
|
export declare function getOpportunityApplicationApprovalStatus(actor: PermissionAwareActor | null | undefined): "adminApproved" | "approved";
|
|
113
|
-
export declare function getAdminDashboardRoutePermissions(pathname: string): readonly ["listings.moderate"] | readonly ["content.moderate"] | readonly ["payouts.read", "payouts.record"] | readonly ["roles.read", "roles.manage", "permissions.read", "permissions.manage"] | readonly ["verification.read", "verification.manage", "users.manage", "hosts.manage", "staff.manage"] | readonly ["opportunities.applications.read"] | readonly ["bookings.read.all", "bookings.manage.all"] | readonly ["itinerary_orders.read.all", "itinerary_orders.fulfill", "itinerary_orders.refunds.manage"] | readonly [];
|
|
113
|
+
export declare function getAdminDashboardRoutePermissions(pathname: string): readonly ["listings.moderate"] | readonly ["content.moderate"] | readonly ["payouts.read", "payouts.record"] | readonly ["roles.read", "roles.manage", "permissions.read", "permissions.manage"] | readonly ["verification.read", "verification.manage", "users.manage", "hosts.manage", "staff.manage"] | readonly ["opportunities.applications.read"] | readonly ["bookings.read.all", "bookings.manage.all"] | readonly ["platform.settings.manage"] | readonly ["itinerary_orders.read.all", "itinerary_orders.fulfill", "itinerary_orders.refunds.manage"] | readonly [];
|
|
114
114
|
export declare function hasAdminDashboardRouteAccess(actor: PermissionAwareActor | null | undefined, pathname: string): boolean;
|
|
115
115
|
export declare function getHostDashboardRoutePermissions(pathname: string): readonly ["listings.moderate"] | readonly ["opportunities.applications.read"] | readonly ["bookings.read.all", "bookings.manage.all"] | readonly [] | readonly ["listings.create"];
|
|
116
116
|
export declare function hasHostDashboardRouteAccess(actor: PermissionAwareActor | null | undefined, pathname: string): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authorization.d.ts","sourceRoot":"","sources":["../../../src/lib/models/authorization.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"authorization.d.ts","sourceRoot":"","sources":["../../../src/lib/models/authorization.ts"],"names":[],"mappings":"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"}
|
|
@@ -259,6 +259,8 @@ export function getOpportunityApplicationApprovalStatus(actor) {
|
|
|
259
259
|
}
|
|
260
260
|
export function getAdminDashboardRoutePermissions(pathname) {
|
|
261
261
|
const path = String(pathname || "").toLowerCase();
|
|
262
|
+
if (path.startsWith("/dashboard/staff/home-banners"))
|
|
263
|
+
return ["platform.settings.manage"];
|
|
262
264
|
if (path.includes("/registrations"))
|
|
263
265
|
return ADMIN_ROUTE_PERMISSION_GROUPS.registrations;
|
|
264
266
|
if (path.startsWith("/dashboard/staff/applications")) {
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
export type BookingStatus = "pending" | "confirmed" | "cancelled" | "completed" | "refunded";
|
|
2
2
|
export type PaymentStatus = "pending" | "paid" | "failed" | "refunded";
|
|
3
3
|
export interface Booking {
|
|
4
|
+
recordSource?: "generic" | "stay" | "event" | "enquiry";
|
|
5
|
+
enquirySnapshot?: import("./enquiry").TravellerEnquirySnapshot;
|
|
4
6
|
_id: string;
|
|
5
7
|
userId: string | {
|
|
6
8
|
_id?: string;
|
|
@@ -28,6 +30,7 @@ export interface Booking {
|
|
|
28
30
|
homeDeliveryCharge?: number;
|
|
29
31
|
numberOfPeople: number;
|
|
30
32
|
totalPrice: number;
|
|
33
|
+
upfrontPaymentAmount?: number;
|
|
31
34
|
currency: string;
|
|
32
35
|
status: BookingStatus;
|
|
33
36
|
paymentStatus: PaymentStatus;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"booking.d.ts","sourceRoot":"","sources":["../../../src/lib/models/booking.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"booking.d.ts","sourceRoot":"","sources":["../../../src/lib/models/booking.ts"],"names":[],"mappings":"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"}
|
|
@@ -105,6 +105,14 @@ export interface Conversation {
|
|
|
105
105
|
updatedAt: string;
|
|
106
106
|
preference: ConversationPreference;
|
|
107
107
|
}
|
|
108
|
+
/** Presentation capabilities mirror returned membership/send constraints; APIs remain authoritative. */
|
|
109
|
+
export declare function getChatViewerCapabilities(conversation: Conversation | null | undefined, actor: ChatActorRef | null | undefined, now?: number): {
|
|
110
|
+
active: boolean;
|
|
111
|
+
admin: boolean;
|
|
112
|
+
canSend: boolean;
|
|
113
|
+
reason: string;
|
|
114
|
+
participant: Participant | undefined;
|
|
115
|
+
};
|
|
108
116
|
export interface MediaItem {
|
|
109
117
|
url: string;
|
|
110
118
|
mimeType: string;
|