New Directory Setup (#2065)
* chore: moved app & space from apps to root * chore: modified workspace configuration * chore: modified dockerfiles for space and web * chore: modified icons for space * feat: updated files for new svg icons supported by next-images * chore: added /spaces base path for next * chore: added compose config for space * chore: updated husky configuration * chore: updated workflows for new configuration * chore: changed app name to web * fix: resolved build errors with web * chore: reset file tracing root for both projects * chore: added nginx config for deploy * fix: eslint and tsconfig settings for space app * husky setup fixes based on new dir * eslint fixes * prettier formatting --------- Co-authored-by: Henit Chobisa <chobisa.henit@gmail.com>
This commit is contained in:
parent
20e36194b4
commit
1e152c666c
1022 changed files with 1475 additions and 1240 deletions
163
space/types/issue.ts
Normal file
163
space/types/issue.ts
Normal file
|
|
@ -0,0 +1,163 @@
|
|||
export type TIssueBoardKeys = "list" | "kanban" | "calendar" | "spreadsheet" | "gantt";
|
||||
|
||||
export interface IIssueBoardViews {
|
||||
key: TIssueBoardKeys;
|
||||
title: string;
|
||||
icon: string;
|
||||
className: string;
|
||||
}
|
||||
|
||||
export type TIssuePriorityKey = "urgent" | "high" | "medium" | "low" | "none";
|
||||
export type TIssuePriorityTitle = "Urgent" | "High" | "Medium" | "Low" | "None";
|
||||
export interface IIssuePriorityFilters {
|
||||
key: TIssuePriorityKey;
|
||||
title: TIssuePriorityTitle;
|
||||
className: string;
|
||||
icon: string;
|
||||
}
|
||||
|
||||
export type TIssueGroupKey = "backlog" | "unstarted" | "started" | "completed" | "cancelled";
|
||||
export type TIssueGroupTitle = "Backlog" | "Unstarted" | "Started" | "Completed" | "Cancelled";
|
||||
|
||||
export interface IIssueGroup {
|
||||
key: TIssueGroupKey;
|
||||
title: TIssueGroupTitle;
|
||||
color: string;
|
||||
className: string;
|
||||
icon: React.FC;
|
||||
}
|
||||
|
||||
export interface IIssue {
|
||||
id: string;
|
||||
comments: Comment[];
|
||||
description_html: string;
|
||||
label_details: any;
|
||||
name: string;
|
||||
priority: TIssuePriorityKey | null;
|
||||
project: string;
|
||||
project_detail: any;
|
||||
reactions: IIssueReaction[];
|
||||
sequence_id: number;
|
||||
start_date: any;
|
||||
state: string;
|
||||
state_detail: any;
|
||||
target_date: any;
|
||||
votes: IVote[];
|
||||
}
|
||||
|
||||
export interface IIssueState {
|
||||
id: string;
|
||||
name: string;
|
||||
group: TIssueGroupKey;
|
||||
color: string;
|
||||
}
|
||||
|
||||
export interface IIssueLabel {
|
||||
id: string;
|
||||
name: string;
|
||||
color: string;
|
||||
}
|
||||
|
||||
export interface IVote {
|
||||
issue: string;
|
||||
vote: -1 | 1;
|
||||
workspace: string;
|
||||
project: string;
|
||||
actor: string;
|
||||
actor_detail: ActorDetail;
|
||||
}
|
||||
|
||||
export interface Comment {
|
||||
id: string;
|
||||
actor_detail: ActorDetail;
|
||||
issue_detail: IssueDetail;
|
||||
project_detail: ProjectDetail;
|
||||
workspace_detail: WorkspaceDetail;
|
||||
comment_reactions: any[];
|
||||
is_member: boolean;
|
||||
created_at: Date;
|
||||
updated_at: Date;
|
||||
comment_stripped: string;
|
||||
comment_html: string;
|
||||
attachments: any[];
|
||||
access: string;
|
||||
created_by: string;
|
||||
updated_by: string;
|
||||
project: string;
|
||||
workspace: string;
|
||||
issue: string;
|
||||
actor: string;
|
||||
}
|
||||
|
||||
export interface IIssueReaction {
|
||||
actor_detail: ActorDetail;
|
||||
id: string;
|
||||
issue: string;
|
||||
reaction: string;
|
||||
}
|
||||
|
||||
export interface ActorDetail {
|
||||
avatar?: string;
|
||||
display_name?: string;
|
||||
first_name?: string;
|
||||
id?: string;
|
||||
is_bot?: boolean;
|
||||
last_name?: string;
|
||||
}
|
||||
|
||||
export interface IssueDetail {
|
||||
id: string;
|
||||
name: string;
|
||||
description: Description;
|
||||
description_html: string;
|
||||
priority: string;
|
||||
start_date: null;
|
||||
target_date: null;
|
||||
sequence_id: number;
|
||||
sort_order: number;
|
||||
}
|
||||
|
||||
export interface Description {
|
||||
type: string;
|
||||
content: DescriptionContent[];
|
||||
}
|
||||
|
||||
export interface DescriptionContent {
|
||||
type: string;
|
||||
attrs?: Attrs;
|
||||
content: ContentContent[];
|
||||
}
|
||||
|
||||
export interface Attrs {
|
||||
level: number;
|
||||
}
|
||||
|
||||
export interface ContentContent {
|
||||
text: string;
|
||||
type: string;
|
||||
}
|
||||
|
||||
export interface ProjectDetail {
|
||||
id: string;
|
||||
identifier: string;
|
||||
name: string;
|
||||
cover_image: string;
|
||||
icon_prop: null;
|
||||
emoji: string;
|
||||
description: string;
|
||||
}
|
||||
|
||||
export interface WorkspaceDetail {
|
||||
name: string;
|
||||
slug: string;
|
||||
id: string;
|
||||
}
|
||||
|
||||
export interface IssueDetailType {
|
||||
[issueId: string]: {
|
||||
issue: IIssue;
|
||||
comments: Comment[];
|
||||
reactions: any[];
|
||||
votes: any[];
|
||||
};
|
||||
}
|
||||
29
space/types/project.ts
Normal file
29
space/types/project.ts
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
export interface IWorkspace {
|
||||
id: string;
|
||||
name: string;
|
||||
slug: string;
|
||||
}
|
||||
|
||||
export interface IProject {
|
||||
id: string;
|
||||
identifier: string;
|
||||
name: string;
|
||||
description: string;
|
||||
icon: string;
|
||||
cover_image: string | null;
|
||||
icon_prop: string | null;
|
||||
emoji: string | null;
|
||||
}
|
||||
|
||||
export interface IProjectSettings {
|
||||
comments: boolean;
|
||||
reactions: boolean;
|
||||
votes: boolean;
|
||||
views: {
|
||||
list: boolean;
|
||||
gantt: boolean;
|
||||
kanban: boolean;
|
||||
calendar: boolean;
|
||||
spreadsheet: boolean;
|
||||
};
|
||||
}
|
||||
4
space/types/theme.ts
Normal file
4
space/types/theme.ts
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
export interface IThemeStore {
|
||||
theme: string;
|
||||
setTheme: (theme: "light" | "dark" | string) => void;
|
||||
}
|
||||
23
space/types/user.ts
Normal file
23
space/types/user.ts
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
export interface IUser {
|
||||
avatar: string;
|
||||
cover_image: string | null;
|
||||
created_at: Date;
|
||||
created_location: string;
|
||||
date_joined: Date;
|
||||
email: string;
|
||||
display_name: string;
|
||||
first_name: string;
|
||||
id: string;
|
||||
is_email_verified: boolean;
|
||||
is_onboarded: boolean;
|
||||
is_tour_completed: boolean;
|
||||
last_location: string;
|
||||
last_login: Date;
|
||||
last_name: string;
|
||||
mobile_number: string;
|
||||
role: string;
|
||||
token: string;
|
||||
updated_at: Date;
|
||||
username: string;
|
||||
user_timezone: string;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue