diff --git a/backend/src/chat/entities/chat.entity.ts b/backend/src/chat/entities/chat.entity.ts index 83c1822..d6d8f22 100644 --- a/backend/src/chat/entities/chat.entity.ts +++ b/backend/src/chat/entities/chat.entity.ts @@ -16,22 +16,22 @@ registerEnumType(MessageType, { @ObjectType() export class LinkPreview { - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) url?: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) title?: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) description?: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) image?: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) siteName?: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) favicons?: string; } @@ -67,16 +67,16 @@ export class Message { @Field(() => MessageType) type: MessageType; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) fileUrl?: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) fileName?: string; @Field(() => Int, { nullable: true }) fileSize?: number; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) mimeType?: string; @Field(() => String, { nullable: true }) @@ -112,7 +112,7 @@ export class Conversation { @Field(() => Int) id: number; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) name?: string; @Field(() => ConversationType) diff --git a/backend/src/dashboard/dto/dashboard-stats.type.ts b/backend/src/dashboard/dto/dashboard-stats.type.ts index cef138b..334ebe2 100644 --- a/backend/src/dashboard/dto/dashboard-stats.type.ts +++ b/backend/src/dashboard/dto/dashboard-stats.type.ts @@ -71,7 +71,7 @@ export class RecentActivityItem { @Field() timestamp: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) projectName?: string; } @@ -89,13 +89,13 @@ export class UpcomingDeadlineItem { @Field() priority: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) projectName?: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) stageName?: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) stageColor?: string; } diff --git a/backend/src/project-stage/dto/create-project-stage.input.ts b/backend/src/project-stage/dto/create-project-stage.input.ts index d5d1254..0389230 100644 --- a/backend/src/project-stage/dto/create-project-stage.input.ts +++ b/backend/src/project-stage/dto/create-project-stage.input.ts @@ -5,7 +5,7 @@ export class CreateProjectStageInput { @Field() title: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) description?: string; @Field({ defaultValue: '#808080' }) diff --git a/backend/src/project-stage/entities/project-stage.entity.ts b/backend/src/project-stage/entities/project-stage.entity.ts index 2464925..a9e4b45 100644 --- a/backend/src/project-stage/entities/project-stage.entity.ts +++ b/backend/src/project-stage/entities/project-stage.entity.ts @@ -8,7 +8,7 @@ export class ProjectStage { @Field() title: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) description?: string; @Field() diff --git a/backend/src/project/dto/create-project.input.ts b/backend/src/project/dto/create-project.input.ts index 1a25d25..2dca669 100644 --- a/backend/src/project/dto/create-project.input.ts +++ b/backend/src/project/dto/create-project.input.ts @@ -12,7 +12,7 @@ export class CreateProjectInput { @IsSanitizedString() name: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) @IsSanitizedString() description?: string; @@ -31,10 +31,10 @@ export class CreateProjectInput { @Field(() => Number, { nullable: true, defaultValue: 0 }) budgetPlanned?: number; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) startDate?: Date; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) endDate?: Date; @Field(() => Int, { nullable: true, defaultValue: 1 }) @@ -58,7 +58,7 @@ export class CreateProjectInput { }) priority?: ProjectPriority; - @Field({ nullable: true, defaultValue: 'USD' }) + @Field(() => String, { nullable: true, defaultValue: 'USD' }) currency?: string; @Field(() => [String], { nullable: true }) diff --git a/backend/src/project/dto/update-project.input.ts b/backend/src/project/dto/update-project.input.ts index b6e1a43..2a67f0a 100644 --- a/backend/src/project/dto/update-project.input.ts +++ b/backend/src/project/dto/update-project.input.ts @@ -6,18 +6,18 @@ export class UpdateProjectInput extends PartialType(CreateProjectInput) { @Field(() => Int) id: number; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) actualStartDate?: Date; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) actualEndDate?: Date; @Field(() => Number, { nullable: true }) progress?: number; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) archivedAt?: Date; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) key?: string; } diff --git a/backend/src/project/entities/project.entity.ts b/backend/src/project/entities/project.entity.ts index 1f547f4..fa9fca9 100644 --- a/backend/src/project/entities/project.entity.ts +++ b/backend/src/project/entities/project.entity.ts @@ -85,10 +85,10 @@ export class Project { @Field(() => Number, { defaultValue: 0 }) budgetActual: number; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) startDate?: Date; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) endDate?: Date; @Field(() => Int, { defaultValue: 1 }) @@ -97,7 +97,7 @@ export class Project { @Field(() => ProjectMethodology, { defaultValue: ProjectMethodology.KANBAN }) methodology: ProjectMethodology; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) key?: string; @Field(() => ProjectVisibility, { defaultValue: ProjectVisibility.TEAM }) @@ -106,10 +106,10 @@ export class Project { @Field(() => ProjectPriority, { defaultValue: ProjectPriority.MEDIUM }) priority: ProjectPriority; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) actualStartDate?: Date; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) actualEndDate?: Date; @Field(() => Number, { defaultValue: 0 }) @@ -121,7 +121,7 @@ export class Project { @Field(() => [String], { nullable: 'items' }) tags?: string[]; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) archivedAt?: Date; @Field(() => Number, { defaultValue: 0 }) diff --git a/backend/src/task-stage/dto/create-task-stage.input.ts b/backend/src/task-stage/dto/create-task-stage.input.ts index 3407935..c9f1198 100644 --- a/backend/src/task-stage/dto/create-task-stage.input.ts +++ b/backend/src/task-stage/dto/create-task-stage.input.ts @@ -5,7 +5,7 @@ export class CreateTaskStageInput { @Field() title: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) description?: string; @Field({ defaultValue: '#808080' }) diff --git a/backend/src/task-stage/entities/task-stage.entity.ts b/backend/src/task-stage/entities/task-stage.entity.ts index 9ca9e7f..f4755ab 100644 --- a/backend/src/task-stage/entities/task-stage.entity.ts +++ b/backend/src/task-stage/entities/task-stage.entity.ts @@ -8,7 +8,7 @@ export class TaskStage { @Field() title: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) description?: string; @Field() diff --git a/backend/src/task/dto/create-task.input.ts b/backend/src/task/dto/create-task.input.ts index 4bda3a2..7485d05 100644 --- a/backend/src/task/dto/create-task.input.ts +++ b/backend/src/task/dto/create-task.input.ts @@ -8,7 +8,7 @@ export class CreateTaskInput { @IsSanitizedString() title: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) @IsSanitizedString() description?: string; @@ -27,7 +27,7 @@ export class CreateTaskInput { @Field(() => Number, { nullable: true, defaultValue: 0 }) estimatedHours?: number; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) dueDate?: Date; @Field(() => TaskPriority, { @@ -45,7 +45,7 @@ export class CreateTaskInput { @Field(() => Int, { nullable: true }) reporterId?: number; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) startDate?: Date; @Field(() => [String], { nullable: true }) diff --git a/backend/src/task/dto/update-task.input.ts b/backend/src/task/dto/update-task.input.ts index 3552013..fe66c62 100644 --- a/backend/src/task/dto/update-task.input.ts +++ b/backend/src/task/dto/update-task.input.ts @@ -6,7 +6,7 @@ export class UpdateTaskInput extends PartialType(CreateTaskInput) { @Field(() => Int) id: number; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) completedAt?: Date; @Field(() => Number, { nullable: true }) @@ -15,6 +15,6 @@ export class UpdateTaskInput extends PartialType(CreateTaskInput) { @Field(() => Number, { nullable: true }) progress?: number; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) deletedAt?: Date; } diff --git a/backend/src/task/entities/task.entity.ts b/backend/src/task/entities/task.entity.ts index a548012..ce4badd 100644 --- a/backend/src/task/entities/task.entity.ts +++ b/backend/src/task/entities/task.entity.ts @@ -21,7 +21,7 @@ export class Task extends Base { @Field() title: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) description?: string; @Field(() => Int) @@ -54,7 +54,7 @@ export class Task extends Base { @Field(() => Number, { defaultValue: 0 }) estimatedHours: number; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) dueDate?: Date; @Field(() => TaskPriority, { defaultValue: TaskPriority.MEDIUM }) @@ -81,10 +81,10 @@ export class Task extends Base { @Field(() => User, { nullable: true }) reporter?: User; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) startDate?: Date; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) completedAt?: Date; @Field(() => Number, { defaultValue: 0 }) @@ -96,6 +96,6 @@ export class Task extends Base { @Field(() => [String], { nullable: 'items' }) tags?: string[]; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) deletedAt?: Date; } diff --git a/backend/src/timesheet/dto/create-timesheet.input.ts b/backend/src/timesheet/dto/create-timesheet.input.ts index 93897ac..8887767 100644 --- a/backend/src/timesheet/dto/create-timesheet.input.ts +++ b/backend/src/timesheet/dto/create-timesheet.input.ts @@ -21,13 +21,13 @@ export class CreateTimesheetInput { @Field(() => Int) taskId: number; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) startTime?: Date; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) endTime?: Date; - @Field({ nullable: true, defaultValue: true }) + @Field(() => Boolean, { nullable: true, defaultValue: true }) billable?: boolean; @Field(() => Number, { nullable: true }) diff --git a/backend/src/timesheet/dto/update-timesheet.input.ts b/backend/src/timesheet/dto/update-timesheet.input.ts index 3f5a30e..720b785 100644 --- a/backend/src/timesheet/dto/update-timesheet.input.ts +++ b/backend/src/timesheet/dto/update-timesheet.input.ts @@ -13,7 +13,7 @@ export class UpdateTimesheetInput extends PartialType(CreateTimesheetInput) { @Field(() => Int, { nullable: true }) approvedById?: number; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) approvedAt?: Date; @Field(() => Number, { nullable: true }) diff --git a/backend/src/timesheet/entities/timesheet.entity.ts b/backend/src/timesheet/entities/timesheet.entity.ts index 07f84ea..3fa3cac 100644 --- a/backend/src/timesheet/entities/timesheet.entity.ts +++ b/backend/src/timesheet/entities/timesheet.entity.ts @@ -46,10 +46,10 @@ export class Timesheet extends Base { @Field(() => Int) taskId: number; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) startTime?: Date; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) endTime?: Date; @Field({ defaultValue: true }) @@ -73,7 +73,7 @@ export class Timesheet extends Base { @Field(() => User, { nullable: true }) approvedBy?: User; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) approvedAt?: Date; @Field(() => [String], { nullable: 'items' }) diff --git a/backend/src/user/dto/create-user.input.ts b/backend/src/user/dto/create-user.input.ts index b30119b..c071534 100644 --- a/backend/src/user/dto/create-user.input.ts +++ b/backend/src/user/dto/create-user.input.ts @@ -19,32 +19,32 @@ export class CreateUserInput { @Field() password: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) phone: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) mobile: string; @Field() @IsSanitizedString() firstName: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) @IsSanitizedString() lastName: string; @Field({ defaultValue: true }) status: boolean; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) @IsSanitizedString() address: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) @IsSanitizedString() bio: string; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) birthDate: Date; @Field(() => UserRole, { defaultValue: UserRole.USER }) diff --git a/backend/src/user/entities/user.entity.ts b/backend/src/user/entities/user.entity.ts index eb0ec36..f5373ad 100644 --- a/backend/src/user/entities/user.entity.ts +++ b/backend/src/user/entities/user.entity.ts @@ -14,28 +14,28 @@ export class User extends Base { @Field() password: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) phone?: string | null; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) mobile?: string | null; @Field() firstName: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) lastName?: string | null; @Field({ defaultValue: true }) status: boolean; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) address?: string | null; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) bio?: string | null; - @Field({ nullable: true }) + @Field(() => Date, { nullable: true }) birthDate?: Date | null; @Field() diff --git a/backend/src/workspace/dto/create-workspace.input.ts b/backend/src/workspace/dto/create-workspace.input.ts index f43bee6..5ea42ed 100644 --- a/backend/src/workspace/dto/create-workspace.input.ts +++ b/backend/src/workspace/dto/create-workspace.input.ts @@ -7,7 +7,7 @@ export class CreateWorkspaceInput { @IsSanitizedString() name: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) @IsSanitizedString() description?: string; } diff --git a/backend/src/workspace/entities/workspace.entity.ts b/backend/src/workspace/entities/workspace.entity.ts index 82a159e..e0d5eb7 100644 --- a/backend/src/workspace/entities/workspace.entity.ts +++ b/backend/src/workspace/entities/workspace.entity.ts @@ -10,7 +10,7 @@ export class Workspace { @Field() name: string; - @Field({ nullable: true }) + @Field(() => String, { nullable: true }) description?: string | null; @Field(() => [WorkspaceMember], { nullable: 'items' })