UNPKG

vue-admin-core

Version:
1 lines 1.51 kB
{"version":3,"file":"parse-elem-html.mjs","sources":["../../../../../../package/components/msg-editor/src/parse-elem-html.ts"],"sourcesContent":["/**\n * @description parse elem html\n * @author wangfupeng\n */\n\nimport type { SlateElement } from \"@wangeditor/editor\";\nimport type { VariableElement } from \"./types\";\nimport type { DOMElement } from \"@wangeditor/core/dist/core/src/utils/dom\";\n\nfunction parseHtml(elem: DOMElement): SlateElement {\n // elem HTML 结构 <span data-w-e-type=\"variable\" data-w-e-is-void data-w-e-is-inline data-value=\"张三\" data-info=\"xxx\">@张三</span>\n\n const value = elem.getAttribute(\"data-value\") || \"\";\n const label = elem.getAttribute(\"data-label\") || \"\";\n return {\n type: \"variable\",\n value,\n label: label || elem.innerHTML,\n children: [{ text: \"\" }] // void node 必须有一个空白 text\n } as VariableElement;\n}\n\nconst parseHtmlConf = {\n selector: \"span[data-w-e-type='variable']\",\n parseElemHtml: parseHtml\n};\n\nexport default parseHtmlConf;\n"],"names":[],"mappings":"AASA,SAAS,UAAU,IAAgC,EAAA;AAGjD,EAAA,MAAM,KAAQ,GAAA,IAAA,CAAK,YAAa,CAAA,YAAY,CAAK,IAAA,EAAA,CAAA;AACjD,EAAA,MAAM,KAAQ,GAAA,IAAA,CAAK,YAAa,CAAA,YAAY,CAAK,IAAA,EAAA,CAAA;AACjD,EAAO,OAAA;AAAA,IACL,IAAM,EAAA,UAAA;AAAA,IACN,KAAA;AAAA,IACA,KAAA,EAAO,SAAS,IAAK,CAAA,SAAA;AAAA,IACrB,QAAU,EAAA,CAAC,EAAE,IAAA,EAAM,IAAI,CAAA;AAAA;AAAA,GACzB,CAAA;AACF,CAAA;AAEA,MAAM,aAAgB,GAAA;AAAA,EACpB,QAAU,EAAA,gCAAA;AAAA,EACV,aAAe,EAAA,SAAA;AACjB;;;;"}