vditor 3.8.5 → 3.8.9

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.
Files changed (60) hide show
  1. package/README.md +48 -45
  2. package/dist/index.css +2 -2
  3. package/dist/index.d.ts +4 -1
  4. package/dist/index.min.js +722 -858
  5. package/dist/js/i18n/en_US.js +85 -0
  6. package/dist/js/i18n/ja_JP.js +85 -0
  7. package/dist/js/i18n/ko_KR.js +85 -0
  8. package/dist/js/i18n/ru_RU.js +85 -0
  9. package/dist/js/i18n/zh_CN.js +85 -0
  10. package/dist/js/i18n/zh_TW.js +85 -0
  11. package/dist/js/lute/lute.min.js +31 -28
  12. package/dist/method.d.ts +4 -1
  13. package/dist/method.min.js +157 -543
  14. package/dist/ts/markdown/adapterRender.d.ts +33 -0
  15. package/dist/ts/markdown/codeRender.d.ts +1 -2
  16. package/dist/ts/ui/initUI.d.ts +1 -0
  17. package/dist/ts/wysiwyg/index.d.ts +2 -0
  18. package/dist/types/index.d.ts +773 -0
  19. package/package.json +4 -4
  20. package/src/assets/.DS_Store +0 -0
  21. package/src/assets/scss/_content.scss +4 -0
  22. package/src/assets/scss/_reset.scss +11 -0
  23. package/src/index.ts +156 -97
  24. package/src/method.ts +6 -2
  25. package/src/ts/.DS_Store +0 -0
  26. package/src/ts/export/index.ts +7 -5
  27. package/src/ts/hint/index.ts +20 -11
  28. package/src/ts/markdown/abcRender.ts +3 -2
  29. package/src/ts/markdown/adapterRender.ts +33 -0
  30. package/src/ts/markdown/chartRender.ts +3 -2
  31. package/src/ts/markdown/codeRender.ts +5 -6
  32. package/src/ts/markdown/flowchartRender.ts +3 -2
  33. package/src/ts/markdown/graphvizRender.ts +13 -11
  34. package/src/ts/markdown/mathRender.ts +5 -4
  35. package/src/ts/markdown/mermaidRender.ts +4 -2
  36. package/src/ts/markdown/mindmapRender.ts +3 -2
  37. package/src/ts/markdown/plantumlRender.ts +3 -2
  38. package/src/ts/markdown/previewRender.ts +26 -4
  39. package/src/ts/preview/image.ts +2 -4
  40. package/src/ts/preview/index.ts +2 -5
  41. package/src/ts/toolbar/EditMode.ts +3 -4
  42. package/src/ts/toolbar/Headings.ts +6 -6
  43. package/src/ts/toolbar/Info.ts +1 -1
  44. package/src/ts/toolbar/MenuItem.ts +1 -3
  45. package/src/ts/toolbar/Record.ts +3 -4
  46. package/src/ts/ui/initUI.ts +19 -5
  47. package/src/ts/upload/index.ts +11 -11
  48. package/src/ts/util/Options.ts +255 -196
  49. package/src/ts/util/editorCommonEvent.ts +2 -2
  50. package/src/ts/util/fixBrowserBehavior.ts +10 -6
  51. package/src/ts/util/processCode.ts +1 -1
  52. package/src/ts/wysiwyg/highlightToolbarWYSIWYG.ts +298 -138
  53. package/src/ts/wysiwyg/index.ts +9 -4
  54. package/CHANGELOG.md +0 -1053
  55. package/dist/images/.DS_Store +0 -0
  56. package/dist/js/.DS_Store +0 -0
  57. package/dist/js/lute/.DS_Store +0 -0
  58. package/dist/js/mathjax/.DS_Store +0 -0
  59. package/dist/ts/i18n/index.d.ts +0 -2
  60. package/src/ts/i18n/index.ts +0 -476
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vditor v3.8.5 - A markdown editor written in TypeScript.
2
+ * Vditor v3.8.9 - A markdown editor written in TypeScript.
3
3
  *
4
4
  * MIT License
5
5
  *
@@ -45,7 +45,7 @@ return /******/ (() => { // webpackBootstrap
45
45
  /* harmony export */ "g": () => (/* binding */ Constants)
46
46
  /* harmony export */ });
47
47
  /* unused harmony export VDITOR_VERSION */
48
- var _VDITOR_VERSION = (/* unused pure expression or super */ null && ("3.8.5"));
48
+ var _VDITOR_VERSION = (/* unused pure expression or super */ null && ("3.8.9"));
49
49
 
