fix: add missing api v2 swagger DTOs (#24065)

This commit is contained in:
Lauris Skraucis
2025-09-25 09:10:27 +00:00
committed by GitHub
parent f0aec4efdc
commit b2ac227877
11 changed files with 658 additions and 975 deletions
@@ -1,10 +1,11 @@
import { ApiProperty, getSchemaPath } from "@nestjs/swagger";
import { ApiExtraModels, ApiProperty, getSchemaPath } from "@nestjs/swagger";
import { Type } from "class-transformer";
import { IsEnum, ValidateNested } from "class-validator";
import { SUCCESS_STATUS, ERROR_STATUS } from "@calcom/platform-constants";
import { ReassignBookingOutput_2024_08_13 as ReassignBookingOutputData_2024_08_13 } from "@calcom/platform-types";
@ApiExtraModels(ReassignBookingOutputData_2024_08_13)
export class ReassignBookingOutput_2024_08_13 {
@ApiProperty({ example: SUCCESS_STATUS, enum: [SUCCESS_STATUS, ERROR_STATUS] })
@IsEnum([SUCCESS_STATUS, ERROR_STATUS])
@@ -7,8 +7,6 @@ import {
BookingOutput_2024_08_13,
CreateRecurringSeatedBookingOutput_2024_08_13,
CreateSeatedBookingOutput_2024_08_13,
GetRecurringSeatedBookingOutput_2024_08_13,
GetSeatedBookingOutput_2024_08_13,
RecurringBookingOutput_2024_08_13,
} from "@calcom/platform-types";
@@ -1,4 +1,4 @@
import { ApiProperty, ApiPropertyOptional, getSchemaPath } from "@nestjs/swagger";
import { ApiExtraModels, ApiProperty, ApiPropertyOptional, getSchemaPath } from "@nestjs/swagger";
import { Type } from "class-transformer";
import { IsEnum, IsISO8601, IsOptional, IsString, ValidateNested } from "class-validator";
@@ -297,6 +297,12 @@ export class DateTimeWithZone {
timeZone!: string;
}
@ApiExtraModels(
CalendarEventVideoLocation,
CalendarEventPhoneLocation,
CalendarEventSipLocation,
CalendarEventMoreLocation
)
export class UnifiedCalendarEventOutput {
@ValidateNested()
@Type(() => DateTimeWithZone)
@@ -4,9 +4,11 @@ import {
MicrosoftServiceAccountKeyInput,
} from "@/modules/organizations/delegation-credentials/inputs/service-account-key.input";
import { ApiProperty, getSchemaPath } from "@nestjs/swagger";
import { ApiExtraModels } from "@nestjs/swagger";
import { Expose, Type } from "class-transformer";
import { IsString, IsNotEmpty, ValidateNested, Validate } from "class-validator";
import { IsString, IsNotEmpty, Validate } from "class-validator";
@ApiExtraModels(GoogleServiceAccountKeyInput, MicrosoftServiceAccountKeyInput)
export class CreateDelegationCredentialInput {
@IsString()
@IsNotEmpty()
@@ -3,10 +3,11 @@ import {
MicrosoftServiceAccountKeyInput,
ServiceAccountKeyValidator,
} from "@/modules/organizations/delegation-credentials/inputs/service-account-key.input";
import { ApiPropertyOptional, getSchemaPath } from "@nestjs/swagger";
import { Expose, plainToClass, Transform, Type } from "class-transformer";
import { IsBoolean, IsOptional, Validate, ValidateNested } from "class-validator";
import { ApiExtraModels, ApiPropertyOptional, getSchemaPath } from "@nestjs/swagger";
import { Expose, Type } from "class-transformer";
import { IsBoolean, IsOptional, Validate } from "class-validator";
@ApiExtraModels(GoogleServiceAccountKeyInput, MicrosoftServiceAccountKeyInput)
export class UpdateDelegationCredentialInput {
@IsBoolean()
@IsOptional()
@@ -1,4 +1,4 @@
import { ApiProperty, ApiPropertyOptional, getSchemaPath } from "@nestjs/swagger";
import { ApiExtraModels, ApiProperty, ApiPropertyOptional, getSchemaPath } from "@nestjs/swagger";
import { Type } from "class-transformer";
import { IsArray, IsBoolean, IsInt, IsNumber, IsOptional, IsString, ValidateNested } from "class-validator";
@@ -75,6 +75,7 @@ class Routing {
crmOwnerRecordType?: string;
}
@ApiExtraModels(SlotsOutput_2024_09_04, RangeSlotsOutput_2024_09_04)
export class CreateRoutingFormResponseOutputData {
@ApiPropertyOptional({
type: Number,
@@ -1,9 +1,10 @@
import { ApiProperty, getSchemaPath } from "@nestjs/swagger";
import { ApiExtraModels, ApiProperty, getSchemaPath } from "@nestjs/swagger";
import { Type } from "class-transformer";
import { IsNotEmptyObject, ValidateNested } from "class-validator";
import { ApiResponseWithoutData, TeamEventTypeOutput_2024_06_14 } from "@calcom/platform-types";
@ApiExtraModels(TeamEventTypeOutput_2024_06_14)
export class CreateTeamEventTypeOutput extends ApiResponseWithoutData {
@IsNotEmptyObject()
@ValidateNested()
@@ -1,9 +1,10 @@
import { ApiProperty, getSchemaPath } from "@nestjs/swagger";
import { ApiExtraModels, ApiProperty, getSchemaPath } from "@nestjs/swagger";
import { Type } from "class-transformer";
import { IsNotEmptyObject, ValidateNested } from "class-validator";
import { ApiResponseWithoutData, TeamEventTypeOutput_2024_06_14 } from "@calcom/platform-types";
@ApiExtraModels(TeamEventTypeOutput_2024_06_14)
export class UpdateTeamEventTypeOutput extends ApiResponseWithoutData {
@IsNotEmptyObject()
@ValidateNested()
@@ -1,11 +1,11 @@
import { ApiProperty, getSchemaPath } from "@nestjs/swagger";
import { ApiExtraModels, ApiProperty, getSchemaPath } from "@nestjs/swagger";
import { Expose } from "class-transformer";
import { IsEnum, ValidateNested, IsString, IsUrl } from "class-validator";
import { ERROR_STATUS, SUCCESS_STATUS } from "@calcom/platform-constants";
import { TeamOutputDto } from "@calcom/platform-types";
class Output {
class CreateTeamOutputData {
@Expose()
@IsString()
message!: string;
@@ -19,16 +19,17 @@ class Output {
pendingTeam!: TeamOutputDto;
}
@ApiExtraModels(TeamOutputDto, CreateTeamOutputData)
export class CreateTeamOutput {
@ApiProperty({ example: SUCCESS_STATUS, enum: [SUCCESS_STATUS, ERROR_STATUS] })
@IsEnum([SUCCESS_STATUS, ERROR_STATUS])
status!: typeof SUCCESS_STATUS | typeof ERROR_STATUS;
@ApiProperty({
oneOf: [{ $ref: getSchemaPath(Output) }, { $ref: getSchemaPath(TeamOutputDto) }],
oneOf: [{ $ref: getSchemaPath(CreateTeamOutputData) }, { $ref: getSchemaPath(TeamOutputDto) }],
description: "Either an Output object or a TeamOutputDto.",
})
@Expose()
@ValidateNested()
data!: Output | TeamOutputDto;
data!: CreateTeamOutputData | TeamOutputDto;
}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff