When pasting text containing multiple email addresses into the attendee
input, the component now splits by comma, semicolon, newline, or space
and adds each valid email as an individual attendee chip. Duplicates
are silently skipped. Any invalid chunks remain in the input field
with an error message so the user can correct them manually.
Co-authored-by: JacobiusMakes <jgalperin98@gmail.com>
* update minicalendar
* update left sidebar
* chore: update twake-mui to version 1.1.4
- Update @linagora/twake-mui from local file to npm package 1.1.4
- Add margin to TempCalendarsInput section in sidebar
- Remove margin from PeopleSearch component (moved to parent)
* Changed wording on my calendars and event creation button
---------
Co-authored-by: Camille Moussu <cmoussu@linagora.com>
- Display 2-letter initials (e.g., "JD" for "John Doe") instead of single letter
- Add getInitials helper function in avatarUtils for reusability
- Update Avatar in PeopleSearch, CalendarSearch, and Menubar components
- Remove avatarUrl prop usage across all Avatar components
* [#420] passed a new param to people search to customize slotprops
* Added back function lost in rebase
---------
Co-authored-by: Camille Moussu <cmoussu@linagora.com>
- Replace default TimePicker field with custom EditableTimeField
- Allow free typing with multiple formats (HH:mm, HHmm, H, etc.)
- Show dropdown on click while maintaining typing capability
- Center-align time input text
- Add small prop support to PeopleSearch component
- Pass small prop to PeopleSearch in AttendeeSearch
- Use small prop in EventFormFields Participants field
- Use small prop in TempCalendarsInput for left sidebar
* added error snackbar for api fails
* improved error page to be shown only for userdata errors and to allow retrying
* fixed test breaking only in local because of timezone and reduced warnings for easier reading of tests results
* added error management for failure inside calendars imports
* added error snackbar for api fails
* improved error page to be shown only for userdata errors and to allow retrying
* added error management for failure inside calendars imports
Co-authored-by: Camille Moussu <cmoussu@linagora.com>
- Add formatDateTimeInTimezone() helper to format dates in event's original timezone
- Fix EventUpdateModal to display event times in original timezone instead of browser timezone
- Fix EventModal (duplicate event) with same timezone handling
- Update EventDisplay tests to use flexible date pattern
- Replace 'Meeting link generated' text with 'Join Visio conference' button
- Button opens video conference link in new tab when clicked
- Use contained variant styling to match Save button appearance
- Maintain copy and delete functionality for meeting links
- Rename 'Alarm' to 'Notification' for better clarity
- Rename 'Attendees' to 'Participants' with updated placeholder text
- Replace 'Visibility' dropdown with 'Visible to' toggle buttons (All/Participants)
- Remove CONFIDENTIAL option, keep only PUBLIC and PRIVATE
- Add icons (PublicIcon/LockIcon) with fixed sizing for toggle buttons
- Rename 'Show as' to 'Show me as'
- Fix ResponsiveDialog scroll bar positioning in expanded mode
- Update PeopleSearch placeholder to 'Start typing a name or email'
* feat: prepare project for cozy-ui migration
Build Configuration
- Add Stylus support via @rsbuild/plugin-stylus
- Add SVGR support via @rsbuild/plugin-svgr
- Update rsbuild.config.ts with custom configuration
- Add historyApiFallback for SPA routing
ESLint Configuration
- Create .eslintrc.json with react-app configuration
- Remove eslintConfig from package.json
CSS to Stylus Migration
Convert all 5 CSS files to Stylus (.styl) format:
- src/App.css to src/App.styl
- src/index.css to src/index.styl
- src/components/Calendar/Calendar.css to src/components/Calendar/Calendar.styl
- src/components/Calendar/CustomCalendar.css to src/components/Calendar/CustomCalendar.styl
- src/components/Menubar/Menubar.css to src/components/Menubar/Menubar.styl
- Update all imports from .css to .styl
- Preserve all styling rules and values
MUI Styling Cleanup
- Replace all MUI sx props with standard style props across 15+ components
- Convert MUI spacing units (mr: 2 to marginRight: 16px)
- Convert MUI shorthand props (p: 2 to padding: 16px, mb: 1 to marginBottom: 8px)
- Remove MUI-specific syntax (&.Mui-checked selectors)
- Maintain exact visual appearance
FullCalendar Fixes
- Comment out problematic CSS rule in CustomCalendar.styl
- Fix display issues with timegrid slot labels
Files Modified
- Config: rsbuild.config.ts, .eslintrc.json, package.json
- Styling: 5 CSS to Stylus conversions, 15+ component sx to style updates
- Components: All components using MUI sx props updated
Development Workflow
- Continue using existing development commands
- Stylus files are now the source of truth for styling
- MUI components work with standard style props
- ESLint uses familiar react-app rules
Dependencies Added
- @rsbuild/plugin-stylus
- @rsbuild/plugin-svgr
* [123] added people search in left side bar
* [#123] added toggle temp calendars
* [#123] added tests]
* fixup! [123] added people search in left side bar
* fixup! [#123] added toggle temp calendars
* [#123] fixed event creation on Enter
* fixup! [#123] fixed event creation on Enter
* fixup! [#123] fixed event creation on Enter
* fixup! [#123] fixed event creation on Enter
* fixup! [#123] fixed event creation on Enter
* fixup! [#123] fixed event creation on Enter
* fixup! [#123] fixed event creation on Enter
* fixup! [#123] fixed event creation on Enter
* [#123] added color diff for temp calendars
* fixup! [#123] fixed event creation on Enter
* fixup! [#123] added tests]
* fixup! [#123] added toggle temp calendars
---------
Co-authored-by: Camille Moussu <cmoussu@linagora.com>