50
50
  var Constants = /** @class */ (function () {
51
51
  function Constants() {
@@ -71,7 +71,7 @@ var Constants = /** @class */ (function () {
71
71
  "swift", "ini", "typescript", "vbnet", "yaml",
72
72
  "ada", "clojure", "dart", "erb", "fortran", "gradle", "haskell", "julia", "julia-repl", "lisp", "matlab",
73
73
  "pgsql", "powershell", "sql_more", "stata", "cmake", "mathematica"];
74
- Constants.CDN = "https://cdn.jsdelivr.net/npm/vditor@" + "3.8.5";
74
+ Constants.CDN = "https://cdn.jsdelivr.net/npm/vditor@" + "3.8.9";
75
75
  Constants.MARKDOWN_OPTIONS = {
76
76
  autoSpace: false,
77
77
  codeBlockPreview: true,
@@ -111,492 +111,6 @@ var Constants = /** @class */ (function () {
111
111
 
112
112
 
113
113
 
114
- /***/ }),
115
-
116
- /***/ 577:
117
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
118
-
119
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
120
- /* harmony export */ "a": () => (/* binding */ i18n)
121
- /* harmony export */ });
122
- var i18n = {
123
- en_US: {
124
- "alignCenter": "Center",
125
- "alignLeft": "Left",
126
- "alignRight": "Right",
127
- "alternateText": "Alternate text",
128
- "bold": "Blod",
129
- "both": "editor & preview",
130
- "check": "Task List",
131
- "close": "Close",
132
- "code": "Code Block",
133
- "code-theme": "Code Block Theme Preview",
134
- "column": "Column",
135
- "comment": "Comment",
136
- "confirm": "Confirm",
137
- "content-theme": "Content Theme Preview",
138
- "copied": "Copied",
139
- "copy": "Copy",
140
- "delete-column": "Delete Row",
141
- "delete-row": "Delete Column",
142
- "devtools": "DevTools",
143
- "down": "Down",
144
- "downloadTip": "The browser does not support the download function",
145
- "edit": "Edit",
146
- "edit-mode": "Toggle Edit Mode",
147
- "emoji": "Emoji",
148
- "export": "Export",
149
- "fileTypeError": "file type is error",
150
- "footnoteRef": "Footnote Ref",
151
- "fullscreen": "Toggle Fullscreen",
152
- "generate": "Generating",
153
- "headings": "Headings",
154
- "help": "Help",
155
- "imageURL": "image URL",
156
- "indent": "Indent",
157
- "info": "Info",
158
- "inline-code": "Inline Code",
159
- "insert-after": "Insert line after",
160
- "insert-before": "Insert line Before",
161
- "insertColumnLeft": "Insert 1 left",
162
- "insertColumnRight": "Insert 1 right",
163
- "insertRowAbove": "Insert 1 above",
164
- "insertRowBelow": "Insert 1 below",
165
- "instantRendering": "Instant Rendering",
166
- "italic": "Italic",
167
- "language": "Language",
168
- "line": "Line",
169
- "link": "Link",
170
- "linkRef": "Link Ref",
171
- "list": "List",
172
- "more": "More",
173
- "nameEmpty": "Name is empty",
174
- "ordered-list": "Order List",
175
- "outdent": "Outdent",
176
- "outline": "Outline",
177
- "over": "over",
178
- "performanceTip": "Real-time preview requires ${x}ms, you can close it",
179
- "preview": "Preview",
180
- "quote": "Quote",
181
- "record": "Start Record/End Record",
182
- "record-tip": "The device does not support recording",
183
- "recording": "recording...",
184
- "redo": "Redo",
185
- "remove": "Remove",
186
- "row": "Row",
187
- "spin": "Spin",
188
- "splitView": "Split View",
189
- "strike": "Strike",
190
- "table": "Table",
191
- "textIsNotEmpty": "text(no empty)",
192
- "title": "Title",
193
- "tooltipText": "Tooltip text",
194
- "undo": "Undo",
195
- "up": "Up",
196
- "update": "Update",
197
- "upload": "Upload image or file",
198
- "uploadError": "upload error",
199
- "uploading": "uploading...",
200
- "wysiwyg": "WYSIWYG",
201
- },
202
- ja_JP: {
203
- "alignCenter": "中央",
204
- "alignLeft": "左側",
205
- "alignRight": "右側",
206
- "alternateText": "イメージタグ",
207
- "bold": "太く",
208
- "both": "エディター & プレビュー",
209
- "check": "チェックリスト",
210
- "close": "閉じる",
211
- "code": "コードブロック挿入",
212
- "code-theme": "コードブロックテーマ",
213
- "column": "行列",
214
- "comment": "コメント",
215
- "confirm": "確認",
216
- "content-theme": "コンテンツテーマ",
217
- "copied": "コピー完了",
218
- "copy": "コピー",
219
- "delete-column": "列 消去",
220
- "delete-row": "行 消去",
221
- "devtools": "開発ツール",
222
- "down": "ダウンロード",
223
- "downloadTip": "ブラウザがダウンロード機能をサポートしていません。",
224
- "edit": "修正",
225
- "edit-mode": "編集モード",
226
- "emoji": "絵文字",
227
- "export": "書き出し",
228
- "fileTypeError": "サポートしていません。",
229
- "footnoteRef": "脚注参照",
230
- "fullscreen": "全体画面",
231
- "generate": "作成する",
232
- "headings": "タイトル大きさ",
233
- "help": "ヘルプ",
234
- "imageURL": "イメージ URL",
235
- "indent": "字下げ",
236
- "info": "情報",
237
- "inline-code": "インラインコード",
238
- "insert-after": "ブロックの後ろに入力",
239
- "insert-before": "ブロックの前に入力",
240
- "insertColumnLeft": "左側に列を挿入",
241
- "insertColumnRight": "右側に列を挿入",
242
- "insertRowAbove": "上に行を挿入",
243
- "insertRowBelow": "下に行を挿入",
244
- "instantRendering": "インスタントレンダリング",
245
- "italic": "斜体",
246
- "language": "言語",
247
- "line": "段落分割",
248
- "link": "リンク",
249
- "linkRef": "リンク参照",
250
- "list": "リスト",
251
- "more": "詳しく見る",
252
- "nameEmpty": "名前が入力されていません。",
253
- "ordered-list": "順序のあるリスト",
254
- "outdent": "ぶら下げインデント",
255
- "outline": "概要",
256
- "over": "オーバー",
257
- "performanceTip": "リアルタイムプレビューには、${x}msが必要でエディター/プレビューボタンをクリックして閉じる事が出来ます。",
258
- "preview": "プレビュー",
259
- "quote": "引用段落",
260
- "record": "録音開始/録音終了",
261
- "record-tip": "録音がサポートされていません。",
262
- "recording": "録音中...",
263
- "redo": "戻る",
264
- "remove": "消去",
265
- "row": "列",
266
- "spin": "スピン",
267
- "splitView": "マークダウン",
268
- "strike": "取り消し線",
269
- "table": "表 挿入",
270
- "textIsNotEmpty": "テキスト(no empty)",
271
- "title": "題名",
272
- "tooltipText": "ツールチップ",
273
- "undo": "取り消す",
274
- "up": "戻る",
275
- "update": "アップデート",
276
- "upload": "イメージをダウンロードする",
277
- "uploadError": "アップロード失敗",
278
- "uploading": "アップロード中",
279
- "wysiwyg": "ウィジウィグ",
280
- },
281
- ko_KR: {
282
- "alignCenter": "가운데",
283
- "alignLeft": "왼쪽",
284
- "alignRight": "오른쪽",
285
- "alternateText": "이미지 태그",
286
- "bold": "굵게",
287
- "both": "에디터 & 미리보기",
288
- "check": "체크박스",
289
- "close": "닫기",
290
- "code": "코드블럭삽입",
291
- "code-theme": "코드블럭테마",
292
- "column": "행",
293
- "comment": "코멘트",
294
- "confirm": "확인",
295
- "content-theme": "컨텐츠테마",
296
- "copied": "복사완료",
297
- "copy": "복사",
298
- "delete-column": "열 삭제",
299
- "delete-row": "행 삭제",
300
- "devtools": "개발툴",
301
- "down": "다운",
302
- "downloadTip": "브라우저가 다운로드 기능을 지원하지 않습니다",
303
- "edit": "수정",
304
- "edit-mode": "편집모드",
305
- "emoji": "이모지",
306
- "export": "내보내기",
307
- "fileTypeError": "지원하지않습니다.",
308
- "footnoteRef": "각주참조",
309
- "fullscreen": "전체화면",
310
- "generate": "생성",
311
- "headings": "제목크기",
312
- "help": "도움말",
313
- "imageURL": "이미지 URL",
314
- "indent": "들여쓰기",
315
- "info": "정보",
316
- "inline-code": "인라인코드",
317
- "insert-after": "블락 뒤로 입력",
318
- "insert-before": "블락 앞으로 입력",
319
- "insertColumnLeft": "왼쪽에 열 삽입",
320
- "insertColumnRight": "오른쪽에 열 삽입",
321
- "insertRowAbove": "위에 행 삽입",
322
- "insertRowBelow": "아래에 행 삽입",
323
- "instantRendering": "타이포라",
324
- "italic": "기울임꼴",
325
- "language": "언어",
326
- "line": "문단나눔",
327
- "link": "링크",
328
- "linkRef": "링크 참조",
329
- "list": "순서없는 목록",
330
- "more": "더보기",
331
- "nameEmpty": "이름이 비어있습니다.",
332
- "ordered-list": "순서있는 목록",
333
- "outdent": "내어쓰기",
334
- "outline": "개요",
335
- "over": "오버",
336
- "performanceTip": "실시간 미리보기에는 ${x}ms가 필요하며 에디터/미리보기 버튼을 클릭하여 닫을 수 있습니다.",
337
- "preview": "미리보기",
338
- "quote": "인용단락",
339
- "record": "녹음시작/녹음종료",
340
- "record-tip": "녹음을 지원하지 않습니다.",
341
- "recording": "녹음중...",
342
- "redo": "되돌리기",
343
- "remove": "삭제",
344
- "row": "열",
345
- "spin": "회전",
346
- "splitView": "마크다운",
347
- "strike": "취소선",
348
- "table": "표삽입",
349
- "textIsNotEmpty": "텍스트(no empty)",
350
- "title": "표제",
351
- "tooltipText": "툴팁",
352
- "undo": "취소하기",
353
- "up": "위로",
354
- "update": "업데이트",
355
- "upload": "이미지 업로드하기",
356
- "uploadError": "업로드 실패",
357
- "uploading": "업로드중...",
358
- "wysiwyg": "위지위그",
359
- },
360
- ru_RU: {
361
- "alignCenter": "Выровнять по центру",
362
- "alignLeft": "Выровнять по левому краю",
363
- "alignRight": "Выровнять по правому краю",
364
- "alternateText": "Альтернативный текст",
365
- "bold": "Полужирный текст",
366
- "both": "Редактор с предпросмотром",
367
- "check": "Список задач",
368
- "close": "Закрыть",
369
- "code": "Блок кода",
370
- "code-theme": "Тема отображения блока кода",
371
- "column": "Количество столбцов",
372
- "comment": "Комментарий",
373
- "confirm": "Подтвердить",
374
- "content-theme": "Тема отображения контента",
375
- "copied": "Скопировано",
376
- "copy": "Копировать",
377
- "delete-column": "Удалить столбец",
378
- "delete-row": "Удалить строку",
379
- "devtools": "Граф документа",
380
- "down": "Переместить вниз",
381
- "downloadTip": "Браузер не поддерживает функции загрузки",
382
- "edit": "Редактирование",
383
- "edit-mode": "Переключить режим редактирования",
384
- "emoji": "Смайлы",
385
- "export": "Экспорт",
386
- "fileTypeError": "Ошибка типа файла",
387
- "footnoteRef": "Сноска",
388
- "fullscreen": "Переключиться на полный экран",
389
- "generate": "Генерация",
390
- "headings": "Заголовки",
391
- "help": "Помощь",
392
- "imageURL": "Ссылка на картинку",
393
- "indent": "Отступ",
394
- "info": "Информация о редакторе",
395
- "inline-code": "Встроенный код ",
396
- "insert-after": "Вставить линию после этой строки",
397
- "insert-before": "Вставить линию перед этой строкой",
398
- "insertColumnLeft": "Вставить столбец слева",
399
- "insertColumnRight": "Вставить столбец справа",
400
- "insertRowAbove": "Вставить строку сверху",
401
- "insertRowBelow": "Вставить строку снизу",
402
- "instantRendering": "Мгновенный рендеринг",
403
- "italic": "Курсив",
404
- "language": "Синтаксис",
405
- "line": "Линия",
406
- "link": "Ссылка",
407
- "linkRef": "Вставить ссылку",
408
- "list": "Список",
409
- "more": "Дополнительно",
410
- "nameEmpty": "Имя пустое",
411
- "ordered-list": "Упорядоченный список",
412
- "outdent": "Выступ",
413
- "outline": "Содержание",
414
- "over": "Над",
415
- "performanceTip": "Предварительный просмотр в реальном времени требует ${x}мс, вы можете закрыть его",
416
- "preview": "Предпросмотр",
417
- "quote": "Цитата",
418
- "record": "Начать запись/Завершить запись",
419
- "record-tip": "Устройство не поддерживает запись",
420
- "recording": "Запись...",
421
- "redo": "Вернуть",
422
- "remove": "Удалить",
423
- "row": "Количество строк",
424
- "spin": "Прокрутка",
425
- "splitView": "Разделенный просмотр",
426
- "strike": "Зачеркнутый текст",
427
- "table": "Таблица",
428
- "textIsNotEmpty": "Текст (непустой)",
429
- "title": "Заголовок",
430
- "tooltipText": "Текст всплывающей подсказки",
431
- "undo": "Отменить",
432
- "up": "Переместить вверх",
433
- "update": "Обновить",
434
- "upload": "Загрузить изображение или файл",
435
- "uploadError": "Ошибка загрузки",
436
- "uploading": "Загрузка...",
437
- "wysiwyg": "Редактор WYSIWYG",
438
- },
439
- zh_CN: {
440
- "alignCenter": "居中",
441
- "alignLeft": "居左",
442
- "alignRight": "居右",
443
- "alternateText": "替代文本",
444
- "bold": "粗体",
445
- "both": "编辑 & 预览",
446
- "check": "任务列表",
447
- "close": "关闭",
448
- "code": "代码块",
449
- "code-theme": "代码块主题预览",
450
- "column": "列",
451
- "comment": "评论",
452
- "confirm": "确定",
453
- "content-theme": "内容主题预览",
454
- "copied": "已复制",
455
- "copy": "复制",
456
- "delete-column": "删除列",
457
- "delete-row": "删除行",
458
- "devtools": "开发者工具",
459
- "down": "下",
460
- "downloadTip": "该浏览器不支持下载功能",
461
- "edit": "编辑",
462
- "edit-mode": "切换编辑模式",
463
- "emoji": "表情",
464
- "export": "导出",
465
- "fileTypeError": "文件类型不允许上传",
466
- "footnoteRef": "脚注标识",
467
- "fullscreen": "全屏切换",
468
- "generate": "生成中",
469
- "headings": "标题",
470
- "help": "帮助",
471
- "imageURL": "图片地址",
472
- "indent": "列表缩进",
473
- "info": "关于",
474
- "inline-code": "行内代码",
475
- "insert-after": "末尾插入行",
476
- "insert-before": "起始插入行",
477
- "insertColumnLeft": "在左边插入一列",
478
- "insertColumnRight": "在右边插入一列",
479
- "insertRowAbove": "在上方插入一行",
480
- "insertRowBelow": "在下方插入一行",
481
- "instantRendering": "即时渲染",
482
- "italic": "斜体",
483
- "language": "语言",
484
- "line": "分隔线",
485
- "link": "链接",
486
- "linkRef": "引用标识",
487
- "list": "无序列表",
488
- "more": "更多",
489
- "nameEmpty": "文件名不能为空",
490
- "ordered-list": "有序列表",
491
- "outdent": "列表反向缩进",
492
- "outline": "大纲",
493
- "over": "超过",
494
- "performanceTip": "实时预览需 ${x}ms,可点击编辑 & 预览按钮进行关闭",
495
- "preview": "预览",
496
- "quote": "引用",
497
- "record": "开始录音/结束录音",
498
- "record-tip": "该设备不支持录音功能",
499
- "recording": "录音中...",
500
- "redo": "重做",
501
- "remove": "删除",
502
- "row": "行",
503
- "spin": "旋转",
504
- "splitView": "分屏预览",
505
- "strike": "删除线",
506
- "table": "表格",
507
- "textIsNotEmpty": "文本(不能为空)",
508
- "title": "标题",
509
- "tooltipText": "提示文本",
510
- "undo": "撤销",
511
- "up": "上",
512
- "update": "更新",
513
- "upload": "上传图片或文件",
514
- "uploadError": "上传错误",
515
- "uploading": "上传中...",
516
- "wysiwyg": "所见即所得",
517
- },
518
- zh_TW: {
519
- "alignCenter": "置中",
520
- "alignLeft": "置左",
521
- "alignRight": "置右",
522
- "alternateText": "替代文字",
523
- "bold": "粗體",
524
- "both": "編輯 & 預覽",
525
- "check": "任務列表",
526
- "close": "關閉",
527
- "code": "代碼塊",
528
- "code-theme": "代碼塊主題預覽",
529
- "column": "欄",
530
- "comment": "評論",
531
- "confirm": "確定",
532
- "content-theme": "內容主題預覽",
533
- "copied": "已複製",
534
- "copy": "複製",
535
- "delete-column": "刪除欄",
536
- "delete-row": "刪除列",
537
- "devtools": "開發者工具",
538
- "down": "下",
539
- "downloadTip": "該瀏覽器不支持下載功能",
540
- "edit": "編輯",
541
- "edit-mode": "切換編輯模式",
542
- "emoji": "表情",
543
- "export": "匯出",
544
- "fileTypeError": "檔案類型不允許上傳",
545
- "footnoteRef": "腳註參考",
546
- "fullscreen": "全螢幕切換",
547
- "generate": "生成中",
548
- "headings": "標題",
549
- "help": "幫助",
550
- "imageURL": "圖片位址",
551
- "indent": "列表縮排",
552
- "info": "關於",
553
- "inline-code": "行內代碼",
554
- "insert-after": "末尾插入列",
555
- "insert-before": "起始插入列",
556
- "insertColumnLeft": "在左邊插入一欄",
557
- "insertColumnRight": "在右邊插入一欄",
558
- "insertRowAbove": "在上方插入一行",
559
- "insertRowBelow": "在下方插入一行",
560
- "instantRendering": "即時渲染",
561
- "italic": "斜體",
562
- "language": "語言",
563
- "line": "分隔線",
564
- "link": "連結",
565
- "linkRef": "連結參考",
566
- "list": "無序列表",
567
- "more": "更多",
568
- "nameEmpty": "文件名不能為空",
569
- "ordered-list": "有序列表",
570
- "outdent": "列表反向縮排",
571
- "outline": "大綱",
572
- "over": "超過",
573
- "performanceTip": "即時預覽需 ${x}ms,可點擊編輯 & 預覽按鈕進行關閉",
574
- "preview": "預覽",
575
- "quote": "引用",
576
- "record": "開始錄音/結束錄音",
577
- "record-tip": "該設備不支持錄音功能",
578
- "recording": "錄音中...",
579
- "redo": "重做",
580
- "remove": "刪除",
581
- "row": "列",
582
- "spin": "旋轉",
583
- "splitView": "分割預覽",
584
- "strike": "刪除縣",
585
- "table": "表格",
586
- "textIsNotEmpty": "文字(不能為空)",
587
- "title": "標題",
588
- "tooltipText": "提示文字",
589
- "undo": "撤銷",
590
- "up": "上",
591
- "update": "更新",
592
- "upload": "上傳圖片或文件",
593
- "uploadError": "上傳錯誤",
594
- "uploading": "上傳中...",
595
- "wysiwyg": "所見即所得",
596
- }
597
- };
598
-
599
-
600
114
  /***/ }),
601
115
 
602
116
  /***/ 369:
@@ -606,15 +120,17 @@ var i18n = {
606
120
  /* harmony export */ "Q": () => (/* binding */ abcRender)
607
121
  /* harmony export */ });
