diff --git a/lib/constants.ts b/lib/constants.ts index c286ac6..1234567 100644 --- a/lib/constants.ts +++ b/lib/constants.ts @@ -1,29 +1,32 @@ +import { env } from 'next-runtime-env' + export const OAUTH_SCOPE = 'atproto transition:generic transition:chat.bsky' -export const OZONE_SERVICE_DID = - process.env.NEXT_PUBLIC_OZONE_SERVICE_DID || undefined +export const OZONE_SERVICE_DID = env('NEXT_PUBLIC_OZONE_SERVICE_DID') || undefined -export const PLC_DIRECTORY_URL = - process.env.NEXT_PUBLIC_PLC_DIRECTORY_URL || 'https://plc.directory' +export const PLC_DIRECTORY_URL = env('NEXT_PUBLIC_PLC_DIRECTORY_URL') || 'https://plc.directory' -export const SOCIAL_APP_URL = - process.env.NEXT_PUBLIC_SOCIAL_APP_URL || 'https://bsky.app' +export const SOCIAL_APP_URL = env('NEXT_PUBLIC_SOCIAL_APP_URL') || 'https://bsky.app' -export const SOCIAL_APP_DOMAIN = - process.env.NEXT_PUBLIC_SOCIAL_APP_DOMAIN || 'bsky.app' +export const SOCIAL_APP_DOMAIN = env('NEXT_PUBLIC_SOCIAL_APP_DOMAIN') || 'bsky.app' -export const STARTER_PACK_OG_CARD_URL = - process.env.NEXT_PUBLIC_STARTER_PACK_OG_CARD_URL || - `https://ogcard.cdn.bsky.app/start` +export const STARTER_PACK_OG_CARD_URL = env('NEXT_PUBLIC_STARTER_PACK_OG_CARD_URL') || `https://ogcard.cdn.bsky.app/start` @@ -40,25 +43,25 @@ export const STARTER_PACK_OG_CARD_URL = `https://ogcard.cdn.bsky.app/start` -export const NEW_ACCOUNT_MARKER_THRESHOLD_IN_DAYS = process.env - .NEXT_PUBLIC_NEW_ACCOUNT_MARKER_THRESHOLD_IN_DAYS - ? parseInt(process.env.NEXT_PUBLIC_NEW_ACCOUNT_MARKER_THRESHOLD_IN_DAYS) - : 7 +export const NEW_ACCOUNT_MARKER_THRESHOLD_IN_DAYS = env('NEXT_PUBLIC_NEW_ACCOUNT_MARKER_THRESHOLD_IN_DAYS') + ? parseInt(env('NEXT_PUBLIC_NEW_ACCOUNT_MARKER_THRESHOLD_IN_DAYS') || '7') + : 7 -export const YOUNG_ACCOUNT_MARKER_THRESHOLD_IN_DAYS = process.env - .NEXT_PUBLIC_YOUNG_ACCOUNT_MARKER_THRESHOLD_IN_DAYS - ? parseInt(process.env.NEXT_PUBLIC_YOUNG_ACCOUNT_MARKER_THRESHOLD_IN_DAYS) - : 30 +export const YOUNG_ACCOUNT_MARKER_THRESHOLD_IN_DAYS = env('NEXT_PUBLIC_YOUNG_ACCOUNT_MARKER_THRESHOLD_IN_DAYS') + ? parseInt(env('NEXT_PUBLIC_YOUNG_ACCOUNT_MARKER_THRESHOLD_IN_DAYS') || '30') + : 30 export const DOMAINS_ALLOWING_EMAIL_COMMUNICATION = ( - process.env.NEXT_PUBLIC_DOMAINS_ALLOWING_EMAIL_COMMUNICATION || '' + env('NEXT_PUBLIC_DOMAINS_ALLOWING_EMAIL_COMMUNICATION') || '' ).split(',') export const HIGH_PROFILE_FOLLOWER_THRESHOLD = process.env .NEXT_PUBLIC_HIGH_PROFILE_FOLLOWER_THRESHOLD - ? parseInt(process.env.NEXT_PUBLIC_HIGH_PROFILE_FOLLOWER_THRESHOLD) + ? parseInt(env('NEXT_PUBLIC_HIGH_PROFILE_FOLLOWER_THRESHOLD') || '0') : Infinity export const FALLBACK_VIDEO_URL = ( - process.env.NEXT_PUBLIC_FALLBACK_VIDEO_URL || '' + env('NEXT_PUBLIC_FALLBACK_VIDEO_URL') || '' ).split(':') // strike to account suspension duration mapping (in hours) @@ -91,18 +91,18 @@ const parseStrikeSuspensionConfig = ( export const STRIKE_TO_SUSPENSION_DURATION_IN_HOURS = parseStrikeSuspensionConfig( - process.env.NEXT_PUBLIC_STRIKE_SUSPENSION_CONFIG || '', + env('NEXT_PUBLIC_STRIKE_SUSPENSION_CONFIG') || '', ) export const AUTOMATED_ACTION_EMAIL_IDS = { warningWithTakedown: - process.env.NEXT_PUBLIC_WARNING_WITH_TAKEDOWN_EMAIL_TEMPLATE_ID, + env('NEXT_PUBLIC_WARNING_WITH_TAKEDOWN_EMAIL_TEMPLATE_ID'), suspensionWithTakedown: - process.env.NEXT_PUBLIC_SUSPENSION_WITH_TAKEDOWN_EMAIL_TEMPLATE_ID, + env('NEXT_PUBLIC_SUSPENSION_WITH_TAKEDOWN_EMAIL_TEMPLATE_ID'), suspensionWithoutTakedown: - process.env.NEXT_PUBLIC_SUSPENSION_WITHOUT_TAKEDOWN_EMAIL_TEMPLATE_ID, + env('NEXT_PUBLIC_SUSPENSION_WITHOUT_TAKEDOWN_EMAIL_TEMPLATE_ID'), permanentTakedown: - process.env.NEXT_PUBLIC_PERMANENT_TAKEDOWN_EMAIL_TEMPLATE_ID, + env('NEXT_PUBLIC_PERMANENT_TAKEDOWN_EMAIL_TEMPLATE_ID'), takedownWithoutStrike: - process.env.NEXT_PUBLIC_TAKEDOWN_WITHOUT_STRIKE_EMAIL_TEMPLATE_ID, + env('NEXT_PUBLIC_TAKEDOWN_WITHOUT_STRIKE_EMAIL_TEMPLATE_ID'), }