84df8dc6eb
feat: update translations via @replexica ( #18860 )
...
Co-authored-by: Replexica <support@replexica.com >
2025-01-24 09:55:37 +00:00
656d6dc195
feat: Internal Notes for bookings ( #18804 )
...
* migration + migrate booking limit page to team settings
* new pages
* use settings toggle for displaying content
* get current team presets
* update mutation
* i18n for settings page
* remove redudant await
* cancelation UI for select
* handle other selection
* extract into a util
* inital cancelation reason flow
* fix i18n to be more readable
* add cancel reason logic
* nits
* improve copy
* ensure is teamMember and not isAdmin for getting internalNotes
* improvie spacing between elements
* fix types
* more type fixes
* correct types
* Update packages/features/bookings/lib/handleNewBooking/getEventTypesFromDB.ts
* use input component and remove mb-2 to allign with icon button
* Update packages/trpc/server/routers/viewer/teams/updateInternalNotesPresets.handler.ts
Co-authored-by: Eunjae Lee <hey@eunjae.dev >
* nits
* type fixs
* fix type
* fix type
* fix nullable option lost in merge
---------
Co-authored-by: Eunjae Lee <hey@eunjae.dev >
2025-01-24 09:26:52 +00:00
Omar López and GitHub
1fd4c3fd4c
refactor: Specific error status codes ( #18847 )
2025-01-24 07:09:54 +00:00
Hariom Balhara and GitHub
b3f946dd0b
feat: "cal.isBookingDryRun" to be used for Routing form as well ( #18832 )
2025-01-24 09:27:18 +05:30
fec8019775
feat: update translations via @replexica ( #18845 )
...
Co-authored-by: Replexica <support@replexica.com >
2025-01-23 20:06:42 +00:00
Benny Joo and GitHub
91225c03f3
chore: migrate org domain /[user] page ( #18715 )
...
* chore: migrate org domain [user] page
* fix type checks
2025-01-23 19:48:49 +01:00
Benny Joo and GitHub
36d756e469
fix: flickering in /bookings/[status] page ( #18836 )
2025-01-23 16:44:29 +01:00
Benny Joo and GitHub
8e191fed71
perf: Use one PageWrapper instance for every non-settings / non-bookings page in App Router ( #18747 )
...
* 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
* fix test
* fix @test
* fix
2025-01-23 10:01:46 -05:00
1ffea493ec
fix: use userId as ratelimit identifier ( #18803 )
...
* fix: use userId as ratelimit identifier
Using raw api keys as identifiers is problematic because they are logged
and are accessible via Unkey's UI.
My first idea was to use the api key's primary key, which would solve
this just fine. But after looking at the implementation it seemed easier
to use the user's id, which is what most people are interested in
limiting, not the actual keys. Also the userId was already passed in the
requests context, which made it easier. Sean confirmed that ratelimiting
the user, not their keys made more sense, so here we are.
* Update rateLimitApiKey.ts
* Update rateLimitApiKey.ts
* Fix tests
* Fix tests
---------
Co-authored-by: Benny Joo <sldisek783@gmail.com >
Co-authored-by: Joe Au-Yeung <j.auyeung419@gmail.com >
2025-01-22 21:37:30 -05:00
Omar López and GitHub
3765c76c96
refactor: bookings failures should be caught faster ( #18817 )
...
* refactor: bookings failures should be caught faster
* fix for expected failures
* Update booking-pages.e2e.ts
2025-01-23 05:52:42 +05:30
1af3caa8cc
refactor: better observability in api routes ( #18810 )
...
Co-authored-by: Keith Williams <keithwillcode@gmail.com >
2025-01-22 20:52:09 +00:00
Omar López and GitHub
0f07ab2f7b
fix: Load plain dynamically ( #18571 )
2025-01-22 20:10:11 +00:00
Benny Joo and GitHub
f0d1c92e99
perf: create (use-page-wrapper) route group and replace WithLayout from /bookings/[status] page + 8 low-risk single pages ( #18737 )
...
* 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
* 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
* pass dehydratedState in layout
2025-01-22 12:52:58 -05:00
GitHub Actions
95bf90402c
chore: release v4.9.4
2025-01-21 20:23:21 +00:00
Alex van Andel and GitHub
2d518f49dd
Double available memory on api/book/event ( #18790 )
2025-01-21 19:01:58 +00:00
7a9d291d1f
fix: handle cancelation reason when user is host ( #18681 )
...
* handle cancelation reason when user is host
* add attendee reason warning
* add cancellation reason to tests when we are the host
* req.body and not req
* fix: isloggedIn logic
* use new isLoggedInUser from ssr instead of client
* update e2e tests to fill in reason when hosts
---------
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com >
Co-authored-by: Udit Takkar <udit222001@gmail.com >
Co-authored-by: Peer Richelsen <peeroke@gmail.com >
2025-01-21 20:24:06 +05:30
Benny Joo and GitHub
0f7ecb3345
chore: migrate low-risk 3 /auth pages to App Router ( #18753 )
...
* add i18n string
* Update config.matcher in middleware
* migrate auth/oauth2/authorize
* migrate auth/platform/authorize
* migrate auth/signin
2025-01-21 10:41:00 +01:00
Udit Takkar and GitHub
30eb7ce846
feat: add transcription as attachment ( #18740 )
...
* feat: add transcription as attachment
* fix: change style
2025-01-21 06:07:10 +00:00
3eb5490df9
feat: Use Cloudflare Turnstile in booker ( #18755 )
...
* feat: Use Cloudflare Turnstile in booker
* move files arround
* render turnstile widget and add token to store
* use token from body instead of headers
* watch cf token to re-render disabled state
* Update packages/features/bookings/Booker/components/BookEventForm/BookEventForm.tsx
* Update packages/features/bookings/lib/create-booking.ts
* ensure bool
* add to recuring event
* fix recuring events
---------
Co-authored-by: sean-brydon <sean@cal.com >
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com >
Co-authored-by: Benny Joo <sldisek783@gmail.com >
2025-01-21 11:27:56 +05:30
GitHub Actions
235382213f
chore: release v4.9.3
2025-01-20 21:05:54 +00:00
1a649158e1
feat: update translations via @replexica ( #18764 )
...
Co-authored-by: Replexica <support@replexica.com >
2025-01-20 12:41:25 -03:00
Eunjae Lee and GitHub
5357228f72
fix: nested scrolls on /bookings/upcoming ( #18760 )
2025-01-20 09:18:12 -05:00
Lauris Skraucis and GitHub
bfeafaa21f
fix: ensure platform managed user has 1 schedule by default ( #18719 )
...
* fix: ensure managed user has 1 schedule
* chore: bump platform libraries
2025-01-20 09:11:26 +00:00
Syed Ali Shahbaz and GitHub
02ef6dc934
Fix raycast bug ( #18756 )
2025-01-20 10:03:54 +01:00
Benny Joo and GitHub
4424b2aea3
useIsThemeSupported hook ( #18746 )
2025-01-20 14:30:18 +05:30
Syed Ali Shahbaz and GitHub
1f91fe888a
bump libphonenumber-js version to 1.11.18 ( #18757 )
2025-01-20 07:14:01 +00:00
b4a51d3560
feat: auto lock ( #18630 )
...
* add delete to redis service
* auto lock + tests
* changes to autolock in api/book call
* remove log clutter
* add detection in api v1
* tpye changes
* throw error and add tests for API
* add response logic on locked + tests
* type response properly i hope?
* type fix
* add tests for counter not existing + redis errors
* remove IP - add sentry to track
* rename symbol
* fix type error
* fix tests
* remove sentry call spy
* fix type on sentry setUser call
---------
Co-authored-by: Alex van Andel <me@alexvanandel.com >
2025-01-18 16:21:12 -03:00
Benny Joo and GitHub
4855b6b40f
fix: small spacing fix in app router 404 ( #18741 )
2025-01-17 16:45:30 -07:00
Eunjae Lee and GitHub
4b264a867b
fix: adjust table height for a few rows on /bookings ( #18728 )
2025-01-17 23:07:39 +00:00
GitHub Actions
9caaa0af32
chore: release v4.9.2
2025-01-17 22:03:02 +00:00
f411c6ed11
feat: Use dub.customer.list to issue dual-sided incentives ( #18452 )
...
* [FEAT] Use dub.customer to issue dual-sided incentives
* update dub implementation
* uncommit yarn.lock
* Update yarn.lock
* account for self-hosting
* remove comments
---------
Co-authored-by: Omar López <zomars@me.com >
Co-authored-by: Peer Richelsen <peeroke@gmail.com >
2025-01-17 21:33:33 +00:00
Benny Joo and GitHub
245196fbf3
chore: technical debt clearing - remove getServerSideProps for /event-types ( #18733 )
...
* chore: technical debt clearing - remove getServerSideProps for event-types
* refactor
2025-01-17 21:35:03 +01:00
Benny Joo and GitHub
b63c9791ec
fix ( #18718 )
2025-01-17 10:48:31 -05:00
Benny Joo and GitHub
015edd3c9b
chore: migrate /auth/new ( #18732 )
...
* move out of /future dir
* remove legacy pages
2025-01-17 06:46:59 -05:00
Benny Joo and GitHub
de05e8e989
chore: migrate /auth/error ( #18730 )
...
* migrate auth/error
* fix
* fix type check
2025-01-17 06:46:47 -05:00
Benny Joo and GitHub
78a6963cd9
chore: clean up <HeadSeo> components where not needed ( #18731 )
...
* clean up headseo from d-type-view
* clean up headseo from bookings-single-view
* clean up headseo from team-view
2025-01-17 10:57:39 +00:00
+9
6561b92f40
perf: Move CRM event creation to tasker ( #18370 )
...
* Upgrade jsforce to 3.6.2
* Refactor connecting to Salesforce
* Revert yarn.lock changes
* Add `TASKER_ENABLE_CRM_EVENT_CREATION` to .env
* Add createCRMEvent scheduler
* Schedule CRM event creating in `EventManager`
* Add calendar event builder for CRM tasks
* Do not write to person record if fields don't exist
* Change type to expect string from tasker
* Create CRM event
* Create booking references
* Type fixes
* Migrate callback endpoint
* Add jsforce node dependency
* Migrate add endpoint
* Import
* Import package into crmService
* Use new package types
* Type fix
* Update vite config
* Push updated lockfile
* Attempt to bump platform/libraries to unlock jsforce
* Also update lockfile, naturally
* bump platform libraries
* feat: salesforce to tasker improvements (#18419 )
* feat: salesforce to tasker
* refactor: event manager
* tests: add unit tests for create CRM Event
* Update vite.config
* Add jsforce to vite config
* Revert mint.json changes
* Default to not enabling
* Revert yarn.lock changes
* Remove `TASKER_ENABLE_CRM_EVENT_CREATION` variable
* Revert yarn.lock changes
* feat: Round Robin weights future members toggle (#17782 )
Co-authored-by: Omar López <zomars@me.com >
* detailed customer card (#18511 )
Co-authored-by: Omar López <zomars@me.com >
* chore: app router - all sub-pages in `/apps` (#16976 )
* chore: apps/[slug] remove pages router
* remove apps/[slug] pages from /future
* chore: apps/installed remove pages router
* chore: apps/installation remove pages router
* remove Head element
* fix metadata
* fix test
* fix another test
* chore: apps/categories remove pages router
* revert unneeded changes
* update middleware
* Remove <Head>
* remove unused import and code
* remove unused import and code again
* fix
* fix category page
* add split icon
* add /routing paths to middleware matcher
* wip
* remove HeadSeo from App.tsx
* clean up head-seo test
* add generateAppMetadata
* use generateAppMetadata in apps/[slug] page
* delete file
* remove log
* fix
* fix
* fix apps/installed pages
* fix cateogires pages
* fix
* fix imports
* wip
* fix
* fix
* fix metadata
* fix
* redirect /apps/routing-forms to /routing
* replace all usages of /apps/routing-forms to /routing
* better naming
* /routing -> /routing/forms
* fix
* fix
* fix
* fix
* remove backPath as it is irrelevant when withoutMain is true
* fix type checks
* fix type check in apps/[slug]
* refactors
* fix
* fix test
* fix
* fix
* fix
* Replace multiple leading slashes with a single slash
* migrate routing-forms too
* add re routing
* fix
* add redirection
---------
Co-authored-by: Peer Richelsen <peeroke@gmail.com >
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com >
* chore: app router 404 page (#18597 )
* wip
* wip
* fix not found page
* render middleware for /settings pages
* fix
* remove global-error page
* add metadata to not-found page
* make not-found page static
* remove 404
* adding not-found to middleware is not necessary
* add every routes to config.matcher
* fix test
* fix style
* use i18n string
* fix tests
* fix
* fix
* revert unneeded changes
* fix
* fix
* fix
* fix style
* fix
* remove 404
* remove log
* fix
* fix
* fix
* fix
* better naming
* parallel testing
---------
Co-authored-by: Benny Joo <sldisek783@gmail.com >
* feat: render custom error page for unexpected sever error + remove` pages/_error` (#18606 )
* remove page/_error
* refactor app/error
* fix: app/not-found cannot be a static page (#18610 )
* Async False (#18611 )
* chore: redirect to /500 if pathname does not exist + better error handling (#18615 )
* fix lint error
* fix booking page and better error handling
* chore: gracefully handle 404s from pages router's dynamic pages + tests (#18618 )
* restore pages/_error
* set custom header in pages/_error
* handle it in middleware
* add test
* remove logs
* better test description
* chore: try using custom 404 in pages/_error (#18622 )
* fix: parsing teamId (#18623 )
* chore: restore error pages for pages router (#18625 )
* disable emails to all guests (#18628 )
Co-authored-by: CarinaWolli <wollencarina@gmail.com >
* revert: "feat: bulk shorten links with dub.links.createMany (#18539 )" (#18587 )
This reverts commit 4902c6a0f8 .
Co-authored-by: Alex van Andel <me@alexvanandel.com >
* chore: release v4.8.18
* fix: disable sending sms when email is present (#18632 )
* fix: disable sending sms when email is present
* fix: update test
* fix: main lint errors (#18634 )
* fix: error-page.tsx related lint errors
* fix: lint no continue-on-error
* Adding more lint fixes
* Bring back annotate code linting results
* Bring back linting continue-on-error
* Slimline lint
* feat: do not show automation webhooks in webhook list (#18607 )
* fix: make ESLint work and fix lint errors that were undetected before (#18639 )
* fix eslint config
* fix
* add it to dev dep
* fix
* sync eslint version
* force ts-node to compile our ESLint plugin's TS files into CommonJS (which ESLint requires)
* fix some lint errors
* fix lint errors
* remove duplicate classname
* make @typescript-eslint/ban-types a warn for packages/trpc files
* fix lint errors in trpc
* fix lint errors in trpc - 2
* fix
* fix
* fix lint warnings
* chore: clean up config.matcher in middleware (#18638 )
Co-authored-by: Alex van Andel <me@alexvanandel.com >
* Allow lint to error but continue (unblock pipeline)
* fix: potential fix for flaky layout shift (#18651 )
* potential fix: layout shift
* fix lint error
* feat: update translations via @replexica (#18598 )
* chore: sync with main
* feat: update translations via @replexica
---------
Co-authored-by: Replexica <support@replexica.com >
* Update yarn.lock
* nit: let tasker handle payload stringification
---------
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com >
Co-authored-by: Alex van Andel <me@alexvanandel.com >
Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com >
Co-authored-by: Morgan Vernay <morgan@cal.com >
Co-authored-by: Omar López <zomars@me.com >
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com >
Co-authored-by: Nizzy <140507264+nizzyabi@users.noreply.github.com >
Co-authored-by: Benny Joo <sldisek783@gmail.com >
Co-authored-by: Peer Richelsen <peeroke@gmail.com >
Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com >
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com >
Co-authored-by: CarinaWolli <wollencarina@gmail.com >
Co-authored-by: Keith Williams <keithwillcode@gmail.com >
Co-authored-by: GitHub Actions <github-actions@github.com >
Co-authored-by: Kartik Saini <41051387+kart1ka@users.noreply.github.com >
Co-authored-by: Calcom Bot <109866826+calcom-bot@users.noreply.github.com >
Co-authored-by: Replexica <support@replexica.com >
2025-01-16 22:07:30 -05:00
Benny Joo and GitHub
9e5665f2fb
Revert "fix: revert app router error pages ( #18696 )" ( #18714 )
...
This reverts commit 3cc5d9c065 .
2025-01-16 16:53:47 -05:00
GitHub Actions
07778d22ed
chore: release v4.9.1
2025-01-16 18:01:24 +00:00
GitHub Actions
a518c7152a
chore: release v4.9.1-rc1
2025-01-16 15:53:45 +00:00
Benny Joo and GitHub
c37a8a587b
fix: add decoding logic to app router params ( #18712 )
...
* decode app router params in buildLegacyCtx
* add helpful comments
* add comment
* address comment
2025-01-16 15:14:03 +00:00
Alex van Andel and GitHub
b7f7c33afc
feature: Allow non-calcom domains to run team slug pages ( #18711 )
2025-01-16 09:44:14 -03:00
Lauris Skraucis and GitHub
1d449ecc6b
fix: v2 booking guests ( #18690 )
...
* fix: v2 booking guests
* test
2025-01-16 11:20:18 +02:00
Lauris Skraucis and GitHub
f582faed2b
fix: Booking atom phone booking field and booking fields order ( #18678 )
...
* chore: examples app make managed user admin
* fix: phone field not appearing
* fix: booking fields order
* feat: local libraries setup script
* chore: add log when parsing booking field fails
* fix: backwards compatbile name booking field
* chore: libraries publish support scripts
* chore: bump libraries
* docs
* fix: phone default field return label and placeholder
* fix: e2e tests
2025-01-16 11:10:06 +02:00
GitHub Actions
79a8ab79f8
chore: release v4.9.0
2025-01-16 01:26:26 +00:00
Benny Joo and GitHub
ce87de4fc7
fix: Revert - chore: app router - all sub-pages in /apps #16976 ( #18702 )
...
* revert
* add incomplete-booking
2025-01-15 21:12:18 -03:00
b128579729
feat: update translations via @replexica ( #18699 )
...
Co-authored-by: Replexica <support@replexica.com >
2025-01-15 20:38:44 +00:00
Benny Joo and GitHub
3cc5d9c065
fix: revert app router error pages ( #18696 )
2025-01-15 16:47:30 -03:00
Benny Joo and GitHub
7897e14273
fix: add back global-error.tsx ( #18692 )
2025-01-15 16:55:43 +00:00
GitHub Actions
c581456586
chore: release v4.8.19
2025-01-15 15:30:52 +00:00