change repo

This commit is contained in:
Ruben Kallinich
2024-07-11 10:04:05 +02:00
commit eb3870fa81
48 changed files with 7830 additions and 0 deletions

View File

@@ -0,0 +1,209 @@
import { ApiProperty } from '@nestjs/swagger';
import { Exclude } from 'class-transformer';
import { CreateWebsiteDto } from '../../website/dto/create-website.dto';
import { IsNumber, IsOptional, IsString } from 'class-validator';
export class CreatePageSpeedDto {
@ApiProperty({ description: 'Pagespeed Id' })
@IsString()
id: string;
@ApiProperty({
type: () => CreateWebsiteDto,
description: 'Website Foring Key',
})
website: CreateWebsiteDto;
@Exclude()
@ApiProperty({ description: 'Hole page-speed result ' })
lighthouseObject: any;
@ApiProperty()
@IsString()
firstContentfulPaintDisplayValue: string;
@ApiProperty()
@IsNumber()
firstContentfulPaintScore: number;
@ApiProperty()
@IsNumber()
firstContentfulPaintNumericValue: number;
@ApiProperty()
@IsNumber()
firstMeaningfulPaintScore: number;
@ApiProperty()
@IsString()
firstMeaningfulPaintDisplayValue: string;
@ApiProperty()
@IsNumber()
firstMeaningfulPaintNumericValue: number;
@ApiProperty()
@IsString()
firstMeaningfulPaintNumericUnit: string;
@ApiProperty()
@IsString()
mainThreadWorkBreakdownDisplayValue: string;
@ApiProperty()
@IsNumber()
mainThreadWorkBreakdownNumricValue: number;
@ApiProperty()
@IsString()
mainThreadWorkBreakdownNumericUnit: string;
@ApiProperty({ type: () => [String] })
@IsString()
mainThreadWorkBreakdownItemsGroupLabel: string[];
@ApiProperty({ type: () => [Number] })
@IsNumber()
mainThreadWorkBreakdownItemsDuration: number[];
@ApiProperty()
@IsNumber()
speedIndexScore: number;
@ApiProperty()
@IsString()
speedIndexDisplayValue: string;
@ApiProperty()
@IsNumber()
speedIndexNumericValue: number;
@ApiProperty()
@IsString()
speedIndexNumericUnit: string;
@ApiProperty()
@IsString()
@IsOptional()
largestContentfulPaintScore: string;
@ApiProperty()
@IsString()
@IsOptional()
largestContentfulPaintDisplayValue: string;
@ApiProperty()
@IsString()
@IsOptional()
largestContentfulPaintNumericValue: string;
@ApiProperty()
@IsString()
@IsOptional()
largestContentfulPaintNumericUnit: string;
@ApiProperty()
@IsString()
totalBlockingTimeScore: string;
@ApiProperty()
@IsString()
totalBlockingTimeDisplayValue: string;
@ApiProperty()
@IsString()
totalBlockingTimeNumericValue: string;
@ApiProperty()
@IsString()
totalBlockingTimeNumericUnit: string;
@ApiProperty({ type: () => [String] })
@IsString()
@IsOptional()
unusedCssRulesItems: string[];
@ApiProperty()
@IsOptional()
thirdPartySummaryDisplayValue: string | null;
@ApiProperty({ type: () => [String] })
@IsString()
@IsOptional()
thirdPartySummaryItemsUrl: string[];
@ApiProperty({ type: () => [Number] })
@IsNumber()
@IsOptional()
thirdPartySummaryItemsTransfer: number[];
@ApiProperty({ type: () => [Number] })
@IsNumber()
@IsOptional()
thirdPartySummaryItemsMainThred: number[];
@ApiProperty({ type: () => [Number] })
@IsNumber()
@IsOptional()
thirdPartySummaryItemsBlockingTime: number[];
@ApiProperty()
@IsString()
timeToInteractiveScore: string;
@ApiProperty()
@IsString()
timeToInteractiveDisplayValue: string;
@ApiProperty()
@IsString()
timeToInteractiveNumericValue: string;
@ApiProperty()
@IsString()
timeToInteractiveNumericUnit: string;
@ApiProperty()
@IsOptional()
totalByteWeightScore: number | null;
@ApiProperty()
@IsString()
totalByteWeightDisplayValue: string;
@ApiProperty()
@IsNumber()
totalByteWeightNumericValue: number;
@ApiProperty()
@IsString()
totalByteWeightNumericUnit: string;
@ApiProperty({ type: () => [String] })
@IsString()
totalByteWeightItemsUrl: string[];
@ApiProperty({ type: () => [Number] })
@IsNumber()
totalByteWeightItemsTotalBytes: number[];
@ApiProperty()
domSizeScore: number | null;
@ApiProperty()
@IsString()
domSizeDisplayValue: string;
@ApiProperty()
@IsString()
domSizeNumericValue: string;
@ApiProperty()
@IsString()
domSizeNumericUnit: string;
@ApiProperty({ type: () => [String] })
@IsString()
@IsOptional()
unusedJavaScript: string[];
}

