chore: implemented CRUD operations in all the layouts (#2505)
* chore: basic crud operations added to the list view * refactor: cycle details page * refactor: module details page * chore: added quick actions to kanban issue block * chore: implement quick actions in calendar layout * fix: custom menu component * chore: separate quick action dropdowns implemented * style: loader for calendar * fix: build errors
This commit is contained in:
parent
9bddd2eb67
commit
d78b4dccf3
76 changed files with 2336 additions and 1153 deletions
|
|
@ -5,13 +5,16 @@ import { ListGroupByHeaderRoot } from "./headers/group-by-root";
|
|||
import { IssueBlock } from "./block";
|
||||
// constants
|
||||
import { getValueFromObject } from "constants/issue";
|
||||
import { IIssue } from "types";
|
||||
import { IssueBlocksList } from "./blocks-list";
|
||||
|
||||
export interface IGroupByList {
|
||||
issues: any;
|
||||
group_by: string | null;
|
||||
list: any;
|
||||
listKey: string;
|
||||
handleIssues?: (group_by: string | null, issue: any) => void;
|
||||
handleIssues: (group_by: string | null, issue: IIssue, action: "update" | "delete") => void;
|
||||
quickActions: (group_by: string | null, issue: IIssue) => React.ReactNode;
|
||||
display_properties: any;
|
||||
is_list?: boolean;
|
||||
states: any;
|
||||
|
|
@ -30,6 +33,7 @@ const GroupByList: React.FC<IGroupByList> = observer((props) => {
|
|||
list,
|
||||
listKey,
|
||||
handleIssues,
|
||||
quickActions,
|
||||
display_properties,
|
||||
is_list = false,
|
||||
states,
|
||||
|
|
@ -59,10 +63,11 @@ const GroupByList: React.FC<IGroupByList> = observer((props) => {
|
|||
</div>
|
||||
<div className={`w-full h-full relative transition-all`}>
|
||||
{issues && (
|
||||
<IssueBlock
|
||||
<IssueBlocksList
|
||||
columnId={getValueFromObject(_list, listKey) as string}
|
||||
issues={is_list ? issues : issues[getValueFromObject(_list, listKey) as string]}
|
||||
handleIssues={handleIssues}
|
||||
quickActions={quickActions}
|
||||
display_properties={display_properties}
|
||||
states={states}
|
||||
labels={labels}
|
||||
|
|
@ -77,11 +82,13 @@ const GroupByList: React.FC<IGroupByList> = observer((props) => {
|
|||
);
|
||||
});
|
||||
|
||||
// TODO: update all the types
|
||||
export interface IList {
|
||||
issues: any;
|
||||
group_by: string | null;
|
||||
handleDragDrop?: (result: any) => void | undefined;
|
||||
handleIssues?: (group_by: string | null, issue: any) => void;
|
||||
handleIssues: (group_by: string | null, issue: IIssue, action: "update" | "delete") => void;
|
||||
quickActions: (group_by: string | null, issue: IIssue) => React.ReactNode;
|
||||
display_properties: any;
|
||||
states: any;
|
||||
labels: any;
|
||||
|
|
@ -97,6 +104,7 @@ export const List: React.FC<IList> = observer((props) => {
|
|||
issues,
|
||||
group_by,
|
||||
handleIssues,
|
||||
quickActions,
|
||||
display_properties,
|
||||
states,
|
||||
labels,
|
||||
|
|
@ -116,6 +124,7 @@ export const List: React.FC<IList> = observer((props) => {
|
|||
list={[{ id: "null", title: "All Issues" }]}
|
||||
listKey={`id`}
|
||||
handleIssues={handleIssues}
|
||||
quickActions={quickActions}
|
||||
display_properties={display_properties}
|
||||
is_list={true}
|
||||
states={states}
|
||||
|
|
@ -135,6 +144,7 @@ export const List: React.FC<IList> = observer((props) => {
|
|||
list={projects}
|
||||
listKey={`id`}
|
||||
handleIssues={handleIssues}
|
||||
quickActions={quickActions}
|
||||
display_properties={display_properties}
|
||||
states={states}
|
||||
labels={labels}
|
||||
|
|
@ -153,6 +163,7 @@ export const List: React.FC<IList> = observer((props) => {
|
|||
list={states}
|
||||
listKey={`id`}
|
||||
handleIssues={handleIssues}
|
||||
quickActions={quickActions}
|
||||
display_properties={display_properties}
|
||||
states={states}
|
||||
labels={labels}
|
||||
|
|
@ -171,6 +182,7 @@ export const List: React.FC<IList> = observer((props) => {
|
|||
list={stateGroups}
|
||||
listKey={`key`}
|
||||
handleIssues={handleIssues}
|
||||
quickActions={quickActions}
|
||||
display_properties={display_properties}
|
||||
states={states}
|
||||
labels={labels}
|
||||
|
|
@ -189,6 +201,7 @@ export const List: React.FC<IList> = observer((props) => {
|
|||
list={priorities}
|
||||
listKey={`key`}
|
||||
handleIssues={handleIssues}
|
||||
quickActions={quickActions}
|
||||
display_properties={display_properties}
|
||||
states={states}
|
||||
labels={labels}
|
||||
|
|
@ -207,6 +220,7 @@ export const List: React.FC<IList> = observer((props) => {
|
|||
list={labels}
|
||||
listKey={`id`}
|
||||
handleIssues={handleIssues}
|
||||
quickActions={quickActions}
|
||||
display_properties={display_properties}
|
||||
states={states}
|
||||
labels={labels}
|
||||
|
|
@ -225,6 +239,7 @@ export const List: React.FC<IList> = observer((props) => {
|
|||
list={members}
|
||||
listKey={`member.id`}
|
||||
handleIssues={handleIssues}
|
||||
quickActions={quickActions}
|
||||
display_properties={display_properties}
|
||||
states={states}
|
||||
labels={labels}
|
||||
|
|
@ -243,6 +258,7 @@ export const List: React.FC<IList> = observer((props) => {
|
|||
list={members}
|
||||
listKey={`member.id`}
|
||||
handleIssues={handleIssues}
|
||||
quickActions={quickActions}
|
||||
display_properties={display_properties}
|
||||
states={states}
|
||||
labels={labels}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue