@voplus/morpho-workspace 1.0.0-dev41 → 1.0.0-dev43

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.
Files changed (190) hide show
  1. package/es/components/AvatarList/index.js +19 -11
  2. package/es/components/AvatarList/index.js.map +1 -1
  3. package/es/components/AvatarList/index.less +13 -4
  4. package/es/components/AvatarList/state.d.ts +1 -0
  5. package/es/components/AvatarList/state.js +4 -0
  6. package/es/components/AvatarList/state.js.map +1 -1
  7. package/es/components/PageListView/index.d.ts +1 -7
  8. package/es/components/PageListView/index.js +16 -63
  9. package/es/components/PageListView/index.js.map +1 -1
  10. package/es/components/PageListView/index.less +3 -64
  11. package/es/components/PageListView/state.d.ts +0 -3
  12. package/es/components/PageListView/state.js +0 -12
  13. package/es/components/PageListView/state.js.map +1 -1
  14. package/es/components/ToolBar/index.d.ts +4 -1
  15. package/es/components/ToolBar/index.js +17 -6
  16. package/es/components/ToolBar/index.js.map +1 -1
  17. package/es/components/ToolBar/index.less +4 -1
  18. package/es/controls/FlagIcon/index.d.ts +2 -1
  19. package/es/controls/FlagIcon/index.js +13 -3
  20. package/es/controls/FlagIcon/index.js.map +1 -1
  21. package/es/data/board/BoardStore.d.ts +21 -0
  22. package/es/data/board/BoardStore.js +39 -0
  23. package/es/data/board/BoardStore.js.map +1 -0
  24. package/es/data/board/hooks.d.ts +12 -0
  25. package/es/data/board/hooks.js +24 -0
  26. package/es/data/board/hooks.js.map +1 -0
  27. package/es/data/board/index.d.ts +4 -0
  28. package/es/data/board/index.js +3 -0
  29. package/es/data/board/index.js.map +1 -0
  30. package/es/data/board/interfaces.d.ts +25 -0
  31. package/es/data/board/interfaces.js +1 -0
  32. package/es/data/board/interfaces.js.map +1 -0
  33. package/es/data/board/mock.d.ts +3 -0
  34. package/es/data/board/mock.js +37 -0
  35. package/es/data/board/mock.js.map +1 -0
  36. package/es/data/board/types.d.ts +14 -0
  37. package/es/data/board/types.js +1 -0
  38. package/es/data/board/types.js.map +1 -0
  39. package/es/data/meeting/interfaces.d.ts +1 -0
  40. package/es/data/task/interfaces.d.ts +1 -0
  41. package/es/modules/BoardView/components/BoardColumn/index.d.ts +5 -2
  42. package/es/modules/BoardView/components/BoardColumn/index.js +49 -224
  43. package/es/modules/BoardView/components/BoardColumn/index.js.map +1 -1
  44. package/es/modules/BoardView/components/BoardColumn/index.less +49 -108
  45. package/es/modules/BoardView/components/BoardColumn/state.d.ts +11 -0
  46. package/es/modules/BoardView/components/BoardColumn/state.js +38 -0
  47. package/es/modules/BoardView/components/BoardColumn/state.js.map +1 -0
  48. package/es/modules/BoardView/components/BoardList/index.d.ts +5 -0
  49. package/es/modules/BoardView/components/BoardList/index.js +35 -0
  50. package/es/modules/BoardView/components/BoardList/index.js.map +1 -0
  51. package/es/modules/BoardView/components/BoardList/index.less +39 -0
  52. package/es/modules/BoardView/components/BoardList/state.d.ts +7 -0
  53. package/es/modules/BoardView/components/BoardList/state.js +23 -0
  54. package/es/modules/BoardView/components/BoardList/state.js.map +1 -0
  55. package/es/modules/BoardView/components/NewTaskForm/index.d.ts +11 -0
  56. package/es/modules/BoardView/components/NewTaskForm/index.js +66 -0
  57. package/es/modules/BoardView/components/NewTaskForm/index.js.map +1 -0
  58. package/es/modules/BoardView/components/NewTaskForm/index.less +91 -0
  59. package/es/modules/BoardView/components/NewTaskForm/state.d.ts +24 -0
  60. package/es/modules/BoardView/components/NewTaskForm/state.js +37 -0
  61. package/es/modules/BoardView/components/NewTaskForm/state.js.map +1 -0
  62. package/es/modules/BoardView/components/TaskCard/index.d.ts +4 -1
  63. package/es/modules/BoardView/components/TaskCard/index.js +113 -33
  64. package/es/modules/BoardView/components/TaskCard/index.js.map +1 -1
  65. package/es/modules/BoardView/components/TaskCard/index.less +55 -19
  66. package/es/modules/BoardView/components/TaskCard/state.d.ts +15 -0
  67. package/es/modules/BoardView/components/TaskCard/state.js +54 -0
  68. package/es/modules/BoardView/components/TaskCard/state.js.map +1 -0
  69. package/es/modules/BoardView/components/TaskList/index.d.ts +10 -0
  70. package/es/modules/BoardView/components/TaskList/index.js +45 -0
  71. package/es/modules/BoardView/components/TaskList/index.js.map +1 -0
  72. package/es/modules/BoardView/components/TaskList/state.d.ts +7 -0
  73. package/es/modules/BoardView/components/TaskList/state.js +23 -0
  74. package/es/modules/BoardView/components/TaskList/state.js.map +1 -0
  75. package/es/modules/BoardView/pages/BoardViewList/index.d.ts +2 -2
  76. package/es/modules/BoardView/pages/BoardViewList/index.js +13 -11
  77. package/es/modules/BoardView/pages/BoardViewList/index.js.map +1 -1
  78. package/es/modules/BoardView/pages/BoardViewRoutes.js +1 -1
  79. package/es/modules/BoardView/pages/BoardViewRoutes.js.map +1 -1
  80. package/es/modules/calendar/CalendarRoutes.d.ts +11 -0
  81. package/es/modules/calendar/CalendarRoutes.js +25 -0
  82. package/es/modules/calendar/CalendarRoutes.js.map +1 -0
  83. package/es/modules/calendar/pages/CalendarMonth/index.d.ts +7 -0
  84. package/es/modules/calendar/pages/CalendarMonth/index.js +193 -0
  85. package/es/modules/calendar/pages/CalendarMonth/index.js.map +1 -0
  86. package/es/modules/calendar/pages/CalendarMonth/index.less +144 -0
  87. package/es/modules/calendar/pages/CalendarMonth/state.d.ts +3 -0
  88. package/es/modules/calendar/pages/CalendarMonth/state.js +12 -0
  89. package/es/modules/calendar/pages/CalendarMonth/state.js.map +1 -0
  90. package/es/modules/calendar/pages/CalendarWeek/index.d.ts +0 -0
  91. package/es/modules/calendar/pages/CalendarWeek/index.js +1 -0
  92. package/es/modules/calendar/pages/CalendarWeek/index.js.map +1 -0
  93. package/es/modules/meeting/MeetingRoutes.js +2 -2
  94. package/es/modules/meeting/MeetingRoutes.js.map +1 -1
  95. package/es/modules/meeting/components/AgendaList/AgendaItem/components/TaskList/index.d.ts +1 -0
  96. package/es/modules/meeting/components/AgendaList/AgendaItem/components/TaskList/index.js +4 -4
  97. package/es/modules/meeting/components/AgendaList/AgendaItem/components/TaskList/index.js.map +1 -1
  98. package/es/modules/meeting/components/AgendaList/AgendaItem/index.js +1 -2
  99. package/es/modules/meeting/components/AgendaList/AgendaItem/index.js.map +1 -1
  100. package/es/modules/meeting/components/AgendaList/AgendaItem/index.less +8 -10
  101. package/es/modules/meeting/components/AgendaList/index.js +23 -18
  102. package/es/modules/meeting/components/AgendaList/index.js.map +1 -1
  103. package/es/modules/meeting/components/AgendaList/index.less +4 -35
  104. package/es/modules/meeting/components/AgendaList/state.d.ts +1 -1
  105. package/es/modules/meeting/components/AgendaList/state.js +2 -2
  106. package/es/modules/meeting/components/MeetingDescription/index.d.ts +6 -0
  107. package/es/modules/meeting/components/MeetingDescription/index.js +26 -0
  108. package/es/modules/meeting/components/MeetingDescription/index.js.map +1 -0
  109. package/es/modules/meeting/components/MeetingDescription/index.less +12 -0
  110. package/es/modules/meeting/components/MeetingDetail/index.js +24 -45
  111. package/es/modules/meeting/components/MeetingDetail/index.js.map +1 -1
  112. package/es/modules/meeting/components/MeetingHeader/index.d.ts +10 -0
  113. package/es/modules/meeting/components/MeetingHeader/index.js +90 -0
  114. package/es/modules/meeting/components/MeetingHeader/index.js.map +1 -0
  115. package/es/modules/meeting/components/MeetingHeader/index.less +26 -0
  116. package/es/modules/meeting/components/MeetingItem/index.d.ts +0 -1
  117. package/es/modules/meeting/components/MeetingItem/index.js +5 -54
  118. package/es/modules/meeting/components/MeetingItem/index.js.map +1 -1
  119. package/es/modules/meeting/components/MeetingItem/index.less +7 -81
  120. package/es/modules/meeting/components/MeetingQuickViewDialog/index.d.ts +7 -0
  121. package/es/modules/meeting/components/MeetingQuickViewDialog/index.js +13 -0
  122. package/es/modules/meeting/components/MeetingQuickViewDialog/index.js.map +1 -0
  123. package/es/modules/meeting/components/MeetingQuickViewDialog/index.less +0 -0
  124. package/es/modules/meeting/pages/MeetingList/index.js +40 -0
  125. package/es/modules/meeting/pages/MeetingList/index.js.map +1 -0
  126. package/es/modules/meeting/{components → pages}/MeetingList/state.d.ts +2 -0
  127. package/es/modules/meeting/{components → pages}/MeetingList/state.js +4 -0
  128. package/es/modules/meeting/pages/MeetingList/state.js.map +1 -0
  129. package/es/modules/meeting/pages/MeetingTabView/index.js +26 -38
  130. package/es/modules/meeting/pages/MeetingTabView/index.js.map +1 -1
  131. package/es/modules/meeting/pages/MeetingTabView/index.less +4 -0
  132. package/es/modules/tasks/TasksRoutes.d.ts +0 -6
  133. package/es/modules/tasks/TasksRoutes.js +3 -11
  134. package/es/modules/tasks/TasksRoutes.js.map +1 -1
  135. package/es/modules/tasks/components/SubTaskList/index.js +30 -10
  136. package/es/modules/tasks/components/SubTaskList/index.js.map +1 -1
  137. package/es/modules/tasks/components/SubTaskList/index.less +3 -67
  138. package/es/modules/tasks/components/TaskDescription/index.d.ts +6 -0
  139. package/es/modules/tasks/components/TaskDescription/index.js +33 -0
  140. package/es/modules/tasks/components/TaskDescription/index.js.map +1 -0
  141. package/es/modules/tasks/components/TaskDescription/index.less +11 -0
  142. package/es/modules/tasks/components/TaskDetail/index.js +21 -57
  143. package/es/modules/tasks/components/TaskDetail/index.js.map +1 -1
  144. package/es/modules/tasks/components/TaskHeader/index.d.ts +10 -0
  145. package/es/modules/tasks/components/TaskHeader/index.js +46 -0
  146. package/es/modules/tasks/components/TaskHeader/index.js.map +1 -0
  147. package/es/modules/tasks/components/TaskHeader/index.less +6 -0
  148. package/es/modules/tasks/components/TaskItem/TaskItem.js +94 -48
  149. package/es/modules/tasks/components/TaskItem/TaskItem.js.map +1 -1
  150. package/es/modules/tasks/components/TaskItem/index.less +6 -2
  151. package/es/modules/tasks/components/TaskItem/state.d.ts +2 -0
  152. package/es/modules/tasks/components/TaskItem/state.js +8 -0
  153. package/es/modules/tasks/components/TaskItem/state.js.map +1 -1
  154. package/es/modules/tasks/components/TaskQuickViewDialog/index.d.ts +7 -0
  155. package/es/modules/tasks/components/TaskQuickViewDialog/index.js +13 -0
  156. package/es/modules/tasks/components/TaskQuickViewDialog/index.js.map +1 -0
  157. package/es/modules/tasks/components/TaskQuickViewDialog/index.less +7 -0
  158. package/es/modules/tasks/pages/TaskList/index.js +73 -0
  159. package/es/modules/tasks/pages/TaskList/index.js.map +1 -0
  160. package/es/modules/tasks/{components → pages}/TaskList/state.d.ts +2 -1
  161. package/es/modules/tasks/pages/TaskList/state.js.map +1 -0
  162. package/es/modules/tasks/pages/TaskTabView/index.js +34 -29
  163. package/es/modules/tasks/pages/TaskTabView/index.js.map +1 -1
  164. package/es/modules/tasks/pages/TaskTabView/index.less +3 -3
  165. package/es/modules/tasks/pages/TaskTabView/state.d.ts +0 -1
  166. package/es/modules/tasks/pages/TaskTabView/state.js +0 -4
  167. package/es/modules/tasks/pages/TaskTabView/state.js.map +1 -1
  168. package/package.json +16 -10
  169. package/es/modules/BoardView/components/AddBoard/index.d.ts +0 -3
  170. package/es/modules/BoardView/components/AddBoard/index.js +0 -24
  171. package/es/modules/BoardView/components/AddBoard/index.js.map +0 -1
  172. package/es/modules/BoardView/components/AddBoard/index.less +0 -48
  173. package/es/modules/meeting/components/MeetingList/index.js +0 -36
  174. package/es/modules/meeting/components/MeetingList/index.js.map +0 -1
  175. package/es/modules/meeting/components/MeetingList/state.js.map +0 -1
  176. package/es/modules/meeting/pages/MeetingListView/index.d.ts +0 -3
  177. package/es/modules/meeting/pages/MeetingListView/index.js +0 -8
  178. package/es/modules/meeting/pages/MeetingListView/index.js.map +0 -1
  179. package/es/modules/tasks/components/TaskList/index.js +0 -76
  180. package/es/modules/tasks/components/TaskList/index.js.map +0 -1
  181. package/es/modules/tasks/components/TaskList/state.js.map +0 -1
  182. package/es/modules/tasks/pages/TaskDefaultView/index.d.ts +0 -3
  183. package/es/modules/tasks/pages/TaskDefaultView/index.js +0 -63
  184. package/es/modules/tasks/pages/TaskDefaultView/index.js.map +0 -1
  185. package/es/modules/tasks/pages/TaskListView/index.d.ts +0 -3
  186. package/es/modules/tasks/pages/TaskListView/index.js +0 -9
  187. package/es/modules/tasks/pages/TaskListView/index.js.map +0 -1
  188. /package/es/modules/meeting/{components → pages}/MeetingList/index.d.ts +0 -0
  189. /package/es/modules/tasks/{components → pages}/TaskList/index.d.ts +0 -0
  190. /package/es/modules/tasks/{components → pages}/TaskList/state.js +0 -0
