Commit Graph
7233 Commits
Author SHA1 Message Date
Zachariah K. Sharma dda6e1dcdd Expose team tRPC endpoint
Create PR containing updated CHANGELOG.md and release packages to NPM once PR is merged / Release (push) Has been cancelled
Run i18n AI automation / Run i18n (push) Has been cancelled
Next.js Bundle Analysis / analyze (push) Has been cancelled
2026-06-08 19:06:52 -06:00
Zachariah K. Sharma 3581bad590 Allow standalone team settings route
Create PR containing updated CHANGELOG.md and release packages to NPM once PR is merged / Release (push) Has been cancelled
Run i18n AI automation / Run i18n (push) Has been cancelled
Next.js Bundle Analysis / analyze (push) Has been cancelled
2026-06-08 18:22:01 -06:00
Zachariah K. Sharma 43969cd00c Expand standalone team settings
Create PR containing updated CHANGELOG.md and release packages to NPM once PR is merged / Release (push) Has been cancelled
Run i18n AI automation / Run i18n (push) Has been cancelled
Next.js Bundle Analysis / analyze (push) Has been cancelled
2026-06-08 11:58:15 -06:00
Zachariah K. Sharma 3ccbee69fd Use registry image for Portainer deployment
Create PR containing updated CHANGELOG.md and release packages to NPM once PR is merged / Release (push) Has been cancelled
Run i18n AI automation / Run i18n (push) Has been cancelled
Next.js Bundle Analysis / analyze (push) Has been cancelled
2026-06-07 22:24:27 -06:00
Zachariah K. Sharma a23450a740 Remove premium username checkout dependency 2026-06-07 15:20:14 -06:00
Zachariah K. Sharma cac69afe26 Fix public team booking fixture 2026-06-07 15:17:56 -06:00
Zachariah K. Sharma 8e4094c67b Remove Stripe and paid booking flows 2026-06-07 15:17:29 -06:00
Zachariah K. Sharma 5026e0ea22 Enforce team booking visibility 2026-06-07 15:12:45 -06:00
Zachariah K. Sharma 88eb10a869 Restore public team booking pages 2026-06-07 12:31:14 -06:00
Zachariah K. Sharma ea213b8ccf Restore team event creation 2026-06-07 12:13:21 -06:00
Zachariah K. Sharma e7326095d1 Gate team management controls by role 2026-06-07 12:02:12 -06:00
Zachariah K. Sharma 6392aa84e9 Add team management pages 2026-06-07 11:57:56 -06:00
Zachariah K. Sharma 4bbb83d135 Configure Authentik OIDC authentication 2026-06-06 23:24:11 -06:00
d1ad4ea8b2 fix(eventtypes): persist requiresCancellationReason selection (#29282)
Co-authored-by: Bandhan Majumder <133476557+bandhan-majumder@users.noreply.github.com>
2026-06-03 09:51:54 +00:00
ArjunandGitHub 180ede28f0 fix: add system-ui fallback to font stack for non-Latin script support (#29346) 2026-05-14 19:30:21 +00:00
RomitandGitHub a4a01a0fa8 cleanup(attributes): remove entrypoints (#29034)
* refactor: remove attributes and segments entrypoints

* fix: restore segment entrypoints

* cleanup
2026-05-05 15:03:00 +05:30
Mandar JoshiandGitHub 46eb533dbd chore: tidy up typos across docs, comments, and setup copy (#29260) 2026-05-03 13:45:57 +00:00
RomitandGitHub d278d6c9bc refactor: remove dead insights references (#29029) 2026-05-01 08:22:35 +05:30
RomitandGitHub 9cd1f34f16 cleanup(workspace-platform): remove entrypoints (#29035)
* refactor: remove workspace platform entrypoints

* cleanup
2026-05-01 02:46:18 +00:00
RomitandGitHub 91341cbba4 cleanup(webhooks): remove instant meeting trigger support (#29022)
* cleanup(webhooks): remove instant meeting trigger support

* remove dead code

* remove instant meeting from prisma enums and related cleanup

* fix(webhooks): make instant meeting enum migration atomic
2026-05-01 08:11:32 +05:30
Prateet TiwariandGitHub 1591a50bc5 fix(app-store): normalize search to handle spacing and casing issues (#29236)
- Fixes search mismatch for apps like 'Zoho CRM' vs 'zohocrm'
- Normalizes input by removing spaces, dashes, and underscores
- Updates ZohoCRM display name to 'Zoho CRM' for consistency
- Keeps change minimal without expanding search scope
2026-04-30 15:48:03 +00:00
Cael ShepleyandGitHub 44ccc72f99 fix: onboarding "Continue" button overlaps Bio textarea on small viewports (#29046)
* Update OnboardingCard.tsx

* Update OnboardingLayout.tsx
2026-04-29 12:33:21 +00:00
RomitandGitHub d2a54e2950 refactor: remove dead workflow runtime config (#29028) 2026-04-28 13:16:45 +05:30
RomitandGitHub ec1ff7eb68 cleanup(test): remove team duration limit integration coverage (#29015) 2026-04-27 00:45:21 +05:30
Akash SantraandGitHub a69c1761b2 fix(event-types): align URL prefix with input text baseline (#29000) 2026-04-26 11:36:40 +00:00
75bd1b3489 fix(ui): vertical alignment issues (#28944)
Co-authored-by: akash-moradiya <akash.moradiya@smallest.ai>
2026-04-23 10:22:38 +00:00
RomitandGitHub 42f4192bd1 cleanup(team-org): drop playwright helpers and fixtures (#28954) 2026-04-22 16:05:05 +05:30
RomitandGitHub 04fcd9f3ab cleanup(team-org): remove e2e tests for removed team/org paths (#28953) 2026-04-22 16:04:41 +05:30
RomitandGitHub 1cc365e56f refactor: drop orphan team/org SSR & page helpers (#28952)
The /org/[orgSlug]/[user] and /team/[slug] routes were removed in the Cal.diy fork (#28903/#28904) but their SSR helpers and Team screen component were left behind. No route, component, or test still imports them (verified with ripgrep). Deleting them removes dead code and makes it clearer that team/org pages are gone.
2026-04-22 16:04:12 +05:30
e9c6d0ee46 fix: vertically center scroll arrows in All Apps category tab (#28937)
Co-authored-by: akash-moradiya <akash.moradiya@smallest.ai>
Co-authored-by: Romit <85230081+romitg2@users.noreply.github.com>
Co-authored-by: Sahitya Chandra <sahityajb@gmail.com>
2026-04-20 16:47:46 +00:00
Benny JooandGitHub ae0079d3e4 fix: Cal.diy followups (#28904)
* fix unit test

* update publisher name

* fix
2026-04-15 13:34:09 +00:00
Benny JooGitHubbenny@cal.com <sldisek783@gmail.com>Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
ab21c7f805 refactor: Cal.diy (#28903)
* feat: Cal.diy — community-driven MIT-licensed fork of Cal.com

This squashed commit contains all Cal.diy changes applied on top of calcom/cal.com main:

- Rebrand Cal.com to Cal.diy across the entire codebase
- Remove Enterprise Edition (EE) features, license checks, and AGPL restrictions
- Switch license from AGPL-3.0 to MIT
- Remove docs/ directory (migrated to Nextra at cal.diy)
- Remove dead code: org tests, EE tips, platform nav, premium username, SAML/SSO, etc.
- Clean up .env.example for self-hosted Cal.diy
- Update Docker image references to calcom/cal.diy
- Update README, CONTRIBUTING.md, and issue templates for Cal.diy community fork
- Add PR welcome bot for Cal.diy contributors
- Fix API v2 breaking changes oasdiff ignore entries
- Replace Blacksmith CI runners with default GitHub Actions

3893 files changed, 20789 insertions(+), 411020 deletions(-)

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

* refactor: remove org-specific /organizations/:orgId endpoints from API v2 atoms controllers (#1701)

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

* fix: revert Cal.diy Inc to Cal.com, Inc. in license files, copyright notices, and package metadata (#1702)

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

* rip out org related comments in api v2

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-04-15 09:52:36 -03:00
Pedro CastroandGitHub a17f28e9ab chore: bump lodash and markdown-it, dedupe minimatch (#28893)
* chore(deps): bump lodash and markdown-it, dedupe minimatch

* chore(deps): bump lodash and lodash-es to 4.18.1
2026-04-14 18:12:16 -03:00
fa77692886 chore: bump dependency resolutions (#28889)
* chore(deps): bump dependency resolutions

* chore(deps): dedupe minimatch in yarn.lock

---------

Co-authored-by: Benny Joo <sldisek783@gmail.com>
2026-04-14 19:43:37 +00:00
Pedro CastroandGitHub f4edb696c0 fix: use updateTag for teams list cache invalidation (#28892) 2026-04-15 00:55:05 +05:30
Pedro CastroandGitHub 7b6572b965 fix: wait for team visibility before navigating in team-management e2e (#28891) 2026-04-14 18:12:40 +00:00
Pedro CastroandGitHub 21eb77012d fix: narrow AssignmentReasonTooltip prop to used fields (#28890) 2026-04-15 02:05:00 +09:00
Pedro CastroandGitHub c0d105e7b3 fix: require uid for booking cancellation on web cancel route (#28868) 2026-04-14 09:12:54 -03:00
Pedro CastroandGitHub d25130274f fix: scope bulk user deletion to callers organization (#28872) 2026-04-14 08:29:46 -03:00
Pedro CastroandGitHub a657723e1c fix: add session and permission checks to webhook settings page (#28769) 2026-04-14 00:46:46 -03:00
f3e07c5223 chore(member-invite): early return for pending mutations while copying invite link (#28753)
* chore(member-invite): early return for pending mutations while copying invite link

* typo fix

* make rabbit happy

---------

Co-authored-by: Romit <85230081+romitg2@users.noreply.github.com>
2026-04-08 23:45:20 +05:30
Abhishek SaxenaandGitHub cdeaca4dc2 fix(web): add vertical padding to social login buttons (#28767) 2026-04-07 18:17:46 +00:00
Yuvraj Angad SinghGitHubbot_apkHariom BalharaDevin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>hariom@cal.com <hariombalhara@gmail.com>Claude Opus 4.6
25857c07e1 feat(bookings): add booking audit logging to instant bookings (#28176)
* feat(bookings): add booking audit logging to instant bookings

wire up BookingEventHandlerService.onBookingCreated in
InstantBookingCreateService to emit audit events, matching the
pattern already used in RegularBookingService and
RecurringBookingService.

* refactor: extract fireBookingEvents and reuse existing orgId

* refactor: derive orgId once and pass to both webhook trigger and audit event

* fix: add missing return in webhook map callback

* refactor: make creationSource required for instant bookings

Both callers (WEBAPP and API_V2) always set creationSource, so validate
it upfront and use CreationSource enum type instead of string | null.

* fix: use ErrorWithCode instead of Error, pass userUuid to audit events

* fix: pass null for hostUserUuid in instant booking audit data

Instant bookings have status AWAITING_HOST with no assigned host,
so the booker's UUID should not be recorded as hostUserUuid.

* fix: address devin review - hostUserUuid and creationSource validation

* fix: address review - bookingMeta, getOrgIdFromMemberOrTeamId, required creationSource

- pass userUuid via bookingMeta instead of separate param (matches RegularBookingService pattern)
- restore getOrgIdFromMemberOrTeamId for proper org resolution instead of eventType.team.parentId
- make creationSource required with runtime validation instead of defaulting to WEBAPP

* fix: enforce creationSource at compile time instead of runtime

use Required<Pick<>> to make creationSource required in the type
signature. removes the runtime check since TypeScript catches
missing creationSource at build time.

* fix: simplify type signature and derive hostUserUuid from booking relation

- Replace Required<Pick<CreateInstantBookingData, 'creationSource'>> with inline { creationSource: CreationSource }
- Include user relation in booking create query to derive hostUserUuid
- Pass newBooking.user?.uuid instead of hardcoding null for userUuid in audit data

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

* chore: trigger CI

* fix: add missing impersonatedByUserUuid to instant booking meta

The CreateBookingMeta type requires impersonatedByUserUuid. Set it to
null for non-impersonated instant bookings.

* fix: show 'awaiting host' in audit log for instant bookings

Use booking status AWAITING_HOST to display "Booked (awaiting host)"
instead of "Booked with Unknown" when no host has accepted yet.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* feat: add booking audit for instant meeting accept via connect-and-join

Extract fireInstantBookingAcceptedAuditEvent to InstantBookingCreateService
and fire it right after the DB update, before side-effect notifications.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* test: add audit logging tests for instant booking creation

* fix: simulate audit failure in resilience test (identified by cubic)

The test 'should not throw when booking audit event fails' was not
actually simulating an audit failure. Added vi.spyOn on
BookingEventHandlerService.prototype.onBookingCreated to reject with
an error, and assert the spy was called, proving the try/catch in
fireBookingEvents properly catches the error without breaking the
booking flow.

Co-Authored-By: bot_apk <apk@cognition.ai>

* test: add audit event tests for connectAndJoin and fix InstantBooking audit test

* test

---------

Co-authored-by: Hariom Balhara <1780212+hariombalhara@users.noreply.github.com>
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: hariom@cal.com <hariombalhara@gmail.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: bot_apk <apk@cognition.ai>
2026-04-04 13:30:03 -03:00
c7ee77ee20 test: improve matchUserToMatchingOrg coverage (#28721)
Co-authored-by: Romit <85230081+romitg2@users.noreply.github.com>
2026-04-03 23:47:56 +05:30
Sahitya ChandraandGitHub 77b2be13b2 fix: resolve flaky 'Book on column layout' E2E test (#28682)
In column view, time slots are always visible. selectFirstAvailableTimeSlotNextMonth
could click stale time slots from the current month before the schedule data refreshed
for the new month. Since isQuickAvailabilityCheckFeatureEnabled is always true in E2E,
isTimeSlotAvailable would check the stale slot against the new month's schedule data,
find no match, and permanently disable the confirm button.

Fix: wait for initial schedule data to load before setting up a waitForResponse listener
for getSchedule, then click incrementMonth and await the response before selecting slots.

Ported from calcom/cal#1107.
2026-03-31 20:04:15 +05:30
ae01092258 fix: use i18n for apps count with proper pluralization (#28479)
* fix: use i18n for apps count with proper pluralization

Replace hardcoded "${installedAppsNumber} apps" with
t("number_apps", { count: installedAppsNumber }) for proper
i18n pluralization support. Removes the TODO comment that
flagged this issue.

Closes #28407

* fix: update e2e test to match i18n singular/plural apps count

---------

Co-authored-by: Sahitya Chandra <sahityajb@gmail.com>
Co-authored-by: Romit <85230081+romitg2@users.noreply.github.com>
2026-03-30 12:31:11 +01:00
RomitGitHubromitgabani1Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
96d78a03d2 fix: add deterministic ordering to attendee queries in booking-seats e2e tests (#28672)
* fix: add deterministic ordering to attendee queries in booking-seats e2e tests

Co-Authored-By: romitgabani1 <romitgabani1.work@gmail.com>

* fix: revert secondAttendeeSeat change, keep original references query per review feedback

Co-Authored-By: romitgabani1 <romitgabani1.work@gmail.com>

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-03-30 16:23:49 +05:30
RomitGitHubDevin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
31f40764da fix: stabilize flaky E2E booking sheet tests by waiting for button visibility (#28631)
Both booking-sheet-keyboard.e2e.ts and bookings-list.e2e.ts intermittently
timeout in CI when clicking the booking item button before the DOM has
finished rendering. Adding explicit waitFor({ state: 'visible' }) on the
role=button element after the parent booking item is visible ensures the
click target is fully ready.

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-03-28 11:37:55 -03:00
Yadong (Adam)andGitHub d6852783b4 fix(apps/web): update digitClassName in VerifyCodeDialog for improved dark mode styling (#28623) 2026-03-28 08:49:58 +00:00
RomitGitHubDevin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
56099f0107 fix: add missing vi.mock() calls to parseFrontmatter test to prevent vitest worker shutdown flakiness (#28626)
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-03-28 14:18:49 +05:30