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
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
Omar López and Keith Williams
1af3caa8cc
refactor: better observability in api routes ( #18810 )
...
Co-authored-by: Keith Williams <keithwillcode@gmail.com >
2025-01-22 20:52:09 +00:00
Anik Dhabal Babu
35565c8f7e
fix: HubSpot is not working for team events ( #18812 )
...
* fix: hubspot is not working for team events
* update
2025-01-22 20:40:34 +00:00
Omar López
0f07ab2f7b
fix: Load plain dynamically ( #18571 )
2025-01-22 20:10:11 +00:00
Benny Joo
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
Alex van Andel
d1134c8560
chore: Fix sublogger/better logging ( #18808 )
2025-01-22 13:57:54 +00:00
Rajiv Sahal
586b3532b5
feat: add option to disable deleting calendar credentials for CalendarSettings atom ( #18759 )
2025-01-22 13:09:25 +00:00
Rajiv Sahal
15e7fc192e
fix: requires confirmation for event type atom ( #18729 )
...
* redirect on success from event types
* fixup
2025-01-22 18:32:10 +05:30
GitHub Actions
95bf90402c
chore: release v4.9.4
Post release / release (push) Canceled after 0s
v4.9.4
2025-01-21 20:23:21 +00:00
Carina Wollendorfer and CarinaWolli
f523ce7795
fix: custom templates on team plan ( #18792 )
...
Co-authored-by: CarinaWolli <wollencarina@gmail.com >
2025-01-21 20:16:57 +00:00
Joe Au-Yeung
65b70d682d
fix: Initialize Hubspot client in CRMService ( #18789 )
...
* Initialize Hubspot client in class
* Remove debugging artifact
2025-01-21 16:47:32 -03:00
Alex van Andel
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
Keith Williams
1a1a506324
chore: Remove Chromatic GitHub workflow ( #18780 )
2025-01-21 13:50:53 +00:00
Benny Joo
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
Mehul
4f1d71e660
fix: routing form list overflow ( #18686 )
2025-01-21 10:40:44 +01:00
Udit Takkar
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
Post release / release (push) Canceled after 0s
v4.9.3
2025-01-20 21:05:54 +00:00
Alex van Andel
01baf7d3c0
chore: Add more logging around getUserAvailability ( #18769 )
...
* chore: Add more logging around getUserAvailability
* Add initialData to logging
2025-01-20 17:04:43 +00:00
Calcom Bot and Replexica
1a649158e1
feat: update translations via @replexica ( #18764 )
...
Co-authored-by: Replexica <support@replexica.com >
2025-01-20 12:41:25 -03:00
Joe Au-Yeung
d6306dcd22
fix: Disable custom templates for trialing teams ( #18748 )
...
* Create `checkIfTeamHasActivePlan` method on `stripe-billing-service`
* Add `checkIfTeamPlanIsActive` to `InternalTeamBilling`
* Create `hasActiveTeamPlan` trpc endpoint
* Check for active team plan when updating workflows
* Create `useHasActiveTeamPlan` hook
* Use `useHasActiveTeamPlan` on workflow edit page
* Type fixes
* Type fix
* Add `accepted` to team query
2025-01-20 14:48:33 +00:00
Muhammad Aiman Sulaiman and kutsaniuk
7131a1f015
feat: HitPay Payment App ( #17213 )
...
* Build HitPay app
* Deleted a lint comment
* Add redirect for iframe
* Fix type check error
* Fixed issue of payment pending
* Update hitpay package.json
* fix: fix lint issue in KeyInput and update zod
* fix: fix issue of parsing string to number
* fix: add default hitpay API links
* fix: resolve atoms build error
---------
Co-authored-by: kutsaniuk <kutsaniuk@gmail.com >
2025-01-20 15:36:23 +01:00
Eunjae Lee
5357228f72
fix: nested scrolls on /bookings/upcoming ( #18760 )
2025-01-20 09:18:12 -05:00
Lauris Skraucis
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
02ef6dc934
Fix raycast bug ( #18756 )
2025-01-20 10:03:54 +01:00
Benny Joo
4424b2aea3
useIsThemeSupported hook ( #18746 )
2025-01-20 14:30:18 +05:30
Syed Ali Shahbaz
1f91fe888a
bump libphonenumber-js version to 1.11.18 ( #18757 )
2025-01-20 07:14:01 +00:00
sean-brydon and Alex van Andel
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
4855b6b40f
fix: small spacing fix in app router 404 ( #18741 )
2025-01-17 16:45:30 -07:00
Eunjae Lee
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
Post release / release (push) Canceled after 0s
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
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
Steven Tey and Alex van Andel
6be69b820c
chore: Bump Dub version to fix createMany error ( #18591 )
...
Co-authored-by: Alex van Andel <me@alexvanandel.com >
2025-01-17 08:53:44 -07:00
Benny Joo
b63c9791ec
fix ( #18718 )
2025-01-17 10:48:31 -05:00
Anik Dhabal Babu
8cc61a1fe9
fix: Impersonation issue from userstable ( #18608 )
...
* fix: visible error in the userlist handler
* Uncommit yarn.lock
* update
2025-01-17 14:04:41 +00:00
Anik Dhabal Babu
be2e1274ff
fix: Getting an error with managed events when accessing through api/v1 ( #18683 )
...
* fix: getting error with managed events when get through api/v1
* update
2025-01-17 13:59:34 +00:00
Anik Dhabal Babu
fa3b1c17ea
fix: duplicating an event turns private link on ( #18727 )
2025-01-17 13:59:19 +00:00
Benny Joo
015edd3c9b
chore: migrate /auth/new ( #18732 )
...
* move out of /future dir
* remove legacy pages
2025-01-17 06:46:59 -05:00
Benny Joo
de05e8e989
chore: migrate /auth/error ( #18730 )
...
* migrate auth/error
* fix
* fix type check
2025-01-17 06:46:47 -05:00
Benny Joo
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
Udit Takkar
ea827ebbc6
fix: edit webhook time ( #18549 )
2025-01-17 08:56:50 +00:00
Joe Au-Yeung and Peer Richelsen
08e58851e7
feat: Salesforce - write to field without validation ( #18722 )
...
* Allow user to select custom field type
* Get field value and write to field - ignoring field type
* Only validate field length if present
---------
Co-authored-by: Peer Richelsen <peeroke@gmail.com >
2025-01-17 08:55:34 +00:00
Cao Hoang
da1b8137c2
fix: filters ui breaking on mobile in routing insights page ( #18713 )
2025-01-17 09:40:16 +01:00
Anik Dhabal Babu and Udit Takkar
d182e5c99a
fix: Booking with the same email when using capital letters ( #18694 )
...
Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com >
2025-01-17 09:37:10 +01:00
Nizzy
42259a113b
fix: resize app-store images to use less bytes ( #18675 )
2025-01-17 09:35:01 +01:00
+8
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
9e5665f2fb
Revert "fix: revert app router error pages ( #18696 )" ( #18714 )
...
This reverts commit 3cc5d9c065 .
2025-01-16 16:53:47 -05:00