diff --git a/apps/app/additional.d.ts b/apps/app/additional.d.ts index 2675ddc8..791f3d2e 100644 --- a/apps/app/additional.d.ts +++ b/apps/app/additional.d.ts @@ -19,8 +19,8 @@ declare namespace NodeJS { NEXT_PUBLIC_RESOURCE_AUDIENCE: string; NEXT_PUBLIC_ID_ISSUER: string; NOVU_API_KEY: string; - NOVU_BACKEND_URL: string; - NOVU_WS_URL: string; - NOVU_APP_ID: string; + NEXT_PUBLIC_NOVU_BACKEND_URL: string; + NEXT_PUBLIC_NOVU_WS_URL: string; + NEXT_PUBLIC_NOVU_APP_ID: string; } } diff --git a/apps/app/app/api/logto/auth/route.ts b/apps/app/app/api/logto/auth/route.ts index 75eaa97c..a9be5a55 100644 --- a/apps/app/app/api/logto/auth/route.ts +++ b/apps/app/app/api/logto/auth/route.ts @@ -52,14 +52,6 @@ export async function GET(req: Request, res: NextApiResponse) { id: result.id, }, }); - try { - await Sub.createSub( - data.id, - data.email || '', - data.name || '', - data.image || '', - ); - } catch (err) {} } catch (err) { // handle error } @@ -97,10 +89,6 @@ export async function GET(req: Request, res: NextApiResponse) { }, }, }); - - try { - await Sub.createSub(data.userId, '', '', ''); - } catch (err) {} } } catch (err) { // handle error @@ -130,6 +118,27 @@ export async function GET(req: Request, res: NextApiResponse) { // WALDO MIGRATION LOGIC END---------END // Novu Integration START--------START + const query = await prisma?.v2Account.findFirst({ + where: { + providerAccountId: + logto_user.userInfo.identities[ + Object.keys(logto_user.userInfo.identities)[0] + ].userId, + }, + include: { + user: true, + }, + }); + const user = query?.user; + try { + await Sub.createSub( + user?.id || '', + user?.email || '', + user?.name || '', + user?.image || '', + ); + } catch (err) {} + // Novu Integration END--------END return Response.redirect(process.env.BASE_URL); diff --git a/apps/app/app/components/Header.tsx b/apps/app/app/components/Header.tsx index 5858e9e5..42687bdf 100644 --- a/apps/app/app/components/Header.tsx +++ b/apps/app/app/components/Header.tsx @@ -10,6 +10,7 @@ import { NotificationBell, } from '@novu/notification-center'; //import useSite from '@site'; +import NovuCustomStyling from './_styles/novu.css'; export default function Header() { const s = useSession(); const session = s?.session; @@ -34,10 +35,11 @@ export default function Header() {
{({ unseenCount }) => ( diff --git a/apps/app/package.json b/apps/app/package.json index f1ebd5b4..200d5741 100644 --- a/apps/app/package.json +++ b/apps/app/package.json @@ -3,7 +3,7 @@ "version": "0.1.0", "private": true, "scripts": { - "dev": "next dev --port 3008", + "dev": "next dev --port 3005", "build": "next build", "start": "next start", "lint": "next lint", diff --git a/packages/identity/utils/authUtils.ts b/packages/identity/utils/authUtils.ts index c741e77c..254be758 100644 --- a/packages/identity/utils/authUtils.ts +++ b/packages/identity/utils/authUtils.ts @@ -44,13 +44,14 @@ const createSession = async (): Promise => { const jwtData = logtoUserDataRes.claims; const identityData = - logtoUserDataRes.userInfo.identities[ + logtoUserDataRes.userInfo.identities[ Object.keys(logtoUserDataRes.userInfo.identities)[0] ]; const waldoUserDataReq = await axios.get( process.env.NEXT_PUBLIC_BASE_URL + '/api/logto/usermeta', ); - const waldoUser: { blacklisted: boolean; id: string } = await waldoUserDataReq.data; + const waldoUser: { blacklisted: boolean; id: string } = + await waldoUserDataReq.data; const scopeDataReq = await axios.get(accessTokenUrl, { withCredentials: true, diff --git a/packages/novu/novu.ts b/packages/novu/novu.ts index 57e408a2..0dbb5ace 100644 --- a/packages/novu/novu.ts +++ b/packages/novu/novu.ts @@ -1,8 +1,8 @@ import { Novu } from '@novu/node'; const config = { - backendUrl: process.env.NOVU_BACKEND_URL, - socketUrl: process.env.NOVU_WS_URL, + backendUrl: process.env.NEXT_PUBLIC_NOVU_BACKEND_URL, + socketUrl: process.env.NEXT_PUBLIC_NOVU_WS_URL, }; const novu = new Novu(process.env.NOVU_API_KEY, config); diff --git a/packages/novu/process-env.d.ts b/packages/novu/process-env.d.ts index 90de9d6f..6b3c79d9 100644 --- a/packages/novu/process-env.d.ts +++ b/packages/novu/process-env.d.ts @@ -2,8 +2,8 @@ namespace NodeJS { interface ProcessEnv { [key: string]: string | undefined; NOVU_API_KEY: string; - NOVU_BACKEND_URL: string; - NOVU_WS_URL: string; - NOVU_APP_ID: string; + NEXT_PUBLIC_NOVU_BACKEND_URL: string; + NEXT_PUBLIC_NOVU_WS_URL: string; + NEXT_PUBLIC_NOVU_APP_ID: string; } } diff --git a/packages/novu/subscribers/sub.ts b/packages/novu/subscribers/sub.ts index bf8e30cb..dc2741e2 100644 --- a/packages/novu/subscribers/sub.ts +++ b/packages/novu/subscribers/sub.ts @@ -5,11 +5,13 @@ const createSub = async ( name: string, avatar: string, ) => { - await novu.subscribers.identify(waldoId, { - email: email, - firstName: name, - avatar: avatar, - }); + try { + const q = await novu.subscribers.identify(waldoId, { + //email: email, + firstName: name, + avatar: avatar, + }); + } catch (err) {} }; const sendTest = async () => { diff --git a/turbo.json b/turbo.json index 3817b864..c8b3d090 100644 --- a/turbo.json +++ b/turbo.json @@ -22,9 +22,9 @@ "MAPI_APP_SECRET", "MAPI_RESOURCE_URI", "NOVU_API_KEY", - "NOVU_BACKEND_URL", - "NOVU_WS_URL", - "NOVU_APP_ID" + "NEXT_PUBLIC_NOVU_BACKEND_URL", + "NEXT_PUBLIC_NOVU_WS_URL", + "NEXT_PUBLIC_NOVU_APP_ID" ], "outputs": ["dist/**", ".next/**", "out/**"] },