@@ -4,7 +4,7 @@ import type {
44 GenericQueryCtx ,
55} from 'convex/server' ;
66
7- export const getAuthUserId = async < DataModel extends GenericDataModel > (
7+ export const getAuthUserIdentity = async < DataModel extends GenericDataModel > (
88 ctx : GenericQueryCtx < DataModel >
99) => {
1010 const identity = await ctx . auth . getUserIdentity ( ) ;
@@ -13,23 +13,42 @@ export const getAuthUserId = async <DataModel extends GenericDataModel>(
1313 return null ;
1414 }
1515
16- return identity . subject as DocumentByName < DataModel , 'user' > [ '_id' ] ;
16+ return {
17+ ...identity ,
18+ sessionId : identity . sessionId as DocumentByName <
19+ DataModel ,
20+ 'session'
21+ > [ '_id' ] ,
22+ userId : identity . subject as DocumentByName < DataModel , 'user' > [ '_id' ] ,
23+ } ;
24+ } ;
25+
26+ export const getAuthUserId = async < DataModel extends GenericDataModel > (
27+ ctx : GenericQueryCtx < DataModel >
28+ ) => {
29+ const identity = await getAuthUserIdentity ( ctx ) ;
30+
31+ if ( ! identity ) {
32+ return null ;
33+ }
34+
35+ return identity . subject ;
1736} ;
1837
1938export const getSession = async < DataModel extends GenericDataModel > (
2039 ctx : GenericQueryCtx < DataModel > ,
21- _sessionId ?: any
40+ _sessionId ?: DocumentByName < DataModel , 'session' > [ '_id' ]
2241) => {
23- let sessionId = _sessionId ;
42+ let sessionId : any = _sessionId ;
2443
2544 if ( ! sessionId ) {
26- const identity = await ctx . auth . getUserIdentity ( ) ;
45+ const identity = await getAuthUserIdentity ( ctx ) ;
2746
2847 if ( ! identity ) {
2948 return null ;
3049 }
3150
32- sessionId = identity . sessionId as any ;
51+ sessionId = identity . sessionId ;
3352 }
3453
3554 return ( await ctx . db . get ( sessionId ) ) as DocumentByName <
0 commit comments