* added lockedSMS to future routes
* add orgMigrations routes to future
* correct metadata
* small fix
* add orgMigrations to future
* Move components to client components
* Remove tRPC element from edit user RSC
* Get username for meta
* Remove suspense query
* Remove orgMigrations from app router
* Type fix
* Revert "Remove suspense query"
This reverts commit eadd814f6e4a5d6856d9218342b7909c22fe62c6.
* Handle suspenseQuery in app router
* User edit page, fetch data server side
* Update yarn.lock
* Export getFixedT
* Set PageWrapper as root layout for settings
* Settings Layout accepts strings for shell heading
* Add OOO to app router settings
* Refactor layout for my-account pages
* Remove instances of pages router from my-account
* Refactor security pages
* Add billing to app router
* Add admin API link to layout
* Add api keys page
* Webhooks WIP
* Refactor SettingsHeader to client component
* Add webhook pages
* Refactor API keys page
* Add admin app page
* Type fix
* fix types
* fix developer/webhooks/[id] param value type error
* remove unnecessary code
* do not pass t prop to CreateNewWebhookButton
* fix type errors in webhook-edit-view
* fix the remaining type errors
* do not use prisma directly in generateMetadata
* remove use client if unnecessary
* Remove unused shell heading from SettingsLayoutAppDir
* improve metadata
* fix billing page
* fix import in settings/teams
* Use next `notFound()`
* fix type check
* fix type check
* remove unused code
* Fix calendar setting page
* Separate settings pages into route groups
* Refactor admin settings pages
* Remove meta instance from billing page route
* Update settings layoutAppDir
* Refactor developer settings pages
* Refactor out of office
* Refactor my account settings
* Refactor admin api page
* Refactor security pages
* Type fix
* fix styling in settings layout
---------
Co-authored-by: Somay Chauhan <somaychauhan98@gmail.com>
Co-authored-by: Omar López <zomars@me.com>
Co-authored-by: Benny Joo <sldisek783@gmail.com>
* feat: block pending meetings for requires confirmation
* add i18n
* fix:typecheck
* fix(requires-confirmation-block): Fixes type error
* fix(requires-confirmation-block): Fixes type error
* Tweak to set BookingWhereInput as the explicit type instead of as
* fix: type error
---------
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* feat: Add rescheduledBy & canceledBy fields in the DB
* fix: type check
* fix: type check
* fix: use session user email for reschedule
* fix: unit test
* feat: db field email validation
* feat: rescheduledBy and cancelledBy in webhooks
* revert unrelated changes.
* make session user secondary, default to Anonymous
* if condition not required
* Make cancelledBy optional
Co-authored-by: Syed Ali Shahbaz <52925846+alishaz-polymath@users.noreply.github.com>
* update cancel booking type
* fix: update cancelledBy in db when requesting reschedule
* remove default value for fields
* fix: type check
* feat: manage fields via api v1
* fix: add fields in booking read api v1
* test: expand to cover new fields
* fix: use cancelledBy param on booking page
---------
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
Co-authored-by: Syed Ali Shahbaz <52925846+alishaz-polymath@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* fix: Workflow action 'email to host' only sends to one host of team event
* add in missing files
* fix host logic
* uncomment working test
* code refactor
* use connected calendar email
* add changes to util file
* fix: extend eventType info in sendCancelledReminders
---------
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
* WIP
* add frontend
* backend to update weight
* UI improvements
* WIP weight algorithm
* enable weights switch + algorithm improvements
* fix weightDescription
* clean up code
* remove OOOEntryHost from schema.prisma
* implement logic (not yet tested)
* add tests for weight algorithm
* add test with weight adjustment
* finish unit tests
* fix type error
* fix type error
* add migration
* fix type error
* fix event type update handler
* fix failing test
* UI fixes for saving hosts
* make sure weightAdjustment is not lost on host changes
* fix weightadjustment for new hosts
* add weightAdjustment to availableUsers
* fix type errors
* fix default value for weight
* make weight and weightAdjustment optional
* fix type errors from schema changes
* type fix
* clean up code
* improve comments
* remove comment
* clean up code
* add tests & weight adjustment improvments
* better variable naming
* fixes for weight adjustments
* make weightAdjustments proportional to weights
* fix previous host weight adjustments
* improved tests for weight adjustments
* save weight and priority + sort hosts correctly
* fix type error
* code clean up
* remove console.log
* use BookingRepository to fetch bookings of users
* use BookingRepository to fetch bookings in getLuckyUser
* fix type errors
* fix weightAdjustment if changed from fixed to rr host
* disable weights when 'assign all' is enabled
* typo
* allow 0 weight
* set min (and max) for weight and priority
* use useWatch
* code clean up
* fix type error
* only count accepted bookings for RR
* fix type error
* improve data fetching of bookings
* only filter bookings of availableUsers
* code clean up form feedback
* fix tests
* don't count no show bookings
* code clean up
* choose user with highest weight
* use one reduce instead of two
* use reduce instead of filter and map
* don't show weights toggle when 'assign all' is enabled
* design fixes
* fix type errors
* fix: type check
* Update packages/features/eventtypes/components/AddMembersWithSwitch.tsx
---------
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Create confirmation dialog for attendees
* Add disabling host emails option
* Fix DOM issues
* Allow updating disabling emails on backend
* Pass metadata to sendEmails functions
* Clean up
* Type fixes
* Fix test
* Allow for enterprise only
* Type fix
* Test fix
* Check for parentId
* Disable emails for sendScheduledEmails and sendScheduledSeatsEmails
* Remove unused variable
* Only update disable all emails if event type belongs to an org
* Disable scheduling mandatory reminder workflow if attendee emails are disabled
* Refactor disable email UI
* Update copy
* Type fixes
* Fix missing params
* feat: provide option to allow rescheduling with the same round-robin
host
* update
* fix type error
* fix and update
* fix type error
* update
* remove
* Update getEventTypesFromDB.ts
* add test
* small fix
* fix requested changes
* fix: uncaught errors in PaymentService
* fix: uncaught errors in WebhookService
* fix: uncaught errors in sendPayload
* fix: uncaught PaymentService typings in payment utils
* fix: Remove missing users from assignment (#16115)
* remove missing users from assignment
* early return
* fix: use organization default fixedPrice if self-serve/default price is passed in (#15966)
* Use fixed price if default (selfserve) is used
* fix conditional
* use .env instead of hard coded values
* feedback
* fix: display skeleton loader (#16114)
* fix: display loader
* fix: updated skelton loader
* feat: create new markNoShow endpoint (#15738)
* feat: create new markNoShow endpoint
* chore: add schema
* chore: update name
* chore: save progress
* refactor: improve code and types
* fix: unit test
* chore: improvements
* chore: move query to booking repository
* fix: type error
* chore: Remove cal.ai email assistant (#16003)
* Delete apps/ai directory
* removed cal-ai app from app store
---------
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
* feat: Add upcoming bookings feature to GET /api/bookings endpoint (#16060)
* feat: Add upcoming bookings feature to GET /api/bookings endpoint
- Added support for filtering upcoming bookings by adding the `upcoming` query parameter to the GET /api/bookings endpoint.
- When `upcoming` is set to "true", only upcoming bookings are returned.
- Regular users can now retrieve only their upcoming bookings by setting `upcoming` to "true".
- System-wide admins and organization admins can also retrieve only upcoming bookings by setting `upcoming` to "true".
* feat: Add status filter to booking API endpoint
This commit adds a new `status` filter to the booking API endpoint. The `status` filter allows filtering bookings by their status, overriding the `dateFrom` and `dateTo` filters. The only valid value for the `status` filter is "upcoming".
* Update _get.ts
---------
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
* fix: Hide personal booking theme when in an organization (#16117)
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* fix: uncaught errors in WebhookService
* fix: uncaught errors in sendPayload
---------
Co-authored-by: Syed Ali Shahbaz <52925846+alishaz-polymath@users.noreply.github.com>
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: Imamuzzaki Abu Salam <imamuzzaki@gmail.com>
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
* add reassign host to edit dropdown
* add dialog to reassign rr host
* Design improvements
* add translations
* only show reassign for admin/owner
* add first version of email template
* Init rr assign endpoint
* Pass booking information to rr assign endpoint
* Only allow attendee of booking to reassign themselves
* Send email to reassigned and cancelled member
* On reassign change calendar events
* Add workflows for new host
* On reassign new host - rr
* Fix icon
* Abstract reassignment logic
* Update calendar invite
* Add tests
* Clean up
* Merge with `main`
* Type fixes
* Add back dialog and handle no available hosts
* Handle if rr host is not organizer
* Fix calendar invites when organizer doesn't change
* Clean up
* Clean up
* Type fixes
* Type fixes
* Type fixes
* Type fixes
* Type fix
* Type fixes
* Type fixes
* Add custom responses to evt object
* Type fixes
* Type fix
* Type fix
* Type fixes
* Type fixes
* Type fix
* Type fix
* Update tests
* Type fixes
* Fix tests
* Fix tests
* Add booking repository
* Fix tests
* Fix tests
* Add doesUserIdHaveAccessToBooking for user
* Add check if user is team admin
* Check user permission tRPC route
* Type fixes
* Correct Promise.all
* UI fixes
* UI fixes
* Remove unused assigned hosts prop
* Type fix
* Remove unused frontend code
* Include user priority
* Fallback to event type users for older event types
* Get booking workflow reminder
* Revert back to eventType.hosts
* Fix lint
* Handle changing workflows
* Type fixes
* Type fixes
* Type fix
* Fix tests
* Update new booking imports
* Fix imports
* Type fix
* Type fix
* Fix adding all members to reassignment emails
* Fix cancelled RR emails to show old host
* Ensure consistent event titles
* Send new event workflows to new host
* Change event name if organizer changed
* Fix query error
* Delete old booking reference when reassigning
* Type fixes
* Type fixes
* Fix test
* Rename func isAdminOfTeamOrParentOrg
* Select specific workflow fields
* Address workflow feedback
* Delete const
* Address feedback
---------
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* fix: meeting link is not updated
* fix: broken ui in edit location dialog
* Update editLocation.handler.ts
---------
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
* Init
* Add mock trpc context
* Intro mockDatabaseClient
* Introduce mockDatabaseClient class
* Add delete video app test
* Add calendar test
* Remove unused func from bookingScenario
* Remove console.log
* Add app repository
* Add createMany method to event type repository
* Remove instance of MockDatabaseClient from video test
* Add destination calendar repository
* Remove instances of MockDatabaseClient
* abstract logic to own handler
* Remove dev dependency
* Clean up
* Type fix
* Pull yarn.lock from main
---------
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
* refactor: event-types CREATE, UPDATE accept scheduleId and return scheduleId
* chore: enable passing scheduleId to event-types create handler
* chore: use platform-libraries at version 0.0.20
* fix: remove team output schedule
* finish merge main into this branch
* fix: dont allow adding scheduleId to event-type if user does not own schedule
* Support automatically adding user to organization
* Use Repository
* Fix unit test
* Code Improvements
* Fix type error
---------
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>