@myrjfa/state 2.3.1 → 2.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (179) hide show
  1. package/dist/lib/actions/actions.d.ts +6 -6
  2. package/dist/lib/actions/auth.d.ts +23 -19
  3. package/dist/lib/actions/auth.d.ts.map +1 -1
  4. package/dist/lib/actions/auth.js +24 -5
  5. package/dist/lib/actions/chat.d.ts +20 -14
  6. package/dist/lib/actions/chat.d.ts.map +1 -1
  7. package/dist/lib/actions/chat.js +2 -2
  8. package/dist/lib/actions/fetcher.d.ts.map +1 -1
  9. package/dist/lib/actions/fetcher.js +15 -8
  10. package/dist/lib/actions.d.ts +12 -12
  11. package/dist/lib/actions.d.ts.map +1 -1
  12. package/dist/lib/actions.js +3 -1
  13. package/dist/lib/authSessionManager.d.ts.map +1 -1
  14. package/dist/lib/authSessionManager.js +77 -13
  15. package/dist/lib/authSessionPolicy.d.ts +34 -0
  16. package/dist/lib/authSessionPolicy.d.ts.map +1 -1
  17. package/dist/lib/authSessionPolicy.js +52 -0
  18. package/dist/lib/context/ChatContext.d.ts.map +1 -1
  19. package/dist/lib/context/ChatContext.js +12 -6
  20. package/dist/lib/models/authorization.d.ts +4 -3
  21. package/dist/lib/models/authorization.d.ts.map +1 -1
  22. package/dist/lib/models/authorization.js +10 -4
  23. package/dist/lib/models/blog.d.ts +4 -4
  24. package/dist/lib/models/chat.d.ts +10 -2
  25. package/dist/lib/models/chat.d.ts.map +1 -1
  26. package/dist/lib/models/chat.js +8 -0
  27. package/dist/lib/models/discount.d.ts +52 -52
  28. package/dist/lib/models/notifications.d.ts +2 -2
  29. package/dist/lib/models/opportunities/freelance.d.ts +34 -34
  30. package/dist/lib/models/opportunities/internship.d.ts +34 -34
  31. package/dist/lib/models/opportunities/job.d.ts +34 -34
  32. package/dist/lib/models/opportunities/opportunity.d.ts +34 -34
  33. package/dist/lib/models/opportunities/volunteerJob.d.ts +34 -34
  34. package/dist/lib/models/package.d.ts +16 -16
  35. package/dist/lib/models/portfolio.d.ts +2 -2
  36. package/dist/lib/models/pricing.d.ts +12 -12
  37. package/dist/lib/models/review.d.ts +2 -2
  38. package/dist/lib/models/stay.d.ts +18 -18
  39. package/dist/lib/models/travelPackage.d.ts +36 -36
  40. package/dist/lib/models/user.d.ts +12 -12
  41. package/dist/lib/userAtom.d.ts +126 -25
  42. package/dist/lib/userAtom.d.ts.map +1 -1
  43. package/dist/lib/userAtom.js +79 -45
  44. package/package.json +1 -1
  45. package/dist/lib/actions/adminDashboard.d.ts +0 -4
  46. package/dist/lib/actions/adminDashboard.d.ts.map +0 -1
  47. package/dist/lib/actions/adminDashboard.js +0 -29
  48. package/dist/lib/actions/adventure.d.ts +0 -104
  49. package/dist/lib/actions/adventure.d.ts.map +0 -1
  50. package/dist/lib/actions/adventure.js +0 -203
  51. package/dist/lib/actions/application.d.ts +0 -35
  52. package/dist/lib/actions/application.d.ts.map +0 -1
  53. package/dist/lib/actions/application.js +0 -573
  54. package/dist/lib/actions/blog.d.ts +0 -61
  55. package/dist/lib/actions/blog.d.ts.map +0 -1
  56. package/dist/lib/actions/blog.js +0 -762
  57. package/dist/lib/actions/brand.d.ts +0 -83
  58. package/dist/lib/actions/brand.d.ts.map +0 -1
  59. package/dist/lib/actions/brand.js +0 -28
  60. package/dist/lib/actions/companion.d.ts +0 -174
  61. package/dist/lib/actions/companion.d.ts.map +0 -1
  62. package/dist/lib/actions/companion.js +0 -276
  63. package/dist/lib/actions/event.d.ts +0 -178
  64. package/dist/lib/actions/event.d.ts.map +0 -1
  65. package/dist/lib/actions/event.js +0 -214
  66. package/dist/lib/actions/guide.d.ts +0 -55
  67. package/dist/lib/actions/guide.d.ts.map +0 -1
  68. package/dist/lib/actions/guide.js +0 -128
  69. package/dist/lib/actions/hostDashboard.d.ts +0 -122
  70. package/dist/lib/actions/hostDashboard.d.ts.map +0 -1
  71. package/dist/lib/actions/hostDashboard.js +0 -329
  72. package/dist/lib/actions/location.d.ts +0 -141
  73. package/dist/lib/actions/location.d.ts.map +0 -1
  74. package/dist/lib/actions/location.js +0 -113
  75. package/dist/lib/actions/notifications.d.ts +0 -91
  76. package/dist/lib/actions/notifications.d.ts.map +0 -1
  77. package/dist/lib/actions/notifications.js +0 -83
  78. package/dist/lib/actions/opportunity.d.ts +0 -44
  79. package/dist/lib/actions/opportunity.d.ts.map +0 -1
  80. package/dist/lib/actions/opportunity.js +0 -318
  81. package/dist/lib/actions/package.d.ts +0 -85
  82. package/dist/lib/actions/package.d.ts.map +0 -1
  83. package/dist/lib/actions/package.js +0 -167
  84. package/dist/lib/actions/place.d.ts +0 -191
  85. package/dist/lib/actions/place.d.ts.map +0 -1
  86. package/dist/lib/actions/place.js +0 -57
  87. package/dist/lib/actions/portfolio.d.ts +0 -65
  88. package/dist/lib/actions/portfolio.d.ts.map +0 -1
  89. package/dist/lib/actions/portfolio.js +0 -62
  90. package/dist/lib/actions/property.d.ts +0 -17
  91. package/dist/lib/actions/property.d.ts.map +0 -1
  92. package/dist/lib/actions/property.js +0 -16
  93. package/dist/lib/actions/rental.d.ts +0 -87
  94. package/dist/lib/actions/rental.d.ts.map +0 -1
  95. package/dist/lib/actions/rental.js +0 -205
  96. package/dist/lib/actions/review.d.ts +0 -8
  97. package/dist/lib/actions/review.d.ts.map +0 -1
  98. package/dist/lib/actions/review.js +0 -102
  99. package/dist/lib/actions/room.d.ts +0 -39
  100. package/dist/lib/actions/room.d.ts.map +0 -1
  101. package/dist/lib/actions/room.js +0 -74
  102. package/dist/lib/actions/stay.d.ts +0 -97
  103. package/dist/lib/actions/stay.d.ts.map +0 -1
  104. package/dist/lib/actions/stay.js +0 -138
  105. package/dist/lib/actions/travelPackage.d.ts +0 -104
  106. package/dist/lib/actions/travelPackage.d.ts.map +0 -1
  107. package/dist/lib/actions/travelPackage.js +0 -487
  108. package/dist/lib/data/adventureDummyData.d.ts +0 -3
  109. package/dist/lib/data/adventureDummyData.d.ts.map +0 -1
  110. package/dist/lib/data/adventureDummyData.js +0 -138
  111. package/dist/lib/data/adventureFormPage.d.ts +0 -28
  112. package/dist/lib/data/adventureFormPage.d.ts.map +0 -1
  113. package/dist/lib/data/adventureFormPage.js +0 -58
  114. package/dist/lib/data/companionDummyData.d.ts +0 -99
  115. package/dist/lib/data/companionDummyData.d.ts.map +0 -1
  116. package/dist/lib/data/companionDummyData.js +0 -203
  117. package/dist/lib/data/destinations.d.ts +0 -14
  118. package/dist/lib/data/destinations.d.ts.map +0 -1
  119. package/dist/lib/data/destinations.js +0 -203
  120. package/dist/lib/data/eventFormPage.d.ts +0 -38
  121. package/dist/lib/data/eventFormPage.d.ts.map +0 -1
  122. package/dist/lib/data/eventFormPage.js +0 -56
  123. package/dist/lib/data/eventsDummyData.d.ts +0 -54
  124. package/dist/lib/data/eventsDummyData.d.ts.map +0 -1
  125. package/dist/lib/data/eventsDummyData.js +0 -586
  126. package/dist/lib/data/guideDummyData.d.ts +0 -3
  127. package/dist/lib/data/guideDummyData.d.ts.map +0 -1
  128. package/dist/lib/data/guideDummyData.js +0 -66
  129. package/dist/lib/data/opportunityFormData.d.ts +0 -13
  130. package/dist/lib/data/opportunityFormData.d.ts.map +0 -1
  131. package/dist/lib/data/opportunityFormData.js +0 -62
  132. package/dist/lib/data/opportunityFormPage.d.ts +0 -12
  133. package/dist/lib/data/opportunityFormPage.d.ts.map +0 -1
  134. package/dist/lib/data/opportunityFormPage.js +0 -33
  135. package/dist/lib/data/packageDummyData.d.ts +0 -3
  136. package/dist/lib/data/packageDummyData.d.ts.map +0 -1
  137. package/dist/lib/data/packageDummyData.js +0 -56
  138. package/dist/lib/data/rentalDummyData.d.ts +0 -3
  139. package/dist/lib/data/rentalDummyData.d.ts.map +0 -1
  140. package/dist/lib/data/rentalDummyData.js +0 -382
  141. package/dist/lib/data/rentalFormPage.d.ts +0 -11
  142. package/dist/lib/data/rentalFormPage.d.ts.map +0 -1
  143. package/dist/lib/data/rentalFormPage.js +0 -86
  144. package/dist/lib/data/staysDummyData.d.ts +0 -72
  145. package/dist/lib/data/staysDummyData.d.ts.map +0 -1
  146. package/dist/lib/data/staysDummyData.js +0 -694
  147. package/dist/lib/data/storeDummyData.d.ts +0 -33
  148. package/dist/lib/data/storeDummyData.d.ts.map +0 -1
  149. package/dist/lib/data/storeDummyData.js +0 -336
  150. package/dist/lib/data/travelPackageFormData.d.ts +0 -19
  151. package/dist/lib/data/travelPackageFormData.d.ts.map +0 -1
  152. package/dist/lib/data/travelPackageFormData.js +0 -51
  153. package/dist/lib/data/travelPackageFormPage.d.ts +0 -22
  154. package/dist/lib/data/travelPackageFormPage.d.ts.map +0 -1
  155. package/dist/lib/data/travelPackageFormPage.js +0 -40
  156. package/dist/lib/data/vehicleData.d.ts +0 -2
  157. package/dist/lib/data/vehicleData.d.ts.map +0 -1
  158. package/dist/lib/data/vehicleData.js +0 -187
  159. package/dist/lib/data/vehicleModels.d.ts +0 -2
  160. package/dist/lib/data/vehicleModels.d.ts.map +0 -1
  161. package/dist/lib/data/vehicleModels.js +0 -128
  162. package/dist/lib/hooks/usePersistentDraftState.d.ts +0 -20
  163. package/dist/lib/hooks/usePersistentDraftState.d.ts.map +0 -1
  164. package/dist/lib/hooks/usePersistentDraftState.js +0 -47
  165. package/dist/lib/models/forms.d.ts +0 -384
  166. package/dist/lib/models/forms.d.ts.map +0 -1
  167. package/dist/lib/models/forms.js +0 -121
  168. package/dist/lib/pricingActions.d.ts +0 -13
  169. package/dist/lib/pricingActions.d.ts.map +0 -1
  170. package/dist/lib/pricingActions.js +0 -16
  171. package/dist/lib/utils/entitySubmission.d.ts +0 -21
  172. package/dist/lib/utils/entitySubmission.d.ts.map +0 -1
  173. package/dist/lib/utils/entitySubmission.js +0 -10
  174. package/dist/lib/utils/imageUpload.d.ts +0 -4
  175. package/dist/lib/utils/imageUpload.d.ts.map +0 -1
  176. package/dist/lib/utils/imageUpload.js +0 -36
  177. package/dist/lib/utils/tileConverters.d.ts +0 -8
  178. package/dist/lib/utils/tileConverters.d.ts.map +0 -1
  179. package/dist/lib/utils/tileConverters.js +0 -59
