@voplus/morpho-workspace 11.2.2 → 11.2.4
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/Modules.js +2 -0
- package/es/Modules.js.map +1 -1
- package/es/data/worktype/metas.d.ts +12 -0
- package/es/data/worktype/metas.js +23 -0
- package/es/data/worktype/metas.js.map +1 -0
- package/es/modules/calendar/pages/CalendarMonth/index.d.ts +0 -1
- package/es/modules/calendar/pages/CalendarMonth/index.js +56 -24
- package/es/modules/calendar/pages/CalendarMonth/index.js.map +1 -1
- package/es/modules/tasks/components/TaskItem/SubTaskItem.js +4 -1
- package/es/modules/tasks/components/TaskItem/SubTaskItem.js.map +1 -1
- package/es/modules/work/work-schedule/components/WorkScheduleProperties/index.js +2 -3
- package/es/modules/work/work-schedule/components/WorkScheduleProperties/index.js.map +1 -1
- package/es/modules/work/work-type/components/WorkTypeLink/index.d.ts +7 -0
- package/es/modules/work/work-type/components/WorkTypeLink/index.js +16 -0
- package/es/modules/work/work-type/components/WorkTypeLink/index.js.map +1 -0
- package/es/modules/work/work-type/components/WorkTypeList/index.d.ts +5 -2
- package/es/modules/work/work-type/components/WorkTypeList/index.js +8 -6
- package/es/modules/work/work-type/components/WorkTypeList/index.js.map +1 -1
- package/es/routes.js +2 -2
- package/es/routes.js.map +1 -1
- package/package.json +1 -1
- package/es/modules/calendar-board/CalendarBoardRoutes.d.ts +0 -12
- package/es/modules/calendar-board/CalendarBoardRoutes.js +0 -28
- package/es/modules/calendar-board/CalendarBoardRoutes.js.map +0 -1
- package/es/modules/calendar-board/components/CalendarBoardGrid/index.d.ts +0 -45
- package/es/modules/calendar-board/components/CalendarBoardGrid/index.js +0 -48
- package/es/modules/calendar-board/components/CalendarBoardGrid/index.js.map +0 -1
- package/es/modules/calendar-board/components/CalendarEventChip/index.d.ts +0 -22
- package/es/modules/calendar-board/components/CalendarEventChip/index.js +0 -20
- package/es/modules/calendar-board/components/CalendarEventChip/index.js.map +0 -1
- package/es/modules/calendar-board/components/CalendarLegend/index.d.ts +0 -37
- package/es/modules/calendar-board/components/CalendarLegend/index.js +0 -81
- package/es/modules/calendar-board/components/CalendarLegend/index.js.map +0 -1
- package/es/modules/calendar-board/components/CalendarMoreLink/index.d.ts +0 -11
- package/es/modules/calendar-board/components/CalendarMoreLink/index.js +0 -12
- package/es/modules/calendar-board/components/CalendarMoreLink/index.js.map +0 -1
- package/es/modules/calendar-board/components/CalendarSidebar/index.d.ts +0 -27
- package/es/modules/calendar-board/components/CalendarSidebar/index.js +0 -43
- package/es/modules/calendar-board/components/CalendarSidebar/index.js.map +0 -1
- package/es/modules/calendar-board/components/CalendarToolbar/index.d.ts +0 -23
- package/es/modules/calendar-board/components/CalendarToolbar/index.js +0 -28
- package/es/modules/calendar-board/components/CalendarToolbar/index.js.map +0 -1
- package/es/modules/calendar-board/event-meta.d.ts +0 -160
- package/es/modules/calendar-board/event-meta.js +0 -209
- package/es/modules/calendar-board/event-meta.js.map +0 -1
- package/es/modules/calendar-board/pages/CalendarBoard/index.css +0 -262
- package/es/modules/calendar-board/pages/CalendarBoard/index.d.ts +0 -4
- package/es/modules/calendar-board/pages/CalendarBoard/index.js +0 -201
- package/es/modules/calendar-board/pages/CalendarBoard/index.js.map +0 -1
- package/es/modules/calendar-board/pages/CalendarBoard/state.d.ts +0 -111
- package/es/modules/calendar-board/pages/CalendarBoard/state.js +0 -227
- package/es/modules/calendar-board/pages/CalendarBoard/state.js.map +0 -1
- package/es/modules/calendar-board/sidebar-data.d.ts +0 -27
- package/es/modules/calendar-board/sidebar-data.js +0 -19
- package/es/modules/calendar-board/sidebar-data.js.map +0 -1
- package/es/modules/work/work-type/components/WorkTypeList/index.css +0 -5
package/es/Modules.js
CHANGED
|
@@ -9,6 +9,7 @@ import { TaskTypeMeta } from "./data/task/metas";
|
|
|
9
9
|
import { BoardTypeMeta } from "./data/board/metas";
|
|
10
10
|
import { WorkMeta } from "./data/work/metas";
|
|
11
11
|
import { WorkScheduleMeta } from "./data/work-schedule/metas";
|
|
12
|
+
import { WorkTypeMeta } from "./data/worktype/metas";
|
|
12
13
|
import registerItems from "@voplus/morpho-fields/es/fields/registerItems";
|
|
13
14
|
import Routes from "./routes";
|
|
14
15
|
const Modules = {
|
|
@@ -43,6 +44,7 @@ const Modules = {
|
|
|
43
44
|
store.addMeta(new TaskTypeMeta());
|
|
44
45
|
store.addMeta(new WorkMeta());
|
|
45
46
|
store.addMeta(new WorkScheduleMeta());
|
|
47
|
+
store.addMeta(new WorkTypeMeta());
|
|
46
48
|
// register routes.
|
|
47
49
|
Routes.addRoutes();
|
|
48
50
|
},
|
package/es/Modules.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modules.js","sourceRoot":"","sources":["../src/Modules.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,0EAA0E,CAAC;AACjH,OAAO,EAAE,uBAAuB,EAAE,MAAM,8EAA8E,CAAC;AACvH,OAAO,EAAE,iBAAiB,EAAE,MAAM,qDAAqD,CAAC;AACxF,OAAO,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAC;AACjF,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,aAAa,MAAM,+CAA+C,CAAC;AAC1E,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,MAAM,OAAO,GAAG;IACf,2CAA2C;IAC3C,QAAQ,EAAE,CAAC,OAAmB,EAAE,EAAE;QACjC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrD,OAAO,CAAC,eAAe,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtD,OAAO,CAAC,eAAe,CAAC,IAAI,kBAAkB,EAAE,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;YACtD,OAAO,CAAC,eAAe,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrD,MAAM,OAAO,GAAG,IAAI,iBAAiB,EAAE,CAAC;YACxC,aAAa,CAAC,OAAO,CAAC,CAAC;YACvB,OAAO,CAAC,aAAa,CAAC,gBAAgB,EAAE,IAAI,qBAAqB,EAAE,CAAC,CAAC;YACrE,OAAO,CAAC,aAAa,CAAC,kBAAkB,EAAE,IAAI,uBAAuB,EAAE,CAAC,CAAC;YACzE,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;aAAM,CAAC;YACP,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,QAAQ,CAAsB,CAAC;YACpF,OAAO,CAAC,aAAa,CAAC,gBAAgB,EAAE,IAAI,qBAAqB,EAAE,CAAC,CAAC;YACrE,OAAO,CAAC,aAAa,CAAC,kBAAkB,EAAE,IAAI,uBAAuB,EAAE,CAAC,CAAC;QAC1E,CAAC;QAED,4BAA4B;QAC5B,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,SAAS,CAAsB,CAAC;QACnF,KAAK,CAAC,OAAO,CAAC,IAAI,eAAe,EAAE,CAAC,CAAC;QACrC,KAAK,CAAC,OAAO,CAAC,IAAI,qBAAqB,EAAE,CAAC,CAAC;QAC3C,KAAK,CAAC,OAAO,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC;QACnC,KAAK,CAAC,OAAO,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;QAClC,KAAK,CAAC,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;QAC9B,KAAK,CAAC,OAAO,CAAC,IAAI,gBAAgB,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"Modules.js","sourceRoot":"","sources":["../src/Modules.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { IDocument, QuickViewProps } from "@voplus/morpho-document-core";
|
|
2
|
+
import { FilterOption } from "@voplus/morpho-data";
|
|
3
|
+
import { DefaultDocumentTypeMeta } from "@voplus/morpho-document";
|
|
4
|
+
/** Meta information for WorkType, used by global search and generic quick views. */
|
|
5
|
+
export declare class WorkTypeMeta extends DefaultDocumentTypeMeta {
|
|
6
|
+
static TypeName: string;
|
|
7
|
+
get name(): string;
|
|
8
|
+
getQuickView(document: IDocument, props: QuickViewProps): JSX.Element;
|
|
9
|
+
getListView(document: IDocument, props: {
|
|
10
|
+
filterOptions?: FilterOption[];
|
|
11
|
+
}): JSX.Element;
|
|
12
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { lazy } from "react";
|
|
2
|
+
import { DefaultDocumentTypeMeta } from "@voplus/morpho-document";
|
|
3
|
+
import { suspense } from "@voplus/morpho-ui/es/controls/Suspense";
|
|
4
|
+
const WorkTypeList = lazy(() => import("../../modules/work/work-type/components/WorkTypeList"));
|
|
5
|
+
const WorkTypeQuickViewDialog = lazy(() => import("../../modules/work/work-type/components/WorkTypeQuickViewDialog"));
|
|
6
|
+
/** Meta information for WorkType, used by global search and generic quick views. */
|
|
7
|
+
export class WorkTypeMeta extends DefaultDocumentTypeMeta {
|
|
8
|
+
static TypeName = "WorkType";
|
|
9
|
+
get name() {
|
|
10
|
+
return WorkTypeMeta.TypeName;
|
|
11
|
+
}
|
|
12
|
+
getQuickView(document, props) {
|
|
13
|
+
return suspense(WorkTypeQuickViewDialog)({
|
|
14
|
+
id: document.id,
|
|
15
|
+
visible: props.visible,
|
|
16
|
+
onCancel: props.onCancel,
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
getListView(document, props) {
|
|
20
|
+
return suspense(WorkTypeList)({ filterOptions: props.filterOptions });
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=metas.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metas.js","sourceRoot":"","sources":["../../../src/data/worktype/metas.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAG7B,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAElE,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,sDAAsD,CAAC,CAAC,CAAC;AAChG,MAAM,uBAAuB,GAAG,IAAI,CACnC,GAAG,EAAE,CAAC,MAAM,CAAC,iEAAiE,CAAC,CAC/E,CAAC;AAEF,oFAAoF;AACpF,MAAM,OAAO,YAAa,SAAQ,uBAAuB;IACjD,MAAM,CAAC,QAAQ,GAAG,UAAU,CAAC;IAEpC,IAAW,IAAI;QACd,OAAO,YAAY,CAAC,QAAQ,CAAC;IAC9B,CAAC;IAEM,YAAY,CAAC,QAAmB,EAAE,KAAqB;QAC7D,OAAO,QAAQ,CAAC,uBAAuB,CAAC,CAAC;YACxC,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;SACxB,CAAC,CAAC;IACJ,CAAC;IAEM,WAAW,CAAC,QAAmB,EAAE,KAAyC;QAChF,OAAO,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC;IACvE,CAAC"}
|
|
@@ -9,7 +9,7 @@ import { useDeepMemo, useTabItem } from "@voplus/morpho-data";
|
|
|
9
9
|
import { FontAwesomeIcon as FAIcon, faAngleLeftRegular, faAngleRightRegular, faCalendarSolid, } from "@voplus/morpho-ui/es/faIcons";
|
|
10
10
|
import { generateLightColorFromHash } from "@voplus/morpho-org/es/tools";
|
|
11
11
|
import { Scrollbars } from "react-custom-scrollbars-2";
|
|
12
|
-
import { Button, Select } from "antd";
|
|
12
|
+
import { Button, message, Select } from "antd";
|
|
13
13
|
import { runInAction } from "mobx";
|
|
14
14
|
import { State } from "./state";
|
|
15
15
|
import CalendarEventContent from "../../components/CalendarEventContent";
|
|
@@ -21,7 +21,6 @@ import FullCalendar from "@fullcalendar/react";
|
|
|
21
21
|
import dayGridPlugin from "@fullcalendar/daygrid";
|
|
22
22
|
import dayjs from "dayjs";
|
|
23
23
|
import "./index.css";
|
|
24
|
-
/** 旧版本的日历月视图,等新的月视图组件完成后再替换 */
|
|
25
24
|
const CalendarMonth = () => {
|
|
26
25
|
const tab = useTabItem();
|
|
27
26
|
const meta = useMetaStore();
|
|
@@ -37,6 +36,9 @@ const CalendarMonth = () => {
|
|
|
37
36
|
const [currentTime, setCurrentTime] = useState();
|
|
38
37
|
const [calendarApi, setCalendarApi] = useState();
|
|
39
38
|
const calendarRef = useRef(null);
|
|
39
|
+
const drops = useRef(new Map());
|
|
40
|
+
const dropRevision = useRef(0);
|
|
41
|
+
const listRevision = dropRevision.current;
|
|
40
42
|
const calendar = useCalendarStore();
|
|
41
43
|
/** 设置 日历 高度 */
|
|
42
44
|
const boxRef = useCallback((node) => {
|
|
@@ -60,15 +62,24 @@ const CalendarMonth = () => {
|
|
|
60
62
|
useRenderOnChange(() => filterState.options);
|
|
61
63
|
useCalendarListEffect(null, (list) => {
|
|
62
64
|
runInAction(() => {
|
|
63
|
-
list.map((item
|
|
65
|
+
state.listOptions = list.map((item) => {
|
|
64
66
|
item.backgroundColor = generateLightColorFromHash(item?.source?.type);
|
|
65
67
|
item.borderColor = generateLightColorFromHash(item?.source?.type);
|
|
66
68
|
item.source.title = item.title;
|
|
69
|
+
const dropped = drops.current.get(String(item.id));
|
|
70
|
+
// A load registered before saving finished can still contain the old dates.
|
|
71
|
+
if (dropped && (dropped.pending || dropped.revision > listRevision)) {
|
|
72
|
+
return { ...item, start: dropped.start, end: dropped.end };
|
|
73
|
+
}
|
|
74
|
+
if (dropped) {
|
|
75
|
+
dropped.start = item.start;
|
|
76
|
+
dropped.end = item.end;
|
|
77
|
+
}
|
|
78
|
+
return item;
|
|
67
79
|
});
|
|
68
|
-
state.listOptions = list;
|
|
69
80
|
});
|
|
70
81
|
}, filterState.options);
|
|
71
|
-
|
|
82
|
+
// spec:3929 — WS: 点击日历事件打开属性侧栏
|
|
72
83
|
const eventContent = (info) => {
|
|
73
84
|
return (React.createElement(CalendarEventContent, { source: info.event.extendedProps.source, onClick: () => {
|
|
74
85
|
asideContext.openAside(React.createElement(NodePropertiesView, { node: info.event.extendedProps.source }), {
|
|
@@ -129,28 +140,49 @@ const CalendarMonth = () => {
|
|
|
129
140
|
calendarApi.gotoDate(dateText);
|
|
130
141
|
}
|
|
131
142
|
}
|
|
132
|
-
/**
|
|
133
|
-
|
|
134
|
-
*
|
|
135
|
-
* TODO(已知缺陷,暂不修):本实现有三个问题,新的 CalendarBoard 已修好,可参照
|
|
136
|
-
* src/modules/calendar-board/pages/CalendarBoard/index.tsx 的 eventDrop。
|
|
137
|
-
*
|
|
138
|
-
* 1. `toISOString()` 写的是 UTC 时刻。仓库里其它写时间属性的地方都用本地时间串
|
|
139
|
-
* (见 MeetingHeader 的 StartTime/EndTime:dayjs(...).format("YYYY-MM-DDTHH:mm:ss.SSS"))。
|
|
140
|
-
* UTC+8 下把事件拖到某天零点,日期部分会退回前一天 —— 服务端按本地时间解析就存错日期。
|
|
141
|
-
* 2. `error: "message"` 会被 Store.action 吞掉(只弹 toast,不重新抛出),
|
|
142
|
-
* 保存失败时事件仍停在拖过去的位置、看着像成功。改用 error 回调显式判断并 revert。
|
|
143
|
-
* 3. 保存成功后没有把结果写回 state.listOptions;配合下面 eventSources={[state.listOptions]}
|
|
144
|
-
* 每次渲染都换新数组,事件源一旦重置就会把刚拖出去的事件打回原位。
|
|
145
|
-
*/
|
|
146
|
-
function eventDrop(info) {
|
|
143
|
+
/** 当拖动停止并且事件已移至其他日期/时间时触发。 */
|
|
144
|
+
async function eventDrop(info) {
|
|
147
145
|
const id = info.event.id;
|
|
148
|
-
const start = info.event.start.
|
|
149
|
-
if (info.event.extendedProps.allowChangeStart
|
|
150
|
-
|
|
146
|
+
const start = info.event.start ? dayjs(info.event.start) : undefined;
|
|
147
|
+
if (!info.event.extendedProps.allowChangeStart ||
|
|
148
|
+
!id ||
|
|
149
|
+
!start?.isValid() ||
|
|
150
|
+
drops.current.get(id)?.pending) {
|
|
151
|
+
info.revert();
|
|
152
|
+
return;
|
|
153
|
+
}
|
|
154
|
+
const before = state.listOptions.find((item) => String(item.id) === id);
|
|
155
|
+
if (!before) {
|
|
156
|
+
info.revert();
|
|
157
|
+
return;
|
|
151
158
|
}
|
|
152
|
-
|
|
159
|
+
const replaceEventDates = (dates) => {
|
|
160
|
+
runInAction(() => {
|
|
161
|
+
state.listOptions = state.listOptions.map((item) => String(item.id) === id ? { ...item, start: dates.start, end: dates.end } : item);
|
|
162
|
+
});
|
|
163
|
+
};
|
|
164
|
+
const change = {
|
|
165
|
+
start: info.event.start,
|
|
166
|
+
end: info.event.end,
|
|
167
|
+
revision: ++dropRevision.current,
|
|
168
|
+
pending: true,
|
|
169
|
+
};
|
|
170
|
+
drops.current.set(id, change);
|
|
171
|
+
replaceEventDates(change);
|
|
172
|
+
try {
|
|
173
|
+
// Calendar dates use local wall time; UTC conversion can shift the saved day.
|
|
174
|
+
await calendar.edit(id, { data: { Start: start.format("YYYY-MM-DDTHH:mm:ss.SSS") } });
|
|
175
|
+
}
|
|
176
|
+
catch (error) {
|
|
177
|
+
change.start = before.start;
|
|
178
|
+
change.end = before.end;
|
|
179
|
+
replaceEventDates(change);
|
|
153
180
|
info.revert();
|
|
181
|
+
message.error(error instanceof Error ? error.message : String(error));
|
|
182
|
+
}
|
|
183
|
+
finally {
|
|
184
|
+
change.pending = false;
|
|
185
|
+
change.revision = ++dropRevision.current;
|
|
154
186
|
}
|
|
155
187
|
}
|
|
156
188
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/calendar/pages/CalendarMonth/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxE,OAAO,EACN,YAAY,EACZ,OAAO,EACP,iBAAiB,EACjB,aAAa,IAAI,UAAU,GAC3B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,qDAAqD,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAC5F,OAAO,EAAa,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC/F,OAAO,kBAAkB,MAAM,+DAA+D,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EACN,eAAe,IAAI,MAAM,EACzB,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,GACf,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/calendar/pages/CalendarMonth/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxE,OAAO,EACN,YAAY,EACZ,OAAO,EACP,iBAAiB,EACjB,aAAa,IAAI,UAAU,GAC3B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,qDAAqD,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAC5F,OAAO,EAAa,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC/F,OAAO,kBAAkB,MAAM,+DAA+D,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EACN,eAAe,IAAI,MAAM,EACzB,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,GACf,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,oBAAoB,MAAM,uCAAuC,CAAC;AACzE,OAAO,YAAY,MAAM,2CAA2C,CAAC;AACrE,OAAO,UAAU,MAAM,0CAA0C,CAAC;AAClE,OAAO,iBAAiB,MAAM,2BAA2B,CAAC;AAC1D,OAAO,cAAc,MAAM,wBAAwB,CAAC;AAEpD,OAAO,YAAY,MAAM,qBAAqB,CAAC;AAC/C,OAAO,aAAa,MAAM,uBAAuB,CAAC;AAClD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,aAAa,CAAC;AAOrB,MAAM,aAAa,GAAG,GAAG,EAAE;IAC1B,MAAM,GAAG,GAAG,UAAU,EAAE,CAAC;IACzB,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC;IAC5B,MAAM,WAAW,GAAG,WAAW,CAC9B,GAAG,EAAE,CACJ,IAAI,yBAAyB,CAAC;QAC7B,QAAQ,EAAE;YACT,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;YAClF,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE;SAChC;KACD,CAAC,EACH,EAAE,CACF,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAE7B,MAAM,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;IACtC,MAAM,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC,CAAC;IAC9D,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,EAAe,CAAC;IAC9D,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,EAAO,CAAC;IAEtD,MAAM,WAAW,GAAG,MAAM,CAAM,IAAI,CAAC,CAAC;IACtC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,GAAG,EAAwB,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC;IAC1C,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC;IAEpC,eAAe;IACf,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,IAAS,EAAE,EAAE;QACxC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YACnB,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;YACtC,kEAAkE;QACnE,CAAC;IACF,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,SAAS,CAAC,GAAG,EAAE;QACd,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC;IAC7C,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,SAAS,CAAC,GAAG,EAAE;QACd,cAAc,CAAC,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAChD,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,mBAAmB,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QAC9B,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IACH,uBAAuB,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QAClC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,iBAAiB,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAE7C,qBAAqB,CACpB,IAAI,EACJ,CAAC,IAAiB,EAAE,EAAE;QACrB,WAAW,CAAC,GAAG,EAAE;YAChB,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE;gBAC1C,IAAI,CAAC,eAAe,GAAG,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;gBACtE,IAAI,CAAC,WAAW,GAAG,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;gBAClE,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;gBAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBACnD,4EAA4E;gBAC5E,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,QAAQ,GAAG,YAAY,CAAC,EAAE,CAAC;oBACrE,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;gBAC5D,CAAC;gBACD,IAAI,OAAO,EAAE,CAAC;oBACb,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;oBAC3B,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;gBACxB,CAAC;gBACD,OAAO,IAAI,CAAC;YACb,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACJ,CAAC,EACD,WAAW,CAAC,OAAO,CACnB,CAAC;IAEF,+BAA+B;IAC/B,MAAM,YAAY,GAAG,CAAC,IAAS,EAAE,EAAE;QAClC,OAAO,CACN,oBAAC,oBAAoB,IACpB,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,EACvC,OAAO,EAAE,GAAG,EAAE;gBACb,YAAY,CAAC,SAAS,CAAC,oBAAC,kBAAkB,IAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,GAAI,EAAE;oBACrF,IAAI,EAAE,EAAE;iBACR,CAAC,CAAC;YACJ,CAAC,GACA,CACF,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,CACpB,oBAAC,YAAY,IAAC,OAAO,EAAE,YAAY;QAClC,oBAAC,UAAU,IAAC,QAAQ,QAAC,SAAS,EAAE,eAAe;YAC9C,6BAAK,SAAS,EAAC,kBAAkB,EAAC,GAAG,EAAE,MAAM;gBAC5C,6BAAK,SAAS,EAAC,iBAAiB;oBAC/B,6BAAK,SAAS,EAAC,eAAe;wBAC7B,oBAAC,MAAM,IACN,YAAY,EAAC,OAAO,EACpB,SAAS,EAAC,WAAW,EACrB,MAAM,EAAE,oBAAC,MAAM,IAAC,IAAI,EAAE,eAAe,GAAI,EACzC,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE;gCACR,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;gCAClC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;gCAChC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;6BAC9B,GACA,CACG;oBACN,6BAAK,SAAS,EAAC,iBAAiB;wBAC/B,oBAAC,MAAM,IAAC,SAAS,EAAC,gBAAgB,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,YAE5D;wBACT,oBAAC,MAAM,IAAC,SAAS,EAAC,eAAe,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE;4BAClE,oBAAC,MAAM,IAAC,IAAI,EAAE,kBAAkB,GAAI,CAC5B;wBACT,6BAAK,SAAS,EAAC,gBAAgB;4BAC9B,oBAAC,UAAU,IACV,MAAM,EACL,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAE3E,SAAS,EAAC,qBAAqB,EAC/B,YAAY,EAAE,WAAW;gCACzB,uCAAuC;gCACvC,WAAW,EAAE,UACZ,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MACrE,EAAE,EACF,QAAQ,EAAE,QAAQ,GACjB;4BACD,KAAK,CAAC,KAAK,CACP;wBACN,oBAAC,MAAM,IAAC,SAAS,EAAC,eAAe,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE;4BAClE,oBAAC,MAAM,IAAC,IAAI,EAAE,mBAAmB,GAAI,CAC7B,CACJ;oBACN,6BAAK,SAAS,EAAC,gBAAgB;wBAC9B,oBAAC,oBAAoB,CAAC,QAAQ,IAAC,KAAK,EAAE,WAAW;4BAChD,oBAAC,UAAU,IAAC,OAAO,EAAE,CAAC,oBAAC,YAAY,IAAC,GAAG,EAAC,cAAc,EAAC,YAAY,EAAE,CAAC,IAAI,CAAC,GAAI,CAAC,GAAI,CACrD,CAC3B,CACD;gBAEN,6BAAK,SAAS,EAAC,oBAAoB;oBAClC,oBAAC,YAAY,IACZ,GAAG,EAAE,WAAW,EAChB,OAAO,EAAE,CAAC,iBAAiB,EAAE,aAAa,EAAE,cAAc,CAAC,EAC3D,QAAQ,EAAE,IAAI;wBACd,+BAA+B;wBAC/B,eAAe,EAAE,CAAC,EAClB,aAAa,EAAE,KAAK;wBACpB,eAAe;wBACf,MAAM,EAAC,MAAM;wBACb,iFAAiF;wBACjF,YAAY,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,EACjC,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,CAAC,IAAS,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAC/C,CACG,CACD,CACM,CACC,CACf,CAAC,CAAC;IAEH,yBAAyB;IACzB,SAAS,YAAY,CAAC,KAAa;QAClC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC;QACxC,IAAI,KAAK,KAAK,OAAO;YAAE,WAAW,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QAC9D,IAAI,KAAK,KAAK,MAAM;YAAE,WAAW,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QAC7D,IAAI,KAAK,KAAK,KAAK;YAAE,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IAC5D,CAAC;IAED,gBAAgB;IAChB,SAAS,QAAQ,CAAC,IAAS,EAAE,UAAoC;QAChE,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;QACxE,cAAc,CAAC,IAAI,CAAC,CAAC;QACrB,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC3B,WAAW,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QAC7D,CAAC;aAAM,IAAI,QAAQ,EAAE,CAAC;YACrB,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC;IACF,CAAC;IAED,8BAA8B;IAC9B,KAAK,UAAU,SAAS,CAAC,IAAS;QACjC,MAAM,EAAE,GAAW,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACrE,IACC,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,gBAAgB;YAC1C,CAAC,EAAE;YACH,CAAC,KAAK,EAAE,OAAO,EAAE;YACjB,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,OAAO,EAC7B,CAAC;YACF,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,OAAO;QACR,CAAC;QAED,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;QACxE,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,OAAO;QACR,CAAC;QACD,MAAM,iBAAiB,GAAG,CAAC,KAAwC,EAAE,EAAE;YACtE,WAAW,CAAC,GAAG,EAAE;gBAChB,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAClD,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAC/E,CAAC;YACH,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC;QAEF,MAAM,MAAM,GAAiB;YAC5B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;YACvB,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG;YACnB,QAAQ,EAAE,EAAE,YAAY,CAAC,OAAO;YAChC,OAAO,EAAE,IAAI;SACb,CAAC;QACF,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAC9B,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC1B,IAAI,CAAC;YACJ,8EAA8E;YAC9E,MAAM,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,yBAAyB,CAAC,EAAE,EAAE,CAAC,CAAC;QACvF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;YAC5B,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;YACxB,iBAAiB,CAAC,MAAM,CAAC,CAAC;YAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACvE,CAAC;gBAAS,CAAC;YACV,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,QAAQ,GAAG,EAAE,YAAY,CAAC,OAAO,CAAC;QAC1C,CAAC;IACF,CAAC;AACF,CAAC,CAAC;AAEF,eAAe,aAAa,CAAC"}
|
|
@@ -78,8 +78,11 @@ const SubTaskItem = (props) => {
|
|
|
78
78
|
* 状态标签只渲染一处可见实例:DocumentItem2 的编排是「非 hover 渲染 rightContent、hover 渲染 toolbar」,
|
|
79
79
|
* 所以有工具条时标签随 hover 让位(原有行为),没有工具条时不需要让位,就由 toolbar 槽位继续承载它。
|
|
80
80
|
*/
|
|
81
|
+
// spec:3932 — WS: 点击任务状态标签或选择状态,不打开任务详情
|
|
82
|
+
// Applies to every list using this shared task row, including the hover fallback.
|
|
81
83
|
function renderStatusLabel() {
|
|
82
|
-
return (React.createElement(
|
|
84
|
+
return (React.createElement("span", { onClick: (event) => event.stopPropagation() },
|
|
85
|
+
React.createElement(TaskStatusLabel, { status: state.task.taskStatus, editable: !state.task.readonly, onChange: (TaskStatus) => state.onEdit(TaskStatus), className: "task-status-label shrink-0 w-[132px] flex justify-center" })));
|
|
83
86
|
}
|
|
84
87
|
function onMouse(over) {
|
|
85
88
|
runInAction(() => (state.isHover = over && !multiple && !state.editable));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SubTaskItem.js","sourceRoot":"","sources":["../../../../../src/modules/tasks/components/TaskItem/SubTaskItem.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"SubTaskItem.js","sourceRoot":"","sources":["../../../../../src/modules/tasks/components/TaskItem/SubTaskItem.tsx"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,7 @@ import VerificationInformation from "@voplus/morpho-org/es/modules/verification/
|
|
|
13
13
|
import { DateProperty } from "@voplus/morpho-ui/es/controls/property";
|
|
14
14
|
import WorkScheduleMenu from "../../controls/WorkScheduleMenu";
|
|
15
15
|
import WorkTypeSelect from "../../../work-type/components/WorkTypeSelect";
|
|
16
|
+
import WorkTypeLink from "../../../work-type/components/WorkTypeLink";
|
|
16
17
|
import classnames from "classnames";
|
|
17
18
|
const WorkScheduleProperties = ({ workScheduleTitle = "WORK SCHEDULE PROPERTIES", workScheduleProperties = [
|
|
18
19
|
{ name: "Owner" },
|
|
@@ -59,9 +60,7 @@ const WorkScheduleProperties = ({ workScheduleTitle = "WORK SCHEDULE PROPERTIES"
|
|
|
59
60
|
data: { WorkTypeId: data.id },
|
|
60
61
|
error: "message",
|
|
61
62
|
})
|
|
62
|
-
.then(onBlurWorkType), onBlur: onBlurWorkType })) : (React.createElement("span", { className: classnames("properties-value",
|
|
63
|
-
"add-info-style": !workSchedule.workType?.name,
|
|
64
|
-
}), onClick: onEditWorkType }, workSchedule.workType?.name || "Select Work Type"))));
|
|
63
|
+
.then(onBlurWorkType), onBlur: onBlurWorkType })) : workSchedule.workType?.name ? (React.createElement(WorkTypeLink, { id: workSchedule.workType.id, name: workSchedule.workType.name })) : (React.createElement("span", { className: classnames("properties-value", "add-info-style"), onClick: onEditWorkType }, "Select Work Type"))));
|
|
65
64
|
case "Work":
|
|
66
65
|
return (React.createElement(ReferenceList, { canEdit: false, placeholder: "no work", document: workSchedule.work ? [workSchedule.work] : [] }));
|
|
67
66
|
case "Owner":
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/modules/work/work-schedule/components/WorkScheduleProperties/index.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/modules/work/work-schedule/components/WorkScheduleProperties/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React, { useState } from "react";
|
|
2
|
+
import WorkTypeQuickViewDialog from "../WorkTypeQuickViewDialog";
|
|
3
|
+
/** Work type name that opens the work type quick view when clicked. */
|
|
4
|
+
const WorkTypeLink = (props) => {
|
|
5
|
+
const { id, name } = props;
|
|
6
|
+
const [visibleQuickView, setVisibleQuickView] = useState(false);
|
|
7
|
+
return (React.createElement(React.Fragment, null,
|
|
8
|
+
React.createElement("span", { className: "prosemirror-mention-link", onClick: onQuickView }, name),
|
|
9
|
+
visibleQuickView && (React.createElement(WorkTypeQuickViewDialog, { id: id, visible: true, onCancel: onQuickView }))));
|
|
10
|
+
/** Quick View */
|
|
11
|
+
function onQuickView() {
|
|
12
|
+
setVisibleQuickView(!visibleQuickView);
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
export default WorkTypeLink;
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/modules/work/work-type/components/WorkTypeLink/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,uBAAuB,MAAM,4BAA4B,CAAC;AAEjE,uEAAuE;AACvE,MAAM,YAAY,GAAG,CAAC,KAAmC,EAAE,EAAE;IAC5D,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;IAC3B,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEhE,OAAO,CACN;QACC,8BAAM,SAAS,EAAC,0BAA0B,EAAC,OAAO,EAAE,WAAW,IAC7D,IAAI,CACC;QACN,gBAAgB,IAAI,CACpB,oBAAC,uBAAuB,IAAC,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,GAAI,CACzE,CACC,CACH,CAAC;IAEF,iBAAiB;IACjB,SAAS,WAAW;QACnB,mBAAmB,CAAC,CAAC,gBAAgB,CAAC,CAAC;IACxC,CAAC;AACF,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
+
import { FilterOption } from "@voplus/morpho-data";
|
|
2
3
|
import { IWorkType } from "../../../../../data/worktype";
|
|
3
|
-
import "./index.css";
|
|
4
4
|
declare const WorkTypeList: (props: {
|
|
5
|
-
|
|
5
|
+
/** Lists the work types of this workspace; without it the list searches across workspaces. */
|
|
6
|
+
workspaceId?: string;
|
|
7
|
+
/** Extra filters, e.g. from global search. */
|
|
8
|
+
filterOptions?: FilterOption[];
|
|
6
9
|
active?: string;
|
|
7
10
|
/** item onclick */
|
|
8
11
|
onClickItem?: (item: IWorkType) => void;
|
|
@@ -9,28 +9,30 @@ import ListView from "@voplus/morpho-ui/es/components/layout/ListView/ListView";
|
|
|
9
9
|
import { ViewContext, ViewContextData, } from "@voplus/morpho-document-core/es/data/context/ViewContext";
|
|
10
10
|
import NewTypeForm from "../NewTypeForm";
|
|
11
11
|
import WorkTypeItem from "../WorkTypeItem";
|
|
12
|
-
import "./index.css";
|
|
13
12
|
const WorkTypeList = (props) => {
|
|
14
13
|
const [showAdd, setShowAdd] = useState(false);
|
|
15
14
|
const view = useMemo(() => new ViewContextData("PropertiesView"), []);
|
|
15
|
+
const workspaceFilters = props.workspaceId
|
|
16
|
+
? [{ c: "ParentNodeId", o: "=", l: "And", v1: props.workspaceId }]
|
|
17
|
+
: [];
|
|
16
18
|
const list = useCreateListDataState({
|
|
17
19
|
filterDefaults: {
|
|
18
20
|
includes: "actions",
|
|
19
|
-
filters: [
|
|
21
|
+
filters: [...workspaceFilters, ...(props.filterOptions ?? [])],
|
|
20
22
|
},
|
|
21
|
-
}, [props.workspaceId]);
|
|
23
|
+
}, [props.workspaceId, props.filterOptions]);
|
|
22
24
|
useAutoUpdateListData(list, (d) => true);
|
|
23
25
|
/** 如果 list.filters.options变更了就重渲染,使下一行的useWorkTypeListEffect 可以接收新参数*/
|
|
24
26
|
useRenderOnChange(() => list.filters.options);
|
|
25
27
|
/** 把ListDataState传给useWorkTypeListEffect,使之可以自動更新loading, hasmore. */
|
|
26
28
|
useWorkTypeListEffect(list, (result) => list.union(result), list.filters.options);
|
|
27
29
|
return observe(() => (React.createElement(ViewContext.Provider, { value: view },
|
|
28
|
-
React.createElement("div", { className: "
|
|
30
|
+
React.createElement("div", { className: "flex flex-col h-full" },
|
|
29
31
|
React.createElement(ListDataContext.Provider, { value: list },
|
|
30
32
|
React.createElement(ListView, { headerProps: {
|
|
31
33
|
headerToolProps: {
|
|
32
34
|
visible: true,
|
|
33
|
-
addAble:
|
|
35
|
+
addAble: !!props.workspaceId,
|
|
34
36
|
sortable: false,
|
|
35
37
|
searchHeader: false,
|
|
36
38
|
onAdd: () => setShowAdd(true),
|
|
@@ -41,7 +43,7 @@ const WorkTypeList = (props) => {
|
|
|
41
43
|
},
|
|
42
44
|
}, renderItem: ({ item, connectDragSource }) => (React.createElement(DocumentItemFrame, { key: item.id, onClick: () => props.onClickItem?.(item) },
|
|
43
45
|
React.createElement(WorkTypeItem, { id: item.id }))) }),
|
|
44
|
-
showAdd && (React.createElement(NewTypeForm, { workspaceId: props.workspaceId, onCancel: () => setShowAdd(false), onSave: () => setShowAdd(false) })))))));
|
|
46
|
+
showAdd && props.workspaceId && (React.createElement(NewTypeForm, { workspaceId: props.workspaceId, onCancel: () => setShowAdd(false), onSave: () => setShowAdd(false) })))))));
|
|
45
47
|
function onFilter(context) {
|
|
46
48
|
context.paging.Page = 1;
|
|
47
49
|
context.filter();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/modules/work/work-type/components/WorkTypeList/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/modules/work/work-type/components/WorkTypeList/index.tsx"],"names":[],"mappings":"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"}
|
package/es/routes.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import BoardRoutes from "./modules/board/BoardRouets";
|
|
2
|
-
import
|
|
2
|
+
import CalendarRoutes from "./modules/calendar/CalendarRoutes";
|
|
3
3
|
import MeetingRoutes from "./modules/meeting/MeetingRoutes";
|
|
4
4
|
import MenusRoutes from "./modules/menus/pages/MenusRoutes";
|
|
5
5
|
import PageRoutes from "./modules/Routes";
|
|
@@ -9,7 +9,7 @@ const Routes = {
|
|
|
9
9
|
TaskRoutes.addRoutes();
|
|
10
10
|
MeetingRoutes.addRoutes();
|
|
11
11
|
BoardRoutes.addRoutes();
|
|
12
|
-
|
|
12
|
+
CalendarRoutes.addRoutes();
|
|
13
13
|
PageRoutes.addRoutes();
|
|
14
14
|
MenusRoutes.addRoutes();
|
|
15
15
|
// MemberRoutes.addRoutes();
|
package/es/routes.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../src/routes.tsx"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,6BAA6B,CAAC;AACtD,OAAO,
|
|
1
|
+
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../src/routes.tsx"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,6BAA6B,CAAC;AACtD,OAAO,cAAc,MAAM,mCAAmC,CAAC;AAC/D,OAAO,aAAa,MAAM,iCAAiC,CAAC;AAE5D,OAAO,WAAW,MAAM,mCAAmC,CAAC;AAC5D,OAAO,UAAU,MAAM,kBAAkB,CAAC;AAC1C,OAAO,UAAU,MAAM,6BAA6B,CAAC;AAErD,MAAM,MAAM,GAAG;IACd,SAAS,EAAE,GAAG,EAAE;QACf,UAAU,CAAC,SAAS,EAAE,CAAC;QACvB,aAAa,CAAC,SAAS,EAAE,CAAC;QAC1B,WAAW,CAAC,SAAS,EAAE,CAAC;QACxB,cAAc,CAAC,SAAS,EAAE,CAAC;QAC3B,UAAU,CAAC,SAAS,EAAE,CAAC;QACvB,WAAW,CAAC,SAAS,EAAE,CAAC;QACxB,4BAA4B;IAC7B,CAAC;CACD,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
declare const RouteList: {
|
|
3
|
-
CalendarBoard: {
|
|
4
|
-
/** 沿用原来的 /calendar 路由,由本模块接管 */
|
|
5
|
-
route: string;
|
|
6
|
-
tabPattern: RegExp;
|
|
7
|
-
getUrl: () => string;
|
|
8
|
-
component: React.JSX.Element;
|
|
9
|
-
};
|
|
10
|
-
addRoutes: () => void;
|
|
11
|
-
};
|
|
12
|
-
export default RouteList;
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import React, { Suspense, lazy } from "react";
|
|
2
|
-
import { Route, Routes } from "react-router-dom";
|
|
3
|
-
import { BaseRoutes } from "@voplus/morpho-data";
|
|
4
|
-
import { Skeleton } from "antd";
|
|
5
|
-
const CalendarBoard = lazy(() => import("./pages/CalendarBoard"));
|
|
6
|
-
const CalendarBoardRoutes = () => {
|
|
7
|
-
return (React.createElement(Suspense, { fallback: React.createElement(Skeleton, null) },
|
|
8
|
-
React.createElement(Routes, null,
|
|
9
|
-
React.createElement(Route, { path: RouteList.CalendarBoard.route, element: RouteList.CalendarBoard.component }))));
|
|
10
|
-
};
|
|
11
|
-
const RouteList = {
|
|
12
|
-
CalendarBoard: {
|
|
13
|
-
/** 沿用原来的 /calendar 路由,由本模块接管 */
|
|
14
|
-
route: "/calendar",
|
|
15
|
-
tabPattern: RegExp("/calendar"),
|
|
16
|
-
getUrl: () => `/calendar`,
|
|
17
|
-
component: React.createElement(CalendarBoard, null),
|
|
18
|
-
},
|
|
19
|
-
addRoutes: () => {
|
|
20
|
-
BaseRoutes.routes.push({
|
|
21
|
-
name: "calendar-board",
|
|
22
|
-
tabBasePattern: RouteList.CalendarBoard.tabPattern,
|
|
23
|
-
component: React.createElement(CalendarBoardRoutes, null),
|
|
24
|
-
});
|
|
25
|
-
},
|
|
26
|
-
};
|
|
27
|
-
export default RouteList;
|
|
28
|
-
//# sourceMappingURL=CalendarBoardRoutes.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CalendarBoardRoutes.js","sourceRoot":"","sources":["../../../src/modules/calendar-board/CalendarBoardRoutes.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAEhC,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;AAElE,MAAM,mBAAmB,GAAG,GAAG,EAAE;IAChC,OAAO,CACN,oBAAC,QAAQ,IAAC,QAAQ,EAAE,oBAAC,QAAQ,OAAG;QAC/B,oBAAC,MAAM;YACN,oBAAC,KAAK,IAAC,IAAI,EAAE,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,aAAa,CAAC,SAAS,GAAI,CAClF,CACC,CACX,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG;IACjB,aAAa,EAAE;QACd,gCAAgC;QAChC,KAAK,EAAE,WAAW;QAClB,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC;QAC/B,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW;QACzB,SAAS,EAAE,oBAAC,aAAa,OAAG;KAC5B;IACD,SAAS,EAAE,GAAG,EAAE;QACf,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC;YACtB,IAAI,EAAE,gBAAgB;YACtB,cAAc,EAAE,SAAS,CAAC,aAAa,CAAC,UAAU;YAClD,SAAS,EAAE,oBAAC,mBAAmB,OAAG;SAClC,CAAC,CAAC;IACJ,CAAC;CACD,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { type CalendarBoardEvent, type CalendarBoardSource, type CategoryColor } from "../../event-meta";
|
|
3
|
-
import { type CalendarViewType } from "../../pages/CalendarBoard/state";
|
|
4
|
-
/**
|
|
5
|
-
* 一个日期格最多显示几条事件,其余收进 +N 徽标。
|
|
6
|
-
*
|
|
7
|
-
* 用 dayMaxEvents(事件数)而不是 dayMaxEventRows(行数):
|
|
8
|
-
* 后者会把 +N 自己算进预算,传 2 实际只显示 1 张卡 —— 实测
|
|
9
|
-
* rows:2 → 1 卡 +4;rows:3 → 2 卡 +3;events:2 → 2 卡 +3;events:3 → 3 卡 +2。
|
|
10
|
-
* 需求是「每格最多两条内容」,所以用事件数语义,改卡片高度也不会让条数漂移。
|
|
11
|
-
*/
|
|
12
|
-
export declare const DAY_MAX_EVENTS = 2;
|
|
13
|
-
/**
|
|
14
|
-
* 日历网格:页面的日历区块,也是 Storybook 里免后端看设计稿的入口。
|
|
15
|
-
*
|
|
16
|
-
* 数据、配色、回调全部由外部传入,组件自己不碰 store / 路由 / 侧栏,
|
|
17
|
-
* 因此页面传真实数据、story 传静态数据即可,两边共用同一份皮肤与视图配置。
|
|
18
|
-
*
|
|
19
|
-
* `calendar-board` 类提供 --fc-* 皮肤变量(见 pages/CalendarBoard/index.css),
|
|
20
|
-
* 单独渲染时同样拿得到。
|
|
21
|
-
*/
|
|
22
|
-
declare const CalendarBoardGrid: (props: {
|
|
23
|
-
events: CalendarBoardEvent[];
|
|
24
|
-
/**
|
|
25
|
-
* 打开时用哪个视图。
|
|
26
|
-
*
|
|
27
|
-
* 只作用于挂载:之后的切换由调用方通过 calendarRef 调 changeView
|
|
28
|
-
* (页面就是这么做的)。卡片是否多渲染时间行不依赖它,
|
|
29
|
-
* 而是看 FullCalendar 实际给出的 info.view.type —— 那样永远和当前视图一致。
|
|
30
|
-
*/
|
|
31
|
-
initialView: CalendarViewType;
|
|
32
|
-
/** 事件分类 → 颜色的稳定映射(来自 summarizeEvents) */
|
|
33
|
-
colorMap: Map<string, CategoryColor>;
|
|
34
|
-
/** 打开时定位到哪一天,默认今天(页面用默认值;固定日期的 story / 测试显式传入) */
|
|
35
|
-
initialDate?: string | Date;
|
|
36
|
-
/** FullCalendar 实例 ref:页面用它调用 today / prev / next / changeView */
|
|
37
|
-
calendarRef?: React.Ref<any>;
|
|
38
|
-
/** 点击事件卡(页面用它打开 QuickView) */
|
|
39
|
-
onSelectEvent?: (source?: CalendarBoardSource) => void;
|
|
40
|
-
/** 拖动结束后触发(页面用它调用 CalendarStore.edit) */
|
|
41
|
-
onEventDrop?: (info: any) => void;
|
|
42
|
-
/** 呈现一组新日期时触发(页面用它同步标题) */
|
|
43
|
-
onDatesSet?: (info: any) => void;
|
|
44
|
-
}) => React.JSX.Element;
|
|
45
|
-
export default CalendarBoardGrid;
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import React, { useMemo } from "react";
|
|
2
|
-
import FullCalendar from "@fullcalendar/react";
|
|
3
|
-
import dayGridPlugin from "@fullcalendar/daygrid";
|
|
4
|
-
import timeGridPlugin from "@fullcalendar/timegrid";
|
|
5
|
-
import interactionPlugin from "@fullcalendar/interaction";
|
|
6
|
-
import CalendarEventChip from "../CalendarEventChip";
|
|
7
|
-
import CalendarMoreLink from "../CalendarMoreLink";
|
|
8
|
-
import { DEFAULT_CATEGORY_TYPE, resolveColor, } from "../../event-meta";
|
|
9
|
-
import { FULL_CALENDAR_VIEW, FULL_CALENDAR_VIEW_OPTIONS, } from "../../pages/CalendarBoard/state";
|
|
10
|
-
/**
|
|
11
|
-
* 一个日期格最多显示几条事件,其余收进 +N 徽标。
|
|
12
|
-
*
|
|
13
|
-
* 用 dayMaxEvents(事件数)而不是 dayMaxEventRows(行数):
|
|
14
|
-
* 后者会把 +N 自己算进预算,传 2 实际只显示 1 张卡 —— 实测
|
|
15
|
-
* rows:2 → 1 卡 +4;rows:3 → 2 卡 +3;events:2 → 2 卡 +3;events:3 → 3 卡 +2。
|
|
16
|
-
* 需求是「每格最多两条内容」,所以用事件数语义,改卡片高度也不会让条数漂移。
|
|
17
|
-
*/
|
|
18
|
-
export const DAY_MAX_EVENTS = 2;
|
|
19
|
-
/**
|
|
20
|
-
* 日历网格:页面的日历区块,也是 Storybook 里免后端看设计稿的入口。
|
|
21
|
-
*
|
|
22
|
-
* 数据、配色、回调全部由外部传入,组件自己不碰 store / 路由 / 侧栏,
|
|
23
|
-
* 因此页面传真实数据、story 传静态数据即可,两边共用同一份皮肤与视图配置。
|
|
24
|
-
*
|
|
25
|
-
* `calendar-board` 类提供 --fc-* 皮肤变量(见 pages/CalendarBoard/index.css),
|
|
26
|
-
* 单独渲染时同样拿得到。
|
|
27
|
-
*/
|
|
28
|
-
const CalendarBoardGrid = (props) => {
|
|
29
|
-
/** 渲染事件:设计稿的描边大写卡片;日视图额外带上时间范围 */
|
|
30
|
-
const renderEventContent = (info) => {
|
|
31
|
-
const source = info.event.extendedProps?.source;
|
|
32
|
-
return (React.createElement(CalendarEventChip, { title: info.event.title, color: resolveColor(props.colorMap, source?.type || DEFAULT_CATEGORY_TYPE), timeText: info.view.type === FULL_CALENDAR_VIEW.day ? info.timeText : undefined, onClick: () => props.onSelectEvent?.(source) }));
|
|
33
|
-
};
|
|
34
|
-
/**
|
|
35
|
-
* eventSources:外层数组一并 memo 掉。
|
|
36
|
-
*
|
|
37
|
-
* 实测决定会不会重置事件源的是**内层 events 数组的引用**(引用变了就用内容覆盖内部状态,
|
|
38
|
-
* 刚拖出去的事件会被打回原位;引用没变则不动),这一条由页面的 state.sidebarData
|
|
39
|
-
* 这个 computed 保证。外层这里顺手 memo,免得依赖 FullCalendar 内部的比较细节。
|
|
40
|
-
*/
|
|
41
|
-
const eventSources = useMemo(() => [props.events], [props.events]);
|
|
42
|
-
return (React.createElement("div", { className: "calendar-board flex-1 min-w-0 overflow-hidden" },
|
|
43
|
-
React.createElement(FullCalendar, { ref: props.calendarRef, plugins: [interactionPlugin, dayGridPlugin, timeGridPlugin], editable: true, dayMaxEvents: DAY_MAX_EVENTS, headerToolbar: false, height: "100%", nowIndicator: true, initialView: FULL_CALENDAR_VIEW[props.initialView], initialDate: props.initialDate,
|
|
44
|
-
/** 月视图 / 周视图 / 日视图均由已装的 daygrid、timegrid 插件提供 */
|
|
45
|
-
views: FULL_CALENDAR_VIEW_OPTIONS, eventSources: eventSources, eventDrop: props.onEventDrop, eventContent: renderEventContent, moreLinkContent: (info) => React.createElement(CalendarMoreLink, { count: info.num }), datesSet: props.onDatesSet })));
|
|
46
|
-
};
|
|
47
|
-
export default CalendarBoardGrid;
|
|
48
|
-
//# sourceMappingURL=index.js.map
|