@@ -0,0 +1,40 @@
1
+ import React, { useEffect, useState } from "react";
2
+ import { useTabItem } from "@voplus/morpho-data";
3
+ import { ListView } from "@voplus/morpho-ui";
4
+ import { toJS } from "mobx";
5
+ import { useObserver } from "mobx-react-lite";
6
+ import { useMeetingListEffect, useMeetingStore } from "../../../../data/meeting";
7
+ import MeetingDetail from "../../components/MeetingDetail";
8
+ import MeetingItem from "../../components/MeetingItem";
9
+ import NewMeetingForm from "../../components/NewMeetingForm";
10
+ import { State } from "./state";
11
+ const MeetingList = () => {
12
+ const tab = useTabItem();
13
+ tab.title = "Meetings";
14
+ const meetings = useMeetingStore();
15
+ const [state] = useState(new State(meetings));
16
+ useEffect(() => {
17
+ state.subscribeOnMeetingCreateCallback();
18
+ }, []);
19
+ useObserver(() => {
20
+ useMeetingListEffect(list => {
21
+ state.meetings = list;
22
+ state.loading = false;
23
+ }, { Sort: toJS(state.data), Page: { Page: state.page, PageSize: 20 } });
24
+ useEffect(() => {
25
+ state.page = 1;
26
+ state.meetings = [];
27
+ state.loading = true;
28
+ }, [JSON.stringify(state.data)]);
29
+ });
30
+ const onSort = (data) => {
31
+ state.data = data;
32
+ };
33
+ const loadData = () => {
34
+ state.loading = true;
35
+ state.page = state.page + 1;
36
+ };
37
+ return useObserver(() => (React.createElement(ListView, { reUseFilter: true, data: state.meetings, loading: state.loading, formViewTitle: "Add Meeting", formView: React.createElement(NewMeetingForm, null), defaultView: (id) => React.createElement(MeetingDetail, { id: id }), renderItem: ({ item }) => React.createElement(MeetingItem, { id: item.id }), loadMore: loadData, onSort: onSort })));
38
+ };
39
+ export default MeetingList;
40
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/meeting/pages/MeetingList/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEnD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AACjF,OAAO,aAAa,MAAM,gCAAgC,CAAC;AAC3D,OAAO,WAAW,MAAM,8BAA8B,CAAC;AACvD,OAAO,cAAc,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,MAAM,WAAW,GAAG,GAAG,EAAE;IACxB,MAAM,GAAG,GAAG,UAAU,EAAE,CAAC;IACzB,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC;IACvB,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAC;IACnC,MAAM,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9C,SAAS,CAAC,GAAG,EAAE;QACd,KAAK,CAAC,gCAAgC,EAAE,CAAC;IAC1C,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,WAAW,CAAC,GAAG,EAAE;QAChB,oBAAoB,CACnB,IAAI,CAAC,EAAE;YACN,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;YACtB,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,CACpE,CAAC;QACF,SAAS,CAAC,GAAG,EAAE;YACd,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;YACf,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC;YACpB,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QACtB,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,CAAC,IAAS,EAAE,EAAE;QAC5B,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC,CAAC;IACF,MAAM,QAAQ,GAAG,GAAG,EAAE;QACrB,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QACrB,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;IAC7B,CAAC,CAAC;IACF,OAAO,WAAW,CAAC,GAAG,EAAE,CAAC,CACxB,oBAAC,QAAQ,IACR,WAAW,QACX,IAAI,EAAE,KAAK,CAAC,QAAQ,EACpB,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,aAAa,EAAC,aAAa,EAC3B,QAAQ,EAAE,oBAAC,cAAc,OAAG,EAC5B,WAAW,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,oBAAC,aAAa,IAAC,EAAE,EAAE,EAAE,GAAI,EACtD,UAAU,EAAE,CAAC,EAAE,IAAI,EAAO,EAAE,EAAE,CAAC,oBAAC,WAAW,IAAC,EAAE,EAAE,IAAI,CAAC,EAAE,GAAI,EAC3D,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,GACb,CACF,CAAC,CAAC;AACJ,CAAC,CAAC;AACF,eAAe,WAAW,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { SortParameters } from "@voplus/morpho-data/es/types";
1
2
  import { IMeeting, MeetingStore } from "../../../../data/meeting";
