{"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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"}