lu-lowcode-package-form 0.9.93 → 0.9.94
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/dist/index.cjs.js +271 -251
- package/dist/index.es.js +32730 -29157
- package/dist/style.css +1 -1
- package/dist/tinymce/icons/default/icons.min.js +1 -0
- package/dist/tinymce/langs/README.md +3 -0
- package/dist/tinymce/license.md +6 -0
- package/dist/tinymce/models/dom/model.min.js +4 -0
- package/dist/tinymce/plugins/accordion/plugin.min.js +4 -0
- package/dist/tinymce/plugins/advlist/plugin.min.js +4 -0
- package/dist/tinymce/plugins/anchor/plugin.min.js +4 -0
- package/dist/tinymce/plugins/autolink/plugin.min.js +4 -0
- package/dist/tinymce/plugins/autoresize/plugin.min.js +4 -0
- package/dist/tinymce/plugins/autosave/plugin.min.js +4 -0
- package/dist/tinymce/plugins/charmap/plugin.min.js +4 -0
- package/dist/tinymce/plugins/code/plugin.min.js +4 -0
- package/dist/tinymce/plugins/codesample/plugin.min.js +4 -0
- package/dist/tinymce/plugins/directionality/plugin.min.js +4 -0
- package/dist/tinymce/plugins/emoticons/js/emojiimages.js +1 -0
- package/dist/tinymce/plugins/emoticons/js/emojiimages.min.js +3 -0
- package/dist/tinymce/plugins/emoticons/js/emojis.js +1 -0
- package/dist/tinymce/plugins/emoticons/js/emojis.min.js +2 -0
- package/dist/tinymce/plugins/emoticons/plugin.min.js +4 -0
- package/dist/tinymce/plugins/fullscreen/plugin.min.js +4 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/ar.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/bg_BG.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/ca.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/cs.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/da.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/de.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/el.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/en.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/es.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/eu.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/fa.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/fi.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/fr_FR.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/he_IL.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/hi.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/hr.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/hu_HU.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/id.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/it.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/ja.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/kk.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/ko_KR.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/ms.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/nb_NO.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/nl.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/pl.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/pt_BR.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/pt_PT.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/ro.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/ru.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/sk.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/sl_SI.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/sv_SE.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/th_TH.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/tr.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/uk.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/vi.js +93 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/zh_CN.js +87 -0
- package/dist/tinymce/plugins/help/js/i18n/keynav/zh_TW.js +93 -0
- package/dist/tinymce/plugins/help/plugin.min.js +4 -0
- package/dist/tinymce/plugins/image/plugin.min.js +4 -0
- package/dist/tinymce/plugins/importcss/plugin.min.js +4 -0
- package/dist/tinymce/plugins/insertdatetime/plugin.min.js +4 -0
- package/dist/tinymce/plugins/link/plugin.min.js +4 -0
- package/dist/tinymce/plugins/lists/plugin.min.js +4 -0
- package/dist/tinymce/plugins/media/plugin.min.js +4 -0
- package/dist/tinymce/plugins/nonbreaking/plugin.min.js +4 -0
- package/dist/tinymce/plugins/pagebreak/plugin.min.js +4 -0
- package/dist/tinymce/plugins/preview/plugin.min.js +4 -0
- package/dist/tinymce/plugins/quickbars/plugin.min.js +4 -0
- package/dist/tinymce/plugins/save/plugin.min.js +4 -0
- package/dist/tinymce/plugins/searchreplace/plugin.min.js +4 -0
- package/dist/tinymce/plugins/table/plugin.min.js +4 -0
- package/dist/tinymce/plugins/visualblocks/plugin.min.js +4 -0
- package/dist/tinymce/plugins/visualchars/plugin.min.js +4 -0
- package/dist/tinymce/plugins/wordcount/plugin.min.js +4 -0
- package/dist/tinymce/skins/content/dark/content.js +1 -0
- package/dist/tinymce/skins/content/dark/content.min.css +1 -0
- package/dist/tinymce/skins/content/default/content.js +1 -0
- package/dist/tinymce/skins/content/default/content.min.css +1 -0
- package/dist/tinymce/skins/content/document/content.js +1 -0
- package/dist/tinymce/skins/content/document/content.min.css +1 -0
- package/dist/tinymce/skins/content/tinymce-5/content.js +1 -0
- package/dist/tinymce/skins/content/tinymce-5/content.min.css +1 -0
- package/dist/tinymce/skins/content/tinymce-5-dark/content.js +1 -0
- package/dist/tinymce/skins/content/tinymce-5-dark/content.min.css +1 -0
- package/dist/tinymce/skins/content/writer/content.js +1 -0
- package/dist/tinymce/skins/content/writer/content.min.css +1 -0
- package/dist/tinymce/skins/ui/oxide/content.inline.js +1 -0
- package/dist/tinymce/skins/ui/oxide/content.inline.min.css +1 -0
- package/dist/tinymce/skins/ui/oxide/content.js +1 -0
- package/dist/tinymce/skins/ui/oxide/content.min.css +1 -0
- package/dist/tinymce/skins/ui/oxide/skin.js +1 -0
- package/dist/tinymce/skins/ui/oxide/skin.min.css +1 -0
- package/dist/tinymce/skins/ui/oxide/skin.shadowdom.js +1 -0
- package/dist/tinymce/skins/ui/oxide/skin.shadowdom.min.css +1 -0
- package/dist/tinymce/skins/ui/oxide-dark/content.inline.js +1 -0
- package/dist/tinymce/skins/ui/oxide-dark/content.inline.min.css +1 -0
- package/dist/tinymce/skins/ui/oxide-dark/content.js +1 -0
- package/dist/tinymce/skins/ui/oxide-dark/content.min.css +1 -0
- package/dist/tinymce/skins/ui/oxide-dark/skin.js +1 -0
- package/dist/tinymce/skins/ui/oxide-dark/skin.min.css +1 -0
- package/dist/tinymce/skins/ui/oxide-dark/skin.shadowdom.js +1 -0
- package/dist/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.css +1 -0
- package/dist/tinymce/skins/ui/tinymce-5/content.inline.js +1 -0
- package/dist/tinymce/skins/ui/tinymce-5/content.inline.min.css +1 -0
- package/dist/tinymce/skins/ui/tinymce-5/content.js +1 -0
- package/dist/tinymce/skins/ui/tinymce-5/content.min.css +1 -0
- package/dist/tinymce/skins/ui/tinymce-5/skin.js +1 -0
- package/dist/tinymce/skins/ui/tinymce-5/skin.min.css +1 -0
- package/dist/tinymce/skins/ui/tinymce-5/skin.shadowdom.js +1 -0
- package/dist/tinymce/skins/ui/tinymce-5/skin.shadowdom.min.css +1 -0
- package/dist/tinymce/skins/ui/tinymce-5-dark/content.inline.js +1 -0
- package/dist/tinymce/skins/ui/tinymce-5-dark/content.inline.min.css +1 -0
- package/dist/tinymce/skins/ui/tinymce-5-dark/content.js +1 -0
- package/dist/tinymce/skins/ui/tinymce-5-dark/content.min.css +1 -0
- package/dist/tinymce/skins/ui/tinymce-5-dark/skin.js +1 -0
- package/dist/tinymce/skins/ui/tinymce-5-dark/skin.min.css +1 -0
- package/dist/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.js +1 -0
- package/dist/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.min.css +1 -0
- package/dist/tinymce/themes/silver/theme.min.js +4 -0
- package/dist/tinymce/tinymce.d.ts +3254 -0
- package/dist/tinymce/tinymce.min.js +4 -0
- package/package.json +5 -1
- package/public/tinymce/icons/default/icons.min.js +1 -0
- package/public/tinymce/langs/README.md +3 -0
- package/public/tinymce/license.md +6 -0
- package/public/tinymce/models/dom/model.min.js +4 -0
- package/public/tinymce/plugins/accordion/plugin.min.js +4 -0
- package/public/tinymce/plugins/advlist/plugin.min.js +4 -0
- package/public/tinymce/plugins/anchor/plugin.min.js +4 -0
- package/public/tinymce/plugins/autolink/plugin.min.js +4 -0
- package/public/tinymce/plugins/autoresize/plugin.min.js +4 -0
- package/public/tinymce/plugins/autosave/plugin.min.js +4 -0
- package/public/tinymce/plugins/charmap/plugin.min.js +4 -0
- package/public/tinymce/plugins/code/plugin.min.js +4 -0
- package/public/tinymce/plugins/codesample/plugin.min.js +4 -0
- package/public/tinymce/plugins/directionality/plugin.min.js +4 -0
- package/public/tinymce/plugins/emoticons/js/emojiimages.js +1 -0
- package/public/tinymce/plugins/emoticons/js/emojiimages.min.js +3 -0
- package/public/tinymce/plugins/emoticons/js/emojis.js +1 -0
- package/public/tinymce/plugins/emoticons/js/emojis.min.js +2 -0
- package/public/tinymce/plugins/emoticons/plugin.min.js +4 -0
- package/public/tinymce/plugins/fullscreen/plugin.min.js +4 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/ar.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/bg_BG.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/ca.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/cs.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/da.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/de.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/el.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/en.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/es.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/eu.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/fa.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/fi.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/fr_FR.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/he_IL.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/hi.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/hr.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/hu_HU.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/id.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/it.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/ja.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/kk.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/ko_KR.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/ms.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/nb_NO.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/nl.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/pl.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/pt_BR.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/pt_PT.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/ro.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/ru.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/sk.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/sl_SI.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/sv_SE.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/th_TH.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/tr.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/uk.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/vi.js +93 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/zh_CN.js +87 -0
- package/public/tinymce/plugins/help/js/i18n/keynav/zh_TW.js +93 -0
- package/public/tinymce/plugins/help/plugin.min.js +4 -0
- package/public/tinymce/plugins/image/plugin.min.js +4 -0
- package/public/tinymce/plugins/importcss/plugin.min.js +4 -0
- package/public/tinymce/plugins/insertdatetime/plugin.min.js +4 -0
- package/public/tinymce/plugins/link/plugin.min.js +4 -0
- package/public/tinymce/plugins/lists/plugin.min.js +4 -0
- package/public/tinymce/plugins/media/plugin.min.js +4 -0
- package/public/tinymce/plugins/nonbreaking/plugin.min.js +4 -0
- package/public/tinymce/plugins/pagebreak/plugin.min.js +4 -0
- package/public/tinymce/plugins/preview/plugin.min.js +4 -0
- package/public/tinymce/plugins/quickbars/plugin.min.js +4 -0
- package/public/tinymce/plugins/save/plugin.min.js +4 -0
- package/public/tinymce/plugins/searchreplace/plugin.min.js +4 -0
- package/public/tinymce/plugins/table/plugin.min.js +4 -0
- package/public/tinymce/plugins/visualblocks/plugin.min.js +4 -0
- package/public/tinymce/plugins/visualchars/plugin.min.js +4 -0
- package/public/tinymce/plugins/wordcount/plugin.min.js +4 -0
- package/public/tinymce/skins/content/dark/content.js +1 -0
- package/public/tinymce/skins/content/dark/content.min.css +1 -0
- package/public/tinymce/skins/content/default/content.js +1 -0
- package/public/tinymce/skins/content/default/content.min.css +1 -0
- package/public/tinymce/skins/content/document/content.js +1 -0
- package/public/tinymce/skins/content/document/content.min.css +1 -0
- package/public/tinymce/skins/content/tinymce-5/content.js +1 -0
- package/public/tinymce/skins/content/tinymce-5/content.min.css +1 -0
- package/public/tinymce/skins/content/tinymce-5-dark/content.js +1 -0
- package/public/tinymce/skins/content/tinymce-5-dark/content.min.css +1 -0
- package/public/tinymce/skins/content/writer/content.js +1 -0
- package/public/tinymce/skins/content/writer/content.min.css +1 -0
- package/public/tinymce/skins/ui/oxide/content.inline.js +1 -0
- package/public/tinymce/skins/ui/oxide/content.inline.min.css +1 -0
- package/public/tinymce/skins/ui/oxide/content.js +1 -0
- package/public/tinymce/skins/ui/oxide/content.min.css +1 -0
- package/public/tinymce/skins/ui/oxide/skin.js +1 -0
- package/public/tinymce/skins/ui/oxide/skin.min.css +1 -0
- package/public/tinymce/skins/ui/oxide/skin.shadowdom.js +1 -0
- package/public/tinymce/skins/ui/oxide/skin.shadowdom.min.css +1 -0
- package/public/tinymce/skins/ui/oxide-dark/content.inline.js +1 -0
- package/public/tinymce/skins/ui/oxide-dark/content.inline.min.css +1 -0
- package/public/tinymce/skins/ui/oxide-dark/content.js +1 -0
- package/public/tinymce/skins/ui/oxide-dark/content.min.css +1 -0
- package/public/tinymce/skins/ui/oxide-dark/skin.js +1 -0
- package/public/tinymce/skins/ui/oxide-dark/skin.min.css +1 -0
- package/public/tinymce/skins/ui/oxide-dark/skin.shadowdom.js +1 -0
- package/public/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.css +1 -0
- package/public/tinymce/skins/ui/tinymce-5/content.inline.js +1 -0
- package/public/tinymce/skins/ui/tinymce-5/content.inline.min.css +1 -0
- package/public/tinymce/skins/ui/tinymce-5/content.js +1 -0
- package/public/tinymce/skins/ui/tinymce-5/content.min.css +1 -0
- package/public/tinymce/skins/ui/tinymce-5/skin.js +1 -0
- package/public/tinymce/skins/ui/tinymce-5/skin.min.css +1 -0
- package/public/tinymce/skins/ui/tinymce-5/skin.shadowdom.js +1 -0
- package/public/tinymce/skins/ui/tinymce-5/skin.shadowdom.min.css +1 -0
- package/public/tinymce/skins/ui/tinymce-5-dark/content.inline.js +1 -0
- package/public/tinymce/skins/ui/tinymce-5-dark/content.inline.min.css +1 -0
- package/public/tinymce/skins/ui/tinymce-5-dark/content.js +1 -0
- package/public/tinymce/skins/ui/tinymce-5-dark/content.min.css +1 -0
- package/public/tinymce/skins/ui/tinymce-5-dark/skin.js +1 -0
- package/public/tinymce/skins/ui/tinymce-5-dark/skin.min.css +1 -0
- package/public/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.js +1 -0
- package/public/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.min.css +1 -0
- package/public/tinymce/themes/silver/theme.min.js +4 -0
- package/public/tinymce/tinymce.d.ts +3254 -0
- package/public/tinymce/tinymce.min.js +4 -0
- package/src/App.jsx +95 -24
- package/src/components/TinyMCEEditor/index.jsx +23 -0
- package/src/components/field/select/search-select.jsx +47 -20
- package/src/components/field/select/select.jsx +5 -4
- package/src/components/field/table/index.jsx +61 -23
- package/src/components/form-container/index.jsx +52 -16
- package/src/components/index.jsx +3 -1
- package/src/components/sortList/index.jsx +70 -0
- package/src/components/wangEditor/index.jsx +27 -30
- package/src/components/wangEditorNext/index.jsx +71 -2
- package/src/components/wangEditorNext/menu/custom-menu.jsx +23 -0
@@ -0,0 +1,70 @@
|
|
1
|
+
import React,{useRef} from 'react';
|
2
|
+
import { DndProvider, useDrag, useDrop } from 'react-dnd';
|
3
|
+
import { HTML5Backend } from 'react-dnd-html5-backend';
|
4
|
+
import { throttle } from 'lodash';
|
5
|
+
|
6
|
+
const ItemType = 'ITEM';
|
7
|
+
|
8
|
+
|
9
|
+
function SortableItem({ item, index, moveItem, renderItem }) {
|
10
|
+
const ref = useRef(null);
|
11
|
+
const [{ isDragging }, drag] = useDrag({
|
12
|
+
type: ItemType,
|
13
|
+
item: { index },
|
14
|
+
collect: (monitor) => ({
|
15
|
+
isDragging: monitor.isDragging(),
|
16
|
+
}),
|
17
|
+
});
|
18
|
+
|
19
|
+
const throttleMoveItem = throttle(moveItem, 100);
|
20
|
+
|
21
|
+
const [, drop] = useDrop({
|
22
|
+
accept: ItemType,
|
23
|
+
hover: (draggedItem) => {
|
24
|
+
if (draggedItem.index !== index) {
|
25
|
+
throttleMoveItem(draggedItem.index, index);
|
26
|
+
draggedItem.index = index;
|
27
|
+
}
|
28
|
+
},
|
29
|
+
});
|
30
|
+
|
31
|
+
drag(drop(ref));
|
32
|
+
|
33
|
+
return (
|
34
|
+
<div
|
35
|
+
ref={ref}
|
36
|
+
style={{
|
37
|
+
transform: isDragging ? 'scale(1.05)' : 'scale(1)',
|
38
|
+
transition: 'transform 0.2s ease',
|
39
|
+
zIndex: isDragging ? 1000 : 'auto',
|
40
|
+
}}
|
41
|
+
>
|
42
|
+
{renderItem(item, index, isDragging)}
|
43
|
+
</div>
|
44
|
+
);
|
45
|
+
}
|
46
|
+
|
47
|
+
function SortList({ items, setItems, renderItem }) {
|
48
|
+
const moveItem = (fromIndex, toIndex) => {
|
49
|
+
const updatedItems = [...items];
|
50
|
+
const [movedItem] = updatedItems.splice(fromIndex, 1);
|
51
|
+
updatedItems.splice(toIndex, 0, movedItem);
|
52
|
+
setItems(updatedItems);
|
53
|
+
};
|
54
|
+
|
55
|
+
return (
|
56
|
+
<DndProvider backend={HTML5Backend}>
|
57
|
+
{items.map((item, index) => (
|
58
|
+
<SortableItem
|
59
|
+
key={item.id}
|
60
|
+
index={index}
|
61
|
+
item={item}
|
62
|
+
moveItem={moveItem}
|
63
|
+
renderItem={renderItem}
|
64
|
+
/>
|
65
|
+
))}
|
66
|
+
</DndProvider>
|
67
|
+
);
|
68
|
+
}
|
69
|
+
|
70
|
+
export {SortList} ;
|
@@ -16,33 +16,33 @@ import { Modal } from 'antd'
|
|
16
16
|
let setSize = null;
|
17
17
|
let setRotation = null;
|
18
18
|
|
19
|
-
const printSizeConf = {
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
}
|
27
|
-
const printRotationConf = {
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
}
|
35
|
-
const formParamsConf = {
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
}
|
43
|
-
Boot.registerMenu(printSizeConf)
|
44
|
-
Boot.registerMenu(printRotationConf)
|
45
|
-
Boot.registerMenu(formParamsConf)
|
19
|
+
// const printSizeConf = {
|
20
|
+
// key: 'printSize',
|
21
|
+
// factory() {
|
22
|
+
// return new CustomMenu("纸张大小", (editor, value) => {
|
23
|
+
// typeof setSize === 'function' && setSize(editor, value)
|
24
|
+
// })
|
25
|
+
// }
|
26
|
+
// }
|
27
|
+
// const printRotationConf = {
|
28
|
+
// key: 'printRotation',
|
29
|
+
// factory() {
|
30
|
+
// return new CustomMenu("纸张方向", (editor, value) => {
|
31
|
+
// typeof setRotation === 'function' && setRotation(editor, value)
|
32
|
+
// })
|
33
|
+
// }
|
34
|
+
// }
|
35
|
+
// const formParamsConf = {
|
36
|
+
// key: 'formParams',
|
37
|
+
// factory() {
|
38
|
+
// return new CustomMenu("表单参数", (editor, value) => {
|
39
|
+
// typeof setRotation === 'function' && setRotation(editor, value)
|
40
|
+
// })
|
41
|
+
// }
|
42
|
+
// }
|
43
|
+
// Boot.registerMenu(printSizeConf)
|
44
|
+
// Boot.registerMenu(printRotationConf)
|
45
|
+
// Boot.registerMenu(formParamsConf)
|
46
46
|
|
47
47
|
|
48
48
|
|
@@ -59,7 +59,6 @@ const WangEditor = () => {
|
|
59
59
|
setRotation = (editor, value) => {
|
60
60
|
setModalTitle('设置纸张方向')
|
61
61
|
setShowEdit(true)
|
62
|
-
|
63
62
|
}
|
64
63
|
// 模拟 ajax 请求,异步设置 html
|
65
64
|
useEffect(() => {
|
@@ -67,8 +66,6 @@ const WangEditor = () => {
|
|
67
66
|
}, [])
|
68
67
|
useEffect(() => {
|
69
68
|
if (editor) {
|
70
|
-
|
71
|
-
console.log("editor.menus ////",editor.menus)
|
72
69
|
editor.on('before-delete', (type, range) => {
|
73
70
|
console.log('before-delete', type, range);
|
74
71
|
const selection = window.getSelection();
|
@@ -1,11 +1,61 @@
|
|
1
1
|
import React, { useState, useEffect } from 'react';
|
2
2
|
import '@wangeditor-next/editor/dist/css/style.css';
|
3
|
+
import { Boot } from '@wangeditor-next/editor'
|
3
4
|
import { Editor, Toolbar } from '@wangeditor-next/editor-for-react';
|
5
|
+
import { Modal } from 'antd';
|
6
|
+
import CustomMenu from "./menu/custom-menu"
|
7
|
+
|
8
|
+
let setSize = null;
|
9
|
+
let setRotation = null;
|
10
|
+
|
11
|
+
const printSizeConf = {
|
12
|
+
key: 'printSize',
|
13
|
+
factory() {
|
14
|
+
return new CustomMenu("纸张大小", (editor, value) => {
|
15
|
+
typeof setSize === 'function' && setSize(editor, value)
|
16
|
+
})
|
17
|
+
}
|
18
|
+
}
|
19
|
+
const printRotationConf = {
|
20
|
+
key: 'printRotation',
|
21
|
+
factory() {
|
22
|
+
return new CustomMenu("纸张方向", (editor, value) => {
|
23
|
+
typeof setRotation === 'function' && setRotation(editor, value)
|
24
|
+
})
|
25
|
+
}
|
26
|
+
}
|
27
|
+
const formParamsConf = {
|
28
|
+
key: 'formParams',
|
29
|
+
factory() {
|
30
|
+
return new CustomMenu("插入表单参数", (editor, value) => {
|
31
|
+
typeof setRotation === 'function' && setRotation(editor, value)
|
32
|
+
})
|
33
|
+
}
|
34
|
+
}
|
35
|
+
|
36
|
+
Boot.registerMenu(printSizeConf)
|
37
|
+
Boot.registerMenu(printRotationConf)
|
38
|
+
Boot.registerMenu(formParamsConf)
|
4
39
|
|
5
40
|
function WangEditorNext() {
|
41
|
+
|
6
42
|
const [editor, setEditor] = useState(null); // 存储 editor 实例
|
7
43
|
const [html, setHtml] = useState('<p>hello</p>');
|
8
44
|
|
45
|
+
const [showEdit, setShowEdit] = useState(false)
|
46
|
+
const [modalTitle, setModalTitle] = useState('纸张大小')
|
47
|
+
|
48
|
+
setSize = (editor, value) => {
|
49
|
+
setModalTitle('设置纸张大小')
|
50
|
+
setShowEdit(true)
|
51
|
+
}
|
52
|
+
setRotation = (editor, value) => {
|
53
|
+
setModalTitle('设置纸张方向')
|
54
|
+
setShowEdit(true)
|
55
|
+
}
|
56
|
+
|
57
|
+
const handleWithOk = () => {
|
58
|
+
}
|
9
59
|
// 模拟 ajax 请求,异步设置 html
|
10
60
|
useEffect(() => {
|
11
61
|
setTimeout(() => {
|
@@ -13,7 +63,15 @@ function WangEditorNext() {
|
|
13
63
|
}, 1500);
|
14
64
|
}, []);
|
15
65
|
|
16
|
-
const toolbarConfig = {
|
66
|
+
const toolbarConfig = {
|
67
|
+
insertKeys: {
|
68
|
+
index: 0,
|
69
|
+
keys: ['|' ], // show menu in toolbar
|
70
|
+
},
|
71
|
+
excludeKeys: [
|
72
|
+
'fullScreen', "insertLink"
|
73
|
+
],
|
74
|
+
};
|
17
75
|
const editorConfig = {
|
18
76
|
placeholder: '请输入内容...',
|
19
77
|
};
|
@@ -55,8 +113,19 @@ function WangEditorNext() {
|
|
55
113
|
style={{ height: '500px' }}
|
56
114
|
/>
|
57
115
|
</div>
|
116
|
+
|
117
|
+
<Modal
|
118
|
+
destroyOnClose={true}
|
119
|
+
width={500}
|
120
|
+
title={modalTitle}
|
121
|
+
open={showEdit}
|
122
|
+
onCancel={() => setShowEdit(false)}
|
123
|
+
onOk={handleWithOk}
|
124
|
+
>
|
125
|
+
111111111111
|
126
|
+
</Modal>
|
58
127
|
</>
|
59
128
|
);
|
60
129
|
}
|
61
130
|
|
62
|
-
export {WangEditorNext}
|
131
|
+
export { WangEditorNext };
|
@@ -0,0 +1,23 @@
|
|
1
|
+
|
2
|
+
class CustomMenu {
|
3
|
+
constructor(title, handleClick) {
|
4
|
+
this.title = title
|
5
|
+
this.tag = 'button'
|
6
|
+
this.handleClick = handleClick
|
7
|
+
}
|
8
|
+
|
9
|
+
getValue(editor) {
|
10
|
+
return 'A4'
|
11
|
+
}
|
12
|
+
isActive(editor) {
|
13
|
+
return false // or true
|
14
|
+
}
|
15
|
+
isDisabled(editor) {
|
16
|
+
return false // or true
|
17
|
+
}
|
18
|
+
exec(editor, value) {
|
19
|
+
typeof this.handleClick === 'function' && this.handleClick(editor,value)
|
20
|
+
}
|
21
|
+
}
|
22
|
+
|
23
|
+
export default CustomMenu
|