UNPKG

vue-admin-core

Version:
93 lines (88 loc) 2.28 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var vue = require('vue'); var Toolbar = require('./Toolbar.js'); var Editor = require('./Editor.js'); var lodashEs = require('lodash-es'); var elementPlus = require('element-plus'); var _const = require('../../../utils/const.js'); const prefixCls = _const.getPrefixCls("rich-text"); var RichText = vue.defineComponent({ name: "VacRichText", inheritAttrs: false, props: { /** 编辑器模式 */ mode: { type: String, default: "default" }, toolbarConfig: { type: Object, default: () => ({}) }, /** 编辑器默认内容 */ defaultContent: { type: Array, default: () => [] }, defaultHtml: { type: String, default: "" }, /** 编辑器默认配置 */ defaultConfig: { type: Object, default: () => ({}) }, /* 自定义 v-model */ modelValue: { type: String, default: "" }, /** 是否禁用 */ disabled: { type: Boolean }, readOnly: { type: Boolean }, placeholder: { type: String } }, emits: [elementPlus.UPDATE_MODEL_EVENT, elementPlus.CHANGE_EVENT], setup(props, { attrs, emit }) { const editorRef = vue.shallowRef(null); return () => { return vue.h("div", { ...lodashEs.omit(attrs, ["value"]), class: [prefixCls, attrs.class] }, { default: () => [vue.h(Toolbar.default, { editor: editorRef.value, mode: props.mode, defaultConfig: props.toolbarConfig }), vue.h(Editor.default, { mode: props.mode, defaultContent: props.defaultContent, defaultHtml: props.defaultHtml, defaultConfig: props.defaultConfig, modelValue: props.modelValue, disabled: props.disabled, readOnly: props.readOnly, placeholder: props.placeholder, "onUpdate:modelValue": (value) => { emit(elementPlus.UPDATE_MODEL_EVENT, value); emit(elementPlus.CHANGE_EVENT, value); }, onCreated: (editor) => editorRef.value = editor })] }); }; } }); exports.default = RichText; //# sourceMappingURL=index.js.map