f6cd51ba97
## Overview This PR refactors the `CalendarEventDetails` component to dynamically display both standard and custom fields added via the metadata API, instead of using a hardcoded field list. ## Changes - Replaced hardcoded `fieldsToDisplay` array with dynamic field fetching using `useFieldListFieldMetadataItems` hook - Split fields into `standardFields` (maintaining original order) and `customFields` - Introduced `renderField` helper function to eliminate code duplication - Custom fields now automatically appear at the bottom of the detail panel after standard fields - Maintained exact field order and all existing functionality including participant response status display ## Technical Details - Uses existing `useFieldListFieldMetadataItems` pattern already established in the codebase - Standard field order explicitly defined: startsAt, endsAt, conferenceLink, location, description - Participant response status (Yes/Maybe/No) correctly positioned between first 2 and last 3 standard fields - All fields respect permissions and visibility settings from metadata ## Testing - ✅ Verified all standard fields display in correct order - ✅ Added custom field `mycustomfieldtest` via metadata API - displays correctly at bottom - ✅ Participant responses (Yes/Maybe/No) render correctly with avatars - ✅ Event title, creation date, and event chip display properly - ✅ Canceled event styling (strikethrough) works - ✅ No console errors or regressions detected - ✅ Read-only behavior maintained (calendar events sync from external sources) ## Screenshots <img width="1401" height="746" alt="CleanShot 2025-11-17 at 11 23 57" src="https://github.com/user-attachments/assets/3d967ec5-6d31-4fc3-b971-c73ea521c87d" /> ## Related This enables users to extend calendar events with custom metadata fields that will automatically display in the UI without code changes. --------- Co-authored-by: Charles Bochet <charles@twenty.com>