From cf2da92ed80c7c3d59e8112771d7fbbcd97a9690 Mon Sep 17 00:00:00 2001 From: Tom Pretty Date: Fri, 12 Feb 2021 16:04:33 +0000 Subject: [PATCH] wip --- src/create-reminder-signup/lambda/lambda.ts | 1 + src/create-reminder-signup/lambda/local.ts | 1 + src/create-reminder-signup/lambda/models.ts | 18 +++++++++++------- 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/create-reminder-signup/lambda/lambda.ts b/src/create-reminder-signup/lambda/lambda.ts index c79553b..b9f960d 100644 --- a/src/create-reminder-signup/lambda/lambda.ts +++ b/src/create-reminder-signup/lambda/lambda.ts @@ -103,6 +103,7 @@ const createSignup = async ( body: 'Invalid body', }; } + console.log(signupRequest); const token = await identityAccessTokenPromise; const pool = await dbConnectionPoolPromise; diff --git a/src/create-reminder-signup/lambda/local.ts b/src/create-reminder-signup/lambda/local.ts index 5c01db4..a9617c4 100644 --- a/src/create-reminder-signup/lambda/local.ts +++ b/src/create-reminder-signup/lambda/local.ts @@ -17,6 +17,7 @@ function runLocal() { body: JSON.stringify({ email: 'test-reminders10@theguardian.com', reminderPeriod: '2021-01-01', + reminderCreatedAt: 'foo', reminderFrequencyMonths: 3, reminderPlatform: 'WEB', reminderComponent: 'EPIC', diff --git a/src/create-reminder-signup/lambda/models.ts b/src/create-reminder-signup/lambda/models.ts index 1b16f3f..d21bfa1 100644 --- a/src/create-reminder-signup/lambda/models.ts +++ b/src/create-reminder-signup/lambda/models.ts @@ -35,17 +35,19 @@ function isValidEmail(email: string): boolean { return re.test(email.toLowerCase()); } -type ReminderPeriod = string; +type DateString = string; -function isValidReminderPeriod(reminderPeriod: string): boolean { - const date = Date.parse(reminderPeriod); +function isValidDateString(dateString: string): boolean { + console.log(dateString); + const date = Date.parse(dateString); + console.log('after!'); return !isNaN(date); } export interface BaseSignupRequest { email: Email; country?: string; - reminderCreatedAt?: string; + reminderCreatedAt: DateString; reminderPlatform: ReminderPlatform; reminderComponent: ReminderComponent; reminderStage: ReminderStage; @@ -53,7 +55,7 @@ export interface BaseSignupRequest { } export interface OneOffSignupRequest extends BaseSignupRequest { - reminderPeriod: ReminderPeriod; + reminderPeriod: DateString; } export interface RecurringSignupRequest extends BaseSignupRequest { @@ -74,8 +76,8 @@ export const oneOffSignupValidator = createDetailedValidator isValidEmail(email) ? null : 'Invalid email', - ReminderPeriod: (reminderPeriod: string) => - isValidReminderPeriod(reminderPeriod) ? null : 'Invalid date', + DateString: (dateString: string) => + isValidDateString(dateString) ? null : 'Invalid date', }, }, ); @@ -87,6 +89,8 @@ export const recurringSignupValidator = createDetailedValidator isValidEmail(email) ? null : 'Invalid email', + DateString: (dateString: string) => + isValidDateString(dateString) ? null : 'Invalid date', }, }, );