Files
calendar/packages/features/eventtypes
Syed Ali ShahbazGitHubbot_apkDevin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
5943a8ad64 fix: strip avatar and profile from children payload in managed event type updates (#28239)
* fix: strip avatar and profile from children payload in managed event type updates

When assigning users to managed event types with ~85+ users, the request
body exceeds the 1MB server limit. The root cause is that the full
ChildrenEventType objects (including avatar, profile, username, membership)
are sent in the update payload, even though the server schema (childSchema)
only needs owner.{id, name, email, eventTypeSlugs} and hidden.

Avatar data can be particularly large when stored as base64 data URLs.
With 85 users each having ~10KB+ avatars, the payload easily exceeds 1MB.

This fix strips the children array down to only server-required fields
before sending the mutation, while keeping the full data in form state
for UI display purposes.

Co-Authored-By: ali@cal.com <alishahbaz7@gmail.com>

* refactor: extract stripChildrenForPayload into shared utility instead of duplicating in test

Addresses Cubic AI review feedback: the test file was duplicating the
stripping logic instead of importing it from production code.

- Extracted stripChildrenForPayload() into childrenEventType.ts
- Updated useEventTypeForm.ts to import and use the shared function
- Updated test file to import from production code instead of defining its own copy

Co-Authored-By: bot_apk <apk@cognition.ai>

* fix: remove unused @ts-expect-error directive in useEventTypeForm

Co-Authored-By: bot_apk <apk@cognition.ai>

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: bot_apk <apk@cognition.ai>
2026-03-02 10:05:07 -03:00
..