Compare commits

...
813 Commits
Author SHA1 Message Date
Omar López 9dab915ddd chore: upgrade dependencies (#20740)
Post release / release (push) Canceled after 0s
2025-04-21 15:21:10 -03:00
GitHub Actions 8fca8f3910 chore: release v5.2.3 2025-04-21 18:20:38 +00:00
Omar López 1638465607 chore: remove swagger app and its dependencies (#20798) 2025-04-21 18:13:19 +00:00
Keith Williams ab7eb7f4b1 chore: Add layout.tsx to Foundation team CODEOWNERS (#20802) 2025-04-21 23:35:10 +05:30
Benny Joo 0592badd56 fix: semi-colon in the bottom of layout UI (#20799) 2025-04-21 15:46:23 +00:00
Morgan 7e82b8fa86 fix: sms workflow api v2 (#20795)
* fix: sms workflow api v2

* fixup! fix: sms workflow api v2
2025-04-21 14:41:59 +00:00
7dfb71ca30 fix: Location not changing when rescheduling (#20404)
* fix: location not chnging

* update

* update

* Update EventManager.ts

* update

* update

* Update reschedule.test.ts

---------

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
2025-04-21 14:45:59 +01:00
d99ecde0e2 fix: improved 'use-identity-login' error message for users trying to signInn using different provider (#20582)
* improved 'use-identity-login' error message for users trying to signin using different provider

* passing original identity provider as query parameter

* Update packages/features/auth/lib/next-auth-options.ts

* passed different error names for different types of error

---------

Co-authored-by: romit <romitgabani1@gmail.com>
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-04-21 13:38:19 +00:00
Omar López d81b905ad7 refactor: replace timeZone string validation with timeZoneSchema (#20719)
* refactor: replace timeZone string validation with timeZoneSchema - Replace all instances of timeZone: z.string() with timeZoneSchema - Preserve modifiers (.optional(), .default(), .nullish()) where present - Fix VideoApiAdapter to use organizer's timezone value - Remove redundant isSupportedTimeZone import from booking.ts - Add timeZoneSchema import where needed

* Update index.ts

* fix: conflicts

Signed-off-by: Omar López <zomars@me.com>

* Update yarn.lock

* Discard changes to yarn.lock

* Update booking.ts

* Discard changes to packages/platform/types/me.ts

* Discard changes to packages/platform/types/me/outputs/me.ts

* Discard changes to packages/platform/types/schedules/schedules-2024-04-15/schedules.ts

* Discard changes to packages/features/ee/cal-ai-phone/zod-utils.ts

---------

Signed-off-by: Omar López <zomars@me.com>
2025-04-21 14:37:07 +01:00
Hariom Balhara 46c6582328 fix: Wrong text EmbedTheme -> Theme (#20790) 2025-04-21 10:16:09 +00:00
Hariom Balhara 396811b954 fix: Org onboarding handle error due to platform team being moved to regular org (#20786)
* Add better error logs and handle platform team

* Add better error logs and handle platform team
2025-04-21 14:58:55 +05:30
Lauris Skraucis f6c7d8d97f fix: v2 Sentry errors (#20788)
* fix: Only Team Event Types are supported for Instant Meeting

* refactor: Cannot read properties of undefined (reading 'timeZone')

* fix: Cannot read properties of undefined (reading 'map')

* refactor: rearrange function order

* refactor: booking_seats_full_error

* fix: invalid_round_robin_host

* refactor: booking_time_out_of_bounds_error

* refactor: Attempting to book a meeting in the past.

* fix: obj.phoneNumber.trim is not a function

* fix: Cannot use 'in' operator to search for 'disabled' in 1
2025-04-21 12:12:46 +03:00
Ronit Raj 930165b6e8 Update rateLimit.ts (#20785) 2025-04-21 05:33:00 +00:00
Hariom Balhara a77bd7bbe0 fx 404 for embed (#20120) 2025-04-20 16:16:48 +00:00
51212cdacf fix: header overlaps in month view on short viewport (#20749)
* fix: header overlaps in month view on short viewport

* refactor: Merge classes into same condition

* fix: Remove booker margin top if isEmbed

---------

Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
Co-authored-by: amrit <iamamrit27@gmail.com>
2025-04-20 08:03:12 +05:30
Lauris Skraucis 3731b1ef3d fix: calendar connect atoms (#20766) 2025-04-18 11:29:11 +00:00
amrit f631c4aa79 feat: make skeleton for booking embed accurate (#20765)
* fix: trigger lingo.dev by removing duplicate value

* feat: make skeleton for booking embed accurate
2025-04-18 10:28:37 +00:00
Lauris Skraucis 95cd76e732 fix: only managed users assignable to managed team event (#20754)
* fix: only managed users assignable to managed team event

* chore: bump platform libraries
2025-04-18 12:21:02 +05:30
Joe Au-Yeung 7e525779b7 Remove trailing } from utm param (#20763) 2025-04-18 11:13:26 +05:30
Anik Dhabal Babu f176ebf1da fix: offer seats broken (#20758) 2025-04-18 05:32:31 +00:00
Keith Williams 5058e0e750 chore: Remove verbose logging (#20732) 2025-04-18 04:20:19 +00:00
Joe Au-Yeung dc409e1c5a chore: Add consent message when SMS workflows are related (#20741)
* Add consent message

* Add consent message if using SMS workflow

* Skip flakey tests

* Revert "Skip flakey tests"

This reverts commit 3bd6f3fd71469df4dbd67b69b8e17011657df9d8.
2025-04-18 09:23:15 +05:30
Joe Au-Yeung 89b5d1ebc3 Write UTM params to Salesforce (#20759) 2025-04-18 03:24:57 +00:00
Joe Au-Yeung 0d24664a72 Skip flakey tests (#20761) 2025-04-18 03:01:35 +00:00
69efc26f36 perf: slim down middleware matcher (#20735)
* wip

* wip

* refactor

* add pathname

* fix

* fix: manually construct pathname for metadata functions

Co-Authored-By: benny@cal.com <benny@cal.com>

* fix: add pathname parameter to all metadata functions

Co-Authored-By: benny@cal.com <benny@cal.com>

* fix: add pathname parameter to remaining metadata functions

Co-Authored-By: benny@cal.com <benny@cal.com>

* fix

* fix

* fix type checks

* Refactor

* fix

* fix

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: benny@cal.com <benny@cal.com>
2025-04-17 19:55:01 -07:00
GitHub Actions 95c48ac805 chore: release v5.2.2
Post release / release (push) Canceled after 0s
2025-04-17 20:49:03 +00:00
Somay Chauhan 59ab38db98 feat: add guards to stripe teams controller (#20540)
* feat: add guards to stripe teams controller

* remove logs and comments

* fix return type status

* refactor: move PlatformSubscription to a dedicated module

* reroute to `organizations/stripe/save` for teams

* fix: type errors

* feat: fixed it for conferencing apps

* feat: Add error handling and fallback URL support in Stripe callback

* Refactor OAuth callback handling and move token validation to service layer

* Add documentation for OAuth callback proxying in conferencing and stripe controllers

* Move OAuthCallbackState type from organizations to stripe service module
2025-04-17 16:36:31 +00:00
Benny Joo 11a41e0e39 fix: return react fragment from all layout.tsx 2025-04-17 16:26:15 +00:00
Lauris Skraucis 880fe151c0 fix: v2 automatic round robin reassign error message (#20755) 2025-04-17 15:50:16 +00:00
Anik Dhabal Babu 603f106389 fix: Admin/owner unable to confirm managed bookings (#20743)
* fix: Admin/owner can't confirm managed booking

* Update confirm.handler.ts
2025-04-17 12:27:11 +00:00
Morgan 5c7f1aebb2 feat: filter users by assigned attribute options (#20659)
* feat: assigned attributes options base

* feat: assigned attributes options base e2e

* feat: filter assigned options by other assigned options

* feat: filter assigned options by other assigned options

* fixup! feat: filter assigned options by other assigned options

* feat: get org users by assigned attributes

* adding missing input file

* push generated docs

* feat: add filter org users by teamIds

* feat: add filter assigned attribute options by teamIds

* chore; update doc

* chore: remove console log

* chore: minor e2e fix

* chore: minor e2e fix

* chore: improve docs

* fix: assigned options by teamIds + optionIds
2025-04-17 14:05:06 +02:00
Anik Dhabal Babu a8fe3a6466 fix: failing e2e test (#20751) 2025-04-17 17:33:29 +05:30
Lauris Skraucis 8974f8f9de feat: v2 book team events using teamSlug & eventTypeSlug (#20585)
* feat: v2 book team events using teamSlug & eventTypeSlug

* fix: tests
2025-04-17 13:23:25 +03:00
Anik Dhabal Babu a11c2cc52c fix: Wrong schedule ID set for child managed event (#20745)
* fix: wrong schule id set for managed event

* Update handleChildrenEventTypes.ts
2025-04-17 08:58:01 +00:00
amrit 14d319f992 fix: buggy skeleton rendering for month view (#20744)
* fix: trigger lingo.dev by removing duplicate value

* fix: buggy skeleton monthly view
2025-04-17 11:10:47 +05:30
Benny Joo 49f0759f31 fix: disable Google Translate from HTML 2025-04-17 00:10:25 +00:00
GitHub Actions cae8470350 chore: release v5.2.1
Post release / release (push) Canceled after 0s
2025-04-17 00:05:25 +00:00
Joe Au-YeungandBenny Joo a82d616b79 feat: Whitelist user's from workflow spam scanning (#20717)
* Add whitelistWorkflows to user

* Do not autolock whitelisted users

* Add endpoint to whitelist a user

* Get users data - include whitelistWorkflows

* Whitelist a user on the user admin page

* Fix typo

* Add test

* Use translations

* Add `updateWhitelistWorkflows` to `UserRepository`

* Use i18 for strings

* Rename to whitelistWorkflows

---------

Co-authored-by: Benny Joo <sldisek783@gmail.com>
2025-04-16 18:09:29 -04:00
Anik Dhabal Babu 515f3263e0 test: e2e test for the Routing Form to Event Booking flow (#20728)
* test: e2e test Routing Form submission to Booking flow

* update

* tweak
2025-04-16 16:09:15 -03:00
Lauris Skraucis aebbc50ba6 fix: EventTypeSettings atom default schedule title (#20725) 2025-04-16 21:26:30 +03:00
Benny Joo 7cdc78d02d update middleware (#20726) 2025-04-16 17:44:25 +00:00
Keith Williams df55dec553 chore: Rename @calcom/lib/date-fns to @calcom/lib/dayjs (#19870)
* chore: Rename date-fns to dayjs

* Fixed types
2025-04-16 16:26:42 +00:00
Benny Joo 398ad22868 fix wrong translation (#20727) 2025-04-16 15:37:21 +00:00
Lauris Skraucis 7ef1050946 feat: v2 get slots using teamSlug + eventTypeSlug + optional organizationSlug (#20554)
* feat: allow teamSlug + eventTypeSlug + optional organizationSlug as input

* feat: return team event slots

* test: get slots using teamSlug + eventTypeSlug + optional organizationalSlug

* docs: how to get team event slots
2025-04-16 18:29:47 +03:00
Peer Richelsen 7b8bbaaa86 added lindy (#20721) 2025-04-16 14:27:53 +00:00
Omar López ddfd3fda70 refactor: improve error handling in captureErrorsMiddleware (#20718) 2025-04-16 14:01:47 +00:00
Benny Joo 5972a6f77f perf: Fetch data server-side for Webhook Create page (#20675)
* perf: fetch data server-side for create webhooks page

* refactor

* refactor

* refactor

* improve skeleton styling

* fix styling
2025-04-16 10:59:18 -03:00
9bc703a437 feat: Embed - Show skeleton loader when pageType is provided (#20646)
* mvp done

* wip

* fix ts errors and other code improvements

* fix ts errors

* ensure mobile layout support

* Make skeleton responsive on screen resize

* refactor

* Add test for EmbedElement

* make skeleton closer to pixel perfect

* Address PR feedback

* Remove PR_TODO

---------

Co-authored-by: Benny Joo <sldisek783@gmail.com>
Co-authored-by: amrit <iamamrit27@gmail.com>
2025-04-16 13:40:51 +00:00
Syed Ali Shahbaz 15aaf7f51b fix: readonly ics error (#20651)
* readonly error fix

* warn instead of throwing err

* .

* .

* fix err

* dont throw error, only warn

* --

* remove skip writing as that's unnecessary

* fix api
2025-04-16 09:02:56 -03:00
Lauris SkraucisandAnik Dhabal Babu c89a1877ae feat: organization booking hooks (#20611)
* docs: request auth headers

* feat: useOrganizationsBookings hook

* feat: useOrganizationUserBookings hook

* rename hooks

* query params

* fix: organizations users bookings extract user from userId not auth

* fix: passing array from hook

* docs

* correct header doc

---------

Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-04-16 10:59:02 +03:00
Lauris Skraucis 15d2c0f858 feat: v2 return slots based on routing form response (#20637)
* feat: routing form response slots

* fix

* test routing form slots

* chore: bump libraries

* docs

* docs

* chore: api docs from main to merge main

* chore: regenerate api docs
2025-04-16 10:55:01 +03:00
Morgan 43a6663230 fix: routing form endpoints date filters validation (#20715) 2025-04-16 06:30:29 +00:00
58315e96c9 fix: don't allow seats for recurring events (#19257)
* fix: Don't allow seats for recurring events #19061

* update the commit with English

* Update common.json

* Update common.json

* Update common.json

* Add edge case when people have already enabled seats as well as recurring event

* fix type issue

* Handle case where seats and recurring is already enabled

* minor fix

* minor change

* typo

* Block backend functionality

* blocking new booking and other enhancements

* final-changes

* minor-changes

---------

Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
Co-authored-by: Tushar <tusharbhatt0135@gmail.com>
2025-04-15 21:07:57 +00:00
sean-brydon 3e466022b8 fix availability CTA height (#20714) 2025-04-15 20:11:29 +00:00
Keith Williams 68c036cd0a fix: Tasker import and error handling for routing form responses (#20713) 2025-04-15 19:43:54 +00:00
Benny Joo 77b656024a feat: placeholder component for user dropdown to remove layout shift (#20696)
* feat

* refactor
2025-04-15 15:17:14 -04:00
amritandTushar Bhatt 89772a0dac fix: make padding equal on availability toggle (#20708)
* fix: trigger lingo.dev by removing duplicate value

* fix: uneven height in toggle

* address mrge bots comments

* use tailwind

* fix: make padding equal for availability toggle

* Update apps/web/modules/availability/availability-view.tsx

---------

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-04-15 18:40:04 +00:00
Giridhar 381c462660 feat: email workflow templates translation (#20674)
* Add translations in respective files

* implement multilingual support for email templates

* fix: indentation in common.js & typos in common.js and update.handler.ts
2025-04-15 23:56:34 +05:30
Shawn CazaandTushar Bhatt 417acdaacb fix: Improves dialog window that appears when there is no availability in a month. Adding a description to clarify limits when rolling or range period types are in use. (#20451)
* init

* updated typing, english localization text, used existing calculatePeriodLimits and isTimeViolatingFutureLimit to determine if go to next month button should be disabled

* improving copy

* semantic dialog heading tag, proper EN localization,

* reverting

* force local to origin

* Translations by LLM

* intit tests

* moving NoAvailability to its own file.

* refactor overlay component to encpsulate logic in hooks

* improved tests

* remove unintended change

* fix: period data type import. Providing default periodData values

* fix: type errors on event object

* fix: updates case in type import

* removing translations

* remove unnecessary import

* remove unnecessary import

* improving mocks for booker and logger

* moving tests to __tests__ folder

---------

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-04-15 23:46:01 +05:30
Kartik SainiandTushar Bhatt 1584dd3179 feat: Redirect to original event link for rescheduling cancelled booking (#18605)
* feat: redirect to original event link for rescheduling cancelled booking

* allow cancelled booking rescheduling when allowRescheduleForCancelledBooking is true

* chore

* fix test

* chore

---------

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-04-15 14:09:18 -04:00
d66f983f56 feat: dry run behaviour for connect atoms (#20699)
* add dry run prop for mocking actual behaviour without actual api calls

* fix e2e tests

* fixup

* remove await present twice

* fix: adjust success toast for apple connect dry run

Co-Authored-By: rajiv@cal.com <rajiv@cal.com>

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: rajiv@cal.com <rajiv@cal.com>
2025-04-15 17:45:14 +00:00
Rajiv Sahal b1f50fe22d feat: dry run behaviour for AvailabilitySettings atom (#20686) 2025-04-15 22:24:21 +05:30
Rajiv Sahal ce995c39f2 feat: dry run behaviour for event type atoms (#20689) 2025-04-15 22:23:51 +05:30
Rajiv Sahal b99ea16b31 feat: dry run behaviour for CalendarSettings atom (#20690) 2025-04-15 22:23:05 +05:30
Lauris Skraucis 574d8882f4 refactor: required booking fields message (#20688) 2025-04-15 16:29:45 +00:00
GitHub Actions b73f7f4a28 chore: release v5.2.0
Post release / release (push) Canceled after 0s
2025-04-15 15:56:48 +00:00
e4ebe25626 fix: made text dependent on host's refund policy by conditionally rendering text. (#20572)
* made text dependent on host's refund policy by conditionally rendering refund message

* add more conditions in case of no refund message

* made refund message more appropriate

* Update apps/web/public/static/locales/en/common.json

* Update apps/web/public/static/locales/en/common.json

* Update apps/web/modules/bookings/views/bookings-single-view.tsx

---------

Co-authored-by: romit <romitgabani1@gmail.com>
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-04-15 20:18:37 +05:30
amrit 7b6999831a fix: uneven toggle ui on availability page (#20701)
* fix: trigger lingo.dev by removing duplicate value

* fix: uneven height in toggle
2025-04-15 14:11:47 +00:00
Eunjae LeeandSean Brydon 0386723ae8 fix: recalculate date range from filter segments (#20633)
* fix: recalculate date range from filter segments

* clean up

* add unit tets for date-range utils

---------

Co-authored-by: Sean Brydon <sean@Seans-Mac-mini.local>
2025-04-15 08:54:44 +00:00
6615b885d1 chore: Make app compatible with Fluid Compute (#19841)
* chore: Make app compatible with Fluid Compute

* Removed isCold from me api endpoint

* chore: Remove handler caching for Fluid Compute compatibility (#20692)

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: keith@cal.com <keith@cal.com>

* fix client_id issue

* chore: Remove UNSTABLE_HANDLER_CACHE for Fluid Compute compatibility (#20694)

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: keith@cal.com <keith@cal.com>

* Fixing types

* Fixing type issues

* chore: Remove importHandler references for Fluid Compute compatibility

Co-Authored-By: keith@cal.com <keith@cal.com>

* chore: Remove importHandler references from attributes router for Fluid Compute compatibility

Co-Authored-By: keith@cal.com <keith@cal.com>

---------

Co-authored-by: devin-ai-integration[bot] <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: keith@cal.com <keith@cal.com>
2025-04-14 18:27:59 -04:00
Benny Joo 254a2e310b Revert "fix: Make event type title visible in mobile view (#20670)" (#20695)
This reverts commit bdf3935704.
2025-04-14 20:25:52 +00:00
GitHub Actions 1934c96353 chore: release v5.1.21
Post release / release (push) Canceled after 0s
2025-04-14 19:15:55 +00:00
Benny Joo a43437b1d6 fix (#20693) 2025-04-14 16:54:25 +00:00
devin-ai-integration[bot]andlauris@cal.com d25094a152 feat: allow paid users to see report issue option (#20687)
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: lauris@cal.com <lauris@cal.com>
2025-04-14 18:19:05 +05:30
70d29ab6fa feat: conditionally show contact us or report issue based on plan (#20629)
* feat: conditionally show contact us or report issue based on plan

Co-Authored-By: peer@cal.com <peer@cal.com>

* fix: update icon name to triangle-alert to fix type error

Co-Authored-By: peer@cal.com <peer@cal.com>

* fix: check specific plan type instead of isPaidUser flag

Co-Authored-By: peer@cal.com <peer@cal.com>

* fix: check userBillingData.valid to ensure billing plan is active

Co-Authored-By: peer@cal.com <peer@cal.com>

* fix: convert plan to lowercase before comparison

Co-Authored-By: peer@cal.com <peer@cal.com>

* fixup: dont show contact card for free platform users

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: peer@cal.com <peer@cal.com>
Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: Ryukemeister <sahalrajiv6900@gmail.com>
2025-04-14 11:13:05 +00:00
devin-ai-integration[bot]andsean@cal.com 65abf4edc6 fix: make settings sidebar accordion items keyboard accessible (#20663)
* fix: make settings sidebar accordion items keyboard accessible

Co-Authored-By: sean@cal.com <sean@cal.com>

* fix: ensure keyboard events properly toggle accordion content

Co-Authored-By: sean@cal.com <sean@cal.com>

* fix: add toggle functionality to accordion buttons

Co-Authored-By: sean@cal.com <sean@cal.com>

* fix: clean up accordion code and improve keyboard accessibility

Co-Authored-By: sean@cal.com <sean@cal.com>

* fix: add keyboard event handlers for accordion toggle

Co-Authored-By: sean@cal.com <sean@cal.com>

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: sean@cal.com <sean@cal.com>
2025-04-14 08:55:13 +00:00
Keith Williams ad4aeee45b chore: clean up api v2 docs (#20668)
* chore: Clean up API v2 docs

* Regenerated the doc files

* Added an 'a' to match other titles
2025-04-14 05:37:07 -03:00
40a2ec8ab3 feat(event-types): phase out offset start times feature for new event types [CAL-5450] (#20623)
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: carina@cal.com <carina@cal.com>
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-04-14 11:58:18 +05:30
devin-ai-integration[bot]andhariom@cal.com 2b7a87a34c fix(analytics): Add cookie_flags to GA4 config for embedded contexts (#20627)
* fix(analytics): Add cookie_flags to GA4 config for embedded contexts (CAL-5446)

Co-Authored-By: hariom@cal.com <hariom@cal.com>

* fix(analytics): Fix JavaScript syntax for cookie_flags parameter

Co-Authored-By: hariom@cal.com <hariom@cal.com>

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: hariom@cal.com <hariom@cal.com>
2025-04-14 11:36:52 +05:30
Anik Dhabal Babu b15060e306 fix: dynamic text variable not populating on workflows (#20657)
* fix: dynamic text variable not populating

* Update customTemplate.ts
2025-04-14 10:54:43 +05:30
devin-ai-integration[bot]andbenny@cal.com bdf3935704 fix: Make event type title visible in mobile view (#20670)
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: benny@cal.com <benny@cal.com>
2025-04-14 09:48:34 +05:30
Gaurav Verma 7952cfc9e9 feat: Org and Team ID on organisation and team pages (#20645)
* added org and team id on respective pages

* added error hadling on clipboard.writeText
2025-04-14 09:37:46 +05:30
devin-ai-integration[bot]andbenny@cal.com 4383d23d4c fix: replace hard-coded strings with translation keys for internationalization (#20672)
* fix: replace hard-coded strings with translation keys for internationalization

Co-Authored-By: benny@cal.com <benny@cal.com>

* fix: replace loading text with translation key

Co-Authored-By: benny@cal.com <benny@cal.com>

* fix: add translation keys for platform plans view

Co-Authored-By: benny@cal.com <benny@cal.com>

* fix: add translation keys for oauth view

Co-Authored-By: benny@cal.com <benny@cal.com>

* fix: add translation keys for users table

Co-Authored-By: benny@cal.com <benny@cal.com>

* fix: add translation keys for oauth view toast messages

Co-Authored-By: benny@cal.com <benny@cal.com>

* fix: add translation keys for verify view

Co-Authored-By: benny@cal.com <benny@cal.com>

* fix: update sendVerificationLogin to use t function

Co-Authored-By: benny@cal.com <benny@cal.com>

* fix: remove duplicate translation keys in common.json

Co-Authored-By: benny@cal.com <benny@cal.com>

* fix: add missing verification_email_sent translation key

Co-Authored-By: benny@cal.com <benny@cal.com>

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: benny@cal.com <benny@cal.com>
2025-04-12 01:50:04 -04:00
Anik Dhabal Babu 027cad2cfd fix: location input value in custom event name (#20619)
* fix: location input value in custom event name

* Update EventAdvancedTab.tsx
2025-04-12 08:22:39 +05:30
Benny Joo b17b5a169f perf: make useLocale hook to use server-fetched i18n if in App router context (#20597)
* write I18nProvider

* rename

* update useLocale

* fix

* use a singleton

* safer

* better

* fix e2e test 1

* fix e2e test 2

* fix e2e test 3

* fix e2e test 4

* fix

* refactor

* address comments

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix flaky test

* add more caching

* revert changes to e2e tests

* add jsdoc

* memoize

* update window object with new translations in /settings/my-account/general

* remove dead code

* only use locale and ns as deps

* fix
2025-04-11 14:28:26 -07:00
Anik Dhabal Babu 9eb1fe06e3 fix: App installation option at the team level (#20666)
* fix: app installation option on team level

* update
2025-04-11 19:06:18 +00:00
Keith Williams 007349a180 revert: "fix: Broken API docs (#20664)" (#20667)
This reverts commit 9d0afbd6f3.
2025-04-11 18:46:42 +00:00
Joe Au-Yeung 46f979ba6d chore: Add logging and try/catch blocks in handleNewBooking (#20665)
* Add logging and try/catch blocks

* Add additional logging around `deleteEventsAndMeetings`

* Type fix
2025-04-11 13:49:21 -04:00
devin-ai-integration[bot]andsean@cal.com d4eb8e4b3a fix: ensure only top tip has focusable elements (#20661)
* fix: ensure only top tip has focusable elements

Co-Authored-By: sean@cal.com <sean@cal.com>

* fix: disable all interactive elements for non-top tips

Co-Authored-By: sean@cal.com <sean@cal.com>

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: sean@cal.com <sean@cal.com>
2025-04-11 15:42:14 +00:00
Keith Williams 9d0afbd6f3 fix: Broken API docs (#20664) 2025-04-11 15:15:04 +00:00
Omar López 821bd37b37 fix: convert SVG avatar into PNG on save and serve (#20654) 2025-04-11 08:14:01 -07:00
Morgan 2ab34004a2 fix: updatedAt routing form response migration (#20660) 2025-04-11 11:59:22 +00:00
3ee8032538 feat: add organization routing forms endpoints [v2] (#20580)
* feat: add organization routing forms endpoints

Co-Authored-By: morgan@cal.com <morgan@cal.com>

* refactor: reorganize team routing forms modules and add new endpoints

* fix: routing form responses and updated at

* fix: OrganizationsRoutingFormController e2e test

* refactor and fix stuff

* remove not needed files and fix comments

* fix OrganizationsTeamsRoutingFormsResponsesController

* fix tests

* fix tests

* fix: get routing form output

* remove log

* remove now

* fix getTeamRoutingForms types

* refactor: update routing forms API endpoints and repository methods

* added `teamIds?: number[]` filter

* Update get-routing-form-responses-params.input.ts

* Update get-routing-form-responses-params.input.ts

* fix e2e

* add Patch team routing form responses e2e

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: morgan@cal.com <morgan@cal.com>
Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com>
Co-authored-by: Somay Chauhan <somaychauhan98@gmail.com>
2025-04-11 06:58:00 -03:00
GitHub Actions 9838488068 chore: release v5.1.20
Post release / release (push) Canceled after 0s
2025-04-10 22:59:10 +00:00
Vijay 1c365dee38 fix: flaky ooo e2e test (#20649)
* split big date range filter test to smaller tests

* add missing waitFor()
2025-04-10 21:10:37 +05:30
amrit a77ee7aaa2 chore: remove unnecessary tests and mock data (#20648)
* fix: trigger lingo.dev by removing duplicate value

* fix: Update event type in tests and remove offset times checks

* Changed event type from "Offset Event" to "Test Event" in the limits tab tests.
* Removed the check for offset times from the booking page fixture, streamlining the booking process.
2025-04-10 19:39:39 +05:30
devin-ai-integration[bot]andeunjae@cal.com 07d8a39829 feat: display year for bookings in different years (#20647)
Conditionally displays the year in the date format for upcoming bookings
on the /bookings page when the booking's year differs from the current year.

Fixes CAL-5455

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: eunjae@cal.com <eunjae@cal.com>
2025-04-10 13:28:00 +00:00
Avnish Jha 10fa080b7f feat: Removed offset start times feature from UI (#20634)
* feat: Removed offset start times feature from UI

* conditionally rendering offsetStart (#20622)

* fixes for failing tests

* fixes failing tests

* failing test fixes
2025-04-10 17:46:53 +05:30
Tushar Bhatt eb19edfa8f feat:overlay-calendar (#20610) 2025-04-10 11:53:02 +00:00
Omar López 3719bb3762 Update CONTRIBUTING.md (#20641) 2025-04-10 08:03:50 +01:00
Joe Au-Yeung c43c5a0604 chore: Admin unlocking user, also verify workflow steps (#20613) 2025-04-09 14:30:00 -07:00
GitHub Actions 1467b0b768 chore: release v5.1.19
Post release / release (push) Canceled after 0s
2025-04-09 20:53:57 +00:00
Gaurav Vermaandamrit d3d4a90776 feat: added rescheduled UI to Booking page and Booking Listing page (#20401)
* feat: add rescheduling to UI

- Introduced displaying the original booking information.
- Updated UI components to show rescheduling status and details.

* fix: update link styling in booking single view

- Changed link text size to small for better UI consistency in the booking details section.

* refactor, type fixes

* added missing margin

* added rescheduled under other badges

* optimised getting booking

* updated namings and perf

---------

Co-authored-by: amrit <iamamrit27@gmail.com>
2025-04-09 15:21:26 -04:00
Joe Au-Yeung 5ae50f8670 chore: Add more Salesforce logging (#20639)
* Add logging to `companyFieldName`

* Add logging to `getTextValueFromRoutingFormResponse`

* Add logging around unhandled field type

* Remove extra bracket
2025-04-09 18:55:23 +00:00
a3642a5594 feat: move workflow emails to smtp (#20293)
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Omar López <zomars@me.com>
2025-04-09 11:25:39 -07:00
Peer Richelsen 96bfb19769 Create platform.md 2025-04-09 12:31:43 +02:00
Eunjae Lee 5935cf7f1b fix: separate Filter Segment implementation from DataTableProvider (#20587)
* fix: separate Filter Segment implementation from DataTableProvider

* disable components

* early return

* fix type error

* add missing export
2025-04-09 09:53:02 +00:00
sean-brydonandSean Brydon 70eff63529 fix full page reload (#20625)
Co-authored-by: Sean Brydon <sean@Seans-Mac-mini.local>
2025-04-09 09:24:00 +00:00
Anik Dhabal Babu 3d02df3b08 fix: use correct organizer info when admin accepts team booking requiring confirmation (#20612)
* fix: confrim handler

* fix test
2025-04-09 10:45:27 +05:30
GitHub Actions b9b12256fa chore: release v5.1.18
Post release / release (push) Canceled after 0s
2025-04-08 19:12:55 +00:00
Anik Dhabal Babu 1b051d102c fix: few flakes (#20608) 2025-04-08 16:33:44 +00:00
76a820f3ca fix(CAL-5435): Conditionally render selection bar buttons based on user role (#20604)
* fix(CAL-5435): Conditionally render selection bar buttons based on user role

Co-Authored-By: eunjae@cal.com <eunjae@cal.com>

* fix(CAL-5435): Add fallback for test environments to ensure E2E tests pass

Co-Authored-By: eunjae@cal.com <eunjae@cal.com>

* fix(CAL-5435): Fix data-testid attribute case for members-privacy-warning

Co-Authored-By: eunjae@cal.com <eunjae@cal.com>

* clean up

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: eunjae@cal.com <eunjae@cal.com>
Co-authored-by: Eunjae Lee <hey@eunjae.dev>
2025-04-08 16:06:44 +00:00
Joe Au-Yeung b3d5a6edca feat: Salesforce - on booking cancel, write to event object (#20601)
* Type app options

* Refactor `writeToPersonRecord` to `writeToRecord`

* Abstract writing to salesforce record options component

* Add option to write to event object on cancellation

* Add on booking cancel write to event object to schema

* Refactor writing to record on booking option to use `<WriteToObjectSettings />`

* Pass event object to crm delete method

* When cancelling booking write to event object
- App data isn't being read

* V1 pass app data to crm service

* Undo .env commit

* Fix passing event to cancel crm cancel event method

* Pass event type metadata to `EventManager` in `handleCancelBooking`

* Handle writing to event record

* Type fix
2025-04-08 11:40:05 -04:00
devin-ai-integration[bot] 4753bd785a feat: restrict attributes tab to admin/owners only (CAL-4852) (#20603) 2025-04-08 11:26:01 -04:00
Anik Dhabal Babu 1f634b7ca0 fix: Incorrect booker URL for individual event types inside the org (#20602)
* fix: incorrect domain

* Update

* tweak

* remove space

* Update
2025-04-08 11:59:19 +00:00
Morgan 2e0f4d3176 fix: use real ip in throttler [v2] (#20606) 2025-04-08 10:21:29 +00:00
Tushar BhattandPeer Richelsen c2fd990504 feat: sticky-shell (#20566)
* feat:sticky-shell

* minor-change

---------

Co-authored-by: Peer Richelsen <peeroke@gmail.com>
2025-04-08 09:04:41 +00:00
ea3f4fedb0 fix: weight filter should never return length=0 (#20588)
* fix error

* add test

* return host weight instead

* adjust test

* remove .only from test

---------

Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Omar López <zomars@me.com>
2025-04-08 07:21:34 +00:00
Anik Dhabal Babu 2db4222ffe wrong layout (#20584) 2025-04-08 05:20:29 +00:00
Hariom Balhara 1dc5cd4d41 add id field calendar-cache (#20578) 2025-04-08 02:51:30 +00:00
Keith Williams 35d54ff223 revert: "feat: enable 'Overlay Calendar' enabled by default for signed in users (#18188)" (#20600)
This reverts commit 46c7afade6.
2025-04-08 00:56:17 +00:00
Omar López e4c46e3387 Revert "chore: Migration to backfill EventType.userId with B, if null (#20562)" (#20598)
This reverts commit 6b00167657.
2025-04-07 16:32:40 -07:00
GitHub Actions 77d1a873a9 chore: release v5.1.17
Post release / release (push) Canceled after 0s
2025-04-07 21:49:31 +00:00
Anik Dhabal Babu 54d98e73a2 fix: all flaky e2e tests (#20476)
* fix: all flaky e2e tests

* update

* Update basic.e2e.ts

* Update basic.e2e.ts

* update

* Update basic.e2e.ts

* update

* update

* push

* update

* final

* update

* fix
2025-04-07 19:43:01 +00:00
Benny JooandKeith Williams 134086f229 perf: fetch data server side for /settings/webhooks (#20583)
* update client components

* update server components

* update middleware

* fix

* fix

---------

Co-authored-by: Keith Williams <keithwillcode@gmail.com>
2025-04-07 18:21:13 +00:00
Anik Dhabal Babu e9b5aa6f22 fix: verification code truncation fix (#20592) 2025-04-07 17:52:34 +00:00
Morganandsupalarry 3908a6cd6f revert: refactor v2 access and refresh tokens (#20589)
* revert: refactor v2 access and refresh tokens

* feat: add refreshTokenExpiresAt to /force-refresh, /exchange/, /refresh

* feat: encode ownerId, expiresAt in tokens & return refresh expires at when creating managed user

* driveby:fix: pass language when creating managed user

* docs: tokens expires at and payload

---------

Co-authored-by: supalarry <laurisskraucis@gmail.com>
2025-04-07 19:44:10 +03:00
Benny Joo 886028c400 fix: turbo pack error in webhooks/new/page.tsx (#20581) 2025-04-07 15:48:45 +05:30
Eunjae Lee 703e20a43a feat: support searchTerm in Filter Segment (#20526)
* feat: support searchTerm in Filter Segment

* update tests

* save and load searchTerm

* fix types

* add missing condition
2025-04-07 05:27:58 -03:00
Hariom Balhara b6aedb830b Require confirmation on toggling delegation credential (#20576) 2025-04-07 08:05:53 +00:00
46c7afade6 feat: enable 'Overlay Calendar' enabled by default for signed in users (#18188)
* feat: enable 'Overlay Calendar' enabled by default for signed in users

* feat: enable 'Overlay Calendar' enabled by default for signed in users

Changes Made:
- 'Overlay Calendar' is enabled by default when the component mounts for signed in users
- On every view which is toggled, 'Overlay Calendar' will be enabled by default for signed in users

* feat: enable 'Overlay Calendar' enabled by default for signed in users

Changes Made:
- 'Overlay Calendar' is enabled by default when the component mounts for signed in users in the web wrapper instead of the Booker Component

* feat: enable 'Overlay Calendar' enabled by default for signed in users

Changes Made:
- Persist the user’s preference to keep it disabled, even after a view toggle.

* minor-enhancement

---------

Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
Co-authored-by: Tushar <tusharbhatt0135@gmail.com>
2025-04-07 12:28:53 +05:30
Benny Joo 5c7d7579ee fix: improve booking page error boundary + remove dynamic imports from Booker (#20560)
* improve booking page error boundary + remove dynamic imports from Booker

* safer

* fix

* fix test

* change name
2025-04-07 09:51:14 +03:00
Somay Chauhan d158a1e007 fix: enabling weights on RR events breaks atoms (#20297)
* fix: enabling weights on RR events breaks atoms

* Update find-team-members-matching-attribute.input.ts

* refactor: Extract team member processing logic into separate hook

* Update find-team-members-matching-attribute.input.ts

* moved `TeamMemberDto` and `FindTeamMembersMatchingAttributeOutputDto`  to platform-types

* `team-members.output.ts` -> `team-members-attributes.output.ts`

* upgrade platform-libraries
2025-04-07 12:11:19 +05:30
Brijesh Thummar 1fb4147940 fix: update German translation for 'cancel' to 'Stornieren' (#20565) 2025-04-06 05:47:32 +00:00
Benny Joo 9cf76cbb2f perf: leverage trpc initialData for event-types page (#20496)
* create createRouterCaller and use it

* fix

* leverage trpc initialData for event-types page

* finalize
2025-04-05 11:29:46 +05:30
Alex van Andel 6b00167657 chore: Migration to backfill EventType.userId with B, if null (#20562)
* chore: Migration to backfill EventType.userId with _user_eventtype.B, if empty

* Add newline
2025-04-05 01:14:15 +01:00
Alex van Andel 592f44eb32 fix: broken getBusyTimes test in TZ!=UTC (#20555) 2025-04-04 23:26:41 +00:00
Benny Joo 00afafb550 chore: use createCallerFactory (#20467) 2025-04-04 20:06:32 -03:00
GitHub Actions 089941553e chore: release v5.1.16
Post release / release (push) Canceled after 0s
2025-04-04 23:02:43 +00:00
Benny Joo 2dc83a1c55 chore: remove unused dep—react-intl (#20531)
* remove react-intl

* yarn lock
2025-04-04 22:49:29 +00:00
Joe Au-Yeung 5bfb6fc148 refactor: SCIM - handleGroupEvents (#20537)
* Add logging to `handleGroupEvents`

* `createUsersAndConnectOrg` skipDuplicates when creating new users

* `ProfileRepository.createMany` to get username from `orgAutoAcceptEmail`

* Refactor `createUsersAndConnectToOrg` to use `createMany` instead of individual db calls

* Add error logging to `sendSignupToOrganizationEmail`

* Move `sendSignupToOrganizationEmail` to a `Promise.allSettled`

* Add `createManyForExistingUsers` and `createManyPromise`

* Move creating existing users profiles to `ProfileRepository.createManyForExistingUsers`

* Move `sendExistingUserTeamInviteEmails` to a `Promise.allSettled`

* Refactor `createUsersAndConnectToOrg` to use `ProfileRepository.createManyPromise`

* Type fix

* Create `generateNewChildEventTypeDataForDB`

* Create `addNewMembersToEventTypes`

* Type fix

* Type fix

* Type fix

* `createMany` new workflowsOnEventTypes

* Introduce `DATABASE_CHUNK_SIZE`

* Batch connect children event types

* Batch connect profiles to existing users
2025-04-04 17:36:26 -04:00
Max Prilutskiy 31ccdba203 feat: update translations via @lingodotdev (#20559) 2025-04-04 20:58:54 +00:00
sean-brydonandSean Brydon 82fb5272c8 add border to footer (#20543)
Co-authored-by: Sean Brydon <sean@Seans-Mac-mini.local>
2025-04-04 20:40:46 +01:00
e86ad03cde perf: Slim down logged in round 2 (#20535)
* perf: Slim down loggedInViewer some more

* Move locationOptions to apps router

* Moved calVideo related handlers to separate router

* Moved calendar related handlers to separate router

* Rename

* Moved deleteCredential to new router

* Moved updateProfile to me router

* fix unit test

* fix e2e test

* tweak

* missing

---------

Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
Co-authored-by: unknown <adhabal2002@gmail.com>
2025-04-04 15:33:14 -04:00
Morgan 1953402f81 fix: platform dialog portal issue (#20553) 2025-04-04 15:39:36 +00:00
Lauris Skraucis d6a086c9c7 docs: platform refresh tokens and team event type atoms (#20524)
* docs: managing refresh token expiring

* docs: team event type creation and settings
2025-04-04 15:39:11 +00:00
sean-brydonandSean Brydon 9a517a89b6 fix: toggle group segment design (#20549)
* add toggle state correctly

* fix height

---------

Co-authored-by: Sean Brydon <sean@Seans-Mac-mini.local>
2025-04-04 13:47:05 +00:00
Keith Williams 19f2197eef Vital and libphonenumber-js (#20547) 2025-04-04 13:35:12 +00:00
Keith Williams 3d583678cf perf: Remove dynamic imports of Sentry (#20545) 2025-04-04 13:22:27 +00:00
Christoph HeikeandTushar Bhatt ddde762f9b feat: Implements Greetmate.ai app into Cal.com (#19812)
* Implements Greetmate.ai app into Cal.com

* Update GreetmateButton.tsx

* Greetmate app

---------

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-04-04 10:07:13 -03:00
sean-brydonandSean Brydon 9332eba5d7 fix: badge dot sizes to be 8x8 (#20544)
* fix badge sizes to be 8x8

* add data-testid to dot

---------

Co-authored-by: Sean Brydon <sean@Seans-Mac-mini.local>
2025-04-04 09:49:00 -03:00
sean-brydon 46d1823ccc feat: add new UI component for multi option inputs (#20533)
* add multi option input support

* fix import

* add multi-key-field-support
2025-04-04 10:27:04 +00:00
Lauris Skraucis 277da187d0 feat: v2 admin GET bookings, user information (#20221)
* feat: membership user return bio and metadata

* feat: input and output bio and metadata for users and manager users

* test: managed event type appears when fetching user event types

* test: managed event type appears when fetching user event types

* test: managed event type appears when fetching user event types

* test: managed event type appears when fetching non-org team user event types

* feat: organizations users bookings endpoint

* feat: book using eventSlug & username & organizationSlug

* chore: generate latest docs
2025-04-04 10:25:10 +00:00
Carina WollendorferandCarinaWolli 7c6b055cd1 add include timezone param (#20542)
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
2025-04-04 10:05:51 +00:00
Benny Joo 97308ebf1c perf: /event-types/[type] — use server-fetched data to skip client-side trpc fetch (#20497) 2025-04-04 09:43:04 +00:00
Pranav Patil c2cf55f10c fix: Updated DateRangePicker in limit future booking (#20483)
* fix: Updated DateRangePicker in limit future booking

* removed unnecessary comments

* minor changes in end date selection

* final changes in end date selection

* minor changes in end date selection

* fixed issue of logs

* added allowPastDates props for out of office data selection
2025-04-04 13:42:18 +05:30
Joe Au-Yeung 3867ff6874 chore: Salesforce - Handle datetime and textarea field types (#20539)
* Add datetime and textarea field types

* Add logic for datetime and textarea field types
2025-04-04 09:32:30 +02:00
Pratheek Ravikumar 0e1c4e53d8 fix: Fixing the overlapping timezone dropdown menu (#20487)
* Fixing the overlapping timezone dropdown menu

* making the timezone menu to display 5 timezones at a time
2025-04-04 12:54:15 +05:30
Vincent Lamandamrit 3834e69100 Added new table under Insights page for most cancelled bookings (#19858)
- Added new Table componnent
- Added trpc call
- Added locale title

fixed rebase changes

Co-authored-by: amrit <iamamrit27@gmail.com>
2025-04-04 11:49:49 +05:30
Pranav Rajveer a05935cdf6 fix: fixed language translations (#20488)
* fix: fixed language translations

* fix: removed type-error

* Update DisableAllEmailsSetting.tsx
2025-04-04 05:36:21 +00:00
Benny Joo 19a0f968ca perf: Speed up User Type booking page (#20516)
* refactor [user]/[type] server logic

* refactor useSlot

* refactor

* fix

* fix OG images

* fix
2025-04-03 22:13:53 -03:00
GitHub Actions 3b945ba439 chore: release v5.1.15
Post release / release (push) Canceled after 0s
2025-04-03 22:23:50 +00:00
Keith Williams 7a47eacb34 chore: Update favicon for docs (#20532) 2025-04-03 21:48:15 +00:00
MorganandEunjae Lee da853958f7 feat: get org bookings endpoint api-v2 (#20462)
* feat: get org bookings endpoint api-v2

* fix userId filter transform

* fix: update getBookings to take filter.userIds in account

* refactor: getBooking where clause

* fixup! refactor: getBooking where clause

* feat: enable org owners to see org member bookings as attendees

* update flaky e2e tests

* fixup! feat: enable org owners to see org member bookings as attendees

* fixup! fixup! feat: enable org owners to see org member bookings as attendees

* chore: differentiate between org/team owner/admin

* chore: throw error with invalid userIds filter

* chore: clearly ensure non team orgs when orgId is not specified

* bump libraries and add comments

* bump libraries

* chore: give main profile orgId to getAllUserBookings

---------

Co-authored-by: Eunjae Lee <hey@eunjae.dev>
2025-04-03 17:36:10 -04:00
Udit Takkar d63d15b7b2 fix: don't display user event types with no owner (#20525) 2025-04-03 21:08:19 +00:00
6bc040b7bb feat: Update @dub/analytics to support domainsConfig.refer (#20495)
* Update `@dub/analytics` to support domainsConfig.refer

* add reverse proxy

---------

Co-authored-by: Amit Sharma <74371312+Amit91848@users.noreply.github.com>
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-04-03 16:32:58 -04:00
0465c639e6 feat: options to disable cancelling and/or rescheduling (#20489)
* feat:disable-rescheduling

* feat:disable-cancelling

* enhancements

* enhancements-2

* enhancements-3

* revert CancelBooking.tsx

* add-test

* final-changes

* minor-change

* fix: Revert yarn.lock accidental commit

* minor-change

* fix:type checks

* fix:type check

* fix:type check

* add-test

* add-tests

* add-test

* fix:type checks

* fix:type check

* fix:clean-code

* fix:type check

* fix:type check

* fix:minor-change

* fix:tests

* fix:BookingListItem

* fix:type-check

* fix:type-check

* adding check for platform

* revert-change

---------

Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: Benny Joo <sldisek783@gmail.com>
2025-04-03 20:04:02 +00:00
Tushar Bhatt 8d59c2fc16 feat: max-seats-per-time-slot (#20213)
* feat: max-seats-per-time-slot

* fix : test

* enhancements

* enhancements

* fix:test

* fix:test
2025-04-03 15:29:57 -04:00
Lauris Skraucis cb365117b3 feat: v2 return booking icsUid (#20527)
* feat: v2 return booking icsUid

* docs: regenerate
2025-04-03 14:37:40 +00:00
Benny Joo 7c9aae7eaf selectedDateString could be null (#20517) 2025-04-03 11:40:28 +00:00
Eunjae Leeandsean-brydon 1e7453edcd fix: keep search term on the url (DataTableToolbar.SearchBar) (#20521)
* fix: keep search term on the url (DataTableToolbar.SearchBar)

* update comment

* Update packages/features/data-table/components/DataTableToolbar.tsx

Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>

---------

Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
2025-04-03 12:59:36 +02:00
Morgan f353fdf252 chore: bridge logs api v2 <-> libraries (#20440)
* chore: bridge logs api v2 <-> libraries

* chore: replace tslog directly

* chore: add settings handling

* chore: use minLevel to stop debug logs

* handle log levels

* bump libraries
2025-04-03 08:27:12 +00:00
Lauris Skraucis feff588603 fix: v2 allow creating team events without hosts (#20520)
* fix: v2 allow creating team events without hosts

* chore: remove log
2025-04-03 07:53:58 +00:00
8ae5d32fe5 fixed firstname lastname identifiers (#20480)
Co-authored-by: romit <romitgabani1@gmail.com>
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-04-03 04:21:03 +00:00
Anik Dhabal Babu 9600ab6085 fix: Add to calendar feature not working properly (#20515) 2025-04-03 02:41:36 +00:00
417a612aa3 refactor: extract NextRequest from handle new booking (#20082)
* extract NextRequest

* update api and tests

* booking limits tests

* fix more tests to use new approach

* update more tests with new format

* extract getOrgDomainConfig to not use req

* extract req from loadNewUsers and pass in hostname/forcedSlug

* fix instant meeting types and hostname fixes

* fix handleNewBookingReq

* fix type errors in tests

* make hostName and forcedSlug optional

* fix type err

* Revert "fix type err"

This reverts commit 9d5de9019d9dafe348c97b876baaa1d0675967e5.

* wip fix e2e

* fix: add missing headers

* migrate handle recurring event and also create tests specific to fn

* platform recurringbooking

* fix type

* hard code types on request object

* bump libraries

* fixup! bump libraries

* fix: accessing host if headers not passed

* fix: v2 recurring booking

* fix: accessing host if headers not passed

* chore: bump platform libraries

* fix tests

* push

* chore: bump libraries

* push lock changes

* bump libraries

---------

Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com>
Co-authored-by: Morgan Vernay <morgan@cal.com>
Co-authored-by: supalarry <laurisskraucis@gmail.com>
Co-authored-by: Lauris Skraucis <lauris.skraucis@gmail.com>
2025-04-02 17:57:58 -04:00
Eunjae Lee 4db3c592e5 fix: add oauth client id to table identifier on platform managed user list (#20513) 2025-04-02 21:40:38 +02:00
Lauris Skraucis d99db25dca docs: CalProvider (#20508) 2025-04-03 00:34:32 +05:30
Alex van Andel ba423e1061 Revert "fix: Correct import of markdownToSafeHtml on the client (#18195)"
This reverts commit f5750f3933.
2025-04-02 18:25:06 +01:00
GitHub Actions d5ca11b27b chore: release v5.1.14
Post release / release (push) Canceled after 0s
2025-04-02 16:08:32 +00:00
Benny Joo 25534f721a chore: refactor to use createRouterCaller util (#20494)
* create createRouterCaller and use it

* fix
2025-04-02 16:46:17 +01:00
fad5497363 feat: allow conferencing apps to be installed on teams (#19784)
* feat: added zoom, office365-video as valid event-type locations

* added docs

* Update stripe.service.ts

* enable conferencing apps for teams initial commit

* fix: make conferencing atom work with teams

* update team events in bulk update default location

* feat: Separate endpoints for team conferencing apps instead of query params

* Display all team events in 'Bulk update existing event types' modal when conferencing atom is enabled for Teams

* fix: bulk update default location for team events

* removed the organizations endpoints

* Refactor: Separate functions for team events to follow SRP

* undo extra changes

* undo extra changes

* fix: platform libraries build breaking

* feat: only allow integrations which are installed in create/update team/user event-type endpoints

* fix: merge conflicts

* remove redundant imports

* Update ConferencingAppsViewPlatformWrapper.tsx

* Update useBanners.ts

* fix: axios error response interceptor

* feat: update :app param docs in `organizations-conferencing.controller`

* Revert "fix: axios error response interceptor"

This reverts commit 729eac3eee9f81c19b5368bbae4b1666884221fd.

* Update useAtomsGetInstalledConferencingApps.ts

* upgrade platform libraries

* Update apps.ts

---------

Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com>
Co-authored-by: Morgan Vernay <morgan@cal.com>
2025-04-02 11:32:11 -04:00
Lauris Skraucis 563b31b7d0 fix: v2 bookings attendeeEmail filter (#20506)
* fix: GET bookings if attendeeEmail belong to managed user

* fix: GET bookings if attendeeEmail belong to managed user but does not include oAuthId
2025-04-02 15:21:27 +00:00
Joe Au-Yeung 8c9eb18463 chore: Add spam checking for workflow bodies (#18822)
* Add akismet package to tasker

* Create scanWorkflowBody task

* Schedule workflow body scan

* Add AKISMET_API_KEY .env

* Auto lock user if spam is detected

* Uncommit key

* Add safe param to workflow step

* Migration for safe field

* Do not process workflow steps is `safe` is false

* Update migration to set previous records to true

* Address comments

* Refactor `scheduleWorkflowNotifications` to accept an object

* If new steps or editing old ones send to tasker

* Call `scheduleWorkflowNotifications` in task

* Fix `IS_SELF_HOSTED`

* Remove unused function

* Make `safe` optional in schema

* Type fix

* Revert "Make `safe` optional in schema"

This reverts commit d0964702affa87c35562300301473d25635c565b.

* Revert "Type fix"

This reverts commit d9a031303269a2994ae46f576ab2a3d31e4d977b.

* Type fixes

* Type fixes

* Address comments

* Fix tests

* Add tests

* Update tests

* Typo fix

* Update `safe` to `verifiedAt`

* feat: Compare workflow reminder bodies to default template (#19060)

* Add `getTemplateForAction` function

* Use `getTemplateForAction` when creating a new step

* Use `getTemplateForAction` when action changes

* Have `emailReminderTemplate` accept an object as a param

* Rename `getTemplateForAction` to  `getTemplateBodyForAction`

* Simplify changing body when changing templates

* Create `compareReminderBodyToTemplate`

* In task, compare if reminderBody is a template

* Linting

* Add tests

* refactor: `emailReminderTemplate` to accept object as param (#19288)

* Add `getTemplateForAction` function

* Use `getTemplateForAction` when creating a new step

* Use `getTemplateForAction` when action changes

* Have `emailReminderTemplate` accept an object as a param

* Rename `getTemplateForAction` to  `getTemplateBodyForAction`

* Simplify changing body when changing templates

* Create `compareReminderBodyToTemplate`

* In task, compare if reminderBody is a template

* Linting

* Add tests

* Refactor `scheduleEmailReminders`

* Refactor `create.handler` for new workflows

* Refactor `emailReminderManager`

* Refactor `getEmailTemplateText`

* Fix typo

* Type fix - whatsapp plain text template imports

* Type fix - no template found

* Type fix - add `isBrandingDisabled` to `emailReminderTemplate`

* Add workflow and user to prisma mock

* Fix imports for akismet dependencies

* Record user lock reason

* Undo linting changes

* Fix tests

* New workflow, at verify created step

* Handle if `SCANNING_WORKFLOW_STEPS` is toggled

* Move `verifiedAt` checks to specific schedule functions
- `scheduleWhatsappReminder`
- `scheduleEmailReminder`
- `scheduleSMSReminder`

* Update logic

* Do not fallback verifiedAt

* Add comment to next.config.js
2025-04-02 08:16:26 -07:00
Lauris Skraucis 0965fad72a fix: v2 filter out ooo days out of slots (#20303)
* refactor: slots input service rely on eventTypeId and set start hours if none set

* fix: filter out ooo slots

* test: ooo days filtered out of slots

* revert changes
2025-04-02 11:53:52 -03:00
Lauris Skraucis e76bb37f78 refactor: v2 access and refresh tokens (#20486)
* feat: add refreshTokenExpiresAt to /force-refresh, /exchange/, /refresh

* feat: encode ownerId, expiresAt in tokens & return refresh expires at when creating managed user

* driveby:fix: pass language when creating managed user

* refactor: remove void notation and await access token propagation

* refactor: centralize createOAuthTokens and refreshOAuthTokens logic

* docs: tokens expires at and payload

* chore: comment selectedDate in examples app booker
2025-04-02 17:27:00 +03:00
sean-brydon b0a85a5637 removes additional space on top and bottom (#20503) 2025-04-02 13:13:59 +00:00
Morgan 82f374d84c chore: set x-request-id in response header for exeptions apiv2 (#20505) 2025-04-02 11:56:26 +00:00
Eunjae Lee 9ac037c524 fix: switch saveMode for SaveFilterSegmentButton (#20502) 2025-04-02 09:58:18 +00:00
Anik Dhabal Babu f5750f3933 fix: Correct import of markdownToSafeHtml on the client (#18195)
* chore: markdowntosafeHtml refactor

* update

* Update
2025-04-02 14:41:33 +05:30
sean-brydon 8f2cb0522d fix: google signin getting started redirect (#20501)
* fix redirect conditions

* remove addiiotnal query call
2025-04-02 08:59:18 +00:00
Eunjae Lee 4cd8dbbab4 feat: support Filter Segment in other pages (#20461)
* feat: support Filter Segment in other pages

* minor changes to the behaviors

* remove comment

* fix type error

* fix e2e test
2025-04-02 10:36:42 +02:00
1fb778ae78 feat: v3/UI docs (#20454)
* ui playground

* add types to ui

* push avatar ignore ts and eslint errors

* feat: V3 UI avatar  (#18997)

* avatar playground

* add overflow-hidden back for loading indicator

* update lock

* feat: v3/badge  (#18999)

* badge intro

* fix text on small badge

* add dark mode warning

* feat: v3/button (#19014)

* TOC

* wip buttons

* shadows

* secondary

* semantic colours

* minimal buttons

* update disabled states

* checkbox

* dropdown v3

* load icons

* fix design sections

* fix icon gap

* fix

* remove client component from rsc

* use peer as avatar

* gif

* fix button gap - dropdown iocn

* support start icon in dropdowns

* add alert demo + v3 component + darken semantic text

* base inputs and text field

* wip input

* input field addon/suffix

* toast page

* wip select

* match designs for input and select rounded

* fix

* fix select isloading transform

* fix multi icons transition rotation

* fix group heading

* range slider demo + range slider

* range slider popover design

* v3 dialog

* fix slider thumb size

* wrap in suspense for useSearchParam difference in next14+

* base of tabs + horizontal tabs

* fix select sizing to match input 36px

* fix dark mode hover on button

* target domState class for light/dark so we work on portal elements

* fix default bg on popover

* lightmode toasts + eleveation token

* empty screen

* intro to split button concept

* mass colour updates

* intro to themes

* remove i18n from label with name

* bouncy buttons

* feat: small select

* nav item dumb component

* full demo

* settings demo

* fix tabs

* fix mt

* fix dropdown feedback from loom

* alert fixes mentioned in loom

* push font-cal

* move to fumadocs

* fix avatar

* colors table

* add typeography

* icon + spacing guide

* add border radius and shadow tables

* fix colours and border radius

* remove prose undline via fumas fork

* fix icon buttons sizes

* button group component

* fix horizontal tabs

* tab fixes

* switches

* pagination component

* show toasts components raw

* sync with airtable

* add use client

* 10px on input again

* 10px in select also

* fix input height

* fix files merge

* fix loading state for icon buttons

* fix button fab

* Enable addon to now overflow to next line in DS

* use cal font for dialog text

* add avatar square variant

* fix select padding and menu size

* fix type errors

* fix type errors

* add switch small size and fix type errors

* fix ref types on input

* update web styles

* remove addonFilled to fix type errors

* push dialog fixes

* fix checkbox display

* remove prose from alert examples

* remove prose from all our component examples

* badge rounded-lg on lg size

* update colors

* force w/h on icon buttons instead of inheriting

* remove border-focus

* remove border-focus from tailwind config

* update tokens to match new colours

* add new border subtle tokens and add to toasts

* fix lg button padding

* fix and drastically improve rtl rests

* multi select use badges

* use badge design for select pills

* fix avatar alignment

* fix tests and remove redudant ones

* fix tests and remove redudant ones

* update atoms globals css

* extract tokens.css

* extract app.css

* force flex for atoms

* add @calcom/ui/css

* revert ui playground styles abstraction

* fix input focus states

* fix focus states for buttons

* feat: v3/app work (#19233)

* globals.css for app + event types listing search

* few app wide NITS

* fix select foucs within styling

* fix formbuilder switch styles

* fix disabled state of nested inputs

* workflow fixes

* webhook form fixes

* i18n on tabs info

* booking filters + tab

* fix filters spacing

* make first item so we get correct border radius if not default

* round radio group in create event types + make button small

* profile page

* update editor br

* button nits in existing places in the app

* fix timezone select and multilist in guest form

* fix text area on public booking page

* size small event types create

* margin on routing filter

* filters improvments

* routing insights fixes

* fix date filter range

* ooo fixes

* fix teams/members bulk actions

* create team UI

* i18n in useTabs instead of in tab component now

* Add event type setup border to availability

* fix bulk actions on org members table

* onboarding fixes

* fix input types with ref stripe comparision

* i18n fixes for platform

* update globals of atoms

* fix form builder firstname/lastname switch + correct footer useage

* fix select

* Revert "add @calcom/ui/css"

This reverts commit 0dd8f9012907a278cfede4a98f289cb0744c9244.

* revert tokens css

* Revert "extract app.css"

This reverts commit 10b998604816ad3310c24b36a02a638dabc5be24.

* linear nits

* workflow dropdown

* fix page theme heading sizes to match cards

* fix stepper for team creation

* adjust margin to FilterSearchField

* fix ooo icon

* fix booker and dark mode due to darkgray 50

* more dark mode fixes

* add size prop

---------

Co-authored-by: Eunjae Lee <hey@eunjae.dev>
Co-authored-by: Morgan Vernay <morgan@cal.com>

* update package name

* update package json lost in merge

* update package json lost in merge

* re-genrate source

* fix imports

* imports

* fix merge issues and imports

* restore globals css

* add source to git ignore

* remove old source files

---------

Co-authored-by: Eunjae Lee <hey@eunjae.dev>
Co-authored-by: Morgan Vernay <morgan@cal.com>
2025-04-02 09:10:07 +01:00
Udit TakkarandOmar López bc9d76e7da chore: do not route to meeting-ended page for daily link used for testing (#20371)
* chore: remove 14 day buffer for QA

* chore: check uid

---------

Co-authored-by: Omar López <zomars@me.com>
2025-04-02 00:00:28 +00:00
Joe Au-Yeung af51ce1890 chore: Salesforce - handle checkbox type fields (#20490)
* Add checkbox field type

* Handle accepting booleans under value field when saving writing to field settings

* UI saving settings to write to checkbox field

* Prepare update body to pass boolean value to checkbox field

* Type fixes

* Type fix
2025-04-02 00:00:02 +00:00
Benny Joo 75c79f76c8 perf: Remove ssrInit completely (#20439)
* remove ssrInit completely

* remove instances of dehydratedState

* fix

* refactor

* fix type checks

* fix linting

* Refactor

* Refactor

* remove log
2025-04-01 19:14:46 -04:00
Benny Joo b5b4134b75 feat: implement booking page error boundary (#20492)
* implement booking page error boundary

* use it
2025-04-01 22:13:18 +00:00
GitHub Actions 01ca2ca3de chore: release v5.1.13
Post release / release (push) Canceled after 0s
2025-04-01 15:19:27 +00:00
f94e80558a feat: refactor handleCancelBooking to not have next request (#20241)
* refactor handleCancelBooking to not have next request

* fix platform v2 function calls

* dont fall back to "" if no seat refrence

* add missing type from merge

* chore: bump platform libraries

---------

Co-authored-by: Amit Sharma <74371312+Amit91848@users.noreply.github.com>
Co-authored-by: Lauris Skraucis <lauris.skraucis@gmail.com>
Co-authored-by: supalarry <laurisskraucis@gmail.com>
2025-04-01 14:52:24 +00:00
Alex van Andel a5c15e6517 chore: Allow tracing orphaned event types (added id) (#20479) 2025-04-01 13:56:32 +00:00
Udit Takkar aaa39cccf8 chore: update status code (#20443)
* chore: update status code

* chore: update status code

* fix: error unhandled
2025-04-01 10:08:14 -03:00
amrit d24a93962f fix: trigger lingo.dev by removing duplicate value (#20475) 2025-04-01 15:38:24 +05:30
Eunjae Lee 1d9d52ecf8 fix: add missing DataTableProvider (#20473)
* fix: add missing DataTableProvider

* add e2e test
2025-04-01 10:57:36 +01:00
sean-brydon f1a832921a fix form builder dark mode (#20474) 2025-04-01 09:30:07 +00:00
amrit af1633db28 fix: trigger Lingo.dev for a translation not picked up (#20472) 2025-04-01 13:30:07 +05:30
Benny Joo 7353b6a604 fix: trigger Lingo.dev for a translation not picked up (#20468) 2025-04-01 02:39:58 -04:00
Anik Dhabal Babu dab0b4a4d8 fix: user fields response not pupulated (#20458) 2025-04-01 06:30:00 +00:00
GitHub Actions 3711e01a77 chore: release v5.1.12
Post release / release (push) Canceled after 0s
2025-03-31 22:17:14 +00:00
Anik Dhabal Babu 63c9cb6b92 test: embed e2e tests for mobile viewport and hideEventTypeDetails=true (#20445)
* test: embed e2e test

* update

* tweak

* Update fixtures.ts

* update

* something new

* Update playwright.config.ts
2025-03-31 23:05:53 +01:00
Eunjae Lee f039e116d7 fix: eventTypeId filter on Download at /insights (#20463)
* fix: eventTypeId filter on Download at /insights

* show toast for error
2025-03-31 22:00:15 +00:00
Joe Au-Yeung 93621baea5 Add users to event types when provisioned (#20465) 2025-03-31 21:49:08 +00:00
Tushar BhattandEunjae Lee eaa17fa48d fix: booking filtering queryParams (#20447)
* fix: bookng-filtering-queryParams

* adding comments

* feedback changes

* fix: typo

* minor-change

* revert Pagination.tsx

* minor-change

* minor-changes

* Update packages/features/data-table/DataTableProvider.tsx

* fix: type-check

* fix: test

---------

Co-authored-by: Eunjae Lee <hey@eunjae.dev>
2025-03-31 17:19:28 +01:00
Tushar Bhatt 9ce94fbbfc fix:theme-flakiness (#20460) 2025-03-31 21:18:06 +05:30
Lauris Skraucis 69548e6ed0 docs: v2 authorization headers (#20453)
* refactor: client secret header for oauth users and webhooks

* fix: platform introduction link to api reference

* regenerate docs for commits above

* refactor: specify request headers

* refactor: specify request headers
2025-03-31 14:28:05 +03:00
sean-brydon 5cd2ba1362 perf: move stripe to billing service out of app store (#20376)
* add more methods to billingService

* update profile handler

* stripe customer handler

* verify email

* move imports + move generic methods to billing service

* move to strip ebilling service class

* push changes to mocks

* fix enum

* fix typo

* correctly update customer metadata

* fix userId type to number

* fix types on billing services

* fix type errors due to return methods differing

* fix return types
2025-03-31 09:20:27 +00:00
Eunjae Lee f15d347804 feat: implement filter segment (#20066)
* feat: add filter segment

* add tests

* add ui

* provide tableIdentifier from context

* fix components

* update save button

* try to fix router

* add proper implementation

* update icon

* remove segmentId if invalid

* fix tests

* fix type errors

* fix type errors

* fix unit test

* clean up

* minor fixes

* clean up types

* avoid barrel imports

* fix imports

* minor improvements

* fix type error

* fix radio import

* fix little issues

* menu permission

* update icon snapshot

* fix: remember last used filter segment (#20261)

* fix: remember last used filter segment

* extract segments logic as a separate file

* remove unnecessary query

* apply feedback

* deep comparison
2025-03-31 08:53:48 +00:00
Morgan c95118715a chore: don't log the whole delegated credential (#20452) 2025-03-31 08:25:35 +00:00
Benny Joo 21e7ac3cbe fix: middleware config matcher (#20450)
* fix: middleware config matcher - ending slash

* improve comment
2025-03-30 23:02:20 -03:00
Amit SharmaandKeith Williams 81de95bd28 feat: allow plain ask a question for paid users only (#20390)
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
2025-03-30 04:17:12 +00:00
Omar López d80ed07093 fix: calendar cache date mismtach (#20446)
* fix: calendar cache date mismtach

* Update tests
2025-03-29 17:00:26 -07:00
Anik Dhabal Babu b2ac86c759 fix: send email to is not being displayed in routing forms (#20444)
* feat: ability to set locked timezone

* fix: send email to is not being displayed in routing forms

* update

* Update EventAdvancedTab.tsx
2025-03-29 14:49:05 +00:00
Vachmara 295cf40c6e fix(intercom app): team / org url validation (#20431) 2025-03-29 10:56:07 +05:30
Omar López 92827b2c9d fix: atom builds (#20437) 2025-03-28 23:18:56 +00:00
Omar López e1076690c1 chore: bump platform (#20436) 2025-03-28 21:10:46 +00:00
Calcom BotandLingo.dev 70dd9b9c2c feat: update translations via @lingodotdev (#20432)
Co-authored-by: Lingo.dev <support@lingo.dev>
2025-03-28 20:20:38 +00:00
GitHub Actions 71bfd17f81 chore: release v5.1.11
Post release / release (push) Canceled after 0s
2025-03-28 19:29:33 +00:00
Eunjae Lee 5b08b9f11f fix: add isAdminOrOwner and useIsOrgAdminOrOwner (#20429)
* fix: add isAdminOrOwner and useIsOrgAdminOrOwner

* make useIsOrgAdminOrOwner to accept session

* revert change

* remove useIsOrgAdminOrOwner and rename isAdminOrOwner to checkAdminOrOwner

* fix type

* fix type

* fix import
2025-03-28 17:01:06 +00:00
Keith Williams 3456477012 chore: Upgrade lingo.dev (#20430) 2025-03-28 13:39:58 -03:00
Amit Sharma c654795a3e fix: Follow Up for dub referrral embed (#20427)
* fix: Follow Up for dub referrral embed

* fix meta title and description
2025-03-28 21:57:01 +05:30
Eunjae Lee a7b1981cf1 fix: wrong dates on OOO due to summer time (#20408)
* fix: wrong dates on OOO due to summer time

* update styles

* fix test

* fix edit button
2025-03-28 21:00:56 +05:30
Joe Au-YeungandHariom Balhara 48016e0f3e chore: Move CRM owner calls handleResponse (#19316)
* Handle normal ownership routing

* Skip contact owner check if true

* Fix typos

* Call getting contact owner in promise.all in handleResponse

* Pass crm contact owner data to params

* Add crm contact params

* Only get CRM owner calls if params don't exist

* Handle if properties don't exist

* Fix typo

* Pass CRM specific variables to getServerSideProps

* Remove logs

* Type fixes

* Use `wrapGetServerSIdePropsWIthSentry` in router getServerSideProps

* Add sentry monitoring

* Type fixes

* Type fix

* Type fixes

* Update imports for sentryWrapper

---------

Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
2025-03-28 10:42:28 -04:00
30367cd5f3 [Snyk] Security upgrade next from 13.5.7 to 13.5.9 (#20412)
* fix: apps/api/v1/package.json to reduce vulnerabilities

The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-NEXT-9508709

* updated yarn.lock

---------

Co-authored-by: snyk-bot <snyk-bot@snyk.io>
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
2025-03-28 14:36:45 +00:00
Joe Au-YeungandUdit Takkar 47d822a092 fix: Dsync group table formatting (#20422)
* Fix column to take up entire table

* Fix formatting of group names

---------

Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
2025-03-28 13:24:26 +00:00
Joe Au-Yeung b597dad450 feat: Salesforce - Fallback to Lead if Contact Isn't Found For Routing (#20423)
* Add fallback to lead to schema

* FE option to fallback to lead owner

* Logic to query for contacts and leads for RR skip
2025-03-28 16:54:03 +05:30
Lauris Skraucis e67e073f04 refactor: v2 team event type assignAllTeamMembers (#20400)
* fix: platform seed data

* fix: assignAllTeamMembers: true excludes team owners in platform

* refactor: platform plan guard explicit error message

* refactor: require either hosts or assignAllTeamMembers=true

* refactor: require either hosts or assignAllTeamMembers=true

* fix: before creating or updating team event type check if doesnt exist with that slug

* chore: regenerate docs

* test: can update round robin that had assign all team members true

* fix: platform guard spec test

* fix: seed platform membership role

* fix: test ts error
2025-03-28 05:56:26 -03:00
Hariom Balhara 17f493a488 fix: 500 error on missing response id. Should be 400 (#20420)
* fix: 500 error on missing response id. Should be 400

* fix failing test
2025-03-28 07:53:32 +00:00
Hariom Balhara 96fcf7beec fix: Flaky organization.spec.ts test for i.cal.com (#20421)
* Fix flakiness in checjly

* Fix isEmbed check
2025-03-28 04:50:09 +00:00
Joe Au-Yeung c0aa97178c feat: Prevent watchlisted entities from creating bookings (#19107)
* Add `searchForAllBlockedRecords` to watchlist repository

* Create `checkIfUsersAreBlocked`

* Call `checkIfUsersAreBlocked` in `loadAndValidateUsers`

* Draft test

* Add tests

* Type fix

* Type fix
2025-03-28 01:11:10 +00:00
Peer Richelsen fc8ff2d4ae nit changes to referral embed (#20419) 2025-03-27 23:41:16 +00:00
Anik Dhabal Babu c1a6ccc260 fix: system booking field is not tranlate in calndar event (#20410) 2025-03-27 19:27:31 +00:00
Morgan b17f47236e fix: atoms build inferred types (#20409)
* fix: atoms build inferred types

* type button cva

* chore: refactor react imports

* chore: refactor react imports toast
2025-03-27 19:00:45 +00:00
GitHub Actions 236fd967ad chore: release v5.1.10
Post release / release (push) Canceled after 0s
2025-03-27 18:51:29 +00:00
Joe Au-Yeung 7f5534b340 fix: Salesforce ownership query (#20405)
* Fix query

* Add test
2025-03-27 16:08:09 +00:00
Alex van Andel 50bacf6ea2 Add 'await' to searchParams, parse failed (#20407) 2025-03-27 16:07:52 +00:00
Hariom Balhara 0d1adcca58 Ensure upId in token for Google Signin which is used by getServerSession (#20399) 2025-03-27 15:42:09 +00:00
Somay ChauhanandMorgan 81962efb2e fix: Restore event name field in Advanced Event Settings for Atom (#20394)
Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com>
2025-03-27 17:22:12 +02:00
sean-brydonandKeith Williams da47168941 fix: Stop throwing 202 for stripe handler (#20397)
* dont throw - log error

* invoice paid

* update to warn

* Update packages/features/ee/billing/api/webhook/_invoice.paid.ts

---------

Co-authored-by: Keith Williams <keithwillcode@gmail.com>
2025-03-27 15:06:15 +00:00
Hariom Balharaandamrit 2aa583bb6d feat: Toggle to hide Team Profile link on Booker (#20369)
* hide team profile link on booker

* fix ts errors

---------

Co-authored-by: amrit <iamamrit27@gmail.com>
2025-03-27 15:00:35 +00:00
Eunjae Lee ea250febbc fix: style DataTableSelectionBar (#20403) 2025-03-27 14:29:45 +00:00
Keith Williams f062014952 chore: Use fixed mintlify version for builds (#20402) 2025-03-27 14:11:50 +00:00
Eunjae LeeandAlex van Andel 88961a1c67 fix: attribute filters on organization member list (#20380)
* fix: attribute filters on organization member list

* fix total count

* add tests

---------

Co-authored-by: Alex van Andel <me@alexvanandel.com>
2025-03-27 14:36:47 +01:00
MorganandhbjORbj cd952dc93c chore: decouple ui dialog from AppRouter and Atoms (#20088)
* chore: decouple ui dialog from AppRouter and Atoms

* fix type e2e test

* fix: import dialog from @calcom/ui/components/dialog

* fix: remove log

* fix unit test

* fix

* fix and move data-override-list test to features package

---------

Co-authored-by: hbjORbj <sldisek783@gmail.com>
2025-03-27 09:24:42 +02:00
Hariom Balhara b0ed1fd5e6 dont install the scripts on booking pages (#20373) 2025-03-27 11:12:28 +05:30
Keith WilliamsandhbjORbj be883aac02 perf: Remove ssrInit from layout and event-types (#20368)
* perf: Remove ssrInit from layout and event-types

* remove ssg file since not used

* refator trpc usage in app router

* fix

---------

Co-authored-by: hbjORbj <sldisek783@gmail.com>
2025-03-26 22:04:52 -03:00
Alex van Andel 2ab4e8b40a fix: support Stripe subscription items (#20389)
* fix: Implement backwards compatible stripe change to customer.subscription.deleted

* Further handling, including price -> plan change
2025-03-26 23:24:38 +00:00
sean-brydonandPeer Richelsen 6bd11009a8 allow promotion codes (#20387)
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
2025-03-26 22:51:10 +00:00
099c534daa feat: dub refer embed (#20258)
* feat: dub refer embed

* review fix

* review fix

* @dub/embed-core seems not needed

* @dub/embed-core can stay in web

* move refer page out of main-nav

* update yarn lock

* use loading.tsx

---------

Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: hbjORbj <sldisek783@gmail.com>
2025-03-26 21:06:21 +00:00
Udit Takkar 7aa1d8035c fix: update error handling in validateBookingTimeIsNotOutOfBounds function to use HttpError (#20386) 2025-03-26 17:24:33 +00:00
Udit Takkar 596e9b4e5a fix: circular dependencies (#20378)
* fix: circular dependencies

* fix: type err
2025-03-26 12:42:40 -04:00
Lauris Skraucis d04f10e7d1 refactor: platform - remove host and attendee automatic no show webhook trigger (#20385)
* docs: connect calendar redir and auto accept team creator

* refactor: platform hide automatic no show webhook triggers
2025-03-26 21:55:49 +05:30
0fec74a7fe fix: #11378 (#20384)
* fix:#11378

* fix: #11378

* final-changes

---------

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
Co-authored-by: Tushar <tusharbhatt0135@gmail.com>
2025-03-26 14:51:39 +00:00
Eunjae Lee d927662dd7 fix: relocate action buttons on org member list (#20336)
* fix: relocate filter segment buttons on org member list

* implement toolbarContainerRef

* adjust location

* reorganize the hierarchy of DataTableProvider

* rename toolbar container to cta container

* move clear button to toolbar right
2025-03-26 14:18:39 +00:00
sean-brydon e1c001baff adds scroll indicators and sticks to one line (#20383) 2025-03-26 14:15:54 +00:00
Joe Au-Yeung 122af4538d fix: Add assignment reason for round robin reassignments (#19199)
* Add `RR_REASSIGNED` to schema

* Handle recording reassigned manual vs rr

* Pass manual assignment prop to `AssignmentReasonRecorder`

* Add log to determine who is doing the reassignment

* RR reassign - add initializing log

* Record assignment reason when reassigning via rr

* Add `reassignedById` in trpc endpoint

* Add `reassignedById` param in api v2 endpoint

* Migration to add `RR_REASSIGNED`
2025-03-26 10:39:16 -03:00
GitHub Actions e215786afb chore: release v5.1.9
Post release / release (push) Canceled after 0s
2025-03-26 11:49:54 +00:00
Eunjae Lee f699fd1732 fix: add UID filter to /insights/routing (#20356) 2025-03-26 09:52:40 +00:00
Hariom Balhara a9ddea9184 fix crash in vercel domain creation flow (#20281) 2025-03-26 13:05:55 +05:30
Gaurav VermaandTushar Bhatt d4edd30a07 fix: layout of dialog (edit location) on bookings page (#20268)
* refactor: streamline DialogFooter structure in EditLocationDialog component

* refactor: enhance form handling and structure in EditLocationDialog component

* refactor: update icon styling and layout in EditLocationDialog component

* revert: size to h,w

---------

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-03-26 09:35:05 +05:30
Calcom BotandLingo.dev f98a3c9b69 feat: update translations via @lingodotdev (#20367)
Co-authored-by: Lingo.dev <support@lingo.dev>
2025-03-26 02:34:39 +00:00
Benny Joo dcc079773b fix: type error in payment page (#20366) 2025-03-26 01:48:27 +00:00
Omar López 2a2e2871a8 ci: add QA status badge (#20363) 2025-03-25 21:28:42 +00:00
GitHub Actions 0befc6431f chore: release v5.1.8
Post release / release (push) Canceled after 0s
2025-03-25 21:10:18 +00:00
Benny Joo 35c363f75c fix: better translations for korean (#20362) 2025-03-25 19:13:49 +00:00
Benny Joo ad6d5a01f8 fix: some translations got wrong closing tags (#20360) 2025-03-25 14:59:51 -04:00
0xIvan 11ae957d97 Fix quickstart link (#20355) 2025-03-25 18:27:24 +00:00
Alex van Andel c21094ab0a fix: Buffers when combined with seated events (#20233) 2025-03-25 18:17:25 +00:00
Benny Joo 9b952fd922 chore: Set daily video testing meeting link to env var (#20359) 2025-03-25 18:17:00 +00:00
Ayush Agarwal ecd85cd15a feat: enhance onboarding steps with loading state and button component (#20350)
- Added loading state to ConnectedCalendars and ConnectedVideoStep components.
- Replaced native button elements with a custom Button component for consistency.
- Updated SetupAvailability to use async mutation methods.
- Integrated loading state into the onboarding view for smoother transitions between steps.
2025-03-25 18:13:09 +00:00
Alex van Andel 0772e1d168 fix: skip when browsing month has no available slots (#19626)
* fix: skip when browsing month has no available slots

* Fix zustand error + add wip tests

* Fix issue with using brows
ingDate too early

* Use slots instead of schedule return types to remove hard coupling to tRPC

* Some await fixes + use type definition from extended core feature

* Move useNextMonth to custom hook

* Add unit tests to cover the next month scenario

* Use changed interface, schedule -> slots,isLoading

* Return no-op until ready
2025-03-25 17:28:50 +00:00
Benny Joo d131d58b19 feat: upgrade @daily libs (#20348)
* upgrade @daily libs

* install peer dep

* add code for local testing
2025-03-25 17:27:00 +00:00
Lauris SkraucisandRajiv Sahal 8a18e167e9 fix: remove oAuth clientId from email when rescheduling platform booking (#20354)
Co-authored-by: Rajiv Sahal <sahalrajiv-extc@atharvacoe.ac.in>
2025-03-25 13:18:29 +00:00
Benny Joo c7c2c03f6a chore: move ServerTrans to packages/lib (#20353)
* chore: move ServerTrans to packages/lib

* remove file not meant for this PR
2025-03-25 10:23:42 +00:00
Morgan a183b31269 refactor: atoms dependency on web through AdditionalCalendarSelector (#20352) 2025-03-25 09:09:57 +00:00
Benny Joo bec8bf2eaa chore: improve e2e test suite for i18n routing (#20349) 2025-03-25 13:55:29 +05:30
Anik Dhabal Babu 1789aef7d3 fix: organizer req email v2 issue (#20314) 2025-03-25 05:10:42 +00:00
Anik Dhabal Babu 7b9dabfa17 fix: disable guest is not updating onchange (#20340) 2025-03-25 04:51:13 +00:00
Anik Dhabal Babu 3ecc9319c7 fix: Introduce a new prop in the session to extract the profile username when inside an org (#18979)
* fix: flaky test organization.spec

* fix: use profile.username

* update

* update

* update
2025-03-25 09:46:00 +05:30
GitHub Actions 214528ffa8 chore: release v5.1.7
Post release / release (push) Canceled after 0s
2025-03-25 00:23:18 +00:00
Keith WilliamsandAlex van Andel 7f79779bf8 chore: Upgrade jackson (#20107)
Co-authored-by: Alex van Andel <me@alexvanandel.com>
2025-03-25 00:18:26 +00:00
GitHub Actions ed0f8fe0e7 chore: release v5.1.6
Post release / release (push) Canceled after 0s
2025-03-24 23:23:16 +00:00
Benny Joo 273fc544e7 feat: rewrite all routes starting with supported lang code (#20346)
* feat: rewrite all routes starting with matching locale code

* update e2e test
2025-03-24 23:15:39 +00:00
Joe Au-Yeung f24e8d12f0 feat: Salesforce - handle picklist field type (#20342)
* Add picklist to `SalesforceFieldType` enum

* Add picklist value to Salesforce settings

* Add `getPicklistFieldValue` method

* Find picklist option based on active and value
2025-03-24 23:05:30 +00:00
Omar López 19712f62e3 feat: improved observability on api v1 and webapp (#20302)
* feat: associate errors to users on api v1

* Added webapp

* Update layout.tsx

* Update captureUserId.ts
2025-03-24 23:01:20 +00:00
Benny JooandAnik Dhabal Babu 0ec701f9e6 fix: rewrite /en/* paths to /* (#20331)
* fix: add back i18n config to next.config.js

* add back localeDetection

* rewrite /en/* paths to /

* add e2e test

* add comment

* add test

---------

Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-03-24 16:50:55 -03:00
sean-brydon e4cfaa56f0 no throw 202 (#20339) 2025-03-24 16:48:38 +00:00
c7641f852f feat: Added org username to admin users view (#20254)
* feat : Added org username to admin users view

* styling tweaks (#20215)

* minor-changes

---------

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
Co-authored-by: Tushar <tusharbhatt0135@gmail.com>
2025-03-24 15:03:58 +00:00
Ayanava Karmakar e2597fbcd2 docs: fix invalid JSX in code snippets in platform/guides/booking-redirects (#20321) 2025-03-24 14:32:02 +00:00
Zayd Krunz ce88018ecc Update aws.mdx (#20330) 2025-03-24 14:31:01 +00:00
Vijay 0eb4e6c7d4 explicitly specify default visibility value till initializes (#20312) 2025-03-24 14:25:56 +00:00
Keith Williams 10c9c63ad8 revert: "fix: lint (#20325)" (#20337)
This reverts commit 1dc63e0df7.
2025-03-24 11:02:04 -03:00
Omar López a18defaa36 fix: increase memory requirement for building atoms (#20306) 2025-03-24 10:50:35 -03:00
GitHub Actions f9ee907245 chore: release v5.1.5
Post release / release (push) Canceled after 0s
2025-03-24 00:23:17 +00:00
Calcom BotandLingo.dev eac6b12e91 feat: update translations via @lingodotdev (#20320)
Co-authored-by: Lingo.dev <support@lingo.dev>
2025-03-23 23:07:36 +00:00
Anik Dhabal Babu 1dc63e0df7 fix: lint (#20325) 2025-03-23 23:03:25 +00:00
Keith Williams 96cd3f7b2f chore: Upgrade @sentry/nextjs to 9.8.0 (#20324)
* chore: Upgrade Sentry

* Use ^9.8.0
2025-03-23 15:24:59 -03:00
Keith Williams 7943a83e7d fix: lint errors (#20323) 2025-03-23 14:38:53 +00:00
Anik Dhabal Babu 01c16ad150 fix: calender setting skeleton (#20317) 2025-03-23 08:23:28 +00:00
Ayanava Karmakar 42807481c1 fix(docs/platform/guides) - use correct variable in reschedule booker code snippet (#20316) 2025-03-23 04:51:05 +00:00
Keith Williams 032c41fefd chore: Upgrade Next to 15.2.3 (#20315) 2025-03-22 15:07:57 +00:00
Vijay 41041226b4 wait in advance and avoid race condition (#20311) 2025-03-22 14:56:01 +05:30
Hariom Balhara 56ab4e8415 Add salesforce query validation in integration tests (#20209) 2025-03-21 23:06:41 +00:00
Calcom BotandLingo.dev 8ee6d2befa feat: update translations via @lingodotdev (#20307)
Co-authored-by: Lingo.dev <support@lingo.dev>
2025-03-21 20:10:34 +00:00
Omar López 9cd133ff10 Auto builds icons before dev and build scripts (#20304) 2025-03-21 19:59:00 +00:00
GitHub Actions 6df473c5fb chore: release v5.1.4
Post release / release (push) Canceled after 0s
2025-03-21 19:14:23 +00:00
Benny Joo 4606fc6ace chore: Remove HeadSeo everywhere (#20272) 2025-03-21 14:24:53 -04:00
78ddf71823 perf: Move OOO-related tRPC procedures to new routers (#20136)
* perf: Move OOO-related tRPC procedures to new routers

* Moved test file

* push fix for import path in tests

* fix trpc response url that we wait for

---------

Co-authored-by: sean-brydon <sean@cal.com>
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
2025-03-21 09:03:10 -07:00
Morgan 15cb687307 chore: ensure default calendars for delegated users (#20300)
* chore: ensure default calendars for delegated users

* fixup! chore: ensure default calendars for delegated users
2025-03-21 15:41:04 +00:00
Lauris Skraucis c0ecfcd910 docs: v2 team event schedulingType (#20289)
* refactor: input scheduling type

* refactor: output scheduling type
2025-03-21 13:25:59 +00:00
Lauris Skraucis 2e86f8404f fix: booker atom booking with split name (#20298) 2025-03-21 13:25:32 +00:00
Morgan b94b16316f fix: i18n failed to fetch translations results in api v2 crash (#20294)
* fix: i18n failed to fetch translations

* fixup! fix: i18n failed to fetch translations
2025-03-21 14:22:38 +02:00
Tushar Bhatt f80b780aae fix: removing unnecessary styles (#20284)
* fix: removing unnecessary styles

* add padding

* padding

* padding
2025-03-21 16:36:21 +05:30
Pranav Patil 00dc467f25 fix: Padding issue in text fields (#20287) 2025-03-21 09:03:54 +00:00
Morgan d644c09bac fix: missing Prisma type in libraries (#20285) 2025-03-21 08:50:14 +00:00
Vijay 5d9c7bfde9 place correct actions before await (#20266) 2025-03-21 09:39:21 +05:30
Benny Joo cfd1c5dfe3 show-skeleton-only-if-cached-data-do-not-exist (#20275) 2025-03-21 09:38:58 +05:30
amrit d7e5a8e588 fix: update SkeletonLoaderTeamList component layout (#20263) 2025-03-21 02:21:54 +00:00
Benny Joo 3b992fa9bd chore: missing awaits for params/search params in two pages (#20276) 2025-03-21 02:19:15 +00:00
8ad442f2be feat: Upgrade to Next 15 (#18834)
* wip

* update layoutHOC

* wip

* remove app router related code no longer used

* remove more

* await cookies, headers, params, serachparams

* update yarn.lock

* await cookies, headers, params, serachparams more

* update yarn lock again

* downgrade next-auth to 4.22.1

* update yarn lock

* fix

* update yarn lock

* fix type checks

* update yarn lock

* await headers and cookies

* restore pages folder

* restore yarn.lock

* update yarn.lock

* await headers and cookies

* remove

* await params in API routes

* updates

* restore next.config.js

* remove i18n from next.config.js

* Fixed tests

* Fixed types

* Removed duplicate favicon.ico

* Fixing more types

* ImageResponse moved to next/og

* Fixed prisma import issues

* dynamic import for @ewsjs/xhr

* remove deasync dep

* dynamic import for @tryvital/vital-node

* fix type checks

* add back turbopack command

* Type fix

* Removed unneeded file

* fix turbopack relative path errors

* add comments

* remove unneeded code

* Fixed build errors

* await apis

* use Promise<Params> type in defaultResponderForAppDir util

* refactor scim api route

* fix type checks

* separate app-routing.config into client-config and server-config

* wip

* refactor routing forms components

* revert unneeded changes for easier review

* fix

* fix

* use CustomTrans

* fix type

* fix unit tests

* fix type error

* fix build error

* fix build error

* fix build error

* fix warnings

* fix warnings

* upgrade @tremor/react and tailwindcss

* numCols -> numItems

* fix forgot-password e2e test

* fix 1 more e2e test

* fix login e2e test

* fix e2e tests

* fix e2e tests

* clean up

* remove error

* use tremor/react 2.11.0

* fix

* rename CustomTrans to ServerTrans

* address comment

* fix test

* fix ServerTrans

* fix

* fix type

* fix ServerTrans usages 1

* fix translations

* fix type checks

* fix type checks

* link styling

* fix

---------

Co-authored-by: Keith Williams <keithwillcode@gmail.com>
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-03-20 21:30:51 -03:00
GitHub Actions 695a4d7a59 chore: release v5.1.3
Post release / release (push) Canceled after 0s
2025-03-20 22:05:36 +00:00
Anik Dhabal BabuandTushar Bhatt 9bcea0fa01 replyTo includes the correct email (#20235)
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-03-20 17:16:12 +00:00
Rajiv Sahal 9a4c8c147b feat: improve trpc exception handling for api v2 (#20158)
* improve trpc exception handling for api v2

* update error messages

* fixup
2025-03-20 16:03:29 +00:00
Gaurav Verma a48ad2219f feat: add aria-labels for accessibility in AddVariablesDropdown and ToolbarPlugin components (#20260) 2025-03-20 15:59:47 +00:00
Udit Takkarandsean-brydon 55a97b71c8 perf: fix circular dependencies (#20121)
* perf: fix circular dependencies

* fix: types

* fix: types

* fix: types

---------

Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
2025-03-20 15:30:26 +00:00
Udit Takkar b1b8b0135e refactor: event type builder (#19459) 2025-03-20 07:49:14 -07:00
Rajiv SahalandMorgan 08d4c800e9 feat: allow timezones selection in Booker atom via prop (#20044)
* expose props to pass in timezones and booking dry run values from outside

* fix merge conflicts

* update typings

* add props values to test

* fixup: PR feedback

* PR feedback

* fix wrong prop name

* fix merge conflicts

* fixup

* update docs

* update docs examples

* fix props naming

* fix timezone component logic and typo

* extract typings of timeZones

* update typings for Timezone

* update docs

* resolve merge conflicts

* fix typings

---------

Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com>
2025-03-20 14:05:45 +00:00
Vijay efeb0a8f41 fix: repeatedly occurring flaky tests (#20238)
* fix flaky tests

* minor tweak in ooo tests

* chore

* update: fill description at end
2025-03-20 18:46:41 +05:30
Hariom Balhara 207147f5ff fix: Errors seen in some cases when organization is created through webhook (#20249) 2025-03-20 13:02:32 +00:00
Anik Dhabal Babu 6bb8a7c6a9 fix: e2e flake (#20252) 2025-03-20 12:14:51 +00:00
Hariom Balhara aa7f9719c9 Must slugify the slug - in UI and before we use it (#20242) 2025-03-20 11:23:46 +00:00
Carina WollendorferandCarinaWolli e045dcff11 fix: add response id to webhook payload (#20247)
* add responseId to webhook payload

* fix test

---------

Co-authored-by: CarinaWolli <wollencarina@gmail.com>
2025-03-20 11:21:30 +00:00
Eunjae Lee 80eb6daf1f fix: case insensitive search on organization member list (#20240) 2025-03-20 10:47:57 +00:00
Benny Joo b0bf274896 perf: Remove packages/ui/index.ts barrel file (#20243)
* remove packages/ui/index.ts

* Update tests
2025-03-20 07:26:12 -03:00
Morgan 4762d475cb chore: get oauth client parans from event-type hosts (#20236) 2025-03-20 08:02:25 +00:00
Peer Richelsen c7d9c63390 added padding bottom so plain chat doenst overlay anything (#20224) 2025-03-20 03:56:16 +00:00
Benny JooandKeith Williams 853f9bc436 perf: do not import from @calcom/ui barrel file (#20184)
* Icon and IconName

* Button and ButtonGroup

* UserAvatar

* AvatarGroup

* Avatar

* WizardLayout

* Dialogs

* EmptyScreen

* showToast and TextField

* Editor

* Skeleton

* Skeleton

* TopBanner and showToast

* Button again

* more

* perf: Remove app-store reference from @calcom/ui

* more

* Fixing types

* Icon

* Fixed casing

* dropdown

* more

* Select

* more

* Badge

* List

* more

* Divider

* more

* fix

* fix type check

* refactor

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix type check

* fix

* fix

* fix

* fix

* more

* more

* more

* more

* add index file to components/command

* fix

* fix

* fix

* fix imports

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* fix build errors

* fix build errors

* fix

---------

Co-authored-by: Keith Williams <keithwillcode@gmail.com>
2025-03-19 19:00:55 -03:00
GitHub Actions ca19aa00c1 chore: release v5.1.2
Post release / release (push) Canceled after 0s
2025-03-19 21:59:27 +00:00
Anik Dhabal Babu 467c979aa7 fix: updating the user does not invalidate/refresh the table (#20228) 2025-03-19 20:28:18 +00:00
Hariom Balhara 9f9bf10040 fix: A user exists with that username (#20217) 2025-03-19 14:34:33 +00:00
Lauris Skraucis 8102192987 refactor: v2 booking responses schema (#20030)
* refactor: when rescheduling fallback on attendee if responses invalid

* chore: submit auto generated docs

* fix: slots event type metadata parsing

* fix: booking responses without email with attendee phone

* refactor

* refactor: test

* remove unused import

* refactor

* test: slots variable duration
2025-03-19 16:32:00 +02:00
Pranav PatilandTushar Bhatt 232f9d288c fix: Loading indicator alignment in settings page (#20219)
* Fix: Loading indicator alignment in profile page

* Added animate spin class

---------

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-03-19 14:31:05 +00:00
Anik Dhabal Babu 7dab100382 fix: unskip confirm step if there are multiple location (#20051) 2025-03-19 12:17:49 +00:00
Lauris Skraucis 91d4f1c219 feat: booker atom confirm and back button styling (#20162)
* feat: submitButtonDisabled Booker atom prop

* feat: confirmStep.confirmButton & backButton booker styles

* refactor: rename submitButtonDisabled to confirmButtonDisabled

* feat: implement this feature for skip confirm step

* refactor: naming
2025-03-19 11:30:48 +00:00
MorganandSomay Chauhan a64e7f9c2a fix: set default managed users calendars (#20208)
* fix: set default managed users calendars

* fix: module imports

---------

Co-authored-by: Somay Chauhan <somaychauhan98@gmail.com>
2025-03-19 09:22:28 +00:00
sean-brydonandKeith Williams 3c1297aa72 fix: calcom trpc sessio circle dep (#19893)
* fix trpc session circle dep

* fixes trpc session cirlce dep

* fix relative imports

* fix more imports to use types and not trpc

* fix exports

* Fixed types

---------

Co-authored-by: Keith Williams <keithwillcode@gmail.com>
2025-03-19 05:50:22 -03:00
Vijay 96f7a01c5f fix: few flaky tests in ooo and bookings-list (#20170)
* fix flaky tests

* chore
2025-03-19 08:32:47 +00:00
Udit TakkarandTushar Bhatt a4a05878ef fix: use correct skeleton loader (#20197)
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-03-19 08:07:22 +00:00
Keith WilliamsandhbjORbj 352d68ae1c perf: Remove app-store reference from @calcom/ui (#20188)
* perf: Remove app-store reference from @calcom/ui

* Fixing types

* Fixed casing

* fix type check

* refactor

* fix

* fix

* fix

* fix

* fix

* fix

---------

Co-authored-by: hbjORbj <sldisek783@gmail.com>
2025-03-19 05:04:02 -03:00
Tushar Bhatt ffd034679c fix: team-update-on-eventTypes-page (#20152) 2025-03-19 07:28:18 +00:00
Morgan d64ae3c901 fix: missing booking reminder reference in cron (#20200) 2025-03-19 07:27:52 +00:00
Hariom Balhara 7250e22257 fix salesforce query (#20196) 2025-03-19 09:23:12 +02:00
Udit Takkar f459e5d9c4 fix: use correct logo (#20194) 2025-03-19 06:29:07 +00:00
Tushar Bhatt 30bb0f1383 fix: logo-sync-issue (#20190) 2025-03-19 04:44:55 +00:00
Abdullah Arif 24c993a3d2 fix(createButton): add scrolling to empty webhook dropdown (#20191)
Added a scroll-bar class and set a max height on DropdownMenuContent to ensure large dropdowns are scrollable, improving the user experience by making all items accessible without expanding beyond the viewport.
2025-03-19 09:54:09 +05:30
GitHub Actions aa4276be5b chore: release v5.1.1
Post release / release (push) Canceled after 0s
2025-03-18 20:45:23 +00:00
Somay ChauhanandKeith Williams 413aba6e52 fix: add documentation to the possible values of :app in conferencing controller (#20164)
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
2025-03-18 17:41:35 -03:00
sean-brydon c2547acb3d fix eslint error (#20127) 2025-03-18 20:21:08 +00:00
Benny Joo cc1b6bac4a perf: Remove QueryCell from availability view (#20176) 2025-03-18 17:05:02 -03:00
Udit Takkar d5d90a8b87 fix: sms formatting (#18647) 2025-03-18 16:59:13 -03:00
Joe Au-YeungandKeith Williams 40333c81c5 chore: Add logging to Salesforce (#20167)
* Remove unused param

* Add log when no contacts are created

* Replace console.log with logger

* Add logging around `buildRecordUpdatePayload`

* Add details if field isn't being caught

* Revert change

* Type fixes

---------

Co-authored-by: Keith Williams <keithwillcode@gmail.com>
2025-03-18 19:51:02 +00:00
Tushar Bhatt ff92979311 fix: spacing (#20172) 2025-03-18 17:37:24 +00:00
Anik Dhabal Babu f63edef48d fix: flaky e2e tests (#20168)
* fix: flaky e2e tests

* update

* fix
2025-03-18 22:30:00 +05:30
Rajiv Sahal 37e56ebbf9 dont auto accept user into an org when creating platform org (#20125) 2025-03-18 16:12:26 +00:00
07c38f1f33 test: Add tests for Booker component (#19051)
* feat: Don't allow unavailable slot's booking form to be visible - Send back to slots listing

* Improvements

* feat: Add env variables and strategies to prevent booking failures

- Added new environment variables for configuring slot reservation and availability checks
- Implemented strategies to handle concurrent bookings and slot availability
- Updated Booker component and related files to support new reservation and slot checking mechanisms
- Added README with detailed explanation of booking prevention strategies
- Configured dynamic intervals for slot and reservation queries

* docs: Update Booker README with detailed slot reservation and availability explanation

- Clarified slot reservation behavior when multiple users access the same booking page
- Added details about `getSchedule` refetching strategies and timing
- Explained how slot availability is detected and communicated to users

* Support for skip confirmation form flow

* feat: Enhance slot availability and reservation mechanism

- Refactored slot availability checking to support multiple slots
- Added tentative selected timeslots to improve booking UX
- Updated trpc handler to check availability for multiple slots
- Introduced new store methods for managing tentative slot selections
- Improved slot reservation and availability status tracking

* refactor: Improve slot availability quick check mechanism

- Renamed and restructured slot availability check parameters
- Extracted quick availability checks into a separate hook
- Updated type definitions for slot status and availability checks
- Simplified slot availability logic in Booker and related components
- Maintained cached state for quick availability checks

* Add tests booker

* Support minimu booking check too

* change data-testid

* Rneame

* Fix race condition with uid cookie not set

* fix tests

* Remove unsded variable

* fixup! Merge branch 'main' into dont-allow-booking-form-with-unavaialble-slot

* Fix the unavailability bug when only seconds differ

* Handle column view that doesnt have selected date and also add tests for isTimeSlotAavailable

* Fi ts and unit tests

---------

Co-authored-by: Hariom Balhara <hariombalhara@gmgmail.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com>
Co-authored-by: Morgan Vernay <morgan@cal.com>
2025-03-18 13:02:20 +01:00
Gene Parmesan Thomas 192238f4bf fix: UID cookie isn't accessible/created when in embed as it is third party context. (#19859)
* [CAL-5240] Embeds: UID cookie isn't accessible/created when in embed as it is third party context.

* comments
2025-03-18 16:22:55 +05:30
Lauris SkraucisandMorgan 94a26031a8 feat: v2 api phone based organization team event types (#20134)
* refactor: input event types service remove unused code

* feat: toggle if email field is hidden

* chore: ensure event type has email or attendee phone field required

* chore: ensure non-org team cant have phone only event type

* chore: ensure users cant have phone only event type

* chore: ensure org team can have phone only event type

* chore: bump libraries

* docs

* refactor: confirm failing test response message

* fix: unit test

* chore: default organizer booking location docs

---------

Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com>
2025-03-18 11:34:35 +02:00
Joe Au-Yeung e9f20b1a0b fix: Salesforce - fallback to creating lead (#20137)
* Fallback creating lead

* Add tests

* Type fix

* Type fixes

* Type fix

* Fix tests
2025-03-18 14:29:09 +05:30
Morgan 7cb9e2b99b chore: create org membership should be an upsert apiv2 (#20129) 2025-03-17 21:07:32 +00:00
Morgan dd45d8cdbc fix: don't remind platform users in reminder cron (#20056) 2025-03-17 23:00:25 +02:00
Hariom Balhara 3a181f1dac fix: Salesforce Stricter Website querying to prevent wrong account match during contact owner check (#20133)
* Make website check stricter in contact ownership flow as well

* Add test
2025-03-17 17:34:36 -03:00
Morgan c3abfa51ba chore: stringify body for request interceptor/middleware (#20131)
* chore: stringify body for request interceptor/middleware

* rename jsonBody to jsonBodyString
2025-03-17 19:45:37 +00:00
Alex van Andel 6498af167a refactor: Delete dead code that is not safe to use (#20141) 2025-03-17 17:23:39 +00:00
Keith WilliamsandhbjORbj 30dce7bacd perf: Move apps procedures off of loggedInViewer (#20112)
* perf: Slim down loggedInViewer tRPC router

* Fixed trpc client calls for new routes

* Moved bookingUnconfirmedCount

* Moved getUserTopBanners to me router

* Moved shouldVerifyEmail to me router

* Moved i18n from public to its own router

* fix ssrInit

* fix ssrInit usage

* fix type check

* better naming

* fix

* fix

* Fix types

* Removed used of importHandler

* perf: Move apps procedures off of loggedInViewer

* Moved 2 more apps-related procedures

---------

Co-authored-by: hbjORbj <sldisek783@gmail.com>
2025-03-17 17:18:19 +00:00
Keith Williams 3be9e1bd38 perf: Remove slots router from publicViewer (#20128) 2025-03-17 09:28:40 -07:00
Lauris Skraucis db52f44293 fix: atoms making requests to customers' domains (#20084)
* refactor: centralize useSchedule hook with isInit

* refactor: centralize useSchedules hook with isInit

* refactor: useConnectedCalendars enabled if isInit

* chore: some type fixes

* chore: type fix

* fix: import paths

* driveby: oauth clients docs
2025-03-17 10:43:39 +02:00
Keith WilliamsandhbjORbj 20d6eb5200 perf: Slim down loggedInViewer tRPC router (#20111)
* perf: Slim down loggedInViewer tRPC router

* Fixed trpc client calls for new routes

* Moved bookingUnconfirmedCount

* Moved getUserTopBanners to me router

* Moved shouldVerifyEmail to me router

* Moved i18n from public to its own router

* fix ssrInit

* fix ssrInit usage

* fix type check

* better naming

* fix

* fix

* Fix types

* Removed used of importHandler

---------

Co-authored-by: hbjORbj <sldisek783@gmail.com>
2025-03-16 18:22:48 -07:00
Keith Williams 424d94f16d feat: Use Watchlist on sending email verifications (#20114) 2025-03-16 14:20:20 +00:00
GitHub Actions 73e7d6f986 chore: release v5.1.0
Post release / release (push) Canceled after 0s
2025-03-15 11:11:37 +00:00
Alex van Andel 145001d26e chore: Bump typescript version in @calcom/ui (#19766)
* chore: Bump typescript version in @calcom/ui

* Reduce required types from @calcom/types to just used ones
2025-03-15 06:43:05 -03:00
5d2d7ce979 fix: German translation for seats_availability text (#20086)
* Fix German translation for seats_availability text

* enhancements

---------

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
Co-authored-by: Tushar <tusharbhatt0135@gmail.com>
2025-03-15 08:12:04 +00:00
GitHub Actions 4dc21ab2b0 chore: release v5.0.20
Post release / release (push) Canceled after 0s
2025-03-14 19:07:01 +00:00
Anik Dhabal Babu df6ee73e05 fix: schedule.get unneccsary called from avaiablity view (#20094) 2025-03-14 18:31:35 +00:00
Keith Williams 587af33179 perf: Use built types for appRouter (#20083)
* perf: Use built types for appRouter

* Got it working just for server

* Added dependency to turbo.json
2025-03-14 10:42:45 -07:00
Morgan 3b381b037c fix: incorrect managed user username format on update (#20090) 2025-03-14 15:36:24 +00:00
0968fc56eb feat: add utm tracking on booking (#19965)
* add tracking to booking + pass to handleNewBooking

* save tracking to booking

* return undefined if no utm params

* add test for handleNewBooking

* fix type error in test

* refactor code

* code clean up

* code clean up

* add missing import

* fix type import

* add utm params to insights (#20063)

* add utm params to insights

* remove duplicates

* remove duplicate columns

---------

Co-authored-by: CarinaWolli <wollencarina@gmail.com>

---------

Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Omar López <zomars@me.com>
2025-03-14 08:21:55 -07:00
Lauris Skraucis 13044cb5b0 feat: v2 bookings createdAt filter (#20054)
* feat: add before and after updated filter to core handler

* feat: afterCreatedAt and beforeCreatedAt v2 bookings filters

* wip

* finish

* chore: bump libraries

* fix: tests

* refactor: implement feedback
2025-03-14 15:49:57 +02:00
Morgan 580b03f2b9 chore: handle conferencing callback missing state error (#20081) 2025-03-14 15:49:04 +02:00
amrit 543d4bb6b3 fix: invitati instead of inviati (#20085) 2025-03-14 17:57:19 +05:30
Sarvesh Bajaj 21d87d5a80 fix: No type errors in build (#20075) 2025-03-14 07:39:10 +00:00
Lauris Skraucis 194719e7ba docs: v2 set cal-api-version header automatically (#20042) 2025-03-14 07:37:14 +00:00
Benny JooandKeith Williams dc666fc770 perf: fix paths in tailwind preset + ignore node modules in Platform tailwind config (#20067)
* fix paths in packages/config/tailwind preset

* ignore node_modules in platform tailwind preset

---------

Co-authored-by: Keith Williams <keithwillcode@gmail.com>
2025-03-14 04:18:16 -03:00
Morgan 50a76e6b27 fix: delegation credential not found (#20055) 2025-03-14 06:13:41 +00:00
Parteek malikandamrit be4d3170db fix: synced no-show state after mutation (#20015)
Co-authored-by: amrit <iamamrit27@gmail.com>
2025-03-14 05:49:59 +00:00
Anik Dhabal Babu 7b97002230 fix: flaky test in ooo e2e (#20073)
* fix: flaky test in ooo e2e

* tweak
2025-03-14 08:58:13 +05:30
Benny Joo 6319d63e1f fix: client-export warning for enterprise page (#20077) 2025-03-13 21:48:40 +00:00
Calcom BotandLingo.dev 2e18478b5c feat: update translations via @lingodotdev (#20074)
Co-authored-by: Lingo.dev <support@lingo.dev>
2025-03-13 20:08:24 +00:00
GitHub Actions 0ef93edd56 chore: release v5.0.19
Post release / release (push) Canceled after 0s
2025-03-13 19:08:48 +00:00
Eunjae LeeandBenny Joo d6a3661e58 fix: support more className-related props at DataTable (#19953)
* fix: support more className-related props at DataTable

* update style

* fix type error

* use relative import

---------

Co-authored-by: Benny Joo <sldisek783@gmail.com>
2025-03-13 14:25:57 -04:00
Alex van Andel be404436d7 fix: Do not self import @calcom/ui (#20050)
* fix: Do not self import @calcom/ui

* Make translations optional

* Fix mocking implementation of Button (never worked)

* Ensure other libraries can resolve AppListCard
2025-03-13 18:17:42 +00:00
Somay Chauhan b1ebefb854 feat: don't update query params for booker atom (#20000)
* feat: Add `omitUpdatingParams` prop to Booker store for query param control

* remove console

* Update booking.tsx

* fix: type check failing

* undo changes

* feat: Expose `onBookerStateChange` callback to track `booker-store` updates

* add `onBookerStateChange` docs

* Update store.ts

* added `allowUpdatingUrlParams` for backwards compatibility
2025-03-13 23:47:24 +05:30
f8aa2701b6 fix: add booking uid and link to insights routing downloads (#20007)
* fix: add booking uid and link to insights routing downloads

* minor change

---------

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
Co-authored-by: Benny Joo <sldisek783@gmail.com>
2025-03-13 14:11:02 -04:00
Keith Williams 034dfc8e6b perf: Ignore node_modules in Tailwind preset (#20058) 2025-03-13 18:05:58 +00:00
sean-brydon a6b6898697 add conditional (#20057) 2025-03-13 15:58:19 +00:00
Udit Takkar 0e5a0bfa7b feat: store cal video recording on s3 (#17050)
* feat: store cal video recording on s3

* fix: type error

* chore: update name and add condition
2025-03-13 12:46:10 -03:00
Eunjae Lee 6c01f5eace fix: reset page on filter change and remove client-side filtering (#20043)
* fix: reset page on filter change

* remove unused filterFn
2025-03-13 15:25:10 +00:00
VachmaraandTushar Bhatt ef2c34c55f fix: Intercom app - regex valid url (#20033)
* fix: regex valid url

* fix: only https urls

---------

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-03-13 13:46:23 +00:00
Udit Takkar 7c1582c06f fix: circular dependency in handleNewBooking (#19890)
* fix: circular dependency

* fix: get orginial scheduled booking

* fix: create logger

* fix: type err
2025-03-13 13:45:00 +00:00
367e2666c6 fix: apply standard pagination to /bookings (#19973)
* fix: apply standard pagination to /bookings

* rename params

* fix type error

---------

Co-authored-by: Benny Joo <sldisek783@gmail.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
2025-03-13 12:32:07 +00:00
Hariom Balhara 209a401113 fix: Enable feature for embeds when 100 pc is set (#20003)
* Enable feature for embeds when 100 pc is set

* Dont consider reserved status for quick availability check
2025-03-13 17:16:43 +05:30
837349e3d3 feat: Organization onboarding improvement - Payment before creation of org but onboarding doesn't require payment (#18990)
* create seed for org upgrade

* migrate about/new pages

* pages refactor + use persistant zustand store

* invited members view + confirm button

* add check to org slug

* check reserved subdomain

* remove quotes from subdomain env var

* intro to creation + billing

* create price

* fix types

* createWithPaymentIntent + permission check on teams

* open stripe link in popup

* intro to tests

* organization price and seat override tests

* move permissions to a new permission service

* update env and permission check

* intro to paid invoice trigger

* dont use subId

* wip

* Get e2e working with migration of teams and members

* fix ts errors

* Get flow working again

* Fix various issues and refactor

* Some more fixes

* Fix wrong page route link

* Platform onboarding fix and moving members of team to org rix

* Platform onboarding fix and moving members of team to org rix

* Fix tests, found a bug

* Get custom price flow working

* Get admin impersonation flow working for a non-existent user

* Fix unit test

* Admin onboarding handover

* fix admin onboarding tests

* fix ts error

* Get updateQuantity working

* More fixes

* fix test

* fix schema name

* Add tests

* Add missing file

* More tests

* Add more tests

* fix mt-2 moving down input into overflow

* fix handover layout removing HOC

* Update PR_TODO.md

* fix ts error due to merge conflict

---------

Co-authored-by: Hariom Balhara <hariombalhara@gmgmail.com>
Co-authored-by: Hariom <hariombalhara@gmail.com>
Co-authored-by: Omar López <zomars@me.com>
2025-03-13 11:17:43 +00:00
Hariom Balhara e66602aa5c Disable connected forms - Temporarily (#20040) 2025-03-13 11:14:23 +00:00
nizzyandUdit Takkar 082f8e1b04 fix: disable plain for self hosters (#19853)
* fix: disable plain for self hosters

* fix type error

* test update

---------

Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
2025-03-13 08:50:16 +00:00
07716474d3 feat: Fetch previous ooo records using DateRangeFilter (#19596)
* teamMates OOO is visible for teamMember

* Update packages/features/settings/outOfOffice/CreateOrEditOutOfOfficeModal.tsx

Co-authored-by: Omar López <zomars@me.com>

* nit

* fixed tests, admin chk reqd for forMembers only

* check reqd in case of teamOOO only

* datefilter with default and improved search filter

* fix preset options

* fix ooo tests, due to default date filter

* ensure ooo test's wont fail when run on different dates of the month, due to default filter

* improvement: instead of 'Date to Year' safer is customRange

* added test for non-admin team ooo

* show disabled icons instead of notshowing

* tests for dateRangeFilters

* some more daterangefilter tests

* nit

* include only fetch prev records in this pr

* nit

* chore

* chore

* review comments

* chore

* update to fix tests

* nit

* nit

* update pagination mode

* removed unrelated changes

* remove unrelated changes

---------

Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Omar López <zomars@me.com>
2025-03-13 12:54:20 +05:30
Udit Takkar f335cc4269 fix: hide slot unavailable message for instant meetings (#20002)
* fix: hide slot unavailable message for instant meetings

* fix:
2025-03-13 07:22:02 +00:00
Benny Joo f19750cfaf chore: remove campsite from app store (#20032) 2025-03-12 23:23:19 -04:00
Benny Joo 46810f69ca fix: no-meeting-found is exporting client component from RSC (#20027) 2025-03-12 17:33:05 +00:00
amrit a7247c594b fix: round robin locale err (#20024)
* fix: round robin locale err

* Update bookings-single-view.tsx
2025-03-12 17:01:17 +00:00
Morgan 8de7876f72 chore: add CalendarService Exception Filter api v2 (#20021) 2025-03-12 16:24:50 +00:00
Morgan 49f75f5070 fix: lbraries/app-store missing tsconfig (#20006) 2025-03-12 14:55:18 +00:00
Lauris Skraucis 4ff543efc7 docs: v2 reschedule and cancel booking (#20011) 2025-03-12 16:36:32 +02:00
sean-brydon 8af5145b56 fixes extra span causing issues (#20004) 2025-03-12 12:12:13 +00:00
Lauris Skraucis a31242cdc5 refactor: v2 booking locations (#19613)
* refactor: v2 booking locations

* regenerate docs

* remove describe only

* update docs

* tests

* tests

* remove as any

* fix tests

* log

* remove unused dependency

* fix: bookings module dependency

* fix test

* fix: allow all integrations as booking location

* refactor: add organizersDefaultApp

* refactor: handle all integrations
2025-03-12 13:03:01 +01:00
Udit Takkar e20df1e7aa fix: remove Trans component (#20008) 2025-03-12 11:24:20 +00:00
sean-brydon 960a368175 fix sentry errors (#20005) 2025-03-12 10:53:17 +00:00
sean-brydonandTushar Bhatt 49cb86dfe9 fix: add improved logging and decrease ttl (#19979)
* add improved logging and decrease ttl

* fix test TTL time

---------

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-03-12 10:26:07 +00:00
Udit Takkar b644ec58af fix: push notification page (#19999) 2025-03-12 10:09:55 +00:00
GitHub Actions bd92b89bf0 chore: release v5.0.18
Post release / release (push) Canceled after 0s
2025-03-12 07:42:40 +00:00
Benny Joo 495ac74255 fix: importing from @calcom/emails exposed daily-video api route to client code (#19994)
* create a new file

* use from new file

* add comment
2025-03-12 06:05:53 +00:00
Calcom BotandLingo.dev c3d35fd8c8 feat: update translations via @lingodotdev (#19992)
Co-authored-by: Lingo.dev <support@lingo.dev>
2025-03-12 04:48:31 +00:00
Benny Joo 87bc8d649a feat: add sentry report wrapper to every api route in appDir (#19966)
* update oauth tests

* fix parseRequestData

* add logging

* add fallback

* use ??

* updates

* use parseUrlFormData in saml/callback

* update tests

* fix

* remove log

* update

* any -> unknown

* use HttpErrors

* addressed

* unknown -> any

* feat: Add entry report wrapper to every api route in appDir

* fix

* fix unit test

* fix
2025-03-11 23:38:49 -04:00
GitHub Actions 1e9f3a8060 chore: release v5.0.17
Post release / release (push) Canceled after 0s
2025-03-11 22:22:13 +00:00
Morgan bc1d73e9fe fix: broken metadata import from platform/types (#19986)
* fix: broken metadata import from platform/types

* fix: OAuthClientUsersService instead of this in oauth-clients-users.service.ts
2025-03-11 22:05:40 +00:00
GitHub Actions eca01be58c chore: release v5.0.16 2025-03-11 21:51:10 +00:00
4ad1127184 refactor: extract schedules from libraries barrel file (#19838)
* refactor: extract schedules from libraries barrel file

* cleanup: remove functions not being used by schedules

* fix tsconfig ]

* bump platform libs

* bump platform libs

---------

Co-authored-by: Morgan Vernay <morgan@cal.com>
Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com>
2025-03-11 19:07:06 +00:00
Lauris SkraucisandMorgan Vernay 76b9b9b0fe fix: v2 rescheduled booking with confirmation (#19833)
* fix: old bookings controller

* fix: new bookings controller

* fix: BookerPlatformWrapper pass rescheduledBy to BookerComponent

* rescheduleBy email

* fix test

* remove log

* centralize getOAuthUserEmail, examples app rescheduledBy

* revert

* finalize

* fix: old bookings rescheduling

* unify email validation

* update input description

* chore: move booker platform wrapper types

---------

Co-authored-by: Morgan Vernay <morgan@cal.com>
2025-03-11 20:04:59 +01:00
Benny Joo ff5c6de5da chore: remove code not needed in defaultResponder (#19976)
* 1 line change

* fix test
2025-03-11 17:47:01 +00:00
Eunjae Lee eafb61f515 fix: apply standard pagination to /insights/routing (#19950)
* fix: apply standard pagination to /insights/routing

* fix type error

* max limit
2025-03-11 16:51:11 +00:00
Benny Joo d0ca0dab53 fix: do not export client components directly from RSC (#19971) 2025-03-11 16:11:30 +00:00
Lauris SkraucisandMorgan e6f561c3d7 fix: v2 team metadata (#19939)
* refactor: allow metadata to also receive numbers and booleans

* refactor: Team metadata

* refactor: Managed orgs metadata

* refactor: Team metadata

* test: organizations teams create team with metadata

---------

Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com>
2025-03-11 15:03:30 +00:00
Lauris Skraucis b7c5cfcf02 feat: v2 get managed users by email (#19526)
* feat: v2 get managed users by email

* docs

* fix: offset query param not showing up in docs

* finish merge main

* fix: check if each email in emails query param is email
2025-03-11 15:01:43 +00:00
Hariom BalharaandMorgan Vernay b1bcbe9dfb feat: calendar-links API (#19777)
* refactor: Remove intervalLimits from @calcom/lib and export directly (#19710)
* refactor: Remove intervalLimits from @calcom/lib and export directly

* Tackle other places that use parseBookingLimit/parseDurationLimit

* More type fixups that were hidden by previous fails

* Fixed up booking-limits file

* Remove server-only

## What does this PR do?

<!-- Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change. -->

- Fixes #XXXX (GitHub issue number)
- Fixes CAL-XXXX (Linear issue number - should be visible at the bottom of the GitHub issue description)

## Visual Demo (For contributors especially)

A visual demonstration is strongly recommended, for both the original and new change **(video / image - any one)**.

#### Video Demo (if applicable):

- Show screen recordings of the issue or feature.
- Demonstrate how to reproduce the issue, the behavior before and after the change.

#### Image Demo (if applicable):

- Add side-by-side screenshots of the original and updated change.
- Highlight any significant change(s).

## Mandatory Tasks (DO NOT REMOVE)

- [ ] I have self-reviewed the code (A decent size PR without self-review might be rejected).
- [ ] I have updated the developer docs in /docs if this PR makes changes that would require a [documentation change](https://cal.com/docs). If N/A, write N/A here and check the checkbox.
- [ ] I confirm automated tests are in place that prove my fix is effective or that my feature works.

## How should this be tested?

<!-- Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration. Write details that help to start the tests -->

- Are there environment variables that should be set?
- What are the minimal test data to have?
- What is expected (happy path) to have (input and output)?
- Any other important info that could help to test that PR

## Checklist

<!-- Remove bullet points below that don't apply to you -->

- I haven't read the [contributing guide](https://github.com/calcom/cal.com/blob/main/CONTRIBUTING.md)
- My code doesn't follow the style guidelines of this project
- I haven't commented my code, particularly in hard-to-understand areas
- I haven't checked if my changes generate no new warnings

* Add unit tests and e2e

* fix ts errors

* Add comment

* bump platform libs

* fix: yarn-lock

* fix yarn.lock

* doc update

* Add isString

---------

Co-authored-by: Morgan Vernay <morgan@cal.com>
2025-03-11 17:01:32 +02:00
Steven Tey 19e1714794 Upgrade dub to latest version for dual-sided incentives (#19885) 2025-03-11 14:03:54 +00:00
Benny Joo e3e624464d fix: update wrong oauth tests and parseRequestData util (#19958)
* update oauth tests

* fix parseRequestData

* add logging

* add fallback

* use ??

* updates

* use parseUrlFormData in saml/callback

* update tests

* fix

* remove log

* update

* any -> unknown

* use HttpErrors

* addressed

* unknown -> any
2025-03-11 14:01:48 +00:00
amrit dc3c7b43bf fix: correct translation key for host and attendee emails (#19962) 2025-03-11 13:35:59 +00:00
Morgan 83736785b7 fix: catch error for getOwnerId with invalid token (#19949) 2025-03-11 13:27:20 +02:00
Rajiv Sahal 83b6b7caf9 chore: update hooks sections for platform docs (#19726)
* export custom hooks to create event types

* update hooks page

* separate hooks into their own files
2025-03-11 16:57:05 +05:30
GitHub Actions 6fc3ca539b chore: release v5.0.15
Post release / release (push) Canceled after 0s
2025-03-11 10:43:26 +00:00
Keith Williams 9d58d21e85 perf: Remove dayjs import from main constants.ts file (#19644) 2025-03-11 10:37:51 +00:00
Lauris Skraucis 43f6db194e test: managed org creator profiles (#19944) 2025-03-11 10:13:50 +00:00
Morgan 43156fa4d7 refactor: extract emails from libraries barrel file (#19836)
* refactor: extract emails from libraries barrel file

* fixup! Merge branch 'main' into refactor-libraries-barrel-emails

* fix: add missing configs

* add sendSignupToOrganizationEmail to barrel email file

* bump libs
2025-03-11 11:36:21 +02:00
Eunjae LeeandBenny Joo 7eee2728a2 feat: implement standard pagination for org member list (#19802)
* feat: implement standard pagination for org member list

* fix type error

* i18n for pagination

* add paginationMode

* apply the change to PlatformManagedUsersTable

* replace useInfiniteQuery with useQuery

* fix type error

* fix type error

* fix type error

* fix type error

* update comment

* remove optimistic update

* minor changes

* update usage on nuqs

---------

Co-authored-by: Benny Joo <sldisek783@gmail.com>
2025-03-11 09:55:41 +01:00
Somay Chauhan 861e3aa24f fix: extracted app-store and DWD platform-libraries imports to a /app-store barrel file (#19938)
* fix: platform libraries barrel file extract app-store

* extracted DWD to app-store barrel file

* removed getCalendar as not used in api/v2

* bump platform-libraries
2025-03-11 08:30:37 +00:00
Benny Joo 517d509321 fix: req.formData() should be used in some API routes (#19930) 2025-03-11 07:51:33 +00:00
Udit Takkar 2f9a853023 chore: pass metadata (#19712)
* chore: pass metadata

* fix: type error

* chore: pass videoCallUrl
2025-03-11 04:34:14 -03:00
Udit Takkar b0125e1a05 feat: sound on browser push notification (#18548)
* feat: sound on notification

* refactor: add load audio

* chore: remove

* fix: type error

* fix: notification

* fix: prevent multiple initialization
=

* feat: create notification page

* chore: update the mp3 file
2025-03-11 11:49:51 +05:30
Tushar Bhatt 4daad2ac08 fix/view (#19928) 2025-03-11 03:04:20 +00:00
Alex van Andel 9d28f5574d fix: Remove hardcoded Node version from engines 2025-03-10 23:35:00 +00:00
GitHub Actions be525a27df chore: release v5.0.14
Post release / release (push) Canceled after 0s
2025-03-10 22:44:00 +00:00
Calcom BotandLingo.dev df037b008f feat: update translations via @lingodotdev (#19927)
Co-authored-by: Lingo.dev <support@lingo.dev>
2025-03-10 21:12:15 +00:00
amritandUdit Takkar 8fb4df4b8c fix: duplicate value found in common.json error (#19693)
* fix: duplicate value found in common.json error

* Remove subteam invitation translation from locales

* verify_email_email_button to verify_email_button

---------

Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
2025-03-10 19:19:32 +00:00
6758654796 feat: round robin reset interval for teams (#19441)
* add component to set interval

* fix variable namings

* fetch data for given interval

* migration

* fix type errors in test

* test correct filtering for interval

* fix start end end times to interval

* fix type error

* pass rrResetInterval to getOrderedListOfLuckyUsers

* fix imports

* add translations

* add missing translation

* code clean up

* fix type errors

* fix type error

* fix import

* add translation

---------

Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
2025-03-10 17:34:47 +00:00
Alex van AndelandMorgan Vernay 1e86f1046b chore: Fix build failure due to trpc inference depth (#19884)
* chore: Fix build failure due to trpc inference depth

* Also bump platform libraries typescript version

* fix: e2e test using unassigned variable

* chore: bump libraries to 0.0.142

---------

Co-authored-by: Morgan Vernay <morgan@cal.com>
2025-03-10 17:06:05 +00:00
Eunjae LeeandAlex van Andel d3775cd920 fix: update filter styles on org member list (#19918)
Co-authored-by: Alex van Andel <me@alexvanandel.com>
2025-03-10 17:01:37 +00:00
Benny JooandAnik Dhabal Babu 3ab053bf17 chore: migrate oauth APIs to app router (#19824)
* migrate api/auth/oauth/me

* migrate the rest

* fix

---------

Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-03-10 17:56:53 +01:00
Benny Joo 4a4bee7140 chore: Remove typeform app (#19911)
* remove typeform app

* update yarn.lock
2025-03-10 16:54:20 +00:00
Benny Joo 9ba85ea0b2 chore: missing pieces to migrated apis (#19915)
* fix

* refactor
2025-03-10 15:24:03 +00:00
avnish100 d1d1472f3e fix: removed rounded top corners on webhook form (#19905) 2025-03-10 14:54:43 +00:00
Benny Jooandsean-brydon 8d18b3da38 chore: migrate saml/oidc APIs to App Router (#19515)
* migrate oidc

* migrate saml apis

* remove comment

* add force-dynamic

* fix

* fix

* refactor

---------

Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
2025-03-10 14:36:11 +00:00
Benny Joo 631c5f7c53 migrate webhookTriggers and workflows apis (#19875) 2025-03-10 14:35:11 +00:00
f2ca2bdc83 fix: add badge for disabled workflow actions and templates in trial mode (#19675)
* add badge for trial mode

* fix tooltip issue

* fix typo

* add inactive team plan badge

* change to one salesforce request

* clean up

* fix type error

---------

Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Bailey Pumfleet <bailey@pumfleet.co.uk>
2025-03-10 15:34:29 +01:00
Rajiv Sahal bb36807689 feat: update platform onboarding docs (#17941)
* update images

* restructure getting started for platform

* add steps on setting up a platform account

* PR feedback

* fixup

* add setup page

* move over setup to a separate page

* update images
2025-03-10 20:02:24 +05:30
Keith Williams 7ed32d3c77 perf: Reduce imports by moving bookings zod out of utils (#19869) 2025-03-10 13:54:05 +00:00
Morgan 5d84179345 refactor: circular dependencies platform packages (#19903)
* refactor: circular dependencies platform packages

* fixup! refactor: circular dependencies platform packages

* fixup! fixup! refactor: circular dependencies platform packages

* fix: circular deps in BaseCalProvider
2025-03-10 13:25:01 +00:00
cb437231ad fix: platform libraries barrel file extract event-types (#19846)
* fix: event-types

* chore: added "+ group link" tip (#19809)

* added + link tip

* nit

---------

Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>

* Added fix to solve the id TypeError (#19810)

Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>

* Revert "fix: prevent background scroll on opening timezone select menu (#19789)" (#19814)

This reverts commit 1a96149ce3.

* fix: Calendar events attached to workflow emails are missing meeting link (#19790)

* fixup! fix: Calendar events attached to workflow emails are missing meeting link (#19790)

* chore: fix type errors

* fix: wrong import in e2e file

* fix: tsconfig api v2 for /event-types

* fix: import and refactor

* fixed remaning type issues

* undo extra changes

* bump platform libs

* Update event-types.controller.e2e-spec.ts

* fix: test with seats enabled

---------

Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
Co-authored-by: Harshit Singh <73997189+harshit078@users.noreply.github.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
Co-authored-by: Morgan Vernay <morgan@cal.com>
Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com>
2025-03-10 12:34:53 +00:00
Somay Chauhan d47a5be659 fix: add documentaion to blockUnconfirmedBookingsInBooker (#19894)
* fix: add documentaion to `blockUnconfirmedBookingsInBooker`

* fix documentation of ConfirmationPolicy.type

* Update confirmation-policy.input.ts
2025-03-10 09:31:49 -03:00
sean-brydon e89211782c fix: calcom trpc circle deps slots handlers (#19896)
* remove validator file and include inside handler

* fixes slots and handler circle dep

* fix type in tests
2025-03-10 11:29:51 +00:00
sean-brydon fd454061e7 fix profile circle dep (#19892) 2025-03-10 11:05:14 +00:00
Rajiv SahalandMorgan Vernay 277ce1c244 refactor: extract slots from libraries barrel file (#19895)
* refactor: extract slots fn from libraries barrel file

* bump platform libs

---------

Co-authored-by: Morgan Vernay <morgan@cal.com>
2025-03-10 10:33:29 +00:00
luzpaz 1848cd55b1 fix: fix playwright typos (#19794)
Found via `codespell -q 3 -S "*.svg,./apps/web/public/static/locales,./packages/app-store/stripepayment/lib/currencyOptions.ts,./packages/lib/freeEmailDomainCheck/freeEmailDomains.ts" -L afterall,atleast,datea,fo,incase,ist,nam,noone,notin,optionel,perview,pris,reccuring`
2025-03-10 07:39:58 +00:00
Anik Dhabal Babu b0e3cc4dd2 chore: add logs for debugging (#19851) 2025-03-10 03:34:52 +00:00
Morgan b3e344d226 chore: decouple calcom/ui/Tooltip from atoms (#19798)
* chore: decouple calcom/ui from atoms #1

* recover input from main

* fix: vite config dialog
2025-03-10 01:43:01 +00:00
Suyash Srivastava 810f3b834c fix:small typo with email (#19879) 2025-03-10 01:22:13 +00:00
Hariom Balhara bf1eacfd9b Ignore faulty org (#19825) 2025-03-10 00:58:48 +00:00
c5c654c879 feat: no-show confirmation does not pop up for single attendee (#19806)
* feat: no-show marking  confirmation does not pop up for single attendee bookings

* fix: Add toggle for no-show status

* simplify logic

* feat: Centralize no-show handling logic in BookingListItem

* Update BookingListItem.tsx

---------

Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-03-09 17:06:03 +00:00
sean-brydonandBenny Joo d1ce04edc1 chore: move miscellaneous small api pages to app dir api (#19699)
* version and verify-booking-token

* username route

* api/me

* logo route

* render email in dev

* link route

* future

* nope and geo location

* referal link and daily

* intercom route and dynamic variables

* intercom route and dynamic variables

* scim 2.0 and helpscout route

* app credentials

* api/book events

* fix daily import path in tests

* fix buildLegacyRequest generation

* fix type errors

* migrate the /teams/ routes

* move cron jobs

* fix daily import path in tests

* fix buildLegacyRequest generation

* fix type errors

* migrate the /teams/ routes

* move cron jobs

* Revert "api/book events"

This reverts commit 607a32fb5b754cad090c2d0cbf64a68f990e220e.

* mock next server NextResponse to fix daily video

* add default responder to teams api

* fix search params

* uses nextUrl.searchParams instead of new url

* uses nextUrl.searchParams instead of new url

* remove outdated api config

* remove app dir version of inbound dynamic variables

* restore pages version of inbound variables

* fix missing code from stupid cursor

---------

Co-authored-by: Benny Joo <sldisek783@gmail.com>
2025-03-09 11:56:56 -04:00
Benny JooandAnik Dhabal Babu 1f1862e526 chore: migrate two-factor APIs to app router (#19826)
* wip

* remove comment

* clean up

* clean up

---------

Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-03-09 15:40:27 +00:00
Benny Joo 63dfc3376c chore: remove empty path from middleware matcher (#19860) 2025-03-09 15:38:04 +00:00
Adam BashaandKeith Williams 3166db9bcf chore: update robots.txt to disallow /settings and /my-account (#19867)
* chore: update robots.txt to disallow /settings and /my-account

* Update robots.txt

---------

Co-authored-by: Keith Williams <keithwillcode@gmail.com>
2025-03-09 08:53:34 +00:00
Vijay f8af9dc17e fix: failing tests during DST transition (#19862)
* make the test dst transition proof

* fix other test similarly
2025-03-09 00:43:42 +00:00
Benny Joo ae659b5176 chore: migrate forgot-password, reset-password, auth/setup apis to App Router (#19512)
* chore: migrate /api/auth/changepw

* migrate forgot-password and reset-password

* remove unneeded export

* rename request to req for easier review

* migrate auth/setup

* remove setup

* refactor

* remove redundant code

* fix

* remove changepw api and unused ui
2025-03-07 14:43:36 -07:00
Eunjae Lee 33226f268d fix: date range on /bookings (#19785) 2025-03-07 21:54:49 +01:00
sean-brydonandAnik Dhabal Babu 7e2a0d1a1b fix: calcom UI circle dep (#19839)
* editor circle dep fix

* circle dep fix in select

* fix barrel export types

---------

Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-03-07 09:26:26 -07:00
a385bd4d5f feat: team ooo read-only for non-admin (#19700)
* feat team ooo read-only for non-admin

* Update apps/web/playwright/out-of-office.e2e.ts

Co-authored-by: Younes Henni <youneshenniwrites@gmail.com>

* updated error msgs with t

* nit

* nit

---------

Co-authored-by: Younes Henni <youneshenniwrites@gmail.com>
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-03-07 16:19:30 +00:00
Anik Dhabal Babu 4b4bc28f1d fix: Calendar events attached to workflow emails are missing meeting link (#19790) 2025-03-07 14:41:51 +00:00
Anik Dhabal Babu 316fba908b Revert "fix: prevent background scroll on opening timezone select menu (#19789)" (#19814)
This reverts commit 1a96149ce3.
2025-03-07 14:39:09 +00:00
d40d282912 Added fix to solve the id TypeError (#19810)
Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-03-07 14:26:36 +00:00
e81df6fdeb chore: added "+ group link" tip (#19809)
* added + link tip

* nit

---------

Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-03-07 14:23:51 +00:00
Hariom Balhara 76420411b9 fix: fixes the crash when empty users or hosts array is passed to _getDelegationCredentialsMapPerUser (#19834)
* fix crash when no users are there

* typo fix
2025-03-07 13:11:07 +00:00
Keith Williams 7ec1617dc2 chore: Update CODEOWNERS for package.json files (#19831) 2025-03-07 11:02:33 +00:00
Rajiv Sahal 870cadd81f fix: dry run improvements for v2 (#19196)
* add dry run param for v2 getSlots

* fixup

* revert changes

* dont reserve a slot for booking dry run

* accept dry run prop as a parameter instead of computing

* fix merge conflicts

* fixup

* dont reserve slots for booking dry run
2025-03-07 14:49:54 +05:30
amrit 04c581a25e docs: Update README (#19815) 2025-03-07 10:32:33 +05:30
Syed Ali Shahbaz 5ef131333d update SAML guide (#19778) 2025-03-07 09:00:53 +05:30
GitHub Actions c262220f0f chore: release v5.0.13
Post release / release (push) Canceled after 0s
2025-03-07 00:38:07 +00:00
Morgan b5e08ea80f fix: api v2 create event-type with delegation credentials (#19797) 2025-03-06 19:46:46 +02:00
Joe Au-Yeung 00ee1ef441 refactor: Salesforce - account query based on website (#19799)
* Refactor account lookup to include website prefixes

* Type fix
2025-03-06 21:53:49 +05:30
Rajiv Sahal 6cdc9c9f59 fix invalid access token bug (#19793) 2025-03-06 14:51:39 +00:00
Pranav Rajveerandamrit 56d1998f0f chore: rename virtual-queue to router-position (#19774)
Co-authored-by: amrit <iamamrit27@gmail.com>
2025-03-06 19:32:30 +05:30
Udit Takkar d59fdf21fd feat: display country code from IP (#19788)
* feat: display country code from IP

* chore: remove

* fix: unit test
2025-03-06 19:16:41 +05:30
suraj 1a96149ce3 fix: prevent background scroll on opening timezone select menu (#19789) 2025-03-06 13:29:50 +00:00
Eunjae Lee d2bc81758c feat: add booking id & booking link columns to /insights/routing (#19697)
* feat: add booking id & booking link columns to /insights/routing

* update style

* update i18n

* update i18n keys

* update host

* useCopy instead of raw navigator.clipboard
2025-03-06 10:24:50 +00:00
Alex van Andel 0565e23818 refactor: Remove intervalLimits from @calcom/lib and export directly (#19710)
* refactor: Remove intervalLimits from @calcom/lib and export directly

* Tackle other places that use parseBookingLimit/parseDurationLimit

* More type fixups that were hidden by previous fails

* Fixed up booking-limits file

* Remove server-only
2025-03-05 19:32:53 +00:00
GitHub Actions 34cff214dd chore: release v5.0.12
Post release / release (push) Canceled after 0s
2025-03-05 18:40:35 +00:00
Alex van Andel f7af19b7cb chore: Bump node to 20 in APIv2 Dockerfile (#19770) 2025-03-05 18:19:29 +00:00
Bailey Pumfleetandsnyk-bot 6849638b1f fix: apps/api/v2/package.json & apps/api/v2/.snyk to reduce vulnerabilities (#19755)
The following vulnerabilities are fixed with a Snyk patch:
- https://snyk.io/vuln/npm:semver:20150403

Co-authored-by: snyk-bot <snyk-bot@snyk.io>
2025-03-05 18:07:55 +00:00
Joe Au-Yeung 07969f5287 perf: Add CrmServiceMap (#19718)
* Generate crm apps map

* Remove .tsx file

* Use `CrmServiceMap` in `getCrm`

* Remove unused types

* Type fixes

* Type fixes
2025-03-05 14:58:02 -03:00
GitHub Actions 44a6ceff3f chore: release v5.0.12 2025-03-05 17:52:37 +00:00
Vijay 0e4309777b fix: make strict bottom position of DateRangePicker optional (#19768)
* make strictbottom optional

* chore
2025-03-05 17:26:10 +00:00
Keith Williams b8f0741923 chore: Update CODEOWNERS to have @calcom/Foundation on Platform line items (#19769) 2025-03-05 10:01:34 -07:00
nizzy ba1ede2e31 fix: plain z index (#19767) 2025-03-05 16:15:01 +00:00
Udit TakkarandBailey Pumfleet b74a49f31d fix: use impersonatedById (#19682)
Co-authored-by: Bailey Pumfleet <bailey@pumfleet.co.uk>
2025-03-05 15:43:25 +00:00
Tushar Bhatt 31cd77345d all changes (#19720) 2025-03-05 15:41:54 +00:00
Anik Dhabal Babu 2be9ff7622 fix: hubspot not working for team events (#19761) 2025-03-05 15:16:49 +00:00
Alex van Andel 96a5abe6c3 chore: Fix types of app-store to prevent type drilling (#19732) 2025-03-05 12:06:01 -03:00
sean-brydonandKeith Williams 4cdb8f3bae feat: make calcom UI dumb again (#19658)
* remove create button for teams from calcom ui

* migrate timezone select to features

* remove trpc from phone and storybook provider

* new-yarn.lock

* fix imports + test file for select

* fix platform timezone select to use Raw timezone select

* fix timezone type import

* use correct select in timezone-select.tsx - needs trpc version

* fix lock and remove test-utils

* fix log file

* Updated yarn.lock

* Fixed types

* Fixed tests

---------

Co-authored-by: Keith Williams <keithwillcode@gmail.com>
2025-03-05 11:58:52 -03:00
Shivansh KumarandAnik Dhabal Babu 1b111c8add fix(payments): add return_url for Alipay PaymentIntent confirmation; fixes #19138 (#19153)
* Update README.md

* fix(payments): add return_url for Alipay PaymentIntent confirmation; fixes #19138

* Fix: update confirmPayment to use confirmParams and resolve TS errors

* Update Payment.tsx

* Update

* fix build error

---------

Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-03-05 11:57:43 -03:00
luzpazandTushar Bhatt be1377e9af fix: typos in apps/api (#19762)
Found via codespell

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-03-05 14:29:11 +00:00
Alex van Andel 7226370427 chore: Bump .nvmrc node version to node 20 (#19760) 2025-03-05 13:50:06 +00:00
Morgan 524c0d81a7 chore: rename DWD to DelegationCredential (#19744)
* Revert "Revert "chore: rename DWD to DelegationCredential (#19703)" (#19734)"

This reverts commit 340b5ab061.

* chore: fix schema and types for now

* fix: domainWideDelegationCredentialId error type
2025-03-05 10:42:20 -03:00
Udit TakkarandPeer Richelsen f008a28499 fix: open cal video url on new page when ready (#19683)
* fix: open cal video url on new page when ready

* fix: open on new tab

* chore: change logic

* chore: add condition for embed

* chore: simplify the code

---------

Co-authored-by: Peer Richelsen <peeroke@gmail.com>
2025-03-05 18:27:06 +05:30
Keith Williams 381f2781a3 perf: remove atoms monorepo imports (#19688)
* perf: Remove atoms/monorepo barrel exports

* Removed more exports

* completely removed the monorepo file

* fixed types

* fixing tests

* fixing package errors

* Pushing latest

* Fixed atoms build

* hack to fix type

* Fixed web build
2025-03-05 09:49:13 -03:00
Alex van Andel 6f62c6ad5d refactor: Typescript fixes and updates for bumping ts version to 5.8.2 (#19690)
* Typescript fixes and updates for bumping ts version to 5.8.2

* Different TS versions do see an error, so @ts-ignore'ing

* Attempt this fix for ignoring createDecipher/createCipher fns

* Remove @ts-expect-error
2025-03-05 09:17:08 -03:00
Alex van Andel 1545a8ec82 chore: Upgrade to node v20 as v18 is EOL next month (#19733)
* chore: Upgrade to node v20 as v18 is EOL next month

* Run tests using node 20
2025-03-05 13:34:17 +02:00
Muhammad Aiman Sulaiman 58d7e59b38 feat: Updates to HitPay Payment App (#19737)
* feat: add hitpay embed feature for cal embed

feat: update hitpay app description

fix: fixed customers being able to exceed bookings in the same timeslot when using HitPay

fix: fixed callback issue in cal.com using hitpay app when not receiving payment responses

* fix: fixed type-check error
2025-03-05 11:29:38 +00:00
Eunjae Lee d79a5c3adf fix: search on team availiability (for non-org users) (#19738) 2025-03-05 10:56:03 +00:00
Morgan 340b5ab061 Revert "chore: rename DWD to DelegationCredential (#19703)" (#19734)
This reverts commit 7a9ddf2194.
2025-03-05 10:30:23 +00:00
Anik Dhabal Babu fa58fe6563 fix: tab item is not translated (#19735) 2025-03-05 09:28:45 +00:00
Benny Joo 251121a76f chore: write defaultResponder for App Router APIs (#19727)
* create defaultResponderForAppDir

* rename all usages

* finish

* fix
2025-03-05 09:12:07 +00:00
Rajiv Sahal 75627cb097 fix: booking fields not saving properly for team events (#19702) 2025-03-05 05:38:07 +00:00
amrit f9780fbbd2 fix: auto submission upon uploading photo (#19715)
* fix: auto submission upon uploading photo

* set image source from server response

* get rid of extra network request by removing refetch
2025-03-05 05:34:02 +00:00
luzpaz 13649d3bf3 fix: typos in packages directory (#19574)
Found via codespell
2025-03-05 05:12:40 +00:00
Benny Joo 65898f29eb perf: dynamic import for sentry CaptureException (#19730) 2025-03-04 23:07:20 +00:00
Calcom BotandLingo.dev 11267e9359 feat: update translations via @lingodotdev (#19729)
Co-authored-by: Lingo.dev <support@lingo.dev>
2025-03-04 21:40:29 +00:00
sean-brydonandBailey Pumfleet d38b35b626 chore: remove storybook (#19659)
* remove storybook

* remove storybook trpc provider

* add user-event

* fix lockk file

---------

Co-authored-by: Bailey Pumfleet <bailey@pumfleet.co.uk>
2025-03-04 14:14:56 -07:00
Lauris Skraucis fff521e171 fix: v2 managed user attendee bookings (#19716)
* Revert "Revert "fix: v2 managed user attendee bookings (#19612)" (#19635)"

This reverts commit 2600a6c3d5.

* fix: make guests optional
2025-03-04 18:08:21 +01:00
Vijay fd6666ebad feat: improved ooo search (#19704)
* improved ooo search

* chore
2025-03-04 13:45:00 +00:00
Anik Dhabal Babu f2fa1248eb fix (#19692) 2025-03-04 18:21:39 +05:30
Morgan 7a9ddf2194 chore: rename DWD to DelegationCredential (#19703)
* chore: rename DWD to DelegationCredential

* fixup! chore: rename DWD to DelegationCredential

* fixup! fixup! chore: rename DWD to DelegationCredential

* fixup! Merge branch 'main' into rename-domain-wide-delegation

* fixup! fixup! Merge branch 'main' into rename-domain-wide-delegation

* fixup! fixup! fixup! Merge branch 'main' into rename-domain-wide-delegation
2025-03-04 09:45:39 -03:00
Anik Dhabal Babu a39b5e47a7 fix: member filter fix (#19707) 2025-03-04 12:45:27 +00:00
Morgan ae8180e7c2 chore: improve validate hosts api v2 team event-types (#19696)
* chore: improve validate hosts api v2 team event-types

* fixup! chore: improve validate hosts api v2 team event-types
2025-03-04 08:55:40 +00:00
Morgan 72832354e6 fix: api v2 axiom logs exceed column size (#19636) 2025-03-04 05:40:36 +00:00
Vachmara df598bf281 feat: improve Intercom app (#19687)
* fix: don't POST to cal.com/[user]/[type]

* fix: return html with cal calendar embed

* fix: intercom app team events types

* feat: improve Intercom UX integration

* Merge branch 'main' of https://github.com/calcom/cal.com
2025-03-04 10:48:31 +05:30
GitHub Actions a3ce957f00 chore: release v5.0.11
Post release / release (push) Canceled after 0s
2025-03-03 23:30:41 +00:00
Keith Williams 7701edb0bb chore: TS config - ignore node_modules in subdirectories (#19680)
* chore: TS config - ignore node_modules in subdirectories

* Update tsconfig.json

* Applied the pattern to the entire monorepo
2025-03-03 15:53:28 -03:00
Benny Joo efd427831d chore: early return for next.js static assets (#19678) 2025-03-03 15:35:42 -03:00
bec83b2342 chore: remove TRPC barrel exports (#19598)
* remove barrel export for client

* fix more imports

* remove server barrel

* remove more barrel exporst and fix tssconfig

* fix types

* fix imports for removed barrels

* fig ssg createserverside helpers

* restore lock

* new yarn lock

* remove barel exports

* remove barrel

* replace client with react in tsconfig

* fix yarn lock

* Update exports for trpc to not be types

* add ENDPOINTS export to the correct location

* other exports fixes lost due to barrel

* fix client error export

* more imports

---------

Co-authored-by: hbjORbj <sldisek783@gmail.com>
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
2025-03-03 15:33:32 -03:00
Ash DavisandAnik Dhabal Babu 5a6a13b954 fix: allow cancelledBy query param to work on api v1 (#19268)
* fix: cancelledby to work on api v1

* fix: scheduleId to work with hosts in eventtype api v1

* Update event-type.ts

---------

Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-03-03 18:19:09 +00:00
Ash Davisandamrit 340f15fea5 fix: scheduleId to work on event type host assignment via patch api v1 (#19546)
Co-authored-by: amrit <iamamrit27@gmail.com>
2025-03-03 18:18:06 +00:00
Anik Dhabal Babu f572a2b9c2 fix: some flaky e2e tests (#19648)
* fix: some flaky e2e tests

* update

* update
2025-03-03 21:55:21 +05:30
MorganandSomay Chauhan ee9c73476b chore: add docs to /v2/organizations/:orgId/organizations endpoints (#19668)
Co-authored-by: Somay Chauhan <somaychauhan98@gmail.com>
2025-03-03 16:03:32 +00:00
Keith Williams 78d06c6d01 refactor: Move classNames from @calcom/lib to @calcom/ui (#19674)
* refactor: Move classNames from @calcom/lib to @calcom/ui

* Import fix

* Removed extra import of classNames

* Removed tailwind-merge from @calcom/lib
2025-03-03 15:54:33 +00:00
Eunjae Lee 3d3a9c0dfb fix: use portal for DataTableSelectionBar (#19672) 2025-03-03 15:42:38 +00:00
Tushar Bhatt ed06050fda fix UI on mobile (#19673) 2025-03-03 15:24:37 +00:00
amrit fd6effa6ff feat: booking redirect page url is now has uid in it's parameters (#19522)
* feat: booking redirect page is now w UID

* refactor: use getBookingRedirectExtraParams

* refactor: remove uncessary const result

* uid isnt the first param anymore
2025-03-03 09:47:32 -05:00
Morgan 2889893804 refactor: import UseIsPlatform directly instead of barrel file (#19670)
* refactor: import useIsPlatform directly

* fixup! refactor: import useIsPlatform directly

* fixup! fixup! refactor: import useIsPlatform directly

* fixup! fixup! fixup! refactor: import useIsPlatform directly
2025-03-03 14:26:50 +00:00
Rajiv Sahal 3c035ab636 chore: add hooks section to v2 docs (#19651)
* add custom hooks page
2025-03-03 14:18:39 +00:00
sean-brydon c1ccd62f98 use profileUsername (#19667) 2025-03-03 12:28:40 +00:00
Eunjae Lee 0e5775a087 fix: adjust table height on /bookings (#19662) 2025-03-03 11:00:38 +00:00
amritandUdit Takkar 7e83f1a59a fix locale (#19665)
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
2025-03-03 10:52:31 +00:00
Eunjae LeeandUdit Takkar 12724ef894 fix: show selected filter values first in single- & multi-select filters (#19620)
* fix: show selected filter values first in single- & multi-select filters

* fix type errors

* fix type error

* fix type error

---------

Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
2025-03-03 10:28:45 +00:00
Somay ChauhanandPeer Richelsen 6244b5a2c0 feat: added Ability to set organizer's default app as a valid input location in api/v2 (#19549)
* feat: added Ability to set organizer's default app as a valid input location in api/v2

* only allow organizers default for team events

* fixed for atoms and added unit and e2e tests

* Update organizations-event-types.e2e-spec.ts

* Update transformApiEventTypeForAtom.ts

* published platform-libraries@0.0.124

---------

Co-authored-by: Peer Richelsen <peeroke@gmail.com>
2025-03-03 09:01:24 +00:00
Anik Dhabal Babu 615ef93572 fix: remove ‘add guests’ from the dropdown if it’s disabled in the booking questions (#19649)
* fix: remove ‘add guests’ from the dropdown if it’s disabled in the booking questions

* fix: remove dd guests' from the dropdown if it's
disabled in the booking questions
2025-03-03 05:06:51 +00:00
Anik Dhabal Babu 22f1060ed6 fix: fix: Incorrect Attendee Shown When Cancelling a Seated Event (#19647) 2025-03-03 05:05:36 +00:00
amrit 51a39571aa fix height (#19656) 2025-03-03 04:38:56 +00:00
Keith Williams 7180eb067a refactor: Move @calcom/core to @calcom/lib (#19655)
* refactor: Move @calcom/core to @calcom/lib

* Merging imports

* Clean up

* Ignoreing type error for now
2025-03-02 23:02:35 -03:00
Alex van AndelandOmar López 1cfd94d293 fix: Re-instate new slot logic now it's A/B tested in production (#19605)
* fix: Re-instate new slot logic now it's well tested

* Fixup getAggregatedAvailability

* Changes to code-owners to reflect removed/moved code

* Move more files around.

* Fix failed type

---------

Co-authored-by: Omar López <zomars@me.com>
2025-03-02 23:32:31 +00:00
Calcom BotandLingo.dev 4bab8c2c32 feat: update translations via @lingodotdev (#19654)
Co-authored-by: Lingo.dev <support@lingo.dev>
2025-03-02 17:53:42 -05:00
GitHub Actions c4beef609b chore: release v5.0.10
Post release / release (push) Canceled after 0s
2025-03-02 20:07:08 +00:00
be77ac133c feat: Domain-wide delegation for Google Calendar and Google Meet (#16622)
* Add endpoints for testing the flow

* Add MVP

* new route

* Fixes

* Fixes

* Remove enable toggle support from domainWideDelegation

* Fixes

* Revert "Remove enable toggle support from domainWideDelegation"

This reverts commit c29e729206cd1fa063f9c9ce0cf148ef1577d60b.

* Revert yarn.lock

* More fixes

* Fix new workspace platform add

* refactor: improvements

* refactor: bug fixes and improvements

* fix: type errors

* fix: conflicts

* chore: update test

* fix: logic

* chore: improvements

* fix: toglle

* fix: bugs

* fix: type err

* chore: check number type

* fix: after conflicts

* chore: fix type err

* fix: type errors and tests

* fix: tets

* test

* chore: remove unused

* fix: google meet url on booking page and secondary calendar

* fix: add property

* fix: type err

* fix: re assingment bug

* fix: use getAllCredentials

* chore: fix import

* fix: installed count

* fix: pass event type

* fix: import

* fix: [Stacked PR] Review fixes (#17958)

* Review fixes

* fix: destination calendar bug

---------

Co-authored-by: Udit Takkar <udit222001@gmail.com>

* refactor: use repository

* chore: remove duplicate

* fix: More review fixes for domain wide delegation (#17969)

* Reuse buildCredentialPayloadForCalendar

* fixes

---------

Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>

* fix ts error

* Fix getSchedule not using dwd credentials (#17995)

* fix: Remove direct DWD table access from google-calendar and remove delegatedToId column from Credential (#18015)

* Remove fn rename to reduce number of files changed

* chore: check feature globally

* test: add unit tests

* chore: move function

* test: add booking test

* wip

* Remove domain-wide-delegation team feature flag

* Make sure duplicate calendars are not shown due to DWD. Show DWD when there is conflict

* Fix tests and their ts errors

* Fix more tests

* Move findUsersForAvailabilityCheck to separate file as it has AppStore dependency causing problem with Routing Forms. Build crashes

* fix: Multiple calendar connections from Google not showing up in apps/installed

* DestinationCalendar must have either credentialId or domainWideDeelgationId. Also handle the case when DWD is disabled and there was a non-dwd credential that could be used

* Disable deletetion of DWD as it is destructive and prefer disabling instead

* Show DWD credential calendars at the top

* Fixed tests

* Calendar Cache DWD support

* Self-Review: Verify email required and add more selectedCalendar tests

* Self Review: shorten names

* Self ReviewL Dead code removal

* Revert "Calendar Cache DWD support"

This reverts commit 009f236470fa21eba5986117d4f6e4d4c5e38c34.

* Some misc fixes

* fixes

* Performance improvememt in slots loading and booking

* More cases for handling dwd credentials

* simplify the logic. Ensure that EventManager and the modules below it in the flow have CredentialForCalendarService available

* Fix tests

* Fix installed/conferencing not showing gogole meet

* Shorten name

* Fix ApI v2 tests

* Add some more tests

* add getSchedule tests

* Improve tests

* Make Google Meet default when DWD for google is enabled

* Enable feature flagging for DWD

* chore: bump libraries

* Encrypt serviceaccount private key

* Fix ts errors

* bump platform libraries

* org add dwd

* org add dwd

* bump platform libraries

* fix selected calendars

* fix remove selected dwd calendar

* remove oauthclient id aliad in authedCalendar

* remove oauthclient id aliad in authedCalendar

* refactor: OrganizationsDwdController

* chore: export toggleDwdEnabled from platform-libraries

* feat: v2 update (enable / disable) dwd

* refactor: SelectedCalendarsController check if user belongs to dwd org & for not dwd use previous logic

* wip: DestinationCalendar send domainWideDelegationCredentialId from frontend to api

* try fix set destination calendar api v2

* fixup! try fix set destination calendar api v2

* setting google meet as default location working for dwd

* bump platform libraries version

* allow office 365 workspace slug

* allow office 365 workspace slug

* chore: v2 create dwd MS and Google service keys input

* fix: CreateDwdInput serviceAccountKey

* fix: CredentialForCalendarService type

* fix: check workspace slug

* feat: update serviceAccessKey of DWD

* testing

* fixup! testing

* fix: getAuthUtl bug

* fix: unit tests

* fix: type err and unit test

* fix: e2e test

* fix: credentials bug and failing unit tests

* Update CalendarService.ts

* chore: refactor office365 calendar service and add testDomainWideDelegationSetup

* fix: office365Calendar use correct clientId/Secret for DWD

* fix: office365Calendar dwd no need refresh token

* test: add unit test for outlook dwd and setup

* feat: added dwd support for office365 calendar

* feat: added dwd support for office365 video

* test: finish test for outlook dwd

* fix: create dialog bug

* chore: remove console logs

* fix: refreshToken bug

* bump version libraries

* refactor: fetch dwd credentials only in findQualifiedHosts

* fixup! refactor: fetch dwd credentials only in findQualifiedHosts

* fix: type err

* fix: type err

* fix: getUserDisplayName

* fix: unit test

* chore: bump platform lib

---------

Co-authored-by: Syed Ali Shahbaz <52925846+alishaz-polymath@users.noreply.github.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
Co-authored-by: Udit Takkar <udit222001@gmail.com>
Co-authored-by: Morgan Vernay <morgan@cal.com>
Co-authored-by: supalarry <laurisskraucis@gmail.com>
Co-authored-by: Somay Chauhan <somaychauhan98@gmail.com>
Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com>
2025-03-02 16:52:57 -03:00
Nayan Bagale 2d915a1c51 fix: update toast type to ExternalToast in showToast function (#19650) 2025-03-02 18:45:22 +00:00
Utkarsh ba4986a333 fixes 6 character hash suffix in the username for a member of an organization when he sign in via google. (#19633) 2025-03-02 12:02:37 +05:30
Peer Richelsen a2cf9ef633 replaced submit to continue (#19641) 2025-03-01 12:06:30 -05:00
Hariom Balhara 610e6e8e88 enforce visibility (#19639) 2025-03-01 15:53:20 +05:30
Morgan cbd8525c39 fix: useAtomGetEventTypes pathname (#19637) 2025-03-01 03:04:16 +00:00
Omar LópezandMorgan 2600a6c3d5 Revert "fix: v2 managed user attendee bookings (#19612)" (#19635)
This reverts commit c0591f3cdb.

Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com>
2025-03-01 03:01:45 +00:00
Calcom BotandLingo.dev 5adbe4b570 feat: update translations via @lingodotdev (#19632)
Co-authored-by: Lingo.dev <support@lingo.dev>
2025-03-01 03:01:31 +00:00
Hariom Balhara 564c84dade fix: App theme being used in routing-form embed (#19489)
* fix wrong theme routing-form embed

* fix wrong theme routing-form embed
2025-02-28 23:50:46 +05:30
GitHub Actions 6068829d70 chore: release v5.0.9
Post release / release (push) Canceled after 0s
2025-02-28 17:49:22 +00:00
nizzy 1849fe7b74 feat: plain-thread-tier (#19463)
* tier select

* thread tier

* remove console logs

* requested changes to getting user tier

* test

* fix test error

* fix type errors on test

* pull latest

* route middleware fix

* double tierIdentifier

* updated test file

* build error

* plain cards fix up

* dayjs

* change orgs check to teams isOrgs check

* removed uneeded prisma calls and changed teams check
2025-02-28 17:42:34 +00:00
Anik Dhabal Babu c31b7eaaf1 fix: few ui issues (#19625) 2025-02-28 16:55:02 +00:00
sean-brydonandAlex van Andel be6f975d34 fix: update profile instead of username. Display p.username (#19621)
* update profile instead of username. Display p.username

* Update packages/trpc/server/routers/viewer/organizations/listMembers.handler.ts

Co-authored-by: Alex van Andel <me@alexvanandel.com>

* Update packages/trpc/server/routers/viewer/organizations/getUser.handler.ts

---------

Co-authored-by: Alex van Andel <me@alexvanandel.com>
2025-02-28 14:04:54 +00:00
Hariom Balhara dc8be81334 feat: Task createCRMEvent can retry at cutomizable fixed interval (#19571) 2025-02-28 06:59:54 -07:00
Rajiv Sahal 3f3bed52aa chore: update platform docs for teams setup (#19619)
* init teams setup doc

* update teams setup page
2025-02-28 10:27:25 +00:00
Peer Richelsen 7248ef86b2 chore: moved /help to github.com/calcom/help (#19554) 2025-02-28 10:23:19 +00:00
Anik Dhabal Babu fa79b7e993 fix: change the origin to webapp url (#19593) 2025-02-28 10:23:03 +00:00
Rajiv Sahal 258bc1d2b0 no need for platform users to complete onboarding (#19449) 2025-02-28 11:06:04 +01:00
Benny JooandHariom Balhara e3d1e998f2 chore: migrate /org and /team embed pages to App Router (#19148)
* migrate all /org embed pages to app router

* migrate all /team embed pages to app router

* remove /future routes

* move to (booking-page-wrapper) route group

---------

Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
2025-02-28 11:04:19 +01:00
Anik Dhabal Babu 468cd2a3af fix: hubSpot doesn't work for paid team events (#19609) 2025-02-28 11:04:08 +01:00
Benny Joo 87f161d944 chore: migrate OG image generation API to App Router (#19568)
* migrate

* improve apiRouteMiddleware wrapper type

* refactor

* fix type check

* fix build

* fix

* Do not import stripe lib in getServerErrorFromUnknown

* address comment

* remove comment

* add url

* keep the location

* remove space

* add unit test for getServerErrorFromUnknown

* improve

* fix
2025-02-28 11:03:20 +01:00
Udit Takkar c1ef57e3c2 revert: country code (#19618) 2025-02-28 09:53:40 +00:00
Somay Chauhan 5b961f7d96 fix: added zoom, msTeams as valid locations in event-type, booker atoms (#19599) 2025-02-28 10:10:02 +02:00
Lauris Skraucis c0591f3cdb fix: v2 managed user attendee bookings (#19612)
* fix: CreateBookingInput_2024_04_15 stripping off responses

* fix: bi-directional managed user bookings

* test: bookings 2024-08-13 bi-directional managed user bookings

* test: bookings 2024-04-15 bi-directional managed user bookings

* test: bookings 2024-04-15 bi-directional managed user bookings
2025-02-28 10:08:24 +02:00
GitHub Actions 8ac584a325 chore: release v5.0.8
Post release / release (push) Canceled after 0s
2025-02-28 01:07:12 +00:00
Benny Joo 2cf76737d8 perf: dynamically import sentry lib in catch clause (#19607) 2025-02-27 18:17:45 +00:00
Hariom Balhara 0ad5770bb9 fix: Valid timeslot marked 'slot no longer available' (#19590)
* Handle date mismatch b/w schedule key and slot

* Add feature ollout support
2025-02-27 11:13:36 -07:00
Benny Joo b6caf866c9 perf: make irregular full page reload go away (#19588)
* chore: Remove PlainChat instance from pages router

* do not dynamically import plain chat
2025-02-27 10:29:00 -07:00
Eunjae Lee 5be2b5bbba fix: remove wrong conditions to fetch users on /bookings (#19580) 2025-02-27 11:58:13 -05:00
Anik Dhabal Babu 4d769d636c fix: updating attributes doenst happen in real-time (#19604) 2025-02-27 16:35:22 +00:00
Benny Joo 4d45aa1564 perf: Do not import Stripe lib in getServerErrorFromUnknown (#19578)
* Do not import stripe lib in getServerErrorFromUnknown

* address comment

* remove comment

* add url

* keep the location

* remove space

* add unit test for getServerErrorFromUnknown

* improve
2025-02-27 15:22:23 +00:00
amrit de642e32c5 two items in one row (#19602) 2025-02-27 15:03:21 +00:00
Pascal c1f33e0721 add flex-wrap to fix overflow (#19584) 2025-02-27 05:05:37 +00:00
Peer Richelsen 5534a32169 feat: eleven labs app (#19585)
* eleven labs app

* dark icon
2025-02-27 03:58:17 +00:00
Benny Joo d7960021aa perf: do not import from @calcom/lib/server barrel file (#19579)
* do not import from lib/server barrel file

* fix build
2025-02-26 18:10:52 -03:00
Alex van Andel 48b8afd8af fix: ics compat with older ical specced calendars (#19582)
* Migrate DURATION to DTEND + mark as busy

* Adjusted tests for DTEND support
2025-02-26 12:29:07 -07:00
Morgan af524d9e93 fix: enable event-type booking field url with api v2 (#19577)
Post release / release (push) Canceled after 0s
* fix: enable event-type booking field url with api v2

* fixup! fix: enable event-type booking field url with api v2

* fixup! fixup! fix: enable event-type booking field url with api v2

* fixup! fixup! fixup! fix: enable event-type booking field url with api v2
2025-02-26 19:12:41 +00:00
GitHub Actions 6b7ced262d chore: release v5.0.7 2025-02-26 19:12:07 +00:00
Eunjae Lee 7a797490c8 feat: support attendee name and email filter on /bookings (#19565)
* feat: support attendee name and email filter on /bookings

* remove console log

* change label
2025-02-26 18:48:36 +01:00
Morgan 3c367dd2c8 fix: phone input and week view missing styles atoms (#19581)
* fix: phone input missing styles atoms

* fixup! fix: phone input missing styles atoms
2025-02-26 17:44:14 +00:00
Morgan 00f50a9449 feat: booker atom prevent event type success redirect (#19573) 2025-02-26 18:54:03 +02:00
Hariom Balhara 381e22ae7e test: Salesforce CRM - Add user facing tests and more logs (#19531)
* Added user facing tests

* fix tests

* Fix ts error
2025-02-26 22:21:36 +05:30
Anik Dhabal BabuandTushar Bhatt 3850b519fd fix: time slot doesn't select in email embed (#19523)
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-02-26 21:13:17 +05:30
Calcom BotandLingo.dev 78473bab1b feat: update translations via @lingodotdev (#19576)
Co-authored-by: Lingo.dev <support@lingo.dev>
2025-02-26 15:37:26 +00:00
Lauris Skraucis e437dfa000 refactor: platform default event types (#19225)
* feat: add areDefaultEventTypesEnabled to PlatformOAuthClient

* feat: specify areDefaultEventTypesEnabled when creating OAuth client

* feat: specify areDefaultEventTypesEnabled when updating OAuth client

* feat: display areDefaultEventTypesEnabled in OAuth clients list

* refactor: set areDefaultEventTypesEnabled by default to false on API level

* feat: v2 API CREATE managed user toggle default event types

* refactor: centralize OAuth inputs and outputs in platform/types

* fix: correct response types for OAuth hooks

* refactor: web/lib/hooks/settings/platform/oauth-clients/useOAuthClients.ts

* refactor: web/lib/hooks/settings/platform/oauth-clients/useOAuthClients.ts

* refactor: split web OAuth hooks into separate files

* refactor: split web OAuth hooks into separate files

* docs: v2 OAuth client inputs and outputs

* refactor: update and create oauth client inputs
2025-02-26 12:06:08 -03:00
07789ba697 feat: Introduce a 'slot no longer available' message (#18935)
* feat: Don't allow unavailable slot's booking form to be visible - Send back to slots listing

* Improvements

* feat: Add env variables and strategies to prevent booking failures

- Added new environment variables for configuring slot reservation and availability checks
- Implemented strategies to handle concurrent bookings and slot availability
- Updated Booker component and related files to support new reservation and slot checking mechanisms
- Added README with detailed explanation of booking prevention strategies
- Configured dynamic intervals for slot and reservation queries

* docs: Update Booker README with detailed slot reservation and availability explanation

- Clarified slot reservation behavior when multiple users access the same booking page
- Added details about `getSchedule` refetching strategies and timing
- Explained how slot availability is detected and communicated to users

* Support for skip confirmation form flow

* feat: Enhance slot availability and reservation mechanism

- Refactored slot availability checking to support multiple slots
- Added tentative selected timeslots to improve booking UX
- Updated trpc handler to check availability for multiple slots
- Introduced new store methods for managing tentative slot selections
- Improved slot reservation and availability status tracking

* refactor: Improve slot availability quick check mechanism

- Renamed and restructured slot availability check parameters
- Extracted quick availability checks into a separate hook
- Updated type definitions for slot status and availability checks
- Simplified slot availability logic in Booker and related components
- Maintained cached state for quick availability checks

* Support minimu booking check too

* change data-testid

* Rneame

* Fix race condition with uid cookie not set

* fix tests

* Remove unsded variable

---------

Co-authored-by: Hariom Balhara <hariombalhara@gmgmail.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
2025-02-26 16:49:26 +02:00
Peer Richelsen a6c6a46076 chore: small ooo translation fixes (#19569) 2025-02-26 08:42:53 -05:00
Eunjae Lee d44d74d2fc fix: apply routing form filter by default on /insights/routing (#19535)
* fix: mandate routing form filter on /insights/routing

* add e2e test

* update e2e test

* fix e2e test

* add comment
2025-02-26 14:39:49 +01:00
Morgan 52662b3375 fix: old v2 booking cancel endpoint issue (#19564)
* fix: old v2 booking cancel endpoint issue

* fixup! fix: old v2 booking cancel endpoint issue
2025-02-26 13:14:13 +00:00
8612fa71c7 feat: Manage Team ooo or crud (#16456)
* feature for team ooo crud and past records

* added tests for ooo handler, combined list components for mine,team

* nit: removed commented code

* added current-previous tab , not to show TeamOOO tab for nonadmin

* update for type checks

* updated tests after merge

* updated outofoffice handler after merge

* for alignment with outofoffice header column

* update after resolving merge conflicts

* nit/chore: spacing

* update after changes in router migration

* ui improvements rounded corner

* updated props

* Update apps/web/public/static/locales/en/common.json

Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>

* Update apps/web/public/static/locales/en/common.json

Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>

* updated dialog subtitles, review comments

* Update packages/features/settings/outOfOffice/CreateOrEditOutOfOfficeModal.tsx

Co-authored-by: Amit Sharma <74371312+Amit91848@users.noreply.github.com>

* Update packages/trpc/server/routers/loggedInViewer/outOfOffice.schema.ts

Co-authored-by: Amit Sharma <74371312+Amit91848@users.noreply.github.com>

* refactored to split ooo handlers, review comments

* updated test.utils

* chore

* chore: unrelated changes may be merge

* optimized query

* update due to latest changes and merge conflicts

* updates to changes in people filter

* chore

* as now taken care in DataTable

* updates after merge

* updates after merge due tp changes in datatable and others

* update import due to file splitting and new name

* update for typecheck

* update for new add button when empty entries

* nit

* replace tests with e2e tests

* chore

* include only manage team ooo

* fix type check

* Update safe-parse.ts

* use invalidate instead of props, leaving main server components as it is

* nit

* update forMember div ht in edit mode

---------

Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
Co-authored-by: Amit Sharma <74371312+Amit91848@users.noreply.github.com>
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-02-26 11:39:35 +00:00
Benny JooandHariom Balhara caaecf2f94 chore: migrate /user embed pages (#19149)
* add user pages to config.matcher in middleware

* add app router user booking pages

* remove HeadSeo from users-public-view component

* remove pages router user booking pages

* fix type check

* fix embed

* fix test

* chore: remove BookerSEO from users-type-public-view

* fix

* migrate all /user embed pages to app router

* remove /future routes

* fix prefill not working with preload

* move to (booking-page-wrapper) route group

---------

Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
2025-02-26 11:50:27 +01:00
Anik Dhabal BabuandPeer Richelsen 8741714402 fix: some ui fixes (#19558)
* fix

* Update SettingsLayoutAppDirClient.tsx

* Update packages/features/eventtypes/components/EventTypeLayout.tsx

---------

Co-authored-by: Peer Richelsen <peeroke@gmail.com>
2025-02-26 10:13:24 +00:00
Eunjae Lee 271d9a5f61 chore: remove not used code related to filters on /bookings (#19450)
* chore: remove filter-related code that is no longer in use

* remove groupBy.ts
2025-02-26 09:42:19 +00:00
Eunjae Lee 3d3acba82a fix: refactor filter UIs on /bookings (#19532)
* Reapply "fix: replace filter implementations on bookings (#19445)" (#19506)

This reverts commit f6af6e34bd.

* force custom date range selector for bookings except for Past tab

* fix e2e test

* add e2e tests

* fix e2e test
2025-02-26 09:47:20 +01:00
Somay ChauhanandHariom Balhara ca1f84c827 fix: disable skip confirm for booker_layout=WEEK_VIEW (#19524)
* fix: disable skip confirm for booker_layout=WEEK_VIEW

* Make code clearer

---------

Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
2025-02-26 11:15:55 +05:30
Lauris Skraucis a44bcafcf2 feat: v2 managed organizations (#19341)
* refactor: allow non unique PlatformBilling customerId

* feat: add PlatformBilling managed organizations fields

* feat: ManagedOrganization table

* refactor: bill overdue based on teamId

* refactor: restructure organizations module

* wip: organizations endpoints

* Revert "wip: organizations endpoints"

This reverts commit 0e9e66fc74f31da436f12930c1b6597c650ed621.

* refactor: unique index for managed organizations

* wip: organizations endpoints

* wip: create managed organization

* remove unecessary membership check because we have guard

* feat: create managed org

* feat: get managed org and orgs

* feat: update and delete managed orgs

* wip: api key logic

* feat: allow variable api key length

* feat: refresh managed org api key

* feat: create managed org OAuth clients using api key

* finish merge main

* chore: bump platform libraries

* tests: fix and add more tests to api-auth.strategy.e2e

* refactor: dont request managed org slug and handle metadata as object

* revert: billing service and repository update overdue based on sub and customer ids

* refactor: v2 OAuth client permissions (#19501)

* refactor: v2 permissions as string array

* refactor: frontend work with permissions as string

* tests: test '*' permissions

* fix:managed org creator have profile & test can fetch oauth client

* fix: tests

* fix: OAuthClientCard on frontend

* fix: tests
2025-02-25 18:10:46 -07:00
Anik Dhabal BabuandAlex van Andel e4ab8d87c4 fix: Attempted to call ZFormsInputSchema() from the server (#19540)
* fix: Attempted to call ZFormsInputSchema() from the server

* chore: type optimisation

---------

Co-authored-by: Alex van Andel <me@alexvanandel.com>
2025-02-26 00:39:46 +00:00
a4519e705d fix: No option to install/disconnect app from app detail page (#17997)
* fix: No option to install/disconnect app from app detail page

* Fix types

* fix: Install button showing up even after it is installed for all targers

* chore: Simplified installOrDisconnectAppButton making it easy to read

---------

Co-authored-by: Hariom <hariombalhara@gmail.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
2025-02-26 00:08:59 +05:30
Tushar BhattandKeith Williams a3113607ff chore: pr-template updates to include demonstrations (#19533)
* updated - pr_template

* minor-change

* Update PULL_REQUEST_TEMPLATE.md

* Update PULL_REQUEST_TEMPLATE.md

---------

Co-authored-by: Keith Williams <keithwillcode@gmail.com>
2025-02-25 13:01:39 +00:00
Benny Joo acf270bc61 fix: Encode usernames in booking url to UTF-8 to prevent 500 throws (#19475)
* fix: Encode usernames in booking url to UTF-8 to prevent throws

* add dynamic booking page e2e

* add 1 more test
2025-02-25 06:27:23 -05:00
Benny Joo d1a9af84b2 chore: migrate /api/avatar/[uuid] to App Router (#19514)
* chore: migrate /api/avatar/[uuid]

* fix type

* move location of apiRouteMiddleware and fix the args

* refactor
2025-02-25 11:19:29 +00:00
Benny Joo 6ea879f265 perf: run ssrInit() at root layout (#19460)
* wip

* remove ssrInit unneeded

* refactor

* revert unneeded changes

* update booking-page-wrapper layout
2025-02-25 06:08:23 -05:00
Keith WilliamsandOmar López 307b2946a2 perf: cache app store imports (#19519)
* perf: Cache app store imports

* Added a console log to see when imports happen

* Discard changes to yarn.lock

---------

Co-authored-by: Omar López <zomars@me.com>
2025-02-24 23:02:35 -03:00
GitHub Actions 23d9788dce chore: release v5.0.6
Post release / release (push) Canceled after 0s
2025-02-24 22:08:05 +00:00
caade0850a fix: consider sendToAll settings in routingForms response (#18226)
* update to consider sendToAll

* added tests for team routingForms selectAllMembers cases

* chore

* chore

* chore

* updated test case in case of toggle off

* tweak

---------

Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
Co-authored-by: unknown <adhabal2002@gmail.com>
2025-02-24 17:59:54 +00:00
Eunjae Lee f6af6e34bd Revert "fix: replace filter implementations on bookings (#19445)" (#19506)
This reverts commit 641193bd61.
2025-02-24 17:14:06 +00:00
Benny Joo 5f5cfaf7c7 perf: improve matching paths in middleware (#19491)
* perf: exclude next native paths from going through middleware

* fix build error

* fix

* fix
2025-02-24 16:53:06 +00:00
07a4aa6c7d fix: Fix for 'Scheduling by cal.com' is still showing in workflow emails even when branding is disabled (#18862)
* Branding Disabling on Team Workflows and Organization Workflows if branding is hidden

* update

* update

---------

Co-authored-by: unknown <adhabal2002@gmail.com>
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-02-24 16:31:32 +00:00
Eunjae Lee 641193bd61 fix: replace filter implementations on bookings (#19445)
* fix: replace filter implementation on /bookings

* add eventTypeId column

* add eventType filter

* add team filter

* add people filter

* fix type error

* support date range filter

* fix empty view

* fix date range filter

* add comment

* fix type error

* fix type error

* fix type error

* fix type error

* fix type error

* address feedback

* remove reverted functionality
2025-02-24 17:11:40 +01:00
Eunjae Lee 2d372746d3 fix: /bookings get handler (#19369)
* fix: sorting on /bookings

* fix type erorr

* add filters to logging

* fix type error

* filter with attendee emails

* clean up filters

* add test from #19376

* fix e2e tests

* split ORs into smaller queries

* add missing imports
2025-02-24 13:11:29 -03:00
Peer Richelsen 4b2265c35d chore: removed experimental calcom license api call (#19366) 2025-02-24 14:58:25 +00:00
Peer Richelsen 4dc2d3236d Update .env.example (#19364) 2025-02-24 14:55:43 +00:00
+20 7bff15cc47 chore: replace toaster with sonner (#19342)
* fix: replace react-hot-toast with sonner for toast notifications

* feat: add country code (#19264)

* perf: Move PlainChat up the hierarchy to remove rerenders (#19255)

* perf: Move PlainChat up the hierarchy to remove rerenders

* rmeove yarn lock

---------

Co-authored-by: Nizzy <nizabizaher@gmail.com>
Co-authored-by: nizzy <140507264+nizzyabi@users.noreply.github.com>

* hotfix (#19266)

* chore: release v4.9.11

* Handle cancelled status (#19272)

* feat: Use new /routing URL for routing forms (#19235)

* feat: Use new /routing URL for routing forms

* Fixes

* Fix bug

* precent crash

---------

Co-authored-by: Hariom Balhara <hariombalhara@gmgmail.com>

* fix: remove section on /bookings if no data exists (#19261)

* feat: v2 slots new version (#18758)

* refactor: version old slots

* feat: init new slots endpoints

* chore: range format

* fix: duratin

* fix: duratin

* test: slot releaseAt

* refactor: reserve slot response

* refactor variable name

* docs: have new slots controller in docs

* feat: crud for slots reservations

* refactor: use exclude all for response

* docs

* chore: slots input service

* refactor mini

* refactor: remove unused imports

* docs

* handle orgSlug for dynamic events

* refactor: correct name

* docs

* add optional organizationSlug to BySlug search

* refactor: slot output format

* refactor: return seated slot info

* docs

* rename functions

* refactor: slots seated response

* fix: handle same username in org and non org

* refactor: test format

* fix: allow reservationDuration only for authed requests

* chore: check if auth user has permissions to define custom reservation duration

* refactor: split e2e test files

* refactor: invalid request exception codes

* chore: old slots controller uses all old versions

* refactor: remove depreceated fields (#19279)

* refactor: remove depreceated fields

* chore: use v2 endpoint

* chore: update V2 Api type

* chore

* chore: Refactor to remove `getServerSideProps` for /teams route (#19286)

* remove getServerSideProps

* refactor teams route

* chore: release v4.9.12

* fix: Salesforce - if no contact throw Error (#19271)

* Throw error if no contact is passed to createEvent

* chore: update error message

* chore

---------

Co-authored-by: Udit Takkar <udit222001@gmail.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>

* fix: missing await router controller (#19276)

* fix: Default people filter in bookings list for admin (#18035)

* default people filter for admin

* chore

* type check

* added test case

* made test concise to reduce flakiness

* add timeout to wait for second get response before counting

* update timeout

---------

Co-authored-by: Peer Richelsen <peeroke@gmail.com>

* feat: add CSAT to V2 bookings return (#19278)

* init

* test: v2 bookings returns rating

---------

Co-authored-by: supalarry <laurisskraucis@gmail.com>
Co-authored-by: Lauris Skraucis <lauris.skraucis@gmail.com>

* chore: disable v2 booking seats safe parse error logs (#19292)

* revert: Reapply "fix: Multiple rr-hosts combine to create erroneous availabil… (#19263)

* Reapply "fix: Multiple rr-hosts combine to create erroneous availability (#18772)"

This reverts commit 5dbc6d9ca6.

* Only thing left is a diff to show which slots are removed

* Add logging around time slot results

* Setup logging through axiom

* .... forgot

* fix: type errors

* Only log when there are differences

* Updated from old which had a failing test to new logic

* chore: release v4.9.13

* fix: flaky test (#19294)

* fix: flaky test

* fix another test

* update

---------

Co-authored-by: Eunjae Lee <hey@eunjae.dev>
Co-authored-by: unknown <adhabal2002@gmail.com>

* chore: calendars controller v2 docs (#19291)

Co-authored-by: Bailey Pumfleet <bailey@pumfleet.co.uk>

* Merge branch 'main' into replace-toaster-with-sonner

* add ireland country code (#19117)

Co-authored-by: CarinaWolli <wollencarina@gmail.com>

* perf: separate client vs server code from insights layout (#19285)

* add UpgradeTipWrapper

* refactor insights/layout.tsx

---------

Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>

* feat: Use Folders to organize SMS links on Dub (#19248)

* feat: Use Folders to organize SMS links on Dub

* Update yarn.lock

---------

Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
Co-authored-by: Bailey Pumfleet <bailey@pumfleet.co.uk>

* fix: removing-all-members-toggle-for-fh (#19277)

* fix : removing all members toggle for fh

* ux enhancements

* adding placeholder

* chore: release v5.0.0

* fix flake (#19306)

* chore: migrate `/apps/routing-forms/[...pages]` to App Router (#18956)

* wip

* fix

* fix

* refactor

* rename to routingServerSidePropsConfig

* refactor

* refactor

* add routing-link to useIsBookingPage hook

* remove Head component

* fix

* redirect user to apps/routing-forms/forms if user goes to apps/routing-forms

* refactor

* remove log

* remove client component not needed

* clean up code

* remove unneeded metadata

* clean up further

* clean up further 2

* fix type check

* routing-link does not need shell

* Fix title for Routing Form public link and also remove any

* Remove ; in HTML

* Remove unnecessary page reload

---------

Co-authored-by: Hariom Balhara <hariombalhara@gmgmail.com>

* chore: migrate api for team upgrade to App Router (#19100)

* remove old pages router api

* add new app router api

* fix

* fix redirect

* refactor

* fix: cut off and alignment bug (#19317)

* fix: assignment label cut-off

* fix: add all team members label is vertically aligned

* fix: nested scrolls on /bookings (#19284)

* fix: Can't change availability for managed event type (#19006)

* fix: flaky test organization.spec

* fix

* fix: bulk-update-in-scheduleId-in-detailed-view (#19295)

* fix: bulk-update-in-scheduleId-in-detailed-view

* minor-change

---------

Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>

* feat: prevent automatic query parameters when opening booking page (#18132)

- Resolve the user hindrance where the event's booking page should not have search parameters such as date and month in the initial page load
- Contains changes for the fix of issue #18094 as well as it is needed

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>

* feat: atoms adjustments with ui v3 styles (#19320)

* refactor: Clean out old code, no longer needed (#19323)

* refactor: Clean out old code, no longer needed

* Removed a sneaky one keen to stay behind

* chore: release v5.0.1

* feat: Create `UserCreationService` and use in API V1 create user endpoint (#19150)

* Create `createUser` method in `userCreationService`

* Refactor `UserRepository` create method to accept prisma input and remove business logic

* API use `UserCreationService`

* Move slugify to service

* Use hashPassword instead

* Type fixes in `UserCreationService`

* Add `userCreationService` tests

* API accept data object

* Type fixes

* Add user _post test

* Add test for locked user

* Add locked param to log

* Add user repository tests

* Do not return locked status

* Explicitly pass `locked` prop

* Fix tests when locked isn't returned

* Fix tests

* Pass locked prop

* Edit test name

* Use logger

* Fix passing hashed password

* fix (#19298)

* fix: timezone input text is now visible in dark mode (#19325)

* feat: make first tab active by default (#19315)

* feat: make first tab active by default

* perf: optimize event types tabs rendering with useMemo

---------

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>

* perf: Use one PageWrapper instance for all settings pages (#18752)

* add a layoutfile to use-page-wrapper route group

* refactor and move bookings status page to route group

* improve logic in pagesAndRewritePaths

* fix

* add use client directive

* move /403 and /500

* move /auth/error

* move /connect-and-join

* move /enterprise

* move /maintenance

* move /more

* move /upgrade

* chore: remove WithLayout from 8 low-risk single pages (#18745)

* move /403 and /500

* move /auth/error

* move /connect-and-join

* move /enterprise

* move /maintenance

* move /more

* move /upgrade

* move /availability pages

* move /event-types pages

* move /insights pages

* move /apps to use-page-wrapper group

* move /getting-started to use-page-wrapper group

* move /signup to use-page-wrapper group

* move /workflows to use-page-wrapper group

* move /video pages to use-page-wrapper group

* pass dehydratedState in layout

* pass dehydratedState in layout

* move settings/(settings-layout) to use-page-wrapper

* move settings/(admin-layout) to use-page-wrapper

* move remaining settings pages to (use-page-wrapper)

* fix test

* remove unused code

* remove unused files

* fix type check

* remove test tag

* remove page

* RSC should not default export client components

* fix: Can't use unsaved booking question as variable in event name (#18604)

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>

* chore: remove WithLayout from not-found.tsx (#19331)

* fix: redirect logic in /settings/admin/apps (#19332)

* chore: v3 fixed filters, new profile view (#19312)

* fixed filters with badge

* aligned recurrence in bookings

* removed new badge

* new profile view

* fixed try for free button

* fixed form input

* fix: Issues with date changes in column view (#19258)

* fix: coulmn view date change

* Update store.ts

---------

Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>

* chore: fixed tooltip position for routing form (#19267)

* fixed tooltip position for routing form

* fixed offset

* fix: Fairness when routing (#18550)

* Partial push of new filters

* Let's always return the passed host array when a filter doesn't need to be applied

* fix: isFixed typing in same round robin host check

* Add main bulk of rewritten logic for routed fairness support

* Remove console.log

* Add getAttributeWithEnabledWeights to AttributeRepository

* Add OOO entry repository

* Use getOrderedListOfLuckyUsers in lead threshold filtering

* Shortfall already includes weight

* test against minShortfall

* first attempt to fix fallbacks

* Added testcase updates

* Partially fix filterHosts test

* Some test updates

* Removed email field from normalization

* fix no available users found error

* fix unit test

* remove fallback from same host reschedule return

* fixes and improvements for findQualifiedHosts

* include fallback logic in handleNewBooking

* use fallback in handleNewBooking

* fix for contact owner in handleNewBooking

* WIP - comment

* pass routingFormResponseId

* fix type error

* pass routingFormResponse

* fixes in treshold logic

* remove reason

* merge qualified and fallback availabilities

* fix type error

* add and fix tests

* clean up test file

* fix filterHostsBySameRoundRobinHost tests

* fix findQualifiedHosts.test.ts

* fix getRoutedUsers.test.ts

* fix tests

* fix isRerouting check

* fix start time for two weeks check

* fix fallback hosts

* fix test

* fallback hosts should also include qualified hosts

* fix type error

* fix typos

* add contact owner to fallbacks

* fix typo

* fix qualifiedRRUsers

* set fixed users when no hosts

* add tets + code clean up

* add test for reschedule with same host

* fix typo

* add more tests for findQualifiedHosts

* remove skip from test

* add comment

* remove unused code

* fix fallback users in loadAndValidateUsers

* improve naming for fallback

* rename missed fallback variable

* fix reschedule with same rr host in handleNewBooking

* fixes for fallback slots

* add more tests + small fixes for contact owner

* fix tests and type errors

* add logs for fallback

* add type:json to logger

* Fix small merge issue

* fix end time if two weeks are cut off

* add more tests for contact owner availability check

* add new logic for two weeks fallback

* fix reschedule same RR host test

---------

Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>

* fix: EditLocationDialog footer positioning and structure (#19335)

* fix: EditLocationDialog footer positioning and structure

* fix: make RescheduleDialog footer layout and button structure right

* fix: input dialogue glitch now works great

* made tests happy

---------

Co-authored-by: Peer Richelsen <peeroke@gmail.com>

* Merge branch 'main' into replace-toaster-with-sonner

* chore: remove DefaultToast from toast.stories.mdx

---------

Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
Co-authored-by: Benny Joo <sldisek783@gmail.com>
Co-authored-by: Nizzy <nizabizaher@gmail.com>
Co-authored-by: nizzy <140507264+nizzyabi@users.noreply.github.com>
Co-authored-by: Syed Ali Shahbaz <52925846+alishaz-polymath@users.noreply.github.com>
Co-authored-by: GitHub Actions <github-actions@github.com>
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmgmail.com>
Co-authored-by: Eunjae Lee <hey@eunjae.dev>
Co-authored-by: Lauris Skraucis <lauris.skraucis@gmail.com>
Co-authored-by: Udit Takkar <udit222001@gmail.com>
Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com>
Co-authored-by: Vijay <vijayraghav22@gmail.com>
Co-authored-by: supalarry <laurisskraucis@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
Co-authored-by: unknown <adhabal2002@gmail.com>
Co-authored-by: Bailey Pumfleet <bailey@pumfleet.co.uk>
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
Co-authored-by: Steven Tey <stevensteel97@gmail.com>
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: Sanchit Tewari <46245135+sanchitttt@users.noreply.github.com>
Co-authored-by: Rajiv Sahal <sahalrajiv-extc@atharvacoe.ac.in>
Co-authored-by: Amit Sharma <74371312+Amit91848@users.noreply.github.com>
2025-02-24 11:48:38 -03:00
luzpaz 97ef32f7ca fix: typos in several package/ directories (#19495)
* fix: typos in packages/embeds
Found via codespell

* fix: typos in packages/lib
Found via codespell

* fix: typos in packages/trpc
Found via codespell
2025-02-24 14:44:08 +00:00
16a94fe712 chore: bump alby packages (#18406)
* chore: bump alby packages

* fix: update alby sdk version

* chore: update yarn.lock

---------

Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
Co-authored-by: amrit <iamamrit27@gmail.com>
2025-02-24 11:25:20 -03:00
Cao HoangandAnik Dhabal Babu 8f29811d5a fix: Some errors breaking storybook build (#18767)
* fix: filters ui breaking in routing insights page

* fix: story book build errors

---------

Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-02-24 14:24:33 +00:00
Benny Joo a47cd5b106 chore: cleanup - Remove WithLayout HoC itself (#19490)
* remove future folder

* remove unused file

* remove unused files
2025-02-24 08:38:47 -05:00
Eunjae Lee 64aa19fcea revert: default people filter at bookings (#19486) 2025-02-24 14:31:00 +01:00
7c71b179c8 feat: extract bottom navigation logic into a custom hook (#19468)
* feat: extract bottom navigation logic into a custom hook

* tweak

---------

Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: unknown <adhabal2002@gmail.com>
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-02-24 13:27:24 +00:00
luzpaz d485e5f621 fix: typos in packages/app-store (#19470)
Found via `codespell -q 3 -S "*.svg,./apps/web/public/static/locales,./packages/app-store/stripepayment/lib/currencyOptions.ts,./packages/lib/freeEmailDomainCheck/freeEmailDomains.ts" -L afterall,atleast,datea,fo,incase,ist,nam,notin,optionel,perview,reccuring`
2025-02-24 10:54:28 +00:00
Vijay aa8d0f78d6 error msg when end date not selected (#19485) 2025-02-24 10:26:32 +00:00
Sy SagarandAnik Dhabal Babu 564497ec2a feat(lexicalEditor): custom enter-key plugin (#15952)
* fix(team-description): break lines rendering

* chore(EventTypeDescription): useBreakLine hook for handling html line breaks

* feat(lexicalEditor): custom enter-key plugin

* test(customEditorPlugin): enter key usage

* Update customEnterKeyPlugin.tsx

---------

Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-02-24 14:12:12 +05:30
Anwar SadathandAnik Dhabal Babu 2089ad40ea fix: Wrong avatars shown in webhooks page (#19386)
* fix: Wrong avatars shown in webhooks page

* Fix teams showing wrong avatar

* Fix type error

* Remove unused function arguments

---------

Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-02-24 08:02:57 +00:00
42e94cd5b7 fix: Misaligned Select with input box (#19400)
* Aligned Select field with input

* Minor fix in alignment

---------

Co-authored-by: amrit <iamamrit27@gmail.com>
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-02-24 07:54:48 +00:00
Peer Richelsen 4546bd8653 Update EnterpriseLicense.tsx (#19363) 2025-02-24 12:10:14 +05:30
Anik Dhabal Babu 2a89a5e249 fix: Username input field not in line (#19480) 2025-02-23 18:32:52 +00:00
Benny Joo aba7c6df7f perf: move all booking pages into (booking-page-wrapper) route group (#19321)
* update useIsBookingPage

* move team pages into use-page-wrapper route group

* update imports

* fix type check

* update

* update

* remove isBookingPage configure from booking client components

* move all booking pages to use-page-wrapper route group

* add checkIfBookingPage util

* update layout

* update AppProviders

* improve comments

* update

* update pagesAndRewritePaths logic

* refactor
2025-02-23 10:13:11 +01:00
Peer Richelsen 97348e2052 fixed FAB (#19469) 2025-02-23 03:34:58 -05:00
Steven Tey 30149dd100 Upgrade dub version (#19472) 2025-02-22 22:43:32 +00:00
Peer Richelsen d91ccd37e0 Revert "fixed FAB size (#19466)" (#19467)
This reverts commit 0bd90d1673.
2025-02-22 11:52:58 +00:00
Peer Richelsen 0bd90d1673 fixed FAB size (#19466) 2025-02-22 10:08:16 +00:00
Calcom BotandLingo.dev 6899b853ee feat: update translations via @lingodotdev (#19462)
Co-authored-by: Lingo.dev <support@lingo.dev>
2025-02-21 21:50:02 +00:00
Benny Joo b07d81d0b9 perf: do not use dynamic imports for settings client pages (#19461) 2025-02-21 13:27:27 -07:00
Vijay 22104f8d91 enable_pip_ui in dailyvideo (#19423) 2025-02-21 17:47:00 +00:00
Alex van Andel 26d2decea4 Revert "feat: display alert when leaving/reloading booking page (#18932)"
This reverts commit b0921fe90a.
2025-02-21 17:09:07 +00:00
Benny Joo b6d8dc0bd6 wip (#19446) 2025-02-21 16:51:24 +00:00
GitHub Actions 7c0cdcfc6d chore: release v5.0.5
Post release / release (push) Canceled after 0s
2025-02-21 16:12:41 +00:00
Anik Dhabal Babu ad23613599 fix: Issues in custom event name (#19405)
* fix: Issues in custom event name

* Update event.ts
2025-02-21 15:25:48 +00:00
luzpaz 71598a4389 fix: typos in packages/ui (#19434)
Found via `codespell -q 3 -S "*.svg,./apps/web/public/static/locales,./packages/app-store/stripepayment/lib/currencyOptions.ts,./packages/lib/freeEmailDomainCheck/freeEmailDomains.ts" -L afterall,atleast,datea,fo,incase,ist,nam,notin,optionel,perview,reccuring`
2025-02-21 15:06:49 +00:00
Hariom Balhara 2ce1828841 chore: More salesforce logs (#19409)
* More logs

* fix ts issue
2025-02-21 20:14:28 +05:30
Udit Takkar b287f7e047 docs: add help section for creating phone only event type (#19440)
* docs: add help section for creating phone only event type

* chore: add not
2025-02-21 15:25:28 +01:00
Benny Joo c2be796a5b chore: remove deprecated code, Meta & MetaProvider (#19407)
* chore: remove deprecated code Meta, MetaProvider

* fix type checks
2025-02-21 09:01:44 -05:00
Somay ChauhanandUdit Takkar 829bb63eb9 fix: skip confirm step followup (#19076)
* Fix: Resolved double-click issue on timeSlot in Booker Atom

* fix: show toast on booking error

* fix: type error

* Prevent the automatic change of bookerState when all fields are filled.

* fix: when a user clicks on a new timeslot, any previously displayed "Confirm" button should be hidden

* Update useSkipConfirmStep.ts

* fix: remove 2 states for slots

* Update useSlotsForDate.ts

* fix types

* use common types

* fix: show VerifyCodeDialog and RedirectToInstantMeetingModal when skiping confirm step

* fix for instant bookings

---------

Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
2025-02-21 19:07:54 +05:30
Alex van Andel 07accf700e refactor: Enabling typescript 5.3.3 in @calcom/trpc (#19394)
* Refactors related to enabling typescript 5.3.3 in @calcom/trpc

* Also skip respective tests (obviously logic is broken)

* This causes problems for some reason, revert

* Bring back QueryCell as it's used by atoms
2025-02-21 13:22:31 +00:00
Rajiv Sahal 46f73e79c1 fix: booking fields being overridden whenever saving with atom (#19339)
* fix booking fields not saving properly

* fixup
2025-02-21 12:42:11 +01:00
Udit Takkar b0921fe90a feat: display alert when leaving/reloading booking page (#18932)
* feat: display alert when leaving/reloading booking page

* feat: add recurring booking as well

* refactor: use use callback

* chore: add comment
2025-02-21 10:20:05 +00:00
Anik Dhabal Babu 3c956dd8e8 fix (#19399) 2025-02-21 08:56:23 +00:00
luzpaz 197a7ba6e9 fix: typos in packages/features (#19220)
Found via `codespell -q 3 -S "*.svg,./apps/web/public/static/locales,./packages/app-store/stripepayment/lib/currencyOptions.ts,./packages/lib/freeEmailDomainCheck/freeEmailDomains.ts" -L afterall,atleast,datea,fo,incase,ist,nam,notin,optionel,perview,reccuring`

Closes #19219
2025-02-21 05:14:57 -03:00
Lauris Skraucis e6daed762b feat: v2 routing forms responses endpoints (#19319)
* wip: routing forms responses

* refactor structure

* Revert "refactor structure"

This reverts commit b641c06592cd9314008e81c4584039bd42393ac7.

* routing forms

* remove unused file
2025-02-21 13:38:00 +05:30
Eunjae Lee 0b3aa4fd34 fix: preserve columnVisibility from initialState (#19412) 2025-02-21 08:56:51 +01:00
Pavan NaikandTushar Bhatt 4a6704c934 fix occurences issues in booking page (#19304)
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-02-21 07:55:32 +00:00
Hariom Balhara fbcfc35621 fix crash due to an invalid state of connected field that was deleted (#19421) 2025-02-21 11:32:51 +05:30
GitHub Actions 0d2ec20f66 chore: release v5.0.4
Post release / release (push) Canceled after 0s
2025-02-20 22:50:23 +00:00
Benny JooandKeith Williams 01fc501cb9 chore: Block POST requests to all page routes except a whitelist (#19346)
* chore: block POST requests to next.js routes except a whitelist

* update config.matcher

---------

Co-authored-by: Keith Williams <keithwillcode@gmail.com>
2025-02-20 17:19:35 -03:00
Nayan Bagale 1be002c33c fix: Issues with scheduling timezone change without end time (#19103)
* fix: Issues with scheduling timezone change without end time

* test: remove DatePicker component tests

* feat: implement DatePicker component with tests and update button data-testid
2025-02-20 19:19:55 +00:00
Benny Joo 8a4b03833d chore: remove org/team booking routes from middleware (#19349)
* chore: remove user routes from middleware

* chore: remove org and team routes from middleware
2025-02-20 15:30:13 -03:00
Calcom BotandLingo.dev 8714dda047 feat: update translations via @lingodotdev (#19417)
Co-authored-by: Lingo.dev <support@lingo.dev>
2025-02-20 18:18:14 +00:00
5b89123307 fix: fix youtube link and referral url (#19410)
* feat: Add 'Monobot CX' web application into cal.com app-store

* rollback yarn.lock

* fix: youtube link

* fix: change redirect url

* fix: config change redirect url

---------

Co-authored-by: Volodymyr Gusakovskyi <v.gusakovskyi@asferro.com>
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-02-20 17:48:47 +00:00
Benny Joo 3221379584 chore: remove user routes from middleware (#19345) 2025-02-20 14:39:40 -03:00
Amit SharmaandTushar Bhatt 578f5dc16b feat: implement mintlify AI search into CMD+K (#18749)
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-02-20 16:07:13 +00:00
amritandTushar Bhatt 3f042a1077 fix: reduce abnormal spacing in calendar invite (#19290)
* fix: reduce abnormal spacing in calendar invite

* add test for CalEventParser's getRichDescription

---------

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-02-20 21:27:33 +05:30
Anik Dhabal Babu a44e7b2371 fix: multiselect is broken (#19351) 2025-02-20 13:22:34 +00:00
Hariom Balhara b06a94ab57 More dry run fixes (#18865) 2025-02-20 10:21:28 +00:00
Rajiv Sahal ec55454e43 separate phone input for web and platform (#19396) 2025-02-20 10:23:59 +01:00
Hariom Balhara 9ec0217858 chore: Add logs more (#19397) 2025-02-20 10:17:05 +01:00
amrit 66d69f5a06 fix: impersonation button alignment (#19383) 2025-02-20 06:45:45 +00:00
GitHub Actions b7b58c2dc7 chore: release v5.0.3
Post release / release (push) Canceled after 0s
2025-02-19 22:38:11 +00:00
Vachmara de1e19ee6d fix: Intercom app - book an event inside the messenger (#19391) 2025-02-19 21:21:22 +00:00
mintlify[bot] a366cb7c89 Documentation edits made through Mintlify web editor (#19084)
Co-authored-by: mintlify[bot] <109931778+mintlify[bot]@users.noreply.github.com>
2025-02-19 14:33:22 +00:00
yuriisilkov1986andVolodymyr Gusakovskyi dac336894c feat: Add 'Monobot CX' web application into cal.com app-store (#18505)
* feat: Add 'Monobot CX' web application into cal.com app-store

* rollback yarn.lock

---------

Co-authored-by: Volodymyr Gusakovskyi <v.gusakovskyi@asferro.com>
2025-02-19 13:40:07 +00:00
Harshit Singh 373c17a46d fix: Improved EventsLimit page for mobile viewports (#19270)
* Fixed mobile responsiveness UI  bugs

* Minor fix
2025-02-19 18:50:34 +05:30
Peer Richelsen 4c00c1ac2b added millis ai (#19357) 2025-02-19 18:20:47 +05:30
Özer 050a030ff0 fix(ui): prevent text descender cutoff in user dropdown (#19309) 2025-02-19 12:44:21 +00:00
Benny Joo dfb2232a59 chore: deprecate requiresLicense = true (#19374) 2025-02-19 13:33:03 +01:00
Amit SharmaandAnik Dhabal Babu 984ccf7c80 feat: Duration select dropdown multiple durations email embed (#17432)
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-02-19 12:29:52 +00:00
Hariom Balhara e87168322c fix: Dont crash entire listing if one form has faulty JSON fields (#19368)
* Dont hit members matching endpoint for regular team forms

* fix tests

* Dont crash and instead show the form in readonly mode
2025-02-19 11:05:29 +00:00
Anwar Sadath bf9e9b4ae1 fix: Show loading indicator when delete account API is in progress (#19361) 2025-02-19 10:20:20 +00:00
Peer Richelsen 6d4b05cf1d Update README.md 2025-02-19 10:48:15 +01:00
Peer Richelsen bd1af4027f Update README.md 2025-02-19 10:47:45 +01:00
Peer Richelsen 3872175393 Update LICENSE 2025-02-19 10:27:35 +01:00
Peer Richelsen 5ca063d4e8 Update custom-css.mdx 2025-02-19 10:24:27 +01:00
Peer Richelsen 112aa8201f Update introduction.mdx 2025-02-19 10:22:21 +01:00
Hariom Balhara 17fcc2c213 fix: Test preview - Routing forms crash for regular teams(that are not sub-teams) (#19353) 2025-02-19 08:20:26 +00:00
amritandPeer Richelsen d3f1dc1b32 fix: tanstack getRight error, focus in user impersonation, missing space after input fields, border in my-profile email (#19350)
* fix: shadow after email and before the primary label

* fix: autofill input shadow in impersonation view

* fix: improve spacing and layout in EditUserForm

* fix: error due to getRight

---------

Co-authored-by: Peer Richelsen <peeroke@gmail.com>
2025-02-19 13:23:11 +05:30
Hariom BalharaandhbjORbj 25f3368fa1 fix: Plain Chat loading in embed (#19348)
* PlainChat has to be on dashboard and not on booking pages

* improve useIsBookingPage

---------

Co-authored-by: hbjORbj <sldisek783@gmail.com>
2025-02-19 06:40:32 +00:00
9a271f397b fix: empty hosts array in filterHostsByLeadThreshold (#19343)
* return early if hosts is empty

* feedback

Co-authored-by: Alex van Andel <me@alexvanandel.com>

---------

Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
2025-02-18 18:19:44 +00:00
GitHub Actions 6847781a7f chore: release v5.0.2
Post release / release (push) Canceled after 0s
2025-02-18 16:07:40 +00:00
amritandPeer Richelsen 2d9a3bd741 fix: EditLocationDialog footer positioning and structure (#19335)
* fix: EditLocationDialog footer positioning and structure

* fix: make RescheduleDialog footer layout and button structure right

* fix: input dialogue glitch now works great

* made tests happy

---------

Co-authored-by: Peer Richelsen <peeroke@gmail.com>
2025-02-18 15:23:40 +00:00
649faf4ff6 fix: Fairness when routing (#18550)
* Partial push of new filters

* Let's always return the passed host array when a filter doesn't need to be applied

* fix: isFixed typing in same round robin host check

* Add main bulk of rewritten logic for routed fairness support

* Remove console.log

* Add getAttributeWithEnabledWeights to AttributeRepository

* Add OOO entry repository

* Use getOrderedListOfLuckyUsers in lead threshold filtering

* Shortfall already includes weight

* test against minShortfall

* first attempt to fix fallbacks

* Added testcase updates

* Partially fix filterHosts test

* Some test updates

* Removed email field from normalization

* fix no available users found error

* fix unit test

* remove fallback from same host reschedule return

* fixes and improvements for findQualifiedHosts

* include fallback logic in handleNewBooking

* use fallback in handleNewBooking

* fix for contact owner in handleNewBooking

* WIP - comment

* pass routingFormResponseId

* fix type error

* pass routingFormResponse

* fixes in treshold logic

* remove reason

* merge qualified and fallback availabilities

* fix type error

* add and fix tests

* clean up test file

* fix filterHostsBySameRoundRobinHost tests

* fix findQualifiedHosts.test.ts

* fix getRoutedUsers.test.ts

* fix tests

* fix isRerouting check

* fix start time for two weeks check

* fix fallback hosts

* fix test

* fallback hosts should also include qualified hosts

* fix type error

* fix typos

* add contact owner to fallbacks

* fix typo

* fix qualifiedRRUsers

* set fixed users when no hosts

* add tets + code clean up

* add test for reschedule with same host

* fix typo

* add more tests for findQualifiedHosts

* remove skip from test

* add comment

* remove unused code

* fix fallback users in loadAndValidateUsers

* improve naming for fallback

* rename missed fallback variable

* fix reschedule with same rr host in handleNewBooking

* fixes for fallback slots

* add more tests + small fixes for contact owner

* fix tests and type errors

* add logs for fallback

* add type:json to logger

* Fix small merge issue

* fix end time if two weeks are cut off

* add more tests for contact owner availability check

* add new logic for two weeks fallback

* fix reschedule same RR host test

---------

Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
2025-02-18 14:59:48 +00:00
Peer Richelsen 03346f04ed chore: fixed tooltip position for routing form (#19267)
* fixed tooltip position for routing form

* fixed offset
2025-02-18 14:11:09 +00:00
Anik Dhabal BabuandUdit Takkar 99260974f4 fix: Issues with date changes in column view (#19258)
* fix: coulmn view date change

* Update store.ts

---------

Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
2025-02-18 18:46:46 +05:30
Peer Richelsen 4a493c0a0e chore: v3 fixed filters, new profile view (#19312)
* fixed filters with badge

* aligned recurrence in bookings

* removed new badge

* new profile view

* fixed try for free button

* fixed form input
2025-02-18 12:23:30 +00:00
Benny Joo 47435c36ff fix: redirect logic in /settings/admin/apps (#19332) 2025-02-18 11:24:13 +00:00
Benny Joo 599744b31c chore: remove WithLayout from not-found.tsx (#19331) 2025-02-18 11:07:16 +00:00
Amit SharmaandTushar Bhatt d2c4c45137 fix: Can't use unsaved booking question as variable in event name (#18604)
Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-02-18 16:11:40 +05:30
Benny Joo 43ba47a122 perf: Use one PageWrapper instance for all settings pages (#18752)
* add a layoutfile to use-page-wrapper route group

* refactor and move bookings status page to route group

* improve logic in pagesAndRewritePaths

* fix

* add use client directive

* move /403 and /500

* move /auth/error

* move /connect-and-join

* move /enterprise

* move /maintenance

* move /more

* move /upgrade

* chore: remove WithLayout from 8 low-risk single pages (#18745)

* move /403 and /500

* move /auth/error

* move /connect-and-join

* move /enterprise

* move /maintenance

* move /more

* move /upgrade

* move /availability pages

* move /event-types pages

* move /insights pages

* move /apps to use-page-wrapper group

* move /getting-started to use-page-wrapper group

* move /signup to use-page-wrapper group

* move /workflows to use-page-wrapper group

* move /video pages to use-page-wrapper group

* pass dehydratedState in layout

* pass dehydratedState in layout

* move settings/(settings-layout) to use-page-wrapper

* move settings/(admin-layout) to use-page-wrapper

* move remaining settings pages to (use-page-wrapper)

* fix test

* remove unused code

* remove unused files

* fix type check

* remove test tag

* remove page

* RSC should not default export client components
2025-02-18 04:43:25 -05:00
amritandTushar Bhatt 0048b2d92c feat: make first tab active by default (#19315)
* feat: make first tab active by default

* perf: optimize event types tabs rendering with useMemo

---------

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-02-18 14:42:03 +05:30
amrit 9dc0570d38 fix: timezone input text is now visible in dark mode (#19325) 2025-02-18 05:46:10 +00:00
Anik Dhabal Babu 1fbfca958a fix (#19298) 2025-02-18 11:08:10 +05:30
Joe Au-Yeung 7a6c93795a feat: Create UserCreationService and use in API V1 create user endpoint (#19150)
* Create `createUser` method in `userCreationService`

* Refactor `UserRepository` create method to accept prisma input and remove business logic

* API use `UserCreationService`

* Move slugify to service

* Use hashPassword instead

* Type fixes in `UserCreationService`

* Add `userCreationService` tests

* API accept data object

* Type fixes

* Add user _post test

* Add test for locked user

* Add locked param to log

* Add user repository tests

* Do not return locked status

* Explicitly pass `locked` prop

* Fix tests when locked isn't returned

* Fix tests

* Pass locked prop

* Edit test name

* Use logger

* Fix passing hashed password
2025-02-17 22:30:39 -05:00
GitHub Actions 4481b232cc chore: release v5.0.1
Post release / release (push) Canceled after 0s
2025-02-17 20:02:39 +00:00
Alex van Andel 84b265cd54 refactor: Clean out old code, no longer needed (#19323)
* refactor: Clean out old code, no longer needed

* Removed a sneaky one keen to stay behind
2025-02-17 19:39:20 +00:00
Rajiv Sahal eb86064995 feat: atoms adjustments with ui v3 styles (#19320) 2025-02-17 16:58:47 +02:00
Sanchit TewariandTushar Bhatt 39fdf5a74e feat: prevent automatic query parameters when opening booking page (#18132)
- Resolve the user hindrance where the event's booking page should not have search parameters such as date and month in the initial page load
- Contains changes for the fix of issue #18094 as well as it is needed

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-02-17 14:41:00 +00:00
Tushar BhattandAnik Dhabal Babu f28c605b50 fix: bulk-update-in-scheduleId-in-detailed-view (#19295)
* fix: bulk-update-in-scheduleId-in-detailed-view

* minor-change

---------

Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-02-17 14:39:27 +00:00
Anik Dhabal Babu 63d26c4fba fix: Can't change availability for managed event type (#19006)
* fix: flaky test organization.spec

* fix
2025-02-17 13:59:39 +00:00
Eunjae Lee 14bba343a4 fix: nested scrolls on /bookings (#19284) 2025-02-17 10:25:42 +01:00
amrit e441f3308f fix: cut off and alignment bug (#19317)
* fix: assignment label cut-off

* fix: add all team members label is vertically aligned
2025-02-17 08:21:26 +00:00
Benny Joo b4aad453cd chore: migrate api for team upgrade to App Router (#19100)
* remove old pages router api

* add new app router api

* fix

* fix redirect

* refactor
2025-02-17 12:07:13 +05:30
Benny JooandHariom Balhara dc7a1c4680 chore: migrate /apps/routing-forms/[...pages] to App Router (#18956)
* wip

* fix

* fix

* refactor

* rename to routingServerSidePropsConfig

* refactor

* refactor

* add routing-link to useIsBookingPage hook

* remove Head component

* fix

* redirect user to apps/routing-forms/forms if user goes to apps/routing-forms

* refactor

* remove log

* remove client component not needed

* clean up code

* remove unneeded metadata

* clean up further

* clean up further 2

* fix type check

* routing-link does not need shell

* Fix title for Routing Form public link and also remove any

* Remove ; in HTML

* Remove unnecessary page reload

---------

Co-authored-by: Hariom Balhara <hariombalhara@gmgmail.com>
2025-02-17 11:15:54 +05:30
Anik Dhabal Babu fd651133c2 fix flake (#19306) 2025-02-16 07:27:34 -03:00
GitHub Actions f0d2a1a051 chore: release v5.0.0
Post release / release (push) Canceled after 0s
2025-02-15 10:26:34 +00:00
Tushar Bhatt 62c7627775 fix: removing-all-members-toggle-for-fh (#19277)
* fix : removing all members toggle for fh

* ux enhancements

* adding placeholder
2025-02-15 10:14:56 +00:00
be53a20429 feat: Use Folders to organize SMS links on Dub (#19248)
* feat: Use Folders to organize SMS links on Dub

* Update yarn.lock

---------

Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
Co-authored-by: Bailey Pumfleet <bailey@pumfleet.co.uk>
2025-02-15 10:06:28 +00:00
Benny JooandAnik Dhabal Babu 5c6f52f1d4 perf: separate client vs server code from insights layout (#19285)
* add UpgradeTipWrapper

* refactor insights/layout.tsx

---------

Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
2025-02-15 06:43:37 -03:00
Carina WollendorferandCarinaWolli 0e9e3e5012 add ireland country code (#19117)
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
2025-02-15 06:28:44 -03:00
5d709cf63c feat: v3 of UI components (#19136)
* ui playground

* add types to ui

* push avatar ignore ts and eslint errors

* feat: V3 UI avatar  (#18997)

* avatar playground

* add overflow-hidden back for loading indicator

* update lock

* feat: v3/badge  (#18999)

* badge intro

* fix text on small badge

* add dark mode warning

* feat: v3/button (#19014)

* TOC

* wip buttons

* shadows

* secondary

* semantic colours

* minimal buttons

* update disabled states

* checkbox

* dropdown v3

* load icons

* fix design sections

* fix icon gap

* fix

* remove client component from rsc

* use peer as avatar

* gif

* fix button gap - dropdown iocn

* support start icon in dropdowns

* add alert demo + v3 component + darken semantic text

* base inputs and text field

* wip input

* input field addon/suffix

* toast page

* wip select

* match designs for input and select rounded

* fix

* fix select isloading transform

* fix multi icons transition rotation

* fix group heading

* range slider demo + range slider

* range slider popover design

* v3 dialog

* fix slider thumb size

* wrap in suspense for useSearchParam difference in next14+

* base of tabs + horizontal tabs

* fix select sizing to match input 36px

* fix dark mode hover on button

* target domState class for light/dark so we work on portal elements

* fix default bg on popover

* lightmode toasts + eleveation token

* empty screen

* intro to split button concept

* mass colour updates

* intro to themes

* remove i18n from label with name

* bouncy buttons

* feat: small select

* nav item dumb component

* full demo

* settings demo

* fix tabs

* fix mt

* fix dropdown feedback from loom

* alert fixes mentioned in loom

* push font-cal

* move to fumadocs

* fix avatar

* colors table

* add typeography

* icon + spacing guide

* add border radius and shadow tables

* fix colours and border radius

* remove prose undline via fumas fork

* fix icon buttons sizes

* button group component

* fix horizontal tabs

* tab fixes

* switches

* pagination component

* show toasts components raw

* sync with airtable

* add use client

* 10px on input again

* 10px in select also

* fix input height

* fix files merge

* fix loading state for icon buttons

* fix button fab

* Enable addon to now overflow to next line in DS

* use cal font for dialog text

* add avatar square variant

* fix select padding and menu size

* fix type errors

* fix type errors

* add switch small size and fix type errors

* fix ref types on input

* update web styles

* remove addonFilled to fix type errors

* push dialog fixes

* fix checkbox display

* remove prose from alert examples

* remove prose from all our component examples

* badge rounded-lg on lg size

* update colors

* force w/h on icon buttons instead of inheriting

* remove border-focus

* remove border-focus from tailwind config

* update tokens to match new colours

* add new border subtle tokens and add to toasts

* fix lg button padding

* fix and drastically improve rtl rests

* multi select use badges

* use badge design for select pills

* fix avatar alignment

* fix tests and remove redudant ones

* fix tests and remove redudant ones

* update atoms globals css

* extract tokens.css

* extract app.css

* force flex for atoms

* add @calcom/ui/css

* revert ui playground styles abstraction

* fix input focus states

* fix focus states for buttons

* feat: v3/app work (#19233)

* globals.css for app + event types listing search

* few app wide NITS

* fix select foucs within styling

* fix formbuilder switch styles

* fix disabled state of nested inputs

* workflow fixes

* webhook form fixes

* i18n on tabs info

* booking filters + tab

* fix filters spacing

* make first item so we get correct border radius if not default

* round radio group in create event types + make button small

* profile page

* update editor br

* button nits in existing places in the app

* fix timezone select and multilist in guest form

* fix text area on public booking page

* size small event types create

* margin on routing filter

* filters improvments

* routing insights fixes

* fix date filter range

* ooo fixes

* fix teams/members bulk actions

* create team UI

* i18n in useTabs instead of in tab component now

* Add event type setup border to availability

* fix bulk actions on org members table

* onboarding fixes

* fix input types with ref stripe comparision

* i18n fixes for platform

* update globals of atoms

* fix form builder firstname/lastname switch + correct footer useage

* fix select

* Revert "add @calcom/ui/css"

This reverts commit 0dd8f9012907a278cfede4a98f289cb0744c9244.

* revert tokens css

* Revert "extract app.css"

This reverts commit 10b998604816ad3310c24b36a02a638dabc5be24.

* linear nits

* workflow dropdown

* fix page theme heading sizes to match cards

* fix stepper for team creation

* adjust margin to FilterSearchField

* fix ooo icon

* fix booker and dark mode due to darkgray 50

* more dark mode fixes

* add size prop

---------

Co-authored-by: Eunjae Lee <hey@eunjae.dev>
Co-authored-by: Morgan Vernay <morgan@cal.com>

* remove ui-playground

* fix grow missing from merge

* add search icon data-test-id back to search

* fix FormAction style

* fix datatestid for apps and tabs

* change selector for team invitation e2e

* fix use data-testid from item instaed of using names

* rename upper case O

* fix unit tests data-testid

* fix unit tests data-testid

* more data-testid changes

* add data-testid to apps tab

* data-testid to installed appPage

* fix embed tests

* fix filter-popover-trigger

* use text-error and use dataId for locator

* more e2e improvment

* pass in single testId as button is now duplicate

* show field-error instead

* add test to eventtype tabs

* Add css vars to embed too\

* add scrollbar and change dialog overlay colour

* fix type

* use attribute instead of class for tab detection

* await promise

* use new tokens for sprite generation

* add correct testing Ids to e2e instead of button:text

* use testIds for creation of orgs

* Webhook receiver wait for 10 seconds

---------

Co-authored-by: Eunjae Lee <hey@eunjae.dev>
Co-authored-by: Morgan Vernay <morgan@cal.com>
Co-authored-by: Hariom <hariombalhara@gmail.com>
Co-authored-by: Joe Au-Yeung <j.auyeung419@gmail.com>
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com>
2025-02-14 16:31:21 -05:00
MorganandBailey Pumfleet 0f67faeef3 chore: calendars controller v2 docs (#19291)
Co-authored-by: Bailey Pumfleet <bailey@pumfleet.co.uk>
2025-02-14 17:54:23 +00:00
1ff4f557f6 fix: flaky test (#19294)
Post release / release (push) Canceled after 0s
* fix: flaky test

* fix another test

* update

---------

Co-authored-by: Eunjae Lee <hey@eunjae.dev>
Co-authored-by: unknown <adhabal2002@gmail.com>
2025-02-14 16:25:54 +00:00
GitHub Actions 7e2c0bd29e chore: release v4.9.13 2025-02-14 16:25:10 +00:00
Alex van Andel 5b59cf9d9c revert: Reapply "fix: Multiple rr-hosts combine to create erroneous availabil… (#19263)
* Reapply "fix: Multiple rr-hosts combine to create erroneous availability (#18772)"

This reverts commit 5dbc6d9ca6.

* Only thing left is a diff to show which slots are removed

* Add logging around time slot results

* Setup logging through axiom

* .... forgot

* fix: type errors

* Only log when there are differences

* Updated from old which had a failing test to new logic
2025-02-14 12:34:56 -03:00
Lauris Skraucis d5420eda00 chore: disable v2 booking seats safe parse error logs (#19292) 2025-02-14 10:59:10 +00:00
c17ac67b3f feat: add CSAT to V2 bookings return (#19278)
* init

* test: v2 bookings returns rating

---------

Co-authored-by: supalarry <laurisskraucis@gmail.com>
Co-authored-by: Lauris Skraucis <lauris.skraucis@gmail.com>
2025-02-14 09:47:54 +00:00
VijayandPeer Richelsen b2763a6274 fix: Default people filter in bookings list for admin (#18035)
* default people filter for admin

* chore

* type check

* added test case

* made test concise to reduce flakiness

* add timeout to wait for second get response before counting

* update timeout

---------

Co-authored-by: Peer Richelsen <peeroke@gmail.com>
2025-02-14 10:08:57 +01:00
Morgan 08b6f60407 fix: missing await router controller (#19276) 2025-02-13 21:38:43 +00:00
466b3e4c08 fix: Salesforce - if no contact throw Error (#19271)
* Throw error if no contact is passed to createEvent

* chore: update error message

* chore

---------

Co-authored-by: Udit Takkar <udit222001@gmail.com>
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
2025-02-13 16:01:46 -05:00
GitHub Actions 401209810a chore: release v4.9.12
Post release / release (push) Canceled after 0s
2025-02-13 17:53:44 +00:00
Benny Joo 9f34a840d0 chore: Refactor to remove getServerSideProps for /teams route (#19286)
* remove getServerSideProps

* refactor teams route
2025-02-13 17:46:56 +00:00
Udit Takkar 37f1535e1a refactor: remove depreceated fields (#19279)
* refactor: remove depreceated fields

* chore: use v2 endpoint

* chore: update V2 Api type

* chore
2025-02-13 17:34:33 +02:00
Lauris Skraucis 5dc81e8677 feat: v2 slots new version (#18758)
* refactor: version old slots

* feat: init new slots endpoints

* chore: range format

* fix: duratin

* fix: duratin

* test: slot releaseAt

* refactor: reserve slot response

* refactor variable name

* docs: have new slots controller in docs

* feat: crud for slots reservations

* refactor: use exclude all for response

* docs

* chore: slots input service

* refactor mini

* refactor: remove unused imports

* docs

* handle orgSlug for dynamic events

* refactor: correct name

* docs

* add optional organizationSlug to BySlug search

* refactor: slot output format

* refactor: return seated slot info

* docs

* rename functions

* refactor: slots seated response

* fix: handle same username in org and non org

* refactor: test format

* fix: allow reservationDuration only for authed requests

* chore: check if auth user has permissions to define custom reservation duration

* refactor: split e2e test files

* refactor: invalid request exception codes

* chore: old slots controller uses all old versions
2025-02-13 14:17:00 +00:00
Eunjae Lee 5a166ee430 fix: remove section on /bookings if no data exists (#19261) 2025-02-13 11:40:17 +01:00
Hariom BalharaandHariom Balhara f6f964d495 feat: Use new /routing URL for routing forms (#19235)
* feat: Use new /routing URL for routing forms

* Fixes

* Fix bug

* precent crash

---------

Co-authored-by: Hariom Balhara <hariombalhara@gmgmail.com>
2025-02-13 15:13:13 +05:30
Joe Au-Yeung 6364e85293 Handle cancelled status (#19272) 2025-02-13 12:59:41 +05:30
GitHub Actions 46add2bebc chore: release v4.9.11
Post release / release (push) Canceled after 0s
2025-02-12 19:22:01 +00:00
Syed Ali Shahbaz 8ada940dc7 hotfix (#19266) 2025-02-12 19:16:52 +00:00
d027f8004a perf: Move PlainChat up the hierarchy to remove rerenders (#19255)
* perf: Move PlainChat up the hierarchy to remove rerenders

* rmeove yarn lock

---------

Co-authored-by: Nizzy <nizabizaher@gmail.com>
Co-authored-by: nizzy <140507264+nizzyabi@users.noreply.github.com>
2025-02-12 19:13:54 +00:00
Udit Takkar cc2f16411b feat: add country code (#19264) 2025-02-12 20:09:37 +01:00
nizzy 15b58c1c13 fix: added youtube videos to tips.tsx sidebar (#19245)
* added youtube videos to tips.tsx sidebar

* replace video links with dubco go.cal.com links for tracking
2025-02-12 21:04:38 +05:30
Eunjae Lee 2d12ea7372 fix: path to impersonation page on side bar (#19260) 2025-02-12 13:43:30 +00:00
Eunjae Lee 06bf9cfbfe fix: indicate hidden columns on filter dropdown (#19259) 2025-02-12 13:33:10 +00:00
Alex van Andel 5dbc6d9ca6 Revert "fix: Multiple rr-hosts combine to create erroneous availability (#18772)"
This reverts commit f5dc22f145.
2025-02-12 13:15:04 +00:00
Morgan 486e3a386e chore: salesforce for Router / Booker atoms and api v2 (#19217)
* wip

* small refactor

* small refactor

* fixup! Merge branch 'main' into enable-salesforce-router-apiv2-atom

* crm props

* fixup! crm props

* bump platform libraries

* bump platform libraries
2025-02-12 15:04:38 +02:00
Tushar Bhatt 3a29327761 fix: overlapping-dropdown-bookings-page (#19216) 2025-02-12 10:45:47 +00:00
Benny Joo 4f226cd653 chore: remove unneeded props from AuthContainer and make its usages cleaner (#19191)
* refactor AuthContainer by removing app-dir related props

* fix
2025-02-12 05:19:16 -05:00
Benny Joo 207804bd97 perf: remove WithLayout HOC from private booking page and booking embed (#19189) 2025-02-12 11:15:08 +01:00
Benny Joo 7969789d60 wip (#19190) 2025-02-12 05:06:53 -05:00
Lauris Skraucis 67fb0e6719 fix: v2 slots not returning attendees and bookingUid info (#18858)
* fix: v2 slots not returning attendees and bookingUid info

* rename file

* finish merge main
2025-02-12 15:06:52 +05:30
Anik Dhabal Babuandsean-brydon 7f390b147a fix: CTA is hidden on mobile (#19241)
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
2025-02-12 09:26:08 +00:00
Benny Joo 1dc869971e fix: small ui bug in 404 pages (#19254) 2025-02-12 08:30:00 +00:00
Joe Au-YeungandUdit Takkar 3fe83bb45c fix: Salesforce bugs (#19250)
* incompleteBooking only search for leads if contact is not found

* Fix logic

* Abstract to functions

---------

Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
2025-02-12 08:24:57 +00:00
Benny Joo 4fbeff31e7 fix: decode params used in query object in buildLegacyCtx (#19253)
* fix: decode params used in query object in buildLegacyCtx

* add tests

* fix
2025-02-12 07:58:46 +00:00
GitHub Actions e800341485 chore: release v4.9.10
Post release / release (push) Canceled after 0s
2025-02-11 19:48:09 +00:00
Alex van Andel f5dc22f145 fix: Multiple rr-hosts combine to create erroneous availability (#18772)
* wip: Open draft PR with passing test (should fail)

* Fix aggregatedAvailability by not merging rr host availability

* Added test for validating fixed host behaviour

* Add test for combined rr and fixed hosts

* Check date-ranges arent returned multiple times when offered by multiple rr hosts

* Also sort date ranges

* Adding failing test that should result in 5 slots, but returns 7 as it returns the same slots twice.

* Slots returns duplicate slots for overlapping date ranges

* As mergeOverlappingDateRanges enabled the unified start time, we need to reproduce this

* Do not 'prettify' slots to the same degree if they fall on different days

* Added test to prove an end date before start also works

* Use a string instead of number as key

* chore: Deprecate organizerTimeZone, effectively unused

* Adjust all dateRanges similarly

* Bring back eventTimeZone

* Remove adjustDateRanges in favour of slot generation changes

* Convert to tz after all logic is finished.

* clearer code flow

* Remove console.log + add failing test due to inverse order

* Address issue with inversion when date ranges are given out of order
2025-02-11 19:35:56 +00:00
Keith WilliamsandJoe Au-Yeung 4fd31db6ee perf: Use a limit for searching website in Salesforce (#19244)
* perf: Avoid leading wildcard for Salesforce

* use limit of 1 since we need 1 record

* use LOWER to check exact website match

* Revert the usage of LOWER since we need wider searches

* Add limits to queries

* Update packages/app-store/salesforce/lib/CrmService.ts

* Remove unneeded LIMIT statements

* Update packages/app-store/salesforce/lib/CrmService.ts

* Apply suggestions from code review

* Update packages/app-store/salesforce/lib/CrmService.ts

---------

Co-authored-by: Joe Au-Yeung <j.auyeung419@gmail.com>
2025-02-11 19:17:23 +00:00
Keith Williams f58d3cf837 revert: "fix: bookings for guests added by organizer get cancelled wh… (#19243)
This reverts commit e29b42a02b.
2025-02-11 14:53:03 +00:00
Keith Williams fc79ea898a chore: Update CODEOWNERS to include more booking files (#19240) 2025-02-11 15:08:28 +01:00
Eunjae Lee 5a602f10e6 fix: select "Your account" for members by default on insights (#19236) 2025-02-11 12:39:40 +00:00
Kartik SainiandTushar Bhatt e29b42a02b fix: bookings for guests added by organizer get cancelled when rescheduled (#17820)
* fix: bookings for guests added by organizer get cancelled when rescheduled

* chore

---------

Co-authored-by: Tushar Bhatt <95581504+TusharBhatt1@users.noreply.github.com>
2025-02-11 17:56:09 +05:30
Benny Joo cdb57eaa59 fix: get user loggedin if accouont is found + add better error handling for new user creation (#19229) 2025-02-11 11:41:18 +00:00
Peer Richelsen 662ba8dfc6 chore: added impersonation to sidebar for admins (#19228) 2025-02-11 11:39:09 +00:00
Hariom BalharaandHariom Balhara 552d88ad6d Fallback if embedLibUrl is empty string (#19223)
Co-authored-by: Hariom Balhara <hariombalhara@gmgmail.com>
2025-02-11 14:56:31 +05:30
Lauris Skraucis 08bcc77e2c feat: v2 GET bookings updated at filters and sort (#19133)
* fix: make Booking.updatedAt update automatically

* feat: return updatedAt by bookings endpoints

* feat: GET bookings beforeUpdatedAt, afterUpdatedAt, sortUpdated params

* docs: api

* chore: bump platform-libraries

* refactor: sortUpdated -> sortUpdatedAt query param

* chore: delete wrong migration
2025-02-11 08:39:50 +00:00
anushka-0099 c211f181fc fix: the wprd on confirm booking button in japanese (#19230) 2025-02-11 04:16:05 +00:00
Rajiv SahalandMorgan Vernay cc6016aef3 chore: atoms and docs update (#19137)
* hide docs for old google connect endpoint

* update docs for atoms

* fix css styles for week view

* update v2 reference

* add dutch translations in cal provider

* fix: add nl i18n in BaseCalProvider

---------

Co-authored-by: Morgan Vernay <morgan@cal.com>
2025-02-10 20:05:28 +00:00
Pavan NaikandPavan 77d0fa9ff8 fix: the set as default apps issue with links #19176 (#19198)
* fix the set as default apps issue with links

* Allow (. _ -) in the Mirotalk link

---------

Co-authored-by: Pavan <pavannaik20@gmail.com>
2025-02-10 20:29:22 +01:00
Eunjae LeeandBenny Joo 720136fcf9 fix: replace filter implementations on /insights (#19033)
* fix: replace filter implementations on /insights

* add authorization for teamIds

* replace all the implementations

* provide eventTypeId

* remove log

* fix teamId for isAll

* fix Download button

* remove legacy implementations

* clean up

* nullish check

* remove unusable filters

* revert style

* fix type error

* fix e2e test

* fix type error

* fix type error

* fix e2e

* extract util method

* fix type error

* fix type error

* fix type error

---------

Co-authored-by: Benny Joo <sldisek783@gmail.com>
2025-02-10 20:28:48 +01:00
Benny Joo 9bf3732717 fix: RSC boundary error from auth/oauth2/authorize (#19226) 2025-02-10 19:18:25 +00:00
3687 changed files with 140961 additions and 63249 deletions
+47 -10
View File
@@ -17,6 +17,7 @@
#
# To enable enterprise-only features please add your environment variable to the .env file then make your way to /auth/setup to select your license and follow instructions.
CALCOM_LICENSE_KEY=
# Signature token for the Cal.com License API (used for self-hosted integrations)
# We will give you a token when we provide you with a license key this ensure you and only you can communicate with the Cal.com License API for your license key
@@ -116,6 +117,11 @@ NEXT_PUBLIC_PLAIN_CHAT_ID=
PLAIN_CHAT_HMAC_SECRET_KEY=
NEXT_PUBLIC_PLAIN_CHAT_EXCLUDED_PATHS=
# Dub Config
DUB_API_KEY=
NEXT_PUBLIC_DUB_PROGRAM_ID=
# Zendesk Config
NEXT_PUBLIC_ZENDESK_KEY=
@@ -192,7 +198,10 @@ NEXT_PUBLIC_IS_PREMIUM_NEW_PLAN=0
NEXT_PUBLIC_STRIPE_PREMIUM_NEW_PLAN_PRICE=
STRIPE_TEAM_MONTHLY_PRICE_ID=
STRIPE_TEAM_PRODUCT_ID=
# It is a price ID in the product with id STRIPE_ORG_PRODUCT_ID
STRIPE_ORG_MONTHLY_PRICE_ID=
STRIPE_ORG_PRODUCT_ID=
STRIPE_WEBHOOK_SECRET=
STRIPE_WEBHOOK_SECRET_APPS=
STRIPE_PRIVATE_KEY=
@@ -285,7 +294,7 @@ NEXT_PUBLIC_AVAILABILITY_SCHEDULE_INTERVAL=
# use organizations
ORGANIZATIONS_ENABLED=
NEXT_PUBLIC_ORGANIZATIONS_MIN_SELF_SERVE_SEATS=30
NEXT_PUBLIC_ORGANIZATIONS_SELF_SERVE_PRICE=3700 # $37.00 per seat
NEXT_PUBLIC_ORGANIZATIONS_SELF_SERVE_PRICE_NEW=37 # $37.00 per seat
# This variable should only be set to 1 or true if you want to autolink external provider sign-ups with
# existing organizations based on email domain address
@@ -353,13 +362,6 @@ E2E_TEST_OIDC_USER_PASSWORD=
# ***********************************************************************************************************
# provide a value between 0 and 100 to ensure the percentage of traffic
# redirected from the legacy to the future pages
AB_TEST_BUCKET_PROBABILITY=50
APP_ROUTER_APPS_SLUG_SETUP_ENABLED=0
APP_ROUTER_APPS_ENABLED=0
APP_ROUTER_TEAM_ENABLED=0
# disable setry server source maps
SENTRY_DISABLE_SERVER_WEBPACK_PLUGIN=1
@@ -388,6 +390,12 @@ BLACKLISTED_GUEST_EMAILS=
NEXT_PUBLIC_VAPID_PUBLIC_KEY=
VAPID_PRIVATE_KEY=
# Mintlify chat api
# Power AI chat in for docs
NEXT_PUBLIC_MINTLIFY_CHAT_API_KEY=
NEXT_PUBLIC_CHAT_API_URL=
NEXT_PUBLIC_DOCS_URL=
# Custom privacy policy / terms URLs (for self-hosters: change to your privacy policy / terms URLs)
NEXT_PUBLIC_WEBSITE_PRIVACY_POLICY_URL=
NEXT_PUBLIC_WEBSITE_TERMS_URL=
@@ -396,8 +404,17 @@ NEXT_PUBLIC_WEBSITE_TERMS_URL=
# [0: silly & upwards, 1: trace & upwards, 2: debug & upwards, 3: info & upwards, 4: warn & upwards, 5: error & fatal, 6: fatal]
NEXT_PUBLIC_LOGGER_LEVEL=
# Used to use Replexica SDK, a tool for real-time AI-powered localization
REPLEXICA_API_KEY=
# For storing Daily Video recordings on S3 Bucket
CAL_VIDEO_BUCKET_NAME=
CAL_VIDEO_BUCKET_REGION=
CAL_VIDEO_ASSUME_ROLE_ARN=
# For local testing of Daily Video
# Set this to the link of a working Daily Video meeting link
CAL_VIDEO_MEETING_LINK_FOR_TESTING=
# Used to use lingo.dev SDK, a tool for real-time AI-powered localization
LINGO_DOT_DEV_API_KEY=
# Comma-separated list of DSyncData.directoryId to log SCIM API requests for. It can be enabled temporarily for debugging the requests being sent to SCIM server.
DIRECTORY_IDS_TO_LOG=
@@ -406,3 +423,23 @@ DIRECTORY_IDS_TO_LOG=
# Set this when Cal.com is used to serve only one organization's booking pages
# Read more about it in the README.md
NEXT_PUBLIC_SINGLE_ORG_SLUG=
AKISMET_API_KEY=
## Env variables related to avoiding booking failures
# Request for checking reservation would be attempted to send every these seconds if the request is stale at that time
NEXT_PUBLIC_QUERY_RESERVATION_INTERVAL_SECONDS=
# Request for checking reservation of same slot would be sent only after this time has passed. It must be lower than PUBLIC_QUERY_RESERVATION_INTERVAL_SECONDS
NEXT_PUBLIC_QUERY_RESERVATION_STALE_TIME_SECONDS=
# Query available slots interval - Should be kept high in minutes as it could cause significant load on the system
NEXT_PUBLIC_QUERY_AVAILABLE_SLOTS_INTERVAL_SECONDS=
# Used to invalidate available slots when navigating to booking form
NEXT_PUBLIC_INVALIDATE_AVAILABLE_SLOTS_ON_BOOKING_FORM=0
# Used to enable quick availability checks for x% of all visitors
NEXT_PUBLIC_QUICK_AVAILABILITY_ROLLOUT=10
# Deprecated. Use NEXT_PUBLIC_BODY_SCRIPTS instead. NEXT_PUBLIC_HEAD_SCRIPTS are now injected into the body only.
NEXT_PUBLIC_HEAD_SCRIPTS=
NEXT_PUBLIC_BODY_SCRIPTS=
DATABASE_CHUNK_SIZE=
+8 -4
View File
@@ -1,4 +1,6 @@
/apps/api/**/* @calcom/Platform
/**/package.json @calcom/Foundation
/apps/api/**/* @calcom/Platform @calcom/Foundation
/apps/web/**/layout.tsx @calcom/Foundation
/deploy/**/* @calcom/Foundation
/infra/**/* @calcom/Foundation
/packages/app-store/applecalendar/**/* @calcom/Foundation
@@ -12,9 +14,11 @@
/packages/app-store/larkcalendar/**/* @calcom/Foundation
/packages/app-store/office365calendar/**/* @calcom/Foundation
/packages/app-store/zohocalendar/**/* @calcom/Foundation
/packages/core/getUserAvailability.ts @calcom/Foundation
/packages/features/bookings/lib/handleNewBooking/**/* @calcom/Foundation
/packages/features/bookings/lib/**/* @calcom/Foundation
/packages/lib/getAggregatedAvailability.ts @calcom/Foundation
/packages/lib/getUserAvailability.ts @calcom/Foundation
/packages/lib/server/getLuckyUser.ts @calcom/Foundation
/packages/lib/slots.ts @calcom/Foundation
/packages/platform/**/* @calcom/Platform
/packages/platform/**/* @calcom/Platform @calcom/Foundation
/packages/prisma/**/* @calcom/Foundation
/packages/trpc/server/routers/viewer/slots/**/* @calcom/Foundation
+58
View File
@@ -0,0 +1,58 @@
---
name: Cal.com/platform request
about: Suggest a feature or bug report for cal.com/platform
title: ""
labels: ["platform", "🚨 needs approval"]
assignees: ""
---
### Is your proposal related to a problem?
<!--
Provide a clear and concise description of what the problem is.
For example, "I'm always frustrated when..."
-->
(Write your answer here.)
### Describe the solution you'd like
<!--
Provide a clear and concise description of what you want to happen.
-->
(Describe your proposed solution here.)
### Describe alternatives you've considered
<!--
Let us know about other solutions you've tried or researched.
-->
(Write your answer here.)
### Additional context
<!--
Is there anything else you can add about the proposal?
You might want to link to related issues here, if you haven't already.
-->
(Write your answer here.)
### Requirement/Document
<!--
Is there any type of document that could support that feature?
-->
(Share it here.)
---
##### House rules
- If this issue has a `🚨 needs approval` label, don't start coding yet. Wait until a core member approves feature request by removing this label, then you can start coding.
- For clarity: Non-core member issues automatically get the `🚨 needs approval` label.
- Your feature ideas are invaluable to us! However, they undergo review to ensure alignment with the product's direction.
- Follow Best Practices lined out in our [Contributor Docs](https://github.com/calcom/cal.com/blob/main/CONTRIBUTING.md)
+13 -3
View File
@@ -5,9 +5,19 @@
- Fixes #XXXX (GitHub issue number)
- Fixes CAL-XXXX (Linear issue number - should be visible at the bottom of the GitHub issue description)
<!-- Please provide a loom video for visual changes to speed up reviews
Loom Video: https://www.loom.com/
-->
## Visual Demo (For contributors especially)
A visual demonstration is strongly recommended, for both the original and new change **(video / image - any one)**.
#### Video Demo (if applicable):
- Show screen recordings of the issue or feature.
- Demonstrate how to reproduce the issue, the behavior before and after the change.
#### Image Demo (if applicable):
- Add side-by-side screenshots of the original and updated change.
- Highlight any significant change(s).
## Mandatory Tasks (DO NOT REMOVE)
+1 -1
View File
@@ -14,7 +14,7 @@ description: "Run yarn install with node_modules linker and cache enabled"
inputs:
node_version:
required: false
default: v18.x
default: v20.x
runs:
using: "composite"
@@ -1,3 +1,5 @@
# deprecated - use smtp with tasker instead */
name: Cron - scheduleEmailReminders
on:
+1 -1
View File
@@ -35,7 +35,7 @@ jobs:
working-directory: docs
run: |
export NODE_OPTIONS="--max_old_space_size=8192"
npm install -g mintlify
npm install -g mintlify@4.0.436
mintlify dev &
sleep 5 # Let it run for 5 seconds
kill $!
+1 -1
View File
@@ -17,7 +17,7 @@ env:
NEXTAUTH_URL: ${{ secrets.CI_NEXTAUTH_URL }}
NODE_OPTIONS: --max-old-space-size=29000
REDIS_URL: "redis://localhost:6379"
REPLEXICA_API_KEY: ${{ secrets.CI_REPLEXICA_API_KEY }}
LINGO_DOT_DEV_API_KEY: ${{ secrets.CI_LINGO_DOT_DEV_API_KEY }}
STRIPE_PRIVATE_KEY: ${{ secrets.CI_STRIPE_PRIVATE_KEY }}
STRIPE_API_KEY: ${{ secrets.CI_STRIPE_PRIVATE_KEY }}
STRIPE_CLIENT_ID: ${{ secrets.CI_STRIPE_CLIENT_ID }}
+1 -1
View File
@@ -21,5 +21,5 @@ jobs:
env:
GH_TOKEN: ${{ secrets.GH_ACCESS_TOKEN }}
with:
api-key: ${{ secrets.CI_REPLEXICA_API_KEY }}
api-key: ${{ secrets.CI_LINGO_DOT_DEV_API_KEY }}
pull-request: true
+1 -1
View File
@@ -2,7 +2,7 @@ name: Unit
on:
workflow_call:
env:
REPLEXICA_API_KEY: ${{ secrets.CI_REPLEXICA_API_KEY }}
LINGO_DOT_DEV_API_KEY: ${{ secrets.CI_LINGO_DOT_DEV_API_KEY }}
permissions:
contents: read
jobs:
+1
View File
@@ -96,3 +96,4 @@ apps/auth
!.yarn/releases
!.yarn/sdks
!.yarn/versions
i18n.cache
+1 -1
View File
@@ -1 +1 @@
v18
20
+8
View File
@@ -0,0 +1,8 @@
undecided:
- calcom-monorepo
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
- "@calcom/prisma"
+8
View File
@@ -0,0 +1,8 @@
undecided:
- calcom-monorepo
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
- "@calcom/prisma"
View File
View File
+2
View File
@@ -0,0 +1,2 @@
undecided:
- "@calcom/prisma"
+2
View File
@@ -0,0 +1,2 @@
undecided:
- "@calcom/prisma"
View File
+2
View File
@@ -0,0 +1,2 @@
undecided:
- "@calcom/prisma"
+8
View File
@@ -0,0 +1,8 @@
undecided:
- calcom-monorepo
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
- "@calcom/prisma"
View File
View File
+3
View File
@@ -0,0 +1,3 @@
undecided:
- calcom-monorepo
- "@calcom/prisma"
+6
View File
@@ -0,0 +1,6 @@
undecided:
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
View File
+2
View File
@@ -0,0 +1,2 @@
undecided:
- "@calcom/prisma"
+2
View File
@@ -0,0 +1,2 @@
undecided:
- "@calcom/prisma"
+8
View File
@@ -0,0 +1,8 @@
undecided:
- calcom-monorepo
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
- "@calcom/prisma"
View File
+7
View File
@@ -0,0 +1,7 @@
undecided:
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
- "@calcom/prisma"
+2
View File
@@ -0,0 +1,2 @@
undecided:
- "@calcom/prisma"
+8
View File
@@ -0,0 +1,8 @@
undecided:
- calcom-monorepo
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
- "@calcom/prisma"
+8
View File
@@ -0,0 +1,8 @@
undecided:
- calcom-monorepo
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
- "@calcom/prisma"
+8
View File
@@ -0,0 +1,8 @@
undecided:
- calcom-monorepo
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
- "@calcom/prisma"
+2
View File
@@ -0,0 +1,2 @@
undecided:
- "@calcom/prisma"
+2
View File
@@ -0,0 +1,2 @@
undecided:
- "@calcom/prisma"
+7
View File
@@ -0,0 +1,7 @@
undecided:
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
- "@calcom/prisma"
+8
View File
@@ -0,0 +1,8 @@
undecided:
- calcom-monorepo
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
- "@calcom/prisma"
+8
View File
@@ -0,0 +1,8 @@
undecided:
- calcom-monorepo
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
- "@calcom/prisma"
+8
View File
@@ -0,0 +1,8 @@
undecided:
- calcom-monorepo
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
- "@calcom/prisma"
View File
+3
View File
@@ -0,0 +1,3 @@
undecided:
- calcom-monorepo
- "@calcom/prisma"
+6
View File
@@ -0,0 +1,6 @@
undecided:
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
+2
View File
@@ -0,0 +1,2 @@
undecided:
- "@calcom/prisma"
+3
View File
@@ -0,0 +1,3 @@
undecided:
- calcom-monorepo
- "@calcom/prisma"
+8
View File
@@ -0,0 +1,8 @@
undecided:
- calcom-monorepo
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
- "@calcom/prisma"
+8
View File
@@ -0,0 +1,8 @@
undecided:
- calcom-monorepo
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
- "@calcom/prisma"
View File
View File
View File
+2
View File
@@ -0,0 +1,2 @@
undecided:
- "@calcom/prisma"
View File
View File
+3
View File
@@ -0,0 +1,3 @@
undecided:
- calcom-monorepo
- "@calcom/prisma"
+8
View File
@@ -0,0 +1,8 @@
undecided:
- calcom-monorepo
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
- "@calcom/prisma"
+2
View File
@@ -0,0 +1,2 @@
undecided:
- "@calcom/prisma"
+8
View File
@@ -0,0 +1,8 @@
undecided:
- calcom-monorepo
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
- "@calcom/prisma"
+3
View File
@@ -0,0 +1,3 @@
undecided:
- calcom-monorepo
- "@calcom/prisma"
+9
View File
@@ -0,0 +1,9 @@
undecided:
- calcom-monorepo
- "@calcom/api-v2"
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
- "@calcom/prisma"
+3
View File
@@ -0,0 +1,3 @@
undecided:
- calcom-monorepo
- "@calcom/prisma"
+8
View File
@@ -0,0 +1,8 @@
undecided:
- calcom-monorepo
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
- "@calcom/prisma"
+8
View File
@@ -0,0 +1,8 @@
undecided:
- calcom-monorepo
- "@calcom/app-store-cli"
- "@calcom/platform-constants"
- "@calcom/platform-enums"
- "@calcom/platform-types"
- "@calcom/platform-utils"
- "@calcom/prisma"
+2
View File
@@ -0,0 +1,2 @@
undecided:
- "@calcom/prisma"
+69 -156
View File
@@ -1,43 +1,76 @@
# Contributing to Cal.com
Contributions are what makes the open source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.
## House rules
## House Rules (for PRs and Issues)
- Before submitting a new issue or PR, check if it already exists in [issues](https://github.com/calcom/cal.com/issues) or [PRs](https://github.com/calcom/cal.com/pulls).
- GitHub issues: take note of the `🚨 needs approval` label.
- **For Contributors**:
- Feature Requests: Wait for a core member to approve and remove the `🚨 needs approval` label before you start coding or submit a PR.
- Bugs, Security, Performance, Documentation, etc.: You can start coding immediately, even if the `🚨 needs approval` label is present. This label mainly concerns feature requests.
- **Our Process**:
- Issues from non-core members automatically receive the `🚨 needs approval` label.
- We greatly value new feature ideas. To ensure consistency in the product's direction, they undergo review and approval.
### 👥 Prevent Work Duplication
Before submitting a new issue or PR, check if it already exists in the [Issues](https://github.com/calcom/cal.com/issues) or [Pull Requests](https://github.com/calcom/cal.com/pulls).
### ✅ Work Only on Approved Issues
For feature requests, please wait for a core team member to approve and remove the `🚨 needs approval` label before you start coding or submitting a PR.
For bugs, security, performance, documentation, etc., you can start coding immediately—even if the `🚨 needs approval` label is present.
We highly value new feature ideas, but to maintain consistency in the product direction, they must go through a review and approval process.
### 🚫 Don’t Just Drop a Link
Avoid posting third-party links (e.g., Slack threads or Linear tickets) without context. A GitHub issue or PR should stand on its own—reviewers shouldn’t have to chase information across multiple tools to understand the context.
### 👀 Think Like a Reviewer
Put yourself in the reviewer’s shoes. What would you want to know if reading this for the first time? Are there key decisions, goals, or constraints that need clarification? Does the PR assume knowledge that isn’t obvious? Are there related issues or previous PRs that should be linked?
### 🧵 Bring in Context from Private Channels
If the task originated from a private conversation (e.g., Slack), take a moment to extract the relevant details and include them in the GitHub issue or PR. Avoid sharing sensitive information, but make sure important reasoning is captured.
> Example:
> “A user requested feature X to solve problem Y. I considered approaches A, B, and C, but chose C for the following reasons…”
### 📚 Treat It Like Documentation
GitHub is a shared source of truth. Every issue and PR contributes to the long-term understanding of the codebase. Write clearly enough that someone—possibly you—can revisit it months later and still understand what happened and why.
### ✅ Summarize Your PR at the Top
Even if the code changes are minor or self-explanatory, a short written summary helps reviewers quickly understand the intent. You can use GitHub Copilot’s auto-summarize feature, but make sure to verify it for accuracy and relevance.
### 🔗 Use GitHub Keywords to Auto-Link Issues
Use phrases like “Closes #123” or “Fixes #456” in your PR descriptions. This automatically links your PR to the related issue and closes it once merged—keeping everything traceable and organized.
### 🧪 Mention What Was Tested (and How)
Explain how you validated your changes. It doesn’t need to be exhaustive—just enough to give reviewers confidence that things were tested and work as expected.
> Example:
> “Tested locally with mock data and confirmed the flow works on staging.”
### 🧠 Assume Future-You Won’t Remember
Write with the future in mind. If there are trade-offs, edge cases, or temporary workarounds, document them clearly so they don’t get lost or misinterpreted later.
## Priorities
<table>
<tr>
<td>
Type of Issue
</td>
<td>
Priority
</td>
<td><strong>Type of Issue</strong></td>
<td><strong>Priority</strong></td>
</tr>
<tr>
<td>
Minor improvements, non-core feature requests
</td>
<td>Minor improvements, non-core feature requests</td>
<td>
<a href="https://github.com/calcom/cal.com/issues?q=is:issue+is:open+sort:updated-desc+label:%22Low+priority%22">
<img src="https://img.shields.io/badge/-Low%20Priority-green">
</a>
</td>
</tr>
<tr>
<td>
Confusing UX (... but working)
</td>
<tr>
<td>Confusing UX (but still functional)</td>
<td>
<a href="https://github.com/calcom/cal.com/issues?q=is:issue+is:open+sort:updated-desc+label:%22Medium+priority%22">
<img src="https://img.shields.io/badge/-Medium%20Priority-yellow">
@@ -45,9 +78,7 @@ Contributions are what makes the open source community such an amazing place to
</td>
</tr>
<tr>
<td>
Core Features (Booking page, availability, timezone calculation)
</td>
<td>Core Features (Booking page, availability, timezone calculation)</td>
<td>
<a href="https://github.com/calcom/cal.com/issues?q=is:issue+is:open+sort:updated-desc+label:%22High+priority%22">
<img src="https://img.shields.io/badge/-High%20Priority-orange">
@@ -55,9 +86,7 @@ Contributions are what makes the open source community such an amazing place to
</td>
</tr>
<tr>
<td>
Core Bugs (Login, Booking page, Emails are not working)
</td>
<td>Core Bugs (Login, Booking page, Emails not working)</td>
<td>
<a href="https://github.com/calcom/cal.com/issues?q=is:issue+is:open+sort:updated-desc+label:Urgent">
<img src="https://img.shields.io/badge/-Urgent-red">
@@ -68,59 +97,7 @@ Contributions are what makes the open source community such an amazing place to
## Developing
The development branch is `main`. This is the branch that all pull
requests should be made against. The changes on the `main`
branch are tagged into a release monthly.
To develop locally:
1. [Fork](https://github.com/calcom/cal.com/fork/) this repository to your
own GitHub account and then
[clone](https://help.github.com/articles/cloning-a-repository/) it to your local device.
2. Create a new branch:
```sh
git checkout -b MY_BRANCH_NAME
```
3. Install yarn:
```sh
npm install -g yarn
```
4. Install the dependencies with:
```sh
yarn
```
5. Set up your `.env` file:
- Duplicate `.env.example` to `.env`.
- Use `openssl rand -base64 32` to generate a key and add it under `NEXTAUTH_SECRET` in the `.env` file.
- Use `openssl rand -base64 32` to generate a key and add it under `CALENDSO_ENCRYPTION_KEY` in the `.env` file.
6. Setup Node
If your Node version does not meet the project's requirements as instructed by the docs, "nvm" (Node Version Manager) allows using Node at the version required by the project:
```sh
nvm use
```
You first might need to install the specific version:
```sh
nvm install
```
You can install nvm from [here](https://github.com/nvm-sh/nvm).
7. Start developing and watch for code changes:
```sh
yarn dev
```
[See README](https://github.com/calcom/cal.com#development)
## Building
@@ -130,23 +107,19 @@ You can build the project with:
yarn build
```
Please be sure that you can make a full production build before pushing code.
Please ensure that you can make a full production build before pushing code.
## Testing
More info on how to add new tests coming soon.
### Running tests
### Running Tests
This will run and test all flows in multiple Chromium windows to verify that no critical flow breaks:
[See README](https://github.com/calcom/cal.com#e2e-testing)
```sh
yarn test-e2e
```
#### Resolving Issues
#### Resolving issues
##### E2E test browsers not installed
##### E2E Test Browsers Not Installed
Run `npx playwright install` to download test browsers and resolve the error below when running `yarn test-e2e`:
@@ -166,68 +139,8 @@ If you get errors, be sure to fix them before committing.
## Making a Pull Request
- Be sure to [check the "Allow edits from maintainers" option](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/allowing-changes-to-a-pull-request-branch-created-from-a-fork) while creating your PR.
- If your PR refers to or fixes an issue, be sure to add `refs #XXX` or `fixes #XXX` to the PR description. Replacing `XXX` with the respective issue number. See more about [Linking a pull request to an issue](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue).
- Be sure to fill the PR Template accordingly.
- Review [App Contribution Guidelines](./packages/app-store/CONTRIBUTING.md) when building integrations
## Guidelines for committing yarn lockfile
Do not commit your `yarn.lock` unless you've made changes to the `package.json`. If you've already committed `yarn.lock` unintentionally, follow these steps to undo:
If your last commit has the `yarn.lock` file alongside other files and you only wish to uncommit the `yarn.lock`:
```bash
git checkout HEAD~1 yarn.lock
git commit -m "Revert yarn.lock changes"
```
_NB_: You may have to bypass the pre-commit hook with by appending `--no-verify` to the git commit
If you've pushed the commit with the `yarn.lock`:
1. Correct the commit locally using the above method.
2. Carefully force push:
```bash
git push origin <your-branch-name> --force
```
If `yarn.lock` was committed a while ago and there have been several commits since, you can use the following steps to revert just the `yarn.lock` changes without impacting the subsequent changes:
1. **Checkout a Previous Version**:
- Find the commit hash before the `yarn.lock` was unintentionally committed. You can do this by viewing the Git log:
```bash
git log yarn.lock
```
- Once you have identified the commit hash, use it to checkout the previous version of `yarn.lock`:
```bash
git checkout <commit_hash> yarn.lock
```
2. **Commit the Reverted Version**:
- After checking out the previous version of the `yarn.lock`, commit this change:
```bash
git commit -m "Revert yarn.lock to its state before unintended changes"
```
3. **Proceed with Caution**:
- If you need to push this change, first pull the latest changes from your remote branch to ensure you're not overwriting other recent changes:
```bash
git pull origin <your-branch-name>
```
- Then push the updated branch:
```bash
git push origin <your-branch-name>
```
Lastly, make sure to keep the branches updated (e.g. click the `Update branch` button on GitHub PR).
- Be sure to [check the "Allow edits from maintainers" option](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/allowing-changes-to-a-pull-request-branch-created-from-a-fork) when creating your PR. (This option isn't available if you're [contributing from a fork belonging to an organization](https://github.com/orgs/community/discussions/5634))
- If your PR refers to or fixes an issue, add `refs #XXX` or `fixes #XXX` to the PR description. Replace `XXX` with the respective issue number. See more about [linking a pull request to an issue](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue).
- Fill out the PR template accordingly.
- Review the [App Contribution Guidelines](./packages/app-store/CONTRIBUTING.md) when building integrations.
- Lastly, make sure to keep your branches updated (e.g., click the `Update branch` button on the GitHub PR page).
+15 -13
View File
@@ -24,6 +24,7 @@
<p align="center">
<a href="https://www.producthunt.com/products/cal-com"><img src="https://img.shields.io/badge/Product%20Hunt-%231%20Product%20of%20the%20Month-%23DA552E" alt="Product Hunt"></a>
<img src="https://api.checklyhq.com/v1/badges/groups/1120718?style=flat&theme=default" alt="Checkly QA">
<a href="https://status.cal.com"><img height="20px" src="https://betteruptime.com/status-badges/v1/monitor/a9kf.svg" alt="Uptime"></a>
<a href="https://github.com/calcom/cal.com/stargazers"><img src="https://img.shields.io/github/stars/calcom/cal.com" alt="Github Stars"></a>
<a href="https://news.ycombinator.com/item?id=34507672"><img src="https://img.shields.io/badge/Hacker%20News-%231-%23FF6600" alt="Hacker News"></a>
@@ -172,24 +173,25 @@ yarn dx
```
#### Development tip
1. Add `export NODE_OPTIONS=“--max-old-space-size=16384”` to your shell script to increase the memory limit for the node process. Alternatively, you can run this in your terminal before running the app. Replace 16384 with the amount of RAM you want to allocate to the node process.
Add `NEXT_PUBLIC_LOGGER_LEVEL={level}` to your .env file to control the logging verbosity for all tRPC queries and mutations.\
Where {level} can be one of the following:
2. Add `NEXT_PUBLIC_LOGGER_LEVEL={level}` to your .env file to control the logging verbosity for all tRPC queries and mutations.\
Where {level} can be one of the following:
`0` for silly \
`1` for trace \
`2` for debug \
`3` for info \
`4` for warn \
`5` for error \
`6` for fatal
`0` for silly \
`1` for trace \
`2` for debug \
`3` for info \
`4` for warn \
`5` for error \
`6` for fatal
When you set `NEXT_PUBLIC_LOGGER_LEVEL={level}` in your .env file, it enables logging at that level and higher. Here's how it works:
When you set `NEXT_PUBLIC_LOGGER_LEVEL={level}` in your .env file, it enables logging at that level and higher. Here's how it works:
The logger will include all logs that are at the specified level or higher. For example: \
The logger will include all logs that are at the specified level or higher. For example: \
- If you set `NEXT_PUBLIC_LOGGER_LEVEL=2`, it will log from level 2 (debug) upwards, meaning levels 2 (debug), 3 (info), 4 (warn), 5 (error), and (fatal) will be logged. \
- If you set `NEXT_PUBLIC_LOGGER_LEVEL=3`, it will log from level 3 (info) upwards, meaning levels 3 (info), 4 (warn), 5 (error), and 6 (fatal) will be logged, but level 2 (debug) and level 1 (trace) will be ignored. \
- If you set `NEXT_PUBLIC_LOGGER_LEVEL=2`, it will log from level 2 (debug) upwards, meaning levels 2 (debug), 3 (info), 4 (warn), 5 (error), and (fatal) will be logged. \
- If you set `NEXT_PUBLIC_LOGGER_LEVEL=3`, it will log from level 3 (info) upwards, meaning levels 3 (info), 4 (warn), 5 (error), and 6 (fatal) will be logged, but level 2 (debug) and level 1 (trace) will be ignored. \
```sh
echo 'NEXT_PUBLIC_LOGGER_LEVEL=3' >> .env
+14 -14
View File
@@ -1,4 +1,3 @@
import type { Page } from "@playwright/test";
import { test, expect } from "@playwright/test";
test.describe("Org", () => {
@@ -8,14 +7,16 @@ test.describe("Org", () => {
const response = await page.goto("https://i.cal.com/embed");
expect(response?.status()).toBe(200);
await page.screenshot({ path: "screenshot.jpg" });
await expectPageToBeRenderedWithEmbedSsr(page);
const body = await response?.text();
await expectPageToBeRenderedWithEmbedSsr(body);
});
test("Org User(Rick) Page should be embeddable", async ({ page }) => {
const response = await page.goto("https://i.cal.com/team-rick/embed");
expect(response?.status()).toBe(200);
await expect(page.locator("text=Used by Checkly")).toBeVisible();
await expectPageToBeRenderedWithEmbedSsr(page);
const body = await response?.text();
await expectPageToBeRenderedWithEmbedSsr(body);
});
test("Org User Event(/team-rick/test-event) Page should be embeddable", async ({ page }) => {
@@ -23,14 +24,16 @@ test.describe("Org", () => {
expect(response?.status()).toBe(200);
await expect(page.locator('[data-testid="decrementMonth"]')).toBeVisible();
await expect(page.locator('[data-testid="incrementMonth"]')).toBeVisible();
await expectPageToBeRenderedWithEmbedSsr(page);
const body = await response?.text();
await expectPageToBeRenderedWithEmbedSsr(body);
});
test("Org Team Profile(/sales) page should be embeddable", async ({ page }) => {
const response = await page.goto("https://i.cal.com/sales/embed");
expect(response?.status()).toBe(200);
await expect(page.locator("text=Cal.com Sales")).toBeVisible();
await expectPageToBeRenderedWithEmbedSsr(page);
const body = await response?.text();
await expectPageToBeRenderedWithEmbedSsr(body);
});
test("Org Team Event page(/sales/hippa) should be embeddable", async ({ page }) => {
@@ -38,7 +41,8 @@ test.describe("Org", () => {
expect(response?.status()).toBe(200);
await expect(page.locator('[data-testid="decrementMonth"]')).toBeVisible();
await expect(page.locator('[data-testid="incrementMonth"]')).toBeVisible();
await expectPageToBeRenderedWithEmbedSsr(page);
const body = await response?.text();
await expectPageToBeRenderedWithEmbedSsr(body);
});
});
@@ -68,7 +72,8 @@ test.describe("Org", () => {
test("Organization Homepage - Has Engineering and Marketing Teams", async ({ page }) => {
const response = await page.goto("https://i.cal.com");
expect(response?.status()).toBe(200);
await expect(page.locator("text=Cal.com")).toBeVisible();
// Somehow there are two Cal.com text momentarily, but shouldn't be the concern of this check
await expect(page.locator("text=Cal.com").first()).toBeVisible();
await expect(page.locator("text=Engineering")).toBeVisible();
await expect(page.locator("text=Marketing")).toBeVisible();
});
@@ -95,11 +100,6 @@ test.describe("Org", () => {
});
// This ensures that the route is actually mapped to a page that is using withEmbedSsr
async function expectPageToBeRenderedWithEmbedSsr(page: Page) {
expect(
await page.evaluate(() => {
//@ts-expect-error - __NEXT_DATA__ is a global variable defined by Next.js
return window.__NEXT_DATA__.props.pageProps.isEmbed;
})
).toBe(true);
async function expectPageToBeRenderedWithEmbedSsr(responseText: string | undefined) {
expect(responseText).toContain('\\"isEmbed\\":true');
}
+3 -2
View File
@@ -2,6 +2,7 @@ API_KEY_PREFIX=cal_
DATABASE_URL="postgresql://postgres:@localhost:5450/calendso"
NEXT_PUBLIC_WEBAPP_URL=http://localhost:3000
# Get it in console.cal.com
# Get CALCOM_LICENSE_KEY here: https://go.cal.com/get-license
CALCOM_LICENSE_KEY=""
NEXT_PUBLIC_API_V2_ROOT_URL=http://localhost:5555
NEXT_PUBLIC_API_V2_ROOT_URL=http://localhost:5555
+2 -12
View File
@@ -113,7 +113,7 @@ We use it in several ways, but mainly, we first import the auto-generated schema
We have some shared validations which several resources require, like baseApiParams which parses apiKey in all requests, or querIdAsString or TransformParseInt which deal with the id's coming from req.query.
- **[*]BaseBodyParams** that omits any values from the model that are too sensitive or we don't want to pick when creating a new resource like id, userId, etc.. (those are gotten from context or elswhere)
- **[*]BaseBodyParams** that omits any values from the model that are too sensitive or we don't want to pick when creating a new resource like id, userId, etc.. (those are gotten from context or elsewhere)
- **[*]Public** that also omits any values that we don't want to expose when returning the model as a response, which we parse against before returning all resources.
@@ -190,16 +190,6 @@ We make sure of this by not using next in dev, but next build && next start, if
See <https://github.com/vercel/next.js/blob/canary/packages/next/server/dev/hot-reloader.ts#L79>. Here in dev mode OPTIONS method is hardcoded to return only GET and OPTIONS as allowed method. Running in Production mode would cause this file to be not used. This is hot-reloading logic only.
To remove this limitation, we need to ensure that on local endpoints are requested by swagger at /api/v1 and not /v1
## Hosted api through cal.com
> _❗ WARNING: This is still experimental and not fully implemented yet❗_
Go to console.cal.com
Add a deployment or go to an existing one.
Activate API or Admin addon
Provide your `DATABASE_URL`
Now you can call api.cal.com?key=CALCOM_LICENSE_KEY, which will connect to your own databaseUrl.
## How to deploy
We recommend deploying API in vercel.
@@ -218,7 +208,7 @@ Add this command: `./scripts/vercel-deploy.sh`
See `scripts/vercel-deploy.sh` for more info on how the deployment is done.
> _❗ IMORTANT: If you're forking the API repo you will need to update the URLs in both the main repo [`.gitmodules`](https://github.com/calcom/cal.com/blob/main/.gitmodules#L7) and this repo [`./scripts/vercel-deploy.sh`](https://github.com/calcom/api/blob/main/scripts/vercel-deploy.sh#L3) ❗_
> _❗ IMPORTANT: If you're forking the API repo you will need to update the URLs in both the main repo [`.gitmodules`](https://github.com/calcom/cal.com/blob/main/.gitmodules#L7) and this repo [`./scripts/vercel-deploy.sh`](https://github.com/calcom/api/blob/main/scripts/vercel-deploy.sh#L3) ❗_
## Environment variables
+8
View File
@@ -0,0 +1,8 @@
import { setUser as SentrySetUser } from "@sentry/nextjs";
import type { NextMiddleware } from "next-api-middleware";
export const captureUserId: NextMiddleware = async (req, res, next) => {
if (req.userId) SentrySetUser({ id: req.userId });
await next();
};
+7 -4
View File
@@ -2,15 +2,16 @@ import { label } from "next-api-middleware";
import { addRequestId } from "./addRequestid";
import { captureErrors } from "./captureErrors";
import { captureUserId } from "./captureUserId";
import { checkIsInMaintenanceMode } from "./checkIsInMaintenanceMode";
import { extendRequest } from "./extendRequest";
import {
HTTP_POST,
HTTP_DELETE,
HTTP_PATCH,
HTTP_GET,
HTTP_GET_OR_POST,
HTTP_GET_DELETE_PATCH,
HTTP_GET_OR_POST,
HTTP_PATCH,
HTTP_POST,
} from "./httpMethods";
import { rateLimitApiKey } from "./rateLimitApiKey";
import { verifyApiKey } from "./verifyApiKey";
@@ -31,6 +32,7 @@ const middleware = {
extendRequest,
pagination: withPagination,
captureErrors,
captureUserId,
verifyCredentialSyncEnabled,
};
@@ -44,8 +46,9 @@ const middlewareOrder = [
"verifyApiKey",
"rateLimitApiKey",
"addRequestId",
"captureUserId",
] as Middleware[]; // <-- Provide a list of middleware to call automatically
const withMiddleware = label(middleware, middlewareOrder);
export { withMiddleware, middleware, middlewareOrder };
export { middleware, middlewareOrder, withMiddleware };
+2 -1
View File
@@ -8,7 +8,8 @@ import {
_TeamModel,
_UserModel,
} from "@calcom/prisma/zod";
import { extendedBookingCreateBody, iso8601 } from "@calcom/prisma/zod-utils";
import { iso8601 } from "@calcom/prisma/zod-utils";
import { extendedBookingCreateBody } from "@calcom/prisma/zod/custom/booking";
import { schemaQueryUserId } from "./shared/queryUserId";
+3 -1
View File
@@ -1,5 +1,6 @@
import { z } from "zod";
import { MAX_SEATS_PER_TIME_SLOT } from "@calcom/lib/constants";
import slugify from "@calcom/lib/slugify";
import { _EventTypeModel as EventType, _HostModel } from "@calcom/prisma/zod";
import { customInputSchema, eventTypeBookingFields } from "@calcom/prisma/zod-utils";
@@ -22,6 +23,7 @@ const recurringEventInputSchema = z.object({
const hostSchema = _HostModel.pick({
isFixed: true,
userId: true,
scheduleId: true,
});
export const childrenSchema = z.object({
@@ -102,7 +104,7 @@ const schemaEventTypeEditParams = z
.transform((s) => slugify(s))
.optional(),
length: z.number().int().optional(),
seatsPerTimeSlot: z.number().optional(),
seatsPerTimeSlot: z.number().min(1).max(MAX_SEATS_PER_TIME_SLOT).nullable().optional(),
seatsShowAttendees: z.boolean().optional(),
seatsShowAvailabilityCount: z.boolean().optional(),
bookingFields: eventTypeBookingFields.optional(),
+2 -2
View File
@@ -113,7 +113,7 @@ const schemaUserEditParams = z.object({
});
// @note: These are the values that are editable via PATCH method on the user Model,
// merging both BaseBodyParams with RequiredParams, and omiting whatever we want at the end.
// merging both BaseBodyParams with RequiredParams, and omitting whatever we want at the end.
const schemaUserCreateParams = z.object({
email: emailSchema.toLowerCase(),
@@ -137,7 +137,7 @@ const schemaUserCreateParams = z.object({
});
// @note: These are the values that are editable via PATCH method on the user Model,
// merging both BaseBodyParams with RequiredParams, and omiting whatever we want at the end.
// merging both BaseBodyParams with RequiredParams, and omitting whatever we want at the end.
export const schemaUserEditBodyParams = schemaUserBaseBodyParams
.merge(schemaUserEditParams)
.omit({})
+1 -2
View File
@@ -10,7 +10,6 @@ const nextConfig = {
},
transpilePackages: [
"@calcom/app-store",
"@calcom/core",
"@calcom/dayjs",
"@calcom/emails",
"@calcom/features",
@@ -47,7 +46,7 @@ const nextConfig = {
async rewrites() {
return {
afterFiles: [
// This redirects requests recieved at / the root to the /api/ folder.
// This redirects requests received at / the root to the /api/ folder.
{
source: "/v:version/:rest*",
destination: "/api/v:version/:rest*",
+1 -2
View File
@@ -24,7 +24,6 @@
},
"dependencies": {
"@calcom/app-store": "*",
"@calcom/core": "*",
"@calcom/dayjs": "*",
"@calcom/emails": "*",
"@calcom/features": "*",
@@ -34,7 +33,7 @@
"@sentry/nextjs": "^8.8.0",
"bcryptjs": "^2.4.3",
"memory-cache": "^0.2.0",
"next": "^13.5.6",
"next": "^13.5.9",
"next-api-middleware": "^1.0.1",
"next-axiom": "^0.17.0",
"next-swagger-doc": "^0.3.6",
@@ -1,6 +1,6 @@
import type { NextApiRequest } from "next";
import { defaultResponder } from "@calcom/lib/server";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import prisma from "@calcom/prisma";
import { schemaQueryIdAsString } from "~/lib/validations/shared/queryIdString";
+1 -1
View File
@@ -1,6 +1,6 @@
import type { NextApiRequest } from "next";
import { defaultResponder } from "@calcom/lib/server";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import prisma from "@calcom/prisma";
import { apiKeyPublicSchema } from "~/lib/validations/api-key";
@@ -1,6 +1,6 @@
import type { NextApiRequest } from "next";
import { defaultResponder } from "@calcom/lib/server";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import prisma from "@calcom/prisma";
import { apiKeyEditBodySchema, apiKeyPublicSchema } from "~/lib/validations/api-key";
+2 -1
View File
@@ -1,6 +1,7 @@
import type { NextApiRequest, NextApiResponse } from "next";
import { defaultHandler, defaultResponder } from "@calcom/lib/server";
import { defaultHandler } from "@calcom/lib/server/defaultHandler";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import { withMiddleware } from "~/lib/helpers/withMiddleware";
+1 -1
View File
@@ -1,7 +1,7 @@
import type { Prisma } from "@prisma/client";
import type { NextApiRequest } from "next";
import { defaultResponder } from "@calcom/lib/server";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import prisma from "@calcom/prisma";
import type { Ensure } from "@calcom/types/utils";
+1 -1
View File
@@ -4,7 +4,7 @@ import { v4 } from "uuid";
import { generateUniqueAPIKey } from "@calcom/features/ee/api-keys/lib/apiKeys";
import { HttpError } from "@calcom/lib/http-error";
import { defaultResponder } from "@calcom/lib/server";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import prisma from "@calcom/prisma";
import { apiKeyCreateBodySchema, apiKeyPublicSchema } from "~/lib/validations/api-key";
+1 -1
View File
@@ -1,4 +1,4 @@
import { defaultHandler } from "@calcom/lib/server";
import { defaultHandler } from "@calcom/lib/server/defaultHandler";
import { withMiddleware } from "~/lib/helpers/withMiddleware";
@@ -1,6 +1,6 @@
import type { NextApiRequest } from "next";
import { defaultResponder } from "@calcom/lib/server";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import prisma from "@calcom/prisma";
import { schemaQueryIdParseInt } from "~/lib/validations/shared/queryIdTransformParseInt";
+1 -1
View File
@@ -1,6 +1,6 @@
import type { NextApiRequest } from "next";
import { defaultResponder } from "@calcom/lib/server";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import prisma from "@calcom/prisma";
import { schemaAttendeeReadPublic } from "~/lib/validations/attendee";
@@ -2,7 +2,7 @@ import type { NextApiRequest } from "next";
import type { z } from "zod";
import { HttpError } from "@calcom/lib/http-error";
import { defaultResponder } from "@calcom/lib/server";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import prisma from "@calcom/prisma";
import { schemaAttendeeEditBodyParams, schemaAttendeeReadPublic } from "~/lib/validations/attendee";
@@ -1,6 +1,7 @@
import type { NextApiRequest, NextApiResponse } from "next";
import { defaultHandler, defaultResponder } from "@calcom/lib/server";
import { defaultHandler } from "@calcom/lib/server/defaultHandler";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import { withMiddleware } from "~/lib/helpers/withMiddleware";
+1 -1
View File
@@ -2,7 +2,7 @@ import type { Prisma } from "@prisma/client";
import type { NextApiRequest } from "next";
import { HttpError } from "@calcom/lib/http-error";
import { defaultResponder } from "@calcom/lib/server";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import prisma from "@calcom/prisma";
import { schemaAttendeeReadPublic } from "~/lib/validations/attendee";
+1 -1
View File
@@ -1,7 +1,7 @@
import type { NextApiRequest } from "next";
import { HttpError } from "@calcom/lib/http-error";
import { defaultResponder } from "@calcom/lib/server";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import prisma from "@calcom/prisma";
import { schemaAttendeeCreateBodyParams, schemaAttendeeReadPublic } from "~/lib/validations/attendee";
+1 -1
View File
@@ -1,4 +1,4 @@
import { defaultHandler } from "@calcom/lib/server";
import { defaultHandler } from "@calcom/lib/server/defaultHandler";
import { withMiddleware } from "~/lib/helpers/withMiddleware";
@@ -1,6 +1,6 @@
import type { NextApiRequest } from "next";
import { defaultResponder } from "@calcom/lib/server";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import prisma from "@calcom/prisma";
import { schemaQueryIdParseInt } from "~/lib/validations/shared/queryIdTransformParseInt";
@@ -1,6 +1,6 @@
import type { NextApiRequest } from "next";
import { defaultResponder } from "@calcom/lib/server";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import prisma from "@calcom/prisma";
import { schemaAvailabilityReadPublic } from "~/lib/validations/availability";
@@ -1,6 +1,6 @@
import type { NextApiRequest } from "next";
import { defaultResponder } from "@calcom/lib/server";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import prisma from "@calcom/prisma";
import {
@@ -1,6 +1,7 @@
import type { NextApiRequest, NextApiResponse } from "next";
import { defaultHandler, defaultResponder } from "@calcom/lib/server";
import { defaultHandler } from "@calcom/lib/server/defaultHandler";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import { withMiddleware } from "~/lib/helpers/withMiddleware";
@@ -1,7 +1,7 @@
import type { NextApiRequest } from "next";
import { HttpError } from "@calcom/lib/http-error";
import { defaultResponder } from "@calcom/lib/server";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import prisma from "@calcom/prisma";
import {
@@ -1,4 +1,4 @@
import { defaultHandler } from "@calcom/lib/server";
import { defaultHandler } from "@calcom/lib/server/defaultHandler";
import { withMiddleware } from "~/lib/helpers/withMiddleware";
+2 -2
View File
@@ -1,9 +1,9 @@
import type { NextApiRequest } from "next";
import { z } from "zod";
import { getUserAvailability } from "@calcom/core/getUserAvailability";
import { getUserAvailability } from "@calcom/lib/getUserAvailability";
import { HttpError } from "@calcom/lib/http-error";
import { defaultResponder } from "@calcom/lib/server";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import prisma from "@calcom/prisma";
import { availabilityUserSelect } from "@calcom/prisma";
import { MembershipRole } from "@calcom/prisma/enums";
+1 -1
View File
@@ -1,4 +1,4 @@
import { defaultHandler } from "@calcom/lib/server";
import { defaultHandler } from "@calcom/lib/server/defaultHandler";
import { withMiddleware } from "~/lib/helpers/withMiddleware";
@@ -1,6 +1,6 @@
import type { NextApiRequest } from "next";
import { defaultResponder } from "@calcom/lib/server";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import prisma from "@calcom/prisma";
import { schemaQueryIdParseInt } from "~/lib/validations/shared/queryIdTransformParseInt";
@@ -1,6 +1,6 @@
import type { NextApiRequest } from "next";
import { defaultResponder } from "@calcom/lib/server";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import prisma from "@calcom/prisma";
import { schemaBookingReferenceReadPublic } from "~/lib/validations/booking-reference";

Some files were not shown because too many files have changed in this diff Show More