@@ -154,11 +161,11 @@ export default function ShowEvent() {
Participants
{' '}
- {session.data?.user?.id === event.organizer.id ? (
+ {session.data?.user?.id ===
+ eventData.data.event.organizer.id ? (
- {session.data?.user?.id === event.organizer.id ? (
+ {session.data?.user?.id ===
+ eventData.data.event.organizer.id ? (
diff --git a/src/components/custom-ui/labeled-input.tsx b/src/components/custom-ui/labeled-input.tsx
index 5505e14..4900e66 100644
--- a/src/components/custom-ui/labeled-input.tsx
+++ b/src/components/custom-ui/labeled-input.tsx
@@ -36,6 +36,12 @@ export default function LabeledInput({
value || defaultValue || '',
);
+ React.useEffect(() => {
+ if (value !== undefined) {
+ setInputValue(value);
+ }
+ }, [value]);
+
const handleInputChange = (e: React.ChangeEvent) => {
setInputValue(e.target.value);
if (rest.onChange) {
diff --git a/src/components/forms/event-form.tsx b/src/components/forms/event-form.tsx
index 11bf820..d89efdc 100644
--- a/src/components/forms/event-form.tsx
+++ b/src/components/forms/event-form.tsx
@@ -64,9 +64,6 @@ const EventForm: React.FC = (props) => {
const patchEvent = usePatchApiEventEventID();
const router = useRouter();
- // Extract event fields for form defaults
- const event = eventData?.data?.event;
-
// State for date and time fields
const [startDate, setStartDate] = React.useState(undefined);
const [startTime, setStartTime] = React.useState('');
@@ -87,22 +84,24 @@ const EventForm: React.FC = (props) => {
// Update state when event data loads
React.useEffect(() => {
- if (props.type === 'edit' && event) {
- setTitle(event.title || '');
+ if (props.type === 'edit' && eventData?.data?.event) {
+ setTitle(eventData?.data?.event.title || '');
// Parse start_time and end_time
- if (event.start_time) {
- const start = new Date(event.start_time);
+ if (eventData?.data?.event.start_time) {
+ const start = new Date(eventData?.data?.event.start_time);
setStartDate(start);
setStartTime(start.toTimeString().slice(0, 5)); // "HH:mm"
}
- if (event.end_time) {
- const end = new Date(event.end_time);
+ if (eventData?.data?.event.end_time) {
+ const end = new Date(eventData?.data?.event.end_time);
setEndDate(end);
setEndTime(end.toTimeString().slice(0, 5)); // "HH:mm"
}
- setLocation(event.location || '');
- setDescription(event.description || '');
- setSelectedParticipants(event.participants?.map((u) => u.user) || []);
+ setLocation(eventData?.data?.event.location || '');
+ setDescription(eventData?.data?.event.description || '');
+ setSelectedParticipants(
+ eventData?.data?.event.participants?.map((u) => u.user) || [],
+ );
} else if (props.type === 'create' && startFromUrl && endFromUrl) {
// If creating a new event with URL params, set title and dates
setTitle('');
@@ -113,7 +112,7 @@ const EventForm: React.FC = (props) => {
setEndDate(end);
setEndTime(end.toTimeString().slice(0, 5)); // "HH:mm"
}
- }, [event, props.type, startFromUrl, endFromUrl]);
+ }, [eventData?.data?.event, props.type, startFromUrl, endFromUrl]);
async function handleSubmit(e: React.FormEvent) {
e.preventDefault();
@@ -181,7 +180,7 @@ const EventForm: React.FC = (props) => {
router.push(`/events/${eventID}`)}
variant='success'
buttonText='show'
@@ -198,12 +197,12 @@ const EventForm: React.FC = (props) => {
// Use DB values for created_at/updated_at in edit mode
const createdAtValue =
- props.type === 'edit' && event?.created_at
- ? event.created_at
+ props.type === 'edit' && eventData?.data?.event?.created_at
+ ? eventData.data.event.created_at
: new Date().toISOString();
const updatedAtValue =
- props.type === 'edit' && event?.updated_at
- ? event.updated_at
+ props.type === 'edit' && eventData?.data?.event?.updated_at
+ ? eventData.data.event.updated_at
: new Date().toISOString();
// Format date for display
diff --git a/src/components/settings/tabs/account.tsx b/src/components/settings/tabs/account.tsx
index 0b8fe60..db18b0f 100644
--- a/src/components/settings/tabs/account.tsx
+++ b/src/components/settings/tabs/account.tsx
@@ -98,7 +98,7 @@ export default function AccountTab() {
toast.custom((t) => (