@@ -1,36 +1,100 @@
1
1
  'use client';
2
- import { useAtom } from 'jotai'; // Import useSetAtom
2
+ import { useAtomValue, useSetAtom } from "jotai";
3
3
  import { useEffect } from 'react';
4
4
  import { useQuery } from '@tanstack/react-query';
5
- import { initializeAuthSessionAtom, resetAuthState } from './userAtom'; // Import the atom itself
6
- import { validateSession } from './actions/auth';
7
- import { shouldResetAuthState } from './authSessionPolicy';
5
+ import { authRevisionAtom, authSessionStatusAtom, beginAuthCleanupAtom, finishAuthCleanupAtom, initializeAuthSessionAtom, isLoggedInAtom, storageInitializedAtom, userAtom, } from "./userAtom";
6
+ import { clearSessionCookies, validateSession } from './actions/auth';
7
+ import { bindSessionFailureToRevision, sessionIdentityMatchesPersistedUser, shouldResetAuthStateForQuery, } from './authSessionPolicy';
8
8
  export default function AuthSessionManager() {
9
- const [, initializeAuthSession] = useAtom(initializeAuthSessionAtom);
9
+ const initializeAuthSession = useSetAtom(initializeAuthSessionAtom);
10
+ const beginAuthCleanup = useSetAtom(beginAuthCleanupAtom);
11
+ const finishAuthCleanup = useSetAtom(finishAuthCleanupAtom);
12
+ const setAuthSessionStatus = useSetAtom(authSessionStatusAtom);
13
+ const authRevision = useAtomValue(authRevisionAtom);
14
+ const user = useAtomValue(userAtom);
15
+ const isLoggedIn = useAtomValue(isLoggedInAtom);
16
+ const storageInitialized = useAtomValue(storageInitializedAtom);
10
17
  // --- Initial Session Load ---
11
18
  useEffect(() => {
12
- initializeAuthSession();
19
+ // App Router may hydrate nested Suspense boundaries after this provider
20
+ // mounts. Defer storage restoration until the first paint so the server
21
+ // loading shell and the first client render cannot diverge.
22
+ const frame = window.requestAnimationFrame(() => {
23
+ void initializeAuthSession();
24
+ });
25
+ return () => window.cancelAnimationFrame(frame);
13
26
  }, [initializeAuthSession]);
14
27
  // --- Continuous Background Re-validation ---
15
- const { data: session, error } = useQuery({
16
- queryKey: ['session'],
17
- queryFn: validateSession,
28
+ const { data: sessionResult, error, } = useQuery({
29
+ queryKey: ["session", authRevision],
30
+ queryFn: async () => {
31
+ try {
32
+ return {
33
+ revision: authRevision,
34
+ session: await validateSession(),
35
+ };
36
+ }
37
+ catch (queryError) {
38
+ throw bindSessionFailureToRevision(queryError, authRevision);
39
+ }
40
+ },
18
41
  refetchOnWindowFocus: true,
19
42
  refetchOnReconnect: true,
20
- // Never retry on 401 — both tokens are gone, retrying just spams the backend
21
43
  retry: (failureCount, err) => {
22
44
  if (err?.statusCode === 401)
23
45
  return false;
24
46
  return failureCount < 2;
25
47
  },
26
48
  staleTime: 15 * 60 * 1000,
49
+ enabled: storageInitialized && Boolean(isLoggedIn && user),
27
50
  });
28
51
  // Clear auth state only when the backend explicitly says the session is invalid (401).
29
52
  // Network errors or 5xx (backend down) are ignored to avoid false logouts.
30
53
  useEffect(() => {
31
- if (shouldResetAuthState(session, error)) {
32
- resetAuthState();
54
+ // A signed-out browser does not need to be reset repeatedly.
55
+ if (!isLoggedIn && !user)
56
+ return;
57
+ const shouldClearRejectedOrInvalidSession = shouldResetAuthStateForQuery({
58
+ session: sessionResult?.session,
59
+ sessionRevision: sessionResult?.revision,
60
+ error: error,
61
+ currentRevision: authRevision,
62
+ });
63
+ const currentSuccessfulResult = sessionResult?.revision === authRevision
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
+ })();
81
+ return;
33
82
  }
34
- }, [error, session?.statusCode]);
83
+ // A retryable network/server failure has no authoritative session
84
+ // result. Keep the provisional identity validating until a later retry.
85
+ if (!currentSuccessfulResult)
86
+ return;
87
+ setAuthSessionStatus("authenticated");
88
+ }, [
89
+ sessionResult,
90
+ error,
91
+ authRevision,
92
+ isLoggedIn,
93
+ storageInitialized,
94
+ user,
95
+ beginAuthCleanup,
96
+ finishAuthCleanup,
97
+ setAuthSessionStatus,
98
+ ]);
35
99
  return null;