View File

@@ -0,0 +1,152 @@
import { LoadWebsiteDto } from '../../website/dto/load-website.dto';
import { ApiProperty } from '@nestjs/swagger';
import { Exclude } from 'class-transformer';
import { IsString } from 'class-validator';
export class LoadPageSpeedDto {
@ApiProperty()
@IsString()
id: string;
@ApiProperty()
createdAt: Date;
@ApiProperty({ type: () => LoadWebsiteDto })
website: LoadWebsiteDto;
@Exclude()
@ApiProperty({ type: () => [String] })
lighthouseObjet: string[];
@ApiProperty()
firstContentfulPaintDisplayValue: string;
@ApiProperty()
firstContentfulPaintScore: number;
@ApiProperty()
firstContentfulPaintNumericValue: number;
@ApiProperty()
firstMeaningfulPaintScore: number;
@ApiProperty()
firstMeaningfulPaintDisplayValue: string;
@ApiProperty()
firstMeaningfulPaintNumericValue: number;
@ApiProperty()
firstMeaningfulPaintNumericUnit: string;
@ApiProperty()
mainThreadWorkBreakdownDisplayValue: string;
@ApiProperty()
mainThreadWorkBreakdownNumricValue: number;
@ApiProperty()
mainThreadWorkBreakdownNumericUnit: string;
@ApiProperty({ type: () => [String] })
mainThreadWorkBreakdownItemsGroupLabel: string[];
@ApiProperty({ type: () => [Number] })
mainThreadWorkBreakdownItemsDuration: number[];
@ApiProperty()
speedIndexScore: number;
@ApiProperty()
speedIndexDisplayValue: string;
@ApiProperty()
speedIndexNumericValue: number;
@ApiProperty()
speedIndexNumericUnit: string;
@ApiProperty()
largestContentfulPaintScore: string;
@ApiProperty()
largestContentfulPaintDisplayValue: string;
@ApiProperty()
largestContentfulPaintNumericValue: string;
@ApiProperty()
largestContentfulPaintNumericUnit: string;
@ApiProperty()
totalBlockingTimeScore: string;
@ApiProperty()
totalBlockingTimeDisplayValue: string;
@ApiProperty()
totalBlockingTimeNumericValue: string;
@ApiProperty()
totalBlockingTimeNumericUnit: string;
@ApiProperty({ type: () => [String] })
unusedCssRulesItems: string[];
@ApiProperty()
thirdPartySummaryDisplayValue: string | null;
@ApiProperty({ type: () => [String] })
thirdPartySummaryItemsUrl: string[];
@ApiProperty({ type: () => [Number] })
thirdPartySummaryItemsTransfer: number[];
@ApiProperty({ type: () => [Number] })
thirdPartySummaryItemsMainThred: number[];
@ApiProperty({ type: () => [Number] })
thirdPartySummaryItemsBlockingTime: number[];
@ApiProperty()
timeToInteractiveScore: string;
@ApiProperty()
timeToInteractiveDisplayValue: string;
@ApiProperty()
timeToInteractiveNumericValue: string;
@ApiProperty()
timeToInteractiveNumericUnit: string;
@ApiProperty()
totalByteWeightScore: number | null;
@ApiProperty()
totalByteWeightDisplayValue: string;
@ApiProperty()
totalByteWeightNumericValue: number;
@ApiProperty()
totalByteWeightNumericUnit: string;
@ApiProperty({ type: () => [String] })
totalByteWeightItemsUrl: string[];
@ApiProperty({ type: () => [Number] })
totalByteWeightItemsTotalBytes: number[];
@ApiProperty()
domSizeScore: number | null;
@ApiProperty()
domSizeDisplayValue: string;
@ApiProperty()
domSizeNumericValue: string;
@ApiProperty()
domSizeNumericUnit: string;
}

