diff --git a/src/lib/server/twilio/client.ts b/src/lib/server/twilio/client.ts new file mode 100644 index 0000000..40bdee2 --- /dev/null +++ b/src/lib/server/twilio/client.ts @@ -0,0 +1,4 @@ +import { TWILIO_ACCOUNT_SID, TWILIO_AUTH_TOKEN } from '$env/static/private'; +import twilio from 'twilio'; + +export const TwilioClient = twilio(TWILIO_ACCOUNT_SID, TWILIO_AUTH_TOKEN); diff --git a/src/lib/server/twilio/index.ts b/src/lib/server/twilio/index.ts index 57dfde3..4f1cce4 100644 --- a/src/lib/server/twilio/index.ts +++ b/src/lib/server/twilio/index.ts @@ -1 +1 @@ -export * from './twilio.config'; +export * from './client'; diff --git a/src/lib/server/twilio/twilio.config.ts b/src/lib/server/twilio/twilio.config.ts deleted file mode 100644 index e49f0cf..0000000 --- a/src/lib/server/twilio/twilio.config.ts +++ /dev/null @@ -1,30 +0,0 @@ -import { env } from '$env/dynamic/private'; -import { PhoneRegex } from '$lib/regex'; -import { logger } from '$lib/server/logger'; -import { z } from 'zod'; - -export interface TwilioConfiguration { - twilio_account_sid: string; - twilio_auth_token: string; - twilio_phone_number: string; -} - -export const TwilioConfig = (): TwilioConfiguration => { - const { success, data, error } = z - .object({ - TWILIO_ACCOUNT_SID: z.string().min(1), - TWILIO_AUTH_TOKEN: z.string().min(1), - TWILIO_PHONE_NUMBER: z.string().regex(PhoneRegex), - }) - .safeParse(env); - - if (!success) { - logger.error(error.message); - } - - return { - twilio_account_sid: data!.TWILIO_ACCOUNT_SID, - twilio_auth_token: data!.TWILIO_AUTH_TOKEN, - twilio_phone_number: data!.TWILIO_PHONE_NUMBER, - }; -}; diff --git a/src/routes/app/sms/+page.server.ts b/src/routes/app/sms/+page.server.ts index 1f219f6..b447710 100644 --- a/src/routes/app/sms/+page.server.ts +++ b/src/routes/app/sms/+page.server.ts @@ -1,8 +1,8 @@ +import { TWILIO_PHONE_NUMBER } from '$env/static/private'; import { PhoneRegex } from '$lib/regex'; import { logger } from '$lib/server/logger'; -import { TwilioConfig } from '$lib/server/twilio'; +import { TwilioClient } from '$lib/server/twilio'; import { fail, type Actions } from '@sveltejs/kit'; -import twilio from 'twilio'; import zod from 'zod'; export const actions = { @@ -31,17 +31,11 @@ export const actions = { return fail(400, { error: 'invalid_message' }); } - const twilioConfig = TwilioConfig(); - const twilioClient = twilio( - twilioConfig.twilio_account_sid, - twilioConfig.twilio_auth_token - ); - try { - const result = await twilioClient.messages.create({ + const result = await TwilioClient.messages.create({ to: phone, body: message, - from: twilioConfig.twilio_phone_number, + from: TWILIO_PHONE_NUMBER, }); logger.debug(result); } catch (e) {