Commit Graph
88 Commits
Author SHA1 Message Date
Eunjae LeeGitHubDevin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
357c2882ad refactor: apply biome formatting to several packages (#27439)
* refactor: apply biome formatting to Phase 1 packages

Packages formatted:
- packages/app-store-cli
- packages/config
- packages/dayjs
- packages/debugging
- packages/embeds/embed-react
- packages/embeds/embed-snippet
- packages/kysely
- packages/platform/constants
- packages/platform/utils
- packages/testing
- packages/tsconfig

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

* fix: restore non-null assertions in embed-snippet to fix type error

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

* fix: remove ESM import from CommonJS config file

Biome incorrectly added 'import process from node:process' to a CommonJS
file that uses require(). This breaks Jest which expects CommonJS syntax.
The process global is already available in Node.js without explicit import.

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

* refactor: exclude packages/embeds from Phase 1 formatting

Per user request, reverting all biome formatting changes in packages/embeds
to handle separately.

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

* fix: restore const enum for BookingLocations

Biome changed 'const enum' to 'enum' which is a semantic change.
Reverting to keep the PR purely formatting-only.

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

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-02-05 07:24:34 -03:00
Dhairyashil ShindeandGitHub dcf10935de feat: add missing event type fields for advanced settings in api v2 (#25739)
* feat: api v2 add missing event type fields for advanced settings

Add 9 event type fields to API v2 that were available in tRPC but missing from the platform API:

- disableCancelling: disable cancelling for guests/organizer
- disableRescheduling: disable rescheduling for guests/organizer
- canSendCalVideoTranscriptionEmails: send Cal Video transcription emails
- autoTranslateInstantMeetingTitleEnabled: auto-translate instant meeting titles
- interfaceLanguage: preferred booking interface language
- allowReschedulingPastBookings: allow rescheduling past events
- allowReschedulingCancelledBookings: allow booking via reschedule link
- customReplyToEmail: custom reply-to email for confirmations
- showOptimizedSlots: optimize time slot arrangement

Updated output/input schemas, transformation services, and E2E tests.

* fix(api-v2): add proper OpenAPI types for nullable event type fields

Add explicit type and nullable properties to @ApiPropertyOptional decorators
for fields with `boolean | null` or `string | null` types. Without these,
Swagger was generating incorrect "type": "object" instead of the correct types.

Fixed fields:
- disableCancelling: type: Boolean, nullable: true
- disableRescheduling: type: Boolean, nullable: true
- interfaceLanguage: type: String, nullable: true
- allowReschedulingCancelledBookings: type: Boolean, nullable: true
- customReplyToEmail: type: String, nullable: true
- showOptimizedSlots: type: Boolean, nullable: true

* refactor: customReplyToEmail was intentionally excluded from this PR. The web UI
restricts this field to only allow the user's own verified emails via a
dropdown, but implementing the same validation in the API requires additional
business logic. This will be addressed in a separate PR with proper email
ownership validation.

* feat(api-v2): add validation for interfaceLanguage field

Add @IsIn validation to interfaceLanguage field to only accept supported
locales. This ensures API v2 matches the web UI behavior where users can
only select from a predefined dropdown of supported languages.

Changes:
- Add SUPPORTED_LOCALES constant to @calcom/platform-constants
- Add @IsIn([...SUPPORTED_LOCALES]) validation to create/update DTOs
- Add E2E tests for invalid locale rejection (400 error)
- Add cross-reference comments in i18n.json and api.ts to keep in sync

* docs(api): add default values to event type input field documentation

Added default value documentation to @DocsPropertyOptional decorators
for the new event type fields in API v2 (2024_06_14):

- disableCancelling: false
- disableRescheduling: false
- canSendCalVideoTranscriptionEmails: true
- autoTranslateInstantMeetingTitleEnabled: false
- allowReschedulingPastBookings: false
- allowReschedulingCancelledBookings: false
- showOptimizedSlots: false

This improves API documentation by clearly communicating default
values to API consumers in the OpenAPI spec.

* feat(api-v2): refactor event type settings to object types for future extensibility

- Convert disableRescheduling from boolean to object with disabled and minutesBefore properties
- Convert disableCancelling from boolean to object with disabled property
- Move canSendCalVideoTranscriptionEmails into CalVideoSettings as sendTranscriptionEmails
- Remove autoTranslateInstantMeetingTitleEnabled (Enterprise-only feature)
- Add DisableRescheduling_2024_06_14 and DisableCancelling_2024_06_14 input/output types
- Add transformation methods for new object types in input and output services
- Update E2E tests for new API contract

BREAKING CHANGE: disableRescheduling and disableCancelling now accept objects instead of booleans

* fix(api-v2): prevent clearing calVideoSettings when only sendTranscriptionEmails is provided

Only include calVideoSettings in transformed output if it has properties,
avoiding unintentional reset of existing settings during updates.
2026-01-07 16:03:01 +02:00
c87a88b244 chore: remove .yarn/ci-cache from git and ignore it (#22755)
* chore: remove .yarn/ci-cache from git and ignore it

* Remove additional install-state.gz cache files

* Small fixes to the .gitignore

---------

Co-authored-by: Matthew Cengia <mattcen@mattcen.com>
Co-authored-by: Keith Williams <keithwillcode@gmail.com>
2025-08-31 21:42:34 +00:00
emrysal 8829e1ca3f chore: release v5.5.16 2025-08-12 23:44:06 +00:00
zomars b3fd4f307f chore: release v5.4.14 2025-07-04 20:28:41 +00:00
GitHub Actions 51f6654635 chore: release v5.5.0 2025-06-30 12:39:41 +00:00
GitHub Actions 8c9b7a701d chore: release v5.4.9 2025-06-27 22:17:36 +00:00
Lauris SkraucisandGitHub 3c43ce4165 chore: test changesets (#22095)
* chore: test changesets

* bump atoms package.json

* Revert "bump atoms package.json"

This reverts commit 6105f8cf2486085e5da317a6969044693f4a3aa0.

* chore: set packages to private

* ignore private packages

* ignore private
2025-06-27 13:49:28 +02:00
GitHub Actions cf79a3f580 chore: release v5.4.7 2025-06-25 23:25:56 +00:00
GitHub Actions 09a49dd0fd chore: release v5.4.0 2025-06-16 13:00:34 +00:00
GitHub Actions 8511494d68 chore: release v5.3.5 2025-05-25 00:08:53 +00:00
GitHub Actions 53a06797a9 chore: release v5.3.4 2025-05-22 23:03:42 +00:00
GitHub Actions d84d80eea6 chore: release v5.3.3 2025-05-22 01:05:29 +00:00
Keith Williams 06c359ac9b revert: "chore: release v5.3.2"
This reverts commit 0d96d9c44c.
2025-05-19 08:44:37 -04:00
GitHub Actions 0d96d9c44c chore: release v5.3.2 2025-05-19 12:43:24 +00:00
GitHub Actions 4a96be4175 chore: release v5.2.12 2025-05-07 19:34:41 +00:00
GitHub Actions 78b213321c chore: release v5.2.11 2025-05-06 14:43:34 +00:00
GitHub Actions 1aa2f68e73 chore: release v5.2.9 2025-05-05 17:55:27 +00:00
GitHub Actions eedef35d02 chore: release v5.2.8 2025-05-01 22:09:04 +00:00
GitHub Actions 55488c39f4 chore: release v5.2.5 2025-04-23 17:22:16 +00:00
GitHub Actions e1beec0487 chore: release v5.2.4 2025-04-23 01:47:22 +00:00
GitHub Actions cae8470350 chore: release v5.2.1 2025-04-17 00:05:25 +00:00
GitHub Actions 3b945ba439 chore: release v5.1.15 2025-04-03 22:23:50 +00:00
Tushar BhattandGitHub 8d59c2fc16 feat: max-seats-per-time-slot (#20213)
* feat: max-seats-per-time-slot

* fix : test

* enhancements

* enhancements

* fix:test

* fix:test
2025-04-03 15:29:57 -04:00
GitHub Actions 71bfd17f81 chore: release v5.1.11 2025-03-28 19:29:33 +00:00
GitHub Actions 236fd967ad chore: release v5.1.10 2025-03-27 18:51:29 +00:00
GitHub Actions 0befc6431f chore: release v5.1.8 2025-03-25 21:10:18 +00:00
GitHub Actions ca19aa00c1 chore: release v5.1.2 2025-03-19 21:59:27 +00:00
GitHub Actions 73e7d6f986 chore: release v5.1.0 2025-03-15 11:11:37 +00:00
GitHub Actions 0ef93edd56 chore: release v5.0.19 2025-03-13 19:08:48 +00:00
GitHub Actions eca01be58c chore: release v5.0.16 2025-03-11 21:51:10 +00:00
GitHub Actions be525a27df chore: release v5.0.14 2025-03-10 22:44:00 +00:00
GitHub Actions 34cff214dd chore: release v5.0.12 2025-03-05 18:40:35 +00:00
GitHub Actions 44a6ceff3f chore: release v5.0.12 2025-03-05 17:52:37 +00:00
Keith WilliamsandGitHub 7701edb0bb chore: TS config - ignore node_modules in subdirectories (#19680)
* chore: TS config - ignore node_modules in subdirectories

* Update tsconfig.json

* Applied the pattern to the entire monorepo
2025-03-03 15:53:28 -03:00
GitHub Actions c4beef609b chore: release v5.0.10 2025-03-02 20:07:08 +00:00
GitHub Actions 8ac584a325 chore: release v5.0.8 2025-02-28 01:07:12 +00:00
GitHub Actions 6b7ced262d chore: release v5.0.7 2025-02-26 19:12:07 +00:00
GitHub Actions 23d9788dce chore: release v5.0.6 2025-02-24 22:08:05 +00:00
GitHub Actions 7c0cdcfc6d chore: release v5.0.5 2025-02-21 16:12:41 +00:00
GitHub Actions b7b58c2dc7 chore: release v5.0.3 2025-02-19 22:38:11 +00:00
GitHub Actions 7e2c0bd29e chore: release v4.9.13 2025-02-14 16:25:10 +00:00
Lauris SkraucisandGitHub 5dc81e8677 feat: v2 slots new version (#18758)
* refactor: version old slots

* feat: init new slots endpoints

* chore: range format

* fix: duratin

* fix: duratin

* test: slot releaseAt

* refactor: reserve slot response

* refactor variable name

* docs: have new slots controller in docs

* feat: crud for slots reservations

* refactor: use exclude all for response

* docs

* chore: slots input service

* refactor mini

* refactor: remove unused imports

* docs

* handle orgSlug for dynamic events

* refactor: correct name

* docs

* add optional organizationSlug to BySlug search

* refactor: slot output format

* refactor: return seated slot info

* docs

* rename functions

* refactor: slots seated response

* fix: handle same username in org and non org

* refactor: test format

* fix: allow reservationDuration only for authed requests

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

* refactor: split e2e test files

* refactor: invalid request exception codes

* chore: old slots controller uses all old versions
2025-02-13 14:17:00 +00:00
GitHub Actions 46add2bebc chore: release v4.9.11 2025-02-12 19:22:01 +00:00
GitHub Actions e800341485 chore: release v4.9.10 2025-02-11 19:48:09 +00:00
GitHub Actions 38a80c90bb chore: release v4.9.7 2025-02-05 21:27:34 +00:00
GitHub Actions 240f27ef4c chore: release v4.9.5 2025-02-03 22:32:55 +00:00
GitHub Actions 235382213f chore: release v4.9.3 2025-01-20 21:05:54 +00:00
GitHub Actions 9caaa0af32 chore: release v4.9.2 2025-01-17 22:03:02 +00:00
GitHub Actions a518c7152a chore: release v4.9.1-rc1 2025-01-16 15:53:45 +00:00