36
100
  }
@@ -1,10 +1,44 @@
1
1
  export interface SessionFailureLike {
2
2
  statusCode?: number;
3
3
  }
4
+ export interface RevisionedSessionFailure extends SessionFailureLike {
5
+ authRevision: number;
6
+ }
4
7
  export interface SessionValidationLike {
5
8
  statusCode?: number;
9
+ success?: boolean;
10
+ identity?: SessionIdentity | null;
11
+ }
12
+ export interface SessionIdentity {
13
+ actorId: string;
14
+ accountType: "user" | "host" | "staff";
15
+ role: string;
16
+ }
17
+ export interface PersistedIdentityLike {
18
+ _id?: string;
19
+ role?: string;
20
+ accountType?: "user" | "host" | "staff";
21
+ baseAccountType?: "user" | "host";
22
+ staffProfileId?: string | null;
6
23
  }
24
+ export type AuthSessionStatus = "initializing" | "clearing" | "signed-out" | "validating" | "authenticated";
25
+ export declare function isAuthSessionPending(status: AuthSessionStatus): boolean;
26
+ export declare function canFinishAuthCleanup(expectedRevision: number, currentRevision: number): boolean;
27
+ export declare function clearCacheMissSessionBoundary({ cleanupRevision, getCurrentRevision, clearSession, }: {
28
+ cleanupRevision: number;
29
+ getCurrentRevision: () => number;
30
+ clearSession: () => Promise<void>;
31
+ }): Promise<boolean>;
32
+ export declare function bindSessionFailureToRevision(error: unknown, authRevision: number): RevisionedSessionFailure;
33
+ export declare function shouldResetAuthStateForQuery({ session, sessionRevision, error, currentRevision, }: {
34
+ session?: SessionValidationLike | null;
35
+ sessionRevision?: number;
36
+ error?: RevisionedSessionFailure | null;
37
+ currentRevision: number;
38
+ }): boolean;
39
+ export declare function getPersistedAccountType(user: PersistedIdentityLike): "user" | "host" | "staff" | null;
7
40
  export declare function normalizeRefreshFailureStatus(statusCode: number): number;