View File

@@ -0,0 +1,190 @@
import { ApiProperty } from '@nestjs/swagger';
import { Exclude } from 'class-transformer';
import { UpdateWebsiteDto } from '../../website/dto/update-website.dto';
import { IsNumber, IsString } from 'class-validator';
export class UpdatePageSpeedDto {
@ApiProperty()
@IsString()
id: string;
@ApiProperty({ type: () => UpdateWebsiteDto })
website: UpdateWebsiteDto;
@Exclude()
@ApiProperty()
lighthouseObject: any;
@ApiProperty()
@IsString()
firstContentfulPaintDisplayValue: string;
@ApiProperty()
@IsNumber()
firstContentfulPaintScore: number;
@ApiProperty()
@IsNumber()
firstContentfulPaintNumericValue: number;
@ApiProperty()
@IsNumber()
firstMeaningfulPaintScore: number;
@ApiProperty()
@IsString()
firstMeaningfulPaintDisplayValue: string;
@ApiProperty()
@IsNumber()
firstMeaningfulPaintNumericValue: number;
@ApiProperty()
@IsString()
firstMeaningfulPaintNumericUnit: string;
@ApiProperty()
@IsString()
mainThreadWorkBreakdownDisplayValue: string;
@ApiProperty()
@IsNumber()
mainThreadWorkBreakdownNumricValue: number;
@ApiProperty()
@IsString()
mainThreadWorkBreakdownNumericUnit: string;
@ApiProperty({ type: () => [String] })
@IsString()
mainThreadWorkBreakdownItemsGroupLabel: string[];
@ApiProperty({ type: () => [Number] })
@IsNumber()
mainThreadWorkBreakdownItemsDuration: number[];
@ApiProperty()
@IsNumber()
speedIndexScore: number;
@ApiProperty()
@IsString()
speedIndexDisplayValue: string;
@ApiProperty()
@IsNumber()
speedIndexNumericValue: number;
@ApiProperty()
@IsString()
speedIndexNumericUnit: string;
@ApiProperty()
@IsString()
largestContentfulPaintScore: string;
@ApiProperty()
@IsString()
largestContentfulPaintDisplayValue: string;
@ApiProperty()
@IsString()
largestContentfulPaintNumericValue: string;
@ApiProperty()
@IsString()
largestContentfulPaintNumericUnit: string;
@ApiProperty()
@IsString()
totalBlockingTimeScore: string;
@ApiProperty()
@IsString()
totalBlockingTimeDisplayValue: string;
@ApiProperty()
@IsString()
totalBlockingTimeNumericValue: string;
@ApiProperty()
@IsString()
totalBlockingTimeNumericUnit: string;
@ApiProperty({ type: () => [String] })
@IsString()
unusedCssRulesItems: string[];
@ApiProperty()
thirdPartySummaryDisplayValue: string | null;
@ApiProperty({ type: () => [String] })
@IsString()
thirdPartySummaryItemsUrl: string[];
@ApiProperty({ type: () => [Number] })
@IsNumber()
thirdPartySummaryItemsTransfer: number[];
@ApiProperty({ type: () => [Number] })
@IsNumber()
thirdPartySummaryItemsMainThred: number[];
@ApiProperty({ type: () => [Number] })
@IsNumber()
thirdPartySummaryItemsBlockingTime: number[];
@ApiProperty()
@IsString()
timeToInteractiveScore: string;
@ApiProperty()
@IsString()
timeToInteractiveDisplayValue: string;
@ApiProperty()
@IsString()
timeToInteractiveNumericValue: string;
@ApiProperty()
@IsString()
timeToInteractiveNumericUnit: string;
@ApiProperty()
totalByteWeightScore: number | null;
@ApiProperty()
@IsString()
totalByteWeightDisplayValue: string;
@ApiProperty()
@IsNumber()
totalByteWeightNumericValue: number;
@ApiProperty()
@IsString()
totalByteWeightNumericUnit: string;
@ApiProperty({ type: () => [String] })
@IsString()
totalByteWeightItemsUrl: string[];
@ApiProperty({ type: () => [Number] })
@IsNumber()
totalByteWeightItemsTotalBytes: number[];
@ApiProperty()
domSizeScore: number | null;
@ApiProperty()
@IsString()
domSizeDisplayValue: string;
@ApiProperty()
@IsString()
domSizeNumericValue: string;
@ApiProperty()
@IsString()
domSizeNumericUnit: string;
}