608
122
  /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(260);
609
- /* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(228);
123
+ /* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(228);
124
+ /* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(46);
125
+
610
126
 
611
127
 
612
128
  var abcRender = function (element, cdn) {
613
129
  if (element === void 0) { element = document; }
614
130
  if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; }
615
- var abcElements = element.querySelectorAll(".language-abc");
131
+ var abcElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.abcRenderAdapter.getElements(element);
616
132
  if (abcElements.length > 0) {
617
- (0,_util_addScript__WEBPACK_IMPORTED_MODULE_1__/* .addScript */ .G)(cdn + "/dist/js/abcjs/abcjs_basic.min.js", "vditorAbcjsScript").then(function () {
133
+ (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)(cdn + "/dist/js/abcjs/abcjs_basic.min.js", "vditorAbcjsScript").then(function () {
618
134
  abcElements.forEach(function (item) {
619
135
  if (item.parentElement.classList.contains("vditor-wysiwyg__pre") ||
620
136
  item.parentElement.classList.contains("vditor-ir__marker--pre")) {
@@ -623,7 +139,7 @@ var abcRender = function (element, cdn) {
623
139
  if (item.getAttribute("data-processed") === "true") {
624
140
  return;
625
141
  }
626
- ABCJS.renderAbc(item, item.textContent.trim());
142
+ ABCJS.renderAbc(item, _adapterRender__WEBPACK_IMPORTED_MODULE_1__.abcRenderAdapter.getCode(item).trim());
627
143
  item.style.overflowX = "auto";
628
144
  item.setAttribute("data-processed", "true");
629
145
  });
@@ -632,6 +148,57 @@ var abcRender = function (element, cdn) {
632
148
  };
633
149
 
634
150
 
151
+ /***/ }),
152
+
153
+ /***/ 46:
154
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
155
+
156
+ __webpack_require__.r(__webpack_exports__);
157
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
158
+ /* harmony export */ "mathRenderAdapter": () => (/* binding */ mathRenderAdapter),
159
+ /* harmony export */ "mermaidRenderAdapter": () => (/* binding */ mermaidRenderAdapter),
160
+ /* harmony export */ "mindmapRenderAdapter": () => (/* binding */ mindmapRenderAdapter),
161
+ /* harmony export */ "chartRenderAdapter": () => (/* binding */ chartRenderAdapter),
162
+ /* harmony export */ "abcRenderAdapter": () => (/* binding */ abcRenderAdapter),
163
+ /* harmony export */ "graphvizRenderAdapter": () => (/* binding */ graphvizRenderAdapter),
164
+ /* harmony export */ "flowchartRenderAdapter": () => (/* binding */ flowchartRenderAdapter),
165
+ /* harmony export */ "plantumlRenderAdapter": () => (/* binding */ plantumlRenderAdapter)
166
+ /* harmony export */ });
167
+ var mathRenderAdapter = {
168
+ getCode: function (mathElement) { return mathElement.textContent; },
169
+ getElements: function (element) { return element.querySelectorAll(".language-math"); },
170
+ };
171
+ var mermaidRenderAdapter = {
172
+ /** 不仅要返回code,并且需要将 code 设置为 el 的 innerHTML */
173
+ getCode: function (el) { return el.textContent; },
174
+ getElements: function (element) { return element.querySelectorAll(".language-mermaid"); },
175
+ };
176
+ var mindmapRenderAdapter = {
177
+ getCode: function (el) { return el.getAttribute("data-code"); },
178
+ getElements: function (el) { return el.querySelectorAll(".language-mindmap"); },
179
+ };
180
+ var chartRenderAdapter = {
181
+ getCode: function (el) { return el.innerText; },
182
+ getElements: function (el) { return el.querySelectorAll(".language-echarts"); },
183
+ };
184
+ var abcRenderAdapter = {
185
+ getCode: function (el) { return el.textContent; },
186
+ getElements: function (el) { return el.querySelectorAll(".language-abc"); },
187
+ };
188
+ var graphvizRenderAdapter = {
189
+ getCode: function (el) { return el.textContent; },
190
+ getElements: function (el) { return el.querySelectorAll(".language-graphviz"); },
191
+ };
192
+ var flowchartRenderAdapter = {
193
+ getCode: function (el) { return el.textContent; },
194
+ getElements: function (el) { return el.querySelectorAll(".language-flowchart"); },
195
+ };
196
+ var plantumlRenderAdapter = {
197
+ getCode: function (el) { return el.textContent; },
198
+ getElements: function (el) { return el.querySelectorAll(".language-plantuml"); },
199
+ };
200
+
201
+
635
202
  /***/ }),
