From 2cc3568c2c2edee75e7e422bdc62201dfd2d3338 Mon Sep 17 00:00:00 2001 From: Adinorio Date: Sun, 4 May 2025 00:38:41 +0800 Subject: [PATCH 1/4] feat(calendar): show Google logo for events synced from Google Calendar It displays the Google logo before the event title for Google-synced events. It can be changed to google calendar icon soon because currently, I am not sure how to add an image to be usable. --- .../ui/src/components/ui/legacy/calendar/EventCard.tsx | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx b/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx index 451289c6bb..49c0b35538 100644 --- a/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx +++ b/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx @@ -1014,6 +1014,14 @@ export default function EventCard({ dates, event, level = 0 }: EventCardProps) { aria-label="Event locked" /> )} + {localEvent.google_event_id && ( + Google Calendar + )} {localEvent.title || 'Untitled event'} From 32e709b0d88d30dc944cb38078c9d2a194db8fd8 Mon Sep 17 00:00:00 2001 From: Adinorio <156925721+Adinorio@users.noreply.github.com> Date: Sat, 3 May 2025 16:41:14 +0000 Subject: [PATCH 2/4] style: apply prettier formatting --- packages/ui/src/components/ui/legacy/calendar/EventCard.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx b/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx index 49c0b35538..e96affabb4 100644 --- a/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx +++ b/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx @@ -1018,7 +1018,7 @@ export default function EventCard({ dates, event, level = 0 }: EventCardProps) { Google Calendar )} From 52e981ab94df172d35e0e1fed2fda0fe0c64ecb8 Mon Sep 17 00:00:00 2001 From: Adinorio Date: Sun, 4 May 2025 02:04:04 +0800 Subject: [PATCH 3/4] feat(calendar): add Google Calendar icon for synced events - Add Google Calendar icon to event cards and all-day events - Add Google Calendar indicator badge in event edit modal - Implement robust conditional rendering with proper type checking - Add responsive light/dark mode styling for better visibility --- apps/web/public/media/google-calendar-icon.png | Bin 0 -> 10473 bytes .../ui/legacy/calendar/AllDayEventBar.tsx | 9 +++++++++ .../components/ui/legacy/calendar/EventCard.tsx | 7 ++++--- .../ui/legacy/calendar/UnifiedEventModal.tsx | 16 ++++++++++++++-- 4 files changed, 27 insertions(+), 5 deletions(-) create mode 100644 apps/web/public/media/google-calendar-icon.png diff --git a/apps/web/public/media/google-calendar-icon.png b/apps/web/public/media/google-calendar-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..4f38e1883623e58166ede28d833c1ae3855318dd GIT binary patch literal 10473 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 L+)~G0v3c}ALOwPb literal 0 HcmV?d00001 diff --git a/packages/ui/src/components/ui/legacy/calendar/AllDayEventBar.tsx b/packages/ui/src/components/ui/legacy/calendar/AllDayEventBar.tsx index 5b088cd06d..ad8c7fce56 100644 --- a/packages/ui/src/components/ui/legacy/calendar/AllDayEventBar.tsx +++ b/packages/ui/src/components/ui/legacy/calendar/AllDayEventBar.tsx @@ -95,6 +95,15 @@ const AllDayEventBar = ({ dates }: { dates: Date[] }) => { )} onClick={() => openModal(event.id, 'all-day')} > + {typeof event.google_event_id === 'string' && event.google_event_id.trim() !== '' && ( + Google Calendar + )} {event.title} ); diff --git a/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx b/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx index 49c0b35538..3aecd09f9c 100644 --- a/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx +++ b/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx @@ -1014,12 +1014,13 @@ export default function EventCard({ dates, event, level = 0 }: EventCardProps) { aria-label="Event locked" /> )} - {localEvent.google_event_id && ( + {typeof localEvent.google_event_id === 'string' && localEvent.google_event_id.trim() !== '' && ( Google Calendar )} diff --git a/packages/ui/src/components/ui/legacy/calendar/UnifiedEventModal.tsx b/packages/ui/src/components/ui/legacy/calendar/UnifiedEventModal.tsx index dbc5463f88..1c7b96a2de 100644 --- a/packages/ui/src/components/ui/legacy/calendar/UnifiedEventModal.tsx +++ b/packages/ui/src/components/ui/legacy/calendar/UnifiedEventModal.tsx @@ -852,8 +852,20 @@ export function UnifiedEventModal() { !open && closeModal()}> - - {isEditing ? 'Edit Event' : 'Create Event'} + + {isEditing ? 'Edit Event' : 'Create Event'} + {event.google_event_id && typeof event.google_event_id === 'string' && event.google_event_id.trim() !== '' && ( +
+ Google Calendar + Google Calendar +
+ )}
{isEditing From 69d9a5084c4c2b2945530f2e42d3c1aa10da4acf Mon Sep 17 00:00:00 2001 From: Adinorio <156925721+Adinorio@users.noreply.github.com> Date: Sat, 3 May 2025 18:11:23 +0000 Subject: [PATCH 4/4] style: apply prettier formatting --- .../ui/legacy/calendar/AllDayEventBar.tsx | 19 +++++++------ .../ui/legacy/calendar/EventCard.tsx | 19 +++++++------ .../ui/legacy/calendar/UnifiedEventModal.tsx | 28 ++++++++++--------- 3 files changed, 35 insertions(+), 31 deletions(-) diff --git a/packages/ui/src/components/ui/legacy/calendar/AllDayEventBar.tsx b/packages/ui/src/components/ui/legacy/calendar/AllDayEventBar.tsx index ad8c7fce56..71c0ca01aa 100644 --- a/packages/ui/src/components/ui/legacy/calendar/AllDayEventBar.tsx +++ b/packages/ui/src/components/ui/legacy/calendar/AllDayEventBar.tsx @@ -95,15 +95,16 @@ const AllDayEventBar = ({ dates }: { dates: Date[] }) => { )} onClick={() => openModal(event.id, 'all-day')} > - {typeof event.google_event_id === 'string' && event.google_event_id.trim() !== '' && ( - Google Calendar - )} + {typeof event.google_event_id === 'string' && + event.google_event_id.trim() !== '' && ( + Google Calendar + )} {event.title} ); diff --git a/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx b/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx index 95370604ee..2f6af1f5b6 100644 --- a/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx +++ b/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx @@ -1014,15 +1014,16 @@ export default function EventCard({ dates, event, level = 0 }: EventCardProps) { aria-label="Event locked" /> )} - {typeof localEvent.google_event_id === 'string' && localEvent.google_event_id.trim() !== '' && ( - Google Calendar - )} + {typeof localEvent.google_event_id === 'string' && + localEvent.google_event_id.trim() !== '' && ( + Google Calendar + )} {localEvent.title || 'Untitled event'} diff --git a/packages/ui/src/components/ui/legacy/calendar/UnifiedEventModal.tsx b/packages/ui/src/components/ui/legacy/calendar/UnifiedEventModal.tsx index 1c7b96a2de..0ceeee37fa 100644 --- a/packages/ui/src/components/ui/legacy/calendar/UnifiedEventModal.tsx +++ b/packages/ui/src/components/ui/legacy/calendar/UnifiedEventModal.tsx @@ -852,20 +852,22 @@ export function UnifiedEventModal() { !open && closeModal()}> - + {isEditing ? 'Edit Event' : 'Create Event'} - {event.google_event_id && typeof event.google_event_id === 'string' && event.google_event_id.trim() !== '' && ( -
- Google Calendar - Google Calendar -
- )} + {event.google_event_id && + typeof event.google_event_id === 'string' && + event.google_event_id.trim() !== '' && ( +
+ Google Calendar + Google Calendar +
+ )}
{isEditing