@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.
- package/dist/lib/actions/actions.d.ts +6 -6
- package/dist/lib/actions/auth.d.ts +23 -19
- package/dist/lib/actions/auth.d.ts.map +1 -1
- package/dist/lib/actions/auth.js +24 -5
- package/dist/lib/actions/chat.d.ts +20 -14
- package/dist/lib/actions/chat.d.ts.map +1 -1
- package/dist/lib/actions/chat.js +2 -2
- package/dist/lib/actions/fetcher.d.ts.map +1 -1
- package/dist/lib/actions/fetcher.js +15 -8
- package/dist/lib/actions.d.ts +12 -12
- package/dist/lib/actions.d.ts.map +1 -1
- package/dist/lib/actions.js +3 -1
- package/dist/lib/authSessionManager.d.ts.map +1 -1
- package/dist/lib/authSessionManager.js +77 -13
- package/dist/lib/authSessionPolicy.d.ts +34 -0
- package/dist/lib/authSessionPolicy.d.ts.map +1 -1
- package/dist/lib/authSessionPolicy.js +52 -0
- package/dist/lib/context/ChatContext.d.ts.map +1 -1
- package/dist/lib/context/ChatContext.js +12 -6
- package/dist/lib/models/authorization.d.ts +4 -3
- package/dist/lib/models/authorization.d.ts.map +1 -1
- package/dist/lib/models/authorization.js +10 -4
- package/dist/lib/models/blog.d.ts +4 -4
- package/dist/lib/models/chat.d.ts +10 -2
- package/dist/lib/models/chat.d.ts.map +1 -1
- package/dist/lib/models/chat.js +8 -0
- package/dist/lib/models/discount.d.ts +52 -52
- package/dist/lib/models/notifications.d.ts +2 -2
- package/dist/lib/models/opportunities/freelance.d.ts +34 -34
- package/dist/lib/models/opportunities/internship.d.ts +34 -34
- package/dist/lib/models/opportunities/job.d.ts +34 -34
- package/dist/lib/models/opportunities/opportunity.d.ts +34 -34
- package/dist/lib/models/opportunities/volunteerJob.d.ts +34 -34
- package/dist/lib/models/package.d.ts +16 -16
- package/dist/lib/models/portfolio.d.ts +2 -2
- package/dist/lib/models/pricing.d.ts +12 -12
- package/dist/lib/models/review.d.ts +2 -2
- package/dist/lib/models/stay.d.ts +18 -18
- package/dist/lib/models/travelPackage.d.ts +36 -36
- package/dist/lib/models/user.d.ts +12 -12
- package/dist/lib/userAtom.d.ts +126 -25
- package/dist/lib/userAtom.d.ts.map +1 -1
- package/dist/lib/userAtom.js +79 -45
- package/package.json +1 -1
- package/dist/lib/actions/adminDashboard.d.ts +0 -4
- package/dist/lib/actions/adminDashboard.d.ts.map +0 -1
- package/dist/lib/actions/adminDashboard.js +0 -29
- package/dist/lib/actions/adventure.d.ts +0 -104
- package/dist/lib/actions/adventure.d.ts.map +0 -1
- package/dist/lib/actions/adventure.js +0 -203
- package/dist/lib/actions/application.d.ts +0 -35
- package/dist/lib/actions/application.d.ts.map +0 -1
- package/dist/lib/actions/application.js +0 -573
- package/dist/lib/actions/blog.d.ts +0 -61
- package/dist/lib/actions/blog.d.ts.map +0 -1
- package/dist/lib/actions/blog.js +0 -762
- package/dist/lib/actions/brand.d.ts +0 -83
- package/dist/lib/actions/brand.d.ts.map +0 -1
- package/dist/lib/actions/brand.js +0 -28
- package/dist/lib/actions/companion.d.ts +0 -174
- package/dist/lib/actions/companion.d.ts.map +0 -1
- package/dist/lib/actions/companion.js +0 -276
- package/dist/lib/actions/event.d.ts +0 -178
- package/dist/lib/actions/event.d.ts.map +0 -1
- package/dist/lib/actions/event.js +0 -214
- package/dist/lib/actions/guide.d.ts +0 -55
- package/dist/lib/actions/guide.d.ts.map +0 -1
- package/dist/lib/actions/guide.js +0 -128
- package/dist/lib/actions/hostDashboard.d.ts +0 -122
- package/dist/lib/actions/hostDashboard.d.ts.map +0 -1
- package/dist/lib/actions/hostDashboard.js +0 -329
- package/dist/lib/actions/location.d.ts +0 -141
- package/dist/lib/actions/location.d.ts.map +0 -1
- package/dist/lib/actions/location.js +0 -113
- package/dist/lib/actions/notifications.d.ts +0 -91
- package/dist/lib/actions/notifications.d.ts.map +0 -1
- package/dist/lib/actions/notifications.js +0 -83
- package/dist/lib/actions/opportunity.d.ts +0 -44
- package/dist/lib/actions/opportunity.d.ts.map +0 -1
- package/dist/lib/actions/opportunity.js +0 -318
- package/dist/lib/actions/package.d.ts +0 -85
- package/dist/lib/actions/package.d.ts.map +0 -1
- package/dist/lib/actions/package.js +0 -167
- package/dist/lib/actions/place.d.ts +0 -191
- package/dist/lib/actions/place.d.ts.map +0 -1
- package/dist/lib/actions/place.js +0 -57
- package/dist/lib/actions/portfolio.d.ts +0 -65
- package/dist/lib/actions/portfolio.d.ts.map +0 -1
- package/dist/lib/actions/portfolio.js +0 -62
- package/dist/lib/actions/property.d.ts +0 -17
- package/dist/lib/actions/property.d.ts.map +0 -1
- package/dist/lib/actions/property.js +0 -16
- package/dist/lib/actions/rental.d.ts +0 -87
- package/dist/lib/actions/rental.d.ts.map +0 -1
- package/dist/lib/actions/rental.js +0 -205
- package/dist/lib/actions/review.d.ts +0 -8
- package/dist/lib/actions/review.d.ts.map +0 -1
- package/dist/lib/actions/review.js +0 -102
- package/dist/lib/actions/room.d.ts +0 -39
- package/dist/lib/actions/room.d.ts.map +0 -1
- package/dist/lib/actions/room.js +0 -74
- package/dist/lib/actions/stay.d.ts +0 -97
- package/dist/lib/actions/stay.d.ts.map +0 -1
- package/dist/lib/actions/stay.js +0 -138
- package/dist/lib/actions/travelPackage.d.ts +0 -104
- package/dist/lib/actions/travelPackage.d.ts.map +0 -1
- package/dist/lib/actions/travelPackage.js +0 -487
- package/dist/lib/data/adventureDummyData.d.ts +0 -3
- package/dist/lib/data/adventureDummyData.d.ts.map +0 -1
- package/dist/lib/data/adventureDummyData.js +0 -138
- package/dist/lib/data/adventureFormPage.d.ts +0 -28
- package/dist/lib/data/adventureFormPage.d.ts.map +0 -1
- package/dist/lib/data/adventureFormPage.js +0 -58
- package/dist/lib/data/companionDummyData.d.ts +0 -99
- package/dist/lib/data/companionDummyData.d.ts.map +0 -1
- package/dist/lib/data/companionDummyData.js +0 -203
- package/dist/lib/data/destinations.d.ts +0 -14
- package/dist/lib/data/destinations.d.ts.map +0 -1
- package/dist/lib/data/destinations.js +0 -203
- package/dist/lib/data/eventFormPage.d.ts +0 -38
- package/dist/lib/data/eventFormPage.d.ts.map +0 -1
- package/dist/lib/data/eventFormPage.js +0 -56
- package/dist/lib/data/eventsDummyData.d.ts +0 -54
- package/dist/lib/data/eventsDummyData.d.ts.map +0 -1
- package/dist/lib/data/eventsDummyData.js +0 -586
- package/dist/lib/data/guideDummyData.d.ts +0 -3
- package/dist/lib/data/guideDummyData.d.ts.map +0 -1
- package/dist/lib/data/guideDummyData.js +0 -66
- package/dist/lib/data/opportunityFormData.d.ts +0 -13
- package/dist/lib/data/opportunityFormData.d.ts.map +0 -1
- package/dist/lib/data/opportunityFormData.js +0 -62
- package/dist/lib/data/opportunityFormPage.d.ts +0 -12
- package/dist/lib/data/opportunityFormPage.d.ts.map +0 -1
- package/dist/lib/data/opportunityFormPage.js +0 -33
- package/dist/lib/data/packageDummyData.d.ts +0 -3
- package/dist/lib/data/packageDummyData.d.ts.map +0 -1
- package/dist/lib/data/packageDummyData.js +0 -56
- package/dist/lib/data/rentalDummyData.d.ts +0 -3
- package/dist/lib/data/rentalDummyData.d.ts.map +0 -1
- package/dist/lib/data/rentalDummyData.js +0 -382
- package/dist/lib/data/rentalFormPage.d.ts +0 -11
- package/dist/lib/data/rentalFormPage.d.ts.map +0 -1
- package/dist/lib/data/rentalFormPage.js +0 -86
- package/dist/lib/data/staysDummyData.d.ts +0 -72
- package/dist/lib/data/staysDummyData.d.ts.map +0 -1
- package/dist/lib/data/staysDummyData.js +0 -694
- package/dist/lib/data/storeDummyData.d.ts +0 -33
- package/dist/lib/data/storeDummyData.d.ts.map +0 -1
- package/dist/lib/data/storeDummyData.js +0 -336
- package/dist/lib/data/travelPackageFormData.d.ts +0 -19
- package/dist/lib/data/travelPackageFormData.d.ts.map +0 -1
- package/dist/lib/data/travelPackageFormData.js +0 -51
- package/dist/lib/data/travelPackageFormPage.d.ts +0 -22
- package/dist/lib/data/travelPackageFormPage.d.ts.map +0 -1
- package/dist/lib/data/travelPackageFormPage.js +0 -40
- package/dist/lib/data/vehicleData.d.ts +0 -2
- package/dist/lib/data/vehicleData.d.ts.map +0 -1
- package/dist/lib/data/vehicleData.js +0 -187
- package/dist/lib/data/vehicleModels.d.ts +0 -2
- package/dist/lib/data/vehicleModels.d.ts.map +0 -1
- package/dist/lib/data/vehicleModels.js +0 -128
- package/dist/lib/hooks/usePersistentDraftState.d.ts +0 -20
- package/dist/lib/hooks/usePersistentDraftState.d.ts.map +0 -1
- package/dist/lib/hooks/usePersistentDraftState.js +0 -47
- package/dist/lib/models/forms.d.ts +0 -384
- package/dist/lib/models/forms.d.ts.map +0 -1
- package/dist/lib/models/forms.js +0 -121
- package/dist/lib/pricingActions.d.ts +0 -13
- package/dist/lib/pricingActions.d.ts.map +0 -1
- package/dist/lib/pricingActions.js +0 -16
- package/dist/lib/utils/entitySubmission.d.ts +0 -21
- package/dist/lib/utils/entitySubmission.d.ts.map +0 -1
- package/dist/lib/utils/entitySubmission.js +0 -10
- package/dist/lib/utils/imageUpload.d.ts +0 -4
- package/dist/lib/utils/imageUpload.d.ts.map +0 -1
- package/dist/lib/utils/imageUpload.js +0 -36
- package/dist/lib/utils/tileConverters.d.ts +0 -8
- package/dist/lib/utils/tileConverters.d.ts.map +0 -1
- package/dist/lib/utils/tileConverters.js +0 -59
|
@@ -1,36 +1,100 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import {
|
|
2
|
+
import { useAtomValue, useSetAtom } from "jotai";
|
|
3
3
|
import { useEffect } from 'react';
|
|
4
4
|
import { useQuery } from '@tanstack/react-query';
|
|
5
|
-
import { initializeAuthSessionAtom,
|
|
6
|
-
import { validateSession } from './actions/auth';
|
|
7
|
-
import {
|
|
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
|
|
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
|
-
|
|
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:
|
|
16
|
-
queryKey: [
|
|
17
|
-
queryFn:
|
|
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
|
-
|
|
32
|
-
|
|
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
|
-
|
|
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;
|
|
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":"AAEA,OAAO,KAON,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAQ/C,OAAO,EAGH,KAAK,cAAc,EAEnB,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,IAAI,EACZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAGrD,MAAM,WAAW,sBAAsB;IACnC,MAAM,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,YAAY,GAAG,UAAU,CAAC;IAC3E,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,eAAe;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,kBAAkB,EAAE,YAAY,GAAG,IAAI,CAAC;IACxC,qBAAqB,EAAE,CAAC,YAAY,EAAE,YAAY,GAAG,IAAI,KAAK,IAAI,CAAC;IACnE,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAC7D,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACnC,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzB,oBAAoB,EAAE,CAAC,MAAM,CAAC,EAAE,sBAAsB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACzE,WAAW,EAAE,CACT,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,KAAK,CAAC,EAAE,IAAI,EAAE,EACd,OAAO,CAAC,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;QACN,QAAQ,CAAC,EAAE,KAAK,CAAC;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,cAAc,CAAA;SAAE,CAAC,CAAC;QAClE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,cAAc,CAAC;KAC5C,KACA,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,UAAU,EAAE,CACR,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EAAE,EACjB,aAAa,EAAE,OAAO,KACrB,IAAI,CAAC;IACV,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IACxE,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,aAAa,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IAC5H,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACvD,qBAAqB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACtE,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,QAAQ,EAAE,CAAC,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAChE,uBAAuB,EAAE,MAAM,CAAC;IAChC,aAAa,EAAE,KAAK,EAAE,CAAC;IACvB,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;CAC3B;AA8BD,eAAO,MAAM,cAAc,uBAAgC,CAAC;AAE5D,wBAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,2CA0jBvE"}
|
|
@@ -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
|
|
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
|
-
|
|
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
|
|
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
|
|
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"
|
|
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"
|
|
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"
|
|
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":"AAAA,eAAO,MAAM,mBAAmB,oFAQtB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;AAE9E,eAAO,MAAM,yBAAyB,+jCAkD5B,CAAC;AAEX,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;AAE1F,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,CAAC;AAC9C,MAAM,MAAM,WAAW,GAAG,eAAe,GAAG,OAAO,CAAC;AAEpD,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC9B,WAAW,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,CAAC;IAC1C,eAAe,CAAC,EAAE,eAAe,GAAG,MAAM,GAAG,IAAI,CAAC;IAClD,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC,CAAC;AAEF,eAAO,MAAM,2BAA2B,4tBAmC9B,CAAC;AAEX,eAAO,MAAM,gCAAgC,
|
|
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
|
-
|
|
153
|
-
|
|
154
|
-
|
|
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: "
|
|
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: "
|
|
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":"AAAA,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,aAAa,CAAC;AAEpD,MAAM,WAAW,YAAY;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,cAAc,CAAC;CAC9B;AAED,eAAO,MAAM,YAAY,GAAI,OAAO,YAAY,WACN,CAAC;AAE3C,eAAO,MAAM,eAAe,GACxB,OAAO,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,EACnC,QAAQ,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,YAOnC,CAAC;AAEN,MAAM,WAAW,WAAY,SAAQ,YAAY;IAC7C,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,OAAO,GAAG,QAAQ,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,WAAW,oBAAoB;IACjC,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,qBAAqB,GAAG,KAAK,GAAG,UAAU,GAAG,WAAW,GAAG,MAAM,CAAC;AAE9E,MAAM,WAAW,sBAAuB,SAAQ,YAAY;IACxD,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,iBAAiB,EAAE,qBAAqB,CAAC;IACzC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED,MAAM,WAAW,YAAY;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,aAAa,CAAC,EAAE;QACZ,iBAAiB,EAAE,OAAO,CAAC;QAC3B,oBAAoB,EAAE,OAAO,CAAC;KACjC,CAAC;IACF,OAAO,CAAC,EAAE;QACN,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,gBAAgB,CAAC;QAC1D,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,KAAK,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,QAAQ,CAAC,EAAE;QACP,IAAI,EAAE,aAAa,GAAG,eAAe,CAAC;QACtC,QAAQ,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,WAAW,CAAC,EAAE;QACV,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,cAAc,CAAC;QAC5B,MAAM,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,sBAAsB,CAAC;CACtC;AAED,MAAM,WAAW,SAAS;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,sBAAsB;IACnC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,MAAM,cAAc,GAAG,IAAI,GAAG;IAChC,iBAAiB,CAAC,EAAE,sBAAsB,CAAC;CAC9C,CAAC;AAEF,MAAM,WAAW,cAAc;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE;QACV,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,WAAW,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,wBAAwB,CAAC;IAC5H,IAAI,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,QAAS,SAAQ,YAAY;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,WAAY,SAAQ,YAAY;IAC7C,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACjD,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,OAAO;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,cAAc,CAAC;IAC5B,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,WAAW,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,cAAc,GAAG,iBAAiB,GAAG,cAAc,GAAG,cAAc,GAAG,YAAY,GAAG,WAAW,GAAG,QAAQ,CAAC;IACtM,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE;QACR,WAAW,EAAE,OAAO,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,cAAc,GAAG,cAAc,GAAG,IAAI,CAAC;QAC5F,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KAC/B,CAAC;IACF,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,WAAW,EAAE,eAAe,EAAE,CAAC;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAClC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,wBAAwB;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE;QACL,QAAQ,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;QACnC,IAAI,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;KAClC,CAAC;CACL;AAED,MAAM,WAAW,0BAA0B;IACvC,OAAO,EAAE,wBAAwB,EAAE,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,aAAa;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,cAAc;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,0BAA0B;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,KAAK,CAAC,SAAS,GAAG;QAC1B,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACrB,CAAC,CAAC;CACN;AAED,MAAM,WAAW,cAAe,SAAQ,YAAY;IAChD,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,YAAY,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,YAAY,GAAG,QAAQ,CAAC;AAEpE,MAAM,WAAW,YAAa,SAAQ,YAAY;IAC9C,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAa,SAAQ,YAAY;IAC9C,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,OAAO;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,YAAY,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,QAAS,SAAQ,YAAY;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,IAAI;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,SAAS,EAAE,YAAY,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,OAAO,GAAG,WAAW,CAAC;AAE9D,MAAM,WAAW,iBAAiB;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,aAAc,SAAQ,YAAY;IAC/C,MAAM,EAAE,eAAe,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,SAAS;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,SAAS,EAAE,KAAK,CAAC;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5C,UAAU,EAAE,aAAa,GAAG,SAAS,CAAC;IACtC,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,SAAS,EAAE,YAAY,CAAC;IACxB,MAAM,EAAE,WAAW,GAAG,WAAW,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,YAAY,CAAC;CAC3B;AAED,MAAM,WAAW,oBAAoB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,YAAY,GAAG;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,UAAU,CAAC;IAC5C,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,qBAAqB,GAAG,KAAK,GAAG,MAAM,GAAG,IAAI,CAAC;AAE1D,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,qBAAqB,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,kBAAmB,SAAQ,YAAY;IACpD,gBAAgB,EAAE,aAAa,GAAG,SAAS,GAAG,QAAQ,GAAG,YAAY,CAAC;IACtE,0BAA0B,EAAE,OAAO,CAAC;IACpC,OAAO,EAAE,iBAAiB,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,wBAAwB;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,YAAY,CAAC;IACxB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,WAAW,CAAC;IACpE,aAAa,EAAE,iBAAiB,EAAE,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,eAAe,GACrB;IACE,IAAI,EAAE,wBAAwB,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,YAAY,CAAC;IACxB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IAC3C,aAAa,EAAE,iBAAiB,EAAE,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B,GACC;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB,GACC;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB,GACC;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,SAAS,CAAC,EAAE,YAAY,CAAC;CAC5B,GACC;IACE,IAAI,EAAE,cAAc,CAAC;IACrB,MAAM,EAAE,WAAW,GAAG,YAAY,GAAG,aAAa,CAAC;IACnD,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,eAAe,CAAC;CAC3B,GACC;IACE,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,UAAU,CAAC;IACnB,SAAS,CAAC,EAAE,YAAY,CAAC;CAC5B,CAAC;AAEN,MAAM,MAAM,iBAAiB,GACvB,SAAS,GACT,SAAS,GACT,UAAU,GACV,UAAU,GACV,WAAW,GACX,UAAU,GACV,QAAQ,GACR,UAAU,GACV,WAAW,CAAC;AAElB,MAAM,WAAW,iBAAiB;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,YAAY,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAC9B,aAAa,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,UAAU,GAAG,MAAM,GAAG,UAAU,CAAC;IACzC,MAAM,EAAE,iBAAiB,CAAC;IAC1B,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IACjE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,aAAa,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3F,QAAQ,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7C,IAAI,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,eAAe,GAAG,QAAQ,CAAA;KAAE,CAAC;CAC9E;AAED,MAAM,WAAW,cAAc;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,aAAa,GACnB,KAAK,GAAG,WAAW,GAAG,YAAY,GAAG,iBAAiB,GACtD,WAAW,GAAG,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;AAEzD,MAAM,WAAW,yBAAyB;IACtC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,aAAa,CAAC;IACzB,YAAY,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzD,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAED,MAAM,WAAW,gBAAgB;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACnC,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,SAAS,GAAG,OAAO,CAAC;CACpC;AAED,MAAM,WAAW,oBAAoB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,kBAAkB,CAAC;IAC3B,SAAS,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACjD,IAAI,EAAE,sBAAsB,GAAG,kBAAkB,CAAC;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC;IACjF,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,YAAY,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,QAAQ,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,CAAC;IAC1D,WAAW,EAAE,eAAe,GAAG,aAAa,CAAC;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,GAAG,WAAW,GAAG,YAAY,GAAG,QAAQ,GAAG,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC/F,eAAe,EAAE,YAAY,EAAE,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,CAAC,EAAE,KAAK,CAAC;QACf,KAAK,EAAE,YAAY,CAAC;QACpB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC/B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC1B,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;QACtC,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;KACvB,CAAC,CAAC;CACN;AAED,MAAM,WAAW,uBAAuB;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,KAAK,GAAG,QAAQ,GAAG,eAAe,GAAG,UAAU,CAAC;IAC5D,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB"}
|
|
1
|
+
{"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../../src/lib/models/chat.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/models/chat.js
CHANGED
|
@@ -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
|
+
}
|