@voplus/morpho-workspace 1.0.0-dev02 → 1.0.0-dev04
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/components/AvatarList/index.js +1 -1
- package/es/components/AvatarList/index.js.map +1 -1
- package/es/components/PageListView/data/index.js +1 -1
- package/es/components/PageListView/index.js +8 -8
- package/es/components/PageListView/index.js.map +1 -1
- package/es/components/RichTextEditor/BlockStyleControls.d.ts +3 -0
- package/es/components/RichTextEditor/BlockStyleControls.js +27 -0
- package/es/components/RichTextEditor/BlockStyleControls.js.map +1 -0
- package/es/components/RichTextEditor/InlineStyleControls.d.ts +3 -0
- package/es/components/RichTextEditor/InlineStyleControls.js +18 -0
- package/es/components/RichTextEditor/InlineStyleControls.js.map +1 -0
- package/es/components/RichTextEditor/StyleButton.d.ts +3 -0
- package/es/components/RichTextEditor/StyleButton.js +14 -0
- package/es/components/RichTextEditor/StyleButton.js.map +1 -0
- package/es/components/RichTextEditor/index.d.ts +20 -0
- package/es/components/RichTextEditor/index.js +117 -0
- package/es/components/RichTextEditor/index.js.map +1 -0
- package/es/components/RichTextEditor/index.less +99 -0
- package/es/components/SortDnD/Card.d.ts +3 -2
- package/es/components/SortDnD/Card.js +4 -2
- package/es/components/SortDnD/Card.js.map +1 -1
- package/es/components/SortDnD/Container.d.ts +2 -2
- package/es/components/SortDnD/Container.js +2 -2
- package/es/components/SortDnD/Container.js.map +1 -1
- package/es/components/SortDnD/index.d.ts +1 -1
- package/es/components/SortDnD/index.js +1 -1
- package/es/components/SortDnD/index.js.map +1 -1
- package/es/components/VoLayout/index.js +9 -10
- package/es/components/VoLayout/index.js.map +1 -1
- package/es/controls/DocumentStatusLabel/index.js.map +1 -1
- package/es/data/contexts/StoreContext/index.js +0 -1
- package/es/data/contexts/StoreContext/index.js.map +1 -1
- package/es/data/task/TaskStore.d.ts +2 -0
- package/es/data/task/TaskStore.js +5 -0
- package/es/data/task/TaskStore.js.map +1 -1
- package/es/modules/meeting/components/MeetingDetail/index.js +2 -2
- package/es/modules/meeting/components/MeetingDetail/index.js.map +1 -1
- package/es/modules/meeting/components/MeetingList/index.js +0 -1
- package/es/modules/meeting/components/MeetingList/index.js.map +1 -1
- package/es/modules/tasks/components/SubTaskList/index.js +9 -11
- package/es/modules/tasks/components/SubTaskList/index.js.map +1 -1
- package/es/modules/tasks/components/SubTaskList/index.less +2 -2
- package/es/modules/tasks/components/SubTaskList/state.d.ts +0 -1
- package/es/modules/tasks/components/SubTaskList/state.js +0 -4
- package/es/modules/tasks/components/SubTaskList/state.js.map +1 -1
- package/es/modules/tasks/components/TaskDetail/index.js +3 -3
- package/es/modules/tasks/components/TaskDetail/index.js.map +1 -1
- package/es/modules/tasks/components/TaskItem/TaskItem.js +5 -4
- package/es/modules/tasks/components/TaskItem/TaskItem.js.map +1 -1
- package/es/modules/tasks/components/TaskItem/index.less +1 -1
- package/es/modules/tasks/components/TaskList/index.js +12 -4
- package/es/modules/tasks/components/TaskList/index.js.map +1 -1
- package/es/modules/tasks/components/TaskList/state.d.ts +0 -1
- package/es/modules/tasks/components/TaskList/state.js +0 -4
- package/es/modules/tasks/components/TaskList/state.js.map +1 -1
- package/es/modules/tasks/pages/TaskTestView/index.js +23 -17
- package/es/modules/tasks/pages/TaskTestView/index.js.map +1 -1
- package/es/modules/tasks/pages/TaskTestView/index.less +8 -12
- package/es/styles/common.less +7 -5
- package/package.json +3 -1
@@ -40,7 +40,7 @@ const AvatarList = (props) => {
|
|
40
40
|
React.createElement("div", { className: classnames(styles["avatar-list"], props.className) },
|
41
41
|
props.list &&
|
42
42
|
props.list.map((item, index) => (React.createElement(Tooltip, { key: index, title: item.name },
|
43
|
-
React.createElement(Avatar, { src: item.url, size: 28, className: "avatar-img" })))),
|
43
|
+
React.createElement(Avatar, { src: item.url, size: 28, className: "avatar-img" }, item.name)))),
|
44
44
|
props.editable ? (React.createElement(Dropdown, { onVisibleChange: visibleChange, visible: state.visible, overlay: React.createElement(Menu, null,
|
45
45
|
React.createElement("div", { className: "avatar-search" },
|
46
46
|
React.createElement(Input.Search, { onSearch: searchByKeWord })),
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/AvatarList/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAa,MAAM,OAAO,CAAC;AAEnD,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAQ,MAAM,cAAc,CAAC;AAClF,OAAO,EAAY,oBAAoB,EAAmB,MAAM,oBAAoB,CAAC;AAIrF,OAAO,MAAM,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,0BAA0B;AAC1B,gBAAgB;AAChB,IAAI;AAEJ,MAAM,UAAU,GAAG,CAAC,KAMnB,EAAE,EAAE;IACJ,MAAM,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,KAAK,EAAE,IAAS,EAAE,EAAE;QAClC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;QACvB,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAO,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;QAClF,IAAI,KAAK,IAAI,KAAK,CAAC,QAAQ,EAAE;YAC5B,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;YACrB,MAAM,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC1B,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;YACtB,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;SAC7B;IACF,CAAC,CAAC;IACF,MAAM,cAAc,GAAG,CAAC,OAAY,EAAE,EAAE;QACvC,iGAAiG;IAClG,CAAC,CAAC;IACF,MAAM,aAAa,GAAG,CAAC,OAAgB,EAAE,EAAE;QAC1C,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC,CAAC;IACF,6CAA6C;IAC7C,oBAAoB,CAAC,IAAI,CAAC,EAAE;QAC3B,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;QACpC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC/B,GAAG,IAAI;YACP,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC;SACpD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,iCAAiC;IACjC,OAAO,WAAW,CAAC,GAAG,EAAE,CAAC;IACxB,iCAAiC;IACjC,6BAAK,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;QAChE,KAAK,CAAC,IAAI;YACV,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,KAAa,EAAE,EAAE,CAAC,CAC5C,oBAAC,OAAO,IAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI;gBACpC,oBAAC,MAAM,IAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,YAAY,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/AvatarList/index.tsx"],"names":[],"mappings":"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"}
|
@@ -8,20 +8,20 @@ const PageListView = (props) => {
|
|
8
8
|
// const [state] = useState(new State());
|
9
9
|
const context = props.context;
|
10
10
|
useEffect(() => {
|
11
|
+
// context.page = props.page || 1;
|
11
12
|
context.list = context.page > 1 ? [...context.list, ...props.data] : props.data;
|
12
13
|
// no more data to scroll load
|
13
|
-
if (!props.loading && (!props.data.length || props.data.length < props.pageSize))
|
14
|
-
context.hasMore = false;
|
15
|
-
console.log(context.hasMore, "context.list");
|
16
14
|
}, [props.data]);
|
17
15
|
// load more data
|
18
16
|
const loadData = (page) => {
|
19
|
-
if (!
|
20
|
-
|
21
|
-
if (props.loading || !context.hasMore)
|
22
|
-
return;
|
17
|
+
if ((!props.data.length || props.data.length < props.pageSize) && !props.loading)
|
18
|
+
context.hasMore = false;
|
23
19
|
context.page = page;
|
24
|
-
props.
|
20
|
+
if (props.loading)
|
21
|
+
return;
|
22
|
+
if (!context.hasMore)
|
23
|
+
return message.warning("List loaded all");
|
24
|
+
return props.loadData(page);
|
25
25
|
};
|
26
26
|
const { children, loading, scrollParentRef, description, imageStyle, image, noDataTip } = props;
|
27
27
|
return useObserver(() => (React.createElement(PageViewContext.ReactContext.Provider, { value: context },
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/PageListView/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAY,SAAS,EAAE,UAAU,EAA4B,MAAM,OAAO,CAAC;AAEzF,OAAO,cAAc,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,eAAe,MAAM,cAAc,CAAC;AAE3C,OAAO,MAAM,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,YAAY,GAAG,CAAC,KAYrB,EAAE,EAAE;IACJ,yCAAyC;IACzC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC9B,SAAS,CAAC,GAAG,EAAE;QACd,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/PageListView/index.tsx"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,27 @@
|
|
1
|
+
import React from "react";
|
2
|
+
import { faListOl, faListUl } from "@fortawesome/free-solid-svg-icons";
|
3
|
+
import { FontAwesomeIcon as FAIcon } from "@fortawesome/react-fontawesome";
|
4
|
+
import StyleButton from "./StyleButton";
|
5
|
+
const BLOCK_TYPES = [
|
6
|
+
{ label: "H1", style: "header-one" },
|
7
|
+
{ label: "H2", style: "header-two" },
|
8
|
+
{ label: "H3", style: "header-three" },
|
9
|
+
{ label: "H4", style: "header-four" },
|
10
|
+
{ label: "H5", style: "header-five" },
|
11
|
+
{ label: "H6", style: "header-six" },
|
12
|
+
{ label: "</>", style: "blockquote" },
|
13
|
+
{ label: React.createElement(FAIcon, { icon: faListUl }), style: "unordered-list-item" },
|
14
|
+
{ label: React.createElement(FAIcon, { icon: faListOl }), style: "ordered-list-item" }
|
15
|
+
// { label: "Code Block", style: "code-block" }
|
16
|
+
];
|
17
|
+
const BlockStyleControls = (props) => {
|
18
|
+
const { editorState } = props;
|
19
|
+
const selection = editorState.getSelection();
|
20
|
+
const blockType = editorState
|
21
|
+
.getCurrentContent()
|
22
|
+
.getBlockForKey(selection.getStartKey())
|
23
|
+
.getType();
|
24
|
+
return (React.createElement("div", { className: "richEditor-controls" }, BLOCK_TYPES.map(type => (React.createElement(StyleButton, { key: type.style, active: type.style === blockType, label: type.label, onToggle: props.onToggle, style: type.style })))));
|
25
|
+
};
|
26
|
+
export default BlockStyleControls;
|
27
|
+
//# sourceMappingURL=BlockStyleControls.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"BlockStyleControls.js","sourceRoot":"","sources":["../../../src/components/RichTextEditor/BlockStyleControls.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,eAAe,IAAI,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,WAAW,MAAM,eAAe,CAAC;AAExC,MAAM,WAAW,GAAG;IACnB,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE;IACpC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE;IACpC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,cAAc,EAAE;IACtC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE;IACrC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE;IACrC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE;IACpC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE;IACrC,EAAE,KAAK,EAAE,oBAAC,MAAM,IAAC,IAAI,EAAE,QAAQ,GAAI,EAAE,KAAK,EAAE,qBAAqB,EAAE;IACnE,EAAE,KAAK,EAAE,oBAAC,MAAM,IAAC,IAAI,EAAE,QAAQ,GAAI,EAAE,KAAK,EAAE,mBAAmB,EAAE;IACjE,+CAA+C;CAC/C,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,KAAU,EAAE,EAAE;IACzC,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IAC9B,MAAM,SAAS,GAAG,WAAW,CAAC,YAAY,EAAE,CAAC;IAC7C,MAAM,SAAS,GAAG,WAAW;SAC3B,iBAAiB,EAAE;SACnB,cAAc,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;SACvC,OAAO,EAAE,CAAC;IACZ,OAAO,CACN,6BAAK,SAAS,EAAC,qBAAqB,IAClC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CACxB,oBAAC,WAAW,IACX,GAAG,EAAE,IAAI,CAAC,KAAK,EACf,MAAM,EAAE,IAAI,CAAC,KAAK,KAAK,SAAS,EAChC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,KAAK,EAAE,IAAI,CAAC,KAAK,GAChB,CACF,CAAC,CACG,CACN,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import React from "react";
|
2
|
+
import StyleButton from "./StyleButton";
|
3
|
+
const InlineStyleControls = (props) => {
|
4
|
+
const currentStyle = props.editorState.getCurrentInlineStyle();
|
5
|
+
const INLINE_STYLES = [
|
6
|
+
{ label: React.createElement("span", { className: "color-bld" }, "B"), style: "BOLD" },
|
7
|
+
{ label: React.createElement("span", { className: "color-italic" }, "I"), style: "ITALIC" },
|
8
|
+
{ label: React.createElement("span", { className: "color-underline" }, "U"), style: "UNDERLINE" },
|
9
|
+
// { label: "Monospace", style: "CODE" },
|
10
|
+
{ label: React.createElement("span", { className: "color-red" }), style: "RED" },
|
11
|
+
{ label: React.createElement("span", { className: "color-blue" }), style: "BLUE" },
|
12
|
+
{ label: React.createElement("span", { className: "color-orange" }), style: "ORANGE" },
|
13
|
+
{ label: React.createElement("span", { className: "color-green" }), style: "GREEN" }
|
14
|
+
];
|
15
|
+
return (React.createElement("div", { className: "richEditor-controls" }, INLINE_STYLES.map(type => (React.createElement(StyleButton, { key: type.style, active: currentStyle.has(type.style), label: type.label, onToggle: props.onToggle, style: type.style })))));
|
16
|
+
};
|
17
|
+
export default InlineStyleControls;
|
18
|
+
//# sourceMappingURL=InlineStyleControls.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"InlineStyleControls.js","sourceRoot":"","sources":["../../../src/components/RichTextEditor/InlineStyleControls.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,WAAW,MAAM,eAAe,CAAC;AAExC,MAAM,mBAAmB,GAAG,CAAC,KAAU,EAAE,EAAE;IAC1C,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,qBAAqB,EAAE,CAAC;IAC/D,MAAM,aAAa,GAAG;QACrB,EAAE,KAAK,EAAE,8BAAM,SAAS,EAAC,WAAW,QAAS,EAAE,KAAK,EAAE,MAAM,EAAE;QAC9D,EAAE,KAAK,EAAE,8BAAM,SAAS,EAAC,cAAc,QAAS,EAAE,KAAK,EAAE,QAAQ,EAAE;QACnE,EAAE,KAAK,EAAE,8BAAM,SAAS,EAAC,iBAAiB,QAAS,EAAE,KAAK,EAAE,WAAW,EAAE;QACzE,yCAAyC;QACzC,EAAE,KAAK,EAAE,8BAAM,SAAS,EAAC,WAAW,GAAQ,EAAE,KAAK,EAAE,KAAK,EAAE;QAC5D,EAAE,KAAK,EAAE,8BAAM,SAAS,EAAC,YAAY,GAAQ,EAAE,KAAK,EAAE,MAAM,EAAE;QAC9D,EAAE,KAAK,EAAE,8BAAM,SAAS,EAAC,cAAc,GAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;QAClE,EAAE,KAAK,EAAE,8BAAM,SAAS,EAAC,aAAa,GAAQ,EAAE,KAAK,EAAE,OAAO,EAAE;KAChE,CAAC;IACF,OAAO,CACN,6BAAK,SAAS,EAAC,qBAAqB,IAClC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAC1B,oBAAC,WAAW,IACX,GAAG,EAAE,IAAI,CAAC,KAAK,EACf,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EACpC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,KAAK,EAAE,IAAI,CAAC,KAAK,GAChB,CACF,CAAC,CACG,CACN,CAAC;AACH,CAAC,CAAC;AACF,eAAe,mBAAmB,CAAC"}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import React from "react";
|
2
|
+
const StyleButton = (props) => {
|
3
|
+
let className = "richEditor-styleButton";
|
4
|
+
if (props.active) {
|
5
|
+
className += " richEditor-activeButton";
|
6
|
+
}
|
7
|
+
const onToggle = (e) => {
|
8
|
+
e.preventDefault();
|
9
|
+
props.onToggle(props.style);
|
10
|
+
};
|
11
|
+
return (React.createElement("span", { className: className, onMouseDown: onToggle }, props.label));
|
12
|
+
};
|
13
|
+
export default StyleButton;
|
14
|
+
//# sourceMappingURL=StyleButton.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"StyleButton.js","sourceRoot":"","sources":["../../../src/components/RichTextEditor/StyleButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,WAAW,GAAG,CAAC,KAAU,EAAE,EAAE;IAClC,IAAI,SAAS,GAAG,wBAAwB,CAAC;IACzC,IAAI,KAAK,CAAC,MAAM,EAAE;QACjB,SAAS,IAAI,0BAA0B,CAAC;KACxC;IACD,MAAM,QAAQ,GAAG,CAAC,CAAM,EAAE,EAAE;QAC3B,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC,CAAC;IACF,OAAO,CACN,8BAAM,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,IAC/C,KAAK,CAAC,KAAK,CACN,CACP,CAAC;AACH,CAAC,CAAC;AACF,eAAe,WAAW,CAAC"}
|
@@ -0,0 +1,20 @@
|
|
1
|
+
/// <reference types="react" />
|
2
|
+
import "./index.less";
|
3
|
+
declare const RichTextEditor: {
|
4
|
+
(props: {
|
5
|
+
placeholder?: string | undefined;
|
6
|
+
readOnly?: boolean | undefined;
|
7
|
+
content?: any;
|
8
|
+
editable?: boolean | undefined;
|
9
|
+
toolbar?: boolean | undefined;
|
10
|
+
btn?: boolean | undefined;
|
11
|
+
onChange?: ((v: any) => void) | undefined;
|
12
|
+
onSave?: ((v: any) => void) | undefined;
|
13
|
+
}): JSX.Element;
|
14
|
+
defaultProps: {
|
15
|
+
editable: boolean;
|
16
|
+
toolbar: boolean;
|
17
|
+
btn: boolean;
|
18
|
+
};
|
19
|
+
};
|
20
|
+
export default RichTextEditor;
|
@@ -0,0 +1,117 @@
|
|
1
|
+
import React, { useRef, useState } from "react";
|
2
|
+
import { Editor, EditorState, RichUtils, getDefaultKeyBinding, convertFromRaw, convertToRaw, ContentState, convertFromHTML } from "draft-js";
|
3
|
+
import { Button, Icon, Tooltip, Spin } from "@voplus/antd";
|
4
|
+
import BlockStyleControls from "./BlockStyleControls";
|
5
|
+
import InlineStyleControls from "./InlineStyleControls";
|
6
|
+
import StyleButton from "./StyleButton";
|
7
|
+
import "./index.less";
|
8
|
+
const RichTextEditor = (props) => {
|
9
|
+
const blocksFromHTML = convertFromHTML(props.content);
|
10
|
+
const content = props.content
|
11
|
+
? EditorState.createWithContent(props.content.indexOf("{") > -1
|
12
|
+
? convertFromRaw(JSON.parse(props.content))
|
13
|
+
: ContentState.createFromBlockArray(blocksFromHTML.contentBlocks, blocksFromHTML.entityMap))
|
14
|
+
: EditorState.createEmpty();
|
15
|
+
const [editorState, setEditorState] = React.useState(content);
|
16
|
+
const [edit, setEdit] = useState(false);
|
17
|
+
const [loading, setLoading] = useState(false);
|
18
|
+
const editor = useRef(null);
|
19
|
+
const focus = () => {
|
20
|
+
editor.current.focus();
|
21
|
+
};
|
22
|
+
const getBlockStyle = (block) => {
|
23
|
+
switch (block.getType()) {
|
24
|
+
case "blockquote":
|
25
|
+
return "richEditor-blockquote";
|
26
|
+
default:
|
27
|
+
return "";
|
28
|
+
}
|
29
|
+
};
|
30
|
+
const handleKeyCommand = (command, editorState) => {
|
31
|
+
const newState = RichUtils.handleKeyCommand(editorState, command);
|
32
|
+
if (newState) {
|
33
|
+
onChange(newState);
|
34
|
+
return true;
|
35
|
+
}
|
36
|
+
return false;
|
37
|
+
};
|
38
|
+
const mapKeyToEditorCommand = (e) => {
|
39
|
+
if (e.keyCode === 27 /* Esc */)
|
40
|
+
clear();
|
41
|
+
if (e.keyCode === 9 /* TAB */) {
|
42
|
+
const newEditorState = RichUtils.onTab(e, editorState, 4 /* maxDepth */);
|
43
|
+
if (newEditorState !== editorState) {
|
44
|
+
onChange(newEditorState);
|
45
|
+
}
|
46
|
+
return;
|
47
|
+
}
|
48
|
+
return getDefaultKeyBinding(e);
|
49
|
+
};
|
50
|
+
const toggleBlockType = (blockType) => {
|
51
|
+
onChange(RichUtils.toggleBlockType(editorState, blockType));
|
52
|
+
};
|
53
|
+
const toggleInlineStyle = (inlineStyle) => {
|
54
|
+
onChange(RichUtils.toggleInlineStyle(editorState, inlineStyle));
|
55
|
+
};
|
56
|
+
const styleMap = {
|
57
|
+
RED: { color: "#e24" },
|
58
|
+
BLUE: { color: "#39f" },
|
59
|
+
ORANGE: { color: "#f93" },
|
60
|
+
GREEN: { color: "#3a6" }
|
61
|
+
};
|
62
|
+
let className = "richEditor-editor";
|
63
|
+
var contentState = editorState.getCurrentContent();
|
64
|
+
if (!contentState.hasText()) {
|
65
|
+
if (contentState
|
66
|
+
.getBlockMap()
|
67
|
+
.first()
|
68
|
+
.getType() !== "unstyled") {
|
69
|
+
className += " richEditor-hidePlaceholder";
|
70
|
+
}
|
71
|
+
}
|
72
|
+
const undo = () => {
|
73
|
+
onChange(EditorState.undo(editorState));
|
74
|
+
};
|
75
|
+
const redo = () => {
|
76
|
+
onChange(EditorState.redo(editorState));
|
77
|
+
};
|
78
|
+
const onChange = (editorState) => {
|
79
|
+
setEditorState(editorState);
|
80
|
+
if (props.onChange)
|
81
|
+
props.onChange(JSON.stringify(convertToRaw(contentState)));
|
82
|
+
};
|
83
|
+
const save = async () => {
|
84
|
+
setLoading(true);
|
85
|
+
await props.onSave(JSON.stringify(convertToRaw(contentState)));
|
86
|
+
setLoading(false);
|
87
|
+
};
|
88
|
+
const clear = () => {
|
89
|
+
onChange(content);
|
90
|
+
setEdit(false);
|
91
|
+
};
|
92
|
+
const { placeholder, readOnly, editable, toolbar, btn } = props;
|
93
|
+
return (React.createElement(React.Fragment, null, editable || edit ? (React.createElement("div", { className: "rich-text-editor" },
|
94
|
+
React.createElement(Spin, { spinning: loading && !btn, indicator: React.createElement(Icon, { type: "loading" }) },
|
95
|
+
React.createElement("div", { className: "richEditor-root" },
|
96
|
+
toolbar && (React.createElement("div", { className: "richEditor-toolbar" },
|
97
|
+
React.createElement("div", { className: "richEditor-controls" },
|
98
|
+
React.createElement(StyleButton, { label: React.createElement(Icon, { type: "undo" }), onToggle: undo }),
|
99
|
+
React.createElement(StyleButton, { label: React.createElement(Icon, { type: "redo" }), onToggle: redo })),
|
100
|
+
React.createElement(InlineStyleControls, { editorState: editorState, onToggle: toggleInlineStyle }),
|
101
|
+
React.createElement(BlockStyleControls, { editorState: editorState, onToggle: toggleBlockType }),
|
102
|
+
React.createElement(StyleButton, { label: React.createElement(Tooltip, { title: "Save" },
|
103
|
+
React.createElement(Icon, { type: "save" })), onToggle: () => save() }))),
|
104
|
+
React.createElement("div", { className: className, onClick: focus },
|
105
|
+
React.createElement(Editor, { readOnly: readOnly, blockStyleFn: getBlockStyle, customStyleMap: styleMap, editorState: editorState, handleKeyCommand: handleKeyCommand.bind(event), keyBindingFn: mapKeyToEditorCommand.bind(event), onChange: onChange, placeholder: placeholder, ref: editor, spellCheck: true }))),
|
106
|
+
btn && (React.createElement("div", { className: "rich-text-editor-btn" },
|
107
|
+
!editable && (React.createElement(Button, { type: "default", onClick: clear }, "Cancel")),
|
108
|
+
React.createElement(Button, { type: "primary", loading: loading, onClick: save }, "Save")))))) : (React.createElement("div", { className: "readonly-editor", onClick: () => setEdit(!edit) },
|
109
|
+
React.createElement(Editor, { editorState: editorState, placeholder: placeholder, readOnly: true, onChange: () => { } })))));
|
110
|
+
};
|
111
|
+
RichTextEditor.defaultProps = {
|
112
|
+
editable: true,
|
113
|
+
toolbar: true,
|
114
|
+
btn: true
|
115
|
+
};
|
116
|
+
export default RichTextEditor;
|
117
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/RichTextEditor/index.tsx"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,99 @@
|
|
1
|
+
:global {
|
2
|
+
.richEditor-root {
|
3
|
+
background: #fff;
|
4
|
+
border: 1px solid #ddd;
|
5
|
+
font-size: 14px;
|
6
|
+
.richEditor-toolbar {
|
7
|
+
padding: 0 15px;
|
8
|
+
}
|
9
|
+
.richEditor-editor {
|
10
|
+
padding: 0 15px;
|
11
|
+
border-top: 1px solid #ddd;
|
12
|
+
cursor: text;
|
13
|
+
font-size: 16px;
|
14
|
+
.public-DraftEditorPlaceholder-root,
|
15
|
+
.public-DraftEditor-content {
|
16
|
+
margin: 0 -15px;
|
17
|
+
padding: 15px;
|
18
|
+
}
|
19
|
+
.public-DraftEditor-content {
|
20
|
+
min-height: 100px;
|
21
|
+
}
|
22
|
+
.richEditor-blockquote {
|
23
|
+
// color: #333;
|
24
|
+
// font-style: italic;
|
25
|
+
margin: 15px 0;
|
26
|
+
}
|
27
|
+
|
28
|
+
.public-DraftStyleDefault-pre {
|
29
|
+
background-color: rgba(0, 0, 0, 0.05);
|
30
|
+
font-size: 16px;
|
31
|
+
padding: 20px;
|
32
|
+
}
|
33
|
+
}
|
34
|
+
.richEditor-hidePlaceholder .public-DraftEditorPlaceholder-root {
|
35
|
+
display: none;
|
36
|
+
}
|
37
|
+
|
38
|
+
.richEditor-controls {
|
39
|
+
display: inline-block;
|
40
|
+
padding: 8px 0;
|
41
|
+
font-size: 14px;
|
42
|
+
margin-right: 15px;
|
43
|
+
user-select: none;
|
44
|
+
// border-right: 1px #ddd solid;
|
45
|
+
.color-bld {
|
46
|
+
font-weight: bold;
|
47
|
+
}
|
48
|
+
.color-italic {
|
49
|
+
font-weight: italic;
|
50
|
+
}
|
51
|
+
.color-underline {
|
52
|
+
text-decoration: underline;
|
53
|
+
}
|
54
|
+
.color-red,
|
55
|
+
.color-orange,
|
56
|
+
.color-blue,
|
57
|
+
.color-green {
|
58
|
+
display: inline-block;
|
59
|
+
width: 10px;
|
60
|
+
height: 10px;
|
61
|
+
}
|
62
|
+
.color-red {
|
63
|
+
background: #e24;
|
64
|
+
}
|
65
|
+
.color-orange {
|
66
|
+
background: #f93;
|
67
|
+
}
|
68
|
+
.color-blue {
|
69
|
+
background: #39f;
|
70
|
+
}
|
71
|
+
.color-green {
|
72
|
+
background: #3a6;
|
73
|
+
}
|
74
|
+
&:last-child {
|
75
|
+
border-right: 0;
|
76
|
+
margin-right: 0;
|
77
|
+
}
|
78
|
+
}
|
79
|
+
|
80
|
+
.richEditor-styleButton {
|
81
|
+
display: inline-block;
|
82
|
+
margin-right: 15px;
|
83
|
+
color: #333;
|
84
|
+
cursor: pointer;
|
85
|
+
font-weight: 500;
|
86
|
+
}
|
87
|
+
|
88
|
+
.richEditor-activeButton {
|
89
|
+
color: #5890ff;
|
90
|
+
}
|
91
|
+
}
|
92
|
+
|
93
|
+
.rich-text-editor-btn {
|
94
|
+
padding: 10px 0;
|
95
|
+
.ant-btn + .ant-btn {
|
96
|
+
margin-left: 10px;
|
97
|
+
}
|
98
|
+
}
|
99
|
+
}
|
@@ -3,6 +3,7 @@ import { ConnectDragSource, ConnectDropTarget, ConnectDragPreview } from "react-
|
|
3
3
|
export interface CardProps {
|
4
4
|
id: string;
|
5
5
|
text: string;
|
6
|
+
list: any[];
|
6
7
|
moveCard: (id: string, to: number) => void;
|
7
8
|
findCard: (id: string) => {
|
8
9
|
index: number;
|
@@ -12,7 +13,7 @@ export interface CardProps {
|
|
12
13
|
connectDropTarget: ConnectDropTarget;
|
13
14
|
isDragging: boolean;
|
14
15
|
canDrag: boolean;
|
15
|
-
|
16
|
+
moveAfter?: (id: string, afterId: string) => void;
|
16
17
|
}
|
17
|
-
declare const _default: import("react-dnd").DndComponentClass<import("react-dnd").DndComponentClass<React.FunctionComponent<CardProps>, Pick<CardProps, "text" | "id" | "canDrag" | "connectDropTarget" | "moveCard" | "findCard" | "
|
18
|
+
declare const _default: import("react-dnd").DndComponentClass<import("react-dnd").DndComponentClass<React.FunctionComponent<CardProps>, Pick<CardProps, "text" | "list" | "id" | "canDrag" | "connectDropTarget" | "moveCard" | "findCard" | "moveAfter">>, Pick<Pick<CardProps, "text" | "list" | "id" | "canDrag" | "connectDropTarget" | "moveCard" | "findCard" | "moveAfter">, "text" | "list" | "id" | "canDrag" | "moveCard" | "findCard" | "moveAfter">>;
|
18
19
|
export default _default;
|
@@ -43,8 +43,10 @@ export default DropTarget(ItemTypes.CARD, {
|
|
43
43
|
props.moveCard(droppedId, originalIndex);
|
44
44
|
}
|
45
45
|
const { index } = props.findCard(droppedId);
|
46
|
-
|
47
|
-
|
46
|
+
const afterId = props.list[index - 1] && props.list[index - 1].id;
|
47
|
+
console.log(droppedId, afterId, "props.findCard(droppedId)");
|
48
|
+
if (props.moveAfter)
|
49
|
+
props.moveAfter(droppedId, afterId);
|
48
50
|
},
|
49
51
|
canDrag: (props) => props.canDrag
|
50
52
|
}, (connect, monitor) => ({
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Card.js","sourceRoot":"","sources":["../../../src/components/SortDnD/Card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiB,MAAM,OAAO,CAAC;AACtC,OAAO,UAAU,MAAM,YAAY,CAAC;AASpC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,SAAS,MAAM,QAAQ,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,eAAe,IAAI,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAE3E,OAAO,MAAM,MAAM,cAAc,CAAC;
|
1
|
+
{"version":3,"file":"Card.js","sourceRoot":"","sources":["../../../src/components/SortDnD/Card.tsx"],"names":[],"mappings":"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"}
|
@@ -5,10 +5,10 @@ export interface ContainerProps {
|
|
5
5
|
list: any[];
|
6
6
|
text: any;
|
7
7
|
canDrag: boolean;
|
8
|
-
|
8
|
+
moveAfter?: (id: string, afterId: string) => void;
|
9
9
|
}
|
10
10
|
export interface ContainerState {
|
11
11
|
cards: any[];
|
12
12
|
}
|
13
|
-
declare const _default: import("react-dnd").DndComponentClass<React.FunctionComponent<ContainerProps>, Pick<ContainerProps, "text" | "list" | "canDrag" | "
|
13
|
+
declare const _default: import("react-dnd").DndComponentClass<React.FunctionComponent<ContainerProps>, Pick<ContainerProps, "text" | "list" | "canDrag" | "moveAfter">>;
|
14
14
|
export default _default;
|
@@ -4,7 +4,7 @@ import update from "immutability-helper";
|
|
4
4
|
import ItemTypes from "./type";
|
5
5
|
import Card from "./Card";
|
6
6
|
import { useObserver } from "mobx-react-lite";
|
7
|
-
const Container = ({ connectDropTarget, list, text, canDrag,
|
7
|
+
const Container = ({ connectDropTarget, list, text, canDrag, moveAfter }) => {
|
8
8
|
const ref = useRef(null);
|
9
9
|
const [cards, setCards] = useState(list);
|
10
10
|
useEffect(() => {
|
@@ -24,7 +24,7 @@ const Container = ({ connectDropTarget, list, text, canDrag, onSave }) => {
|
|
24
24
|
};
|
25
25
|
}, [cards]);
|
26
26
|
connectDropTarget(ref);
|
27
|
-
return useObserver(() => (React.createElement("div", { ref: ref }, cards.map((card, index) => (React.createElement(Card, { key: card.id, id: `${card.id}`, text: text(card, index), moveCard: moveCard, findCard: findCard, canDrag: canDrag,
|
27
|
+
return useObserver(() => (React.createElement("div", { ref: ref }, cards.map((card, index) => (React.createElement(Card, { list: cards, key: card.id, id: `${card.id}`, text: text(card, index), moveCard: moveCard, findCard: findCard, canDrag: canDrag, moveAfter: moveAfter }))))));
|
28
28
|
};
|
29
29
|
export default DropTarget(ItemTypes.CARD, {}, connect => ({
|
30
30
|
connectDropTarget: connect.dropTarget()
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Container.js","sourceRoot":"","sources":["../../../src/components/SortDnD/Container.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACxE,OAAO,EAAqB,UAAU,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,MAAM,MAAM,qBAAqB,CAAC;AACzC,OAAO,SAAS,MAAM,QAAQ,CAAC;AAE/B,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAa9C,MAAM,SAAS,GAA6B,CAAC,EAC5C,iBAAiB,EACjB,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,
|
1
|
+
{"version":3,"file":"Container.js","sourceRoot":"","sources":["../../../src/components/SortDnD/Container.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACxE,OAAO,EAAqB,UAAU,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,MAAM,MAAM,qBAAqB,CAAC;AACzC,OAAO,SAAS,MAAM,QAAQ,CAAC;AAE/B,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAa9C,MAAM,SAAS,GAA6B,CAAC,EAC5C,iBAAiB,EACjB,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,SAAS,EACT,EAAE,EAAE;IACJ,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IACzB,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IACzC,SAAS,CAAC,GAAG,EAAE;QACd,QAAQ,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,MAAM,QAAQ,GAAG,WAAW,CAC3B,CAAC,EAAU,EAAE,OAAe,EAAE,EAAE;QAC/B,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;QACrC,QAAQ,CACP,MAAM,CAAC,KAAK,EAAE;YACb,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;SACzC,CAAC,CACF,CAAC;IACH,CAAC,EACD,CAAC,KAAK,CAAC,CACP,CAAC;IACF,MAAM,QAAQ,GAAG,WAAW,CAC3B,CAAC,EAAU,EAAE,EAAE;QACd,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,OAAO;YACN,IAAI;YACJ,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;SAC1B,CAAC;IACH,CAAC,EACD,CAAC,KAAK,CAAC,CACP,CAAC;IACF,iBAAiB,CAAC,GAAG,CAAC,CAAC;IACvB,OAAO,WAAW,CAAC,GAAG,EAAE,CAAC,CACxB,6BAAK,GAAG,EAAE,GAAG,IACX,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAC3B,oBAAC,IAAI,IACJ,IAAI,EAAE,KAAK,EACX,GAAG,EAAE,IAAI,CAAC,EAAE,EACZ,EAAE,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,EAChB,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,EACvB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,GACnB,CACF,CAAC,CACG,CACN,CAAC,CAAC;AACJ,CAAC,CAAC;AACF,eAAe,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IACzD,iBAAiB,EAAE,OAAO,CAAC,UAAU,EAAE;CACvC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC"}
|
@@ -3,6 +3,6 @@ declare const _default: (props: {
|
|
3
3
|
list: any[];
|
4
4
|
text: React.ReactNode;
|
5
5
|
canDrag?: boolean | undefined;
|
6
|
-
|
6
|
+
moveAfter?: ((id: string, afterId: string) => void) | undefined;
|
7
7
|
}) => JSX.Element;
|
8
8
|
export default _default;
|
@@ -6,7 +6,7 @@ export default (props) => {
|
|
6
6
|
// const [shouldRender, setShouldRender] = useState(false);
|
7
7
|
// useEffect(() => setShouldRender(true));
|
8
8
|
return (React.createElement(DndProvider, { backend: HTML5Backend },
|
9
|
-
React.createElement(Container, { list: props.list, text: props.text, canDrag: !!props.canDrag,
|
9
|
+
React.createElement(Container, { list: props.list, text: props.text, canDrag: !!props.canDrag, moveAfter: props.moveAfter })));
|
10
10
|
};
|
11
11
|
0;
|
12
12
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/SortDnD/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAEnD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,YAAY,MAAM,yBAAyB,CAAC;AAEnD,OAAO,SAAS,MAAM,aAAa,CAAC;AAEpC,eAAe,CAAC,KAKf,EAAE,EAAE;IACJ,2DAA2D;IAC3D,0CAA0C;IAC1C,OAAO,CACN,oBAAC,WAAW,IAAC,OAAO,EAAE,YAAY;QACjC,oBAAC,SAAS,IACT,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,EACxB,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/SortDnD/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAEnD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,YAAY,MAAM,yBAAyB,CAAC;AAEnD,OAAO,SAAS,MAAM,aAAa,CAAC;AAEpC,eAAe,CAAC,KAKf,EAAE,EAAE;IACJ,2DAA2D;IAC3D,0CAA0C;IAC1C,OAAO,CACN,oBAAC,WAAW,IAAC,OAAO,EAAE,YAAY;QACjC,oBAAC,SAAS,IACT,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,EACxB,SAAS,EAAE,KAAK,CAAC,SAAS,GACzB,CAEW,CACd,CAAC;AACH,CAAC,CAAC;AACF,CAAC,CAAC"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import React, { useState
|
1
|
+
import React, { useState } from "react";
|
2
2
|
import { faTimes } from "@fortawesome/pro-light-svg-icons";
|
3
3
|
import { FontAwesomeIcon as FAIcon } from "@fortawesome/react-fontawesome";
|
4
4
|
import ListHeader from "../ListHeader";
|
@@ -13,24 +13,23 @@ const ListView = (props) => {
|
|
13
13
|
const [asideContext] = useState(AsideContent.createContext());
|
14
14
|
const [pageViewContext] = useState(PageListView.createContext());
|
15
15
|
const sortStore = useSort();
|
16
|
-
const [selectedIndex, setSelectedItem] = useState(-1);
|
17
|
-
useEffect(() => {
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
}, [sortStore
|
16
|
+
// const [selectedIndex, setSelectedItem] = useState(-1);
|
17
|
+
// useEffect(() => {
|
18
|
+
// // no more data to scroll load
|
19
|
+
// if (sortStore && sortStore.id)
|
20
|
+
// setSelectedItem(props.data.findIndex((item: any) => item.id === sortStore.id));
|
21
|
+
// }, [sortStore!.index!]);
|
22
22
|
// display page after creating a new item by clicking on “Submit”
|
23
23
|
// useEffect(() => {
|
24
24
|
// setSelectedItem(state.list.findIndex(item => item.id === sortStore!.id));
|
25
25
|
// }, [sortStore!.id]);
|
26
26
|
// load list data
|
27
27
|
const loadData = (page) => {
|
28
|
-
console.log(445445454);
|
29
28
|
props.loadData(page);
|
30
29
|
};
|
31
30
|
// creating a new item
|
32
31
|
const onOpenAside = () => {
|
33
|
-
setSelectedItem(-1);
|
32
|
+
// setSelectedItem(-1);
|
34
33
|
asideContext.openAside(addFormElement, { span: 12 });
|
35
34
|
};
|
36
35
|
const onItemClick = (id, index) => {
|
@@ -49,7 +48,7 @@ const ListView = (props) => {
|
|
49
48
|
React.createElement(AsideContent, { context: asideContext },
|
50
49
|
React.createElement("div", { className: "vo-layout-main" },
|
51
50
|
React.createElement(PageListView, { context: pageViewContext, data: props.data, loading: !!loading, loadData: loadData, pageSize: props.pageSize },
|
52
|
-
React.createElement(SortDnD, { canDrag: sortStore ? !!sortStore.canDrag : false, list: pageViewContext.list, text: (item, index) => (React.createElement("div", { key: index, onClick: () => onItemClick(item.id, index), className: sortStore.index === index
|
51
|
+
React.createElement(SortDnD, { canDrag: sortStore ? !!sortStore.canDrag : false, list: pageViewContext.list, text: (item, index) => (React.createElement("div", { key: index, onClick: () => onItemClick(item.id, index), className: sortStore.index === index || sortStore.id === item.id
|
53
52
|
? "vo-column-item vo-item-selected"
|
54
53
|
: "vo-column-item" }, props.renderItem(item, index))) })))))));
|
55
54
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/VoLayout/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/VoLayout/index.tsx"],"names":[],"mappings":"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"}
|