@voplus/morpho-workspace 1.1.0-dev012 → 1.1.0-dev014
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/state.js +50 -46
- package/es/components/AvatarList/state.js.map +1 -1
- package/es/components/TimeLog/index.d.ts +1 -1
- package/es/data/board/LinkStore.js +38 -34
- package/es/data/board/LinkStore.js.map +1 -1
- package/es/data/board/index.js +2 -0
- package/es/data/board/index.js.map +1 -1
- package/es/data/board/metas.js +15 -11
- package/es/data/board/metas.js.map +1 -1
- package/es/data/meeting/AgendaStore.d.ts +2 -5
- package/es/data/meeting/AgendaStore.js +1 -13
- package/es/data/meeting/AgendaStore.js.map +1 -1
- package/es/data/meeting/MeetingStore.d.ts +2 -5
- package/es/data/meeting/MeetingStore.js +1 -9
- package/es/data/meeting/MeetingStore.js.map +1 -1
- package/es/data/meeting/hooks.d.ts +3 -2
- package/es/data/meeting/hooks.js +4 -4
- package/es/data/meeting/hooks.js.map +1 -1
- package/es/data/meeting/index.js +2 -0
- package/es/data/meeting/index.js.map +1 -1
- package/es/data/meeting/metas.js +22 -18
- package/es/data/meeting/metas.js.map +1 -1
- package/es/data/task/TaskStore.d.ts +2 -12
- package/es/data/task/TaskStore.js +1 -23
- package/es/data/task/TaskStore.js.map +1 -1
- package/es/data/task/index.js +2 -0
- package/es/data/task/index.js.map +1 -1
- package/es/data/task/metas.js +19 -15
- package/es/data/task/metas.js.map +1 -1
- package/es/modules/board/components/Board/state.d.ts +2 -2
- package/es/modules/board/components/Board/state.js +111 -107
- package/es/modules/board/components/Board/state.js.map +1 -1
- package/es/modules/board/components/BoardColumn/state.js +142 -138
- package/es/modules/board/components/BoardColumn/state.js.map +1 -1
- package/es/modules/board/components/DocumentCard/index.d.ts +4 -4
- package/es/modules/board/components/DocumentCard/state.js +54 -50
- package/es/modules/board/components/DocumentCard/state.js.map +1 -1
- package/es/modules/board/components/LinkList/state.js +31 -27
- package/es/modules/board/components/LinkList/state.js.map +1 -1
- package/es/modules/board/components/NewTaskForm/state.js +41 -37
- package/es/modules/board/components/NewTaskForm/state.js.map +1 -1
- package/es/modules/board/components/TaskCard/index.js +1 -1
- package/es/modules/board/components/TaskCard/index.js.map +1 -1
- package/es/modules/board/components/TaskCard/state.js +117 -113
- package/es/modules/board/components/TaskCard/state.js.map +1 -1
- package/es/modules/board/pages/BoardViewList/state.js +14 -10
- package/es/modules/board/pages/BoardViewList/state.js.map +1 -1
- package/es/modules/calendar/components/CalendarMenu/index.d.ts +1 -1
- package/es/modules/calendar/components/TaskCard/state.js +58 -54
- package/es/modules/calendar/components/TaskCard/state.js.map +1 -1
- package/es/modules/calendar/pages/CalendarMonth/state.js +12 -8
- package/es/modules/calendar/pages/CalendarMonth/state.js.map +1 -1
- package/es/modules/meeting/components/AgendaList/AgendaHeader/index.d.ts +2 -2
- package/es/modules/meeting/components/AgendaList/AgendaItem/components/TaskItem/index.d.ts +1 -1
- package/es/modules/meeting/components/AgendaList/AgendaItem/components/TaskItem/index.js +5 -5
- package/es/modules/meeting/components/AgendaList/AgendaItem/components/TaskItem/index.js.map +1 -1
- package/es/modules/meeting/components/AgendaList/AgendaItem/components/TaskList/index.js +5 -4
- package/es/modules/meeting/components/AgendaList/AgendaItem/components/TaskList/index.js.map +1 -1
- package/es/modules/meeting/components/AgendaList/AgendaItem/components/TaskList/state.d.ts +5 -5
- package/es/modules/meeting/components/AgendaList/AgendaItem/components/TaskList/state.js +40 -45
- package/es/modules/meeting/components/AgendaList/AgendaItem/components/TaskList/state.js.map +1 -1
- package/es/modules/meeting/components/AgendaList/AgendaItem/index.js +1 -10
- package/es/modules/meeting/components/AgendaList/AgendaItem/index.js.map +1 -1
- package/es/modules/meeting/components/AgendaList/AgendaItem/state.d.ts +0 -2
- package/es/modules/meeting/components/AgendaList/AgendaItem/state.js +47 -50
- package/es/modules/meeting/components/AgendaList/AgendaItem/state.js.map +1 -1
- package/es/modules/meeting/components/AgendaList/AgendaNewForm/state.js +19 -15
- package/es/modules/meeting/components/AgendaList/AgendaNewForm/state.js.map +1 -1
- package/es/modules/meeting/components/AgendaList/index.js +52 -51
- package/es/modules/meeting/components/AgendaList/index.js.map +1 -1
- package/es/modules/meeting/components/AgendaList/state.d.ts +2 -21
- package/es/modules/meeting/components/AgendaList/state.js +23 -79
- package/es/modules/meeting/components/AgendaList/state.js.map +1 -1
- package/es/modules/meeting/components/MeetingDescription/index.d.ts +1 -1
- package/es/modules/meeting/components/MeetingHeader/index.d.ts +3 -3
- package/es/modules/meeting/components/MeetingHeader/index.js +38 -50
- package/es/modules/meeting/components/MeetingHeader/index.js.map +1 -1
- package/es/modules/meeting/components/MeetingItem/index.d.ts +1 -1
- package/es/modules/meeting/components/MeetingItem/state.js +22 -18
- package/es/modules/meeting/components/MeetingItem/state.js.map +1 -1
- package/es/modules/meeting/components/MeetingQuickViewDialog/index.d.ts +2 -2
- package/es/modules/meeting/components/NewMeetingForm/index.js +1 -1
- package/es/modules/meeting/components/NewMeetingForm/index.js.map +1 -1
- package/es/modules/meeting/components/NewMeetingForm/state.js +31 -27
- package/es/modules/meeting/components/NewMeetingForm/state.js.map +1 -1
- package/es/modules/meeting/pages/MeetingList/index.js +25 -85
- package/es/modules/meeting/pages/MeetingList/index.js.map +1 -1
- package/es/modules/menus/components/Access/index.d.ts +2 -2
- package/es/modules/menus/components/Account/index.d.ts +2 -2
- package/es/modules/menus/components/Status/index.d.ts +2 -2
- package/es/modules/menus/pages/ListOptions/Teams/index.js +4 -4
- package/es/modules/menus/pages/ListOptions/Teams/index.js.map +1 -1
- package/es/modules/tasks/components/NewTaskForm/index.js +1 -1
- package/es/modules/tasks/components/NewTaskForm/index.js.map +1 -1
- package/es/modules/tasks/components/NewTaskForm/state.js +30 -26
- package/es/modules/tasks/components/NewTaskForm/state.js.map +1 -1
- package/es/modules/tasks/components/SubTaskList/index.js +15 -72
- package/es/modules/tasks/components/SubTaskList/index.js.map +1 -1
- package/es/modules/tasks/components/SubTaskList/state.js +22 -18
- package/es/modules/tasks/components/SubTaskList/state.js.map +1 -1
- package/es/modules/tasks/components/TaskDescription/index.d.ts +1 -1
- package/es/modules/tasks/components/TaskHeader/index.js +11 -2
- package/es/modules/tasks/components/TaskHeader/index.js.map +1 -1
- package/es/modules/tasks/components/TaskItem/DefaultTaskItem.js +4 -3
- package/es/modules/tasks/components/TaskItem/DefaultTaskItem.js.map +1 -1
- package/es/modules/tasks/components/TaskItem/SubTaskItem.js +4 -2
- package/es/modules/tasks/components/TaskItem/SubTaskItem.js.map +1 -1
- package/es/modules/tasks/components/TaskItem/state.d.ts +3 -2
- package/es/modules/tasks/components/TaskItem/state.js +157 -156
- package/es/modules/tasks/components/TaskItem/state.js.map +1 -1
- package/es/modules/tasks/components/TaskPropertiesView/index.d.ts +1 -1
- package/es/modules/tasks/components/TaskQuickViewDialog/index.d.ts +2 -2
- package/es/modules/tasks/components/TaskTimeBox/index.d.ts +4 -4
- package/es/modules/tasks/components/TaskTimeBox/state.js +74 -70
- package/es/modules/tasks/components/TaskTimeBox/state.js.map +1 -1
- package/es/modules/tasks/pages/TaskList/index.js +28 -110
- package/es/modules/tasks/pages/TaskList/index.js.map +1 -1
- package/es/modules/tasks/pages/TaskList/state.d.ts +0 -14
- package/es/modules/tasks/pages/TaskList/state.js +0 -46
- package/es/modules/tasks/pages/TaskList/state.js.map +1 -1
- package/es/modules/workspaces/components/Access/index.d.ts +2 -2
- package/es/modules/workspaces/components/Account/index.d.ts +2 -2
- package/es/modules/workspaces/components/ListHeard/index.d.ts +1 -1
- package/es/modules/workspaces/components/Status/index.d.ts +2 -2
- package/es/modules/workspaces/pages/BoardView/index.js +3 -3
- package/es/modules/workspaces/pages/BoardView/index.js.map +1 -1
- package/package.json +11 -11
- package/es/modules/meeting/pages/MeetingList/state.d.ts +0 -15
- package/es/modules/meeting/pages/MeetingList/state.js +0 -47
- package/es/modules/meeting/pages/MeetingList/state.js.map +0 -1
@@ -1,76 +1,80 @@
|
|
1
1
|
import { __decorate } from "tslib";
|
2
2
|
import { action, observable, toJS } from "mobx";
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
/** visible of schedule/estimatedHours edit dialog */
|
17
|
-
this.visible = false;
|
18
|
-
/** save StartDate && DueDate or EstimatedHours*/
|
19
|
-
this.onSave = () => {
|
20
|
-
const schedule = toJS(this.schedule);
|
21
|
-
const StartDate = (schedule && schedule[0]) || "";
|
22
|
-
const DueDate = (schedule && schedule[1]) || "";
|
23
|
-
this.loading = true;
|
24
|
-
this.taskStore.edit(this.id, {
|
25
|
-
StartDate,
|
26
|
-
DueDate,
|
27
|
-
EstimatedHours: this.estimatedHours
|
28
|
-
});
|
3
|
+
let State = /** @class */ (() => {
|
4
|
+
class State {
|
5
|
+
constructor(taskStore) {
|
6
|
+
this.taskStore = taskStore;
|
7
|
+
/** id of task */
|
8
|
+
this.id = "";
|
9
|
+
/** Schedule of task */
|
10
|
+
this.schedule = [];
|
11
|
+
/** EstimatedHours of task */
|
12
|
+
this.estimatedHours = 0;
|
13
|
+
/** Old EstimatedHours of task */
|
14
|
+
this.oldEstimatedHours = 0;
|
15
|
+
/** loading of save */
|
29
16
|
this.loading = false;
|
17
|
+
/** visible of schedule/estimatedHours edit dialog */
|
30
18
|
this.visible = false;
|
31
|
-
|
32
|
-
this.
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
19
|
+
/** save StartDate && DueDate or EstimatedHours*/
|
20
|
+
this.onSave = () => {
|
21
|
+
const schedule = toJS(this.schedule);
|
22
|
+
const StartDate = (schedule && schedule[0]) || "";
|
23
|
+
const DueDate = (schedule && schedule[1]) || "";
|
24
|
+
this.loading = true;
|
25
|
+
this.taskStore.edit(this.id, {
|
26
|
+
StartDate,
|
27
|
+
DueDate,
|
28
|
+
EstimatedHours: this.estimatedHours
|
29
|
+
});
|
30
|
+
this.loading = false;
|
31
|
+
this.visible = false;
|
32
|
+
this.oldEstimatedHours = this.estimatedHours;
|
33
|
+
this.oldSchedule = StartDate ? schedule : undefined;
|
34
|
+
};
|
35
|
+
/** edit estimatedHours */
|
36
|
+
this.changeEstimatedHours = (value) => {
|
37
|
+
this.estimatedHours = value;
|
38
|
+
this.schedule = toJS([]);
|
39
|
+
};
|
40
|
+
/** edit schedule */
|
41
|
+
this.changeSchedule = (value) => {
|
42
|
+
this.schedule = value;
|
43
|
+
this.estimatedHours = 0;
|
44
|
+
};
|
45
|
+
}
|
44
46
|
}
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
47
|
+
__decorate([
|
48
|
+
observable
|
49
|
+
], State.prototype, "id", void 0);
|
50
|
+
__decorate([
|
51
|
+
observable
|
52
|
+
], State.prototype, "schedule", void 0);
|
53
|
+
__decorate([
|
54
|
+
observable
|
55
|
+
], State.prototype, "oldSchedule", void 0);
|
56
|
+
__decorate([
|
57
|
+
observable
|
58
|
+
], State.prototype, "estimatedHours", void 0);
|
59
|
+
__decorate([
|
60
|
+
observable
|
61
|
+
], State.prototype, "oldEstimatedHours", void 0);
|
62
|
+
__decorate([
|
63
|
+
observable
|
64
|
+
], State.prototype, "loading", void 0);
|
65
|
+
__decorate([
|
66
|
+
observable
|
67
|
+
], State.prototype, "visible", void 0);
|
68
|
+
__decorate([
|
69
|
+
action
|
70
|
+
], State.prototype, "onSave", void 0);
|
71
|
+
__decorate([
|
72
|
+
action
|
73
|
+
], State.prototype, "changeEstimatedHours", void 0);
|
74
|
+
__decorate([
|
75
|
+
action
|
76
|
+
], State.prototype, "changeSchedule", void 0);
|
77
|
+
return State;
|
78
|
+
})();
|
79
|
+
export { State };
|
76
80
|
//# sourceMappingURL=state.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../../src/modules/tasks/components/TaskTimeBox/state.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAIhD,
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../../src/modules/tasks/components/TaskTimeBox/state.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAIhD;IAAA,MAAa,KAAK;QAgBjB,YAA2B,SAAoB;YAApB,cAAS,GAAT,SAAS,CAAW;YAf/C,iBAAiB;YACE,OAAE,GAAG,EAAE,CAAC;YAC3B,uBAAuB;YACJ,aAAQ,GAAQ,EAAE,CAAC;YAGtC,6BAA6B;YACV,mBAAc,GAAG,CAAC,CAAC;YACtC,iCAAiC;YACd,sBAAiB,GAAG,CAAC,CAAC;YACzC,uBAAuB;YACJ,YAAO,GAAG,KAAK,CAAC;YACnC,uDAAuD;YACpC,YAAO,GAAG,KAAK,CAAC;YAInC,kDAAkD;YAE3C,WAAM,GAAG,GAAG,EAAE;gBACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACrC,MAAM,SAAS,GAAG,CAAC,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAClD,MAAM,OAAO,GAAG,CAAC,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAChD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBACpB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;oBAC5B,SAAS;oBACT,OAAO;oBACP,cAAc,EAAE,IAAI,CAAC,cAAc;iBACnC,CAAC,CAAC;gBACH,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;gBACrB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;gBACrB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,cAAc,CAAC;gBAC7C,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YACrD,CAAC,CAAC;YACF,0BAA0B;YAEnB,yBAAoB,GAAG,CAAC,KAAa,EAAE,EAAE;gBAC/C,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;gBAC5B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;YAC1B,CAAC,CAAC;YACF,oBAAoB;YAEb,mBAAc,GAAG,CAAC,KAAU,EAAE,EAAE;gBACtC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;gBACtB,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;YACzB,CAAC,CAAC;QA9BgD,CAAC;KA+BnD;IA7CY;QAAX,UAAU;qCAAgB;IAEf;QAAX,UAAU;2CAA2B;IAE1B;QAAX,UAAU;8CAAuC;IAEtC;QAAX,UAAU;iDAA2B;IAE1B;QAAX,UAAU;oDAA8B;IAE7B;QAAX,UAAU;0CAAwB;IAEvB;QAAX,UAAU;0CAAwB;IAMnC;QADC,MAAM;yCAeL;IAGF;QADC,MAAM;uDAIL;IAGF;QADC,MAAM;iDAIL;IACH,YAAC;KAAA;SA/CY,KAAK"}
|
@@ -1,124 +1,42 @@
|
|
1
|
-
import {
|
2
|
-
import {
|
3
|
-
import
|
4
|
-
import AssigneeViewFilter from "../../../../controls/AssigneeViewFilter";
|
1
|
+
import { ListDataContext, useCreateListDataState } from "@voplus/morpho-ui/es/data";
|
2
|
+
import { useAutoUpdateListData, useDocumentStore } from "@voplus/morpho-document";
|
3
|
+
import { useTabItem } from "@voplus/morpho-data";
|
5
4
|
import DefaultTaskItem from "../../components/TaskItem/DefaultTaskItem";
|
6
|
-
import
|
5
|
+
import ListView2 from "@voplus/morpho-ui/es/components/layout/ListView/ListView2";
|
7
6
|
import NewTaskForm from "../../components/NewTaskForm";
|
8
|
-
import
|
7
|
+
import React from "react";
|
9
8
|
import TaskPropertiesView from "../../components/TaskPropertiesView";
|
10
|
-
import moment from "moment";
|
11
|
-
import { toJS } from "mobx";
|
12
|
-
import { useDocumentStore } from "@voplus/morpho-document";
|
13
9
|
import { useObserver } from "mobx-react-lite";
|
14
|
-
import {
|
10
|
+
import { useRenderOnChange } from "@voplus/morpho-ui";
|
15
11
|
import { useTaskListEffect } from "../../../../data/task/hooks";
|
16
12
|
const TaskList = () => {
|
17
13
|
const tab = useTabItem();
|
18
14
|
tab.title = "Tasks";
|
19
|
-
const
|
20
|
-
const
|
21
|
-
const
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
filterViewState.customize = { members: [] };
|
15
|
+
const documents = useDocumentStore();
|
16
|
+
// const state = useDeepMemo(() => new State(), []);
|
17
|
+
const list = useCreateListDataState({
|
18
|
+
filterDefaults: {
|
19
|
+
includes: "tags,task-number-reports"
|
20
|
+
}
|
26
21
|
}, []);
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
// state.ref.current!.reset();
|
42
|
-
};
|
43
|
-
// reset
|
44
|
-
useEffect(() => {
|
45
|
-
reset();
|
46
|
-
}, [JSON.stringify(state.filters), JSON.stringify(state.data)]);
|
47
|
-
// });
|
48
|
-
const loadData = () => {
|
49
|
-
state.loading = true;
|
50
|
-
state.page = state.page + 1;
|
51
|
-
};
|
52
|
-
const onFilter = (value) => {
|
53
|
-
reset();
|
54
|
-
const { status, customize, createDate, startDate, dueDate, flags } = value;
|
55
|
-
state.filters =
|
56
|
-
status && status.length
|
57
|
-
? [
|
58
|
-
{
|
59
|
-
c: "TaskStatus",
|
60
|
-
o: "contains",
|
61
|
-
l: "And",
|
62
|
-
v1: toJS(JSON.stringify(status))
|
63
|
-
}
|
64
|
-
]
|
65
|
-
: [];
|
66
|
-
if (customize.members && customize.members.length)
|
67
|
-
state.filters = [
|
68
|
-
...state.filters,
|
69
|
-
{
|
70
|
-
c: "Members",
|
71
|
-
o: "contains",
|
72
|
-
v1: JSON.stringify(customize.members.map(({ id }) => id))
|
73
|
-
}
|
74
|
-
];
|
75
|
-
if (flags && flags.length)
|
76
|
-
state.filters = [...state.filters, { c: "Flag", o: "contains", v1: JSON.stringify(flags) }];
|
77
|
-
if (startDate && startDate.length)
|
78
|
-
state.filters = [
|
79
|
-
...state.filters,
|
80
|
-
{
|
81
|
-
c: "StartDate",
|
82
|
-
o: "between",
|
83
|
-
l: "And",
|
84
|
-
v1: moment(startDate[0])
|
85
|
-
.startOf("days")
|
86
|
-
.format("YYYY-MM-DD HH:mm:ss"),
|
87
|
-
v2: moment(startDate[1])
|
88
|
-
.startOf("days")
|
89
|
-
.format("YYYY-MM-DD HH:mm:ss")
|
90
|
-
}
|
91
|
-
];
|
92
|
-
if (dueDate && dueDate.length)
|
93
|
-
state.filters = [
|
94
|
-
...state.filters,
|
95
|
-
{
|
96
|
-
c: "DueDate",
|
97
|
-
o: "between",
|
98
|
-
l: "And",
|
99
|
-
v1: moment(dueDate[0])
|
100
|
-
.endOf("days")
|
101
|
-
.format("YYYY-MM-DD HH:mm:ss"),
|
102
|
-
v2: moment(dueDate[1])
|
103
|
-
.endOf("days")
|
104
|
-
.format("YYYY-MM-DD HH:mm:ss")
|
22
|
+
/** useOnNewDocument, useOnDeleteDocument的sugar syntax 自動更新list. */
|
23
|
+
useAutoUpdateListData(list, d => d.type === "Task" && !d.parentId);
|
24
|
+
/** 如果 list.filters.options变更了就重渲染,使下一行的useTaskListEffect 可以接收新参数*/
|
25
|
+
useRenderOnChange(() => list.filters.options);
|
26
|
+
/** 把ListDataState传给useTaskListEffect,使之可以自動更新loading, hasmore. */
|
27
|
+
useTaskListEffect(list, result => list.union(result), list.filters.options);
|
28
|
+
return useObserver(() => (React.createElement(ListDataContext.Provider, { value: list },
|
29
|
+
React.createElement(ListView2, { headerProps: {
|
30
|
+
filterViewProps: {
|
31
|
+
columns: [
|
32
|
+
/*<AssigneeViewFilter key="AssigneeViewFilter" />,
|
33
|
+
<StartDateFilter key="StartDateFilter" />,
|
34
|
+
<DueDateFilter key="DueDateFilter" />*/
|
35
|
+
]
|
105
36
|
}
|
106
|
-
|
107
|
-
if (!(filterViewState.customize && filterViewState.customize.members))
|
108
|
-
filterViewState.customize = { members: [] };
|
109
|
-
};
|
110
|
-
const ref = useRef(null);
|
111
|
-
const onSort = (data) => {
|
112
|
-
state.data = data;
|
113
|
-
state.loading = true;
|
114
|
-
};
|
115
|
-
return useObserver(() => (React.createElement(FilterViewContext.Provider, { value: filterViewState },
|
116
|
-
React.createElement(ListView, { ref: ref, filterable: true, columns: [React.createElement(AssigneeViewFilter, { key: "AssigneeView" })], loading: state.loading, page: state.page, data: state.tasks, formViewTitle: "Add Task", formView: React.createElement(NewTaskForm, { showView: true }), defaultView: (id) => React.createElement(TaskPropertiesView, { id: id }), loadMore: loadData, onFilter: onFilter, onSort: onSort, moveAfter: moveAfter, renderItem: ({ item, connectDragSource }) => (
|
117
|
-
// <TaskItem id={item.id} index={index} reload={state.reload} />
|
118
|
-
React.createElement(DefaultTaskItem, { id: item.id, connectDragSource: connectDragSource })) }))));
|
37
|
+
}, formViewTitle: "Add Task", formView: React.createElement(NewTaskForm, { showView: true }), propertiesView: id => React.createElement(TaskPropertiesView, { id: id }), moveAfter: moveAfter, renderItem: ({ item, connectDragSource }) => (React.createElement(DefaultTaskItem, { id: item.id, connectDragSource: connectDragSource })) }))));
|
119
38
|
async function moveAfter(id, afterId, list) {
|
120
|
-
await
|
121
|
-
state.tasks = list;
|
39
|
+
await documents.moveAfter(id, afterId);
|
122
40
|
}
|
123
41
|
};
|
124
42
|
export default TaskList;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/tasks/pages/TaskList/index.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/tasks/pages/TaskList/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACpF,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAClF,OAAO,EAAe,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAG9D,OAAO,eAAe,MAAM,2CAA2C,CAAC;AAGxE,OAAO,SAAS,MAAM,2DAA2D,CAAC;AAClF,OAAO,WAAW,MAAM,8BAA8B,CAAC;AACvD,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,kBAAkB,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEhE,MAAM,QAAQ,GAAG,GAAG,EAAE;IACrB,MAAM,GAAG,GAAG,UAAU,EAAE,CAAC;IACzB,GAAG,CAAC,KAAK,GAAG,OAAO,CAAC;IAEpB,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;IACrC,oDAAoD;IAEpD,MAAM,IAAI,GAAG,sBAAsB,CAClC;QACC,cAAc,EAAE;YACf,QAAQ,EAAE,0BAA0B;SACpC;KACD,EACD,EAAE,CACF,CAAC;IACF,mEAAmE;IACnE,qBAAqB,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAEnE,mEAAmE;IACnE,iBAAiB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAE9C,kEAAkE;IAClE,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAE5E,OAAO,WAAW,CAAC,GAAG,EAAE,CAAC,CACxB,oBAAC,eAAe,CAAC,QAAQ,IAAC,KAAK,EAAE,IAAI;QACpC,oBAAC,SAAS,IACT,WAAW,EAAE;gBACZ,eAAe,EAAE;oBAChB,OAAO,EAAE;oBACR;;2DAEuC;qBACvC;iBACD;aACD,EACD,aAAa,EAAC,UAAU,EACxB,QAAQ,EAAE,oBAAC,WAAW,IAAC,QAAQ,SAAG,EAClC,cAAc,EAAE,EAAE,CAAC,EAAE,CAAC,oBAAC,kBAAkB,IAAC,EAAE,EAAE,EAAE,GAAI,EACpD,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAO,EAAE,EAAE,CAAC,CACjD,oBAAC,eAAe,IAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,iBAAiB,EAAE,iBAAiB,GAAI,CACtE,GACA,CACwB,CAC3B,CAAC,CAAC;IACH,KAAK,UAAU,SAAS,CAAC,EAAU,EAAE,OAAe,EAAE,IAAW;QAChE,MAAM,SAAS,CAAC,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;AACF,CAAC,CAAC;AAEF,eAAe,QAAQ,CAAC"}
|
@@ -1,16 +1,2 @@
|
|
1
|
-
import { DocumentStore, IDocument } from "@voplus/morpho-document";
|
2
|
-
import { ITask, TaskStore } from "../../../../data/task";
|
3
|
-
import { SortParameters } from "@voplus/morpho-data/es/types";
|
4
1
|
export declare class State {
|
5
|
-
private _store;
|
6
|
-
private _documents;
|
7
|
-
constructor(_store: TaskStore, _documents: DocumentStore);
|
8
|
-
tasks: ITask[];
|
9
|
-
page: number;
|
10
|
-
filters: any[];
|
11
|
-
data: SortParameters;
|
12
|
-
loading: boolean;
|
13
|
-
onTaskCreated: (s: DocumentStore, t: IDocument) => void;
|
14
|
-
onTaskDeleted: (s: DocumentStore, t: IDocument) => void;
|
15
|
-
subscribeOnTaskCreateCallback: () => () => void;
|
16
2
|
}
|
@@ -1,49 +1,3 @@
|
|
1
|
-
import { __decorate } from "tslib";
|
2
|
-
import { observable } from "mobx";
|
3
1
|
export class State {
|
4
|
-
constructor(_store, _documents) {
|
5
|
-
this._store = _store;
|
6
|
-
this._documents = _documents;
|
7
|
-
this.tasks = [];
|
8
|
-
this.page = 1;
|
9
|
-
this.filters = [];
|
10
|
-
this.data = {};
|
11
|
-
this.loading = true;
|
12
|
-
this.onTaskCreated = (s, t) => {
|
13
|
-
if (t.type === "Task" && !t.parentId)
|
14
|
-
this.tasks.push(t);
|
15
|
-
};
|
16
|
-
this.onTaskDeleted = (s, t) => {
|
17
|
-
if (t.type !== "Task")
|
18
|
-
return;
|
19
|
-
this.tasks =
|
20
|
-
t instanceof Array
|
21
|
-
? this.tasks.filter(task => !t.some(({ id }) => task.id === id))
|
22
|
-
: this.tasks.filter(task => task.id !== t.id);
|
23
|
-
};
|
24
|
-
this.subscribeOnTaskCreateCallback = () => {
|
25
|
-
this._documents.DocumentCreatedEvent.subscribe(this.onTaskCreated);
|
26
|
-
this._documents.DocumentDeletedEvent.subscribe(this.onTaskDeleted);
|
27
|
-
return () => {
|
28
|
-
this._documents.DocumentCreatedEvent.unsubscribe(this.onTaskCreated);
|
29
|
-
this._documents.DocumentDeletedEvent.unsubscribe(this.onTaskDeleted);
|
30
|
-
};
|
31
|
-
};
|
32
|
-
}
|
33
2
|
}
|
34
|
-
__decorate([
|
35
|
-
observable
|
36
|
-
], State.prototype, "tasks", void 0);
|
37
|
-
__decorate([
|
38
|
-
observable
|
39
|
-
], State.prototype, "page", void 0);
|
40
|
-
__decorate([
|
41
|
-
observable
|
42
|
-
], State.prototype, "filters", void 0);
|
43
|
-
__decorate([
|
44
|
-
observable
|
45
|
-
], State.prototype, "data", void 0);
|
46
|
-
__decorate([
|
47
|
-
observable
|
48
|
-
], State.prototype, "loading", void 0);
|
49
3
|
//# sourceMappingURL=state.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../../src/modules/tasks/pages/TaskList/state.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../../src/modules/tasks/pages/TaskList/state.ts"],"names":[],"mappings":"AAMA,MAAM,OAAO,KAAK;CAAG"}
|
@@ -1,7 +1,7 @@
|
|
1
|
-
import React from "react";
|
2
|
-
import ListHeard from "../../components/ListHeard";
|
3
1
|
import AvatarList from "../../../../components/AvatarList";
|
4
2
|
import DocumentMenu from "@voplus/morpho-document/es/components/DocumentMenu";
|
3
|
+
import ListHeard from "../../components/ListHeard";
|
4
|
+
import React from "react";
|
5
5
|
import style from "./index.less";
|
6
6
|
export default () => {
|
7
7
|
const list = [
|
@@ -53,7 +53,7 @@ export default () => {
|
|
53
53
|
return (React.createElement("div", { className: "list-item", key: item.id },
|
54
54
|
React.createElement("div", { className: "list-item-top" },
|
55
55
|
React.createElement("span", null, "Dropbox Inc"),
|
56
|
-
React.createElement(DocumentMenu,
|
56
|
+
React.createElement(DocumentMenu, { id: "dummy" })),
|
57
57
|
React.createElement("div", { className: "list-item-title" }, "Development"),
|
58
58
|
React.createElement("div", { className: "content-list-edit" },
|
59
59
|
React.createElement("span", null,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/workspaces/pages/BoardView/index.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/workspaces/pages/BoardView/index.tsx"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,mCAAmC,CAAC;AAC3D,OAAO,YAAY,MAAM,oDAAoD,CAAC;AAC9E,OAAO,SAAS,MAAM,4BAA4B,CAAC;AACnD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,MAAM,cAAc,CAAC;AAEjC,eAAe,GAAG,EAAE;IACnB,MAAM,IAAI,GAAG;QACZ;YACC,EAAE,EAAE,CAAC;YACL,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,eAAe;SACrB;QACD;YACC,EAAE,EAAE,CAAC;YACL,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,eAAe;SACrB;QACD;YACC,EAAE,EAAE,CAAC;YACL,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,eAAe;SACrB;QACD;YACC,EAAE,EAAE,CAAC;YACL,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,eAAe;SACrB;QACD;YACC,EAAE,EAAE,CAAC;YACL,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,eAAe;SACrB;QACD;YACC,EAAE,EAAE,CAAC;YACL,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,eAAe;SACrB;QACD;YACC,EAAE,EAAE,CAAC;YACL,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,eAAe;SACrB;QACD;YACC,EAAE,EAAE,CAAC;YACL,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,eAAe;SACrB;KACD,CAAC;IACF,OAAO,CACN,6BAAK,SAAS,EAAE,KAAK,CAAC,GAAG;QACxB,6BAAK,SAAS,EAAC,WAAW;YACzB,oBAAC,SAAS,IAAC,IAAI,EAAE,KAAK,GAAI,CACrB;QACN,6BAAK,SAAS,EAAC,cAAc,IAC3B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAChB,OAAO,CACN,6BAAK,SAAS,EAAC,WAAW,EAAC,GAAG,EAAE,IAAI,CAAC,EAAE;gBACtC,6BAAK,SAAS,EAAC,eAAe;oBAC7B,gDAAwB;oBACxB,oBAAC,YAAY,IAAC,EAAE,EAAC,OAAO,GAAG,CACtB;gBACN,6BAAK,SAAS,EAAC,iBAAiB,kBAAkB;gBAClD,6BAAK,SAAS,EAAC,mBAAmB;oBACjC;;wBACc,8BAAM,SAAS,EAAC,YAAY,IAAE,IAAI,CAAC,IAAI,CAAQ,CACtD;oBACP,+BAAM;oBACN,kCAAO,IAAI,CAAC,IAAI,CAAQ,CACnB;gBACN,6BAAK,SAAS,EAAC,eAAe;oBAC7B,oBAAC,UAAU,IAAC,IAAI,EAAE,EAAE,GAAI,CACnB,CACD,CACN,CAAC;QACH,CAAC,CAAC,CACG,CACD,CACN,CAAC;AACH,CAAC,CAAC"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@voplus/morpho-workspace",
|
3
|
-
"version": "1.1.0-
|
3
|
+
"version": "1.1.0-dev014",
|
4
4
|
"description": "morpho workspace module",
|
5
5
|
"repository": {
|
6
6
|
"type": "git",
|
@@ -32,21 +32,21 @@
|
|
32
32
|
"@types/classnames": "^2.2.10",
|
33
33
|
"@types/lodash-es": "^4.17.3",
|
34
34
|
"@types/mockjs": "^1.0.2",
|
35
|
-
"@types/react": "^16.9.
|
35
|
+
"@types/react": "^16.9.35",
|
36
36
|
"@types/react-beautiful-dnd": "^12.1.2",
|
37
37
|
"@types/react-custom-scrollbars": "^4.0.6",
|
38
|
-
"@types/react-dom": "^16.9.
|
39
|
-
"@types/react-router": "^5.1.
|
40
|
-
"@types/react-router-dom": "^5.1.
|
41
|
-
"@voplus/antd": "^4.
|
38
|
+
"@types/react-dom": "^16.9.8",
|
39
|
+
"@types/react-router": "^5.1.7",
|
40
|
+
"@types/react-router-dom": "^5.1.5",
|
41
|
+
"@voplus/antd": "^4.2.2-vo1.0.2",
|
42
42
|
"@voplus/morpho-client-test": "^1.0.0-dev014",
|
43
|
-
"@voplus/morpho-collaboration": "^1.0.0-
|
44
|
-
"@voplus/morpho-config": "^1.0.0-
|
45
|
-
"@voplus/morpho-data": "^1.0.0-
|
46
|
-
"@voplus/morpho-document": "^1.0.0-
|
43
|
+
"@voplus/morpho-collaboration": "^1.0.0-dev024",
|
44
|
+
"@voplus/morpho-config": "^1.0.0-dev50",
|
45
|
+
"@voplus/morpho-data": "^1.0.0-dev097",
|
46
|
+
"@voplus/morpho-document": "^1.0.0-dev227",
|
47
47
|
"@voplus/morpho-org": "^1.0.0-dev032-antd4",
|
48
48
|
"@voplus/morpho-text": "^1.0.0-dev016",
|
49
|
-
"@voplus/morpho-ui": "^1.0.0-
|
49
|
+
"@voplus/morpho-ui": "^1.0.0-dev115",
|
50
50
|
"draft-js": "^0.11.5",
|
51
51
|
"mobx": "^5.15.4",
|
52
52
|
"mobx-react-lite": "^1.5.1",
|
@@ -1,15 +0,0 @@
|
|
1
|
-
import { IMeeting, MeetingStore } from "../../../../data/meeting";
|
2
|
-
import { SortParameters } from "@voplus/morpho-data/es/types";
|
3
|
-
export declare class State {
|
4
|
-
private _store;
|
5
|
-
constructor(_store: MeetingStore);
|
6
|
-
meetings: IMeeting[];
|
7
|
-
loading: boolean;
|
8
|
-
page: number;
|
9
|
-
data: SortParameters;
|
10
|
-
filters: any[];
|
11
|
-
onMeetingCreated: (s: MeetingStore, t: IMeeting) => void;
|
12
|
-
onMeetingDeleted: (s: MeetingStore, t: IMeeting) => void;
|
13
|
-
onMeetingMoved: (targetId: string, t: string[]) => void;
|
14
|
-
subscribeOnMeetingCreateCallback: () => () => void;
|
15
|
-
}
|
@@ -1,47 +0,0 @@
|
|
1
|
-
import { __decorate } from "tslib";
|
2
|
-
import { observable } from "mobx";
|
3
|
-
export class State {
|
4
|
-
constructor(_store) {
|
5
|
-
this._store = _store;
|
6
|
-
this.meetings = [];
|
7
|
-
this.loading = true;
|
8
|
-
this.page = 1;
|
9
|
-
this.data = {};
|
10
|
-
this.filters = [];
|
11
|
-
this.onMeetingCreated = (s, t) => {
|
12
|
-
this.meetings.push(t);
|
13
|
-
};
|
14
|
-
this.onMeetingDeleted = (s, t) => {
|
15
|
-
this.meetings = this.meetings.filter(meeting => meeting.id !== t.id);
|
16
|
-
};
|
17
|
-
this.onMeetingMoved = (targetId, t) => {
|
18
|
-
this.meetings = this.meetings.filter(meeting => !t.some(id => meeting.id === id));
|
19
|
-
};
|
20
|
-
this.subscribeOnMeetingCreateCallback = () => {
|
21
|
-
this._store.ItemCreatedEvent.subscribe(this.onMeetingCreated);
|
22
|
-
this._store.ItemDeletedEvent.subscribe(this.onMeetingDeleted);
|
23
|
-
this._store.MeetingMovedEvent.subscribe(this.onMeetingMoved);
|
24
|
-
return () => {
|
25
|
-
this._store.ItemCreatedEvent.unsubscribe(this.onMeetingCreated);
|
26
|
-
this._store.ItemDeletedEvent.unsubscribe(this.onMeetingDeleted);
|
27
|
-
this._store.MeetingMovedEvent.unsubscribe(this.onMeetingMoved);
|
28
|
-
};
|
29
|
-
};
|
30
|
-
}
|
31
|
-
}
|
32
|
-
__decorate([
|
33
|
-
observable
|
34
|
-
], State.prototype, "meetings", void 0);
|
35
|
-
__decorate([
|
36
|
-
observable
|
37
|
-
], State.prototype, "loading", void 0);
|
38
|
-
__decorate([
|
39
|
-
observable
|
40
|
-
], State.prototype, "page", void 0);
|
41
|
-
__decorate([
|
42
|
-
observable
|
43
|
-
], State.prototype, "data", void 0);
|
44
|
-
__decorate([
|
45
|
-
observable
|
46
|
-
], State.prototype, "filters", void 0);
|
47
|
-
//# sourceMappingURL=state.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../../src/modules/meeting/pages/MeetingList/state.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC,MAAM,OAAO,KAAK;IACjB,YAA2B,MAAoB;QAApB,WAAM,GAAN,MAAM,CAAc;QAC5B,aAAQ,GAAe,EAAE,CAAC;QAC1B,YAAO,GAAG,IAAI,CAAC;QACf,SAAI,GAAG,CAAC,CAAC;QACT,SAAI,GAAmB,EAAE,CAAC;QAC1B,YAAO,GAAU,EAAE,CAAC;QAEhC,qBAAgB,GAAG,CAAC,CAAe,EAAE,CAAW,EAAE,EAAE;YAC1D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC,CAAC;QAEK,qBAAgB,GAAG,CAAC,CAAe,EAAE,CAAW,EAAE,EAAE;YAC1D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QACtE,CAAC,CAAC;QAEK,mBAAc,GAAG,CAAC,QAAgB,EAAE,CAAW,EAAE,EAAE;YACzD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QACnF,CAAC,CAAC;QAEK,qCAAgC,GAAG,GAAG,EAAE;YAC9C,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAC9D,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAC9D,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC7D,OAAO,GAAG,EAAE;gBACX,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAChE,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAChE,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAChE,CAAC,CAAC;QACH,CAAC,CAAC;IA5BgD,CAAC;CA6BnD;AA5BY;IAAX,UAAU;uCAAkC;AACjC;IAAX,UAAU;sCAAuB;AACtB;IAAX,UAAU;mCAAiB;AAChB;IAAX,UAAU;mCAAkC;AACjC;IAAX,UAAU;sCAA4B"}
|