vue-admin-core
Version:
A Component Library for Vue 3
1 lines • 5.31 kB
Source Map (JSON)
{"version":3,"file":"index.mjs","sources":["../../../../../../package/components/rich-text/src/index.tsx"],"sourcesContent":["import { PropType, defineComponent, h, shallowRef } from \"vue\";\nimport Toolbar from \"./Toolbar\";\nimport Editor from \"./Editor\";\nimport type {\n IDomEditor,\n IEditorConfig,\n IToolbarConfig,\n SlateDescendant\n} from \"@wangeditor/editor\";\nimport { omit } from \"lodash-es\";\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from \"element-plus\";\nimport { getPrefixCls } from \"@vue-admin-core/utils/const\";\nconst prefixCls = getPrefixCls(\"rich-text\");\n\nexport default defineComponent({\n name: \"VacRichText\",\n inheritAttrs: false,\n props: {\n /** 编辑器模式 */\n mode: {\n type: String,\n default: \"default\"\n },\n toolbarConfig: {\n type: Object as PropType<Partial<IToolbarConfig>>,\n default: () => ({})\n },\n /** 编辑器默认内容 */\n defaultContent: {\n type: Array as PropType<SlateDescendant[]>,\n default: () => []\n },\n defaultHtml: {\n type: String,\n default: \"\"\n },\n /** 编辑器默认配置 */\n defaultConfig: {\n type: Object as PropType<IEditorConfig>,\n default: () => ({})\n },\n /* 自定义 v-model */\n modelValue: {\n type: String,\n default: \"\"\n },\n /** 是否禁用 */\n disabled: {\n type: Boolean\n },\n readOnly: {\n type: Boolean\n },\n placeholder: {\n type: String\n }\n },\n emits: [UPDATE_MODEL_EVENT, CHANGE_EVENT],\n setup(props, { attrs, emit }) {\n const editorRef = shallowRef<null | IDomEditor>(null); // editor 实例,必须用 shallowRef\n\n return () => {\n return h(\n \"div\",\n {\n ...omit(attrs, [\"value\"]),\n class: [prefixCls, attrs.class]\n },\n {\n default: () => [\n h(Toolbar, {\n editor: editorRef.value as any,\n mode: props.mode,\n defaultConfig: props.toolbarConfig\n }),\n h(Editor, {\n mode: props.mode,\n defaultContent: props.defaultContent,\n defaultHtml: props.defaultHtml,\n defaultConfig: props.defaultConfig,\n modelValue: props.modelValue,\n disabled: props.disabled,\n readOnly: props.readOnly,\n placeholder: props.placeholder,\n \"onUpdate:modelValue\": (value: string) => {\n emit(UPDATE_MODEL_EVENT, value);\n emit(CHANGE_EVENT, value);\n },\n onCreated: (editor: any) => (editorRef.value = editor)\n })\n ]\n }\n );\n };\n }\n});\n"],"names":["prefixCls","getPrefixCls","defineComponent","name","inheritAttrs","props","mode","type","String","default","toolbarConfig","Object","defaultContent","Array","defaultHtml","defaultConfig","modelValue","disabled","Boolean","readOnly","placeholder","emits","UPDATE_MODEL_EVENT","CHANGE_EVENT","setup","attrs","emit","editorRef","shallowRef","h","omit","class","Toolbar","editor","value","Editor","onCreated"],"mappings":"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"}