vue-editify 0.0.37 → 0.0.39
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/examples/App.vue +11 -5
 - package/lib/editify.es.js +16 -7
 - package/lib/editify.umd.js +1 -1
 - package/lib/style.css +1 -1
 - package/package.json +2 -2
 - package/src/Editify.vue +2 -5
 - package/src/components/bussiness/Menu.vue +1 -1
 - package/src/core/index.js +7 -0
 - package/src/index.js +1 -1
 
    
        package/examples/App.vue
    CHANGED
    
    | 
         @@ -1,6 +1,6 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            <template>
         
     | 
| 
       2 
2 
     | 
    
         
             
            	<div style="padding: 100px 50px 50px 50px">
         
     | 
| 
       3 
     | 
    
         
            -
            		<editify v-model="value" placeholder="请输入正文内容..." allow-paste-html border @change="change" :menu="menuConfig" ref="editify" height="400px" @after-render="afterRender" :paste-keep-marks="{ 'data-zip': ['span'] }" :custom-parse-node="parseNode"></editify>
         
     | 
| 
      
 3 
     | 
    
         
            +
            		<editify v-model="value" placeholder="请输入正文内容..." allow-paste-html border @change="change" :menu="menuConfig" ref="editify" height="400px" @after-render="afterRender" :paste-keep-marks="{ 'data-zip': ['span'] }" autofocus :custom-parse-node="parseNode" show-word-length></editify>
         
     | 
| 
       4 
4 
     | 
    
         
             
            	</div>
         
     | 
| 
       5 
5 
     | 
    
         
             
            </template>
         
     | 
| 
       6 
6 
     | 
    
         
             
            <script>
         
     | 
