@@ -62,16 +62,13 @@ import { LoginUser, UpdateUserEmail } from '$lib/server/email/templates';
6262import { apple , coocon , google , naver , portone , twitter } from '$lib/server/external-api' ;
6363import {
6464 createAccessToken ,
65- createRandomAvatar ,
6665 decryptAES ,
67- directUploadImage ,
6866 encryptAES ,
6967 getAllowedAgeRating ,
7068 getUserPoint ,
7169 getUserRevenue ,
7270 useFirstRow ,
7371} from '$lib/server/utils' ;
74- import { generateRandomName } from '$lib/utils' ;
7572import {
7673 CreateUserSchema ,
7774 DeleteUserSchema ,
@@ -1057,86 +1054,88 @@ builder.mutationFields((t) => ({
10571054 createUser : t . field ( {
10581055 type : CreateUserResult ,
10591056 args : { input : t . arg ( { type : CreateUserInput } ) } ,
1060- resolve : async ( _ , { input } , context ) => {
1061- const provisionedUsers = await database
1062- . select ( {
1063- id : ProvisionedUsers . id ,
1064- email : ProvisionedUsers . email ,
1065- token : ProvisionedUsers . token ,
1066- provider : ProvisionedUsers . provider ,
1067- principal : ProvisionedUsers . principal ,
1068- } )
1069- . from ( ProvisionedUsers )
1070- . where ( eq ( ProvisionedUsers . token , input . token ) ) ;
1071-
1072- if ( provisionedUsers . length === 0 ) {
1073- throw new IntentionalError ( '올바르지 않은 토큰이에요.' ) ;
1074- }
1075-
1076- const [ provisionedUser ] = provisionedUsers ;
1077-
1078- const emailUsages = await database
1079- . select ( { id : Users . id } )
1080- . from ( Users )
1081- . where ( and ( eq ( Users . email , provisionedUser . email . toLowerCase ( ) ) , eq ( Users . state , 'ACTIVE' ) ) ) ;
1082-
1083- if ( emailUsages . length > 0 ) {
1084- throw new IntentionalError ( '이미 가입된 이메일이에요.' ) ;
1085- }
1086-
1087- const avatarId = await directUploadImage ( {
1088- name : 'avatar' ,
1089- source : await createRandomAvatar ( ) ,
1090- } ) ;
1091-
1092- return await database . transaction ( async ( tx ) => {
1093- const [ profile ] = await tx
1094- . insert ( Profiles )
1095- . values ( {
1096- name : input . name ?? generateRandomName ( provisionedUser . id + provisionedUser . email ) ,
1097- avatarId,
1098- } )
1099- . returning ( { id : Profiles . id } ) ;
1100-
1101- const [ user ] = await tx
1102- . insert ( Users )
1103- . values ( {
1104- email : provisionedUser . email ,
1105- profileId : profile . id ,
1106- role : 'USER' ,
1107- state : 'ACTIVE' ,
1108- } )
1109- . returning ( { id : Users . id } ) ;
1110-
1111- await tx . update ( Images ) . set ( { userId : user . id } ) . where ( eq ( Images . id , avatarId ) ) ;
1112-
1113- if ( input . marketingConsent ) {
1114- await tx . insert ( UserMarketingConsents ) . values ( { userId : user . id } ) ;
1115- }
1116-
1117- if ( provisionedUser . provider && provisionedUser . principal ) {
1118- await tx . insert ( UserSingleSignOns ) . values ( {
1119- userId : user . id ,
1120- provider : provisionedUser . provider ,
1121- principal : provisionedUser . principal ,
1122- email : provisionedUser . email . toLowerCase ( ) ,
1123- } ) ;
1124- }
1125-
1126- await tx . delete ( ProvisionedUsers ) . where ( eq ( ProvisionedUsers . id , provisionedUser . id ) ) ;
1127-
1128- const [ session ] = await tx . insert ( UserSessions ) . values ( { userId : user . id } ) . returning ( { id : UserSessions . id } ) ;
1129-
1130- const accessToken = await createAccessToken ( session . id ) ;
1131- context . event . cookies . set ( 'glyph-at' , accessToken , {
1132- path : '/' ,
1133- maxAge : dayjs . duration ( 1 , 'year' ) . asSeconds ( ) ,
1134- } ) ;
1135-
1136- return {
1137- token : accessToken ,
1138- } ;
1139- } ) ;
1057+ resolve : async ( ) => {
1058+ throw new IntentionalError ( '지금은 회원가입을 할 수 없어요' ) ;
1059+
1060+ // const provisionedUsers = await database
1061+ // .select({
1062+ // id: ProvisionedUsers.id,
1063+ // email: ProvisionedUsers.email,
1064+ // token: ProvisionedUsers.token,
1065+ // provider: ProvisionedUsers.provider,
1066+ // principal: ProvisionedUsers.principal,
1067+ // })
1068+ // .from(ProvisionedUsers)
1069+ // .where(eq(ProvisionedUsers.token, input.token));
1070+
1071+ // if (provisionedUsers.length === 0) {
1072+ // throw new IntentionalError('올바르지 않은 토큰이에요.');
1073+ // }
1074+
1075+ // const [provisionedUser] = provisionedUsers;
1076+
1077+ // const emailUsages = await database
1078+ // .select({ id: Users.id })
1079+ // .from(Users)
1080+ // .where(and(eq(Users.email, provisionedUser.email.toLowerCase()), eq(Users.state, 'ACTIVE')));
1081+
1082+ // if (emailUsages.length > 0) {
1083+ // throw new IntentionalError('이미 가입된 이메일이에요.');
1084+ // }
1085+
1086+ // const avatarId = await directUploadImage({
1087+ // name: 'avatar',
1088+ // source: await createRandomAvatar(),
1089+ // });
1090+
1091+ // return await database.transaction(async (tx) => {
1092+ // const [profile] = await tx
1093+ // .insert(Profiles)
1094+ // .values({
1095+ // name: input.name ?? generateRandomName(provisionedUser.id + provisionedUser.email),
1096+ // avatarId,
1097+ // })
1098+ // .returning({ id: Profiles.id });
1099+
1100+ // const [user] = await tx
1101+ // .insert(Users)
1102+ // .values({
1103+ // email: provisionedUser.email,
1104+ // profileId: profile.id,
1105+ // role: 'USER',
1106+ // state: 'ACTIVE',
1107+ // })
1108+ // .returning({ id: Users.id });
1109+
1110+ // await tx.update(Images).set({ userId: user.id }).where(eq(Images.id, avatarId));
1111+
1112+ // if (input.marketingConsent) {
1113+ // await tx.insert(UserMarketingConsents).values({ userId: user.id });
1114+ // }
1115+
1116+ // if (provisionedUser.provider && provisionedUser.principal) {
1117+ // await tx.insert(UserSingleSignOns).values({
1118+ // userId: user.id,
1119+ // provider: provisionedUser.provider,
1120+ // principal: provisionedUser.principal,
1121+ // email: provisionedUser.email.toLowerCase(),
1122+ // });
1123+ // }
1124+
1125+ // await tx.delete(ProvisionedUsers).where(eq(ProvisionedUsers.id, provisionedUser.id));
1126+
1127+ // const [session] = await tx.insert(UserSessions).values({ userId: user.id }).returning({ id: UserSessions.id });
1128+
1129+ // const accessToken = await createAccessToken(session.id);
1130+ // context.event.cookies.set('glyph-at', accessToken, {
1131+ // path: '/',
1132+ // maxAge: dayjs.duration(1, 'year').asSeconds(),
1133+ // });
1134+
1135+ // return {
1136+ // token: accessToken,
1137+ // };
1138+ // });
11401139 } ,
11411140 } ) ,
11421141
0 commit comments