CON2-242 Adding user info before booking #329
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request implements several improvements and new features related to user profile completion and booking creation, as well as some API and type definition updates. The most significant changes include enforcing profile completeness before allowing bookings, expanding booking permissions, introducing a profile completion modal on the frontend, and refactoring API/type definitions for better consistency.
I had to go back and fix the addresses because the endpoint was changed at some point without updating the frontend. So the PR became a bit bigger than I would of liked. Validation still has to be added to the process a bit more, but that would need to be in another ticket so it doesnt get too big.
Backend: Profile and Booking Logic
storage_manager
andtenant_admin
, in addition touser
andrequester
.Frontend: Profile Completion Modal
ProfileCompletionModal
component that prompts users to complete their profile (full name required, phone and address recommended/optional) before proceeding with bookings. The modal includes validation, multi-language support, and user feedback.API & Type Definitions
addAddress
,updateAddress
) to use aCreateAddressInput
type, ensuring theuser_id
is not redundantly included in the payload. [1] [2]These changes collectively improve data integrity, user experience, and maintainability across the booking and user profile flows.