8
41
  export declare function isExpectedSignedOutError(error: SessionFailureLike | null | undefined): boolean;
9
42
  export declare function shouldResetAuthState(session: SessionValidationLike | null | undefined, error: SessionFailureLike | null | undefined): boolean;
43
+ export declare function sessionIdentityMatchesPersistedUser(identity: SessionIdentity | null | undefined, user: PersistedIdentityLike | null | undefined): boolean;
10
44
  //# sourceMappingURL=authSessionPolicy.d.ts.map
@@ -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,qBAAqB;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;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"}
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,3 +1,42 @@
1
+ export function isAuthSessionPending(status) {
2
+ return status === "initializing"
3
+ || status === "validating"
4
+ || status === "clearing";
5
+ }
6
+ export function canFinishAuthCleanup(expectedRevision, currentRevision) {
7
+ return expectedRevision === currentRevision;
8
+ }
9
+ export async function clearCacheMissSessionBoundary({ cleanupRevision, getCurrentRevision, clearSession, }) {
10
+ if (getCurrentRevision() !== cleanupRevision)
11
+ return false;
12
+ await clearSession();
13
+ return true;
14
+ }
15
+ export function bindSessionFailureToRevision(error, authRevision) {
16
+ return {
17
+ authRevision,
18
+ statusCode: typeof error === "object" && error !== null
19
+ ? error.statusCode
20
+ : undefined,
21
+ };
22
+ }
23
+ export function shouldResetAuthStateForQuery({ session, sessionRevision, error, currentRevision, }) {
24
+ const owningRevision = sessionRevision ?? error?.authRevision;
25
+ if (owningRevision !== currentRevision)
26
+ return false;
27
+ return shouldResetAuthState(session, error);
28
+ }
29
+ export function getPersistedAccountType(user) {
30
+ if (user.accountType)
31
+ return user.accountType;
32
+ if (user.staffProfileId)
33
+ return "staff";
34
+ if (user.baseAccountType)
35
+ return user.baseAccountType;
36
+ if (user.role === "user" || user.role === "host")
37
+ return user.role;
38
+ return null;
39
+ }
1
40
  export function normalizeRefreshFailureStatus(statusCode) {
2
41
  return statusCode >= 400 && statusCode < 500 ? 401 : statusCode;
3
42
  }
