@voplus/morpho-workspace 1.3.110 → 1.3.111

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 CHANGED
@@ -2,6 +2,7 @@ import { MeetingFolderTypeMeta, MeetingTypeMeta } from "./data/meeting/metas";
2
2
  import { BoardTypeMeta } from "./data/board/metas";
3
3
  import { DocumentMetaStore } from "@voplus/morpho-document/es/data/DocumentMetaStore";
4
4
  import { DocumentUIService } from "@voplus/morpho-document/es/DocumentUIService";
5
+ import { WorkSpaceUIService } from './WorkSpaceUIService';
5
6
  import { FormElementRegister } from "@voplus/morpho-form/es/services";
6
7
  import Routes from "./routes";
7
8
  import { TaskTypeMeta } from "./data/task/metas";
@@ -14,6 +15,9 @@ const Modules = {
14
15
  if (!context.getService(DocumentUIService.TypeName)) {
15
16
  context.registerService(new DocumentUIService());
16
17
  }
18
+ if (!context.getService(WorkSpaceUIService.TypeName)) {
19
+ context.registerService(new WorkSpaceUIService());
20
+ }
17
21
  if (!context.getService(DocumentMetaStore.StoreName)) {
18
22
  context.registerService(new DocumentMetaStore());
19
23
  }
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,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG9E,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,aAAa,MAAM,+CAA+C,CAAC;AAE1E,MAAM,OAAO,GAAG;IACf,2CAA2C;IAC3C,QAAQ,EAAE,CAAC,OAAmB,EAAE,EAAE;QACjC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE;YACpD,OAAO,CAAC,eAAe,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC;SACjD;QAED,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE;YACrD,OAAO,CAAC,eAAe,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC;SACjD;QAED,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,EAAE;YACrD,MAAM,OAAO,GAAG,IAAI,mBAAmB,EAAE,CAAC;YAC1C,aAAa,CAAC,OAAO,CAAC,CAAC;YACvB,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;SACjC;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,YAAY,EAAE,CAAC,CAAC;QAElC,mBAAmB;QACnB,MAAM,CAAC,SAAS,EAAE,CAAC;IACpB,CAAC;CACD,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"Modules.js","sourceRoot":"","sources":["../src/Modules.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG9E,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAC;AACjF,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,aAAa,MAAM,+CAA+C,CAAC;AAE1E,MAAM,OAAO,GAAG;IACf,2CAA2C;IAC3C,QAAQ,EAAE,CAAC,OAAmB,EAAE,EAAE;QACjC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE;YACpD,OAAO,CAAC,eAAe,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC;SACjD;QAED,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE;YACrD,OAAO,CAAC,eAAe,CAAC,IAAI,kBAAkB,EAAE,CAAC,CAAC;SAClD;QAED,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE;YACrD,OAAO,CAAC,eAAe,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC;SACjD;QAED,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,EAAE;YACrD,MAAM,OAAO,GAAG,IAAI,mBAAmB,EAAE,CAAC;YAC1C,aAAa,CAAC,OAAO,CAAC,CAAC;YACvB,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;SACjC;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,YAAY,EAAE,CAAC,CAAC;QAElC,mBAAmB;QACnB,MAAM,CAAC,SAAS,EAAE,CAAC;IACpB,CAAC;CACD,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ import { WorkSpaceUIService as Base, TeamTaskListProps } from "@voplus/morpho-document-core";
3
+ export declare class WorkSpaceUIService extends Base {
4
+ renderTeamTaskList(props: TeamTaskListProps): React.ReactNode;
5
+ }
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ import { WorkSpaceUIService as Base } from "@voplus/morpho-document-core";
3
+ import TeamTaskList from "../src/components/TeamTaskList";
4
+ export class WorkSpaceUIService extends Base {
5
+ renderTeamTaskList(props) {
6
+ return React.createElement(TeamTaskList, { ...props });
7
+ }
8
+ }
9
+ //# sourceMappingURL=WorkSpaceUIService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WorkSpaceUIService.js","sourceRoot":"","sources":["../src/WorkSpaceUIService.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,kBAAkB,IAAI,IAAI,EAAqB,MAAM,8BAA8B,CAAC;AAC7F,OAAO,YAAY,MAAM,gCAAgC,CAAC;AAE1D,MAAM,OAAO,kBAAmB,SAAQ,IAAI;IACpC,kBAAkB,CAAC,KAAwB;QACjD,OAAO,oBAAC,YAAY,OAAK,KAAK,GAAI,CAAC;IACpC,CAAC;CACD"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * 此组件用于 org TeamDefaultView 中, 使用 ui.renderTeamTaskList 用于渲染 Team Tasks 和 Member Tasks
3
+ */
4
+ /// <reference types="react" />
5
+ import { TeamTaskListProps } from "@voplus/morpho-document-core";
6
+ declare const TeamTaskList: (props: TeamTaskListProps) => JSX.Element;
7
+ export default TeamTaskList;
@@ -0,0 +1,155 @@
1
+ /**
2
+ * 此组件用于 org TeamDefaultView 中, 使用 ui.renderTeamTaskList 用于渲染 Team Tasks 和 Member Tasks
3
+ */
4
+ import React, { useMemo, useState } from "react";
5
+ import { useLayout } from "@voplus/morpho-data";
6
+ import { ListDataContext, useCreateListDataState } from "@voplus/morpho-ui/es/data";
7
+ import { generatePath, useRouteMatch } from "react-router";
8
+ import { useAutoUpdateListData, useDocumentStore, useOnDeleteDocument, useOnNewDocument, } from "@voplus/morpho-document-core";
9
+ import { TaskStatusFilter } from "../../controls/filters";
10
+ import { observe } from "@voplus/morpho-ui";
11
+ import { useRenderOnChange } from "@voplus/morpho-ui";
12
+ import { useTaskListEffect } from "../../data/task";
13
+ import { State } from "./state";
14
+ import { runInAction } from "mobx";
15
+ import DefaultTaskItem from "../../modules/tasks/components/TaskItem/DefaultTaskItem";
16
+ import DocumentItemFrame from "@voplus/morpho-document/es/controls/DocumentItemFrame";
17
+ import ListView from "@voplus/morpho-ui/es/components/layout/ListView/ListView2";
18
+ import TaskPropertiesView from "../../modules/tasks/components/TaskPropertiesView";
19
+ import moment from "moment";
20
+ const TeamTaskList = (props) => {
21
+ const match = useRouteMatch();
22
+ const layout = useLayout();
23
+ const documentStore = useDocumentStore();
24
+ const defaultTaskStatus = ["NotStarted", "Progress"];
25
+ const [activeId, setActiveId] = useState("");
26
+ const state = useMemo(() => new State(props.id), []);
27
+ // 先临时解决 Nav menu 中没有 total
28
+ useTaskListEffect(null, (result, total) => runInAction(() => (state.taskTotals.unscheduled = total || 0)), state.tUnscheduled);
29
+ useTaskListEffect(null, (result, total) => runInAction(() => (state.taskTotals.today = total || 0)), state.tToday);
30
+ useTaskListEffect(null, (result, total) => runInAction(() => (state.taskTotals.week = total || 0)), state.tWeek);
31
+ useTaskListEffect(null, (result, total) => runInAction(() => (state.taskTotals.month = total || 0)), state.tMonth);
32
+ const list = useCreateListDataState({
33
+ filterDefaults: {
34
+ includes: "tags",
35
+ filters: filters(),
36
+ },
37
+ }, [match.params.dueDate]);
38
+ /** useOnNewDocument, useOnDeleteDocument的sugar syntax 自動更新list. */
39
+ useAutoUpdateListData(list, (d) => d.type === "Task" && !d.parentId);
40
+ useOnNewDocument((s, doc) => {
41
+ if (doc.type === "Task" && !doc.parentId)
42
+ state.taskTotals[match.params.dueDate.toLowerCase()]++;
43
+ });
44
+ useOnDeleteDocument((s, doc) => {
45
+ if (doc.type === "Task" && !doc.parentId)
46
+ state.taskTotals[match.params.dueDate.toLowerCase()]--;
47
+ });
48
+ /** 如果 list.filters.options变更了就重渲染,使下一行的useTaskListEffect 可以接收新参数*/
49
+ useRenderOnChange(() => list.filters.options);
50
+ /** 把ListDataState传给useTaskListEffect,使之可以自動更新loading, hasmore. */
51
+ useTaskListEffect(list, (result, total) => {
52
+ list.union(result);
53
+ runInAction(() => {
54
+ state.taskTotals[match.params.dueDate.toLowerCase()] = total;
55
+ });
56
+ if (props.onMenuTotal)
57
+ props.onMenuTotal(state.taskTotals);
58
+ }, {
59
+ Total: true,
60
+ ...list.filters.options,
61
+ });
62
+ return observe(() => (React.createElement(ListDataContext.Provider, { value: list },
63
+ React.createElement(ListView, { headerProps: {
64
+ viewTitle: "Team Tasks",
65
+ addAble: false,
66
+ filterViewProps: {
67
+ columns: [React.createElement(TaskStatusFilter, { key: "TaskStatusFilter", defaultValue: defaultTaskStatus })],
68
+ onFilter,
69
+ },
70
+ sortOptions: [
71
+ { label: "Name", value: "Name" },
72
+ { label: "Start Date", value: "StartDate" },
73
+ { label: "Due Date", value: "DueDate" },
74
+ { label: "Priority", value: "Flag" },
75
+ ],
76
+ }, className: "my-space-tasks", moveAfter: moveAfter, propertiesView: (id) => React.createElement(TaskPropertiesView, { id: id }), renderItem: ({ item, connectDragSource }) => (React.createElement(React.Fragment, null,
77
+ React.createElement(DocumentItemFrame, { key: item.id, frameProps: { active: activeId === item.id }, onClick: () => {
78
+ setActiveId(item.id);
79
+ layout.history.push(generatePath(match.path, {
80
+ id: match.params.id,
81
+ dueDate: match.params.dueDate,
82
+ active: item.id,
83
+ }));
84
+ } },
85
+ React.createElement(DefaultTaskItem, { id: item.id, memberAlign: "block", connectDragSource: connectDragSource })))) }))));
86
+ function filters() {
87
+ const todayFilter = {
88
+ c: "DueDate",
89
+ o: "between",
90
+ l: "And",
91
+ v1: moment().startOf("day").format("YYYY-MM-DD HH:mm:ss"),
92
+ v2: moment().endOf("day").format("YYYY-MM-DD HH:mm:ss"),
93
+ };
94
+ const weekFilter = {
95
+ c: "DueDate",
96
+ o: "between",
97
+ l: "And",
98
+ v1: moment().startOf("week").format("YYYY-MM-DD HH:mm:ss"),
99
+ v2: moment().endOf("week").format("YYYY-MM-DD HH:mm:ss"),
100
+ };
101
+ const monthFilter = {
102
+ c: "DueDate",
103
+ o: "between",
104
+ l: "And",
105
+ v1: moment().startOf("month").format("YYYY-MM-DD HH:mm:ss"),
106
+ v2: moment().endOf("month").format("YYYY-MM-DD HH:mm:ss"),
107
+ };
108
+ const unscheduledFilter = [
109
+ {
110
+ c: "DueDate",
111
+ o: "is null",
112
+ l: "And",
113
+ v1: "",
114
+ },
115
+ {
116
+ c: "TaskStatus",
117
+ o: "contains",
118
+ l: "And",
119
+ v1: JSON.stringify(["NotStarted", "Progress"]),
120
+ },
121
+ { c: "Members", o: "contains", l: "And", v1: JSON.stringify([props.id]) },
122
+ ];
123
+ let filter = [
124
+ { c: "Members", o: "contains", l: "And", v1: JSON.stringify([props.id]) },
125
+ { c: "Status", o: "!=", v1: "Draft", l: "And" },
126
+ { c: "TaskStatus", o: "contains", l: "And", v1: JSON.stringify(["NotStarted", "Progress"]) },
127
+ ];
128
+ switch (match.params.dueDate) {
129
+ case "unscheduled":
130
+ filter = unscheduledFilter;
131
+ break;
132
+ case "today":
133
+ filter = [todayFilter, ...filter];
134
+ break;
135
+ case "week":
136
+ filter = [weekFilter, ...filter];
137
+ break;
138
+ case "month":
139
+ filter = [monthFilter, ...filter];
140
+ break;
141
+ default:
142
+ return filter;
143
+ }
144
+ return filter;
145
+ }
146
+ async function moveAfter(id, afterId) {
147
+ await documentStore.moveAfter(id, afterId);
148
+ }
149
+ function onFilter(context) {
150
+ context.paging.Page = 1;
151
+ context.filter();
152
+ }
153
+ };
154
+ export default TeamTaskList;
155
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/TeamTaskList/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { LoadDocumentListOptions } from "@voplus/morpho-document-core";
2
+ import { TaskStatus } from "../../data/task";
3
+ export declare class State {
4
+ private id;
5
+ /** DueDate of the Tasks list Total */
6
+ taskTotals: {
7
+ today: number;
8
+ week: number;
9
+ month: number;
10
+ unscheduled: number;
11
+ };
12
+ constructor(id: string);
13
+ updateTaskTotal(oldStatus: TaskStatus, status: TaskStatus): void;
14
+ /** tasks list DueDate(today) Options */
15
+ get tToday(): LoadDocumentListOptions;
16
+ /** tasks list DueDate(week) Options */
17
+ get tWeek(): LoadDocumentListOptions;
18
+ /** tasks list DueDate(month) Options */
19
+ get tMonth(): LoadDocumentListOptions;
20
+ /** tasks list DueDate(unscheduled) Options */
21
+ get tUnscheduled(): LoadDocumentListOptions;
22
+ }
@@ -0,0 +1,158 @@
1
+ import { __decorate } from "tslib";
2
+ import { action, computed, makeObservable, observable } from "mobx";
3
+ import moment from "moment";
4
+ export class State {
5
+ constructor(id) {
6
+ Object.defineProperty(this, "id", {
7
+ enumerable: true,
8
+ configurable: true,
9
+ writable: true,
10
+ value: id
11
+ });
12
+ /** DueDate of the Tasks list Total */
13
+ Object.defineProperty(this, "taskTotals", {
14
+ enumerable: true,
15
+ configurable: true,
16
+ writable: true,
17
+ value: {
18
+ today: 0,
19
+ week: 0,
20
+ month: 0,
21
+ unscheduled: 0,
22
+ }
23
+ });
24
+ makeObservable(this);
25
+ }
26
+ updateTaskTotal(oldStatus, status) {
27
+ this.taskTotals[oldStatus.toLowerCase()]--;
28
+ this.taskTotals[status.toLowerCase()]++;
29
+ }
30
+ /** tasks list DueDate(today) Options */
31
+ get tToday() {
32
+ return {
33
+ Total: true,
34
+ List: false,
35
+ Filters: [
36
+ {
37
+ c: "DueDate",
38
+ o: "between",
39
+ l: "And",
40
+ v1: moment().startOf("day").format("YYYY-MM-DD HH:mm:ss"),
41
+ v2: moment().endOf("day").format("YYYY-MM-DD HH:mm:ss"),
42
+ },
43
+ { c: "Status", o: "!=", l: "And", v1: "Draft" },
44
+ {
45
+ c: "TaskStatus",
46
+ o: "contains",
47
+ l: "And",
48
+ v1: JSON.stringify(["NotStarted", "Progress"]),
49
+ },
50
+ {
51
+ c: "Members",
52
+ o: "contains",
53
+ l: "And",
54
+ v1: JSON.stringify([this.id]),
55
+ },
56
+ ],
57
+ };
58
+ }
59
+ /** tasks list DueDate(week) Options */
60
+ get tWeek() {
61
+ return {
62
+ Total: true,
63
+ List: false,
64
+ Filters: [
65
+ {
66
+ c: "DueDate",
67
+ o: "between",
68
+ l: "And",
69
+ v1: moment().startOf("week").format("YYYY-MM-DD HH:mm:ss"),
70
+ v2: moment().endOf("week").format("YYYY-MM-DD HH:mm:ss"),
71
+ },
72
+ { c: "Status", o: "!=", l: "And", v1: "Draft" },
73
+ {
74
+ c: "TaskStatus",
75
+ o: "contains",
76
+ l: "And",
77
+ v1: JSON.stringify(["NotStarted", "Progress"]),
78
+ },
79
+ {
80
+ c: "Members",
81
+ o: "contains",
82
+ l: "And",
83
+ v1: JSON.stringify([this.id]),
84
+ },
85
+ ],
86
+ };
87
+ }
88
+ /** tasks list DueDate(month) Options */
89
+ get tMonth() {
90
+ return {
91
+ Total: true,
92
+ List: false,
93
+ Filters: [
94
+ {
95
+ c: "DueDate",
96
+ o: "between",
97
+ l: "And",
98
+ v1: moment().startOf("month").format("YYYY-MM-DD HH:mm:ss"),
99
+ v2: moment().endOf("month").format("YYYY-MM-DD HH:mm:ss"),
100
+ },
101
+ { c: "Status", o: "!=", l: "And", v1: "Draft" },
102
+ {
103
+ c: "TaskStatus",
104
+ o: "contains",
105
+ l: "And",
106
+ v1: JSON.stringify(["NotStarted", "Progress"]),
107
+ },
108
+ {
109
+ c: "Members",
110
+ o: "contains",
111
+ l: "And",
112
+ v1: JSON.stringify([this.id]),
113
+ },
114
+ ],
115
+ };
116
+ }
117
+ /** tasks list DueDate(unscheduled) Options */
118
+ get tUnscheduled() {
119
+ return {
120
+ Total: true,
121
+ List: false,
122
+ Filters: [
123
+ {
124
+ c: "TaskStatus",
125
+ o: "contains",
126
+ l: "And",
127
+ v1: JSON.stringify(["NotStarted", "Progress"]),
128
+ },
129
+ { c: "DueDate", o: "is null", l: "And", v1: "" },
130
+ {
131
+ c: "Members",
132
+ o: "contains",
133
+ l: "And",
134
+ v1: JSON.stringify([this.id]),
135
+ },
136
+ ],
137
+ };
138
+ }
139
+ }
140
+ __decorate([
141
+ observable
142
+ ], State.prototype, "taskTotals", void 0);
143
+ __decorate([
144
+ action
145
+ ], State.prototype, "updateTaskTotal", null);
146
+ __decorate([
147
+ computed
148
+ ], State.prototype, "tToday", null);
149
+ __decorate([
150
+ computed
151
+ ], State.prototype, "tWeek", null);
152
+ __decorate([
153
+ computed
154
+ ], State.prototype, "tMonth", null);
155
+ __decorate([
156
+ computed
157
+ ], State.prototype, "tUnscheduled", null);
158
+ //# sourceMappingURL=state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../src/components/TeamTaskList/state.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@voplus/morpho-workspace",
3
- "version": "1.3.110",
3
+ "version": "1.3.111",
4
4
  "description": "morpho workspace module",
5
5
  "repository": {
6
6
  "type": "git",