diff --git a/packages/server/env.example b/packages/server/env.example index 5f6eb4c..761cefd 100644 --- a/packages/server/env.example +++ b/packages/server/env.example @@ -6,6 +6,7 @@ REDIS_PASSWORD= SESSION_SECRET= HOST= +HOST_DEV= FACEBOOK_CLIENT_ID= FACEBOOK_CLIENT_SECRET= diff --git a/packages/server/src/auth/providers/facebook.js b/packages/server/src/auth/providers/facebook.js index b316f29..aceb5fd 100644 --- a/packages/server/src/auth/providers/facebook.js +++ b/packages/server/src/auth/providers/facebook.js @@ -1,6 +1,4 @@ import path from 'path' -import dotenv from 'dotenv' -dotenv.config({ path: path.join(__dirname, '../../../.env') }) import { Strategy } from 'passport-facebook' @@ -9,10 +7,16 @@ import passport from 'passport' import genericStrategy from '../strategy' +const redirectPath = 'auth/facebook/redirect' +const callbackURL = + process.env.NODE_ENV !== 'production' + ? `${process.env.HOST_DEV}/${redirectPath}` + : `${process.env.HOST}/${redirectPath}` + const strategyOptions = { clientID: process.env.FACEBOOK_CLIENT_ID, clientSecret: process.env.FACEBOOK_CLIENT_SECRET, - callbackURL: `${process.env.HOST}/auth/facebook/redirect` ?? '/auth/facebook/redirect', + callbackURL: callbackURL, profileFields: ['id', 'displayName', 'picture.type(large)', 'email'], } diff --git a/packages/server/src/auth/providers/google.js b/packages/server/src/auth/providers/google.js index 949b16a..90d4d14 100644 --- a/packages/server/src/auth/providers/google.js +++ b/packages/server/src/auth/providers/google.js @@ -5,10 +5,16 @@ import passport from 'passport' import genericStrategy from '../strategy' +const redirectPath = 'auth/google/redirect' +const callbackURL = + process.env.NODE_ENV !== 'production' + ? `${process.env.HOST_DEV}/${redirectPath}` + : `${process.env.HOST}/${redirectPath}` + const strategyOptions = { clientID: process.env.GOOGLE_CLIENT_ID, clientSecret: process.env.GOOGLE_CLIENT_SECRET, - callbackURL: `${process.env.HOST}/auth/google/redirect` ?? '/auth/google/redirect', + callbackURL: callbackURL, } export function googleStrategy() { diff --git a/packages/server/src/auth/providers/twitter.js b/packages/server/src/auth/providers/twitter.js index 9a133bf..8edf121 100644 --- a/packages/server/src/auth/providers/twitter.js +++ b/packages/server/src/auth/providers/twitter.js @@ -5,10 +5,16 @@ import passport from 'passport' import genericStrategy from '../strategy' +const redirectPath = 'auth/twitter/redirect' +const callbackURL = + process.env.NODE_ENV !== 'production' + ? `${process.env.HOST_DEV}/${redirectPath}` + : `${process.env.HOST}/${redirectPath}` + const strategyOptions = { consumerKey: process.env.TWITTER_CONSUMER_KEY, consumerSecret: process.env.TWITTER_CONSUMER_SECRET, - callbackURL: `${process.env.HOST}/auth/twitter/redirect` ?? '/auth/twitter/redirect', + callbackURL: callbackURL, includeEmail: true, }