@voplus/morpho-workspace 6.0.165 → 6.0.167
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/data/worktype/useWorkTypeCompletedWorkEffect.d.ts +1 -1
- package/es/data/worktype/useWorkTypeCompletedWorkEffect.js +7 -3
- package/es/data/worktype/useWorkTypeCompletedWorkEffect.js.map +1 -1
- package/es/modules/notification/components/DocumentNotificationCard/index.less +5 -3
- package/es/modules/tasks/components/TaskCheckItem/index.js +3 -14
- package/es/modules/tasks/components/TaskCheckItem/index.js.map +1 -1
- package/es/modules/tasks/components/TaskCheckItem/index.less +0 -16
- package/es/modules/tasks/components/task-check/TaskCheckActiveTab/index.d.ts +9 -0
- package/es/modules/tasks/components/task-check/TaskCheckActiveTab/index.js +94 -0
- package/es/modules/tasks/components/task-check/TaskCheckActiveTab/index.js.map +1 -0
- package/es/modules/tasks/components/task-check/TaskCheckActiveTab/index.less +24 -0
- package/es/modules/tasks/components/task-check/TaskCheckActiveTab/state.d.ts +16 -0
- package/es/modules/tasks/components/task-check/TaskCheckActiveTab/state.js +145 -0
- package/es/modules/tasks/components/task-check/TaskCheckActiveTab/state.js.map +1 -0
- package/es/modules/tasks/components/task-check/TaskCheckDoneTab/index.d.ts +8 -0
- package/es/modules/tasks/components/task-check/TaskCheckDoneTab/index.js +71 -0
- package/es/modules/tasks/components/task-check/TaskCheckDoneTab/index.js.map +1 -0
- package/es/modules/tasks/components/task-check/TaskCheckDoneTab/state.d.ts +4 -0
- package/es/modules/tasks/components/task-check/TaskCheckDoneTab/state.js +17 -0
- package/es/modules/tasks/components/task-check/TaskCheckDoneTab/state.js.map +1 -0
- package/es/modules/tasks/components/task-check/TaskCheckNewForm/index.d.ts +9 -0
- package/es/modules/tasks/components/task-check/TaskCheckNewForm/index.js +51 -0
- package/es/modules/tasks/components/task-check/TaskCheckNewForm/index.js.map +1 -0
- package/es/modules/tasks/components/task-check/TaskCheckNewForm/index.less +6 -0
- package/es/modules/tasks/components/task-check/TaskCheckNewForm/state.d.ts +7 -0
- package/es/modules/tasks/components/task-check/TaskCheckNewForm/state.js +44 -0
- package/es/modules/tasks/components/task-check/TaskCheckNewForm/state.js.map +1 -0
- package/es/modules/tasks/components/task-check/TaskCheckTableCard/TableCell.d.ts +4 -0
- package/es/modules/tasks/components/task-check/TaskCheckTableCard/TableCell.js +40 -0
- package/es/modules/tasks/components/task-check/TaskCheckTableCard/TableCell.js.map +1 -0
- package/es/modules/tasks/components/task-check/TaskCheckTableCard/TaskCheckTable.d.ts +10 -0
- package/es/modules/tasks/components/task-check/TaskCheckTableCard/TaskCheckTable.js +53 -0
- package/es/modules/tasks/components/task-check/TaskCheckTableCard/TaskCheckTable.js.map +1 -0
- package/es/modules/tasks/components/task-check/TaskCheckTableCard/index.d.ts +9 -0
- package/es/modules/tasks/components/task-check/TaskCheckTableCard/index.js +16 -0
- package/es/modules/tasks/components/task-check/TaskCheckTableCard/index.js.map +1 -0
- package/es/modules/tasks/components/task-check/TaskCheckTableCard/index.less +31 -0
- package/es/modules/tasks/components/task-check/TaskCheckTableList/index.d.ts +6 -0
- package/es/modules/tasks/components/task-check/TaskCheckTableList/index.js +76 -0
- package/es/modules/tasks/components/task-check/TaskCheckTableList/index.js.map +1 -0
- package/es/modules/tasks/components/task-check/TaskCheckTableList/index.less +28 -0
- package/es/modules/tasks/components/task-check/TaskCheckTableList/state.d.ts +10 -0
- package/es/modules/tasks/components/task-check/TaskCheckTableList/state.js +65 -0
- package/es/modules/tasks/components/task-check/TaskCheckTableList/state.js.map +1 -0
- package/es/modules/tasks/controls/DueDateToolBar/index.d.ts +7 -0
- package/es/modules/tasks/controls/DueDateToolBar/index.js +35 -0
- package/es/modules/tasks/controls/DueDateToolBar/index.js.map +1 -0
- package/es/modules/tasks/controls/DueDateToolBar/index.less +17 -0
- package/es/modules/tasks/controls/DueDateToolBar/state.d.ts +8 -0
- package/es/modules/tasks/controls/DueDateToolBar/state.js +33 -0
- package/es/modules/tasks/controls/DueDateToolBar/state.js.map +1 -0
- package/es/modules/work/components/NewWorkForm/index.js +4 -2
- package/es/modules/work/components/NewWorkForm/index.js.map +1 -1
- package/es/modules/work/components/WorkTableListCard/index.js +1 -2
- package/es/modules/work/components/WorkTableListCard/index.js.map +1 -1
- package/es/modules/work/work-type/components/ReportsCompletedWorks/index.js +2 -2
- package/es/modules/work/work-type/components/ReportsCompletedWorks/index.js.map +1 -1
- package/es/modules/work/work-type/components/ReportsCompletedWorks/state.d.ts +1 -0
- package/es/modules/work/work-type/components/ReportsCompletedWorks/state.js +9 -0
- package/es/modules/work/work-type/components/ReportsCompletedWorks/state.js.map +1 -1
- package/es/modules/work/work-type/controls/WorktypeCompleteWorksChart/WorkTypeCompletedWorksChart.d.ts +1 -0
- package/es/modules/work/work-type/controls/WorktypeCompleteWorksChart/WorkTypeCompletedWorksChart.js +6 -18
- package/es/modules/work/work-type/controls/WorktypeCompleteWorksChart/WorkTypeCompletedWorksChart.js.map +1 -1
- package/es/modules/work/work-type/controls/WorktypeCompleteWorksChart/index.js +1 -1
- package/es/modules/work/work-type/controls/WorktypeCompleteWorksChart/index.js.map +1 -1
- package/package.json +1 -1
@@ -0,0 +1,44 @@
|
|
1
|
+
import { __decorate } from "tslib";
|
2
|
+
import { makeObservable, observable } from "mobx";
|
3
|
+
export class State {
|
4
|
+
constructor() {
|
5
|
+
Object.defineProperty(this, "name", {
|
6
|
+
enumerable: true,
|
7
|
+
configurable: true,
|
8
|
+
writable: true,
|
9
|
+
value: ""
|
10
|
+
});
|
11
|
+
Object.defineProperty(this, "dueDate", {
|
12
|
+
enumerable: true,
|
13
|
+
configurable: true,
|
14
|
+
writable: true,
|
15
|
+
value: ""
|
16
|
+
});
|
17
|
+
Object.defineProperty(this, "loading", {
|
18
|
+
enumerable: true,
|
19
|
+
configurable: true,
|
20
|
+
writable: true,
|
21
|
+
value: false
|
22
|
+
});
|
23
|
+
Object.defineProperty(this, "openDate", {
|
24
|
+
enumerable: true,
|
25
|
+
configurable: true,
|
26
|
+
writable: true,
|
27
|
+
value: false
|
28
|
+
});
|
29
|
+
makeObservable(this);
|
30
|
+
}
|
31
|
+
}
|
32
|
+
__decorate([
|
33
|
+
observable
|
34
|
+
], State.prototype, "name", void 0);
|
35
|
+
__decorate([
|
36
|
+
observable
|
37
|
+
], State.prototype, "dueDate", void 0);
|
38
|
+
__decorate([
|
39
|
+
observable
|
40
|
+
], State.prototype, "loading", void 0);
|
41
|
+
__decorate([
|
42
|
+
observable
|
43
|
+
], State.prototype, "openDate", void 0);
|
44
|
+
//# sourceMappingURL=state.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../../../src/modules/tasks/components/task-check/TaskCheckNewForm/state.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElD,MAAM,OAAO,KAAK;IACjB;QAGmB;;;;mBAAO,EAAE;WAAC;QACV;;;;mBAAU,EAAE;WAAC;QACb;;;;mBAAU,KAAK;WAAC;QAChB;;;;mBAAW,KAAK;WAAC;QALnC,cAAc,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;CAKD;AAJmB;IAAlB,UAAU;mCAAkB;AACV;IAAlB,UAAU;sCAAqB;AACb;IAAlB,UAAU;sCAAwB;AAChB;IAAlB,UAAU;uCAAyB"}
|
@@ -0,0 +1,40 @@
|
|
1
|
+
import { observe } from "@voplus/morpho-ui";
|
2
|
+
import React from "react";
|
3
|
+
import { message, Checkbox } from "antd";
|
4
|
+
import { useMetaStore, useTaskStore, useTask } from "@voplus/morpho-document-core";
|
5
|
+
import { FontAwesomeIcon as FAIcon } from "@fortawesome/react-fontawesome";
|
6
|
+
import { faEllipsisVertical } from "@fortawesome/pro-solid-svg-icons";
|
7
|
+
import { Open } from "@voplus/morpho-document/es/controls/ToolBar/buttons";
|
8
|
+
import AvatarList from "@voplus/morpho-org/es/components/AvatarList";
|
9
|
+
import { useApplicationContext } from "@voplus/morpho-data";
|
10
|
+
import ToolBar from "@voplus/morpho-document/es/controls/ToolBar/ToolBar2";
|
11
|
+
import DueDateToolBar from "../../../controls/DueDateToolBar";
|
12
|
+
import ItemFunction from "@voplus/morpho-org/es/controls/ItemFunction";
|
13
|
+
import TaskQuickViewDialog from "../../TaskQuickViewDialog";
|
14
|
+
import dayjs from "dayjs";
|
15
|
+
import "./index.less";
|
16
|
+
const TableCell = (props) => {
|
17
|
+
const { dataIndex, record, rowIndex, children, onChangeDueDate, ...restProps } = props;
|
18
|
+
const store = useTaskStore();
|
19
|
+
const meta = useMetaStore();
|
20
|
+
const { user } = useApplicationContext();
|
21
|
+
return observe(() => {
|
22
|
+
var _a;
|
23
|
+
const task = useTask(record === null || record === void 0 ? void 0 : record.id);
|
24
|
+
return (React.createElement("td", { ...restProps }, dataIndex === "name" ? (React.createElement("div", { className: "task-check-checkbox" },
|
25
|
+
React.createElement(Checkbox, { checked: task.taskStatus === "Done", onChange: async (e) => {
|
26
|
+
await store.edit(record.id, {
|
27
|
+
data: { TaskStatus: e.target.checked === true ? "Done" : "Progress" },
|
28
|
+
error: (error) => message.error(error.message),
|
29
|
+
});
|
30
|
+
} }),
|
31
|
+
React.createElement(ItemFunction, { className: "task-check-name", quickViewDialog: (onCancel) => (React.createElement(TaskQuickViewDialog, { id: record.id, visible: true, onCancel: onCancel })) }, task.name))) : dataIndex === "assign" ? (React.createElement(AvatarList, { organizationId: user.info.organizationId, maxCount: 3, editable: false, list: (_a = task.members) !== null && _a !== void 0 ? _a : [] })) : dataIndex === "date" ? (React.createElement("div", { className: "task-check-dueDate" }, task.dueDate ? dayjs(task.dueDate).format("DD MMM YYYY") : "No due date")) : dataIndex === "menu" ? (React.createElement(ToolBar, { id: record.id, moreProps: {
|
32
|
+
buttonProps: { size: "middle" },
|
33
|
+
icon: React.createElement(FAIcon, { icon: faEllipsisVertical }),
|
34
|
+
} },
|
35
|
+
React.createElement(Open, { size: "middle", url: meta.getRoute(record) }),
|
36
|
+
React.createElement(DueDateToolBar, { id: record.id, onChangeDueDate: (dueDate) => onChangeDueDate === null || onChangeDueDate === void 0 ? void 0 : onChangeDueDate(record, dueDate) }))) : (children)));
|
37
|
+
});
|
38
|
+
};
|
39
|
+
export default TableCell;
|
40
|
+
//# sourceMappingURL=TableCell.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"TableCell.js","sourceRoot":"","sources":["../../../../../../src/modules/tasks/components/task-check/TaskCheckTableCard/TableCell.tsx"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import React from "react";
|
2
|
+
import { ITask } from "@voplus/morpho-document-core";
|
3
|
+
export type TaskCheckTableProps = {
|
4
|
+
label?: string;
|
5
|
+
total?: number;
|
6
|
+
scrollH?: number;
|
7
|
+
onChangeDueDate?: (item: ITask, dueDate?: Date) => void;
|
8
|
+
};
|
9
|
+
declare const TaskCheckTable: (props: TaskCheckTableProps) => React.JSX.Element;
|
10
|
+
export default TaskCheckTable;
|
@@ -0,0 +1,53 @@
|
|
1
|
+
import React from "react";
|
2
|
+
import TableListCard from "@voplus/morpho-ui/es/components/TableListCard";
|
3
|
+
import { observe } from "@voplus/morpho-ui";
|
4
|
+
import TableCell from "./TableCell";
|
5
|
+
import classnames from "classnames";
|
6
|
+
const TaskCheckTable = (props) => {
|
7
|
+
const { label, total, scrollH } = props;
|
8
|
+
const columnsList = [
|
9
|
+
{
|
10
|
+
title: "",
|
11
|
+
dataIndex: "name",
|
12
|
+
},
|
13
|
+
{
|
14
|
+
title: "",
|
15
|
+
dataIndex: "assign",
|
16
|
+
width: "22%",
|
17
|
+
},
|
18
|
+
{
|
19
|
+
title: "",
|
20
|
+
dataIndex: "date",
|
21
|
+
width: "20%",
|
22
|
+
},
|
23
|
+
{
|
24
|
+
title: "",
|
25
|
+
dataIndex: "menu",
|
26
|
+
width: "98px",
|
27
|
+
},
|
28
|
+
];
|
29
|
+
const components = {
|
30
|
+
body: {
|
31
|
+
// row: DragTableRow,
|
32
|
+
cell: TableCell,
|
33
|
+
},
|
34
|
+
};
|
35
|
+
const columns = columnsList.map((col) => {
|
36
|
+
return {
|
37
|
+
...col,
|
38
|
+
onCell: (record, rowIndex) => {
|
39
|
+
return {
|
40
|
+
record,
|
41
|
+
dataIndex: col.dataIndex,
|
42
|
+
rowIndex: rowIndex,
|
43
|
+
onChangeDueDate: props.onChangeDueDate,
|
44
|
+
};
|
45
|
+
},
|
46
|
+
};
|
47
|
+
});
|
48
|
+
return observe(() => (React.createElement(TableListCard, { tableListProps: { columns: columns, components: components, scrollH: scrollH }, isHeader: true, className: classnames("task-check-table-card", { autoH: scrollH ? true : false }), title: React.createElement(React.Fragment, null,
|
49
|
+
label,
|
50
|
+
total ? ` (${total})` : null) })));
|
51
|
+
};
|
52
|
+
export default TaskCheckTable;
|
53
|
+
//# sourceMappingURL=TaskCheckTable.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"TaskCheckTable.js","sourceRoot":"","sources":["../../../../../../src/modules/tasks/components/task-check/TaskCheckTableCard/TaskCheckTable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,aAAa,MAAM,+CAA+C,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,UAAU,MAAM,YAAY,CAAC;AASpC,MAAM,cAAc,GAAG,CAAC,KAA0B,EAAE,EAAE;IACrD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAExC,MAAM,WAAW,GAAG;QACnB;YACC,KAAK,EAAE,EAAE;YACT,SAAS,EAAE,MAAM;SACjB;QACD;YACC,KAAK,EAAE,EAAE;YACT,SAAS,EAAE,QAAQ;YACnB,KAAK,EAAE,KAAK;SACZ;QACD;YACC,KAAK,EAAE,EAAE;YACT,SAAS,EAAE,MAAM;YACjB,KAAK,EAAE,KAAK;SACZ;QACD;YACC,KAAK,EAAE,EAAE;YACT,SAAS,EAAE,MAAM;YACjB,KAAK,EAAE,MAAM;SACb;KACD,CAAC;IACF,MAAM,UAAU,GAAG;QAClB,IAAI,EAAE;YACL,qBAAqB;YACrB,IAAI,EAAE,SAAS;SACf;KACD,CAAC;IACF,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACvC,OAAO;YACN,GAAG,GAAG;YACN,MAAM,EAAE,CAAC,MAAW,EAAE,QAAgB,EAAE,EAAE;gBACzC,OAAO;oBACN,MAAM;oBACN,SAAS,EAAE,GAAG,CAAC,SAAS;oBACxB,QAAQ,EAAE,QAAQ;oBAClB,eAAe,EAAE,KAAK,CAAC,eAAe;iBACtC,CAAC;YACH,CAAC;SACD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,CACpB,oBAAC,aAAa,IACb,cAAc,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,EAC9E,QAAQ,QACR,SAAS,EAAE,UAAU,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,EACjF,KAAK,EACJ;YACE,KAAK;YACL,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAC3B,GAEH,CACF,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC"}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import React from "react";
|
2
|
+
import { TaskCheckTableProps } from "./TaskCheckTable";
|
3
|
+
import { ITask } from "@voplus/morpho-document-core";
|
4
|
+
export type TaskCheckTableCardProps = {
|
5
|
+
data: ITask[];
|
6
|
+
taskCheckTableProps?: TaskCheckTableProps;
|
7
|
+
};
|
8
|
+
declare const TaskCheckTableCard: (props: TaskCheckTableCardProps) => React.JSX.Element;
|
9
|
+
export default TaskCheckTableCard;
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import React from "react";
|
2
|
+
import { observe } from "@voplus/morpho-ui";
|
3
|
+
import { ListDataContext, useCreateListDataState } from "@voplus/morpho-ui/es/data";
|
4
|
+
import TaskCheckTable from "./TaskCheckTable";
|
5
|
+
const TaskCheckTableCard = (props) => {
|
6
|
+
var _a;
|
7
|
+
const list = useCreateListDataState({}, [(_a = props.taskCheckTableProps) === null || _a === void 0 ? void 0 : _a.label]);
|
8
|
+
list.clear();
|
9
|
+
list.hasMore = false;
|
10
|
+
list.union(props.data);
|
11
|
+
return observe(() => (React.createElement(React.Fragment, null,
|
12
|
+
React.createElement(ListDataContext.Provider, { value: list },
|
13
|
+
React.createElement(TaskCheckTable, { ...props.taskCheckTableProps })))));
|
14
|
+
};
|
15
|
+
export default TaskCheckTableCard;
|
16
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/modules/tasks/components/task-check/TaskCheckTableCard/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACpF,OAAO,cAAuC,MAAM,kBAAkB,CAAC;AAQvE,MAAM,kBAAkB,GAAG,CAAC,KAA8B,EAAE,EAAE;;IAC7D,MAAM,IAAI,GAAG,sBAAsB,CAAQ,EAAE,EAAE,CAAC,MAAA,KAAK,CAAC,mBAAmB,0CAAE,KAAK,CAAC,CAAC,CAAC;IAEnF,IAAI,CAAC,KAAK,EAAE,CAAC;IACb,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACrB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEvB,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,CACpB;QACC,oBAAC,eAAe,CAAC,QAAQ,IAAC,KAAK,EAAE,IAAI;YACpC,oBAAC,cAAc,OAAK,KAAK,CAAC,mBAAmB,GAAI,CACvB,CACzB,CACH,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
:global {
|
2
|
+
.task-check-table-card {
|
3
|
+
&.autoH {
|
4
|
+
height: auto;
|
5
|
+
padding-bottom: 12px;
|
6
|
+
}
|
7
|
+
.table-card-head {
|
8
|
+
height: 42px;
|
9
|
+
background: #f7fbff;
|
10
|
+
padding-top: 0;
|
11
|
+
margin: 6px 6px 0 6px;
|
12
|
+
}
|
13
|
+
.ant-table-thead {
|
14
|
+
display: none;
|
15
|
+
}
|
16
|
+
.task-check-checkbox {
|
17
|
+
display: flex;
|
18
|
+
.task-check-name {
|
19
|
+
font-size: 14px;
|
20
|
+
color: #5d5d5d;
|
21
|
+
font-weight: bold;
|
22
|
+
margin-left: 5px;
|
23
|
+
cursor: pointer;
|
24
|
+
}
|
25
|
+
}
|
26
|
+
.task-check-dueDate {
|
27
|
+
line-height: 32px;
|
28
|
+
color: #868686;
|
29
|
+
}
|
30
|
+
}
|
31
|
+
}
|
@@ -0,0 +1,76 @@
|
|
1
|
+
import React, { useState, useMemo } from "react";
|
2
|
+
import { useTaskListEffect } from "@voplus/morpho-document-core";
|
3
|
+
import { observe } from "@voplus/morpho-ui";
|
4
|
+
import { Button } from "antd";
|
5
|
+
import { Scrollbars } from "react-custom-scrollbars-2";
|
6
|
+
import { faBriefcase } from "@fortawesome/pro-solid-svg-icons";
|
7
|
+
import TaskCheckActiveTab from "../TaskCheckActiveTab";
|
8
|
+
import TaskCheckDoneTab from "../TaskCheckDoneTab";
|
9
|
+
import { FontAwesomeIcon as FAIcon } from "@fortawesome/react-fontawesome";
|
10
|
+
import AsideContent from "@voplus/morpho-ui/es/components/layout/AsideContent";
|
11
|
+
import { ListDataContext, useCreateListDataState } from "@voplus/morpho-ui/es/data";
|
12
|
+
import PageHeadDashboard from "@voplus/morpho-ui/es/components/layout/headers/PageHeadDashboard";
|
13
|
+
import ListHeaderTool from "@voplus/morpho-ui/es/components/layout/ListView/headers/ListHeaderTool";
|
14
|
+
import { ViewContext, ViewContextData, } from "@voplus/morpho-document-core/es/data/context/ViewContext";
|
15
|
+
import TaskCheckNewForm from "../TaskCheckNewForm";
|
16
|
+
import { State } from "./state";
|
17
|
+
import classnames from "classnames";
|
18
|
+
import "./index.less";
|
19
|
+
const TaskCheckTableList = (props) => {
|
20
|
+
const { id } = props;
|
21
|
+
const view = useMemo(() => new ViewContextData("PropertiesView"), []);
|
22
|
+
const [asideContext] = useState(AsideContent.createContext());
|
23
|
+
const [timer, setTimer] = useState();
|
24
|
+
const [state] = useState(new State());
|
25
|
+
const list = useCreateListDataState({}, []);
|
26
|
+
useTaskListEffect(null, (result, total) => state.updateActiveTotals(total), {
|
27
|
+
Total: true,
|
28
|
+
List: false,
|
29
|
+
Filters: [
|
30
|
+
{ c: "ParentNodeId", o: "=", l: "And", v1: id },
|
31
|
+
{ c: "TaskStatus", o: "!=", l: "And", v1: "Done" },
|
32
|
+
],
|
33
|
+
});
|
34
|
+
useTaskListEffect(null, (result, total) => state.updateDoneTotals(total), {
|
35
|
+
Total: true,
|
36
|
+
List: false,
|
37
|
+
Filters: [
|
38
|
+
{ c: "ParentNodeId", o: "=", l: "And", v1: id },
|
39
|
+
{ c: "TaskStatus", o: "contains", l: "And", v1: JSON.stringify(["Done"]) },
|
40
|
+
],
|
41
|
+
});
|
42
|
+
return observe(() => (React.createElement(ViewContext.Provider, { value: view },
|
43
|
+
React.createElement(ListDataContext.Provider, { value: list },
|
44
|
+
React.createElement(AsideContent, { context: asideContext },
|
45
|
+
React.createElement("div", { className: "task-table-list-card-page" },
|
46
|
+
React.createElement(PageHeadDashboard, { avatarIcon: React.createElement(FAIcon, { icon: faBriefcase }), title: "Tasks", description: "Stay on track: manage and prioritize your tasks" }),
|
47
|
+
React.createElement(ListHeaderTool, { addAble: true, onAdd: () => (state.openForm = true), sortable: false, searchHeader: true, searchOptions: {
|
48
|
+
placeholder: "Search in task",
|
49
|
+
onChange: onSearch,
|
50
|
+
}, preExtra: () => (React.createElement(React.Fragment, null,
|
51
|
+
React.createElement("div", { className: "task-status-btn" },
|
52
|
+
React.createElement(Button, { className: classnames({ active: state.active === "Active" }), onClick: () => onChangeFilter("Active") },
|
53
|
+
"Active ",
|
54
|
+
state.activeTotals ? `(${state.activeTotals})` : null),
|
55
|
+
React.createElement(Button, { className: classnames({ active: state.active === "Done" }), onClick: () => onChangeFilter("Done") },
|
56
|
+
"Done ",
|
57
|
+
state.doneTotals ? `(${state.doneTotals})` : null)))) }),
|
58
|
+
React.createElement(Scrollbars, { autoHide: true },
|
59
|
+
React.createElement("div", { className: classnames("content") },
|
60
|
+
state.active === "Active" && (React.createElement(TaskCheckActiveTab, { parentId: props.id, taskCheckState: state, searchVal: state.searchVal })),
|
61
|
+
state.active === "Done" && (React.createElement(TaskCheckDoneTab, { parentId: props.id, taskCheckState: state, searchVal: state.searchVal })))))),
|
62
|
+
state.openForm && (React.createElement(TaskCheckNewForm, { parentId: id, onCancel: () => (state.openForm = false) }))))));
|
63
|
+
function onChangeFilter(item) {
|
64
|
+
state.active = item;
|
65
|
+
}
|
66
|
+
function onSearch(val) {
|
67
|
+
if (timer)
|
68
|
+
clearTimeout(timer);
|
69
|
+
setTimer(setTimeout(() => {
|
70
|
+
state.searchVal = val !== null && val !== void 0 ? val : "";
|
71
|
+
setTimer(undefined);
|
72
|
+
}, 1000));
|
73
|
+
}
|
74
|
+
};
|
75
|
+
export default TaskCheckTableList;
|
76
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/modules/tasks/components/task-check/TaskCheckTableList/index.tsx"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,28 @@
|
|
1
|
+
:global {
|
2
|
+
.task-table-list-card-page {
|
3
|
+
display: flex;
|
4
|
+
flex-direction: column;
|
5
|
+
.list-view-header-tool {
|
6
|
+
.task-status-btn {
|
7
|
+
.ant-btn {
|
8
|
+
height: 30px;
|
9
|
+
color: #868686;
|
10
|
+
font-weight: bold;
|
11
|
+
border: 1px solid #868686;
|
12
|
+
margin-right: 15px;
|
13
|
+
&.active {
|
14
|
+
color: #217eb2;
|
15
|
+
background: #f4f9ff;
|
16
|
+
border: 1px solid #217eb2;
|
17
|
+
}
|
18
|
+
}
|
19
|
+
}
|
20
|
+
}
|
21
|
+
.active-tab-task-list {
|
22
|
+
padding: 10px 20px;
|
23
|
+
.table-list-card {
|
24
|
+
margin-bottom: 15px;
|
25
|
+
}
|
26
|
+
}
|
27
|
+
}
|
28
|
+
}
|
@@ -0,0 +1,65 @@
|
|
1
|
+
import { __decorate } from "tslib";
|
2
|
+
import { action, makeObservable, observable } from "mobx";
|
3
|
+
export class State {
|
4
|
+
updateActiveTotals(total) {
|
5
|
+
this.activeTotals = total;
|
6
|
+
}
|
7
|
+
updateDoneTotals(total) {
|
8
|
+
this.doneTotals = total;
|
9
|
+
}
|
10
|
+
constructor() {
|
11
|
+
Object.defineProperty(this, "active", {
|
12
|
+
enumerable: true,
|
13
|
+
configurable: true,
|
14
|
+
writable: true,
|
15
|
+
value: "Active"
|
16
|
+
});
|
17
|
+
Object.defineProperty(this, "searchVal", {
|
18
|
+
enumerable: true,
|
19
|
+
configurable: true,
|
20
|
+
writable: true,
|
21
|
+
value: void 0
|
22
|
+
});
|
23
|
+
Object.defineProperty(this, "activeTotals", {
|
24
|
+
enumerable: true,
|
25
|
+
configurable: true,
|
26
|
+
writable: true,
|
27
|
+
value: void 0
|
28
|
+
});
|
29
|
+
Object.defineProperty(this, "doneTotals", {
|
30
|
+
enumerable: true,
|
31
|
+
configurable: true,
|
32
|
+
writable: true,
|
33
|
+
value: void 0
|
34
|
+
});
|
35
|
+
Object.defineProperty(this, "openForm", {
|
36
|
+
enumerable: true,
|
37
|
+
configurable: true,
|
38
|
+
writable: true,
|
39
|
+
value: void 0
|
40
|
+
});
|
41
|
+
makeObservable(this);
|
42
|
+
}
|
43
|
+
}
|
44
|
+
__decorate([
|
45
|
+
observable
|
46
|
+
], State.prototype, "active", void 0);
|
47
|
+
__decorate([
|
48
|
+
observable
|
49
|
+
], State.prototype, "searchVal", void 0);
|
50
|
+
__decorate([
|
51
|
+
observable
|
52
|
+
], State.prototype, "activeTotals", void 0);
|
53
|
+
__decorate([
|
54
|
+
observable
|
55
|
+
], State.prototype, "doneTotals", void 0);
|
56
|
+
__decorate([
|
57
|
+
observable
|
58
|
+
], State.prototype, "openForm", void 0);
|
59
|
+
__decorate([
|
60
|
+
action
|
61
|
+
], State.prototype, "updateActiveTotals", null);
|
62
|
+
__decorate([
|
63
|
+
action
|
64
|
+
], State.prototype, "updateDoneTotals", null);
|
65
|
+
//# sourceMappingURL=state.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../../../src/modules/tasks/components/task-check/TaskCheckTableList/state.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAY,cAAc,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAEpE,MAAM,OAAO,KAAK;IAOF,kBAAkB,CAAC,KAAa;QAC9C,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;IAC3B,CAAC;IAEc,gBAAgB,CAAC,KAAa;QAC5C,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IACzB,CAAC;IAED;QAdmB;;;;mBAAiB,QAAQ;WAAC;QAC1B;;;;;WAAmB;QACnB;;;;;WAAsB;QACtB;;;;;WAAoB;QACpB;;;;;WAAmB;QAWrC,cAAc,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;CACD;AAjBmB;IAAlB,UAAU;qCAAkC;AAC1B;IAAlB,UAAU;wCAA2B;AACnB;IAAlB,UAAU;2CAA8B;AACtB;IAAlB,UAAU;yCAA4B;AACpB;IAAlB,UAAU;uCAA2B;AAEvB;IAAd,MAAM;+CAEN;AAEc;IAAd,MAAM;6CAEN"}
|
@@ -0,0 +1,35 @@
|
|
1
|
+
import React, { useEffect, useState } from "react";
|
2
|
+
import { observe } from "@voplus/morpho-ui";
|
3
|
+
import { message, Button } from "antd";
|
4
|
+
import { useTask, useTaskStore } from "@voplus/morpho-document-core";
|
5
|
+
import dayjs from "dayjs";
|
6
|
+
import { State } from "./state";
|
7
|
+
import PresetDatePicker from "@voplus/morpho-ui/es/controls/PresetDatePicker";
|
8
|
+
import { FontAwesomeIcon as FAIcon } from "@fortawesome/react-fontawesome";
|
9
|
+
import { faCalendar } from "@fortawesome/pro-solid-svg-icons";
|
10
|
+
import "./index.less";
|
11
|
+
const DueDateToolBar = (props) => {
|
12
|
+
const { id } = props;
|
13
|
+
const [state] = useState(new State());
|
14
|
+
const taskStore = useTaskStore();
|
15
|
+
const task = useTask(id);
|
16
|
+
useEffect(() => {
|
17
|
+
state.openToolbarDate = false;
|
18
|
+
}, [id]);
|
19
|
+
return observe(() => (React.createElement(Button, { type: "link", key: "dueDate", className: "task-toolbar-dueDate", onClick: () => (state.openToolbarDate = true) },
|
20
|
+
React.createElement(FAIcon, { icon: faCalendar }),
|
21
|
+
React.createElement("div", { className: "task-toolbar-preset-date-picker",
|
22
|
+
// 阻止事件冒泡
|
23
|
+
onClick: (e) => e.stopPropagation() },
|
24
|
+
React.createElement(PresetDatePicker, { open: state.openToolbarDate, value: task.dueDate ? dayjs(task.dueDate) : undefined, onChange: async (preset, date) => {
|
25
|
+
var _a;
|
26
|
+
state.openToolbarDate = false;
|
27
|
+
await taskStore.edit(task.id, {
|
28
|
+
data: { DueDate: date ? dayjs(date).format("YYYY-MM-DD") : "" },
|
29
|
+
error: (error) => message.error(error.message),
|
30
|
+
});
|
31
|
+
(_a = props.onChangeDueDate) === null || _a === void 0 ? void 0 : _a.call(props, task.dueDate);
|
32
|
+
}, handleOpenChange: (open) => (state.openToolbarDate = open), style: { width: "100%" } })))));
|
33
|
+
};
|
34
|
+
export default DueDateToolBar;
|
35
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/tasks/controls/DueDateToolBar/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,gBAAgB,MAAM,gDAAgD,CAAC;AAC9E,OAAO,EAAE,eAAe,IAAI,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,cAAc,CAAC;AAEtB,MAAM,cAAc,GAAG,CAAC,KAAiE,EAAE,EAAE;IAC5F,MAAM,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC;IACrB,MAAM,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;IACtC,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IACjC,MAAM,IAAI,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;IAEzB,SAAS,CAAC,GAAG,EAAE;QACd,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC;IAC/B,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAET,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,CACpB,oBAAC,MAAM,IACN,IAAI,EAAC,MAAM,EACX,GAAG,EAAC,SAAS,EACb,SAAS,EAAC,sBAAsB,EAChC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC;QAE7C,oBAAC,MAAM,IAAC,IAAI,EAAE,UAAU,GAAI;QAC5B,6BACC,SAAS,EAAC,iCAAiC;YAC3C,SAAS;YACT,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE;YAEnC,oBAAC,gBAAgB,IAChB,IAAI,EAAE,KAAK,CAAC,eAAe,EAC3B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,EACrD,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAS,EAAE,EAAE;;oBACrC,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC;oBAC9B,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;wBAC7B,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;wBAC/D,KAAK,EAAE,CAAC,KAAY,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;qBACrD,CAAC,CAAC;oBACH,MAAA,KAAK,CAAC,eAAe,sDAAG,IAAI,CAAC,OAAO,CAAC,CAAC;gBACvC,CAAC,EACD,gBAAgB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,EAC1D,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GACvB,CACG,CACE,CACT,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC"}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
:global {
|
2
|
+
.task-toolbar-dueDate {
|
3
|
+
position: relative;
|
4
|
+
background-color: transparent;
|
5
|
+
.task-toolbar-preset-date-picker {
|
6
|
+
position: absolute;
|
7
|
+
left: 0;
|
8
|
+
top: 0;
|
9
|
+
z-index: -1;
|
10
|
+
border: none;
|
11
|
+
background-color: transparent;
|
12
|
+
.ant-picker-suffix {
|
13
|
+
display: none;
|
14
|
+
}
|
15
|
+
}
|
16
|
+
}
|
17
|
+
}
|
@@ -0,0 +1,33 @@
|
|
1
|
+
import { __decorate } from "tslib";
|
2
|
+
import { makeObservable, observable, action } from "mobx";
|
3
|
+
export class State {
|
4
|
+
constructor() {
|
5
|
+
/** */
|
6
|
+
Object.defineProperty(this, "task", {
|
7
|
+
enumerable: true,
|
8
|
+
configurable: true,
|
9
|
+
writable: true,
|
10
|
+
value: void 0
|
11
|
+
});
|
12
|
+
Object.defineProperty(this, "openToolbarDate", {
|
13
|
+
enumerable: true,
|
14
|
+
configurable: true,
|
15
|
+
writable: true,
|
16
|
+
value: false
|
17
|
+
});
|
18
|
+
makeObservable(this);
|
19
|
+
}
|
20
|
+
update(task) {
|
21
|
+
this.task = task;
|
22
|
+
}
|
23
|
+
}
|
24
|
+
__decorate([
|
25
|
+
observable
|
26
|
+
], State.prototype, "task", void 0);
|
27
|
+
__decorate([
|
28
|
+
observable
|
29
|
+
], State.prototype, "openToolbarDate", void 0);
|
30
|
+
__decorate([
|
31
|
+
action
|
32
|
+
], State.prototype, "update", null);
|
33
|
+
//# sourceMappingURL=state.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../../src/modules/tasks/controls/DueDateToolBar/state.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAG1D,MAAM,OAAO,KAAK;IACjB;QAIA,OAAO;QACY;;;;;WAAY;QACZ;;;;mBAAkB,KAAK;WAAC;QAL1C,cAAc,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAMc,MAAM,CAAC,IAAW;QAChC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;CACD;AANmB;IAAlB,UAAU;mCAAoB;AACZ;IAAlB,UAAU;8CAAgC;AAE5B;IAAd,MAAM;mCAEN"}
|
@@ -1,5 +1,6 @@
|
|
1
1
|
import { Button, Col, Form, Row, Space, message } from "antd";
|
2
2
|
import React, { useState } from "react";
|
3
|
+
import { useCurrentContactContext } from "@voplus/morpho-document-core/es/data/context/CurrentContactContext";
|
3
4
|
import AddFormView from "@voplus/morpho-ui/es/controls/AddFormView";
|
4
5
|
import AvatarList from "@voplus/morpho-org/es/components/AvatarList";
|
5
6
|
import { State } from "./state";
|
@@ -13,7 +14,8 @@ import styles from "./index.less";
|
|
13
14
|
import { useAsideContentContext } from "@voplus/morpho-ui/es/components/layout/AsideContent";
|
14
15
|
import { useWorkStore } from "../../../../data/work";
|
15
16
|
const NewWorkForm = (props) => {
|
16
|
-
const
|
17
|
+
const context = useCurrentContactContext();
|
18
|
+
const [state] = useState(new State(props.contact ? props.contact : (context === null || context === void 0 ? void 0 : context.contact) ? context.contact : undefined));
|
17
19
|
const [form] = Form.useForm();
|
18
20
|
const [loading, setLoading] = useState(false);
|
19
21
|
const [contactEditable, setContactEditable] = useState(false);
|
@@ -46,7 +48,7 @@ const NewWorkForm = (props) => {
|
|
46
48
|
React.createElement(Space, null,
|
47
49
|
React.createElement(Button, { onClick: onCancel }, "Cancel"),
|
48
50
|
React.createElement(Button, { type: "primary", htmlType: "submit", onClick: onSubmit, loading: loading }, "Submit")))))),
|
49
|
-
contactEditable && (React.createElement(UnitsSelectDialog, { type: "click", defaultSelection: "Everyone", defaultSelected: props.contact ? [props.contact] : [], multiSelect: false, onSelect: (unit) => {
|
51
|
+
contactEditable && (React.createElement(UnitsSelectDialog, { type: "click", defaultSelection: "Everyone", defaultSelected: props.contact ? [props.contact] : (context === null || context === void 0 ? void 0 : context.contact) ? [context.contact] : [], multiSelect: false, onSelect: (unit) => {
|
50
52
|
runInAction(() => {
|
51
53
|
state.params.ContactId = unit[0].id;
|
52
54
|
state.contact = unit[0];
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/work/components/NewWorkForm/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC9D,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/work/components/NewWorkForm/index.tsx"],"names":[],"mappings":"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"}
|