Code cleanup

This commit is contained in:
2026-06-30 12:11:53 -04:00
parent edbae3ffdf
commit a12dc77e12
7 changed files with 58 additions and 104 deletions
-18
View File
@@ -3,7 +3,6 @@ import { API_BASE_URL } from '../constants/api';
export const scheduleApi = { export const scheduleApi = {
scheduleMessage: async (reqBody, authBearerToken) => { scheduleMessage: async (reqBody, authBearerToken) => {
console.log('Scheduling message'); console.log('Scheduling message');
console.log(`Request body: ${reqBody}`);
const response = await fetch(`${API_BASE_URL}/api/v1/schedule/message`, { const response = await fetch(`${API_BASE_URL}/api/v1/schedule/message`, {
method: 'POST', method: 'POST',
@@ -23,7 +22,6 @@ export const scheduleApi = {
prepareMessage: async (reqBody, authBearerToken) => { prepareMessage: async (reqBody, authBearerToken) => {
console.log('Preparing Scheduled message'); console.log('Preparing Scheduled message');
console.log(`Request body: ${reqBody}`);
const response = await fetch( const response = await fetch(
`${API_BASE_URL}/api/v1/schedule/message/status/update`, `${API_BASE_URL}/api/v1/schedule/message/status/update`,
@@ -44,19 +42,3 @@ export const scheduleApi = {
} }
}, },
}; };
/*
* "scheduled": "{{scheduling_time}}",
"status": "{{status_pending}}",
"user_id": "{{user_id}}"
*/
/*
*
*
* {
"scheduled_message_id": "{{scheduled_message_id}}",
"status": "{{status_ready}}"
}
*
*/
-11
View File
@@ -4,7 +4,6 @@ export const scheduleEventApi = {
scheduleMessageEvent: async (reqBody, authBearerToken) => { scheduleMessageEvent: async (reqBody, authBearerToken) => {
console.log('Scheduling message Event'); console.log('Scheduling message Event');
console.log(`Request body: ${reqBody}`);
const response = await fetch( const response = await fetch(
`${API_BASE_URL}/api/v1/schedule/message/event`, `${API_BASE_URL}/api/v1/schedule/message/event`,
{ {
@@ -24,13 +23,3 @@ export const scheduleEventApi = {
} }
}, },
}; };
/*
{
"contact_id": "{{contact_id}}",
"message_id": "{{message_id}}",
"scheduled_message_id": "{{scheduled_message_id}}"
}
*/
@@ -89,9 +89,10 @@ function ConfirmationStep({
</div> </div>
</div> </div>
{ /* Scheduled time Section */} {/* Scheduled time Section */}
<div> <div>
Scheduled time: {scheduledTime ? scheduledTime.toISOString() : 'No schedule date'} Scheduled time:{' '}
{scheduledTime ? scheduledTime.toISOString() : 'No schedule date'}
</div> </div>
{/* Summary Section */} {/* Summary Section */}
@@ -1,6 +1,6 @@
import React, { useState } from 'react'; import React, { useState } from 'react';
function FutureTimeForm({scheduledTime, setScheduledTime}) { function FutureTimeForm({ scheduledTime, setScheduledTime }) {
const [selectedTime, setSelectedTime] = useState(new Date()); const [selectedTime, setSelectedTime] = useState(new Date());
const [error, setError] = useState(''); const [error, setError] = useState('');
const [success, setSuccess] = useState(''); const [success, setSuccess] = useState('');
@@ -8,9 +8,6 @@ function FutureTimeForm({scheduledTime, setScheduledTime}) {
const handleTimeChange = (e) => { const handleTimeChange = (e) => {
setSelectedTime(e.target.value); setSelectedTime(e.target.value);
setScheduledTime(new Date(e.target.value)); setScheduledTime(new Date(e.target.value));
// Clear errors when user starts typing again
console.log(`Scheduled Time: ${scheduledTime}`)
console.log(`Selected Time: ${selectedTime}`)
setError(''); setError('');
setSuccess(''); setSuccess('');
}; };
@@ -23,8 +20,6 @@ function FutureTimeForm({scheduledTime, setScheduledTime}) {
return; return;
} }
console.log(`Time: ${selectedTime}`)
const now = new Date(); const now = new Date();
const inputDate = new Date(selectedTime); const inputDate = new Date(selectedTime);
@@ -39,17 +34,20 @@ function FutureTimeForm({scheduledTime, setScheduledTime}) {
setError(''); setError('');
setSuccess('Time validated successfully!'); setSuccess('Time validated successfully!');
setScheduledTime(inputDate); setScheduledTime(inputDate);
console.log('Form submitted with time (selected):', selectedTime);
console.log('Form submitted with time (scheduled):', scheduledTime);
} }
}; };
return ( return (
<div style={{ maxWidth: '400px', margin: '2rem auto', fontFamily: 'Arial' }}> <div
style={{ maxWidth: '400px', margin: '2rem auto', fontFamily: 'Arial' }}
>
<h2>Schedule Event</h2> <h2>Schedule Event</h2>
<form onSubmit={validateAndSubmit}> <form onSubmit={validateAndSubmit}>
<div style={{ marginBottom: '1rem' }}> <div style={{ marginBottom: '1rem' }}>
<label htmlFor="future-time" style={{ display: 'block', marginBottom: '0.5rem' }}> <label
htmlFor="future-time"
style={{ display: 'block', marginBottom: '0.5rem' }}
>
Select Date and Time: Select Date and Time:
</label> </label>
<input <input
@@ -60,13 +58,15 @@ function FutureTimeForm({scheduledTime, setScheduledTime}) {
style={{ style={{
padding: '8px', padding: '8px',
width: '100%', width: '100%',
borderColor: error ? 'red' : '#ccc' borderColor: error ? 'red' : '#ccc',
}} }}
/> />
</div> </div>
{error && <p style={{ color: 'red', fontSize: '0.9rem' }}>{error}</p>} {error && <p style={{ color: 'red', fontSize: '0.9rem' }}>{error}</p>}
{success && <p style={{ color: 'green', fontSize: '0.9rem' }}>{success}</p>} {success && (
<p style={{ color: 'green', fontSize: '0.9rem' }}>{success}</p>
)}
<button <button
type="submit" type="submit"
@@ -76,7 +76,7 @@ function FutureTimeForm({scheduledTime, setScheduledTime}) {
color: 'white', color: 'white',
border: 'none', border: 'none',
borderRadius: '4px', borderRadius: '4px',
cursor: 'pointer' cursor: 'pointer',
}} }}
> >
Submit Submit
@@ -84,6 +84,6 @@ function FutureTimeForm({scheduledTime, setScheduledTime}) {
</form> </form>
</div> </div>
); );
}; }
export default FutureTimeForm; export default FutureTimeForm;
@@ -21,7 +21,6 @@ function MessageForm({
}; };
const handleIsScheduledCheckbox = (event) => { const handleIsScheduledCheckbox = (event) => {
console.log('Doing something to the checkbox');
setIsScheduledChecked(event.target.checked); setIsScheduledChecked(event.target.checked);
onToggleScheduled(event.target.checked); onToggleScheduled(event.target.checked);
}; };
@@ -50,10 +49,8 @@ function MessageForm({
const createdMessage = response.data[0]; const createdMessage = response.data[0];
setCreatedMessage(createdMessage); setCreatedMessage(createdMessage);
if (onMessageCreated) { if (onMessageCreated) {
console.log('Setting createdMessage');
onMessageCreated(createdMessage); onMessageCreated(createdMessage);
} }
console.log('Created message: ', createdMessage);
} }
} catch (error) { } catch (error) {
console.error(error); console.error(error);
@@ -31,12 +31,11 @@ function SendMessageWizardModal({ isOpen, onClose, onComplete }) {
/> />
); );
case 'schedule': case 'schedule':
// TODO: Add form for schedule step
return ( return (
<FutureTimeForm <FutureTimeForm
scheduledTime={wizard.scheduledTime} scheduledTime={wizard.scheduledTime}
setScheduledTime={wizard.setScheduledTime} setScheduledTime={wizard.setScheduledTime}
/> />
); );
case 'confirm': case 'confirm':
return ( return (
@@ -30,27 +30,27 @@ const useSendMessageWizard = () => {
case 'message': case 'message':
return state.message.trim().length > 0; return state.message.trim().length > 0;
case 'schedule': case 'schedule':
// TODO: Handle this
// return state.scheduledTime != null;
console.log('Checking to see if schedule can go to the next step'); console.log('Checking to see if schedule can go to the next step');
console.log(state.scheduledTime);
console.log(state.message);
// const result = state.scheduledTime instanceof Date && isNaN(state.scheduledTime.getTime());
if (state.scheduledTime == null) { if (state.scheduledTime == null) {
return false; return false;
} }
console.log('Scheduled time is not null'); console.log('Scheduled time is not null');
// const result = isNaN(state.scheduledTime.getTime()); const result =
const result = state.scheduledTime instanceof Date && isNaN(state.scheduledTime.getTime()); state.scheduledTime instanceof Date &&
console.log(result); isNaN(state.scheduledTime.getTime());
console.log(state.scheduledTime);
return !result; return !result;
case 'confirm': case 'confirm':
return true; return true;
default: default:
return false; return false;
} }
}, [state.step, state.selectedContacts.length, state.message, state.scheduledTime]); }, [
state.step,
state.selectedContacts.length,
state.message,
state.scheduledTime,
]);
const canGoBack = state.step !== 'select'; const canGoBack = state.step !== 'select';
@@ -89,17 +89,6 @@ const useSendMessageWizard = () => {
const nextStep = () => { const nextStep = () => {
if (!canProceedToNextStep()) return; if (!canProceedToNextStep()) return;
console.log('Going to next step');
console.log(state.isScheduled);
if (state.isScheduled) {
console.log('Scheduled Checked');
}
console.log(`Step: ${state.step}`);
// TODO: Handle navigation for schedule form
const stepOrder = ['select', 'message', 'schedule', 'confirm', 'result']; const stepOrder = ['select', 'message', 'schedule', 'confirm', 'result'];
const currentIndex = stepOrder.indexOf(state.step); const currentIndex = stepOrder.indexOf(state.step);
if (currentIndex < stepOrder.length - 1) { if (currentIndex < stepOrder.length - 1) {
@@ -128,10 +117,8 @@ const useSendMessageWizard = () => {
}; };
const prevStep = () => { const prevStep = () => {
// TODO: Handle navigation for schedule form
const stepOrder = ['select', 'message', 'schedule', 'confirm', 'result']; const stepOrder = ['select', 'message', 'schedule', 'confirm', 'result'];
const currentIndex = stepOrder.indexOf(state.step); const currentIndex = stepOrder.indexOf(state.step);
console.log(`Stepping back: ${state.step} isSheduled: ${state.isScheduled}`);
if (currentIndex > 0) { if (currentIndex > 0) {
if (state.step === 'confirm') { if (state.step === 'confirm') {
@@ -172,19 +159,18 @@ const useSendMessageWizard = () => {
try { try {
if (state.scheduledTime != null) { if (state.scheduledTime != null) {
console.log('Going to schedule message'); console.log('Going to schedule message');
// TODO: Put code here to schedule message
const schMsgReq = { const schMsgReq = {
scheduled: state.scheduledTime.toISOString(), scheduled: state.scheduledTime.toISOString(),
status: 'PENDING', status: 'PENDING',
user_id: tokenService.getUserId() user_id: tokenService.getUserId(),
}; };
console.log(schMsgReq);
const token = tokenService.bearerToken(); const token = tokenService.bearerToken();
const schMsgResponse = await scheduleApi.scheduleMessage(
const schMsgResponse = await scheduleApi.scheduleMessage(schMsgReq, token); schMsgReq,
console.log(schMsgResponse); token
);
if (schMsgResponse) { if (schMsgResponse) {
console.log('Message scheduled'); console.log('Message scheduled');
@@ -193,18 +179,18 @@ const useSendMessageWizard = () => {
for (let contact of state.selectedContacts) { for (let contact of state.selectedContacts) {
let schMsgEvtReq = { let schMsgEvtReq = {
contact_id: contact, contact_id: contact,
message_id:state.createdMessage.id, message_id: state.createdMessage.id,
scheduled_message_id: scheduledMessageId, scheduled_message_id: scheduledMessageId,
}; };
console.log(schMsgEvtReq);
const schMsgEvtResponse = await scheduleEventApi.scheduleMessageEvent(schMsgEvtReq, token); const schMsgEvtResponse =
console.log(schMsgEvtResponse); await scheduleEventApi.scheduleMessageEvent(schMsgEvtReq, token);
} }
console.log('Updating message status'); console.log('Updating message status');
const req = { const req = {
scheduled_message_id: scheduledMessageId, scheduled_message_id: scheduledMessageId,
status: 'READY' status: 'READY',
}; };
console.log(req); console.log(req);
const response = await scheduleApi.prepareMessage(req, token); const response = await scheduleApi.prepareMessage(req, token);
@@ -254,7 +240,7 @@ const useSendMessageWizard = () => {
submissionError: error.message || 'Failed to send messages', submissionError: error.message || 'Failed to send messages',
isSubmitting: false, isSubmitting: false,
isScheduled: false, isScheduled: false,
scheduledTime: null, scheduledTime: null,
})); }));
} }
}; };