2
3
  export declare class State {
3
4
  private _store;
@@ -5,6 +6,7 @@ export declare class State {
5
6
  meetings: IMeeting[];
6
7
  loading: boolean;
7
8
  page: number;
9
+ data: SortParameters;
8
10
  onMeetingCreated: (s: MeetingStore, t: IMeeting) => void;
9
11
  onMeetingDeleted: (s: MeetingStore, t: IMeeting) => void;
10
12
  subscribeOnMeetingCreateCallback: () => () => void;
@@ -6,6 +6,7 @@ export class State {
6
6
  this.meetings = [];
7
7
  this.loading = true;
8
8
  this.page = 1;
9
+ this.data = {};
9
10
  this.onMeetingCreated = (s, t) => {
10
11
  this.meetings.push(t);
11
12
  };
@@ -31,4 +32,7 @@ __decorate([
31
32
  __decorate([
32
33
  observable
33
34
  ], State.prototype, "page", void 0);
35
+ __decorate([
36
+ observable
37
+ ], State.prototype, "data", void 0);
34
38
  //# sourceMappingURL=state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../../src/modules/meeting/pages/MeetingList/state.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAGlC,MAAM,OAAO,KAAK;IACjB,YAA2B,MAAoB;QAApB,WAAM,GAAN,MAAM,CAAc;QAC5B,aAAQ,GAAe,EAAE,CAAC;QAC1B,YAAO,GAAY,IAAI,CAAC;QACxB,SAAI,GAAW,CAAC,CAAC;QACjB,SAAI,GAAmB,EAAE,CAAC;QAEtC,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,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,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;YACjE,CAAC,CAAC;QACH,CAAC,CAAC;IArBgD,CAAC;CAsBnD;AArBY;IAAX,UAAU;uCAAkC;AACjC;IAAX,UAAU;sCAAgC;AAC/B;IAAX,UAAU;mCAAyB;AACxB;IAAX,UAAU;mCAAkC"}
@@ -1,72 +1,60 @@
1
1
  import React, { useContext, useEffect, useState } from "react";
2
- import { Button, Icon, Row, Skeleton, Tabs } from "@voplus/antd";
2
+ import { Icon, Skeleton, Tabs } from "@voplus/antd";
3
3
  import Comment from "@voplus/morpho-collaboration/es/components/Comment";
4
4
  import DocumentList from "@voplus/morpho-document/es/components/DocumentList";
5
5
  import AsideContent from "@voplus/morpho-ui/es/components/layout/AsideContent";
6
6
  import RichTextEditor from "@voplus/morpho-ui/es/controls/RichTextEditor";
7
7
  import { useObserver } from "mobx-react-lite";
8
8
  import ActivityLog from "../../../../components/ActivityLog";
9
- import ToolBar from "../../../../components/ToolBar";
10
- import { useLayout, useTabItem } from "@voplus/morpho-data";
9
+ import { useTabItem } from "@voplus/morpho-data";
11
10
  import { __RouterContext } from "react-router";
12
11
  import { useMeeting, useMeetingStore } from "../../../../data/meeting";
13
12
  import "../../../../styles/common.less";
14
13
  import AgendaList from "../../components/AgendaList";
15
- import MeetingItem from "../../components/MeetingItem";
14
+ import MeetingHeader from "../../components/MeetingHeader";
16
15
  import styles from "./index.less";
17
- import { useDocumentStore } from "@voplus/morpho-document";
18
16
  const MeetingTabView = () => {
19
17
  const { match } = useContext(__RouterContext);
20
18
  const id = match.params.id;
21
- const meeting = useMeeting(id, { reload: true });
19
+ const [reload, setReload] = useState(true);
20
+ const meeting = useMeeting(id, { reload: reload });
22
21
  const readonly = meeting.status === "Readonly";
23
22
  const tab = useTabItem();
24
23
  tab.title = "Meeting Detail";
25
24
  const meetingStore = useMeetingStore();
26
- const documentStore = useDocumentStore();
27
- const [scrollParentRef, setScrollParentRef] = useState();
28
25
  const [asideContext] = useState(AsideContent.createContext());
29
- const layout = useLayout();
26
+ const onReLoad = () => {
27
+ setReload(!reload);
28
+ };
30
29
  useEffect(() => {
31
30
  asideContext.openAside(AsideElement, { span: 12 });
32
31
  }, []);
33
- const onDelete = async () => {
34
- layout.history.push(`/meeting`);
35
- layout.tabNav.remove(tab);
36
- await meetingStore.delete(id, { DeleteChilds: true });
37
- };
38
- const onLock = () => {
39
- documentStore.edit(id, { Status: "Readonly" });
40
- };
41
- const onUnlock = () => {
42
- documentStore.edit(id, { Status: "Normal" });
43
- };
32
+ useObserver(() => {
33
+ useEffect(() => {
34
+ if (!reload)
35
+ setReload(true);
36
+ }, [reload]);
37
+ });
44
38
  const AsideElement = (React.createElement("div", { className: "module-tab-view_aside" },
45
39
  React.createElement(Tabs, { defaultActiveKey: "1" },
46
40
  React.createElement(Tabs.TabPane, { tab: "Documents", key: "1" },
47
- React.createElement(DocumentList, { id: id })),
41
+ React.createElement(DocumentList, { id: id, exclude: ["Agenda"] })),
48
42
  React.createElement(Tabs.TabPane, { tab: "Comments", key: "2" },
49
43
  React.createElement(Comment, { channelId: id })),
50
44
  React.createElement(Tabs.TabPane, { tab: "Activities", key: "3" },
51
45
  React.createElement("div", { className: "module-box" },
52
46
  React.createElement(ActivityLog, { showHeader: false }))))));
53
- return useObserver(() => (React.createElement("div", { className: "module-tab-view" },
54
- React.createElement(AsideContent, { context: asideContext },
55
- React.createElement("div", { className: styles["meeting-tab-view"], ref: ref => setScrollParentRef(ref) },
56
- React.createElement("div", { className: "meeting-tab-view_header" },
57
- React.createElement(Skeleton, { loading: !meeting.loaded },
58
- React.createElement(Row, { type: "flex", justify: "space-between", className: "margin-bottom-10" },
59
- React.createElement(MeetingItem, { id: id, isDetail: true }),
60
- React.createElement("div", { className: styles["meeting-tool-bar"] },
61
- React.createElement(ToolBar, { id: id, onDelete: onDelete, lock: meeting.status === "Draft" || meeting.status === "Normal", unlock: meeting.status === "Readonly", onLock: onLock, onUnlock: onUnlock, onOpen: () => asideContext.asideContent
62
- ? asideContext.closeAside()
63
- : asideContext.openAside(AsideElement, { span: 12 }) }),
64
- React.createElement("div", { className: "margin-top-10" },
65
- React.createElement(Button, { size: "small" }, "+tag")))),
66
- React.createElement(RichTextEditor, { readOnly: readonly, editable: false, content: meeting.description, placeholder: React.createElement("span", null,
67
- React.createElement(Icon, { type: "edit" }),
68
- "Add Description"), onSave: v => meetingStore.edit(id, { Description: v }) }))),
69
- React.createElement(AgendaList, { preview: true, readOnly: readonly, parentId: id }))))));
47
+ return useObserver(() => (React.createElement("div", { className: "module-tab-view" }, reload && (React.createElement(AsideContent, { context: asideContext },
48
+ React.createElement("div", { className: styles["meeting-tab-view"] },
49
+ React.createElement("div", { className: "meeting-tab-view_header" },
50
+ React.createElement(MeetingHeader, { id: id, onReLoad: onReLoad, onExpand: () => asideContext.asideContent
51
+ ? asideContext.closeAside()
52
+ : asideContext.openAside(AsideElement, { span: 12 }) }),
53
+ React.createElement(Skeleton, { loading: !meeting.loaded },
54
+ React.createElement(RichTextEditor, { readOnly: readonly, editable: false, content: meeting.description || "", placeholder: React.createElement("span", null,
55
+ React.createElement(Icon, { type: "edit" }),
56
+ "Add Description"), onSave: v => meetingStore.edit(id, { Description: v }) }))),
57
+ React.createElement(AgendaList, { preview: true, readOnly: readonly, parentId: id })))))));
70
58
  };
71
59
  export default MeetingTabView;
72
60
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/meeting/pages/MeetingTabView/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/meeting/pages/MeetingTabView/index.tsx"],"names":[],"mappings":"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"}
@@ -9,6 +9,10 @@
9
9
  :global {
10
10
  .meeting-tab-view_header {
11
11
  padding: 10px 20px;
12
+ .meeting-item-detail {
13
+ padding: 0;
14
+ margin-bottom: 10px;
15
+ }
12
16
  }
13
17
  }
14
18
  }
@@ -12,12 +12,6 @@ declare const Routes: {
12
12
  getUrl: (id: string) => string;
13
13
  component: () => JSX.Element;
14
14
  };
15
- Tab: {
16
- route: string;
17
- tabPattern: RegExp;
18
- getUrl: (id: string) => string;
19
- component: () => JSX.Element;
20
- };
21
15
  addRoutes: () => void;
22
16
  };
23
17
  export default Routes;
@@ -1,21 +1,19 @@
1
1
  import React from "react";
2
2
  import { Route, Switch } from "react-router";
3
3
  import { BaseRoutes } from "@voplus/morpho-data";
4
- import TaskDefaultView from "./pages/TaskDefaultView";
5
- import TaskListView from "./pages/TaskListView";
4
+ import TaskList from "./pages/TaskList";
6
5
  import TaskTabView from "./pages/TaskTabView";
7
6
  const TaskRoutes = () => {
8
7
  return (React.createElement(Switch, null,
9
8
  React.createElement(Route, { path: Routes.TaskList.route, exact: true, component: Routes.TaskList.component }),
10
- React.createElement(Route, { path: Routes.Task.route, exact: true, component: Routes.Task.component }),
11
- React.createElement(Route, { path: Routes.Tab.route, exact: true, component: Routes.Tab.component })));
9
+ React.createElement(Route, { path: Routes.Task.route, exact: true, component: Routes.Task.component })));
12
10
  };