636
203
 
637
204
  /***/ 726:
@@ -641,21 +208,23 @@ var abcRender = function (element, cdn) {
641
208
  /* harmony export */ "p": () => (/* binding */ chartRender)
642
209
  /* harmony export */ });
643
210
  /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(260);
644
- /* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(228);
211
+ /* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(228);
212
+ /* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(46);
213
+
645
214
 
646
215
 
647
216
  var chartRender = function (element, cdn, theme) {
648
217
  if (element === void 0) { element = document; }
649
218
  if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; }
650
- var echartsElements = element.querySelectorAll(".language-echarts");
219
+ var echartsElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.chartRenderAdapter.getElements(element);
651
220
  if (echartsElements.length > 0) {
652
- (0,_util_addScript__WEBPACK_IMPORTED_MODULE_1__/* .addScript */ .G)(cdn + "/dist/js/echarts/echarts.min.js", "vditorEchartsScript").then(function () {
221
+ (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)(cdn + "/dist/js/echarts/echarts.min.js", "vditorEchartsScript").then(function () {
653
222
  echartsElements.forEach(function (e) {
654
223
  if (e.parentElement.classList.contains("vditor-wysiwyg__pre") ||
655
224
  e.parentElement.classList.contains("vditor-ir__marker--pre")) {
656
225
  return;
657
226
  }
658
- var text = e.innerText.trim();
227
+ var text = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.chartRenderAdapter.getCode(e).trim();
659
228
  if (!text) {
660
229
  return;
661
230
  }
@@ -685,12 +254,9 @@ var chartRender = function (element, cdn, theme) {
685
254
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
686
255
  /* harmony export */ "O": () => (/* binding */ codeRender)
687
256
  /* harmony export */ });
688
- /* harmony import */ var _i18n_index__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(577);
689
- /* harmony import */ var _util_code160to32__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(769);
257
+ /* harmony import */ var _util_code160to32__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(769);
690
258
 
691
-
692
- var codeRender = function (element, lang) {
693
- if (lang === void 0) { lang = "zh_CN"; }
259
+ var codeRender = function (element) {
694
260
  element.querySelectorAll("pre > code").forEach(function (e, index) {
695
261
  if (e.parentElement.classList.contains("vditor-wysiwyg__pre") ||
696
262
  e.parentElement.classList.contains("vditor-ir__marker--pre")) {
@@ -721,10 +287,10 @@ var codeRender = function (element, lang) {
721
287
  }
722
288
  var divElement = document.createElement("div");
723
289
  divElement.className = "vditor-copy";
724
- divElement.innerHTML = "<span aria-label=\"" + _i18n_index__WEBPACK_IMPORTED_MODULE_0__/* .i18n */ .a[lang].copy + "\"\nonmouseover=\"this.setAttribute('aria-label', '" + _i18n_index__WEBPACK_IMPORTED_MODULE_0__/* .i18n */ .a[lang].copy + "')\"\nclass=\"vditor-tooltipped vditor-tooltipped__w\"\nonclick=\"this.previousElementSibling.select();document.execCommand('copy');" +
725
- ("this.setAttribute('aria-label', '" + _i18n_index__WEBPACK_IMPORTED_MODULE_0__/* .i18n */ .a[lang].copied + "')\"><svg><use xlink:href=\"#vditor-icon-copy\"></use></svg></span>");
290
+ divElement.innerHTML = "<span aria-label=\"" + window.VditorI18n.copy + "\"\nonmouseover=\"this.setAttribute('aria-label', '" + window.VditorI18n.copy + "')\"\nclass=\"vditor-tooltipped vditor-tooltipped__w\"\nonclick=\"this.previousElementSibling.select();document.execCommand('copy');" +
291
+ ("this.setAttribute('aria-label', '" + window.VditorI18n.copied + "')\"><svg><use xlink:href=\"#vditor-icon-copy\"></use></svg></span>");
726
292
  var textarea = document.createElement("textarea");
727
- textarea.value = (0,_util_code160to32__WEBPACK_IMPORTED_MODULE_1__/* .code160to32 */ .X)(codeText);
293
+ textarea.value = (0,_util_code160to32__WEBPACK_IMPORTED_MODULE_0__/* .code160to32 */ .X)(codeText);
728
294
  divElement.insertAdjacentElement("afterbegin", textarea);
729
295
  e.before(divElement);
730
296
  e.style.maxHeight = (window.outerHeight - 40) + "px";
@@ -741,21 +307,23 @@ var codeRender = function (element, lang) {
741
307
  /* harmony export */ "P": () => (/* binding */ flowchartRender)
742
308
  /* harmony export */ });
743
309
  /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(260);
744
- /* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(228);
310
+ /* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(228);
311
+ /* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(46);
312
+
745
313
 
746
314
 
747
315
  var flowchartRender = function (element, cdn) {
748
316
  if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; }
749
- var flowchartElements = element.querySelectorAll(".language-flowchart");
317
+ var flowchartElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.flowchartRenderAdapter.getElements(element);
750
318
  if (flowchartElements.length === 0) {
751
319
  return;
752
320
  }
753
- (0,_util_addScript__WEBPACK_IMPORTED_MODULE_1__/* .addScript */ .G)(cdn + "/dist/js/flowchart.js/flowchart.min.js", "vditorFlowchartScript").then(function () {
321
+ (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)(cdn + "/dist/js/flowchart.js/flowchart.min.js", "vditorFlowchartScript").then(function () {
754
322
  flowchartElements.forEach(function (item) {
755
323
  if (item.getAttribute("data-processed") === "true") {
756
324
  return;
757
325
  }
758
- var flowchartObj = flowchart.parse(item.textContent);
326
+ var flowchartObj = flowchart.parse(_adapterRender__WEBPACK_IMPORTED_MODULE_1__.flowchartRenderAdapter.getCode(item));
759
327
  item.innerHTML = "";
760
328
  flowchartObj.drawSVG(item);
761
329
  item.setAttribute("data-processed", "true");
@@ -773,22 +341,25 @@ var flowchartRender = function (element, cdn) {
773
341
  /* harmony export */ "v": () => (/* binding */ graphvizRender)
774
342
  /* harmony export */ });
775
343
  /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(260);
776
- /* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(228);
344
+ /* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(228);
345
+ /* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(46);
346
+
777
347
 
778
348
 
779
349
  var graphvizRender = function (element, cdn) {
780
350
  if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; }
781
- var graphvizElements = element.querySelectorAll(".language-graphviz");
351
+ var graphvizElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.graphvizRenderAdapter.getElements(element);
782
352
  if (graphvizElements.length === 0) {
783
353
  return;
784
354
  }
785
- (0,_util_addScript__WEBPACK_IMPORTED_MODULE_1__/* .addScript */ .G)(cdn + "/dist/js/graphviz/viz.js", "vditorGraphVizScript").then(function () {
355
+ (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)(cdn + "/dist/js/graphviz/viz.js", "vditorGraphVizScript").then(function () {
786
356
  graphvizElements.forEach(function (e) {
357
+ var code = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.graphvizRenderAdapter.getCode(e);
787
358
  if (e.parentElement.classList.contains("vditor-wysiwyg__pre") ||
788
359
  e.parentElement.classList.contains("vditor-ir__marker--pre")) {
789
360
  return;
790
361
  }
791
- if (e.getAttribute("data-processed") === "true" || e.textContent.trim() === "") {
362
+ if (e.getAttribute("data-processed") === "true" || code.trim() === "") {
792
363
  return;
793
364
  }
794
365
  try {
@@ -797,7 +368,7 @@ var graphvizRender = function (element, cdn) {
797
368
  var blobUrl = url.createObjectURL(blob);
798
369
  var worker = new Worker(blobUrl);
799
370
  new Viz({ worker: worker })
800
- .renderSVGElement(e.textContent).then(function (result) {
371
+ .renderSVGElement(code).then(function (result) {
801
372
  e.innerHTML = result.outerHTML;
802
373
  }).catch(function (error) {
803
374
  e.innerHTML = "graphviz render error: <br>" + error;
@@ -905,15 +476,17 @@ var highlightRender = function (hljsOption, element, cdn) {
905
476
  /* harmony export */ "H": () => (/* binding */ mathRender)
906
477
  /* harmony export */ });
907
478
  /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(260);
908
- /* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(228);
909
- /* harmony import */ var _util_addStyle__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(946);
910
- /* harmony import */ var _util_code160to32__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(769);
479
+ /* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(228);
480
+ /* harmony import */ var _util_addStyle__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(946);
481
+ /* harmony import */ var _util_code160to32__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(769);
482
+ /* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(46);
483
+
911
484
 
912
485
 
913
486
 
914
487
 
915
488
  var mathRender = function (element, options) {
916
- var mathElements = element.querySelectorAll(".language-math");
489
+ var mathElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.mathRenderAdapter.getElements(element);
917
490
  if (mathElements.length === 0) {
918
491
  return;
919
492
  }
@@ -931,8 +504,8 @@ var mathRender = function (element, options) {
931
504
  }
932
505
  options = Object.assign({}, defaultOptions, options);
933
506
  if (options.math.engine === "KaTeX") {
934
- (0,_util_addStyle__WEBPACK_IMPORTED_MODULE_1__/* .addStyle */ .c)(options.cdn + "/dist/js/katex/katex.min.css", "vditorKatexStyle");
935
- (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)(options.cdn + "/dist/js/katex/katex.min.js", "vditorKatexScript").then(function () {
507
+ (0,_util_addStyle__WEBPACK_IMPORTED_MODULE_2__/* .addStyle */ .c)(options.cdn + "/dist/js/katex/katex.min.css", "vditorKatexStyle");
508
+ (0,_util_addScript__WEBPACK_IMPORTED_MODULE_3__/* .addScript */ .G)(options.cdn + "/dist/js/katex/katex.min.js", "vditorKatexScript").then(function () {
936
509
  mathElements.forEach(function (mathElement) {
937
510
  if (mathElement.parentElement.classList.contains("vditor-wysiwyg__pre") ||
938
511
  mathElement.parentElement.classList.contains("vditor-ir__marker--pre")) {
@@ -941,7 +514,7 @@ var mathRender = function (element, options) {
941
514
  if (mathElement.getAttribute("data-math")) {
942
515
  return;
943
516
  }
944
- var math = (0,_util_code160to32__WEBPACK_IMPORTED_MODULE_3__/* .code160to32 */ .X)(mathElement.textContent);
517
+ var math = (0,_util_code160to32__WEBPACK_IMPORTED_MODULE_4__/* .code160to32 */ .X)(_adapterRender__WEBPACK_IMPORTED_MODULE_1__.mathRenderAdapter.getCode(mathElement));
945
518
  mathElement.setAttribute("data-math", math);
946
519
  try {
947
520
  mathElement.innerHTML = katex.renderToString(math, {
@@ -990,9 +563,9 @@ var mathRender = function (element, options) {
990
563
  };
991
564
  }
992
565
  // 循环加载会抛异常
993
- (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScriptSync */ .J)(options.cdn + "/dist/js/mathjax/tex-svg-full.js", "protyleMathJaxScript");
566
+ (0,_util_addScript__WEBPACK_IMPORTED_MODULE_3__/* .addScriptSync */ .J)(options.cdn + "/dist/js/mathjax/tex-svg-full.js", "protyleMathJaxScript");
994
567
  var renderMath_1 = function (mathElement, next) {
995
- var math = (0,_util_code160to32__WEBPACK_IMPORTED_MODULE_3__/* .code160to32 */ .X)(mathElement.textContent).trim();
568
+ var math = (0,_util_code160to32__WEBPACK_IMPORTED_MODULE_4__/* .code160to32 */ .X)(mathElement.textContent).trim();
996
569
  var mathOptions = window.MathJax.getMetricsFor(mathElement);
997
570
  mathOptions.display = mathElement.tagName === "DIV";
998
571
  window.MathJax.tex2svgPromise(math, mathOptions).then(function (node) {
@@ -1017,7 +590,7 @@ var mathRender = function (element, options) {
1017
590
  var mathElement = mathElements[i];
1018
591
  if (!mathElement.parentElement.classList.contains("vditor-wysiwyg__pre") &&
1019
592
  !mathElement.parentElement.classList.contains("vditor-ir__marker--pre") &&
1020
- !mathElement.getAttribute("data-math") && (0,_util_code160to32__WEBPACK_IMPORTED_MODULE_3__/* .code160to32 */ .X)(mathElement.textContent).trim()) {
593
+ !mathElement.getAttribute("data-math") && (0,_util_code160to32__WEBPACK_IMPORTED_MODULE_4__/* .code160to32 */ .X)(mathElement.textContent).trim()) {
1021
594
  chains.push(function (next) {
1022
595
  if (i === mathElements.length - 1) {
1023
596
  renderMath_1(mathElement);
@@ -1127,16 +700,18 @@ var mediaRender = function (element) {
1127
700
  /* harmony export */ "i": () => (/* binding */ mermaidRender)
1128
701
  /* harmony export */ });
1129
702
  /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(260);
1130
- /* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(228);
703
+ /* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(228);
704
+ /* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(46);
705
+
1131
706
 
1132
707
 
1133
708
  var mermaidRender = function (element, cdn, theme) {
1134
709
  if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; }
1135
- var mermaidElements = element.querySelectorAll(".language-mermaid");
710
+ var mermaidElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.mermaidRenderAdapter.getElements(element);
1136
711
  if (mermaidElements.length === 0) {
1137
712
  return;
1138
713
  }
1139
- (0,_util_addScript__WEBPACK_IMPORTED_MODULE_1__/* .addScript */ .G)(cdn + "/dist/js/mermaid/mermaid.min.js", "vditorMermaidScript").then(function () {
714
+ (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)(cdn + "/dist/js/mermaid/mermaid.min.js", "vditorMermaidScript").then(function () {
1140
715
  var config = {
1141
716
  altFontFamily: "sans-serif",
1142
717
  flowchart: {
@@ -1240,7 +815,8 @@ var mermaidRender = function (element, cdn, theme) {
1240
815
  }
1241
816
  mermaid.initialize(config);
1242
817
  mermaidElements.forEach(function (item) {
1243
- if (item.getAttribute("data-processed") === "true" || item.textContent.trim() === "") {
818
+ var code = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.mermaidRenderAdapter.getCode(item);
819
+ if (item.getAttribute("data-processed") === "true" || code.trim() === "") {
1244
820
  return;
1245
821
  }
1246
822
  mermaid.init(undefined, item);
@@ -1259,21 +835,23 @@ var mermaidRender = function (element, cdn, theme) {
1259
835
  /* harmony export */ "P": () => (/* binding */ mindmapRender)
1260
836
  /* harmony export */ });
1261
837
  /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(260);
1262
- /* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(228);
838
+ /* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(228);
839
+ /* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(46);
840
+
1263
841
 
1264
842
 
1265
843
  var mindmapRender = function (element, cdn, theme) {
1266
844
  if (element === void 0) { element = document; }
1267
845
  if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; }
1268
- var mindmapElements = element.querySelectorAll(".language-mindmap");
846
+ var mindmapElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.mindmapRenderAdapter.getElements(element);
1269
847
  if (mindmapElements.length > 0) {
1270
- (0,_util_addScript__WEBPACK_IMPORTED_MODULE_1__/* .addScript */ .G)(cdn + "/dist/js/echarts/echarts.min.js", "vditorEchartsScript").then(function () {
848
+ (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)(cdn + "/dist/js/echarts/echarts.min.js", "vditorEchartsScript").then(function () {
1271
849
  mindmapElements.forEach(function (e) {
1272
850
  if (e.parentElement.classList.contains("vditor-wysiwyg__pre") ||
1273
851
  e.parentElement.classList.contains("vditor-ir__marker--pre")) {
1274
852
  return;
1275
853
  }
1276
- var text = e.getAttribute("data-code");
854
+ var text = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.mindmapRenderAdapter.getCode(e);
1277
855
  if (!text) {
1278
856
  return;
1279
857
  }
@@ -1470,23 +1048,25 @@ var outlineRender = function (contentElement, targetElement, vditor) {
1470
1048
  /* harmony export */ "B": () => (/* binding */ plantumlRender)
1471
1049
  /* harmony export */ });
1472
1050
  /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(260);
1473
- /* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(228);
1051
+ /* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(228);
1052
+ /* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(46);
1053
+
1474
1054
 
1475
1055
 
1476
1056
  var plantumlRender = function (element, cdn) {
1477
1057
  if (element === void 0) { element = document; }
1478
1058
  if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; }
1479
- var plantumlElements = element.querySelectorAll(".language-plantuml");
1059
+ var plantumlElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.plantumlRenderAdapter.getElements(element);
1480
1060
  if (plantumlElements.length === 0) {
1481
1061
  return;
1482
1062
  }
1483
- (0,_util_addScript__WEBPACK_IMPORTED_MODULE_1__/* .addScript */ .G)(cdn + "/dist/js/plantuml/plantuml-encoder.min.js", "vditorPlantumlScript").then(function () {
1063
+ (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)(cdn + "/dist/js/plantuml/plantuml-encoder.min.js", "vditorPlantumlScript").then(function () {
1484
1064
  plantumlElements.forEach(function (e) {
1485
1065
  if (e.parentElement.classList.contains("vditor-wysiwyg__pre") ||
1486
1066
  e.parentElement.classList.contains("vditor-ir__marker--pre")) {
1487
1067
  return;
1488
1068
  }
1489
- var text = e.textContent.trim();
1069
+ var text = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.plantumlRenderAdapter.getCode(e).trim();
1490
1070
  if (!text) {
1491
1071
  return;
1492
1072
  }
@@ -1543,14 +1123,12 @@ var setLute = function (options) {
1543
1123
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1544
1124
  /* harmony export */ "E": () => (/* binding */ previewImage)
1545
1125
  /* harmony export */ });
1546
- /* harmony import */ var _i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(577);
1547
-
1548
1126
  var previewImage = function (oldImgElement, lang, theme) {
1549
1127
  if (lang === void 0) { lang = "zh_CN"; }
1550
1128
  if (theme === void 0) { theme = "classic"; }
1551
1129
  var oldImgRect = oldImgElement.getBoundingClientRect();
1552
1130
  var height = 36;
1553
- document.body.insertAdjacentHTML("beforeend", "<div class=\"vditor vditor-img" + (theme === "dark" ? " vditor--dark" : "") + "\">\n <div class=\"vditor-img__bar\">\n <span class=\"vditor-img__btn\" data-deg=\"0\">\n <svg><use xlink:href=\"#vditor-icon-redo\"></use></svg>\n " + _i18n__WEBPACK_IMPORTED_MODULE_0__/* .i18n */ .a[lang].spin + "\n </span>\n <span class=\"vditor-img__btn\" onclick=\"this.parentElement.parentElement.outerHTML = '';document.body.style.overflow = ''\">\n X &nbsp;" + _i18n__WEBPACK_IMPORTED_MODULE_0__/* .i18n */ .a[lang].close + "\n </span>\n </div>\n <div class=\"vditor-img__img\" onclick=\"this.parentElement.outerHTML = '';document.body.style.overflow = ''\">\n <img style=\"width: " + oldImgElement.width + "px;height:" + oldImgElement.height + "px;transform: translate3d(" + oldImgRect.left + "px, " + (oldImgRect.top - height) + "px, 0)\" src=\"" + oldImgElement.getAttribute("src") + "\">\n </div>\n</div>");
1131
+ document.body.insertAdjacentHTML("beforeend", "<div class=\"vditor vditor-img" + (theme === "dark" ? " vditor--dark" : "") + "\">\n <div class=\"vditor-img__bar\">\n <span class=\"vditor-img__btn\" data-deg=\"0\">\n <svg><use xlink:href=\"#vditor-icon-redo\"></use></svg>\n " + window.VditorI18n.spin + "\n </span>\n <span class=\"vditor-img__btn\" onclick=\"this.parentElement.parentElement.outerHTML = '';document.body.style.overflow = ''\">\n X &nbsp;" + window.VditorI18n.close + "\n </span>\n </div>\n <div class=\"vditor-img__img\" onclick=\"this.parentElement.outerHTML = '';document.body.style.overflow = ''\">\n <img style=\"width: " + oldImgElement.width + "px;height:" + oldImgElement.height + "px;transform: translate3d(" + oldImgRect.left + "px, " + (oldImgRect.top - height) + "px, 0)\" src=\"" + oldImgElement.getAttribute("src") + "\">\n </div>\n</div>");
1554
1132
  document.body.style.overflow = "hidden";
1555
1133
  // 图片从原始位置移动到预览正中间的动画效果
1556
1134
  var imgElement = document.querySelector(".vditor-img img");
@@ -2284,6 +1862,17 @@ var insertHTML = function (html, vditor) {
2284
1862
  /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
2285
1863
  /******/ })();
2286
1864
  /******/
1865
+ /******/ /* webpack/runtime/make namespace object */
1866
+ /******/ (() => {
1867
+ /******/ // define __esModule on exports
1868
+ /******/ __webpack_require__.r = (exports) => {
1869
+ /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
1870
+ /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
1871
+ /******/ }
1872
+ /******/ Object.defineProperty(exports, '__esModule', { value: true });
1873
+ /******/ };
1874
+ /******/ })();
1875
+ /******/
2287
1876
  /************************************************************************/
2288
1877
  var __webpack_exports__ = {};
2289
1878
  // This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.
@@ -2296,6 +1885,8 @@ __webpack_require__.d(__webpack_exports__, {
2296
1885
 
2297
1886
  // EXTERNAL MODULE: ./src/ts/markdown/abcRender.ts
2298
1887
  var abcRender = __webpack_require__(369);
1888
+ // EXTERNAL MODULE: ./src/ts/markdown/adapterRender.ts
1889
+ var adapterRender = __webpack_require__(46);
2299
1890
  // EXTERNAL MODULE: ./src/ts/markdown/chartRender.ts
2300
1891
  var chartRender = __webpack_require__(726);
2301
1892
  // EXTERNAL MODULE: ./src/ts/markdown/codeRender.ts
@@ -2603,7 +2194,7 @@ var md2html = function (mdText, options) {
2603
2194
  });
2604
2195
  };
2605
2196
  var previewRender = function (previewElement, markdown, options) { return __awaiter(void 0, void 0, void 0, function () {
2606
- var mergedOptions, html;
2197
+ var mergedOptions, html, i18nScriptPrefix, i18nScriptID_1;
2607
2198
  return __generator(this, function (_a) {
2608
2199
  switch (_a.label) {
2609
2200
  case 0:
@@ -2616,11 +2207,31 @@ var previewRender = function (previewElement, markdown, options) { return __awai
2616
2207
  }
2617
2208
  previewElement.innerHTML = html;
2618
2209
  previewElement.classList.add("vditor-reset");
2210
+ if (!!mergedOptions.i18n) return [3 /*break*/, 5];
2211
+ if (!!["en_US", "ja_JP", "ko_KR", "ru_RU", "zh_CN", "zh_TW"].includes(mergedOptions.lang)) return [3 /*break*/, 2];
2212
+ throw new Error("options.lang error, see https://ld246.com/article/1549638745630#options");
2213
+ case 2:
2214
+ i18nScriptPrefix = "vditorI18nScript";
2215
+ i18nScriptID_1 = i18nScriptPrefix + mergedOptions.lang;
2216
+ document.querySelectorAll("head script[id^=\"" + i18nScriptPrefix + "\"]").forEach(function (el) {
2217
+ if (el.id !== i18nScriptID_1) {
2218
+ document.head.removeChild(el);
2219
+ }
2220
+ });
2221
+ return [4 /*yield*/, (0,addScript/* addScript */.G)(mergedOptions.cdn + "/dist/js/i18n/" + mergedOptions.lang + ".js", i18nScriptID_1)];
2222
+ case 3:
2223
+ _a.sent();
2224
+ _a.label = 4;
2225
+ case 4: return [3 /*break*/, 6];
2226
+ case 5:
2227
+ window.VditorI18n = mergedOptions.i18n;
2228
+ _a.label = 6;
2229
+ case 6:
2619
2230
  (0,setContentTheme/* setContentTheme */.Z)(mergedOptions.theme.current, mergedOptions.theme.path);
2620
2231
  if (mergedOptions.anchor === 1) {
2621
2232
  previewElement.classList.add("vditor-reset--anchor");
2622
2233
  }
2623
- (0,codeRender/* codeRender */.O)(previewElement, mergedOptions.lang);
2234
+ (0,codeRender/* codeRender */.O)(previewElement);
2624
2235
  (0,highlightRender/* highlightRender */.s)(mergedOptions.hljs, previewElement, mergedOptions.cdn);
2625
2236
  (0,mathRender/* mathRender */.H)(previewElement, {
2626
2237
  cdn: mergedOptions.cdn,
@@ -2635,7 +2246,7 @@ var previewRender = function (previewElement, markdown, options) { return __awai
2635
2246
  (0,abcRender/* abcRender */.Q)(previewElement, mergedOptions.cdn);
2636
2247
  (0,mediaRender/* mediaRender */.Y)(previewElement);
2637
2248
  if (mergedOptions.speech.enable) {
2638
- speechRender(previewElement, mergedOptions.lang);
2249
+ speechRender(previewElement);
2639
2250
  }
2640
2251
  if (mergedOptions.anchor !== 0) {
2641
2252
  anchorRender(mergedOptions.anchor);
@@ -2687,10 +2298,13 @@ var setCodeTheme = __webpack_require__(968);
2687
2298
 
2688
2299
 
2689
2300
 
2301
+
2690
2302
  var Vditor = /** @class */ (function () {
2691
2303
  function Vditor() {
2692
2304
  }
2693
2305
  /** 点击图片放大 */
2306
+ Vditor.adapterRender = adapterRender;
2307
+ /** 点击图片放大 */
2694
2308
  Vditor.previewImage = preview_image/* previewImage */.E;
2695
2309
  /** 为 element 中的代码块添加复制按钮 */
2696
2310
  Vditor.codeRender = codeRender/* codeRender */.O;
@@ -2734,7 +2348,7 @@ var Vditor = /** @class */ (function () {
2734
2348
 
2735
2349
  })();
2736
2350
 
2737
- __webpack_exports__ = __webpack_exports__.default;
2351
+ __webpack_exports__ = __webpack_exports__["default"];
2738
2352
  /******/ return __webpack_exports__;
2739
2353
  /******/ })()
2740
2354
  ;