twenty / packages /twenty-server /src /engine /metadata-modules /command-menu-item /dtos /update-command-menu-item.input.ts
Jules
Initial clean CRM deployment with prebuilt assets
d9494a5
Raw
History Blame Contribute Delete
1.76 kB
import { Field, Float, InputType } from '@nestjs/graphql';
import {
IsBoolean,
IsEnum,
IsNotEmpty,
IsNumber,
IsOptional,
IsString,
IsUUID,
} from 'class-validator';
import { UUIDScalarType } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars';
import { CommandMenuItemAvailabilityType } from 'src/engine/metadata-modules/command-menu-item/enums/command-menu-item-availability-type.enum';
import { EngineComponentKey } from 'src/engine/metadata-modules/command-menu-item/enums/engine-component-key.enum';
@InputType()
export class UpdateCommandMenuItemInput {
@IsUUID()
@IsNotEmpty()
@Field(() => UUIDScalarType)
id: string;
@IsString()
@IsOptional()
@Field({ nullable: true })
label?: string;
@IsString()
@IsOptional()
@Field({ nullable: true })
icon?: string;
@IsString()
@IsOptional()
@Field({ nullable: true })
shortLabel?: string;
@IsNumber()
@IsOptional()
@Field(() => Float, { nullable: true })
position?: number;
@IsBoolean()
@IsOptional()
@Field({ nullable: true })
isPinned?: boolean;
@IsEnum(CommandMenuItemAvailabilityType)
@IsOptional()
@Field(() => CommandMenuItemAvailabilityType, { nullable: true })
availabilityType?: CommandMenuItemAvailabilityType;
@IsUUID()
@IsOptional()
@Field(() => UUIDScalarType, { nullable: true })
availabilityObjectMetadataId?: string;
@IsEnum(EngineComponentKey)
@IsOptional()
@Field(() => EngineComponentKey, { nullable: true })
engineComponentKey?: EngineComponentKey;
@IsString({ each: true })
@IsOptional()
@Field(() => [String], { nullable: true })
hotKeys?: string[];
@IsUUID()
@IsOptional()
@Field(() => UUIDScalarType, { nullable: true })
pageLayoutId?: string;
}