13
11
  const Routes = {
14
12
  TaskList: {
15
13
  route: "/tasks",
16
14
  tabPattern: RegExp("/tasks"),
17
15
  getUrl: () => `/tasks`,
18
- component: TaskListView
16
+ component: TaskList
19
17
  },
20
18
  Task: {
21
19
  route: "/tasks/:id",
@@ -23,12 +21,6 @@ const Routes = {
23
21
  getUrl: (id) => `/tasks/${id}`,
24
22
  component: TaskTabView
25
23
  },
26
- Tab: {
27
- route: "/tasks/tab/:id",
28
- tabPattern: RegExp("/tasks/tab/[^/]+"),
29
- getUrl: (id) => `/tasks/tab/${id}`,
30
- component: TaskDefaultView
31
- },
32
24
  addRoutes: () => {
33
25
  BaseRoutes.routes.push({
34
26
  name: "task",
@@ -1 +1 @@
1
- {"version":3,"file":"TasksRoutes.js","sourceRoot":"","sources":["../../../src/modules/tasks/TasksRoutes.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,eAAe,MAAM,yBAAyB,CAAC;AACtD,OAAO,YAAY,MAAM,sBAAsB,CAAC;AAChD,OAAO,WAAW,MAAM,qBAAqB,CAAC;AAE9C,MAAM,UAAU,GAAG,GAAG,EAAE;IACvB,OAAO,CACN,oBAAC,MAAM;QACN,oBAAC,KAAK,IAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS,GAAI;QACzF,oBAAC,KAAK,IAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,GAAI;QACjF,oBAAC,KAAK,IAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,GAAI,CACvE,CACT,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG;IACd,QAAQ,EAAE;QACT,KAAK,EAAE,QAAQ;QACf,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC;QAC5B,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ;QACtB,SAAS,EAAE,YAAY;KACvB;IACD,IAAI,EAAE;QACL,KAAK,EAAE,YAAY;QACnB,UAAU,EAAE,MAAM,CAAC,cAAc,CAAC;QAClC,MAAM,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE;QACtC,SAAS,EAAE,WAAW;KACtB;IACD,GAAG,EAAE;QACJ,KAAK,EAAE,gBAAgB;QACvB,UAAU,EAAE,MAAM,CAAC,kBAAkB,CAAC;QACtC,MAAM,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,cAAc,EAAE,EAAE;QAC1C,SAAS,EAAE,eAAe;KAC1B;IAED,SAAS,EAAE,GAAG,EAAE;QACf,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC;YACtB,IAAI,EAAE,MAAM;YACZ,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU;YACtC,SAAS,EAAE,oBAAC,UAAU,OAAG;SACzB,CAAC,CAAC;QACH,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC;YACtB,IAAI,EAAE,WAAW;YACjB,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU;YAC1C,SAAS,EAAE,oBAAC,UAAU,OAAG;SACzB,CAAC,CAAC;IACJ,CAAC;CACD,CAAC;AAEF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"TasksRoutes.js","sourceRoot":"","sources":["../../../src/modules/tasks/TasksRoutes.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,QAAQ,MAAM,kBAAkB,CAAC;AACxC,OAAO,WAAW,MAAM,qBAAqB,CAAC;AAE9C,MAAM,UAAU,GAAG,GAAG,EAAE;IACvB,OAAO,CACN,oBAAC,MAAM;QACN,oBAAC,KAAK,IAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS,GAAI;QACzF,oBAAC,KAAK,IAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,GAAI,CACzE,CACT,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG;IACd,QAAQ,EAAE;QACT,KAAK,EAAE,QAAQ;QACf,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC;QAC5B,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ;QACtB,SAAS,EAAE,QAAQ;KACnB;IACD,IAAI,EAAE;QACL,KAAK,EAAE,YAAY;QACnB,UAAU,EAAE,MAAM,CAAC,cAAc,CAAC;QAClC,MAAM,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE;QACtC,SAAS,EAAE,WAAW;KACtB;IAED,SAAS,EAAE,GAAG,EAAE;QACf,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC;YACtB,IAAI,EAAE,MAAM;YACZ,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU;YACtC,SAAS,EAAE,oBAAC,UAAU,OAAG;SACzB,CAAC,CAAC;QACH,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC;YACtB,IAAI,EAAE,WAAW;YACjB,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU;YAC1C,SAAS,EAAE,oBAAC,UAAU,OAAG;SACzB,CAAC,CAAC;IACJ,CAAC;CACD,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -1,13 +1,9 @@
1
1
  import classnames from "classnames";
2
2
  import React, { useEffect, useRef, useState } from "react";
3
- import SortDnD from "@voplus/morpho-ui/es/controls/SortDnD";
4
- // import PageListView from "@voplus/morpho-ui/es/controls/PageListView";
5
- import PageListView from "../../../../components/PageListView";
6
- import SortViewDropdown from "../../../../controls/SortViewDropdown";
3
+ import { ListView } from "@voplus/morpho-ui";
7
4
  import TaskItem from "../TaskItem";
8
5
  import "./index.less";
9
6
  import { FileStore } from "@voplus/morpho-document/es/data/FileStore/FileContext";
10
- import FilterListDropdown from "@voplus/morpho-ui/es/components/layout/ListView/controls/FilterListDropdown";
11
7
  import { toJS } from "mobx";
12
8
  import { useObserver } from "mobx-react-lite";
13
9
  import { useTaskListEffect, useTaskStore } from "../../../../data/task";
@@ -45,13 +41,17 @@ const SubTaskList = (props) => {
45
41
  state.loading = true;
46
42
  state.page = state.page + 1;
47
43
  };
44
+ const onMove = (ids) => {
45
+ store.onMove(ids);
46
+ };
48
47
  const onSort = async (value) => {
49
48
  reset();
50
49
  state.data = value;
51
50
  };
52
51
  const onFilter = async (value) => {
53
52
  reset();
54
- state.filters = value;
53
+ const { status, assignee, created, labels, dueDate } = value;
54
+ state.filters = status;
55
55
  };
56
56
  // order by sub task
57
57
  const moveAfter = async (id, afterId, list) => {
@@ -70,7 +70,7 @@ const SubTaskList = (props) => {
70
70
  state.page = 1;
71
71
  state.tasks = [];
72
72
  state.loading = true;
73
- ref.current.reset();
73
+ // ref.current!.reset();
74
74
  };
75
75
  const scrollParentRef = useRef();
76
76
  const ref = useRef();
@@ -81,9 +81,29 @@ const SubTaskList = (props) => {
81
81
  }, [props.parentId]);
82
82
  return useObserver(() => (React.createElement(React.Fragment, null,
83
83
  React.createElement("div", { className: classnames("sub-task-list", props.className) },
84
- !state.showMore && (React.createElement(PageListView, { ref: ref, header: !!props.header, addAble: !readonly, title: "Sub-Tasks", data: state.tasks, page: state.page, loading: state.loading, loadMore: loadMore, onDelete: onDelete, onAdd: () => (state.addAble = true), scrollParentRef: scrollParentRef && scrollParentRef.current && scrollParentRef.current.view, extra: React.createElement(React.Fragment, null,
85
- React.createElement(SortViewDropdown, { onChange: data => onSort(data), onReset: onSort }),
86
- React.createElement(FilterListDropdown, { status: state.filters, onChange: ({ value }) => onFilter(value) })) }, (list, multiple) => (React.createElement(SortDnD, { list: list, moveAfter: moveAfter, text: (task, index, connectDragSource) => (React.createElement(TaskItem, { type: "sub", id: task.id, index: index, connectDragSource: connectDragSource, multiple: multiple, readonly: readonly })) })))),
84
+ !state.showMore && (React.createElement(ListView
85
+ // ref={ref}
86
+ , {
87
+ // ref={ref}
88
+ renderId: props.parentId, addAble: !readonly, subTitle: "Sub-Tasks", showMultiple: true, filterView: true, data: state.tasks, page: state.page, loading: state.loading, loadMore: loadMore, onDelete: onDelete, onMove: onMove, onSort: onSort, onFilter: onFilter, onAdd: () => (state.addAble = true), moveAfter: moveAfter, renderItem: ({ item, index, connectDragSource, multiple }) => (React.createElement(TaskItem, { type: "sub", id: item.id, index: index, connectDragSource: connectDragSource, multiple: multiple, readonly: readonly })) })
89
+ /* {(list: any[], multiple: boolean) => (
90
+ <SortDnD
91
+ list={list}
92
+ moveAfter={moveAfter}
93
+ text={(task: any, index: number, connectDragSource: any) => (
94
+ <TaskItem
95
+ type="sub"
96
+ id={task.id}
97
+ index={index}
98
+ connectDragSource={connectDragSource}
99
+ multiple={multiple}
100
+ readonly={readonly}
101
+ />
102
+ )}
103
+ />
104
+ )}
105
+ </ListView> */
106
+ ),
87
107
  state.addAble && (React.createElement(NewTaskForm, { simple: true, parentId: props.parentId, block: true, onSave: onCancel, onCancel: onCancel, onShowMore: () => (state.showMore = !state.showMore) }))))));
88
108
  };
89
109
  SubTaskList.defaultProps = {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/tasks/components/SubTaskList/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/tasks/components/SubTaskList/index.tsx"],"names":[],"mappings":"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"}
@@ -5,74 +5,10 @@
5
5
  display: flex;
6
6
  flex-direction: column;
7
7
  height: 100%;
8
- .sub-task-list_header {
9
- position: relative;
10
- display: flex;
11
- justify-content: space-between;
12
- align-items: center;
13
- // padding: 2px 0 10px 0;
14
- padding: 10px 0;
15
- margin: 0 20px;
16
- color: #000;
8
+ .multiple-icon-text {
17
9
  font-size: 15px;
18
- font-weight: 500;
19
- line-height: 15px;
20
- .multiple-icon-text {
21
- cursor: pointer;
22
- .ant-btn {
23
- padding: 0 10px 0 0;
24
- font-size: 16px;
25
- }
26
- }
27
- .select-operate-btn {
28
- .ant-btn {
29
- padding: 0 10px;
30
- font-style: italic;
31
- }
32
- .del-btn {
33
- color: #ff4d4f;
34
- &:hover {
35
- color: #ff7875;
36
- }
37
- }
38
- .cancel-btn {
39
- color: #666;
40
- &:hover {
41
- color: @primary-color;
42
- }
43
- }
44
- }
45
- .operate-icon span {
46
- margin-left: 10px;
47
- cursor: pointer;
48
- }
49
- .plus-icon {
50
- display: inline-block;
51
- padding: 4px;
52
- font-size: 13px;
53
- line-height: 1px;
54
- background: #1abc9c;
55
- cursor: pointer;
56
- }
57
- }
58
- .sub-task-list_header:after {
59
- position: absolute;
60
- content: "";
61
- left: 0;
62
- bottom: 0;
63
- right: 0;
64
- border-bottom: 1px solid @border-color-base;
65
- }
66
- .sub-task-list_page {
67
- flex: 1;
68
- // overflow-x: hidden;
69
- padding: 10px 0 20px 0;
70
- .task-row-item {
71
- padding: 0 20px;
72
- }
73
- .select-checkbox {
74
- padding: 5px 10px 0 0;
75
- }
10
+ font-weight: 600;
11
+ color: #000;
76
12
  }
77
13
  }
78
14
  }
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ declare const TaskDescription: (props: {
3
+ id: string;
4
+ readonly?: boolean | undefined;
5
+ }) => JSX.Element;
6
+ export default TaskDescription;
@@ -0,0 +1,33 @@
1
+ import { faEdit } from "@fortawesome/pro-light-svg-icons";
2
+ import { FontAwesomeIcon as FAIcon } from "@fortawesome/react-fontawesome";
3
+ import { Skeleton } from "@voplus/antd";
4
+ import RichTextEditor from "@voplus/morpho-ui/es/controls/RichTextEditor";
5
+ import { useObserver } from "mobx-react-lite";
6
+ import React, { useEffect, useState } from "react";
7
+ import { useTaskStore } from "../../../../data/task";
8
+ import { useTask } from "../../../../data/task/hooks";
9
+ import SubTaskList from "../SubTaskList";
10
+ import styles from "./index.less";
11
+ const TaskDescription = (props) => {
12
+ const tasks = useTaskStore();
13
+ const id = props.id;
14
+ useEffect(() => {
15
+ task.loaded = false;
16
+ }, [id]);
17
+ useEffect(() => {
18
+ setReload(props.readonly ? true : false);
19
+ }, [props.readonly]);
20
+ const [reload, setReload] = useState(false);
21
+ const task = useTask(id, { reload: reload });
22
+ const readonly = task.status === "Readonly" ? true : false;
23
+ const [scrollParentRef, setScrollParentRef] = useState();
24
+ return useObserver(() => (React.createElement("div", { className: styles["sub-task-tab-view"], ref: ref => setScrollParentRef(ref) },
25
+ React.createElement("div", { className: "task-description" },
26
+ React.createElement(Skeleton, { loading: !task.loaded, active: true },
27
+ React.createElement(RichTextEditor, { readOnly: readonly, editable: false, defaultValue: id, content: task.description || "", placeholder: readonly ? ("No description") : (React.createElement("span", null,
28
+ React.createElement(FAIcon, { icon: faEdit }),
29
+ "Add Description")), onSave: v => tasks.edit(task.id, { Description: v }) }))),
30
+ React.createElement(SubTaskList, { parentId: id, readonly: readonly, scrollParentRef: scrollParentRef }))));
31
+ };
32
+ export default TaskDescription;
33
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/tasks/components/TaskDescription/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAC1D,OAAO,EAAE,eAAe,IAAI,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,cAAc,MAAM,8CAA8C,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEnD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,WAAW,MAAM,gBAAgB,CAAC;AACzC,OAAO,MAAM,MAAM,cAAc,CAAC;AAElC,MAAM,eAAe,GAAG,CAAC,KAAyC,EAAE,EAAE;IACrE,MAAM,KAAK,GAAG,YAAa,EAAE,CAAC;IAC9B,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC;IACpB,SAAU,CAAC,GAAG,EAAE;QACf,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACrB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACT,SAAS,CAAC,GAAG,EAAE;QACd,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACrB,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,OAAO,CAAC,EAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAC3D,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,EAAE,CAAC;IAEzD,OAAO,WAAW,CAAC,GAAG,EAAE,CAAC,CACxB,6BAAK,SAAS,EAAE,MAAM,CAAC,mBAAmB,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC;QAC/E,6BAAK,SAAS,EAAC,kBAAkB;YAChC,oBAAC,QAAQ,IAAC,OAAO,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM;gBACtC,oBAAC,cAAc,IACd,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,KAAK,EACf,YAAY,EAAE,EAAE,EAChB,OAAO,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE,EAC/B,WAAW,EACV,QAAQ,CAAC,CAAC,CAAC,CACV,gBAAgB,CAChB,CAAC,CAAC,CAAC,CACH;wBACC,oBAAC,MAAM,IAAC,IAAI,EAAE,MAAM,GAAI;0CAElB,CACP,EAEF,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,GACnD,CACQ,CACN;QACN,oBAAC,WAAW,IAAC,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,eAAe,GAAI,CAC9E,CACN,CAAC,CAAC;AACJ,CAAC,CAAC;AACF,eAAe,eAAe,CAAC"}
@@ -0,0 +1,11 @@
1
+ @import "../../../../styles/common.less";
2
+ .sub-task-tab-view {
3
+ display: flex;
4
+ flex-direction: column;
5
+ height: 100%;
6
+ :global {
7
+ .task-description {
8
+ padding: 10px 20px;
9
+ }
10
+ }
11
+ }
@@ -1,75 +1,39 @@
1
- import React, { useEffect, useState } from "react";
2
- import { faEdit } from "@fortawesome/pro-light-svg-icons";
3
- import { FontAwesomeIcon as FAIcon } from "@fortawesome/react-fontawesome";
4
- import { Button, Row, Skeleton, Tabs } from "@voplus/antd";
1
+ import { Spin, Tabs } from "@voplus/antd";
5
2
  import Comment from "@voplus/morpho-collaboration/es/components/Comment";
6
- import { useDocumentStore } from "@voplus/morpho-document";
7
3
  import DocumentList from "@voplus/morpho-document/es/components/DocumentList";
8
- import ActivityLog from "../../../../components/ActivityLog";
9
- import ToolBar from "../../../../components/ToolBar";
10
- import SubTaskList from "../SubTaskList";
11
- import TaskItem from "../TaskItem";
12
- import { useAsideContentContext } from "@voplus/morpho-ui/es/components/layout/AsideContent";
13
4
  import { useObserver } from "mobx-react-lite";
14
- import { useTaskStore } from "../../../../data/task";
5
+ import React, { useEffect, useState } from "react";
6
+ import ActivityLog from "../../../../components/ActivityLog";
15
7
  import { useTask } from "../../../../data/task/hooks";
16
- // import { FileStore } from "@voplus/morpho-document/es/data/FileStore/FileContext";
17
- import { FileStore } from "@voplus/morpho-document/es/data/FileStore/FileContext";
18
- import RichTextEditor from "@voplus/morpho-ui/es/controls/RichTextEditor";
19
- import styles from "./index.less";
20
- // id of the task
8
+ import TaskDescription from "../TaskDescription";
9
+ import TaskHeader from "../TaskHeader";
21
10
  const TaskDetail = (props) => {
22
- // const { match } = useContext(__RouterContext) as {
23
- // match: match<any>;
24
- // };
25
- const tasks = useTaskStore();
26
- const documents = useDocumentStore();
27
11
  const id = props.id;
28
- useEffect(() => {
29
- task.loaded = false;
30
- }, [id]);
31
- const [store] = useState(new FileStore());
32
- const task = useTask(id, { reload: true });
33
- const readonly = task.status === "Readonly" ? true : false;
34
- const [scrollParentRef, setScrollParentRef] = useState();
35
- const asideContext = useAsideContentContext();
36
- const onItemDelete = async () => {
37
- await tasks.delete([id], { DeleteChilds: true });
38
- asideContext.closeAside();
39
- };
40
- const onMove = () => {
41
- store.onMove([id]);
12
+ const [reload, setReload] = useState(true);
13
+ const task = useTask(id, { reload: reload });
14
+ const [readonly, setReadonly] = useState();
15
+ const onChangeReadonly = (newReadonly) => {
16
+ setReadonly(newReadonly);
42
17
  };
43
- const onLock = () => {
44
- documents.edit(task.id, { Status: "Readonly" });
18
+ const onReLoad = () => {
19
+ setReload(!reload);
45
20
  };
46
- const onUnlock = () => {
47
- documents.edit(task.id, { Status: "Normal" });
48
- };
49
- return useObserver(() => (React.createElement("div", { className: "module-detail-view" },
50
- React.createElement(Row, { type: "flex", justify: "space-between", className: "module-view-header" },
51
- React.createElement(Skeleton, { loading: !task.loaded, active: true },
52
- React.createElement(TaskItem, { type: "detail", id: task.id }),
53
- React.createElement("div", { className: styles["task-tool-bar"] },
54
- React.createElement(ToolBar, { id: id, size: "small", timer: true, url: `/tasks/${id}`, del: !readonly, move: !readonly, lock: task.status === "Draft" || task.status === "Normal", unlock: task.status === "Readonly", onDelete: onItemDelete, onMove: onMove, onPaste: () => store.onPaste(() => tasks.move(store.moveIds, task.id)), onLock: onLock, onUnlock: onUnlock }),
55
- React.createElement("div", { className: "margin-top-10" },
56
- React.createElement(Button, { size: "small" }, "+tag"))))),
21
+ useEffect(() => {
22
+ if (!reload && task.loaded)
23
+ setReload(true);
24
+ }, [reload]);
25
+ return useObserver(() => reload ? (React.createElement("div", { className: "module-detail-view" },
26
+ React.createElement(TaskHeader, { id: id, onChangeReadonly: onChangeReadonly, onReLoad: onReLoad }),
57
27
  React.createElement(Tabs, { defaultActiveKey: "Details" },
58
28
  React.createElement(Tabs.TabPane, { tab: "Details", key: "Details" },
59
- React.createElement("div", { className: styles["sub-task-tab-view"], ref: ref => setScrollParentRef(ref) },
60
- React.createElement("div", { className: "task-description" },
61
- React.createElement(Skeleton, { loading: !task.loaded, active: true },
62
- React.createElement(RichTextEditor, { readOnly: readonly, editable: false, defaultValue: id, content: task.description || "", placeholder: readonly ? ("No description") : (React.createElement("span", null,
63
- React.createElement(FAIcon, { icon: faEdit }),
64
- "Add Description")), onSave: v => tasks.edit(task.id, { Description: v }) }))),
65
- React.createElement(SubTaskList, { parentId: id, readonly: readonly, scrollParentRef: scrollParentRef }))),
29
+ React.createElement(TaskDescription, { id: id, readonly: readonly })),
66
30
  React.createElement(Tabs.TabPane, { tab: "Documents", key: "Documents" },
67
- React.createElement(DocumentList, { id: id })),
31
+ React.createElement(DocumentList, { id: id, exclude: ["Task"] })),
68
32
  React.createElement(Tabs.TabPane, { tab: "Comments", key: "Comments" },
69
33
  React.createElement(Comment, { channelId: task.channelId })),
70
34
  React.createElement(Tabs.TabPane, { tab: "Activities", key: "Activities" },
71
35
  React.createElement("div", { className: "module-box" },
72
- React.createElement(ActivityLog, null)))))));
36
+ React.createElement(ActivityLog, null)))))) : (React.createElement(Spin, null)));
73
37
  };
74
38
  export default TaskDetail;
75
39
  //# sourceMappingURL=index.js.map