| 
         @@ -11,9 +11,9 @@ export default { 
     | 
|
| 
       11 
11 
     | 
    
         
             
            	name: 'App',
         
     | 
| 
       12 
12 
     | 
    
         
             
            	data() {
         
     | 
| 
       13 
13 
     | 
    
         
             
            		return {
         
     | 
| 
       14 
     | 
    
         
            -
            			value: '<p><span 
     | 
| 
      
 14 
     | 
    
         
            +
            			value: '<p><span>这是一个基于<img src="https://www.ling0523.cn/images/image_0_1701164609409.jpg"/> </span><code>Vue3 + alex-editor</code><span> 构建的一套</span><span style="font-weight: bold;">精美UI样式</span><span>的</span><span style="font-weight: bold;">开箱即用</span><span>的</span><span style="color: #ec1a0a;">富文本编辑器</span></p>',
         
     | 
| 
       15 
15 
     | 
    
         
             
            			menuConfig: {
         
     | 
| 
       16 
     | 
    
         
            -
            				 
     | 
| 
      
 16 
     | 
    
         
            +
            				mode: 'inner',
         
     | 
| 
       17 
17 
     | 
    
         
             
            				sequence: {
         
     | 
| 
       18 
18 
     | 
    
         
             
            					alert: 100,
         
     | 
| 
       19 
19 
     | 
    
         
             
            					zip: 101
         
     | 
| 
         @@ -99,6 +99,12 @@ export default { 
     | 
|
| 
       99 
99 
     | 
    
         
             
            		// setTimeout(() => {
         
     | 
| 
       100 
100 
     | 
    
         
             
            		// 	this.value = '<p><br></p>'
         
     | 
| 
       101 
101 
     | 
    
         
             
            		// }, 3000)
         
     | 
| 
      
 102 
     | 
    
         
            +
            		setTimeout(() => {
         
     | 
| 
      
 103 
     | 
    
         
            +
            			const el = this.$refs.editify.editor.getElementByKey(4)
         
     | 
| 
      
 104 
     | 
    
         
            +
            			this.$refs.editify.editor.range.anchor.moveToStart(el)
         
     | 
| 
      
 105 
     | 
    
         
            +
            			this.$refs.editify.editor.range.focus.moveToStart(el)
         
     | 
| 
      
 106 
     | 
    
         
            +
            			this.$refs.editify.editor.rangeRender()
         
     | 
| 
      
 107 
     | 
    
         
            +
            		}, 100)
         
     | 
| 
       102 
108 
     | 
    
         
             
            	},
         
     | 
| 
       103 
109 
     | 
    
         
             
            	methods: {
         
     | 
| 
       104 
110 
     | 
    
         
             
            		afterRender() {
         
     | 
| 
         @@ -119,10 +125,10 @@ export default { 
     | 
|
| 
       119 
125 
     | 
    
         
             
            			return ele
         
     | 
| 
       120 
126 
     | 
    
         
             
            		},
         
     | 
| 
       121 
127 
     | 
    
         
             
            		change() {
         
     | 
| 
       122 
     | 
    
         
            -
            			console.log(this.$refs.editify.textValue)
         
     | 
| 
      
 128 
     | 
    
         
            +
            			//console.log(this.$refs.editify.textValue)
         
     | 
| 
       123 
129 
     | 
    
         
             
            		},
         
     | 
| 
       124 
130 
     | 
    
         
             
            		operate(name, val) {
         
     | 
| 
       125 
     | 
    
         
            -
            			console.log('触发operate事件', name, val)
         
     | 
| 
      
 131 
     | 
    
         
            +
            			//console.log('触发operate事件', name, val)
         
     | 
| 
       126 
132 
     | 
    
         
             
            		}
         
     | 
| 
       127 
133 
     | 
    
         
             
            	}
         
     | 
| 
       128 
134 
     | 
    
         
             
            }
         
     | 
    
        package/lib/editify.es.js
    CHANGED
    
    | 
         @@ -3865,11 +3865,12 @@ class AlexEditor { 
     | 
|
| 
       3865 
3865 
     | 
    
         
             
                        const index = elements.findIndex((item) => {
         
     | 
| 
       3866 
3866 
     | 
    
         
             
                          return this.range.anchor.element.isEqual(item);
         
     | 
| 
       3867 
3867 
     | 
    
         
             
                        });
         
     | 
| 
      
 3868 
     | 
    
         
            +
                        const offset = this.range.anchor.offset;
         
     | 
| 
       3868 
3869 
     | 
    
         
             
                        this.range.focus.moveToEnd(block);
         
     | 
| 
       3869 
3870 
     | 
    
         
             
                        this.delete();
         
     | 
| 
       3870 
3871 
     | 
    
         
             
                        const newElements = AlexElement.flatElements(newBlock.children);
         
     | 
| 
       3871 
3872 
     | 
    
         
             
                        this.range.focus.element = newElements[index];
         
     | 
| 
       3872 
     | 
    
         
            -
                        this.range.focus.offset =  
     | 
| 
      
 3873 
     | 
    
         
            +
                        this.range.focus.offset = offset;
         
     | 
| 
       3873 
3874 
     | 
    
         
             
                        this.range.anchor.moveToStart(newBlock);
         
     | 
| 
       3874 
3875 
     | 
    
         
             
                        this.delete();
         
     | 
| 
       3875 
3876 
     | 
    
         
             
                        this.emit("insertParagraph", newBlock, block);
         
     | 
| 
         @@ -15413,6 +15414,13 @@ const editorProps = { 
     | 
|
| 
       15413 
15414 
     | 
    
         
             
              pasteKeepStyles: {
         
     | 
| 
       15414 
15415 
     | 
    
         
             
                type: Object,
         
     | 
| 
       15415 
15416 
     | 
    
         
             
                default: null
         
     | 
| 
      
 15417 
     | 
    
         
            +
              },
         
     | 
| 
      
 15418 
     | 
    
         
            +
              //自定义渲染规则
         
     | 
| 
      
 15419 
     | 
    
         
            +
              renderRules: {
         
     | 
| 
      
 15420 
     | 
    
         
            +
                type: Array,
         
     | 
| 
      
 15421 
     | 
    
         
            +
                default: function() {
         
     | 
| 
      
 15422 
     | 
    
         
            +
                  return [];
         
     | 
| 
      
 15423 
     | 
    
         
            +
                }
         
     | 
| 
       15416 
15424 
     | 
    
         
             
              }
         
     | 
| 
       15417 
15425 
     | 
    
         
             
            };
         
     | 
| 
       15418 
15426 
     | 
    
         
             
            const getColNumbers = (row) => {
         
     | 
| 
         @@ -19980,7 +19988,7 @@ function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) { 
     | 
|
| 
       19980 
19988 
     | 
    
         
             
              ]);
         
     | 
| 
       19981 
19989 
     | 
    
         
             
            }
         
     | 
| 
       19982 
19990 
     | 
    
         
             
            const InsertTable = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["render", _sfc_render$2], ["__scopeId", "data-v-227ede65"]]);
         
     | 
| 
       19983 
     | 
    
         
            -
            const  
     | 
| 
      
 19991 
     | 
    
         
            +
            const Menu_vue_vue_type_style_index_0_scoped_a3e32a29_lang = "";
         
     | 
| 
       19984 
19992 
     | 
    
         
             
            const _sfc_main$1 = {
         
     | 
| 
       19985 
19993 
     | 
    
         
             
              name: "Menu",
         
     | 
| 
       19986 
19994 
     | 
    
         
             
              props: {
         
     | 
| 
         @@ -21198,8 +21206,8 @@ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) { 
     | 
|
| 
       21198 
21206 
     | 
    
         
             
                }), 256))
         
     | 
