-
Notifications
You must be signed in to change notification settings - Fork 8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: noShow status conflict #17659
base: main
Are you sure you want to change the base?
fix: noShow status conflict #17659
Conversation
@sanjeevs9 is attempting to deploy a commit to the cal Team on Vercel. A member of the Team first needs to authorize it. |
Hey there and thank you for opening this pull request! 👋🏼 We require pull request titles to follow the Conventional Commits specification and it looks like your proposed title needs to be adjusted. Details:
|
Graphite Automations"Add consumer team as reviewer" took an action on this PR • (11/15/24)1 reviewer was added to this PR based on Keith Williams's automation. "Add community label" took an action on this PR • (11/15/24)1 label was added to this PR based on Keith Williams's automation. "Add ready-for-e2e label" took an action on this PR • (11/17/24)1 label was added to this PR based on Keith Williams's automation. |
This is my first PR on Cal.com. I would appreciate your reviews. |
can you please sign CLA ? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!!
E2E results are ready! |
fixed the type error!! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we can go with a much simpler approach of just updating the attendee no show status inside booking.get infinite query cache.
you can checkout apps/web/modules/event-types/views/event-types-listing-view.tsx to check how can we do that
Earlier, we were managing three local states for attendee, group attendee, and no-show attendee dialogue boxes. The issue was that they were not synchronized . I removed all the individual logic and created a single global state to maintain consistency. Additionally, the attendee order in the dialogue box now matches the attendee order on the card, as both are sorted based on the ID and also i checked this if i am missing something pls let me know or if you want some another approach |
If you recheck the issue, the problem will be in the dialog box's state. I don't know if you noticed or not. but previously if you marked a booking as a no-show and refreshed then the booking was marked as a no-show. I believe it was just for the dialog box state. |
What does this PR do?
This PR fixes an issue where two components were performing the same task but were not synced. As a result, updates made in one component were not reflected in the other, leading to inconsistencies. The fix ensures that both components are properly synchronized, so changes made in one are instantly reflected in the other without requiring a page refresh.
20241115163001.mp4
-Removed unnecessary state logic: Simplified state management by removing redundant useState for noShow.
-Added type definitions: Improved type safety and maintainability with explicit type annotations.
-Defined a global state for mutation: Implemented a global state to manage mutation handling across components.
Mandatory Tasks (DO NOT REMOVE)
How should this be tested?
Checklist