@@ -7,3 +46,16 @@ export function isExpectedSignedOutError(error) {
7
46
  export function shouldResetAuthState(session, error) {
8
47
  return session?.statusCode === 401 || isExpectedSignedOutError(error);
9
48
  }
49
+ export function sessionIdentityMatchesPersistedUser(identity, user) {
50
+ if (!identity || !user)
51
+ return false;
52
+ const persistedAccountType = getPersistedAccountType(user);
53
+ if (!persistedAccountType)
54
+ return false;
55
+ const persistedActorId = persistedAccountType === "staff"
56
+ ? user.staffProfileId
57
+ : user._id;
58
+ return Boolean(persistedActorId
59
+ && String(persistedActorId) === String(identity.actorId)
60
+ && persistedAccountType === identity.accountType);
61
+ }
@@ -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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"}
@@ -35,9 +35,9 @@ const ChatContext = createContext(emptyContext);
35
35
  export const useChatContext = () => useContext(ChatContext);
36
36
  export function ChatProvider({ children }) {
37
37
  const user = useAtomValue(userAtom);
38
- const actorId = user?._id || user?.id || "";
39
38
  const accountType = user?.accountType || user?.role;
40
- const actorModel = accountType === "host" ? "HostProfile" : "User";
39
+ const actorId = accountType === "staff" ? (user?.staffProfileId || user?._id || "") : (user?._id || user?.id || "");
40
+ const actorModel = accountType === "host" ? "HostProfile" : accountType === "staff" ? "StaffProfile" : "User";
41
41
  const [isConnected, setIsConnected] = useState(false);
42
42
  const [conversations, setConversations] = useState([]);
43
43
  const [activeConversation, setActiveConversationState] = useState(null);
@@ -75,8 +75,10 @@ export function ChatProvider({ children }) {
75
75
  files.forEach((file) => formData.append("files", file));
76
76
  const upload = await chatApi.uploadFiles(formData);
77
77
  media = upload?.data?.files || [];
78
- if (!media.length)
79
- throw new Error("Unable to upload attachments");
78
+ if (!media.length) {
79
+ const errMsg = upload?.error?.message || "Unable to upload attachments";
80
+ throw new Error(errMsg);
81
+ }
80
82
  media = media.map((item, index) => {
81
83
  const metadata = files[index]?.chatMediaMetadata;
82
84
  return metadata ? { ...item, ...metadata } : item;
@@ -103,13 +105,17 @@ export function ChatProvider({ children }) {
103
105
  });
104
106
  return;
105
107
  }
106
- const message = await chatApi.sendMessage(conversationId, {
108
+ const result = await chatApi.sendMessage(conversationId, {
107
109
  text: trimmed,
108
110
  replyTo,
109
111
  media,
110
112
  type: options?.type || (media.length ? "media" : "text"),
111
113
  mentions: options?.mentions || [],
112
114
  });
115
+ if (result.error) {
116
+ throw result.error;
117
+ }
118
+ const message = result.data;
113
119
  if (message) {
114
120
  setMessages((current) => current.some((item) => item._id === message._id)
115
121
  ? current
@@ -221,7 +227,7 @@ export function ChatProvider({ children }) {
221
227
  };
222
228
  }, [activeConversation?._id]);
223
229
  useEffect(() => {
224
- if (!user || !actorId || accountType === "staff") {
230
+ if (!user || !actorId) {
225
231
  setIsConnected(false);
226
232
  setConversations([]);
227
233
  return;
@@ -13,13 +13,14 @@ export type PermissionAwareActor = {
13
13
  staffProfileId?: string | null;
14
14
  };
15
15
  export declare const STAFF_DASHBOARD_PERMISSIONS: readonly ["roles.read", "roles.manage", "permissions.read", "permissions.manage", "users.read", "users.manage", "hosts.read", "hosts.manage", "staff.read", "staff.manage", "listings.read", "listings.moderate", "content.moderate", "opportunities.applications.read", "bookings.read.all", "bookings.manage.all", "payouts.read", "payouts.record", "platform.settings.read", "platform.settings.manage", "discounts.manage.platform", "partner_programs.read", "partner_programs.manage", "rewards.read.all", "rewards.manage", "memberships.read.all", "memberships.manage", "host_performance.read.all", "host_performance.manage", "verification.read", "verification.manage", "support.contacts.read", "audit.read", "developer.diagnostics.read"];
16
- export declare const MODERATION_DASHBOARD_PERMISSIONS: readonly ["listings.read", "listings.moderate", "content.moderate", "opportunities.applications.read"];
16
+ export declare const MODERATION_DASHBOARD_PERMISSIONS: readonly ["listings.read", "listings.moderate", "content.moderate"];
17
17
  export declare const PAYOUT_DASHBOARD_PERMISSIONS: readonly ["payouts.read", "payouts.record"];
18
18
  export declare const PLATFORM_DASHBOARD_PERMISSIONS: readonly ["platform.settings.read", "platform.settings.manage", "discounts.manage.platform", "partner_programs.read", "partner_programs.manage", "rewards.read.all", "rewards.manage", "memberships.read.all", "memberships.manage", "host_performance.read.all", "host_performance.manage"];
19
19
  export declare const AUTHORIZATION_DASHBOARD_PERMISSIONS: readonly ["roles.read", "roles.manage", "permissions.read", "permissions.manage"];
20
20
  export declare const ADMIN_ROUTE_PERMISSION_GROUPS: {
21
+ readonly applications: readonly ["opportunities.applications.read"];
21
22
  readonly authorization: readonly ["roles.read", "roles.manage", "permissions.read", "permissions.manage"];
22
- readonly moderation: readonly ["listings.read", "listings.moderate", "content.moderate", "opportunities.applications.read"];
23
+ readonly moderation: readonly ["listings.read", "listings.moderate", "content.moderate"];
23
24
  readonly payouts: readonly ["payouts.read", "payouts.record"];
24
25
  readonly platform: readonly ["platform.settings.read", "platform.settings.manage", "discounts.manage.platform", "partner_programs.read", "partner_programs.manage", "rewards.read.all", "rewards.manage", "memberships.read.all", "memberships.manage", "host_performance.read.all", "host_performance.manage"];
25
26
  readonly registrations: readonly ["bookings.read.all", "bookings.manage.all"];
@@ -102,6 +103,6 @@ export declare function canCreateListingForHost(actor: PermissionAwareActor | nu
102
103
  export declare function canAccessListingEditor(actor: PermissionAwareActor | null | undefined): boolean;
103
104
  export declare function canAccessOpportunityApplicationReview(actor: PermissionAwareActor | null | undefined): boolean;
104
105
  export declare function getOpportunityApplicationApprovalStatus(actor: PermissionAwareActor | null | undefined): "adminApproved" | "approved";
105
- export declare function getAdminDashboardRoutePermissions(pathname: string): readonly ["roles.read", "roles.manage", "permissions.read", "permissions.manage", "users.read", "users.manage", "hosts.read", "hosts.manage", "staff.read", "staff.manage", "listings.read", "listings.moderate", "content.moderate", "opportunities.applications.read", "bookings.read.all", "bookings.manage.all", "payouts.read", "payouts.record", "platform.settings.read", "platform.settings.manage", "discounts.manage.platform", "partner_programs.read", "partner_programs.manage", "rewards.read.all", "rewards.manage", "memberships.read.all", "memberships.manage", "host_performance.read.all", "host_performance.manage", "verification.read", "verification.manage", "support.contacts.read", "audit.read", "developer.diagnostics.read"] | readonly ["listings.read", "listings.moderate", "content.moderate", "opportunities.applications.read"] | readonly ["payouts.read", "payouts.record"] | readonly ["roles.read", "roles.manage", "permissions.read", "permissions.manage"] | readonly ["bookings.read.all", "bookings.manage.all"];
106
+ export declare function getAdminDashboardRoutePermissions(pathname: string): readonly ["roles.read", "roles.manage", "permissions.read", "permissions.manage", "users.read", "users.manage", "hosts.read", "hosts.manage", "staff.read", "staff.manage", "listings.read", "listings.moderate", "content.moderate", "opportunities.applications.read", "bookings.read.all", "bookings.manage.all", "payouts.read", "payouts.record", "platform.settings.read", "platform.settings.manage", "discounts.manage.platform", "partner_programs.read", "partner_programs.manage", "rewards.read.all", "rewards.manage", "memberships.read.all", "memberships.manage", "host_performance.read.all", "host_performance.manage", "verification.read", "verification.manage", "support.contacts.read", "audit.read", "developer.diagnostics.read"] | readonly ["listings.read", "listings.moderate", "content.moderate"] | readonly ["payouts.read", "payouts.record"] | readonly ["roles.read", "roles.manage", "permissions.read", "permissions.manage"] | readonly ["opportunities.applications.read"] | readonly ["bookings.read.all", "bookings.manage.all"];
106
107
  export declare function hasAdminDashboardRouteAccess(actor: PermissionAwareActor | null | undefined, pathname: string): boolean;
107
108
  //# sourceMappingURL=authorization.d.ts.map
@@ -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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"}
@@ -98,7 +98,6 @@ export const MODERATION_DASHBOARD_PERMISSIONS = [
98
98
  "listings.read",
99
99
  "listings.moderate",
100
100
  "content.moderate",
101
- "opportunities.applications.read",
102
101
  ];
103
102
  export const PAYOUT_DASHBOARD_PERMISSIONS = [
104
103
  "payouts.read",
@@ -124,6 +123,7 @@ export const AUTHORIZATION_DASHBOARD_PERMISSIONS = [
124
123
  "permissions.manage",
125
124
  ];
126
125
  export const ADMIN_ROUTE_PERMISSION_GROUPS = {
126
+ applications: ["opportunities.applications.read"],
127
127
  authorization: AUTHORIZATION_DASHBOARD_PERMISSIONS,
128
128
  moderation: MODERATION_DASHBOARD_PERMISSIONS,
129
129
  payouts: PAYOUT_DASHBOARD_PERMISSIONS,
@@ -149,9 +149,12 @@ export function isTravellerAccount(actor) {
149
149
  getActorRole(actor) === "user");
150
150
  }
151
151
  export function isStaffSession(actor) {
152
- return Boolean(actor &&
153
- actor.accountType === "staff" &&
154
- actor.staffProfileId);
152
+ if (!actor)
153
+ return false;
154
+ if (actor.accountType === "staff")
155
+ return true;
156
+ const role = String(actor.role || "").trim().toLowerCase();
157
+ return ["admin", "hr", "sales", "developer", "customer_support"].includes(role) || Boolean(actor.staffProfileId);
155
158
  }
156
159
  export function isHostSession(actor) {
157
160
  return Boolean(actor && actor.accountType === "host");
@@ -225,6 +228,9 @@ export function getAdminDashboardRoutePermissions(pathname) {
225
228
  const path = String(pathname || "").toLowerCase();
226
229
  if (path.includes("/registrations"))
227
230
  return ADMIN_ROUTE_PERMISSION_GROUPS.registrations;
231
+ if (path.startsWith("/dashboard/staff/applications")) {
232
+ return ADMIN_ROUTE_PERMISSION_GROUPS.applications;
233
+ }
228
234
  if (path.startsWith("/dashboard/staff/authorization") || path.startsWith("/dashboard/admin/authorization")) {
229
235
  return ADMIN_ROUTE_PERMISSION_GROUPS.authorization;
230
236
  }
@@ -28,12 +28,12 @@ export declare const BlogSchema: z.ZodObject<{
28
28
  shares: number;
29
29
  likes: number;
30
30
  comments: number;
31
- overview: string;
32
31
  content: string;
32
+ overview: string;
33
33
  blogImages: string[];
34
34
  author: string;
35
35
  authorImage: string;
36
- authorRole: "host" | "user" | "admin";
36
+ authorRole: "user" | "host" | "admin";
37
37
  hashtags?: string | undefined;
38
38
  }, {
39
39
  status: "pending" | "draft" | "posted" | "archived" | "denied";
@@ -45,12 +45,12 @@ export declare const BlogSchema: z.ZodObject<{
45
45
  shares: number;
46
46
  likes: number;
47
47
  comments: number;
48
- overview: string;
49
48
  content: string;
49
+ overview: string;
50
50
  blogImages: string[];
51
51
  author: string;
52
52
  authorImage: string;
53
- authorRole: "host" | "user" | "admin";
53
+ authorRole: "user" | "host" | "admin";
54
54
  hashtags?: string | undefined;
55
55
  }>;
56
56
  export type Blog = z.infer<typeof BlogSchema>;
@@ -1,4 +1,4 @@
1
- export type ChatActorModel = "User" | "HostProfile";
1
+ export type ChatActorModel = "User" | "HostProfile" | "StaffProfile";
2
2
  export interface ChatActorRef {
3
3
  actorId: string;
4
4
  actorModel: ChatActorModel;
@@ -6,7 +6,10 @@ export interface ChatActorRef {
6
6
  export declare const chatActorKey: (actor: ChatActorRef) => string;
7
7
  export declare const isSameChatActor: (left?: Partial<ChatActorRef> | null, right?: Partial<ChatActorRef> | null) => boolean;
8
8
  export interface Participant extends ChatActorRef {
9
- accountType: "user" | "host";
9
+ accountType: "user" | "host" | "staff";
10
+ role?: string;
11
+ isStaff?: boolean;
12
+ staffRole?: string;
10
13
  username?: string;
11
14
  displayName?: string;
12
15
  chatRole: "admin" | "member";
@@ -16,6 +19,11 @@ export interface Participant extends ChatActorRef {
16
19
  unreadCount: number;
17
20
  restrictedUntil?: string | null;
18
21
  }
22
+ export declare function isStaffParticipant(participant?: (Partial<Participant> & {
23
+ role?: string;
24
+ isStaff?: boolean;
25
+ staffRole?: string;
26
+ }) | null): boolean;
19
27
  export interface ConversationFeatures {
20
28
  milestones: boolean;
21
29
  expenses: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../../src/lib/models/chat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../../src/lib/models/chat.ts"],"names":[],"mappings":"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"}
@@ -3,3 +3,11 @@ export const isSameChatActor = (left, right) => Boolean(left?.actorId &&
3
3
  right?.actorId &&
4
4
  left.actorId === right.actorId &&
5
5
  left.actorModel === right.actorModel);
6
+ export function isStaffParticipant(participant) {
7
+ if (!participant)
8
+ return false;
9
+ if (participant.accountType === "staff" || participant.isStaff || Boolean(participant.staffRole))
10
+ return true;
11
+ const role = String(participant.role || "").trim().toLowerCase();
12
+ return ["admin", "hr", "sales", "developer", "customer_support"].includes(role);
13
+ }