| 
       21199 
21207 
     | 
    
         
             
              ], 14, _hoisted_1$1);
         
     | 
| 
       21200 
21208 
     | 
    
         
             
            }
         
     | 
| 
       21201 
     | 
    
         
            -
            const Menu = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render$1], ["__scopeId", "data-v- 
     | 
| 
       21202 
     | 
    
         
            -
            const  
     | 
| 
      
 21209 
     | 
    
         
            +
            const Menu = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render$1], ["__scopeId", "data-v-a3e32a29"]]);
         
     | 
| 
      
 21210 
     | 
    
         
            +
            const Editify_vue_vue_type_style_index_0_scoped_2702e06f_lang = "";
         
     | 
| 
       21203 
21211 
     | 
    
         
             
            const _sfc_main = {
         
     | 
| 
       21204 
21212 
     | 
    
         
             
              name: "editify",
         
     | 
| 
       21205 
21213 
     | 
    
         
             
              props: { ...editorProps },
         
     | 
| 
         @@ -21330,7 +21338,8 @@ const _sfc_main = { 
     | 
|
| 
       21330 
21338 
     | 
    
         
             
                      (el) => {
         
     | 
| 
       21331 
21339 
     | 
    
         
             
                        var _a, _b, _c, _d, _e, _f;
         
     | 
| 
       21332 
21340 
     | 
    
         
             
                        preHandle.apply(this.editor, [el, ((_a = this.toolbarConfig) == null ? void 0 : _a.use) && ((_d = (_c = (_b = this.toolbarConfig) == null ? void 0 : _b.codeBlock) == null ? void 0 : _c.languages) == null ? void 0 : _d.show), (_f = (_e = this.toolbarConfig) == null ? void 0 : _e.codeBlock) == null ? void 0 : _f.languages.options]);
         
     | 
| 
       21333 
     | 
    
         
            -
                      }
         
     | 
| 
      
 21341 
     | 
    
         
            +
                      },
         
     | 
| 
      
 21342 
     | 
    
         
            +
                      ...this.renderRules
         
     | 
| 
       21334 
21343 
     | 
    
         
             
                    ],
         
     | 
| 
       21335 
21344 
     | 
    
         
             
                    allowCopy: this.allowCopy,
         
     | 
| 
       21336 
21345 
     | 
    
         
             
                    allowPaste: this.allowPaste,
         
     | 
| 
         @@ -22816,7 +22825,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { 
     | 
|
| 
       22816 
22825 
     | 
    
         
             
                ])) : createCommentVNode("", true)
         
     | 
| 
       22817 
22826 
     | 
    
         
             
              ]);
         
     | 
| 
       22818 
22827 
     | 
    
         
             
            }
         
     | 
| 
       22819 
     | 
    
         
            -
            const Editify = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v- 
     | 
| 
      
 22828 
     | 
    
         
            +
            const Editify = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-2702e06f"]]);
         
     | 
| 
       22820 
22829 
     | 
    
         
             
            const iconfont = "";
         
     | 
| 
       22821 
22830 
     | 
    
         
             
            const en_US = {
         
     | 
| 
       22822 
22831 
     | 
    
         
             
              textWrapUp: "Up feed",
         
     | 
| 
         @@ -22995,7 +23004,7 @@ const i18n = (locale) => { 
     | 
|
| 
       22995 
23004 
     | 
    
         
             
                return translations[locale][key];
         
     | 
| 
       22996 
23005 
     | 
    
         
             
              };
         
     | 
| 
       22997 
23006 
     | 
    
         
             
            };
         
     | 
| 
       22998 
     | 
    
         
            -
            const version = "0.0. 
     | 
| 
      
 23007 
     | 
    
         
            +
            const version = "0.0.39";
         
     | 
| 
       22999 
23008 
     | 
    
         
             
            const install = (app, props) => {
         
     | 
| 
       23000 
23009 
     | 
    
         
             
              const locale = (props ? props.locale : "zh_CN") || "zh_CN";
         
     | 
| 
       23001 
23010 
     | 
    
         
             
              app.provide("$editTrans", i18n(locale));
         
     |