caaecf2f94de838d462a26df85b24e482afb6a33
41
Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
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 |
||
|
|
41f63582b2 |
feat: Add booking and user creation source (#18768)
* migration and init to accept creationSource for new bookings * V1 create booking * V1 user creation * webapp booking + V1 user * user creation in V1, V2 and webapp * booking source V2 and fix for v1 user * fit type * --fix type * add test -- WIP * fix type * fix type * ^ * Need more sleep zzz * -_- * bump libraries platform * adds for v2 recurring booking * fix lint * instant meetings * fix: api v2 creation source * fixup! fix: api v2 creation source * bump libraries * add user * fix test * fixup! fix test * add more source * more source... * fix type & test --1 * fix type & test --2 * typefix * fixup test --------- Co-authored-by: Morgan Vernay <morgan@cal.com> |
||
|
|
f628dc83a8 |
detailed customer card (#18511)
Co-authored-by: Omar López <zomars@me.com> |
||
|
|
e6d76b630c | chore: Revert "chore: app router - /team, /org, /[user] booking pages (excl. embeds) (#18186) (#18526) | ||
|
|
2f9c8cb441 |
chore: app router - /team, /org, /[user] booking pages (excl. embeds) (#18186)
* update env vars * update middleware * remove pages router and move pages to /app * move to /team * update imports * fix * remove pages router and move org pages to /app * wip * fix orgSlug/user pages * fix orgSlug/user/type pages * remove generateMetadata from embed pages * fix * remove pages router for /user pages * generateMetadata is not needed in embed pages * remove future/org * no layout in [user] page * simplify * fix * fix OG image for [user] * fix OG images for org/user and team/slug * fix OG images for booking page * fix all metadata * use isBrandingHidden * remove BookerSeo and its usages * rename excludeAppNameFromTitle -> hideBranding * remove logic for meeting type in HeadSeo * remove BookerSeo instances from team-view and users-public-view * create generateMeetingMetadata util and use it to reduce duplicate code * remove BookerSeo imports * fix spacing * remove constructMeetingImage mock from head-seo.test * fetch avatarUrl using user id for user page metadata * fix test * remove unused test cases * index and follow must be true by default * invert noindex/nofollow flags * remove HeadSeo for already migrated pages and refactor prepareMetadata * fix organization-settings.e2e.ts * fix order * enable parallel test execution for dynamic-booking e2e test * fix * + could be %2B in app router * refactor handling logic for embeds in app router * fix isEmbed * fix embed-core * remove dead code * move embed pages back to /future * add back embed pages in pages router * revert some changes * fix import type checks * simplify * fix * feat: Implement generateBookingPageMetadata function for improved SEO and metadata handling across user and event pages (#18440) - Added a new utility function `generateBookingPageMetadata` to streamline the generation of metadata for booking and user profile pages. - Updated multiple page components to utilize the new function, enhancing SEO indexing and metadata consistency. - Removed redundant code related to previous metadata generation methods, improving code clarity and maintainability. * fix dirs * Pr-review-fixes-app-router-team-pages (#18450) * Remove unnecessary getPublicEvent call * Remove unused variable * Fix 404 for team page (#18451) * Remove console log --------- Co-authored-by: Hariom Balhara <hariombalhara@gmail.com> |
||
|
|
85070574da |
feat: Support event level conflict checking (#18052)
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> |
||
|
|
63013d402e |
feat: Plain integration (#18130)
* revert: "fix: Request permissions to allow events to be created on shared Office365/Outlook calendars (#17760)" This reverts commit |
||
|
|
7c0ee9f186 | revert: "feat: Populate gCal calendar cache via webhooks (#11928)"" (#17682) | ||
|
|
f4f4afad39 |
perf: optimize team admin check queries (#17681)
## What does this PR do? Optimizes team and organization admin checks by: - Removing unnecessary member data fetching in profile repository - Simplifying team admin verification query to directly check membership - Refactoring organization admin check to use the optimized team verification method ## Mandatory Tasks - [x] I have self-reviewed the code - [x] I have updated the developer docs in /docs - [ ] I confirm automated tests are in place ## How should this be tested? 1. Log in as a team admin/owner 2. Verify team admin privileges still work correctly 3. Log in as an organization admin 4. Confirm organization admin permissions are maintained 5. Check that admin-only features remain accessible Expected behavior: - Team admins/owners should retain all their existing permissions - Organization admins should maintain their administrative capabilities - No degradation in admin functionality while improving query performance ## Checklist - 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 |
||
|
|
6272c881c8 |
revert: "feat: Populate gCal calendar cache via webhooks (#11928)" (#17675)
This reverts commit
|
||
|
|
d294a74aad |
feat: Populate gCal calendar cache via webhooks (#11928)
* WIP * WIP * WIP * WIP * WIP * WIP * WIP * WIP * WIP * Update CalendarService.ts * Type fixes * WIP * fix: improve cache hits * Update CalendarService.ts * Update CalendarService.ts * Update CalendarService.ts * Update CalendarService.ts * Update CalendarService.ts * Update CalendarService.ts * Feedback * Update CalendarService.ts * Update CalendarService.ts * Update _router.ts * feedback * WIP * WIP * Update schema.prisma * feedback * typefixes * Update Calendar.d.ts * fix: watches when adding a calendar * Discard changes to packages/app-store/googlecalendar/api/add.ts * WIP Signed-off-by: Omar López <zomars@me.com> * WIP Signed-off-by: Omar López <zomars@me.com> * WP Signed-off-by: Omar López <zomars@me.com> * Update calendar.ts * Update calendar.ts * Update callback.ts * Update callback.ts * Conflicts * WIP * WIP * Update CalendarService.ts * Cleanup * Discard changes to packages/features/settings/layouts/SettingsLayout.tsx * Update calendar-cache.repository.ts * WIP * Update getSelectedCalendarsToWatch.sql * WIP * Update CalendarService.ts * Cleanup * Discard changes to packages/app-store/googlecalendar/lib/CalendarService.ts * Create CalendarService.wip.ts * WIP * Update CalendarService.ts * Update getSelectedCalendarsToWatch.sql * Delete CalendarService.wip.ts * test updates * cleanup Signed-off-by: Omar López <zomars@me.com> * Update CalendarService.test.ts * Update CalendarService.ts * type fixes * Update OAuthManager.ts * Update CalendarService.ts * Almost there * Update CalendarService.test.ts * Update calendar.ts * Update callback.ts * Update toggleFeatureFlag.handler.ts * fix: feedback * Update getSelectedCalendarsToWatch.sql * Fix unit tests --------- Signed-off-by: Omar López <zomars@me.com> Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com> |
||
|
|
9b79c037c2 |
fix: remove cal video logo from select (#17665)
* fix: remove cal video logo from managed event types * fix: do not fetch cal video logo |
||
|
|
4b38d73120 |
chore: Replace prisma actions Credential Repository / SelectedCalendar Repository methods (#17443)
* create lib/google.ts * add updateAvatar method to UserRepository * refactor googlecalendar callback * add methods to CredentialRepository and SelectedCalendarRepository * refactor * remove not needed code * refactor * make credential repository and selected calendar repository more generic * create GoogleRepository |
||
|
|
f70e8c5189 |
perf: Single query user enrichment calls by array of userIds instead (#17190)
* single query * getPublicEvent * perf: use Map for faster lookup for large objects --------- Co-authored-by: Udit Takkar <udit222001@gmail.com> |
||
|
|
5726d18027 |
feat: member management for platform (#16803)
* init members page for platform * add missing icon * add members tab to sidebar * use data from useMe query instead of useSession * return user profiles since platform users are stored there * small refactor * fixup * remove unused logs from console * fixup * resolve merge conflicts * add missing tabs for members and billing * update schema * fixup * memoise selection options for org and platform * update onSubmit handler * resolve merge conflicts * add members tab * improve team billing view when user not subscribed * update members tab * add function to find if user is admin of team * update invite members handler to handle platform user as well --------- Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com> |
||
|
|
654a204878 |
feat: Attribute based routing from Team Routing Form to Team Event(with assigned users matching the attribute logic) (#16823)
* Initial commit * routingForm to Booking a particular team member working * Happy path working * Fixes * Fix router query params forwarding * Add basicConfig within app * Tests * More tests * Update packages/app-store/routing-forms/components/SingleForm.tsx Co-authored-by: Omar López <zomars@me.com> --------- Co-authored-by: Omar López <zomars@me.com> Co-authored-by: Benny Joo <sldisek783@gmail.com> |
||
|
|
d27ccd6f44 |
feat: org team app install (#15704)
* feat: remove dropdown from app-store and redirect to new-app-install-flow * removed extra code * fix: account select loading issue * removed getPaymentCredential (unused) * fix: only redirect after the app has been added to all the event-types * remove overflowIndicatorStyles * refactor getUserAdminTeams * send teamId instead of id * seperate locations component * for conferencing apps skip select account page * refactor InstallAppButtonChild * installing conferencing apps shows locations dropdown in configure step * send location data to the handler * send location data to the handler * add the newly installed to the locations dropdown (prefillLocation) * fix: type errors * fix: handle es-lint errors * fix: app is added again on submit * only add app if not already added * fix: type erros * filter out managed events for now * fix: show installed count badge * remove 2 toast message * feat: added tests for conferencing apps * fix: loading indicator * Update apps/web/pages/apps/installation/[[...step]].tsx Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com> * Update apps/web/pages/apps/installation/[[...step]].tsx Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com> * move `getUserAdminTeams` to `UserRepository` * fix: zoom and jelly not redirecting to the new app install flow * fix: typo * add `installableOnTeams` prop * split `configureStepCard` into smaller components * fix: step count * fix: show loading indicator until the new page is loaded * fix: organizer_default_conferencing_app not visible in a team * Introduce QueryClient to app card tests * fix: typo * add installableOnTeams prop * fix: tests * seated events shouldn't have multiple locations #15174 * fix: o365 callback * fix: office365_video not redirecting to event-types step * Revert "fix: o365 callback" This reverts commit bba841035ea34f8c31201b64c77221b8d8c3e626. * add TEAM_SELECT_STEP * add apps to orgs and their sub-teams initial commit * undo team select step * small ui fix * fix: wrong step numbers * fix: dont allow app installation without cretendialId * fix: don't show acme team as it cannot have any events * refactor useAddAppMutation * removed console.log * added comment * added comment * move locationOptions from getServerSideProps a trpc query * fix: failing tests * Update conferencingApps.e2e.ts * refactor useAddAppMutation * refactor useAddAppMutation 2 * fix: test failing * fix: unit test * Revert "fix: unit test" This reverts commit 6d74032211d094478c6d7cf9aedbce696dfb768d. * fix: failing test * Increase test timeout for conferencing app tests * fix: write separate tests for each conferencing app to prevent hitting 6000 ms timeout * improved tests naming * fix: correct message and translation key #15657 * fix: write separate tests for each analytics app to prevent hitting 6000 ms timeout * fix: analytics apps test * attempt to fix failing tests * fix typo * refactor * update: replace text-gray with text-stuble - works with light mode too * update: use userRepository.getUserAdminTeams * Merge branch 'main' into feat/org-team-app-install-2 * fix: after merge conflict from app router migration * remove consoles --------- Co-authored-by: Omar López <zomars@me.com> Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com> Co-authored-by: Joe Au-Yeung <j.auyeung419@gmail.com> Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com> |
||
|
|
f86a5db843 |
chore: App Router Migration, add metadata to getting-started, extract into /modules and add method to UserRepository (#16449)
* getting-started: extract into /modules * fix * fix type-check * add findByIdWithOptionalSelect to UserRepository * fix import error * fix type check * add metadata * fix |
||
|
|
45e0f87e45 |
fix: add logger to util to debug v1 API slot (#16657)
* Update util.ts * fix init * add logger to repository_user |
||
|
|
e3b478f5b1 |
fix: get slot logic for v1 API (#16620)
* fix faulty slug match * Allow team event slot * pass it to getSchedule --------- Co-authored-by: Keith Williams <keithwillcode@gmail.com> |
||
|
|
cf16cd3ed2 |
feat: Implement Dub.co for conversion tracking (#16165)
* FEAT: Implement Dub.co for conversion tracking * add link creation, @vercel/functions * use refer.cal.com/:username instead of go.cal.com/r/:username * sale conversion tracking * add copy referral link * limit to IS_CALCOM only * Update yarn.lock * fix DubAnalytics * use workaround for isNewUser * pass req to getOptions * Update next-auth-options.ts * fix ts errors * only show DubAnalytics outside EU * add Dub Analytics to /signup * use WEBSITE_URL instead * on-demand generate links * add migration * add check for existing link + change fetch method to poast * remove refer.cal.com from PoweredByCal * limit DubAnalytics to /signup only * simplify generate-referral-link * restore yarn.lock * add yarn with dub sdk in * add yarn with dub sdk in * yarn * Update yarn.lock --------- Co-authored-by: sean <sean@brydon.io> Co-authored-by: Peer Richelsen <peer@cal.com> |
||
|
|
55e1e0fa3d | chore: Remove passing optional prisma select prop to Repository classes (#16600) | ||
|
|
e362c37ff3 |
fix: Location Change to Organizer Default Conferencing App (#16379)
* Fix * Dont include test files * Fix location change * Self review fixes * Add unit test * Add more test * Add a bookingScenario as well |
||
|
|
d9777a3011 |
perf: Server-Side Data Fetching in App Router: /availability (#16536)
* wip * add method to OrganizationRepository * server side fetching for availability * fix error * server side fetching finish * remove log * fix * fix * fix type * no need to export * fix type * address nit comments |
||
|
|
84a2e55125 |
chore: App router migration - general settings (#16312)
* added lockedSMS to future routes * add orgMigrations routes to future * correct metadata * small fix * add orgMigrations to future * Move components to client components * Remove tRPC element from edit user RSC * Get username for meta * Remove suspense query * Remove orgMigrations from app router * Type fix * Revert "Remove suspense query" This reverts commit eadd814f6e4a5d6856d9218342b7909c22fe62c6. * Handle suspenseQuery in app router * User edit page, fetch data server side * Update yarn.lock * Export getFixedT * Set PageWrapper as root layout for settings * Settings Layout accepts strings for shell heading * Add OOO to app router settings * Refactor layout for my-account pages * Remove instances of pages router from my-account * Refactor security pages * Add billing to app router * Add admin API link to layout * Add api keys page * Webhooks WIP * Refactor SettingsHeader to client component * Add webhook pages * Refactor API keys page * Add admin app page * Type fix * fix types * fix developer/webhooks/[id] param value type error * remove unnecessary code * do not pass t prop to CreateNewWebhookButton * fix type errors in webhook-edit-view * fix the remaining type errors * do not use prisma directly in generateMetadata * remove use client if unnecessary * Remove unused shell heading from SettingsLayoutAppDir * improve metadata * fix billing page * fix import in settings/teams * Use next `notFound()` * fix type check * fix type check * remove unused code * Fix calendar setting page * Separate settings pages into route groups * Refactor admin settings pages * Remove meta instance from billing page route * Update settings layoutAppDir * Refactor developer settings pages * Refactor out of office * Refactor my account settings * Refactor admin api page * Refactor security pages * Type fix * fix styling in settings layout --------- Co-authored-by: Somay Chauhan <somaychauhan98@gmail.com> Co-authored-by: Omar López <zomars@me.com> Co-authored-by: Benny Joo <sldisek783@gmail.com> |
||
|
|
84606543ae | chore: preserve non-org dashboard for platform users (#16181) | ||
|
|
8fa39f2ae5 |
feat: Round robin reassignment via round robin algorithm [CAL-3138] (#14308)
* add reassign host to edit dropdown * add dialog to reassign rr host * Design improvements * add translations * only show reassign for admin/owner * add first version of email template * Init rr assign endpoint * Pass booking information to rr assign endpoint * Only allow attendee of booking to reassign themselves * Send email to reassigned and cancelled member * On reassign change calendar events * Add workflows for new host * On reassign new host - rr * Fix icon * Abstract reassignment logic * Update calendar invite * Add tests * Clean up * Merge with `main` * Type fixes * Add back dialog and handle no available hosts * Handle if rr host is not organizer * Fix calendar invites when organizer doesn't change * Clean up * Clean up * Type fixes * Type fixes * Type fixes * Type fixes * Type fix * Type fixes * Type fixes * Add custom responses to evt object * Type fixes * Type fix * Type fix * Type fixes * Type fixes * Type fix * Type fix * Update tests * Type fixes * Fix tests * Fix tests * Add booking repository * Fix tests * Fix tests * Add doesUserIdHaveAccessToBooking for user * Add check if user is team admin * Check user permission tRPC route * Type fixes * Correct Promise.all * UI fixes * UI fixes * Remove unused assigned hosts prop * Type fix * Remove unused frontend code * Include user priority * Fallback to event type users for older event types * Get booking workflow reminder * Revert back to eventType.hosts * Fix lint * Handle changing workflows * Type fixes * Type fixes * Type fix * Fix tests * Update new booking imports * Fix imports * Type fix * Type fix * Fix adding all members to reassignment emails * Fix cancelled RR emails to show old host * Ensure consistent event titles * Send new event workflows to new host * Change event name if organizer changed * Fix query error * Delete old booking reference when reassigning * Type fixes * Type fixes * Fix test * Rename func isAdminOfTeamOrParentOrg * Select specific workflow fields * Address workflow feedback * Delete const * Address feedback --------- Co-authored-by: CarinaWolli <wollencarina@gmail.com> |
||
|
|
5b7f2a6ffc |
fix: Reschedule URL for an org migrated/moved user's booking. (#15736)
* Fix reschedule URl * Add e2e for org * Add team booking reschedule test * Add unit tests * Remove unnecessary select --------- Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com> |
||
|
|
f1b4d7d9e0 |
feat: app install flow followup (#15193)
Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com> Co-authored-by: Omar López <zomars@me.com> Co-authored-by: Joe Au-Yeung <j.auyeung419@gmail.com> |
||
|
|
3a0c766ed5 |
fix: Support adding a non-existent email as the owner of the organization (#14569)
* fix: Support adding an non-existent email as the owner of the organization * Remove dead code * fixes * add test * self review changes * Update packages/trpc/server/routers/viewer/organizations/create.handler.ts Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com> * Fix typo everywhere --------- Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com> Co-authored-by: Peer Richelsen <peeroke@gmail.com> |
||
|
|
a15cad4d03 |
chore: Removing away (DB related, not slot related) from code (#14673)
* chore: Removing away (DB related, not slot related) from code * Remove more isAway/away, eg. references |
||
|
|
d25c043046 |
chore: Remove all avatar/logo references (#14532)
* chore: Remove all avatar/logo references * Updated user profile to only use avatarUrl * fix: minor style issue * chore: Remove redundant includeTeamLogo * fix: Use right avatar default in event type list * fix: placeholder avatar team profile, target * chore: Add logoUrl/avatarUrl to JWT * fix: Bunch of org avatar issues, fix members list * Fix logoUrl on org pages * More type fixes * Hopefully final type fixes * Another round of type fixes * fix: UserForm ts * fix: Handle as return types, not input types * fix: Remove profile and add avatarUrl * fix: notFound as const * fix: Seeder avatarUrl params * revert: Migration changes for easier recovery * fix: Add explicit type to builder as avatar is now set * Add logoUrl to unpublished entity * Avatar test out of scope here * fix: Use the new avatarUrl after save * chore: Removed getOrgAvatarUrl/getTeamAvatarUrl * fix: Update sidebar image immediately after change * Unable to safe unnamed user, so default * fix: Unpublished page, add organization test * Add more tests |
||
|
+25 |
0a15483c46 |
feat: platform atoms + api v2 (#14106)
* add connect to cal atom * add connect to cal to atoms package index * shadcn setup * update packages * button component from shadcn * dumb button component * replace button with dumb button component * update commenst and change url param * chore: setting up monorepo packages for platforms (#12572) * chore: init platform folders strucutre and api proxy * fixup! chore: init platform folders strucutre and api proxy * chore: init database oAuth platform client schema * fixup! chore: init database oAuth platform client schema * fix config path after move to folder /v1 * feat: scaffold v2 API (#12554) * init nest project * add kysely as a separate package * add ee folder with license * prettier: format v2 api same as mono repo * migrate over Eriks nestjs poc * schema generation script * ee license file * nest poc eslint file * remove prisma-kysely from v2 api * prepare for mergin platform: remove prisma-kysely because incorrect checksum * add prisma-kysely to packages/prisma * move to apps/api/v2 * rename v2 package * readme update * Update apps/api/v2/env.example * env typo * env typo --------- Co-authored-by: Erik <erik@erosemberg.com> Co-authored-by: Morgan Vernay <morgan@cal.com> * chore: init platform packages (#12603) * chore: init platform packages * fixup! chore: init platform packages * fixup! fixup! chore: init platform packages * fix: type in package.json * fixup! fixup! fixup! chore: init platform packages * fixup! fixup! fixup! fixup! chore: init platform packages * fixup! fixup! fixup! fixup! fixup! chore: init platform packages * fixup! fixup! fixup! fixup! fixup! fixup! chore: init platform packages --------- Co-authored-by: Lauris Skraucis <lauris.skraucis@gmail.com> * chore: platform more permissions utils and tests (#12613) * chore: more permisions utils and tests * chore: tests * feat: validate `CalProvider` api keys (#12672) * fix: signup nit (#12585) * Disable submit on empty form * Fix submit --------- Co-authored-by: Peer Richelsen <peeroke@gmail.com> * New Crowdin translations by Github Action * fix: Signup options are not disabled (#12610) * fix: Signup options are not disabled * fixes/signup disabling suggested changes done * chore: signup and login improvements --------- Co-authored-by: Udit Takkar <udit222001@gmail.com> * fix: typo in @calcom/emails readme (#12615) * fix: handle reschedule request for dynamic meetings (#12275) * chore: [app-router-migration-1] migrate the pages in `settings/admin` to the app directory (#12561) Co-authored-by: Dmytro Hryshyn <dev.dmytroh@gmail.com> Co-authored-by: DmytroHryshyn <125881252+DmytroHryshyn@users.noreply.github.com> Co-authored-by: zomars <zomars@me.com> * chore: added cursor-pointer to img upload (#12624) * added cursor-pointer to img upload * nit * feat: add clear filters option in bookings page (#12629) * add clear filters option * fix vscode settings.json * use removeAllQueryParams() * fix yarn lock * remove toggleoption * feat: display long durations in hours on booking (#12631) Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com> * New Crowdin translations by Github Action * fix: workaround for future app dir routes * feat: Allow only first slot to be booked (#12636) Co-authored-by: Morgan Vernay <morgan@cal.com> * New Crowdin translations by Github Action * feat: add matomo analytics app (#12646) * chore: Sentry Wrapper with Performance and Error Tracing (#12642) * add wrapper for sentry and update functions in 'getUserAvailability'. Update tracesSampleRate to 1.0 * Make Sentry Wrapper utilize parent transaction, if it exists. * Update wrapper for functions to inherit parameters from the child function * add comment of when to use the wrapper * check for sentry before wrapping, if not call unwrapped function * refactored wrapper to have async and sync separate functions that utilize helpers for common behaviour * update type of args to unknown * fixed types of returns from wrapped functions --------- Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com> * validate api keys to set error and key states for api keys * organize error messages into one place * set error messages from errors file instead of hardcoding value * fix incorrect constant name --------- Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com> Co-authored-by: Peer Richelsen <peeroke@gmail.com> Co-authored-by: Crowdin Bot <support+bot@crowdin.com> Co-authored-by: Pratik Kumar <70286186+Pratik-Kumar-621@users.noreply.github.com> Co-authored-by: Udit Takkar <udit222001@gmail.com> Co-authored-by: Samyabrata Maji <116789799+samyabrata-maji@users.noreply.github.com> Co-authored-by: Manpreet Singh <manpoffc@gmail.com> Co-authored-by: Benny Joo <sldisek783@gmail.com> Co-authored-by: Dmytro Hryshyn <dev.dmytroh@gmail.com> Co-authored-by: DmytroHryshyn <125881252+DmytroHryshyn@users.noreply.github.com> Co-authored-by: zomars <zomars@me.com> Co-authored-by: Varun Prahlad Balani <varunprahladbalani@gmail.com> Co-authored-by: Mike Zhou <mikezhoudev@gmail.com> Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com> Co-authored-by: Haran Rajkumar <haranrajkumar97@gmail.com> Co-authored-by: Morgan Vernay <morgan@cal.com> Co-authored-by: Harshith Pabbati <pabbatiharshith@gmail.com> Co-authored-by: Brendan Woodward <73412688+bwoody13@users.noreply.github.com> Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com> * fix: storybook atom import * feat: oauth clients management (#12604) * feat: oAuth create and update dtos * feat: WIP oAuth repository * feat: oAuth controller and module * refactor: rename cal oAuth to simply oauth * fix: controller update client * add oAuth client module to endpoints module * refactor: OAuthClientRepository * refactor * status codes for controller * oauth create return * fix: oAuth client only for v2 API * remove repository as provider from its module * fix: oAuth module, have repository in providers * fix: make endpoints run * comment out oauth prisma schema code: coming next * refactor: remove api-key authguard (#12675) * chore: Prisma exception filters (#12679) * fix: get prisma schema from package @calcom/prisma (#12692) * fix: get prisma schema from package @calcom/prisma * fixup! fix: get prisma schema from package @calcom/prisma * fixup! fixup! fix: get prisma schema from package @calcom/prisma * fix: prettier config * fixup! fix: prettier config * chore: create authenticated user guard (#12677) * chore: wip next-auth-guard for apiv2 * refactor: use NextAuthGuard on all OAuthClientController routes * refactor: use passport to get next user * exclude password from prisma read service * Revert "exclude password from prisma read service" This reverts commit 24b1f8ed59f6d99f0ecc589c691efb0ac1f2ac3b. * fix: userRepo sanitize password * refactor: function order in UserRepository * implement user repository service * refactor: strict null checks for TS * refactor: fix strict null checks * delete res locals type * refactor: switch from zod to class-validator for oAuth client * refactor: switch from zod to class-validator for booking * refactor: rename dtos folder to input folder * fix: create migration for prisma schema oauth clients table * feature: post oAuth client * refactor: rename oAuth client_secret to secret * stricter ts config + oauth secret * remove migrations * fix: improve response type * improve error code types * fix: prettier by removing eslint as its not needed * refactor: eslint fix files * wip organization oauth_lcient * fix import types * fix team schema platformOAuthClient name * fix: import packages transpiled * feat: roles guard * refactor: use organisationId instead of userId * fix: jwt secret signing not having jwt_secret * fix: stop importing input DTOs as types * fix: jwt sign expecting plain object * add sentry, routes logger, generic response type * fix test config * fixup! fix test config * refactor: dont await async function return * feat: fallback value for getEnv * feat: add helmet for security * feat: organization guard * refactor: check if user set in RolesGuard * refactor: remove roles requirement for oauth read * chore: add exceptions filters * fix: api key strategy throws errors * chore: set e2e tests * chore: centralize api type in package * feat: user repository relations * feat: user repository relations * Revert "feat: user repository relations" This reverts commit 1802b256b5a6e5c9b6a62138c8cb1b6f75ed401b. * Revert "feat: user repository relations" This reverts commit 4a8f52583d95ff15b6254694c976d8ec9ce0e546. * test: mock next auth * fixup! test: mock next auth * test:oAuth authed user but no org * refactor: remove unused type * refactor: organisation guard based on Membership table * refactor: folder and file structure * fix: small changes exception filters * refactor: merge organization and roles guards into one guard * fix: remove old export * fix: org roles guard --------- Co-authored-by: supalarry <lauris.skraucis@gmail.com> * chore: OAuth clients tests and fixes (#12762) * chore: add tests and fixes * fixup! chore: add tests and fixes * fixup! fixup! chore: add tests and fixes * fixup! fixup! fixup! chore: add tests and fixes * fixup! fixup! fixup! fixup! chore: add tests and fixes * fixup! fixup! fixup! fixup! fixup! chore: add tests and fixes * fixup! fixup! fixup! fixup! fixup! fixup! chore: add tests and fixes * fix: remove unused imports * chore: move repos to feature folder (#12769) * chore: rename repositories * fix yarn.lock * feat: oauth client guard (#12814) * feat: oAuth client guard * refactor test * refactor: move oauth-client guard to oauth module * refactor: separate jest config from package.json * fix: resolving paths in jest tests * fix: tests * jest setup file * fix: jest test warnings about .js platform constants imports * refactor: test repository fixtures * remove allowjs * ignore js files in ts-jest * make oauth client module global * make oauth client module global * feat: platform oAuth clients frontend (#12867) * add oauth client to settings * fix imports * add react and axios * oauth client form and card components * hooks for oauth clients data * index page for oauth clients * oauth client list component * oauth client form page * shift atoms into platform * init platform folder * refactor handleSubmit functioin * platform * platform * platform parts * revert tsconfig constant platform * fix: useOauthClients * feat: create oauth client with api * fix: add prettier to platform type package * fixup! fix: add prettier to platform type package * chore: class-validator types in platform package * add types for delete oauth client iput * add onSuccess and onError methods * update oauth client card view with client id and secret * cleanup comments * split oauth persisit hook into create and delete hooks * fix: oauth client creation / deletion / listing * fixup! fix: oauth client creation / deletion / listing * fix: comment logo for now * fix: layout setting org keys * cleanup comments * minor style fixes, add logic for client permissions * show toast after deleting client * not passing clint logo at the moment --------- Co-authored-by: Morgan Vernay <morgan@cal.com> * chore(platform): OAuth Flow (#12798) * fixup! chore(platform): OAuth Flow (#12798) * feat: CRUD for oAuth users (#12853) * user controller with oauth guard * crud repository and controller operations * add user controller to user module * refactor: oauth guard * connect user with oauth client upon creation * fix: test * wip: e2e test * refactor: findUniqueOrThrow -> findUnique user * test: POST user request * feat: permissions guard * e2e tests * e2e * e2e refactor * e2e refactor * reflector decorator check refactor * refactor oauth guard * remov unused imports * log message * delete permissions decorator and guard * remove delete user endpoint * remove delete user endpoint * refactor: route structure * remove get oauth client decorator * delete unecessary e2e config changes * remove set header in post test * fix: oauth guard test on empty db * revert: add previously removed constant to fulfill merge platform * fix: import to satisfy platform branch merge * use real implementation of access token guard * generate access & refresh tokens and fix e2e * fix: oauth client e2e test * refactor: variable naming * refactor * rename test file * remove oauth client from request * refactor: v2 API (#12913) * Use Boolean only instead of git add src/modules/auth/guard/organization-roles/organization-roles.guard.ts * move tests next to files they test * replace .. in import paths with absolute path * camelCase instead of snake_case for access and refresh token variables * user sanitize function Typescript friendly * restructure oAuth clients folder: example for other folders * restructure bookings module * organize modules in auth, endpoints, repositories, services * organize auth module * organize repositories * organize inputs * rename OAuthClientGuard to OAuthClientCredentialsGuard * add error messages * add error messages * clientId as param in oauth-flow & schema mapping * camelCase instead of snake_case for clientId and clientSecret * access token guard as passport strategy * folder structure as features * get rid of index files * feat: endpoint for deleting oAuth users & oAuth users returned data (#12912) * feat: delete oAuth users * check if access token matches userId in parameter * driveby: return only user id and email in oauth users endpoints * refactor: access token errors (#12932) * change error messages * error message if access token does not exist in our database * token expired 498 * access token expired message as constant * store 498 status code as const * fix: access token error less information given * chore: invalid access token const --------- Co-authored-by: Morgan Vernay <morgan@cal.com> * feat: external gcal (#12954) * wip connect gcal * feat: add external google calendar * fixup! feat: add external google calendar * fix: google calendar oauth check invalid * google cal check tests * use zod * fix: await validate access token service * chore: e2e tests for oAuth flow (#13005) * fix: accessing length of undefined * refactor: GetUser throw error if no user provided * fix: cascade delete PlatformAuthorizationToken if owner or client deleted * test: POST /authorize * refactor oauth-flow controller * refactor oauth-flow controller * new function to get authorization token by client user ids * refactor token service * fix: re-created access and refresh tokens having not unique secret * oauth flow tests * oauth flow tests * feat: abstracted jwt service (#13016) * remove unused JwtModule from the auth module * feat: create abstracted jwt service * refactor: tokens module and service use new jwt service * refactor: oauth-client module and repository use new jwt service * implement Morgans requests * Basic atoms in barebone example platform apps (#13006) * example app * example app * dev move * fix: more entry points * fixup! fix: more entry points * refactor: v2 API (#12913) * Use Boolean only instead of git add src/modules/auth/guard/organization-roles/organization-roles.guard.ts * move tests next to files they test * replace .. in import paths with absolute path * camelCase instead of snake_case for access and refresh token variables * user sanitize function Typescript friendly * restructure oAuth clients folder: example for other folders * restructure bookings module * organize modules in auth, endpoints, repositories, services * organize auth module * organize repositories * organize inputs * rename OAuthClientGuard to OAuthClientCredentialsGuard * add error messages * add error messages * clientId as param in oauth-flow & schema mapping * camelCase instead of snake_case for clientId and clientSecret * access token guard as passport strategy * folder structure as features * get rid of index files * feat: endpoint for deleting oAuth users & oAuth users returned data (#12912) * feat: delete oAuth users * check if access token matches userId in parameter * driveby: return only user id and email in oauth users endpoints * Connect CalProvider and GCal * Connect CalProvider and GCal * return response interceptor to handle failed requests * handle failed requests using axios intercepter * cal provider refresh tokens, external gcal * external gcal * cal provider refresh and retries * remove console.log * refactor * ignore built atoms css * remove change to token repo * refactor * refactor * downdgrade vite of unrelated packages * move gcal endpoints to platform * gcal service * refactor: use atoms provider --------- Co-authored-by: Lauris Skraucis <lauris.skraucis@gmail.com> Co-authored-by: Ryukemeister <sahalrajiv-extc@atharvacoe.ac.in> * feat: user schedule management (#13053) * platform-constants package: list of accepted schedule timezones * feat: schedules endpoint to create schedule with default availability * refactor: rename function * refactor: store userId for availabilities * feat: createSchedule endpoint * feat: get schedules/default * feat: getSchedule by id * feat: get all schedules * feat: delete schedule * feat: update schedule * check user owns schedule * empty test * define returned data on controller level not repository * define returned data on controller level not repository * Revert "define returned data on controller level not repository" This reverts commit 4c292a0f0762f58bdcad0707ad8eef7408390800. * use luxton * put availabilities out of ee * use guard on controller level * refactor * e2e test schedule creation * remove log * test * default schedule get test * update schedule test * delete schedule test * fix update test * different email for schedules e2e * driveby: fix yarn test * schedule inputs availabilities as array * re-use BaseStrategy class * feat: me endpoint v2 api (#13274) * feat: me endpoint v2 api * simplify * chore: NestJS throttling (#13011) * fix: v2 throttling setup (#13402) * fix: v2 throttling * fix: setup redis locally * move sentry files to api v1 * chore: calcom platform libraries (#13444) * fixup! chore: calcom platform libraries (#13444) * fix: fix managed users * feat: user timezone management in `CalProvider` (#13361) * hooks to fetch and update user timezone * add react query package * add logic to check for change in user timezone and update it * hook to handle timezone changes * shift timezone handling logic into separate custom hook * rename variables * rename hook to get a user * call useTimezone hook inside of cal provider * minor refactors * add variables for api endpoints * use URL constructor for creating endpoints * key prop not needed * use URL constructor for creating endpoints * chore: package json scripts * fix(atoms): fix import path of useUpdateUserTimezone * fix(atoms): build constants and fix ENDPOINTS const * feat: v2 api event type endpoints (#13449) * build platform-libraries * make getEventTypeById compatible with default PrismaClient * feat: fetch event type endpoint * handle event type not found * e2e test for GET * test * determine is user org admin for getEventTypeId correctly * prisma type like before * add negative test * POST event-type and return event-type for api and atom * POST event-type and return event-type for api and atom * feat: create default user event types when creating managed user * feat: v2 api me PUT endpoint (#13486) * add timeZone to me endpoint * feat: me endpoint PUT * reset package.json * standardize creation and updating of user * user creation: capitalize timezones and week start * default event type constants in const file * refactor: defaultTimezone Europe/London in response schema * refactor: validators * refactor: default schedule in schedules endpoints * refactor: patch instead of put * fix: getEventTypeById organizationId (#13554) * chore: transpile more libraries functions * feat: overlay calendar busy dates events (#13581) * feat: overlay calendar busy times events * fixup! feat: overlay calendar busy times events * fixup! fixup! feat: overlay calendar busy times events * fixup! fixup! fixup! feat: overlay calendar busy times events * refactor: schedules for atom (#13585) * schedules get.handler transformers as util functions * export schedule transformers from platform-libraries package * schedules for atom * refactor: schedules response service format response * remove unused injected dependency * fix: prevent duplicate calendar account linking (#13310) * fix: prevent signing up multiple times from same account * revert: lark calendar changes * credential clean up if duplicate * fix code duplication and check before credential creation * feat: useRouterQuery allow unset queryParam * feat: showToast on account duplication attempt * Small tweak to copy * Updated other calendars not to use checkDuplicateCalendar * Add account already linked to apps/installed/calendar --------- Co-authored-by: Keith Williams <keithwillcode@gmail.com> Co-authored-by: Alex van Andel <me@alexvanandel.com> Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com> * Revert event-type profile based querying (#13588) * test: Bookings: Add more automated tests for organization (#13576) * Avoid selecting unused props * Add automated tests * Add existing user invite and booking --------- Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com> * fix: organization user shouldn't be asked for payment for a premium username (#13535) Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com> * chore: refactor handle new reccuring booking (#13597) * chore: refactor handle new reccuring booking * fixup! chore: refactor handle new reccuring booking * fixup! fixup! chore: refactor handle new reccuring booking * test: Create unit tests for the questions (teste2e-multiSelectQuestion) (#11569) * Remove unnecessary changes * add changes * Requested changes * Requested changes * FIx failing tests * FIx failing tests * Update regularBookings.ts * FIx failing tests * Refactor * add unit tests for all questions --------- Co-authored-by: gitstart-calcom <gitstart-calcom@users.noreply.github.com> Co-authored-by: GitStart-Cal.com <121884634+gitstart-calcom@users.noreply.github.com> Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com> Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com> Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com> * fix: update valid_for_secs (#13604) * fix: Fixes teams UI load issue (#13593) * fixes teams uiload issue * revert: yarn.lock --------- Co-authored-by: Udit Takkar <udit222001@gmail.com> * chore: upgrades boxyhq jackson (#13477) * chore: upgrades boxyhq jackson * Update jackson.ts reduces bundle size * Update yarn.lock * Update apps/web/next.config.js * Upgrades again --------- Co-authored-by: Keith Williams <keithwillcode@gmail.com> * upgrades copycat * feat: PLA-47 Reserve Slots Handler (#13607) * PLA-44 feat: Platform getPublicEvent (#13596) * chore: getPublicEvent * chore: fix * feat: booker atom bookings platform endpoints (#13613) * feat: handle new booking * wip * feat: handle recurring and instant booking * fixup! feat: handle recurring and instant booking --------- Co-authored-by: Peer Richelsen <peeroke@gmail.com> * fix: v2 not running (#13636) * fix: import from platform-libraries instead of lib * fix: typescript error * fix: provide EventTypesRepository to SlotsService * fix: small change * Merge branch 'main' into platform * fix: make v2 run after user model changes (#13653) * feat: event type atom user connected and destination calendars endpoint (#13559) * extract connected calendars logic in re-usable platform-libraries function * extract connected calendars logic in re-usable platform-libraries function * extract connected calendars logic in re-usable platform-libraries function * calendars endpoints * enable calendars endpoint * calendars type form platform-libraries instead of lib * finish merging platform branch * fix dbWrite * fix: issue after merge platform * fix: new abstracted function export * change ee/overlay-calendars to ee/calendars endpoint * refactor: merge overlay service with calendars service * ts fix * body -> query * chore: Platform get schedule (#13696) * chore: get available slots * chore: infer event type isTeam * chore: nit * chore: Delete selected slot (#13692) Co-authored-by: Morgan Vernay <morgan@cal.com> * feat: v2 endpoint for availability atom timezones (#13687) * refactor: move cityTimezones handler to lib * test: incorrect timezone when creating oauth user * refactor: standardize time zone validation * feat: schedules/time-zones endpoint returning possible time zones * refactor: @IsValidTimezone load allowed timezones dynamically * chore: split timezones to its own trpc router --------- Co-authored-by: Morgan Vernay <morgan@cal.com> * fix after merge main * feat: platform useGetPublicEvent (#13752) * feat: platform useGetPublicEvent * chore: move public event type to libraries * chore: use const for query key * fixup CalendarBusyTimesInput optional params * feat: platform use get available slots (#13756) * feat: platform use get available slots * fixup! feat: platform use get available slots * feat: platform use get connected calendars (#13757) * chore: platform enable cors (#13774) * chore: enable cors * fixup! chore: enable cors * feat: platform use get calendars busy times (#13759) * fixup! feat: platform use get calendars busy times (#13759) * feat: platform use slots hooks (#13785) * feat: platform use slots hooks * fixup! feat: platform use slots hooks * fixup! fixup! feat: platform use slots hooks * fixup! fixup! fixup! feat: platform use slots hooks * fixup! fixup! fixup! fixup! feat: platform use slots hooks * fixup! feat: platform use slots hooks (#13785) * feat: platform use create boookings hooks (#13797) * feat: `Availability Settings` atom (#13762) * styling and updating the examples app * add custom hooks for availability settings atom * update default exports * minor updates * update cal provider to use react query * availability settings atom * dialog from shadcn * navbar for examples app * add select skeleton loader in calcom ui packages * refactors * define rtl for cal provider * fox trpc call to avoid merge conflicts * fix issues caused by merges * revert changes for rtl * hook to fetch every city timezones * implement useGetCityTimezones into timezone component * minor fix * update hooks * add props and intergrate into avaialibility component * add missing await * remove logs * add comments * invalidate queries after settled * toaster from shadcn * add toaster into cal provider * implement toast on event handlers * add classnames prop to accept custom styles * passing custom styles * update packages * remove comments * fix: styling * fix: useUpdateSchedule * fixup! fix: useUpdateSchedule * wip * feat: availability setting atom * fixup! feat: availability setting atom * fixup! fixup! feat: availability setting atom * fixup! fixup! fixup! feat: availability setting atom * fixup! fixup! fixup! fixup! feat: availability setting atom --------- Co-authored-by: Morgan Vernay <morgan@cal.com> * fix: atoms import * chore: lock * fix: types * fixup! fix: types * refactor: v2 user timezones (#13944) * fix: OAuth client form improvements (#13837) * rename app to apps * fix type errors, validate redirect url and other fixes * enable user to add multiple redirect uris * add id to input to make labels clickable * translations for oauth form * improve styles, add translations and add select all button for permissions * add permissions for profile read and write * fixes * nit * use `useFieldArray` for dynamic fields --------- Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com> * refactor: check organizationId primarily on user profile (#13969) * refactor: attach movedToProfile to user * refactor: check organizationId primarily on user profile * fix: resolve TS errors to build v2 for prod (#13858) * feat: atoms typescript build (#13864) * fix: atoms typescript build * refactor: dayjs * refactor: meticulous * refactor: use vite for type generation * tsconfig * feat: given user timezone update update default schedule timezone (#13981) * refactor: standardize schedules api response * fix: schedules e2e tests * refactor: use IsTimeZone class-validator instead of custom built one * feat: validate managed user timezone * feat: update default schedule when me schedule updated * refactor: standardize v2 api returned data (#13984) * feat: V2 api swagger (#13804) * feat: v2 API swagger docs * fix: query param not showing up in docs * latest swagger.json * refactor: remove scaffolded sample endpoint * separate internal endpoints * oauth-clients and oauth flow docs only in dev * oauth-clients and oauth flow docs only in dev * create oauth client response doc * responses for oauth-clients * document development only endpoints * chore: consume auth token on exchange (#13993) * feat: docker build for v2 (#13918) * fix: resolve TS errors to build v2 for prod * WIP: api v2 docker * arg env dockerfile * wip * Revert "wip" This reverts commit 232adf5b969ef004ae907f3e85b12c2715d9b6bc. * wip * wip * fix docker * fix docker * fix docker * docker * docker * expose port 80 * feat: oauth client permissions guard (#14020) * feat: Permissions guard * feat: Permissions guard * tests * feat: use permissions guard for event types * extra permissions test * fix tests * bokings, gcal, me and schedules permissions * chore: use availability settings atom and fix useTimezone platform hook (#13934) * replace availabiilty settings with atom component * add more props for custom styles * replace intl with dayjs * review feedback fixes * fix: v2 api typescript errors (#14059) * fix: start:prod script * fix: v2 me module dependencies (#14073) * feat: check v2 request origin (#14074) * feat: check v2 request origin * drive by: remove console log in test --------- Co-authored-by: Lauris <lauris@Lauriss-Laptop.local> * fix date overrides typing issues (#14091) Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com> * fix: v2 e2e tests (#14088) * fix: v2 e2e tests * fix: yarn e2e tests run 1 after another * fix gcal test --------- Co-authored-by: Lauris <lauris@Lauriss-Laptop.local> * fix: availability atom and access token origin strategy * fix: availability atom get error from unknown * feat: booker atom platform wrapper (#14036) * feat: booker atom, fix hooks * wip * feat: booker atom platform wrapper * fix conflicts * fix: build v2 internal dependencies upon v2 build * fix typing of useDeleteOAuth * fix: isplatform timezone select improt booker event meta * fixup! Merge branch 'platform' into feat-booker-atom-platform * refactor * add video call event types * disable email and set managed user names --------- Co-authored-by: supalarry <lauris.skraucis@gmail.com> * update yarn.lock * Update .prettierignore * update post install * fix: post install * fix yarn lock * fix: post install * fix: types * feat: enable user control over timezone changes and helpers for query params (#14049) * helpers to get and set value of a query paramater * add event handlers and props to figure out the timezone preference of a user * make onTimeZoneChange handler optional * fixup * fix merge conflicts * fixup * revert changes * fixup * fixup --------- Co-authored-by: Alex van Andel <me@alexvanandel.com> * fix: usetimezone import * fix: prisma client import * fix: prisma client import * fix: prisma client import * remove post install using vite * ts fix attempt: pin prisma to same version * Revert "ts fix attempt: pin prisma to same version" This reverts commit 2c309f52e3a881e2dbda4185f45e77967bef6925. * resolve v2 prisma to calcom prisma * sync v2 and typescript deps * sync atoms package * lock file updat * fix: platform web components move out of pages folder * ui: allow experimental decorators to fix ts ci error * app-store: allow experimental decorators to fix ts ci error * web: allow experimental decorators to fix ts ci error * fix: github actions v2 api secrets * add license * mock useIsPlatform for tests * fix timezone select tests * mock useLocale * fix tests * fix tests * fix tests * fix github actions * chore: temporarily disable redis (#14142) * fix: only one migration file for platform * fix api v1 files location * fix: disable apiv2 test in ci --------- Co-authored-by: Ryukemeister <sahalrajiv-extc@atharvacoe.ac.in> Co-authored-by: Lauris Skraucis <lauris.skraucis@gmail.com> Co-authored-by: Erik <erik@erosemberg.com> Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com> Co-authored-by: Peer Richelsen <peeroke@gmail.com> Co-authored-by: Crowdin Bot <support+bot@crowdin.com> Co-authored-by: Pratik Kumar <70286186+Pratik-Kumar-621@users.noreply.github.com> Co-authored-by: Udit Takkar <udit222001@gmail.com> Co-authored-by: Samyabrata Maji <116789799+samyabrata-maji@users.noreply.github.com> Co-authored-by: Manpreet Singh <manpoffc@gmail.com> Co-authored-by: Benny Joo <sldisek783@gmail.com> Co-authored-by: Dmytro Hryshyn <dev.dmytroh@gmail.com> Co-authored-by: DmytroHryshyn <125881252+DmytroHryshyn@users.noreply.github.com> Co-authored-by: zomars <zomars@me.com> Co-authored-by: Varun Prahlad Balani <varunprahladbalani@gmail.com> Co-authored-by: Mike Zhou <mikezhoudev@gmail.com> Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com> Co-authored-by: Haran Rajkumar <haranrajkumar97@gmail.com> Co-authored-by: Harshith Pabbati <pabbatiharshith@gmail.com> Co-authored-by: Brendan Woodward <73412688+bwoody13@users.noreply.github.com> Co-authored-by: Amit Sharma <74371312+Amit91848@users.noreply.github.com> Co-authored-by: Keith Williams <keithwillcode@gmail.com> Co-authored-by: Alex van Andel <me@alexvanandel.com> Co-authored-by: Hariom Balhara <hariombalhara@gmail.com> Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com> Co-authored-by: gitstart-app[bot] <57568882+gitstart-app[bot]@users.noreply.github.com> Co-authored-by: gitstart-calcom <gitstart-calcom@users.noreply.github.com> Co-authored-by: GitStart-Cal.com <121884634+gitstart-calcom@users.noreply.github.com> Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com> Co-authored-by: Anant Jain <75206987+anantJjain@users.noreply.github.com> Co-authored-by: Lauris <lauris@Lauriss-Laptop.local> Co-authored-by: supalarry <laurisskraucis@gmail.com> |
||
|
|
d6605d6dfd |
feat: display org banner on personal event types (#14101)
* feat: display org banner on personal event types * chore: add banner url * fix: type error |
||
|
|
a677d0d2c4 |
fix: Organization Migration - Prevent the redirected username from being claimed by others. (#13675)
* Check for migrated username * Add e2e for reserved username due to migration * Add username change test * Update username.ts * fixed type checks * Refactor to use isOrganization * Typing * Typing * Removed the isOrganization function --------- Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com> Co-authored-by: Keith Williams <keithwillcode@gmail.com> |
||
|
|
0970c77009 |
fix: Revert -> "Revert "chore: Chore team metadata table + isOrganization migration (#13700)
* Revert "Revert "chore: Chore team metadata table + isOrganization migration from metadata (#12828)""
This reverts commit
|
||
|
|
7fef9db4ce |
fix: Reduce payload even further. (#13599)
* Revert "Revert event-type profile based querying (#13588)"
This reverts commit
|
||
|
|
c0c40185fc | Revert event-type profile based querying (#13588) | ||
|
|
66b5dfd796 |
fix: payload cleanup (#13552)
* fix: payload cleanup * Update eventType.ts * Send whitelisted fields everywhere * Removed a user select * Removed extra usage of users * Put back user field with fewer selects * Added user pick * Removed more users selects * Another select removal --------- Co-authored-by: Hariom <hariombalhara@gmail.com> Co-authored-by: Keith Williams <keithwillcode@gmail.com> |
||
|
|
4fe75771b8 |
fix: Broken routing form public links(old links) on migrating the owner user to an organization (#13416)
* Fix routing-form access restrictions * Update packages/app-store/routing-forms/pages/routing-link/[...appPages].tsx Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com> * Fix routing form access issue for users who are never migrated * Improve comment * wip * Fix event-type listing not working * Automatic reload of the app when being added to a different organization --------- Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com> Co-authored-by: Peer Richelsen <peeroke@gmail.com> |
||
|
+1 |
12466fb064 |
feat: New Organization Schema along with the ability to invite existing users to an organization (#13002)
* Add profile table Copy to profile table Update schema Migrations * wip * Get switcher working * Add organization seeder * wip * Remove dead code * Fix unit tests * relevantProfile -> profile * cache bust * One more comment * Squash migrations * Copy to profile table * Update schema * Fix existing user invite flow * Add profile table * Copy to profile table * Update schema * Format * Add profile table Copy to profile table Update schema Migrations * Format * wip Get switcher working Add organization seeder wip Remove dead code Fix unit tests relevantProfile -> profile cache bust One more comment Squash migrations Copy to profile table Update schema Fix existing user invite flow Add profile table Copy to profile table Update schema chore: small improvements to signup (#13227) * removed features on mobile, better background color * nit * dark mode nits New Crowdin translations by Github Action fix: event reschedule workflow trigger (#13122) * fix event reschedule workflow trigger * uncomment previously failed test * review fix --------- Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com> Co-authored-by: CarinaWolli <wollencarina@gmail.com> chore: added community support to help (#13213) refactor: Abstract `handleSeats` from `handleNewBooking` (#12062) * Refactor createBooking * Type fix * Abstract handleSeats * Create Invitee type * Create OrganizerUser type * Abstract addVideoCallDataToEvt * Abstract createLoggerWithEventDetails * Abstract `handleAppStatus` from handler * Create ReqAppsStatus type * Move `deleteMeeting` and `getCalendar` * Set parameters for `handleSeats` * Typescript refactor * Change function params from req * Type fix --------- Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com> Co-authored-by: Erik <erik@erosemberg.com> fix: Dynamic group booking org-migration redirect (#13223) * fix: Dynamic group booking redirect * Fix flaky private team test test: Check availability tab and all your functions (teste2e-availability) (#12434) * add changes * add changes * add changes * add changes * Requested changes * Change way to grab element --------- Co-authored-by: gitstart-calcom <gitstart-calcom@users.noreply.github.com> Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com> Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com> Co-authored-by: Keith Williams <keithwillcode@gmail.com> Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com> fix: Reschedule a cancelled booking (#13170) * fix: Reschedule a cancelled booking * canceled instead of cancelled --------- Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com> Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com> v3.7.0 test: In Team Event type when location is Organizer Default App and U… (#12939) * test: In Team Event type when location is Organizer Default App and User Metadata is emoty * chore: use variable * fix: type error test: add test for invalid cal video (#13103) * test: add test for invalid cal video * chore: add confirm * chore: fix type error * chore: update code * test: add unit test * chore: type error * chore * chore: type * chore: fix test * chore --------- Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com> chore: add error message for no availability (#13230) * chore: add error message for no default user availability * chore: check only availability * chore: change message * chore: add eventType fix: Team revert with members (#13228) refactor: Refactor seats logic (#12905) * Refactor createBooking * Type fix * Abstract handleSeats * Create Invitee type * Create OrganizerUser type * Abstract addVideoCallDataToEvt * Abstract createLoggerWithEventDetails * Abstract `handleAppStatus` from handler * Create ReqAppsStatus type * Move `deleteMeeting` and `getCalendar` * Set parameters for `handleSeats` * Typescript refactor * Change function params from req * Type fix * Move handleSeats * Abstract lastAttendeeDeleteBooking * Create function for rescheduling seated events * Fix imports on reschedule seats function * Fix imports * Import handleSeats function * Fix rescheduleUid type * Refactor owner reschedule to new time slot * Refactor combine two booking times together * Reschedule as an attendee * Refactor createNewSeat * Remove old handleSeats * Remove lastAttendeeDeleteBooking from handleNewBooking * Test for new attendee right params are passed * Unit test params for reschedule * Typo fix * Clean up * Create new seat test * Test when attendee already signs up for booking * Type fix * Test reschedule move attendee to existing booking * On reschedule create new booking * Test on last attendee cancel booking * Owner reschedule to new time slot * Owner rescheduling, merge two bookings together * Test: when merging more than available seats, then fail * Test: fail when event is full * Remove duplicate E2E tests * Clean up * Rename `addVideoCallDataToEvt` to `addVideoCallDataToEvent` * Refactor `calcAppsStatus` * Assign `evt` to resutl of `addVideoCallDataToEvent` * Use prisma.transaction when moving attendees * Clean create seat call * Use ErrorCode enum * Use attendeeRescheduledSeatedBooking function * Await function * Prevent double triggering of workflows * Use inviteeToAdd in createNewSeat * Remove unused error code * Remove old handleSeats file * Type fix * Type fix * Type fix * Type fix * Type fix * Type fix * Type fix * Type fix --------- Co-authored-by: Morgan <33722304+ThyMinimalDev@users.noreply.github.com> Co-authored-by: Peer Richelsen <peeroke@gmail.com> Co-authored-by: Erik <erik@erosemberg.com> feat: Allow admins to filter bookings only by attendee emails (#13236) * chore: Allow admins to filter bookings only by attendee emails * Fix type error Fixed [CAL-2930] Org branding isnt centered in shell #13225 (#13237) Add profile table Copy to profile table Update schema Migrations Format * wip * Add profile relation everywhere * Fix schema * Fix invite handler * Add profileId during eventTypec reation * Get dashboard working with profile relatioon * Add workflow create repository * Add profileId to host * Add profileId to credential table * Add destinationCalendar repository * Add profileId to membership * Revert all profile related changes * Add acme and dunder * Fix membership profileId usgae * Various fixes * Some renaming * Fix failing tests * Debugging next-aut * Consolidate migrations * Testing fixes * Fix unit tests * Self review feedback * PR feedback * Fix orgMigration as well * Add profile schema and copy users to it * Remove migrations from here * Fix type issues * Fix type error after main merge * Remove movedFromUserId * Add missing migration file * Self review addressed * Joe's review addressed * Fix profile switcher --------- Co-authored-by: Joe Au-Yeung <65426560+joeauyeung@users.noreply.github.com> |