@voplus/morpho-workspace 1.0.0-dev50 → 1.0.0-dev52
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/components/AvatarList/index.d.ts +1 -0
- package/es/components/AvatarList/index.js +5 -2
- package/es/components/AvatarList/index.js.map +1 -1
- package/es/components/Reference/Item.d.ts +8 -0
- package/es/components/Reference/Item.js +62 -0
- package/es/components/Reference/Item.js.map +1 -0
- package/es/components/Reference/index.d.ts +6 -0
- package/es/components/Reference/index.js +88 -0
- package/es/components/Reference/index.js.map +1 -0
- package/es/components/Reference/index.less +110 -0
- package/es/components/Reference/state.d.ts +9 -0
- package/es/components/Reference/state.js +31 -0
- package/es/components/Reference/state.js.map +1 -0
- package/es/components/ToolBar/index.d.ts +2 -0
- package/es/components/ToolBar/index.js +3 -3
- package/es/components/ToolBar/index.js.map +1 -1
- package/es/data/board/BoardColumnStore.d.ts +13 -3
- package/es/data/board/BoardColumnStore.js +22 -0
- package/es/data/board/BoardColumnStore.js.map +1 -1
- package/es/data/board/BoardStore.d.ts +10 -0
- package/es/data/board/BoardStore.js +22 -0
- package/es/data/board/BoardStore.js.map +1 -1
- package/es/data/board/hooks.d.ts +6 -1
- package/es/data/board/hooks.js +10 -0
- package/es/data/board/hooks.js.map +1 -1
- package/es/data/board/index.d.ts +1 -0
- package/es/data/board/index.js +1 -0
- package/es/data/board/index.js.map +1 -1
- package/es/data/board/interfaces.d.ts +19 -0
- package/es/data/board/types.d.ts +13 -0
- package/es/data/meeting/AgendaStore.js +3 -0
- package/es/data/meeting/AgendaStore.js.map +1 -1
- package/es/data/meeting/MeetingStore.d.ts +3 -0
- package/es/data/meeting/MeetingStore.js +5 -0
- package/es/data/meeting/MeetingStore.js.map +1 -1
- package/es/modules/BoardView/components/BoardColumn/index.d.ts +2 -0
- package/es/modules/BoardView/components/BoardColumn/index.js +54 -16
- package/es/modules/BoardView/components/BoardColumn/index.js.map +1 -1
- package/es/modules/BoardView/components/BoardColumn/index.less +4 -4
- package/es/modules/BoardView/components/BoardColumn/state.d.ts +7 -3
- package/es/modules/BoardView/components/BoardColumn/state.js +19 -3
- package/es/modules/BoardView/components/BoardColumn/state.js.map +1 -1
- package/es/modules/BoardView/components/BoardList/index.js +63 -15
- package/es/modules/BoardView/components/BoardList/index.js.map +1 -1
- package/es/modules/BoardView/components/BoardList/index.less +22 -4
- package/es/modules/BoardView/components/BoardList/state.d.ts +9 -3
- package/es/modules/BoardView/components/BoardList/state.js +36 -4
- package/es/modules/BoardView/components/BoardList/state.js.map +1 -1
- package/es/modules/BoardView/components/DocumentCard/index.d.ts +10 -0
- package/es/modules/BoardView/components/DocumentCard/index.js +101 -0
- package/es/modules/BoardView/components/DocumentCard/index.js.map +1 -0
- package/es/modules/BoardView/components/DocumentCard/index.less +116 -0
- package/es/modules/BoardView/components/DocumentCard/state.d.ts +15 -0
- package/es/modules/BoardView/components/DocumentCard/state.js +54 -0
- package/es/modules/BoardView/components/DocumentCard/state.js.map +1 -0
- package/es/modules/BoardView/components/{TaskList → LinkList}/index.d.ts +5 -4
- package/es/modules/BoardView/components/LinkList/index.js +60 -0
- package/es/modules/BoardView/components/LinkList/index.js.map +1 -0
- package/es/modules/BoardView/components/LinkList/state.d.ts +7 -0
- package/es/modules/BoardView/components/{TaskList → LinkList}/state.js +8 -4
- package/es/modules/BoardView/components/LinkList/state.js.map +1 -0
- package/es/modules/BoardView/components/NewTaskForm/index.js +32 -15
- package/es/modules/BoardView/components/NewTaskForm/index.js.map +1 -1
- package/es/modules/BoardView/components/NewTaskForm/index.less +23 -12
- package/es/modules/BoardView/components/NewTaskForm/state.d.ts +1 -0
- package/es/modules/BoardView/components/NewTaskForm/state.js +4 -0
- package/es/modules/BoardView/components/NewTaskForm/state.js.map +1 -1
- package/es/modules/BoardView/components/TaskCard/index.d.ts +2 -0
- package/es/modules/BoardView/components/TaskCard/index.js +20 -21
- package/es/modules/BoardView/components/TaskCard/index.js.map +1 -1
- package/es/modules/BoardView/pages/BoardViewList/index.js +4 -5
- package/es/modules/BoardView/pages/BoardViewList/index.js.map +1 -1
- package/es/modules/BoardView/pages/BoardViewList/index.less +1 -1
- package/es/modules/meeting/components/MeetingDescription/index.js +2 -2
- package/es/modules/meeting/components/MeetingDescription/index.js.map +1 -1
- package/es/modules/meeting/components/MeetingHeader/index.js +4 -3
- package/es/modules/meeting/components/MeetingHeader/index.js.map +1 -1
- package/es/modules/meeting/pages/MeetingList/state.d.ts +1 -0
- package/es/modules/meeting/pages/MeetingList/state.js +6 -0
- package/es/modules/meeting/pages/MeetingList/state.js.map +1 -1
- package/es/modules/meeting/pages/MeetingPrintView/index.d.ts +1 -1
- package/es/modules/meeting/pages/MeetingPrintView/index.js +1 -1
- package/es/modules/meeting/pages/MeetingPrintView/index.js.map +1 -1
- package/es/modules/meeting/pages/MeetingPrintView/index.less +1 -0
- package/es/modules/tasks/components/NewTaskForm/index.d.ts +1 -0
- package/es/modules/tasks/components/NewTaskForm/index.js +2 -0
- package/es/modules/tasks/components/NewTaskForm/index.js.map +1 -1
- package/es/modules/tasks/components/SubTaskList/index.js +2 -19
- package/es/modules/tasks/components/SubTaskList/index.js.map +1 -1
- package/es/modules/tasks/components/SubTaskList/index.less +3 -0
- package/es/modules/tasks/components/TaskDescription/index.less +6 -0
- package/es/modules/tasks/components/TaskDetail/index.js +8 -1
- package/es/modules/tasks/components/TaskDetail/index.js.map +1 -1
- package/es/modules/tasks/components/TaskItem/TaskItem.js.map +1 -1
- package/es/modules/tasks/pages/TaskTabView/index.js +2 -5
- package/es/modules/tasks/pages/TaskTabView/index.js.map +1 -1
- package/es/modules/tasks/pages/TaskTabView/index.less +6 -0
- package/package.json +7 -6
- package/es/modules/BoardView/components/Add/index.d.ts +0 -7
- package/es/modules/BoardView/components/Add/index.js +0 -80
- package/es/modules/BoardView/components/Add/index.js.map +0 -1
- package/es/modules/BoardView/components/Add/index.less +0 -26
- package/es/modules/BoardView/components/TaskList/index.js +0 -45
- package/es/modules/BoardView/components/TaskList/index.js.map +0 -1
- package/es/modules/BoardView/components/TaskList/state.d.ts +0 -7
- package/es/modules/BoardView/components/TaskList/state.js.map +0 -1
- package/es/modules/tasks/components/TaskDetail/index.less +0 -28
@@ -2,15 +2,20 @@ import { __decorate } from "tslib";
|
|
2
2
|
import { observable } from "mobx";
|
3
3
|
export class State {
|
4
4
|
constructor() {
|
5
|
-
this.
|
5
|
+
this.boardcolumns = [];
|
6
6
|
this.id = "";
|
7
7
|
this.name = "";
|
8
|
-
this.
|
8
|
+
this.reload = false;
|
9
|
+
this.loading = true;
|
10
|
+
this.filterName = "";
|
11
|
+
this.sort = {};
|
12
|
+
this.filters = ["Done", "Progress", "NotStarted", "NotAssigned"];
|
13
|
+
this.AddBoardColumnAble = false;
|
9
14
|
}
|
10
15
|
}
|
11
16
|
__decorate([
|
12
17
|
observable
|
13
|
-
], State.prototype, "
|
18
|
+
], State.prototype, "boardcolumns", void 0);
|
14
19
|
__decorate([
|
15
20
|
observable
|
16
21
|
], State.prototype, "id", void 0);
|
@@ -19,5 +24,32 @@ __decorate([
|
|
19
24
|
], State.prototype, "name", void 0);
|
20
25
|
__decorate([
|
21
26
|
observable
|
22
|
-
], State.prototype, "
|
27
|
+
], State.prototype, "reload", void 0);
|
28
|
+
__decorate([
|
29
|
+
observable
|
30
|
+
], State.prototype, "loading", void 0);
|
31
|
+
__decorate([
|
32
|
+
observable
|
33
|
+
], State.prototype, "filterName", void 0);
|
34
|
+
__decorate([
|
35
|
+
observable
|
36
|
+
], State.prototype, "sort", void 0);
|
37
|
+
__decorate([
|
38
|
+
observable
|
39
|
+
], State.prototype, "filters", void 0);
|
40
|
+
__decorate([
|
41
|
+
observable
|
42
|
+
], State.prototype, "AddBoardColumnAble", void 0);
|
43
|
+
// export const options = {
|
44
|
+
// count: 1,
|
45
|
+
// filterName: "",
|
46
|
+
// status: ["Done", "Progress", "NotStarted", "NotAssigned"],
|
47
|
+
// sort: {},
|
48
|
+
// get getFilterName() {
|
49
|
+
// return options.filterName;
|
50
|
+
// },
|
51
|
+
// setFilterName(name: string) {
|
52
|
+
// options.filterName = name;
|
53
|
+
// }
|
54
|
+
// };
|
23
55
|
//# sourceMappingURL=state.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../../src/modules/BoardView/components/BoardList/state.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../../src/modules/BoardView/components/BoardList/state.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAIlC,MAAM,OAAO,KAAK;IAAlB;QACoB,iBAAY,GAAmB,EAAE,CAAC;QAClC,OAAE,GAAW,EAAE,CAAC;QAChB,SAAI,GAAW,EAAE,CAAC;QAClB,WAAM,GAAY,KAAK,CAAC;QACxB,YAAO,GAAY,IAAI,CAAC;QACxB,eAAU,GAAW,EAAE,CAAC;QACxB,SAAI,GAAmB,EAAE,CAAC;QAC1B,YAAO,GAAU,CAAC,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,CAAC,CAAC;QACnE,uBAAkB,GAAY,KAAK,CAAC;IACxD,CAAC;CAAA;AATY;IAAX,UAAU;2CAA0C;AACzC;IAAX,UAAU;iCAAwB;AACvB;IAAX,UAAU;mCAA0B;AACzB;IAAX,UAAU;qCAAgC;AAC/B;IAAX,UAAU;sCAAgC;AAC/B;IAAX,UAAU;yCAAgC;AAC/B;IAAX,UAAU;mCAAkC;AACjC;IAAX,UAAU;sCAA2E;AAC1E;IAAX,UAAU;iDAA4C;AAGxD,2BAA2B;AAC3B,aAAa;AACb,mBAAmB;AACnB,8DAA8D;AAC9D,aAAa;AACb,yBAAyB;AACzB,+BAA+B;AAC/B,MAAM;AACN,iCAAiC;AACjC,+BAA+B;AAC/B,KAAK;AACL,KAAK"}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
/// <reference types="react" />
|
2
|
+
declare const DocumentCard: (props: {
|
3
|
+
id: string;
|
4
|
+
leftId?: string | undefined;
|
5
|
+
linkId?: string | undefined;
|
6
|
+
reload?: boolean | undefined;
|
7
|
+
multiple?: boolean | undefined;
|
8
|
+
connectDragSource?: any;
|
9
|
+
}) => JSX.Element;
|
10
|
+
export default DocumentCard;
|
@@ -0,0 +1,101 @@
|
|
1
|
+
import { faBars, faCommentDots, faCopy, faPaperclip, faSave, faUndo } from "@fortawesome/pro-light-svg-icons";
|
2
|
+
import { FontAwesomeIcon as FAIcon } from "@fortawesome/react-fontawesome";
|
3
|
+
import { Button, Checkbox, Input, message, Spin } from "@voplus/antd";
|
4
|
+
import { useDocument, useDocumentStore } from "@voplus/morpho-document";
|
5
|
+
import { FileStore } from "@voplus/morpho-document/es/data/FileStore/FileContext";
|
6
|
+
import Card from "@voplus/morpho-ui/es/controls/Card";
|
7
|
+
import classnames from "classnames";
|
8
|
+
import { useObserver } from "mobx-react-lite";
|
9
|
+
import React, { useState } from "react";
|
10
|
+
import ToolBar from "../../../../components/ToolBar";
|
11
|
+
import FlagIcon from "../../../../controls/FlagIcon";
|
12
|
+
import styles from "./index.less";
|
13
|
+
import { State } from "./state";
|
14
|
+
const DocumentCard = (props) => {
|
15
|
+
const [state] = useState(new State());
|
16
|
+
const [store] = useState(new FileStore());
|
17
|
+
// const taskStore = useTaskStore();
|
18
|
+
const documentStore = useDocumentStore();
|
19
|
+
const [parentReadonly, setParentReadonly] = useState(false);
|
20
|
+
state.reload = !!props.reload;
|
21
|
+
state.document = useDocument(props.id, { reload: parentReadonly });
|
22
|
+
const readonly = state.document.status === "Readonly";
|
23
|
+
const onSaveMember = async (ids) => {
|
24
|
+
// state.ids = ids;
|
25
|
+
// await taskStore.edit(state.document.id, { MemberIds: ids });
|
26
|
+
};
|
27
|
+
const onSave = async () => {
|
28
|
+
if (!state.name) {
|
29
|
+
return message.warn("Title is required");
|
30
|
+
}
|
31
|
+
if (state.name.trim() === state.document.name) {
|
32
|
+
// 没有变动无需请求
|
33
|
+
return (state.editable = false);
|
34
|
+
}
|
35
|
+
state.loading = true;
|
36
|
+
await documentStore.edit(props.id, { Name: state.name });
|
37
|
+
state.editable = !state.editable;
|
38
|
+
state.loading = false;
|
39
|
+
};
|
40
|
+
const onEdit = () => {
|
41
|
+
state.name = state.document.name;
|
42
|
+
state.isHover = false;
|
43
|
+
state.editable = !state.editable;
|
44
|
+
};
|
45
|
+
const onDelete = () => {
|
46
|
+
documentStore.editLinks(props.leftId, { RemoveLinks: [props.linkId] });
|
47
|
+
};
|
48
|
+
const onMove = () => {
|
49
|
+
store.onMove([props.id]);
|
50
|
+
};
|
51
|
+
const onPaste = async () => {
|
52
|
+
if (store.moveIds.some((id) => id === props.id))
|
53
|
+
return message.warn("Cannot move to itself");
|
54
|
+
await store.onPaste(() => documentStore.move(store.moveIds, props.id));
|
55
|
+
state.reload = true;
|
56
|
+
};
|
57
|
+
const onLock = () => {
|
58
|
+
documentStore.edit(state.document.id, { Status: "Readonly" });
|
59
|
+
};
|
60
|
+
const onUnlock = () => {
|
61
|
+
documentStore.edit(state.document.id, { Status: "Normal" });
|
62
|
+
};
|
63
|
+
const onChangeImportant = (e) => {
|
64
|
+
if (readonly)
|
65
|
+
return;
|
66
|
+
e.stopPropagation();
|
67
|
+
};
|
68
|
+
const iconList = (React.createElement(React.Fragment, null,
|
69
|
+
React.createElement("span", null,
|
70
|
+
React.createElement(FAIcon, { icon: faPaperclip }),
|
71
|
+
state.document.documents || 0),
|
72
|
+
React.createElement("span", null,
|
73
|
+
React.createElement(FAIcon, { icon: faCommentDots }),
|
74
|
+
state.document.comments || 0),
|
75
|
+
React.createElement("span", null,
|
76
|
+
React.createElement(FAIcon, { icon: faCopy }),
|
77
|
+
0)));
|
78
|
+
const { multiple } = props;
|
79
|
+
return useObserver(() => (React.createElement(Card, { className: styles["task-card"], shadow: true },
|
80
|
+
React.createElement("div", { className: "task-card-item", onMouseOver: () => (state.isHover = true), onMouseLeave: () => (state.isHover = false) },
|
81
|
+
React.createElement("div", { className: "task-card-head" },
|
82
|
+
multiple && React.createElement(Checkbox, { value: state.document.id, className: "multiple-box" }),
|
83
|
+
!multiple && (React.createElement(FlagIcon, { id: state.document.id, editable: !readonly, flag: state.document.flag, color: state.isHover ? "rgba(168, 168, 168,0.5)" : "#999", onchange: onChangeImportant, className: "task-icon-star" })),
|
84
|
+
state.editable ? (React.createElement(Spin, { spinning: state.loading },
|
85
|
+
React.createElement(Input.TextArea, { className: "task-card-title", autosize: true, autoFocus: true, value: state.name, onChange: e => (state.name = e.target.value) }))) : (React.createElement("div", { className: "task-card-title" }, state.document.name))),
|
86
|
+
React.createElement("div", { className: "task-card-control" },
|
87
|
+
state.isHover &&
|
88
|
+
!multiple &&
|
89
|
+
props.connectDragSource?.(React.createElement("span", { className: classnames("task-icon-move", { show: state.editable }) }, React.createElement(FAIcon, { icon: faBars }))),
|
90
|
+
iconList),
|
91
|
+
React.createElement("div", { className: "task-card-label" },
|
92
|
+
state.isHover && !state.editable && (React.createElement("div", { className: classnames("hover-operate-icon", { show: state.isHover }) },
|
93
|
+
React.createElement(ToolBar, { size: "small", url: `/document/${props.id}`, edit: false, del: false, move: !readonly, lock: state.document.status === "Draft" || state.document.status === "Normal", unlock: state.document.status === "Readonly", hoverEdit: !readonly, hoverDel: !readonly, onDelete: onDelete, onEdit: onEdit, onMove: onMove, onPaste: onPaste, onLock: onLock, onUnlock: onUnlock }))),
|
94
|
+
state.editable && (React.createElement("div", { className: "task-card-editable-name" },
|
95
|
+
React.createElement(Button, { shape: "circle", size: "small", onClick: () => (state.editable = false) },
|
96
|
+
React.createElement(FAIcon, { icon: faUndo })),
|
97
|
+
React.createElement(Button, { type: "primary", size: "small", ghost: true, shape: "circle", onClick: onSave },
|
98
|
+
React.createElement(FAIcon, { icon: faSave })))))))));
|
99
|
+
};
|
100
|
+
export default DocumentCard;
|
101
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/BoardView/components/DocumentCard/index.tsx"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,116 @@
|
|
1
|
+
@import "../../../../styles/common.less";
|
2
|
+
.task-card {
|
3
|
+
margin-bottom: 15px;
|
4
|
+
background: #ffffff;
|
5
|
+
cursor: pointer;
|
6
|
+
:global {
|
7
|
+
.task-card-head {
|
8
|
+
display: flex;
|
9
|
+
align-items: center;
|
10
|
+
.task-card-title {
|
11
|
+
flex: 1;
|
12
|
+
font-size: 16px;
|
13
|
+
color: #000000;
|
14
|
+
white-space: nowrap;
|
15
|
+
overflow: hidden;
|
16
|
+
text-overflow: ellipsis;
|
17
|
+
margin-left: 6px;
|
18
|
+
}
|
19
|
+
}
|
20
|
+
.task-card-control {
|
21
|
+
margin-top: 6px;
|
22
|
+
display: flex;
|
23
|
+
align-items: center;
|
24
|
+
padding: 5px 0;
|
25
|
+
font-size: 13px;
|
26
|
+
color: #666;
|
27
|
+
& > span {
|
28
|
+
display: flex;
|
29
|
+
align-items: center;
|
30
|
+
}
|
31
|
+
& > span + span {
|
32
|
+
margin-left: 8px;
|
33
|
+
}
|
34
|
+
> span:hover {
|
35
|
+
color: @primary-color;
|
36
|
+
}
|
37
|
+
.task-icon-move{
|
38
|
+
&:hover{
|
39
|
+
color: #666;
|
40
|
+
}
|
41
|
+
.svg-inline--fa {
|
42
|
+
margin-right: 0;
|
43
|
+
}
|
44
|
+
}
|
45
|
+
.svg-inline--fa {
|
46
|
+
margin-right: 5px;
|
47
|
+
}
|
48
|
+
}
|
49
|
+
.task-card-label {
|
50
|
+
height: 23px;
|
51
|
+
margin-top: 8px;
|
52
|
+
.item {
|
53
|
+
display: inline-block;
|
54
|
+
font-size: 13px;
|
55
|
+
height: 22px;
|
56
|
+
line-height: 20px;
|
57
|
+
padding: 0 11px 0 8px;
|
58
|
+
color: #a50909;
|
59
|
+
background: #fbc7c8;
|
60
|
+
border-top-right-radius: 11px;
|
61
|
+
border-bottom-right-radius: 11px;
|
62
|
+
border-top-left-radius: 2px;
|
63
|
+
border-bottom-left-radius: 2px;
|
64
|
+
margin-right: 10px;
|
65
|
+
&.project {
|
66
|
+
color: #5d0303;
|
67
|
+
background: #d6bdbd;
|
68
|
+
}
|
69
|
+
.close {
|
70
|
+
float: right;
|
71
|
+
margin-left: 4px;
|
72
|
+
margin-top: 1px;
|
73
|
+
font-size: 10px;
|
74
|
+
}
|
75
|
+
.svg-inline--fa {
|
76
|
+
transform: scale(0.7, 0.9);
|
77
|
+
}
|
78
|
+
}
|
79
|
+
}
|
80
|
+
.hover-operate-icon {
|
81
|
+
// &.show {
|
82
|
+
// display: flex;
|
83
|
+
// justify-content: flex-end;
|
84
|
+
// align-items: center;
|
85
|
+
// }
|
86
|
+
.ant-dropdown-trigger {
|
87
|
+
float: right;
|
88
|
+
}
|
89
|
+
.ant-btn {
|
90
|
+
margin: 0 8px 0 0;
|
91
|
+
}
|
92
|
+
}
|
93
|
+
.task-card-editable-name {
|
94
|
+
display: flex;
|
95
|
+
justify-content: flex-end;
|
96
|
+
.ant-btn {
|
97
|
+
margin-right: 8px;
|
98
|
+
}
|
99
|
+
}
|
100
|
+
.task-card-item{
|
101
|
+
.task-icon-move {
|
102
|
+
opacity: 0;
|
103
|
+
cursor: move;
|
104
|
+
font-size: 16px;
|
105
|
+
}
|
106
|
+
&:hover .task-icon-move,
|
107
|
+
.task-icon-move.show {
|
108
|
+
opacity: 1;
|
109
|
+
}
|
110
|
+
&.opacity {
|
111
|
+
opacity: 0.5;
|
112
|
+
}
|
113
|
+
}
|
114
|
+
|
115
|
+
}
|
116
|
+
}
|
@@ -0,0 +1,15 @@
|
|
1
|
+
import { IDocument } from "@voplus/morpho-document";
|
2
|
+
export declare class State {
|
3
|
+
document: IDocument;
|
4
|
+
id: string;
|
5
|
+
ids: string[];
|
6
|
+
members: any[];
|
7
|
+
name: string;
|
8
|
+
editable: boolean;
|
9
|
+
loading: boolean;
|
10
|
+
visible: boolean;
|
11
|
+
visibleQuickView: boolean;
|
12
|
+
modalType: string;
|
13
|
+
isHover: boolean;
|
14
|
+
reload: boolean;
|
15
|
+
}
|
@@ -0,0 +1,54 @@
|
|
1
|
+
import { __decorate } from "tslib";
|
2
|
+
import { observable } from "mobx";
|
3
|
+
export class State {
|
4
|
+
constructor() {
|
5
|
+
this.id = "";
|
6
|
+
this.ids = [];
|
7
|
+
this.members = [];
|
8
|
+
this.name = "";
|
9
|
+
this.editable = false;
|
10
|
+
this.loading = false;
|
11
|
+
this.visible = false;
|
12
|
+
this.visibleQuickView = false;
|
13
|
+
this.modalType = "";
|
14
|
+
this.isHover = false;
|
15
|
+
this.reload = false;
|
16
|
+
}
|
17
|
+
}
|
18
|
+
__decorate([
|
19
|
+
observable
|
20
|
+
], State.prototype, "document", void 0);
|
21
|
+
__decorate([
|
22
|
+
observable
|
23
|
+
], State.prototype, "id", void 0);
|
24
|
+
__decorate([
|
25
|
+
observable
|
26
|
+
], State.prototype, "ids", void 0);
|
27
|
+
__decorate([
|
28
|
+
observable
|
29
|
+
], State.prototype, "members", void 0);
|
30
|
+
__decorate([
|
31
|
+
observable
|
32
|
+
], State.prototype, "name", void 0);
|
33
|
+
__decorate([
|
34
|
+
observable
|
35
|
+
], State.prototype, "editable", void 0);
|
36
|
+
__decorate([
|
37
|
+
observable
|
38
|
+
], State.prototype, "loading", void 0);
|
39
|
+
__decorate([
|
40
|
+
observable
|
41
|
+
], State.prototype, "visible", void 0);
|
42
|
+
__decorate([
|
43
|
+
observable
|
44
|
+
], State.prototype, "visibleQuickView", void 0);
|
45
|
+
__decorate([
|
46
|
+
observable
|
47
|
+
], State.prototype, "modalType", void 0);
|
48
|
+
__decorate([
|
49
|
+
observable
|
50
|
+
], State.prototype, "isHover", void 0);
|
51
|
+
__decorate([
|
52
|
+
observable
|
53
|
+
], State.prototype, "reload", void 0);
|
54
|
+
//# sourceMappingURL=state.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../../src/modules/BoardView/components/DocumentCard/state.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAGlC,MAAM,OAAO,KAAK;IAAlB;QAEoB,OAAE,GAAW,EAAE,CAAC;QAChB,QAAG,GAAa,EAAE,CAAC;QACnB,YAAO,GAAU,EAAE,CAAC;QACpB,SAAI,GAAW,EAAE,CAAC;QAClB,aAAQ,GAAY,KAAK,CAAC;QAC1B,YAAO,GAAY,KAAK,CAAC;QACzB,YAAO,GAAY,KAAK,CAAC;QACzB,qBAAgB,GAAY,KAAK,CAAC;QAClC,cAAS,GAAW,EAAE,CAAC;QACvB,YAAO,GAAY,KAAK,CAAC;QACzB,WAAM,GAAY,KAAK,CAAC;IAC5C,CAAC;CAAA;AAZY;IAAX,UAAU;uCAA4B;AAC3B;IAAX,UAAU;iCAAwB;AACvB;IAAX,UAAU;kCAA2B;AAC1B;IAAX,UAAU;sCAA4B;AAC3B;IAAX,UAAU;mCAA0B;AACzB;IAAX,UAAU;uCAAkC;AACjC;IAAX,UAAU;sCAAiC;AAChC;IAAX,UAAU;sCAAiC;AAChC;IAAX,UAAU;+CAA0C;AACzC;IAAX,UAAU;wCAA+B;AAC9B;IAAX,UAAU;sCAAiC;AAChC;IAAX,UAAU;qCAAgC"}
|
@@ -1,10 +1,11 @@
|
|
1
|
-
|
2
|
-
declare const
|
1
|
+
import React from "react";
|
2
|
+
declare const _default: React.FunctionComponent<{
|
3
3
|
id: string;
|
4
4
|
addAble?: boolean | undefined;
|
5
5
|
onAddAble?: ((params?: boolean | undefined) => void) | undefined;
|
6
6
|
checked?: boolean | undefined;
|
7
7
|
checkAll?: boolean | undefined;
|
8
8
|
onCheck?: ((params?: any) => void) | undefined;
|
9
|
-
|
10
|
-
|
9
|
+
onLinkNum?: ((params?: any) => void) | undefined;
|
10
|
+
}>;
|
11
|
+
export default _default;
|
@@ -0,0 +1,60 @@
|
|
1
|
+
import { Checkbox } from "@voplus/antd";
|
2
|
+
import SortDnD from "@voplus/morpho-ui/es/controls/SortDnD";
|
3
|
+
import { useObserver, observer } from "mobx-react-lite";
|
4
|
+
import React, { useEffect, useState } from "react";
|
5
|
+
import { Scrollbars } from "react-custom-scrollbars";
|
6
|
+
import NewTaskForm from "../NewTaskForm";
|
7
|
+
import TaskCard from "../TaskCard";
|
8
|
+
import DocumentCard from "../DocumentCard";
|
9
|
+
import { State } from "./state";
|
10
|
+
import { useOnNewLink, useOnDeleteLink, useDocumentLinkListEffect } from "@voplus/morpho-document";
|
11
|
+
import { useListOptionsContext } from "@voplus/morpho-ui";
|
12
|
+
const LinkList = (props) => {
|
13
|
+
const [state] = useState(new State());
|
14
|
+
const lo = useListOptionsContext();
|
15
|
+
useEffect(() => {
|
16
|
+
state.addBoardAble = props.addAble;
|
17
|
+
}, [props.addAble]);
|
18
|
+
useEffect(() => {
|
19
|
+
state.checkIds = props.checkAll ? state.links.map(({ id }) => id) : [];
|
20
|
+
}, [props.checkAll]);
|
21
|
+
useDocumentLinkListEffect(props.id, list => {
|
22
|
+
props.onLinkNum(list.length);
|
23
|
+
state.links = list;
|
24
|
+
}, lo.listOptions);
|
25
|
+
useOnNewLink((s, doc) => {
|
26
|
+
if (doc.left.id === props.id) {
|
27
|
+
state.links.push(doc);
|
28
|
+
props.onLinkNum(state.links.length);
|
29
|
+
}
|
30
|
+
});
|
31
|
+
useOnDeleteLink((s, doc) => {
|
32
|
+
if (doc.left.id === props.id) {
|
33
|
+
state.links.splice(state.links.findIndex(item => item.id === doc.id), 1);
|
34
|
+
props.onLinkNum(state.links.length);
|
35
|
+
}
|
36
|
+
});
|
37
|
+
const onAddAble = () => {
|
38
|
+
state.addBoardAble = !state.addBoardAble;
|
39
|
+
props.onAddAble(state.addBoardAble);
|
40
|
+
};
|
41
|
+
const moveAfter = async (id, afterId, list) => {
|
42
|
+
console.log("move", id, afterId, list);
|
43
|
+
// await boards.moveAfter(id, afterId);
|
44
|
+
// state.links = list;
|
45
|
+
};
|
46
|
+
const onCheck = (checkedValues) => {
|
47
|
+
state.checkIds = checkedValues;
|
48
|
+
const checkAll = checkedValues.length === state.links.length;
|
49
|
+
props.onCheck(checkAll);
|
50
|
+
};
|
51
|
+
return useObserver(() => (React.createElement(Scrollbars, null,
|
52
|
+
React.createElement(Checkbox.Group, { value: state.checkIds, onChange: onCheck, style: { width: "100%" } },
|
53
|
+
React.createElement(SortDnD, { list: state.links, moveAfter: moveAfter, text: (task, index, connectDragSource) => (React.createElement(React.Fragment, null,
|
54
|
+
task.right.type === "Task" && (React.createElement(TaskCard, { id: task.right.id, linkId: task.id, leftId: task.left.id, multiple: props.checked, connectDragSource: connectDragSource })),
|
55
|
+
task.right.type === "Document" && (React.createElement(DocumentCard, { id: task.right.id, linkId: task.id, leftId: task.left.id, multiple: props.checked, connectDragSource: connectDragSource })))) })),
|
56
|
+
state.addBoardAble && React.createElement(NewTaskForm, { parentId: props.id }),
|
57
|
+
React.createElement("span", { className: "addTask", onClick: onAddAble }, "+ NEW TASK"))));
|
58
|
+
};
|
59
|
+
export default observer(LinkList);
|
60
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/BoardView/components/LinkList/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,OAAO,MAAM,uCAAuC,CAAC;AAE5D,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAc,MAAM,OAAO,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,WAAW,MAAM,gBAAgB,CAAC;AACzC,OAAO,QAAQ,MAAM,aAAa,CAAC;AACnC,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAGN,YAAY,EACZ,eAAe,EACf,yBAAyB,EACzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,MAAM,QAAQ,GAAG,CAAC,KAQjB,EAAE,EAAE;IACJ,MAAM,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;IACtC,MAAM,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAEnC,SAAS,CAAC,GAAG,EAAE;QACd,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,OAAQ,CAAC;IACrC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAEpB,SAAS,CAAC,GAAG,EAAE;QACd,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7E,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAErB,yBAAyB,CACxB,KAAK,CAAC,EAAE,EACR,IAAI,CAAC,EAAE;QACN,KAAK,CAAC,SAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9B,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC,EACD,EAAE,CAAC,WAAW,CACd,CAAC;IAEF,YAAY,CAAC,CAAC,CAAgB,EAAE,GAAU,EAAE,EAAE;QAC7C,IAAI,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,EAAE;YAC7B,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACtB,KAAK,CAAC,SAAU,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;SACrC;IACF,CAAC,CAAC,CAAC;IACH,eAAe,CAAC,CAAC,CAAgB,EAAE,GAAU,EAAE,EAAE;QAChD,IAAI,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,EAAE;YAC7B,KAAK,CAAC,KAAK,CAAC,MAAM,CACjB,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,EACjD,CAAC,CACD,CAAC;YACF,KAAK,CAAC,SAAU,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;SACrC;IACF,CAAC,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,GAAG,EAAE;QACtB,KAAK,CAAC,YAAY,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC;QACzC,KAAK,CAAC,SAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IACtC,CAAC,CAAC;IACF,MAAM,SAAS,GAAG,KAAK,EAAE,EAAU,EAAE,OAAe,EAAE,IAAW,EAAE,EAAE;QACpE,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QACvC,uCAAuC;QACvC,sBAAsB;IACvB,CAAC,CAAC;IACF,MAAM,OAAO,GAAG,CAAC,aAAuB,EAAE,EAAE;QAC3C,KAAK,CAAC,QAAQ,GAAG,aAAa,CAAC;QAC/B,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,KAAK,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;QAC7D,KAAK,CAAC,OAAQ,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC,CAAC;IAEF,OAAO,WAAW,CAAC,GAAG,EAAE,CAAC,CACxB,oBAAC,UAAU;QACV,oBAAC,QAAQ,CAAC,KAAK,IAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;YACjF,oBAAC,OAAO,IACP,IAAI,EAAE,KAAK,CAAC,KAAK,EACjB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,CAAC,IAAS,EAAE,KAAa,EAAE,iBAAsB,EAAE,EAAE,CAAC,CAC3D,oBAAC,KAAK,CAAC,QAAQ;oBACb,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,CAC9B,oBAAC,QAAQ,IACR,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EACjB,MAAM,EAAE,IAAI,CAAC,EAAE,EACf,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,EACpB,QAAQ,EAAE,KAAK,CAAC,OAAO,EACvB,iBAAiB,EAAE,iBAAiB,GACnC,CACF;oBACA,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,CAClC,oBAAC,YAAY,IACZ,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EACjB,MAAM,EAAE,IAAI,CAAC,EAAE,EACf,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,EACpB,QAAQ,EAAE,KAAK,CAAC,OAAO,EACvB,iBAAiB,EAAE,iBAAiB,GACnC,CACF,CACe,CACjB,GACA,CAqBc;QAChB,KAAK,CAAC,YAAY,IAAI,oBAAC,WAAW,IAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,GAAI;QAC1D,8BAAM,SAAS,EAAC,SAAS,EAAC,OAAO,EAAE,SAAS,iBAErC,CACK,CACb,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,QAAQ,CAAC,QAAQ,CAAC,CAAC"}
|
@@ -2,22 +2,26 @@ import { __decorate } from "tslib";
|
|
2
2
|
import { observable } from "mobx";
|
3
3
|
export class State {
|
4
4
|
constructor() {
|
5
|
-
this.
|
5
|
+
this.links = [];
|
6
6
|
this.id = "";
|
7
|
+
this.reload = false;
|
7
8
|
this.checkIds = [];
|
8
|
-
this.
|
9
|
+
this.addBoardAble = false;
|
9
10
|
}
|
10
11
|
}
|
11
12
|
__decorate([
|
12
13
|
observable
|
13
|
-
], State.prototype, "
|
14
|
+
], State.prototype, "links", void 0);
|
14
15
|
__decorate([
|
15
16
|
observable
|
16
17
|
], State.prototype, "id", void 0);
|
18
|
+
__decorate([
|
19
|
+
observable
|
20
|
+
], State.prototype, "reload", void 0);
|
17
21
|
__decorate([
|
18
22
|
observable
|
19
23
|
], State.prototype, "checkIds", void 0);
|
20
24
|
__decorate([
|
21
25
|
observable
|
22
|
-
], State.prototype, "
|
26
|
+
], State.prototype, "addBoardAble", void 0);
|
23
27
|
//# sourceMappingURL=state.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../../src/modules/BoardView/components/LinkList/state.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC,MAAM,OAAO,KAAK;IAAlB;QACoB,UAAK,GAAU,EAAE,CAAC;QAClB,OAAE,GAAW,EAAE,CAAC;QAChB,WAAM,GAAY,KAAK,CAAC;QACxB,aAAQ,GAAa,EAAE,CAAC;QACxB,iBAAY,GAAY,KAAK,CAAC;IAClD,CAAC;CAAA;AALY;IAAX,UAAU;oCAA0B;AACzB;IAAX,UAAU;iCAAwB;AACvB;IAAX,UAAU;qCAAgC;AAC/B;IAAX,UAAU;uCAAgC;AAC/B;IAAX,UAAU;2CAAsC"}
|
@@ -1,26 +1,46 @@
|
|
1
1
|
import { faCalendar, faCalendarCheck, faFlag, faListAlt, faTimes, faUserPlus } from "@fortawesome/pro-light-svg-icons";
|
2
2
|
import { FontAwesomeIcon as FAIcon } from "@fortawesome/react-fontawesome";
|
3
|
-
import { Button, DatePicker, Form, Input, Modal, Spin } from "@voplus/antd";
|
4
|
-
import {
|
3
|
+
import { Button, DatePicker, Form, Input, message, Modal, Spin } from "@voplus/antd";
|
4
|
+
import { useDocumentStore } from "@voplus/morpho-document";
|
5
5
|
import { useObserver } from "mobx-react-lite";
|
6
6
|
import moment from "moment";
|
7
7
|
import React, { useState } from "react";
|
8
8
|
import FlagIcon from "../../../../controls/FlagIcon";
|
9
|
-
import
|
9
|
+
import AvatarList from "../../../../components/AvatarList";
|
10
|
+
import { useBoardStore } from "../../../../data/board";
|
10
11
|
import TaskForm from "../../../tasks/components/NewTaskForm";
|
11
12
|
import styles from "./index.less";
|
12
13
|
import { State } from "./state";
|
13
14
|
const NewTaskForm = (props) => {
|
14
|
-
const
|
15
|
+
const boards = useBoardStore();
|
16
|
+
const document = useDocumentStore();
|
15
17
|
const [state] = useState(new State());
|
16
18
|
const [startDate, setStartDate] = useState("");
|
17
19
|
const [dueDate, setDueDate] = useState("");
|
20
|
+
const onSave = async () => {
|
21
|
+
if (!state.params.Name)
|
22
|
+
return message.warning("Title is required");
|
23
|
+
const memberIds = state.memberIds.map(item => item.id);
|
24
|
+
await document.createFromType({ name: state.params.Name, parentId: props.parentId, type: "Board" });
|
25
|
+
// await boards.create({ ...state.params, ParentId: props.parentId, MemberIds: memberIds });
|
26
|
+
};
|
27
|
+
const onSubmitSave = async (params) => {
|
28
|
+
console.log('params', params);
|
29
|
+
await document.createFromType({ name: params.Name, parentId: props.parentId, type: "Board" });
|
30
|
+
// await boards.create({ ...state.params, ParentId: props.parentId });
|
31
|
+
state.visible = false;
|
32
|
+
};
|
18
33
|
const onChange = (value, dateString, type) => {
|
19
34
|
type === "start" ? (state.params.StartDate = value) : (state.params.DueDate = value);
|
20
35
|
type === "start"
|
21
36
|
? setStartDate(moment(dateString.toString()).format("D MMM"))
|
22
37
|
: setDueDate(moment(dateString.toString()).format("D MMM"));
|
23
38
|
};
|
39
|
+
const onAvatarChange = async (ids, item) => {
|
40
|
+
!item.checked ?
|
41
|
+
state.memberIds = ([...state.memberIds, item]) :
|
42
|
+
state.memberIds = state.memberIds.filter(i => i.id !== item.id);
|
43
|
+
};
|
24
44
|
const disabledStartDate = (StartDate) => {
|
25
45
|
const { DueDate } = state.params;
|
26
46
|
if (!StartDate || !DueDate) {
|
@@ -40,27 +60,24 @@ const NewTaskForm = (props) => {
|
|
40
60
|
React.createElement(Form.Item, null,
|
41
61
|
React.createElement(Spin, { spinning: false },
|
42
62
|
React.createElement("div", { className: "form-item-layout" },
|
43
|
-
React.createElement(Input, { autoFocus: true, placeholder: "Task name", prefix: React.createElement(FAIcon, { icon: faTimes }) }),
|
63
|
+
React.createElement(Input, { autoFocus: true, placeholder: "Task name", onChange: e => (state.params.Name = e.target.value), prefix: React.createElement(FAIcon, { icon: faTimes }) }),
|
44
64
|
React.createElement("span", { className: "detailed", onClick: () => (state.visible = true) },
|
45
65
|
React.createElement(FAIcon, { icon: faListAlt }))))),
|
46
66
|
React.createElement(Form.Item, null,
|
47
67
|
React.createElement("div", { className: "form-controls" },
|
48
68
|
React.createElement("div", { className: "form-controls-icons" },
|
49
|
-
React.createElement(FlagIcon, { id: props.parentId, icon: React.createElement(FAIcon, { icon: faFlag }), className: "task-icon-star" }),
|
69
|
+
React.createElement(FlagIcon, { id: props.parentId, icon: React.createElement(FAIcon, { className: "fa-icon", icon: faFlag }), className: "task-icon-star" }),
|
50
70
|
React.createElement("span", { className: "datePicker" },
|
51
|
-
startDate ? (React.createElement("span", { className: "task-date" }, startDate)) : (React.createElement(FAIcon, { icon: faCalendar })),
|
71
|
+
startDate ? (React.createElement("span", { className: "task-date" }, startDate)) : (React.createElement(FAIcon, { className: "fa-icon", icon: faCalendar })),
|
52
72
|
React.createElement(DatePicker, { value: state.params.StartDate, disabledDate: value => disabledStartDate(value), onChange: (value, dateString, type) => onChange(value, dateString, "start"), allowClear: false })),
|
53
73
|
React.createElement("span", { className: "datePicker" },
|
54
|
-
dueDate ? (React.createElement("span", { className: "task-date" }, dueDate)) : (React.createElement(FAIcon, { icon: faCalendarCheck })),
|
74
|
+
dueDate ? (React.createElement("span", { className: "task-date" }, dueDate)) : (React.createElement(FAIcon, { className: "fa-icon", icon: faCalendarCheck })),
|
55
75
|
React.createElement(DatePicker, { value: state.params.DueDate, disabledDate: value => disabledEndDate(value), onChange: (value, dateString, type) => onChange(value, dateString, "due"), allowClear: false })),
|
56
76
|
React.createElement("span", { className: "task-manager", onClick: () => (state.assign = !state.assign) },
|
57
|
-
React.createElement(FAIcon, { icon: faUserPlus })),
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
// onOk={this.handleOk}
|
62
|
-
onCancel: () => (state.visible = false) },
|
63
|
-
React.createElement(TaskForm, { parentId: props.parentId })))));
|
77
|
+
React.createElement(AvatarList, { className: "manager", num: 1, icon: React.createElement(FAIcon, { icon: faUserPlus }), list: state.memberIds, onChange: onAvatarChange }))),
|
78
|
+
React.createElement(Button, { type: "primary", size: "small", onClick: onSave }, "SAVE")))),
|
79
|
+
React.createElement(Modal, { title: "New Task", visible: state.visible, footer: null, onCancel: () => (state.visible = false) },
|
80
|
+
React.createElement(TaskForm, { parentId: props.parentId, onCancel: () => (state.visible = false), onSubmitSave: onSubmitSave })))));
|
64
81
|
};
|
65
82
|
export default NewTaskForm;
|
66
83
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/BoardView/components/NewTaskForm/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EACN,UAAU,EACV,eAAe,EACf,MAAM,EACN,SAAS,EACT,OAAO,EACP,UAAU,EACV,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,eAAe,IAAI,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/BoardView/components/NewTaskForm/index.tsx"],"names":[],"mappings":"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"}
|