Skip to content

Commit

Permalink
Add ApiProperty to files that have no .dto.ts suffixes
Browse files Browse the repository at this point in the history
  • Loading branch information
pbn4 committed Apr 26, 2021
1 parent c29d46f commit dd9d02d
Show file tree
Hide file tree
Showing 26 changed files with 132 additions and 64 deletions.
19 changes: 11 additions & 8 deletions backend/core/archer.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,9 @@
import {
AmiChartCreate,
ApplicationMethodType,
CSVFormattingType,
Listing,
ListingStatus,
} from "./types"
import { AmiChart, ApplicationMethodType, CSVFormattingType, Listing, ListingStatus } from "./types"

export const SanMateoHUD2019: AmiChartCreate = {
export const SanMateoHUD2019: AmiChart = {
id: "ami_chart_id",
createdAt: new Date(),
updatedAt: new Date(),
name: "SanMateoHUD2019",
items: [
{
Expand Down Expand Up @@ -255,6 +252,9 @@ export const ArcherListing: Listing = {
status: ListingStatus.active,
postmarkedApplicationsReceivedByDate: new Date("2019-12-05"),
applicationAddress: {
id: "id",
createdAt: new Date(),
updatedAt: new Date(),
city: "San Jose",
street: "98 Archer Street",
zipCode: "95112",
Expand Down Expand Up @@ -333,6 +333,9 @@ export const ArcherListing: Listing = {
"A criminal background investigation will be obtained on each applicant. As criminal background checks are done county by county and will be ran for all counties in which the applicant lived, Applicants will be disqualified for tenancy if they have been convicted of a felony or misdemeanor. Refer to Tenant Selection Criteria or Qualification Criteria for details related to the qualification process. ",
CSVFormattingType: CSVFormattingType.basic,
leasingAgentAddress: {
id: "id",
createdAt: new Date(),
updatedAt: new Date(),
city: "San Jose",
street: "98 Archer Street",
zipCode: "95112",
Expand Down
14 changes: 9 additions & 5 deletions backend/core/nest-cli.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,15 @@
"sourceRoot": "src",
"compilerOptions": {
"plugins": [
"@nestjs/swagger/plugin"
],
"dtoFileNameSuffix": [
"dto.ts",
"entity.ts"
{
"name": "@nestjs/swagger",
"options": {
"dtoFileNameSuffix": ["dto.ts", "entity.ts"],
"controllerFileNameSuffix": ["controller.ts"],
"classValidatorShim": false,
"introspectComments": true
}
}
],
"assets": [
{ "include": "auth/*.{conf,csv}", "outDir": "dist/src" },
Expand Down
2 changes: 1 addition & 1 deletion backend/core/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@
"@nestjs/jwt": "^7.1.0",
"@nestjs/passport": "^7.1.0",
"@nestjs/platform-express": "^7.4.4",
"@nestjs/swagger": "4.6.1",
"@nestjs/swagger": "4.8.0",
"@nestjs/throttler": "^1.1.2",
"@nestjs/typeorm": "^7.1.0",
"@types/cache-manager": "^3.4.0",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,18 @@ export class ApplicationPreferenceOption {
@Expose()
@IsString({ groups: [ValidationsGroupsEnum.default] })
@MaxLength(128, { groups: [ValidationsGroupsEnum.default] })
@ApiProperty()
key: string

@Expose()
@IsBoolean({ groups: [ValidationsGroupsEnum.default] })
@ApiProperty()
checked: boolean

@Expose()
@ApiProperty({
type: "array",
required: false,
items: {
oneOf: [
{ $ref: getSchemaPath(BooleanInput) },
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,13 @@ import { Expose, Type } from "class-transformer"
import { IsDefined, ValidateNested } from "class-validator"
import { ValidationsGroupsEnum } from "../../../shared/types/validations-groups-enum"
import { AddressCreateDto } from "../../../shared/dto/address.dto"
import { ApiProperty } from "@nestjs/swagger"

export class AddressInput extends FormMetadataExtraData {
@Expose()
@IsDefined({ groups: [ValidationsGroupsEnum.default] })
@ValidateNested({ groups: [ValidationsGroupsEnum.default] })
@Type(() => AddressCreateDto)
@ApiProperty()
value: AddressCreateDto
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,11 @@ import { FormMetadataExtraData } from "./form-metadata-extra-data"
import { Expose } from "class-transformer"
import { IsBoolean } from "class-validator"
import { ValidationsGroupsEnum } from "../../../shared/types/validations-groups-enum"
import { ApiProperty } from "@nestjs/swagger"

export class BooleanInput extends FormMetadataExtraData {
@Expose()
@IsBoolean({ groups: [ValidationsGroupsEnum.default] })
@ApiProperty()
value: boolean
}
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,6 @@ export class FormMetadataExtraData {
@Expose()
@IsString({ groups: [ValidationsGroupsEnum.default] })
@MaxLength(128, { groups: [ValidationsGroupsEnum.default] })
@ApiProperty()
key: string
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,20 @@ import { Expose, Type } from "class-transformer"
import { ArrayMaxSize, IsOptional, IsString, MaxLength, ValidateNested } from "class-validator"
import { ValidationsGroupsEnum } from "../../../shared/types/validations-groups-enum"
import { FormMetadataExtraData } from "./form-metadata-extra-data"
import { ApiProperty } from "@nestjs/swagger"

export class FormMetadataOptions {
@Expose()
@IsString({ groups: [ValidationsGroupsEnum.default] })
@MaxLength(128, { groups: [ValidationsGroupsEnum.default] })
@ApiProperty()
key: string

@Expose()
@IsOptional({ groups: [ValidationsGroupsEnum.default] })
@ArrayMaxSize(64, { groups: [ValidationsGroupsEnum.default] })
@ValidateNested({ groups: [ValidationsGroupsEnum.default], each: true })
@Type(() => FormMetadataExtraData)
extraData?: FormMetadataExtraData[]
@ApiProperty({ type: [FormMetadataExtraData], required: false })
extraData?: FormMetadataExtraData[] | null
}
Original file line number Diff line number Diff line change
@@ -1,17 +1,20 @@
import { Expose, Type } from "class-transformer"
import { ArrayMaxSize, IsString, MaxLength, ValidateNested } from "class-validator"
import { ValidationsGroupsEnum } from "../../../shared/types/validations-groups-enum"
import { FormMetadataOptions } from "../form-metadata/form-metadata-options"
import { FormMetadataOptions } from "./form-metadata-options"
import { ApiProperty } from "@nestjs/swagger"

export class FormMetadata {
@Expose()
@IsString({ groups: [ValidationsGroupsEnum.default] })
@MaxLength(128, { groups: [ValidationsGroupsEnum.default] })
@ApiProperty()
key: string

@Expose()
@ArrayMaxSize(64, { groups: [ValidationsGroupsEnum.default] })
@ValidateNested({ groups: [ValidationsGroupsEnum.default], each: true })
@Type(() => FormMetadataOptions)
@ApiProperty({ type: [FormMetadataOptions], nullable: true })
options: FormMetadataOptions[]
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,12 @@ import { FormMetadataExtraData } from "./form-metadata-extra-data"
import { Expose } from "class-transformer"
import { IsString, MaxLength } from "class-validator"
import { ValidationsGroupsEnum } from "../../../shared/types/validations-groups-enum"
import { ApiProperty } from "@nestjs/swagger"

export class TextInput extends FormMetadataExtraData {
@Expose()
@IsString({ groups: [ValidationsGroupsEnum.default] })
@MaxLength(4096, { groups: [ValidationsGroupsEnum.default] })
@ApiProperty()
value: string
}
2 changes: 1 addition & 1 deletion backend/core/src/listings/dto/listing.dto.ts
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ export class ListingDto extends OmitType(Listing, [
@Expose()
@IsOptional({ groups: [ValidationsGroupsEnum.default] })
@ValidateNested({ groups: [ValidationsGroupsEnum.default] })
@Type(() => AddressCreateDto)
@Type(() => AddressDto)
applicationPickUpAddress: AddressDto | null

@Expose()
Expand Down
2 changes: 1 addition & 1 deletion backend/core/src/listings/entities/listing.entity.ts
Original file line number Diff line number Diff line change
Expand Up @@ -316,7 +316,7 @@ class Listing extends BaseEntity {
nullable: false,
})
@Expose()
@ApiProperty({ type: Boolean, default: false })
@ApiProperty()
@IsBoolean()
displayWaitlistSize: boolean

Expand Down
4 changes: 3 additions & 1 deletion backend/core/src/preferences/entities/preference.entity.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,9 @@ import { Listing } from "../../listings/entities/listing.entity"
import { Expose, Type } from "class-transformer"
import { IsDate, IsNumber, IsOptional, IsString, IsUUID, ValidateNested } from "class-validator"
import { ValidationsGroupsEnum } from "../../shared/types/validations-groups-enum"
import { FormMetadata } from "../../applications/types/form-metadtaa/form-metadata"
import { FormMetadata } from "../../applications/types/form-metadata/form-metadata"
import { PreferenceLink } from "../types/preference-link"
import { ApiProperty } from "@nestjs/swagger"

@Entity({ name: "preferences" })
class Preference {
Expand Down Expand Up @@ -62,6 +63,7 @@ class Preference {
@IsOptional({ groups: [ValidationsGroupsEnum.default] })
@ValidateNested({ groups: [ValidationsGroupsEnum.default], each: true })
@Type(() => PreferenceLink)
@ApiProperty({type: [PreferenceLink]})
links: PreferenceLink[] | null

@ManyToOne(() => Listing, (listing) => listing.preferences, {
Expand Down
4 changes: 4 additions & 0 deletions backend/core/src/preferences/types/preference-link.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
import { Expose } from "class-transformer"
import { IsString } from "class-validator"
import { ValidationsGroupsEnum } from "../../shared/types/validations-groups-enum"
import { ApiProperty } from "@nestjs/swagger"

export class PreferenceLink {
@Expose()
@IsString({ groups: [ValidationsGroupsEnum.default] })
@ApiProperty()
title: string

@Expose()
@IsString({ groups: [ValidationsGroupsEnum.default] })
@ApiProperty()
url: string
}
2 changes: 1 addition & 1 deletion backend/core/src/property/entities/property.entity.ts
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ export class Property {
yearBuilt: number | null

@Expose()
@ApiProperty()
@ApiProperty({ type: UnitsSummarized })
get unitsSummarized(): UnitsSummarized | undefined {
if (Array.isArray(this.units) && this.units.length > 0) {
return transformUnits(this.units)
Expand Down
12 changes: 0 additions & 12 deletions backend/core/src/shared/dto/preferenceLink.dto.ts

This file was deleted.

4 changes: 4 additions & 0 deletions backend/core/src/units/types/hmi.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
import { AnyDict } from "../../shared/units-transformations"
import { ApiProperty } from "@nestjs/swagger"

export class HMI {
@ApiProperty()
columns: AnyDict

@ApiProperty({type: [Object]})
rows: AnyDict[]
}
3 changes: 3 additions & 0 deletions backend/core/src/units/types/min-max-currency.ts
Original file line number Diff line number Diff line change
@@ -1,15 +1,18 @@
import { Expose } from "class-transformer"
import { IsDefined, IsString } from "class-validator"
import { ValidationsGroupsEnum } from "../../shared/types/validations-groups-enum"
import { ApiProperty } from "@nestjs/swagger"

export class MinMaxCurrency {
@Expose()
@IsDefined({ groups: [ValidationsGroupsEnum.default] })
@IsString({ groups: [ValidationsGroupsEnum.default] })
@ApiProperty()
min: string

@Expose()
@IsDefined({ groups: [ValidationsGroupsEnum.default] })
@IsString({ groups: [ValidationsGroupsEnum.default] })
@ApiProperty()
max: string
}
3 changes: 3 additions & 0 deletions backend/core/src/units/types/min-max.ts
Original file line number Diff line number Diff line change
@@ -1,15 +1,18 @@
import { Expose } from "class-transformer"
import { IsDefined, IsNumber } from "class-validator"
import { ValidationsGroupsEnum } from "../../shared/types/validations-groups-enum"
import { ApiProperty } from "@nestjs/swagger"

export class MinMax {
@Expose()
@IsDefined({ groups: [ValidationsGroupsEnum.default] })
@IsNumber({}, { groups: [ValidationsGroupsEnum.default] })
@ApiProperty()
min: number

@Expose()
@IsDefined({ groups: [ValidationsGroupsEnum.default] })
@IsNumber({}, { groups: [ValidationsGroupsEnum.default] })
@ApiProperty()
max: number
}
4 changes: 4 additions & 0 deletions backend/core/src/units/types/unit-summary-by-ami.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,22 +3,26 @@ import { IsDefined, IsString, ValidateNested } from "class-validator"
import { ValidationsGroupsEnum } from "../../shared/types/validations-groups-enum"
import { UnitSummary } from "./unit-summary"
import { UnitSummaryByReservedType } from "./unit-summary-by-reserved-type"
import { ApiProperty } from "@nestjs/swagger"

export class UnitSummaryByAMI {
@Expose()
@IsDefined({ groups: [ValidationsGroupsEnum.default] })
@IsString({ groups: [ValidationsGroupsEnum.default] })
@ApiProperty()
percent: string

@Expose()
@IsDefined({ groups: [ValidationsGroupsEnum.default] })
@ValidateNested({ groups: [ValidationsGroupsEnum.default], each: true })
@Type(() => UnitSummary)
@ApiProperty({ type: [UnitSummary] })
byNonReservedUnitType: UnitSummary[]

@Expose()
@IsDefined({ groups: [ValidationsGroupsEnum.default] })
@ValidateNested({ groups: [ValidationsGroupsEnum.default], each: true })
@Type(() => UnitSummaryByReservedType)
@ApiProperty({ type: [UnitSummaryByReservedType] })
byReservedType: UnitSummaryByReservedType[]
}
3 changes: 3 additions & 0 deletions backend/core/src/units/types/unit-summary-by-reserved-type.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,19 @@ import { Expose, Type } from "class-transformer"
import { IsDefined, IsString, ValidateNested } from "class-validator"
import { ValidationsGroupsEnum } from "../../shared/types/validations-groups-enum"
import { UnitSummary } from "./unit-summary"
import { ApiProperty } from "@nestjs/swagger"

export class UnitSummaryByReservedType {
@Expose()
@IsDefined({ groups: [ValidationsGroupsEnum.default] })
@IsString({ groups: [ValidationsGroupsEnum.default] })
@ApiProperty()
reservedType: string

@Expose()
@IsDefined({ groups: [ValidationsGroupsEnum.default] })
@ValidateNested({ groups: [ValidationsGroupsEnum.default], each: true })
@Type(() => UnitSummary)
@ApiProperty({ type: [UnitSummary] })
byUnitType: UnitSummary[]
}
Loading

0 comments on commit dd9d02d

Please sign in to comment.