vditor 3.10.5 → 3.10.7

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 (339) hide show
  1. package/README.md +6 -4
  2. package/dist/index.css +3 -2
  3. package/dist/index.d.ts +2 -0
  4. package/dist/index.js +291 -110
  5. package/dist/index.min.js +1 -1
  6. package/dist/js/echarts/echarts.min.js +24 -2
  7. package/dist/js/highlight.js/LICENSE +29 -0
  8. package/dist/js/highlight.js/highlight.min.js +3835 -0
  9. package/dist/js/highlight.js/styles/a11y-dark.min.css +7 -0
  10. package/dist/js/highlight.js/styles/a11y-light.min.css +7 -0
  11. package/dist/js/highlight.js/styles/agate.min.css +20 -0
  12. package/dist/js/highlight.js/styles/an-old-hope.min.css +9 -0
  13. package/dist/js/highlight.js/styles/androidstudio.min.css +1 -0
  14. package/dist/js/highlight.js/styles/ant-design.css +1 -386
  15. package/dist/js/highlight.js/styles/arduino-light.min.css +1 -0
  16. package/dist/js/highlight.js/styles/arta.min.css +1 -0
  17. package/dist/js/highlight.js/styles/ascetic.min.css +1 -0
  18. package/dist/js/highlight.js/styles/atom-one-dark-reasonable.min.css +1 -0
  19. package/dist/js/highlight.js/styles/atom-one-dark.min.css +1 -0
  20. package/dist/js/highlight.js/styles/atom-one-light.min.css +1 -0
  21. package/dist/js/highlight.js/styles/base16/3024.min.css +7 -0
  22. package/dist/js/highlight.js/styles/base16/apathy.min.css +7 -0
  23. package/dist/js/highlight.js/styles/base16/apprentice.min.css +7 -0
  24. package/dist/js/highlight.js/styles/base16/ashes.min.css +7 -0
  25. package/dist/js/highlight.js/styles/base16/atelier-cave-light.min.css +7 -0
  26. package/dist/js/highlight.js/styles/base16/atelier-cave.min.css +7 -0
  27. package/dist/js/highlight.js/styles/base16/atelier-dune-light.min.css +7 -0
  28. package/dist/js/highlight.js/styles/base16/atelier-dune.min.css +7 -0
  29. package/dist/js/highlight.js/styles/base16/atelier-estuary-light.min.css +7 -0
  30. package/dist/js/highlight.js/styles/base16/atelier-estuary.min.css +7 -0
  31. package/dist/js/highlight.js/styles/base16/atelier-forest-light.min.css +7 -0
  32. package/dist/js/highlight.js/styles/base16/atelier-forest.min.css +7 -0
  33. package/dist/js/highlight.js/styles/base16/atelier-heath-light.min.css +7 -0
  34. package/dist/js/highlight.js/styles/base16/atelier-heath.min.css +7 -0
  35. package/dist/js/highlight.js/styles/base16/atelier-lakeside-light.min.css +7 -0
  36. package/dist/js/highlight.js/styles/base16/atelier-lakeside.min.css +7 -0
  37. package/dist/js/highlight.js/styles/base16/atelier-plateau-light.min.css +7 -0
  38. package/dist/js/highlight.js/styles/base16/atelier-plateau.min.css +7 -0
  39. package/dist/js/highlight.js/styles/base16/atelier-savanna-light.min.css +7 -0
  40. package/dist/js/highlight.js/styles/base16/atelier-savanna.min.css +7 -0
  41. package/dist/js/highlight.js/styles/base16/atelier-seaside-light.min.css +7 -0
  42. package/dist/js/highlight.js/styles/base16/atelier-seaside.min.css +7 -0
  43. package/dist/js/highlight.js/styles/base16/atelier-sulphurpool-light.min.css +7 -0
  44. package/dist/js/highlight.js/styles/base16/atelier-sulphurpool.min.css +7 -0
  45. package/dist/js/highlight.js/styles/base16/atlas.min.css +7 -0
  46. package/dist/js/highlight.js/styles/base16/bespin.min.css +7 -0
  47. package/dist/js/highlight.js/styles/base16/black-metal-bathory.min.css +7 -0
  48. package/dist/js/highlight.js/styles/base16/black-metal-burzum.min.css +7 -0
  49. package/dist/js/highlight.js/styles/base16/black-metal-dark-funeral.min.css +7 -0
  50. package/dist/js/highlight.js/styles/base16/black-metal-gorgoroth.min.css +7 -0
  51. package/dist/js/highlight.js/styles/base16/black-metal-immortal.min.css +7 -0
  52. package/dist/js/highlight.js/styles/base16/black-metal-khold.min.css +7 -0
  53. package/dist/js/highlight.js/styles/base16/black-metal-marduk.min.css +7 -0
  54. package/dist/js/highlight.js/styles/base16/black-metal-mayhem.min.css +7 -0
  55. package/dist/js/highlight.js/styles/base16/black-metal-nile.min.css +7 -0
  56. package/dist/js/highlight.js/styles/base16/black-metal-venom.min.css +7 -0
  57. package/dist/js/highlight.js/styles/base16/black-metal.min.css +7 -0
  58. package/dist/js/highlight.js/styles/base16/brewer.min.css +7 -0
  59. package/dist/js/highlight.js/styles/base16/bright.min.css +7 -0
  60. package/dist/js/highlight.js/styles/base16/brogrammer.min.css +7 -0
  61. package/dist/js/highlight.js/styles/base16/brush-trees-dark.min.css +7 -0
  62. package/dist/js/highlight.js/styles/base16/brush-trees.min.css +7 -0
  63. package/dist/js/highlight.js/styles/base16/chalk.min.css +7 -0
  64. package/dist/js/highlight.js/styles/base16/circus.min.css +7 -0
  65. package/dist/js/highlight.js/styles/base16/classic-dark.min.css +7 -0
  66. package/dist/js/highlight.js/styles/base16/classic-light.min.css +7 -0
  67. package/dist/js/highlight.js/styles/base16/codeschool.min.css +7 -0
  68. package/dist/js/highlight.js/styles/base16/colors.min.css +7 -0
  69. package/dist/js/highlight.js/styles/base16/cupcake.min.css +7 -0
  70. package/dist/js/highlight.js/styles/base16/cupertino.min.css +7 -0
  71. package/dist/js/highlight.js/styles/base16/danqing.min.css +7 -0
  72. package/dist/js/highlight.js/styles/base16/darcula.min.css +7 -0
  73. package/dist/js/highlight.js/styles/base16/dark-violet.min.css +7 -0
  74. package/dist/js/highlight.js/styles/base16/darkmoss.min.css +7 -0
  75. package/dist/js/highlight.js/styles/base16/darktooth.min.css +7 -0
  76. package/dist/js/highlight.js/styles/base16/decaf.min.css +7 -0
  77. package/dist/js/highlight.js/styles/base16/default-dark.min.css +7 -0
  78. package/dist/js/highlight.js/styles/base16/default-light.min.css +7 -0
  79. package/dist/js/highlight.js/styles/base16/dirtysea.min.css +7 -0
  80. package/dist/js/highlight.js/styles/base16/dracula.min.css +7 -0
  81. package/dist/js/highlight.js/styles/base16/edge-dark.min.css +7 -0
  82. package/dist/js/highlight.js/styles/base16/edge-light.min.css +7 -0
  83. package/dist/js/highlight.js/styles/base16/eighties.min.css +7 -0
  84. package/dist/js/highlight.js/styles/base16/embers.min.css +7 -0
  85. package/dist/js/highlight.js/styles/base16/equilibrium-dark.min.css +7 -0
  86. package/dist/js/highlight.js/styles/base16/equilibrium-gray-dark.min.css +7 -0
  87. package/dist/js/highlight.js/styles/base16/equilibrium-gray-light.min.css +7 -0
  88. package/dist/js/highlight.js/styles/base16/equilibrium-light.min.css +7 -0
  89. package/dist/js/highlight.js/styles/base16/espresso.min.css +7 -0
  90. package/dist/js/highlight.js/styles/base16/eva-dim.min.css +7 -0
  91. package/dist/js/highlight.js/styles/base16/eva.min.css +7 -0
  92. package/dist/js/highlight.js/styles/base16/flat.min.css +7 -0
  93. package/dist/js/highlight.js/styles/base16/framer.min.css +7 -0
  94. package/dist/js/highlight.js/styles/base16/fruit-soda.min.css +7 -0
  95. package/dist/js/highlight.js/styles/base16/gigavolt.min.css +7 -0
  96. package/dist/js/highlight.js/styles/base16/github.min.css +7 -0
  97. package/dist/js/highlight.js/styles/base16/google-dark.min.css +7 -0
  98. package/dist/js/highlight.js/styles/base16/google-light.min.css +7 -0
  99. package/dist/js/highlight.js/styles/base16/grayscale-dark.min.css +7 -0
  100. package/dist/js/highlight.js/styles/base16/grayscale-light.min.css +7 -0
  101. package/dist/js/highlight.js/styles/base16/green-screen.min.css +7 -0
  102. package/dist/js/highlight.js/styles/base16/gruvbox-dark-hard.min.css +7 -0
  103. package/dist/js/highlight.js/styles/base16/gruvbox-dark-medium.min.css +7 -0
  104. package/dist/js/highlight.js/styles/base16/gruvbox-dark-pale.min.css +7 -0
  105. package/dist/js/highlight.js/styles/base16/gruvbox-dark-soft.min.css +7 -0
  106. package/dist/js/highlight.js/styles/base16/gruvbox-light-hard.min.css +7 -0
  107. package/dist/js/highlight.js/styles/base16/gruvbox-light-medium.min.css +7 -0
  108. package/dist/js/highlight.js/styles/base16/gruvbox-light-soft.min.css +7 -0
  109. package/dist/js/highlight.js/styles/base16/hardcore.min.css +7 -0
  110. package/dist/js/highlight.js/styles/base16/harmonic16-dark.min.css +7 -0
  111. package/dist/js/highlight.js/styles/base16/harmonic16-light.min.css +7 -0
  112. package/dist/js/highlight.js/styles/base16/heetch-dark.min.css +7 -0
  113. package/dist/js/highlight.js/styles/base16/heetch-light.min.css +7 -0
  114. package/dist/js/highlight.js/styles/base16/helios.min.css +7 -0
  115. package/dist/js/highlight.js/styles/base16/hopscotch.min.css +7 -0
  116. package/dist/js/highlight.js/styles/base16/horizon-dark.min.css +7 -0
  117. package/dist/js/highlight.js/styles/base16/horizon-light.min.css +7 -0
  118. package/dist/js/highlight.js/styles/base16/humanoid-dark.min.css +7 -0
  119. package/dist/js/highlight.js/styles/base16/humanoid-light.min.css +7 -0
  120. package/dist/js/highlight.js/styles/base16/ia-dark.min.css +7 -0
  121. package/dist/js/highlight.js/styles/base16/ia-light.min.css +7 -0
  122. package/dist/js/highlight.js/styles/base16/icy-dark.min.css +7 -0
  123. package/dist/js/highlight.js/styles/base16/ir-black.min.css +7 -0
  124. package/dist/js/highlight.js/styles/base16/isotope.min.css +7 -0
  125. package/dist/js/highlight.js/styles/base16/kimber.min.css +7 -0
  126. package/dist/js/highlight.js/styles/base16/london-tube.min.css +7 -0
  127. package/dist/js/highlight.js/styles/base16/macintosh.min.css +7 -0
  128. package/dist/js/highlight.js/styles/base16/marrakesh.min.css +7 -0
  129. package/dist/js/highlight.js/styles/base16/materia.min.css +7 -0
  130. package/dist/js/highlight.js/styles/base16/material-darker.min.css +7 -0
  131. package/dist/js/highlight.js/styles/base16/material-lighter.min.css +7 -0
  132. package/dist/js/highlight.js/styles/base16/material-palenight.min.css +7 -0
  133. package/dist/js/highlight.js/styles/base16/material-vivid.min.css +7 -0
  134. package/dist/js/highlight.js/styles/base16/material.min.css +7 -0
  135. package/dist/js/highlight.js/styles/base16/mellow-purple.min.css +7 -0
  136. package/dist/js/highlight.js/styles/base16/mexico-light.min.css +7 -0
  137. package/dist/js/highlight.js/styles/base16/mocha.min.css +7 -0
  138. package/dist/js/highlight.js/styles/base16/monokai.min.css +7 -0
  139. package/dist/js/highlight.js/styles/base16/nebula.min.css +7 -0
  140. package/dist/js/highlight.js/styles/base16/nord.min.css +7 -0
  141. package/dist/js/highlight.js/styles/base16/nova.min.css +7 -0
  142. package/dist/js/highlight.js/styles/base16/ocean.min.css +7 -0
  143. package/dist/js/highlight.js/styles/base16/oceanicnext.min.css +7 -0
  144. package/dist/js/highlight.js/styles/base16/one-light.min.css +7 -0
  145. package/dist/js/highlight.js/styles/base16/onedark.min.css +7 -0
  146. package/dist/js/highlight.js/styles/base16/outrun-dark.min.css +7 -0
  147. package/dist/js/highlight.js/styles/base16/papercolor-dark.min.css +7 -0
  148. package/dist/js/highlight.js/styles/base16/papercolor-light.min.css +7 -0
  149. package/dist/js/highlight.js/styles/base16/paraiso.min.css +7 -0
  150. package/dist/js/highlight.js/styles/base16/pasque.min.css +7 -0
  151. package/dist/js/highlight.js/styles/base16/phd.min.css +7 -0
  152. package/dist/js/highlight.js/styles/base16/pico.min.css +7 -0
  153. package/dist/js/highlight.js/styles/base16/pop.min.css +7 -0
  154. package/dist/js/highlight.js/styles/base16/porple.min.css +7 -0
  155. package/dist/js/highlight.js/styles/base16/qualia.min.css +7 -0
  156. package/dist/js/highlight.js/styles/base16/railscasts.min.css +7 -0
  157. package/dist/js/highlight.js/styles/base16/rebecca.min.css +7 -0
  158. package/dist/js/highlight.js/styles/base16/ros-pine-dawn.min.css +7 -0
  159. package/dist/js/highlight.js/styles/base16/ros-pine-moon.min.css +7 -0
  160. package/dist/js/highlight.js/styles/base16/ros-pine.min.css +7 -0
  161. package/dist/js/highlight.js/styles/base16/sagelight.min.css +7 -0
  162. package/dist/js/highlight.js/styles/base16/sandcastle.min.css +7 -0
  163. package/dist/js/highlight.js/styles/base16/seti-ui.min.css +7 -0
  164. package/dist/js/highlight.js/styles/base16/shapeshifter.min.css +7 -0
  165. package/dist/js/highlight.js/styles/base16/silk-dark.min.css +7 -0
  166. package/dist/js/highlight.js/styles/base16/silk-light.min.css +7 -0
  167. package/dist/js/highlight.js/styles/base16/snazzy.min.css +7 -0
  168. package/dist/js/highlight.js/styles/base16/solar-flare-light.min.css +7 -0
  169. package/dist/js/highlight.js/styles/base16/solar-flare.min.css +7 -0
  170. package/dist/js/highlight.js/styles/base16/solarized-dark.min.css +7 -0
  171. package/dist/js/highlight.js/styles/base16/solarized-light.min.css +7 -0
  172. package/dist/js/highlight.js/styles/base16/spacemacs.min.css +7 -0
  173. package/dist/js/highlight.js/styles/base16/summercamp.min.css +7 -0
  174. package/dist/js/highlight.js/styles/base16/summerfruit-dark.min.css +7 -0
  175. package/dist/js/highlight.js/styles/base16/summerfruit-light.min.css +7 -0
  176. package/dist/js/highlight.js/styles/base16/synth-midnight-terminal-dark.min.css +7 -0
  177. package/dist/js/highlight.js/styles/base16/synth-midnight-terminal-light.min.css +7 -0
  178. package/dist/js/highlight.js/styles/base16/tango.min.css +7 -0
  179. package/dist/js/highlight.js/styles/base16/tender.min.css +7 -0
  180. package/dist/js/highlight.js/styles/base16/tomorrow-night.min.css +7 -0
  181. package/dist/js/highlight.js/styles/base16/tomorrow.min.css +7 -0
  182. package/dist/js/highlight.js/styles/base16/twilight.min.css +7 -0
  183. package/dist/js/highlight.js/styles/base16/unikitty-dark.min.css +7 -0
  184. package/dist/js/highlight.js/styles/base16/unikitty-light.min.css +7 -0
  185. package/dist/js/highlight.js/styles/base16/vulcan.min.css +7 -0
  186. package/dist/js/highlight.js/styles/base16/windows-10-light.min.css +7 -0
  187. package/dist/js/highlight.js/styles/base16/windows-10.min.css +7 -0
  188. package/dist/js/highlight.js/styles/base16/windows-95-light.min.css +7 -0
  189. package/dist/js/highlight.js/styles/base16/windows-95.min.css +7 -0
  190. package/dist/js/highlight.js/styles/base16/windows-high-contrast-light.min.css +7 -0
  191. package/dist/js/highlight.js/styles/base16/windows-high-contrast.min.css +7 -0
  192. package/dist/js/highlight.js/styles/base16/windows-nt-light.min.css +7 -0
  193. package/dist/js/highlight.js/styles/base16/windows-nt.min.css +7 -0
  194. package/dist/js/highlight.js/styles/base16/woodland.min.css +7 -0
  195. package/dist/js/highlight.js/styles/base16/xcode-dusk.min.css +7 -0
  196. package/dist/js/highlight.js/styles/base16/zenburn.min.css +7 -0
  197. package/dist/js/highlight.js/styles/brown-paper.min.css +1 -0
  198. package/dist/js/highlight.js/styles/brown-papersq.png +0 -0
  199. package/dist/js/highlight.js/styles/codepen-embed.min.css +1 -0
  200. package/dist/js/highlight.js/styles/color-brewer.min.css +1 -0
  201. package/dist/js/highlight.js/styles/dark.min.css +1 -0
  202. package/dist/js/highlight.js/styles/default.min.css +9 -0
  203. package/dist/js/highlight.js/styles/devibeans.min.css +7 -0
  204. package/dist/js/highlight.js/styles/docco.min.css +1 -0
  205. package/dist/js/highlight.js/styles/far.min.css +1 -0
  206. package/dist/js/highlight.js/styles/felipec.min.css +7 -0
  207. package/dist/js/highlight.js/styles/foundation.min.css +1 -0
  208. package/dist/js/highlight.js/styles/github-dark-dimmed.min.css +9 -0
  209. package/dist/js/highlight.js/styles/github-dark.min.css +10 -0
  210. package/dist/js/highlight.js/styles/github.min.css +10 -0
  211. package/dist/js/highlight.js/styles/gml.min.css +1 -0
  212. package/dist/js/highlight.js/styles/googlecode.min.css +1 -0
  213. package/dist/js/highlight.js/styles/gradient-dark.min.css +1 -0
  214. package/dist/js/highlight.js/styles/gradient-light.min.css +1 -0
  215. package/dist/js/highlight.js/styles/grayscale.min.css +1 -0
  216. package/dist/js/highlight.js/styles/hybrid.min.css +1 -0
  217. package/dist/js/highlight.js/styles/idea.min.css +1 -0
  218. package/dist/js/highlight.js/styles/intellij-light.min.css +1 -0
  219. package/dist/js/highlight.js/styles/ir-black.min.css +1 -0
  220. package/dist/js/highlight.js/styles/isbl-editor-dark.min.css +1 -0
  221. package/dist/js/highlight.js/styles/isbl-editor-light.min.css +1 -0
  222. package/dist/js/highlight.js/styles/kimbie-dark.min.css +1 -0
  223. package/dist/js/highlight.js/styles/kimbie-light.min.css +1 -0
  224. package/dist/js/highlight.js/styles/lightfair.min.css +1 -0
  225. package/dist/js/highlight.js/styles/lioshi.min.css +1 -0
  226. package/dist/js/highlight.js/styles/magula.min.css +1 -0
  227. package/dist/js/highlight.js/styles/mono-blue.min.css +1 -0
  228. package/dist/js/highlight.js/styles/monokai-sublime.min.css +1 -0
  229. package/dist/js/highlight.js/styles/monokai.min.css +1 -0
  230. package/dist/js/highlight.js/styles/night-owl.min.css +1 -0
  231. package/dist/js/highlight.js/styles/nnfx-dark.min.css +10 -0
  232. package/dist/js/highlight.js/styles/nnfx-light.min.css +10 -0
  233. package/dist/js/highlight.js/styles/nord.min.css +1 -0
  234. package/dist/js/highlight.js/styles/obsidian.min.css +1 -0
  235. package/dist/js/highlight.js/styles/panda-syntax-dark.min.css +1 -0
  236. package/dist/js/highlight.js/styles/panda-syntax-light.min.css +1 -0
  237. package/dist/js/highlight.js/styles/paraiso-dark.min.css +1 -0
  238. package/dist/js/highlight.js/styles/paraiso-light.min.css +1 -0
  239. package/dist/js/highlight.js/styles/pojoaque.jpg +0 -0
  240. package/dist/js/highlight.js/styles/pojoaque.min.css +1 -0
  241. package/dist/js/highlight.js/styles/purebasic.min.css +1 -0
  242. package/dist/js/highlight.js/styles/qtcreator-dark.min.css +1 -0
  243. package/dist/js/highlight.js/styles/qtcreator-light.min.css +1 -0
  244. package/dist/js/highlight.js/styles/rainbow.min.css +1 -0
  245. package/dist/js/highlight.js/styles/routeros.min.css +1 -0
  246. package/dist/js/highlight.js/styles/school-book.min.css +1 -0
  247. package/dist/js/highlight.js/styles/shades-of-purple.min.css +1 -0
  248. package/dist/js/highlight.js/styles/srcery.min.css +1 -0
  249. package/dist/js/highlight.js/styles/stackoverflow-dark.min.css +13 -0
  250. package/dist/js/highlight.js/styles/stackoverflow-light.min.css +13 -0
  251. package/dist/js/highlight.js/styles/sunburst.min.css +1 -0
  252. package/dist/js/highlight.js/styles/tokyo-night-dark.min.css +8 -0
  253. package/dist/js/highlight.js/styles/tokyo-night-light.min.css +8 -0
  254. package/dist/js/highlight.js/styles/tomorrow-night-blue.min.css +1 -0
  255. package/dist/js/highlight.js/styles/tomorrow-night-bright.min.css +1 -0
  256. package/dist/js/highlight.js/styles/vs.min.css +1 -0
  257. package/dist/js/highlight.js/styles/vs2015.min.css +1 -0
  258. package/dist/js/highlight.js/styles/xcode.min.css +1 -0
  259. package/dist/js/highlight.js/styles/xt256.min.css +1 -0
  260. package/dist/js/highlight.js/third-languages.js +135 -0
  261. package/dist/js/smiles-drawer/smiles-drawer.min.js +71 -0
  262. package/dist/method.d.ts +6 -4
  263. package/dist/method.js +234 -102
  264. package/dist/method.min.js +1 -1
  265. package/dist/ts/constants.d.ts +1 -1
  266. package/dist/ts/markdown/SMILESRender.d.ts +1 -0
  267. package/dist/ts/markdown/adapterRender.d.ts +8 -4
  268. package/dist/ts/markdown/markmapRender.d.ts +1 -1
  269. package/dist/ts/markdown/mathRender.d.ts +1 -1
  270. package/dist/ts/markdown/mermaidRender.d.ts +1 -1
  271. package/dist/ts/util/function.d.ts +1 -0
  272. package/dist/types/index.d.ts +12 -0
  273. package/package.json +1 -1
  274. package/src/assets/less/_reset.less +1 -0
  275. package/src/index.ts +23 -3
  276. package/src/method.ts +4 -1
  277. package/src/ts/constants.ts +80 -61
  278. package/src/ts/devtools/index.ts +1 -1
  279. package/src/ts/export/index.ts +2 -1
  280. package/src/ts/ir/input.ts +6 -0
  281. package/src/ts/ir/process.ts +1 -1
  282. package/src/ts/ir/processKeydown.ts +2 -2
  283. package/src/ts/markdown/SMILESRender.ts +29 -0
  284. package/src/ts/markdown/adapterRender.ts +8 -4
  285. package/src/ts/markdown/chartRender.ts +4 -3
  286. package/src/ts/markdown/codeRender.ts +1 -1
  287. package/src/ts/markdown/highlightRender.ts +59 -55
  288. package/src/ts/markdown/markmapRender.ts +2 -3
  289. package/src/ts/markdown/mathRender.ts +1 -1
  290. package/src/ts/markdown/mermaidRender.ts +2 -2
  291. package/src/ts/markdown/mindmapRender.ts +1 -1
  292. package/src/ts/markdown/previewRender.ts +5 -3
  293. package/src/ts/preview/index.ts +3 -1
  294. package/src/ts/toolbar/Emoji.ts +5 -0
  295. package/src/ts/undo/index.ts +4 -0
  296. package/src/ts/util/function.ts +4 -0
  297. package/src/ts/util/processCode.ts +4 -1
  298. package/src/ts/wysiwyg/highlightToolbarWYSIWYG.ts +1 -1
  299. package/src/ts/wysiwyg/index.ts +5 -0
  300. package/src/ts/wysiwyg/input.ts +1 -1
  301. package/dist/js/highlight.js/highlight.pack.js +0 -1617
  302. package/dist/js/highlight.js/solidity.min.js +0 -73
  303. package/dist/js/highlight.js/styles/abap.css +0 -155
  304. package/dist/js/highlight.js/styles/algol.css +0 -143
  305. package/dist/js/highlight.js/styles/algol_nu.css +0 -90
  306. package/dist/js/highlight.js/styles/arduino.css +0 -157
  307. package/dist/js/highlight.js/styles/autumn.css +0 -138
  308. package/dist/js/highlight.js/styles/borland.css +0 -147
  309. package/dist/js/highlight.js/styles/bw.css +0 -150
  310. package/dist/js/highlight.js/styles/colorful.css +0 -158
  311. package/dist/js/highlight.js/styles/dracula.css +0 -140
  312. package/dist/js/highlight.js/styles/emacs.css +0 -167
  313. package/dist/js/highlight.js/styles/friendly.css +0 -183
  314. package/dist/js/highlight.js/styles/fruity.css +0 -123
  315. package/dist/js/highlight.js/styles/github.css +0 -174
  316. package/dist/js/highlight.js/styles/igor.css +0 -124
  317. package/dist/js/highlight.js/styles/lovelace.css +0 -146
  318. package/dist/js/highlight.js/styles/manni.css +0 -139
  319. package/dist/js/highlight.js/styles/monokai.css +0 -132
  320. package/dist/js/highlight.js/styles/monokailight.css +0 -180
  321. package/dist/js/highlight.js/styles/murphy.css +0 -144
  322. package/dist/js/highlight.js/styles/native.css +0 -164
  323. package/dist/js/highlight.js/styles/paraiso-dark.css +0 -137
  324. package/dist/js/highlight.js/styles/paraiso-light.css +0 -136
  325. package/dist/js/highlight.js/styles/pastie.css +0 -180
  326. package/dist/js/highlight.js/styles/perldoc.css +0 -141
  327. package/dist/js/highlight.js/styles/pygments.css +0 -159
  328. package/dist/js/highlight.js/styles/rainbow_dash.css +0 -164
  329. package/dist/js/highlight.js/styles/rrt.css +0 -159
  330. package/dist/js/highlight.js/styles/solarized-dark.css +0 -146
  331. package/dist/js/highlight.js/styles/solarized-dark256.css +0 -146
  332. package/dist/js/highlight.js/styles/solarized-light.css +0 -163
  333. package/dist/js/highlight.js/styles/swapoff.css +0 -144
  334. package/dist/js/highlight.js/styles/tango.css +0 -183
  335. package/dist/js/highlight.js/styles/trac.css +0 -167
  336. package/dist/js/highlight.js/styles/vim.css +0 -144
  337. package/dist/js/highlight.js/styles/vs.css +0 -113
  338. package/dist/js/highlight.js/styles/xcode.css +0 -174
  339. package/dist/js/highlight.js/yul.min.js +0 -30
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vditor v3.10.5 - A markdown editor written in TypeScript.
2
+ * Vditor v3.10.7 - A markdown editor written in TypeScript.
3
3
  *
4
4
  * MIT License
5
5
  *
@@ -2186,6 +2186,8 @@ var mathRender = __webpack_require__(982);
2186
2186
  var mediaRender = __webpack_require__(431);
2187
2187
  // EXTERNAL MODULE: ./src/ts/markdown/mermaidRender.ts
2188
2188
  var mermaidRender = __webpack_require__(570);
2189
+ // EXTERNAL MODULE: ./src/ts/markdown/SMILESRender.ts
2190
+ var SMILESRender = __webpack_require__(474);
2189
2191
  // EXTERNAL MODULE: ./src/ts/markdown/markmapRender.ts
2190
2192
  var markmapRender = __webpack_require__(593);
2191
2193
  // EXTERNAL MODULE: ./src/ts/markdown/mindmapRender.ts
@@ -2384,6 +2386,7 @@ var __generator = (undefined && undefined.__generator) || function (thisArg, bod
2384
2386
 
2385
2387
 
2386
2388
 
2389
+
2387
2390
 
2388
2391
 
2389
2392
  var mergeOptions = function (options) {
@@ -2504,7 +2507,8 @@ var previewRender = function (previewElement, markdown, options) { return __awai
2504
2507
  math: mergedOptions.math,
2505
2508
  });
2506
2509
  (0,mermaidRender/* mermaidRender */.i)(previewElement, mergedOptions.cdn, mergedOptions.mode);
2507
- (0,markmapRender/* markmapRender */.K)(previewElement, mergedOptions.cdn, mergedOptions.mode);
2510
+ (0,SMILESRender/* SMILESRender */.J)(previewElement, mergedOptions.cdn, mergedOptions.mode);
2511
+ (0,markmapRender/* markmapRender */.K)(previewElement, mergedOptions.cdn);
2508
2512
  (0,flowchartRender/* flowchartRender */.P)(previewElement, mergedOptions.cdn);
2509
2513
  (0,graphvizRender/* graphvizRender */.v)(previewElement, mergedOptions.cdn);
2510
2514
  (0,chartRender/* chartRender */.p)(previewElement, mergedOptions.cdn, mergedOptions.mode);
@@ -2565,6 +2569,7 @@ var setCodeTheme = __webpack_require__(34);
2565
2569
 
2566
2570
 
2567
2571
 
2572
+
2568
2573
 
2569
2574
  var Vditor = /** @class */ (function () {
2570
2575
  function Vditor() {
@@ -2583,7 +2588,9 @@ var Vditor = /** @class */ (function () {
2583
2588
  Vditor.mathRender = mathRender/* mathRender */.H;
2584
2589
  /** 流程图/时序图/甘特图渲染 */
2585
2590
  Vditor.mermaidRender = mermaidRender/* mermaidRender */.i;
2586
- /** 支持markdown的思维导图 */
2591
+ /** 化学物质结构渲染 */
2592
+ Vditor.SMILESRender = SMILESRender/* SMILESRender */.J;
2593
+ /** 支持 markdown 的思维导图 */
2587
2594
  Vditor.markmapRender = markmapRender/* markmapRender */.K;
2588
2595
  /** flowchart.js 渲染 */
2589
2596
  Vditor.flowchartRender = flowchartRender/* flowchartRender */.P;
@@ -2626,7 +2633,7 @@ var Vditor = /** @class */ (function () {
2626
2633
  /* harmony export */ "H": () => (/* binding */ _VDITOR_VERSION),
2627
2634
  /* harmony export */ "g": () => (/* binding */ Constants)
2628
2635
  /* harmony export */ });
2629
- var _VDITOR_VERSION = "3.10.5";
2636
+ var _VDITOR_VERSION = "3.10.7";
2630
2637
 
2631
2638
  var Constants = /** @class */ (function () {
2632
2639
  function Constants() {
@@ -2638,24 +2645,43 @@ var Constants = /** @class */ (function () {
2638
2645
  Constants.EDIT_TOOLBARS = ["emoji", "headings", "bold", "italic", "strike", "link", "list",
2639
2646
  "ordered-list", "outdent", "indent", "check", "line", "quote", "code", "inline-code", "insert-after",
2640
2647
  "insert-before", "upload", "record", "table"];
2641
- Constants.CODE_THEME = ["abap", "algol", "algol_nu", "arduino", "autumn", "borland", "bw",
2642
- "colorful", "dracula", "emacs", "friendly", "fruity", "github", "igor", "lovelace", "manni", "monokai",
2643
- "monokailight", "murphy", "native", "paraiso-dark", "paraiso-light", "pastie", "perldoc", "pygments",
2644
- "rainbow_dash", "rrt", "solarized-dark", "solarized-dark256", "solarized-light", "swapoff", "tango", "trac",
2645
- "vim", "vs", "xcode", "ant-design"];
2646
- Constants.CODE_LANGUAGES = ["mermaid", "echarts", "mindmap", "plantuml", "abc", "graphviz", "flowchart", "apache",
2647
- "js", "ts", "html", "markmap",
2648
- // common
2649
- "properties", "apache", "bash", "c", "csharp", "cpp", "css", "coffeescript", "diff", "go", "xml", "http",
2650
- "json", "java", "javascript", "kotlin", "less", "lua", "makefile", "markdown", "nginx", "objectivec", "php",
2651
- "php-template", "perl", "plaintext", "python", "python-repl", "r", "ruby", "rust", "scss", "sql", "shell",
2652
- "swift", "ini", "typescript", "vbnet", "yaml",
2653
- "ada", "clojure", "dart", "erb", "fortran", "gradle", "haskell", "julia", "julia-repl", "lisp", "matlab",
2654
- "pgsql", "powershell", "sql_more", "stata", "cmake", "mathematica",
2655
- // ext
2656
- "solidity", "yul"
2648
+ Constants.CODE_THEME = ["a11y-dark", "agate", "an-old-hope", "androidstudio",
2649
+ "arta", "atom-one-dark", "atom-one-dark-reasonable", "base16/3024", "base16/apathy", "base16/apprentice", "base16/ashes", "base16/atelier-cave", "base16/atelier-dune",
2650
+ "base16/atelier-estuary", "base16/atelier-forest", "base16/atelier-heath", "base16/atelier-lakeside", "base16/atelier-plateau", "base16/atelier-savanna", "base16/atelier-seaside", "base16/atelier-sulphurpool",
2651
+ "base16/atlas", "base16/bespin", "base16/black-metal", "base16/black-metal-bathory", "base16/black-metal-burzum", "base16/black-metal-dark-funeral", "base16/black-metal-gorgoroth", "base16/black-metal-immortal", "base16/black-metal-khold", "base16/black-metal-marduk", "base16/black-metal-mayhem", "base16/black-metal-nile", "base16/black-metal-venom", "base16/brewer", "base16/bright", "base16/brogrammer",
2652
+ "base16/brush-trees-dark", "base16/chalk", "base16/circus", "base16/classic-dark", "base16/codeschool", "base16/colors", "base16/danqing", "base16/darcula", "base16/dark-violet",
2653
+ "base16/darkmoss", "base16/darktooth", "base16/decaf", "base16/default-dark", "base16/dracula", "base16/edge-dark", "base16/eighties", "base16/embers", "base16/equilibrium-dark",
2654
+ "base16/equilibrium-gray-dark", "base16/espresso", "base16/eva", "base16/eva-dim", "base16/flat", "base16/framer", "base16/gigavolt", "base16/google-dark", "base16/grayscale-dark", "base16/green-screen", "base16/gruvbox-dark-hard", "base16/gruvbox-dark-medium",
2655
+ "base16/gruvbox-dark-pale", "base16/gruvbox-dark-soft", "base16/hardcore", "base16/harmonic16-dark", "base16/heetch-dark", "base16/helios", "base16/hopscotch", "base16/horizon-dark", "base16/humanoid-dark", "base16/ia-dark", "base16/icy-dark", "base16/ir-black", "base16/isotope",
2656
+ "base16/kimber", "base16/london-tube", "base16/macintosh", "base16/marrakesh", "base16/materia", "base16/material", "base16/material-darker", "base16/material-palenight", "base16/material-vivid",
2657
+ "base16/mellow-purple", "base16/mocha", "base16/monokai", "base16/nebula", "base16/nord", "base16/nova", "base16/ocean", "base16/oceanicnext", "base16/onedark", "base16/outrun-dark",
2658
+ "base16/papercolor-dark", "base16/paraiso", "base16/pasque", "base16/phd", "base16/pico", "base16/pop", "base16/porple", "base16/qualia", "base16/railscasts", "base16/rebecca",
2659
+ "base16/ros-pine", "base16/ros-pine-moon", "base16/sandcastle", "base16/seti-ui", "base16/silk-dark", "base16/snazzy", "base16/solar-flare", "base16/solarized-dark", "base16/spacemacs", "base16/summercamp", "base16/summerfruit-dark",
2660
+ "base16/synth-midnight-terminal-dark", "base16/tango", "base16/tender", "base16/tomorrow-night", "base16/twilight", "base16/unikitty-dark", "base16/vulcan",
2661
+ "base16/windows-10", "base16/windows-95", "base16/windows-high-contrast", "base16/windows-nt", "base16/woodland", "base16/xcode-dusk", "base16/zenburn", "codepen-embed", "dark",
2662
+ "devibeans", "far", "felipec", "github-dark", "github-dark-dimmed", "gml", "gradient-dark", "hybrid", "ir-black", "isbl-editor-dark", "kimbie-dark", "lioshi",
2663
+ "monokai", "monokai-sublime", "night-owl", "nnfx-dark", "nord", "obsidian", "panda-syntax-dark", "paraiso-dark", "pojoaque", "qtcreator-dark", "rainbow", "shades-of-purple", "srcery", "stackoverflow-dark",
2664
+ "sunburst", "tomorrow-night-blue", "tomorrow-night-bright", "tokyo-night-dark", "vs2015", "xt256",
2665
+ "ant-design",
2666
+ "a11y-light", "arduino-light", "ascetic", "atom-one-light", "base16/atelier-cave-light",
2667
+ "base16/atelier-dune-light", "base16/atelier-estuary-light", "base16/atelier-forest-light", "base16/atelier-heath-light",
2668
+ "base16/atelier-lakeside-light", "base16/atelier-plateau-light", "base16/atelier-savanna-light", "base16/atelier-seaside-light", "base16/atelier-sulphurpool-light", "base16/brush-trees",
2669
+ "base16/classic-light", "base16/cupcake", "base16/cupertino", "base16/default-light", "base16/dirtysea", "base16/edge-light", "base16/equilibrium-gray-light", "base16/equilibrium-light",
2670
+ "base16/fruit-soda", "base16/github", "base16/google-light", "base16/grayscale-light", "base16/gruvbox-light-hard", "base16/gruvbox-light-medium", "base16/gruvbox-light-soft",
2671
+ "base16/harmonic16-light", "base16/heetch-light", "base16/humanoid-light", "base16/horizon-light", "base16/ia-light", "base16/material-lighter", "base16/mexico-light",
2672
+ "base16/one-light", "base16/papercolor-light", "base16/ros-pine-dawn", "base16/sagelight", "base16/shapeshifter",
2673
+ "base16/silk-light", "base16/solar-flare-light", "base16/solarized-light", "base16/summerfruit-light", "base16/synth-midnight-terminal-light", "base16/tomorrow",
2674
+ "base16/unikitty-light", "base16/windows-10-light", "base16/windows-95-light", "base16/windows-high-contrast-light", "brown-paper", "base16/windows-nt-light",
2675
+ "color-brewer", "docco", "foundation", "github", "googlecode", "gradient-light", "grayscale", "idea", "intellij-light", "isbl-editor-light", "kimbie-light",
2676
+ "lightfair", "magula", "mono-blue", "nnfx-light", "panda-syntax-light", "paraiso-light", "purebasic", "qtcreator-light", "routeros", "school-book",
2677
+ "stackoverflow-light", "tokyo-night-light", "vs", "xcode", "default"];
2678
+ Constants.ALIAS_CODE_LANGUAGES = [
2679
+ // 自定义
2680
+ "abc", "plantuml", "mermaid", "flowchart", "echarts", "mindmap", "graphviz", "math", "markmap", "smiles",
2681
+ // 别名
2682
+ "js", "ts", "html", "toml", "c#", "bat"
2657
2683
  ];
2658
- Constants.CDN = "https://unpkg.com/vditor@".concat("3.10.5");
2684
+ Constants.CDN = "https://unpkg.com/vditor@".concat("3.10.7");
2659
2685
  Constants.MARKDOWN_OPTIONS = {
2660
2686
  autoSpace: false,
2661
2687
  gfmAutoLink: true,
@@ -2697,6 +2723,45 @@ var Constants = /** @class */ (function () {
2697
2723
 
2698
2724
 
2699
2725
 
2726
+ /***/ }),
2727
+
2728
+ /***/ 474:
2729
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2730
+
2731
+ "use strict";
2732
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2733
+ /* harmony export */ "J": () => (/* binding */ SMILESRender)
2734
+ /* harmony export */ });
2735
+ /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(793);
2736
+ /* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(998);
2737
+ /* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(781);
2738
+ /* harmony import */ var _util_function__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(446);
2739
+
2740
+
2741
+
2742
+
2743
+ var SMILESRender = function (element, cdn, theme) {
2744
+ if (element === void 0) { element = document; }
2745
+ if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; }
2746
+ var SMILESElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.SMILESRenderAdapter.getElements(element);
2747
+ if (SMILESElements.length > 0) {
2748
+ (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/smiles-drawer/smiles-drawer.min.js?v=2.1.7"), "vditorAbcjsScript").then(function () {
2749
+ var sd = new SmiDrawer({}, {});
2750
+ SMILESElements.forEach(function (item) {
2751
+ var code = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.SMILESRenderAdapter.getCode(item).trim();
2752
+ if (item.getAttribute("data-processed") === "true" || code.trim() === "") {
2753
+ return;
2754
+ }
2755
+ var id = "smiles" + (0,_util_function__WEBPACK_IMPORTED_MODULE_3__/* .genUUID */ .Wb)();
2756
+ item.innerHTML = "<svg id=\"".concat(id, "\"></svg>");
2757
+ sd.draw(code, '#' + id, theme === "dark" ? "dark" : undefined);
2758
+ item.setAttribute("data-processed", "true");
2759
+ });
2760
+ });
2761
+ }
2762
+ };
2763
+
2764
+
2700
2765
  /***/ }),
2701
2766
 
2702
2767
  /***/ 386:
@@ -2743,6 +2808,7 @@ var abcRender = function (element, cdn) {
2743
2808
  "use strict";
2744
2809
  __webpack_require__.r(__webpack_exports__);
2745
2810
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2811
+ /* harmony export */ "SMILESRenderAdapter": () => (/* binding */ SMILESRenderAdapter),
2746
2812
  /* harmony export */ "abcRenderAdapter": () => (/* binding */ abcRenderAdapter),
2747
2813
  /* harmony export */ "chartRenderAdapter": () => (/* binding */ chartRenderAdapter),
2748
2814
  /* harmony export */ "flowchartRenderAdapter": () => (/* binding */ flowchartRenderAdapter),
@@ -2754,9 +2820,13 @@ __webpack_require__.r(__webpack_exports__);
2754
2820
  /* harmony export */ "plantumlRenderAdapter": () => (/* binding */ plantumlRenderAdapter)
2755
2821
  /* harmony export */ });
2756
2822
  var mathRenderAdapter = {
2757
- getCode: function (mathElement) { return mathElement.textContent; },
2823
+ getCode: function (el) { return el.textContent; },
2758
2824
  getElements: function (element) { return element.querySelectorAll(".language-math"); },
2759
2825
  };
2826
+ var SMILESRenderAdapter = {
2827
+ getCode: function (el) { return el.textContent; },
2828
+ getElements: function (element) { return element.querySelectorAll(".language-smiles"); },
2829
+ };
2760
2830
  var mermaidRenderAdapter = {
2761
2831
  /** 不仅要返回code,并且需要将 code 设置为 el 的 innerHTML */
2762
2832
  getCode: function (el) { return el.textContent; },
@@ -2804,6 +2874,44 @@ var plantumlRenderAdapter = {
2804
2874
  /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(793);
2805
2875
  /* harmony import */ var _util_addScript__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(998);
2806
2876
  /* harmony import */ var _adapterRender__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(781);
2877
+ /* harmony import */ var _util_function__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(446);
2878
+ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
2879
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
2880
+ return new (P || (P = Promise))(function (resolve, reject) {
2881
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
2882
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
2883
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
2884
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
2885
+ });
2886
+ };
2887
+ var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
2888
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
2889
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
2890
+ function verb(n) { return function (v) { return step([n, v]); }; }
2891
+ function step(op) {
2892
+ if (f) throw new TypeError("Generator is already executing.");
2893
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
2894
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
2895
+ if (y = 0, t) op = [op[0] & 2, t.value];
2896
+ switch (op[0]) {
2897
+ case 0: case 1: t = op; break;
2898
+ case 4: _.label++; return { value: op[1], done: false };
2899
+ case 5: _.label++; y = op[1]; op = [0]; continue;
2900
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
2901
+ default:
2902
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
2903
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
2904
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
2905
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
2906
+ if (t[2]) _.ops.pop();
2907
+ _.trys.pop(); continue;
2908
+ }
2909
+ op = body.call(thisArg, _);
2910
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
2911
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
2912
+ }
2913
+ };
2914
+
2807
2915
 
2808
2916
 
2809
2917
 
@@ -2812,29 +2920,41 @@ var chartRender = function (element, cdn, theme) {
2812
2920
  if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; }
2813
2921
  var echartsElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.chartRenderAdapter.getElements(element);
2814
2922
  if (echartsElements.length > 0) {
2815
- (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/echarts/echarts.min.js"), "vditorEchartsScript").then(function () {
2816
- echartsElements.forEach(function (e) {
2817
- if (e.parentElement.classList.contains("vditor-wysiwyg__pre") ||
2818
- e.parentElement.classList.contains("vditor-ir__marker--pre")) {
2819
- return;
2820
- }
2821
- var text = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.chartRenderAdapter.getCode(e).trim();
2822
- if (!text) {
2823
- return;
2824
- }
2825
- try {
2826
- if (e.getAttribute("data-processed") === "true") {
2827
- return;
2923
+ (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/echarts/echarts.min.js?v=5.5.1"), "vditorEchartsScript").then(function () {
2924
+ echartsElements.forEach(function (e) { return __awaiter(void 0, void 0, void 0, function () {
2925
+ var text, option, error_1;
2926
+ return __generator(this, function (_a) {
2927
+ switch (_a.label) {
2928
+ case 0:
2929
+ if (e.parentElement.classList.contains("vditor-wysiwyg__pre") ||
2930
+ e.parentElement.classList.contains("vditor-ir__marker--pre")) {
2931
+ return [2 /*return*/];
2932
+ }
2933
+ text = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.chartRenderAdapter.getCode(e).trim();
2934
+ if (!text) {
2935
+ return [2 /*return*/];
2936
+ }
2937
+ _a.label = 1;
2938
+ case 1:
2939
+ _a.trys.push([1, 3, , 4]);
2940
+ if (e.getAttribute("data-processed") === "true") {
2941
+ return [2 /*return*/];
2942
+ }
2943
+ return [4 /*yield*/, (0,_util_function__WEBPACK_IMPORTED_MODULE_3__/* .looseJsonParse */ .Qf)(text)];
2944
+ case 2:
2945
+ option = _a.sent();
2946
+ echarts.init(e, theme === "dark" ? "dark" : undefined).setOption(option);
2947
+ e.setAttribute("data-processed", "true");
2948
+ return [3 /*break*/, 4];
2949
+ case 3:
2950
+ error_1 = _a.sent();
2951
+ e.className = "vditor-reset--error";
2952
+ e.innerHTML = "echarts render error: <br>".concat(error_1);
2953
+ return [3 /*break*/, 4];
2954
+ case 4: return [2 /*return*/];
2828
2955
  }
2829
- var option = JSON.parse(text);
2830
- echarts.init(e, theme === "dark" ? "dark" : undefined).setOption(option);
2831
- e.setAttribute("data-processed", "true");
2832
- }
2833
- catch (error) {
2834
- e.className = "vditor-reset--error";
2835
- e.innerHTML = "echarts render error: <br>".concat(error);
2836
- }
2837
- });
2956
+ });
2957
+ }); });
2838
2958
  });
2839
2959
  }
2840
2960
  };
@@ -2863,7 +2983,7 @@ var codeRender = function (element, option) {
2863
2983
  e.classList.contains("language-echarts") || e.classList.contains("language-mindmap") ||
2864
2984
  e.classList.contains("language-plantuml") || e.classList.contains("language-markmap") ||
2865
2985
  e.classList.contains("language-abc") || e.classList.contains("language-graphviz") ||
2866
- e.classList.contains("language-math")) {
2986
+ e.classList.contains("language-math") || e.classList.contains("language-smiles")) {
2867
2987
  return false;
2868
2988
  }
2869
2989
  if (e.style.maxHeight.indexOf("px") > -1) {
@@ -3019,11 +3139,11 @@ var highlightRender = function (hljsOption, element, cdn) {
3019
3139
  style = "github";
3020
3140
  }
3021
3141
  var vditorHljsStyle = document.getElementById("vditorHljsStyle");
3022
- var href = "".concat(cdn, "/dist/js/highlight.js/styles/").concat(style, ".css");
3142
+ var href = "".concat(cdn, "/dist/js/highlight.js/styles/").concat(style, ".min.css");
3023
3143
  if (vditorHljsStyle && vditorHljsStyle.getAttribute('href') !== href) {
3024
3144
  vditorHljsStyle.remove();
3025
3145
  }
3026
- (0,_util_addStyle__WEBPACK_IMPORTED_MODULE_1__/* .addStyle */ .c)("".concat(cdn, "/dist/js/highlight.js/styles/").concat(style, ".css"), "vditorHljsStyle");
3146
+ (0,_util_addStyle__WEBPACK_IMPORTED_MODULE_1__/* .addStyle */ .c)("".concat(cdn, "/dist/js/highlight.js/styles/").concat(style, ".min.css"), "vditorHljsStyle");
3027
3147
  if (hljsOption.enable === false) {
3028
3148
  return;
3029
3149
  }
@@ -3031,56 +3151,62 @@ var highlightRender = function (hljsOption, element, cdn) {
3031
3151
  if (codes.length === 0) {
3032
3152
  return;
3033
3153
  }
3034
- (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/highlight.js/highlight.pack.js"), "vditorHljsScript").then(function () {
3035
- (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/highlight.js/solidity.min.js"), "vditorHljsSolidityScript").then(function () {
3036
- (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/highlight.js/yul.min.js"), "vditorHljsYulScript").then(function () {
3037
- element.querySelectorAll("pre > code").forEach(function (block) {
3038
- // ir & wysiwyg 区域不渲染
3039
- if (block.parentElement.classList.contains("vditor-ir__marker--pre") ||
3040
- block.parentElement.classList.contains("vditor-wysiwyg__pre")) {
3041
- return;
3042
- }
3043
- if (block.classList.contains("language-mermaid") || block.classList.contains("language-flowchart") ||
3044
- block.classList.contains("language-echarts") || block.classList.contains("language-mindmap") ||
3045
- block.classList.contains("language-plantuml") ||
3046
- block.classList.contains("language-abc") || block.classList.contains("language-graphviz") ||
3047
- block.classList.contains("language-math")) {
3048
- return;
3049
- }
3050
- if (hljsOption.defaultLang !== "" && block.className.indexOf("language-") === -1) {
3051
- block.classList.add("language-" + hljsOption.defaultLang);
3052
- }
3053
- hljs.highlightElement(block);
3054
- if (!hljsOption.lineNumber) {
3055
- return;
3056
- }
3057
- block.classList.add("vditor-linenumber");
3058
- var linenNumberTemp = block.querySelector(".vditor-linenumber__temp");
3059
- if (!linenNumberTemp) {
3060
- linenNumberTemp = document.createElement("div");
3061
- linenNumberTemp.className = "vditor-linenumber__temp";
3062
- block.insertAdjacentElement("beforeend", linenNumberTemp);
3063
- }
3064
- var whiteSpace = getComputedStyle(block).whiteSpace;
3065
- var isSoftWrap = false;
3066
- if (whiteSpace === "pre-wrap" || whiteSpace === "pre-line") {
3067
- isSoftWrap = true;
3154
+ (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/highlight.js/highlight.min.js?v=11.7.0"), "vditorHljsScript").then(function () {
3155
+ (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/highlight.js/third-languages.js?v=1.0.1"), "vditorHljsThirdScript").then(function () {
3156
+ element.querySelectorAll("pre > code").forEach(function (block) {
3157
+ // ir & wysiwyg 区域不渲染
3158
+ if (block.parentElement.classList.contains("vditor-ir__marker--pre") ||
3159
+ block.parentElement.classList.contains("vditor-wysiwyg__pre")) {
3160
+ return;
3161
+ }
3162
+ if (block.classList.contains("language-mermaid") || block.classList.contains("language-flowchart") ||
3163
+ block.classList.contains("language-echarts") || block.classList.contains("language-mindmap") ||
3164
+ block.classList.contains("language-plantuml") || block.classList.contains("language-smiles") ||
3165
+ block.classList.contains("language-abc") || block.classList.contains("language-graphviz") ||
3166
+ block.classList.contains("language-math")) {
3167
+ return;
3168
+ }
3169
+ if (hljsOption.defaultLang !== "" && block.className.indexOf("language-") === -1) {
3170
+ block.classList.add("language-" + hljsOption.defaultLang);
3171
+ }
3172
+ var language = hljsOption.defaultLang || block.className.replace("language-", "");
3173
+ if (!window.hljs.getLanguage(language)) {
3174
+ language = "plaintext";
3175
+ }
3176
+ block.innerHTML = window.hljs.highlight(block.textContent, {
3177
+ language: language,
3178
+ ignoreIllegals: true
3179
+ }).value;
3180
+ block.classList.add("hljs");
3181
+ if (!hljsOption.lineNumber) {
3182
+ return;
3183
+ }
3184
+ block.classList.add("vditor-linenumber");
3185
+ var linenNumberTemp = block.querySelector(".vditor-linenumber__temp");
3186
+ if (!linenNumberTemp) {
3187
+ linenNumberTemp = document.createElement("div");
3188
+ linenNumberTemp.className = "vditor-linenumber__temp";
3189
+ block.insertAdjacentElement("beforeend", linenNumberTemp);
3190
+ }
3191
+ var whiteSpace = getComputedStyle(block).whiteSpace;
3192
+ var isSoftWrap = false;
3193
+ if (whiteSpace === "pre-wrap" || whiteSpace === "pre-line") {
3194
+ isSoftWrap = true;
3195
+ }
3196
+ var lineNumberHTML = "";
3197
+ var lineList = block.textContent.split(/\r\n|\r|\n/g);
3198
+ lineList.pop();
3199
+ lineList.map(function (line) {
3200
+ var lineHeight = "";
3201
+ if (isSoftWrap) {
3202
+ linenNumberTemp.textContent = line || "\n";
3203
+ lineHeight = " style=\"height:".concat(linenNumberTemp.getBoundingClientRect().height, "px\"");
3068
3204
  }
3069
- var lineNumberHTML = "";
3070
- var lineList = block.textContent.split(/\r\n|\r|\n/g);
3071
- lineList.pop();
3072
- lineList.map(function (line) {
3073
- var lineHeight = "";
3074
- if (isSoftWrap) {
3075
- linenNumberTemp.textContent = line || "\n";
3076
- lineHeight = " style=\"height:".concat(linenNumberTemp.getBoundingClientRect().height, "px\"");
3077
- }
3078
- lineNumberHTML += "<span".concat(lineHeight, "></span>");
3079
- });
3080
- linenNumberTemp.style.display = "none";
3081
- lineNumberHTML = "<span class=\"vditor-linenumber__rows\">".concat(lineNumberHTML, "</span>");
3082
- block.insertAdjacentHTML("beforeend", lineNumberHTML);
3205
+ lineNumberHTML += "<span".concat(lineHeight, "></span>");
3083
3206
  });
3207
+ linenNumberTemp.style.display = "none";
3208
+ lineNumberHTML = "<span class=\"vditor-linenumber__rows\">".concat(lineNumberHTML, "</span>");
3209
+ block.insertAdjacentHTML("beforeend", lineNumberHTML);
3084
3210
  });
3085
3211
  });
3086
3212
  });
@@ -3129,13 +3255,14 @@ var init = function (el, code) {
3129
3255
  mm.setData(root, frontmatterOptions);
3130
3256
  mm.fit();
3131
3257
  };
3132
- var markmapRender = function (element, cdn, theme) {
3258
+ var markmapRender = function (element, cdn) {
3259
+ if (element === void 0) { element = document; }
3133
3260
  if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; }
3134
3261
  var markmapElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.markmapRenderAdapter.getElements(element);
3135
3262
  if (markmapElements.length === 0) {
3136
3263
  return;
3137
3264
  }
3138
- (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/markmap/markmap.min.js"), "vditorMermaidScript").then(function () {
3265
+ (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/markmap/markmap.min.js"), "vditorMarkerScript").then(function () {
3139
3266
  markmapElements.forEach(function (item) {
3140
3267
  var code = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.markmapRenderAdapter.getCode(item);
3141
3268
  if (item.getAttribute("data-processed") === "true" || code.trim() === "") {
@@ -3173,6 +3300,7 @@ var markmapRender = function (element, cdn, theme) {
3173
3300
 
3174
3301
 
3175
3302
  var mathRender = function (element, options) {
3303
+ if (element === void 0) { element = document; }
3176
3304
  var mathElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.mathRenderAdapter.getElements(element);
3177
3305
  if (mathElements.length === 0) {
3178
3306
  return;
@@ -3357,7 +3485,7 @@ var iframeRender = function (element, url) {
3357
3485
  }
3358
3486
  else if (url.indexOf("bilibili.com") > -1 && (url.indexOf("bvid=") > -1 || (bilibiliMatch && bilibiliMatch[1]))) {
3359
3487
  var params_1 = {
3360
- bvid: (0,_util_function__WEBPACK_IMPORTED_MODULE_0__/* .getSearch */ .o)("bvid", url) || (bilibiliMatch && bilibiliMatch[1]),
3488
+ bvid: (0,_util_function__WEBPACK_IMPORTED_MODULE_0__/* .getSearch */ .on)("bvid", url) || (bilibiliMatch && bilibiliMatch[1]),
3361
3489
  page: "1",
3362
3490
  high_quality: "1",
3363
3491
  as_wide: "1",
@@ -3466,6 +3594,7 @@ var __generator = (undefined && undefined.__generator) || function (thisArg, bod
3466
3594
 
3467
3595
 
3468
3596
  var mermaidRender = function (element, cdn, theme) {
3597
+ if (element === void 0) { element = document; }
3469
3598
  if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; }
3470
3599
  var mermaidElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.mermaidRenderAdapter.getElements(element);
3471
3600
  if (mermaidElements.length === 0) {
@@ -3506,7 +3635,7 @@ var mermaidRender = function (element, cdn, theme) {
3506
3635
  if (item.getAttribute("data-processed") === "true" || code.trim() === "") {
3507
3636
  return [2 /*return*/];
3508
3637
  }
3509
- id = "mermaid" + (0,_util_function__WEBPACK_IMPORTED_MODULE_3__/* .genUUID */ .W)();
3638
+ id = "mermaid" + (0,_util_function__WEBPACK_IMPORTED_MODULE_3__/* .genUUID */ .Wb)();
3510
3639
  _a.label = 1;
3511
3640
  case 1:
3512
3641
  _a.trys.push([1, 3, , 4]);
@@ -3551,7 +3680,7 @@ var mindmapRender = function (element, cdn, theme) {
3551
3680
  if (cdn === void 0) { cdn = _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN; }
3552
3681
  var mindmapElements = _adapterRender__WEBPACK_IMPORTED_MODULE_1__.mindmapRenderAdapter.getElements(element);
3553
3682
  if (mindmapElements.length > 0) {
3554
- (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/echarts/echarts.min.js"), "vditorEchartsScript").then(function () {
3683
+ (0,_util_addScript__WEBPACK_IMPORTED_MODULE_2__/* .addScript */ .G)("".concat(cdn, "/dist/js/echarts/echarts.min.js?v=5.5.1"), "vditorEchartsScript").then(function () {
3555
3684
  mindmapElements.forEach(function (e) {
3556
3685
  if (e.parentElement.classList.contains("vditor-wysiwyg__pre") ||
3557
3686
  e.parentElement.classList.contains("vditor-ir__marker--pre")) {
@@ -4110,8 +4239,9 @@ var isChrome = function () {
4110
4239
 
4111
4240
  "use strict";
4112
4241
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4113
- /* harmony export */ "W": () => (/* binding */ genUUID),
4114
- /* harmony export */ "o": () => (/* binding */ getSearch)
4242
+ /* harmony export */ "Qf": () => (/* binding */ looseJsonParse),
4243
+ /* harmony export */ "Wb": () => (/* binding */ genUUID),
4244
+ /* harmony export */ "on": () => (/* binding */ getSearch)
4115
4245
  /* harmony export */ });
4116
4246
  var genUUID = function () { return ([1e7].toString() + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, function (c) {
4117
4247
  return (parseInt(c, 10) ^ (window.crypto.getRandomValues(new Uint32Array(1))[0] & (15 >> (parseInt(c, 10) / 4)))).toString(16);
@@ -4124,6 +4254,9 @@ var getSearch = function (key, link) {
4124
4254
  var urlSearchParams = new URLSearchParams(params.substring(0, hashIndex >= 0 ? hashIndex : undefined));
4125
4255
  return urlSearchParams.get(key);
4126
4256
  };
4257
+ var looseJsonParse = function (text) {
4258
+ return Function("\"use strict\";return (".concat(text, ")"))();
4259
+ };
4127
4260
 
4128
4261
 
4129
4262
  /***/ }),
@@ -4771,7 +4904,7 @@ var DevTools = /** @class */ (function () {
4771
4904
  if (vditor.devtools.element.style.display !== "block") {
4772
4905
  return;
4773
4906
  }
4774
- (0,addScript/* addScript */.G)("".concat(vditor.options.cdn, "/dist/js/echarts/echarts.min.js"), "vditorEchartsScript").then(function () {
4907
+ (0,addScript/* addScript */.G)("".concat(vditor.options.cdn, "/dist/js/echarts/echarts.min.js?v=5.5.1"), "vditorEchartsScript").then(function () {
4775
4908
  if (!_this.ASTChart) {
4776
4909
  _this.ASTChart = echarts.init(vditor.devtools.element.lastElementChild);
4777
4910
  }
@@ -4988,6 +5121,8 @@ var markmapRender = __webpack_require__(593);
4988
5121
  var mindmapRender = __webpack_require__(558);
4989
5122
  // EXTERNAL MODULE: ./src/ts/markdown/plantumlRender.ts
4990
5123
  var plantumlRender = __webpack_require__(931);
5124
+ // EXTERNAL MODULE: ./src/ts/markdown/SMILESRender.ts
5125
+ var SMILESRender = __webpack_require__(474);
4991
5126
  ;// CONCATENATED MODULE: ./src/ts/util/processCode.ts
4992
5127
 
4993
5128
 
@@ -5000,6 +5135,7 @@ var plantumlRender = __webpack_require__(931);
5000
5135
 
5001
5136
 
5002
5137
 
5138
+
5003
5139
  var processPasteCode = function (html, text, type) {
5004
5140
  if (type === void 0) { type = "sv"; }
5005
5141
  var tempElement = document.createElement("div");
@@ -5058,8 +5194,11 @@ var processCodeRender = function (previewPanel, vditor) {
5058
5194
  else if (language === "mermaid") {
5059
5195
  (0,mermaidRender/* mermaidRender */.i)(previewPanel, vditor.options.cdn, vditor.options.theme);
5060
5196
  }
5197
+ else if (language === "smiles") {
5198
+ (0,SMILESRender/* SMILESRender */.J)(previewPanel, vditor.options.cdn, vditor.options.theme);
5199
+ }
5061
5200
  else if (language === "markmap") {
5062
- (0,markmapRender/* markmapRender */.K)(previewPanel, vditor.options.cdn, vditor.options.theme);
5201
+ (0,markmapRender/* markmapRender */.K)(previewPanel, vditor.options.cdn);
5063
5202
  }
5064
5203
  else if (language === "flowchart") {
5065
5204
  (0,flowchartRender/* flowchartRender */.P)(previewPanel, vditor.options.cdn);
@@ -5230,6 +5369,10 @@ var input = function (vditor, range, ignoreSpace, event) {
5230
5369
  }
5231
5370
  return;
5232
5371
  }
5372
+ // https://github.com/Vanessa219/vditor/issues/729
5373
+ if (endSpace && /^#{1,6} $/.test(blockElement.textContent)) {
5374
+ endSpace = false;
5375
+ }
5233
5376
  if (endSpace) {
5234
5377
  var markerElement = (0,hasClosest/* hasClosestByClassName */.fb)(range.startContainer, "vditor-ir__marker");
5235
5378
  if (markerElement) {
@@ -5697,7 +5840,7 @@ var processKeydown = function (vditor, event) {
5697
5840
  // 光标位于标题前,marker 后
5698
5841
  if (headingElement) {
5699
5842
  var headingLength = headingElement.firstElementChild.textContent.length;
5700
- if ((0,selection/* getSelectPosition */.im)(headingElement, vditor.ir.element).start === headingLength) {
5843
+ if ((0,selection/* getSelectPosition */.im)(headingElement, vditor.ir.element).start === headingLength && headingLength !== 0) {
5701
5844
  range.setStart(headingElement.firstElementChild.firstChild, headingLength - 1);
5702
5845
  range.collapse(true);
5703
5846
  (0,selection/* setSelectionFocus */.Hc)(range);
@@ -7556,6 +7699,7 @@ var highlightToolbarWYSIWYG = function (vditor) {
7556
7699
  focusToElement(event, range);
7557
7700
  };
7558
7701
  language_1.onkeyup = function (event) {
7702
+ var _a, _b;
7559
7703
  if (event.isComposing ||
7560
7704
  event.key === "Enter" ||
7561
7705
  event.key === "ArrowUp" ||
@@ -7565,7 +7709,7 @@ var highlightToolbarWYSIWYG = function (vditor) {
7565
7709
  }
7566
7710
  var matchLangData = [];
7567
7711
  var key = language_1.value.substring(0, language_1.selectionStart);
7568
- (vditor.options.preview.hljs.langs || constants/* Constants.CODE_LANGUAGES */.g.CODE_LANGUAGES).forEach(function (keyName) {
7712
+ (vditor.options.preview.hljs.langs || constants/* Constants.ALIAS_CODE_LANGUAGES.concat */.g.ALIAS_CODE_LANGUAGES.concat(((_b = (_a = window.hljs) === null || _a === void 0 ? void 0 : _a.listLanguages()) !== null && _b !== void 0 ? _b : []).sort())).forEach(function (keyName) {
7569
7713
  if (keyName.indexOf(key.toLowerCase()) > -1) {
7570
7714
  matchLangData.push({
7571
7715
  html: keyName,
@@ -11085,6 +11229,7 @@ var templateObject_1;
11085
11229
 
11086
11230
 
11087
11231
  var processHint = function (vditor) {
11232
+ var _a, _b;
11088
11233
  vditor.hint.render(vditor);
11089
11234
  var startContainer = (0,selection/* getEditorRange */.zh)(vditor).startContainer;
11090
11235
  // 代码块语言提示
@@ -11099,7 +11244,7 @@ var processHint = function (vditor) {
11099
11244
  var matchLangData_1 = [];
11100
11245
  var key_1 = preBeforeElement.textContent.substring(0, (0,selection/* getSelectPosition */.im)(preBeforeElement, vditor.ir.element).start)
11101
11246
  .replace(constants/* Constants.ZWSP */.g.ZWSP, "");
11102
- (vditor.options.preview.hljs.langs || constants/* Constants.CODE_LANGUAGES */.g.CODE_LANGUAGES).forEach(function (keyName) {
11247
+ (vditor.options.preview.hljs.langs || constants/* Constants.ALIAS_CODE_LANGUAGES.concat */.g.ALIAS_CODE_LANGUAGES.concat(((_b = (_a = window.hljs) === null || _a === void 0 ? void 0 : _a.listLanguages()) !== null && _b !== void 0 ? _b : []).sort())).forEach(function (keyName) {
11103
11248
  if (keyName.indexOf(key_1.toLowerCase()) > -1) {
11104
11249
  matchLangData_1.push({
11105
11250
  html: keyName,
@@ -11942,6 +12087,7 @@ var mediaRender = __webpack_require__(431);
11942
12087
 
11943
12088
 
11944
12089
 
12090
+
11945
12091
  var Preview = /** @class */ (function () {
11946
12092
  function Preview(vditor) {
11947
12093
  var _this = this;
@@ -12142,7 +12288,8 @@ var Preview = /** @class */ (function () {
12142
12288
  (0,codeRender/* codeRender */.O)(vditor.preview.previewElement, vditor.options.preview.hljs);
12143
12289
  (0,highlightRender/* highlightRender */.s)(vditor.options.preview.hljs, vditor.preview.previewElement, vditor.options.cdn);
12144
12290
  (0,mermaidRender/* mermaidRender */.i)(vditor.preview.previewElement, vditor.options.cdn, vditor.options.theme);
12145
- (0,markmapRender/* markmapRender */.K)(vditor.preview.previewElement, vditor.options.cdn, vditor.options.theme);
12291
+ (0,markmapRender/* markmapRender */.K)(vditor.preview.previewElement, vditor.options.cdn);
12292
+ (0,SMILESRender/* SMILESRender */.J)(vditor.preview.previewElement, vditor.options.cdn, vditor.options.theme);
12146
12293
  (0,flowchartRender/* flowchartRender */.P)(vditor.preview.previewElement, vditor.options.cdn);
12147
12294
  (0,graphvizRender/* graphvizRender */.v)(vditor.preview.previewElement, vditor.options.cdn);
12148
12295
  (0,chartRender/* chartRender */.p)(vditor.preview.previewElement, vditor.options.cdn, vditor.options.theme);
@@ -12749,6 +12896,8 @@ var Emoji_extends = (undefined && undefined.__extends) || (function () {
12749
12896
 
12750
12897
 
12751
12898
 
12899
+
12900
+
12752
12901
  var Emoji = /** @class */ (function (_super) {
12753
12902
  Emoji_extends(Emoji, _super);
12754
12903
  function Emoji(vditor, menuItem) {
@@ -12795,6 +12944,9 @@ var Emoji = /** @class */ (function (_super) {
12795
12944
  else {
12796
12945
  range.extractContents();
12797
12946
  range.insertNode(document.createTextNode(value));
12947
+ if (!(0,hasClosest/* hasClosestBlock */.F9)(range.startContainer)) {
12948
+ modifyPre(vditor, range);
12949
+ }
12798
12950
  }
12799
12951
  range.collapse(false);
12800
12952
  (0,selection/* setSelectionFocus */.Hc)(range);
@@ -12846,7 +12998,7 @@ var exportPDF = function (vditor) {
12846
12998
  };
12847
12999
  var exportHTML = function (vditor) {
12848
13000
  var content = getHTML(vditor);
12849
- var html = "<html><head><link rel=\"stylesheet\" type=\"text/css\" href=\"".concat(vditor.options.cdn, "/dist/index.css\"/>\n<script src=\"").concat(vditor.options.cdn, "/dist/js/i18n/").concat(vditor.options.lang, ".js\"></script>\n<script src=\"").concat(vditor.options.cdn, "/dist/method.min.js\"></script></head>\n<body><div class=\"vditor-reset\" id=\"preview\">").concat(content, "</div>\n<script>\n const previewElement = document.getElementById('preview')\n Vditor.setContentTheme('").concat(vditor.options.preview.theme.current, "', '").concat(vditor.options.preview.theme.path, "');\n Vditor.codeRender(previewElement);\n Vditor.highlightRender(").concat(JSON.stringify(vditor.options.preview.hljs), ", previewElement, '").concat(vditor.options.cdn, "');\n Vditor.mathRender(previewElement, {\n cdn: '").concat(vditor.options.cdn, "',\n math: ").concat(JSON.stringify(vditor.options.preview.math), ",\n });\n Vditor.mermaidRender(previewElement, '").concat(vditor.options.cdn, "', '").concat(vditor.options.theme, "');\n Vditor.markmapRender(previewElement, '").concat(vditor.options.cdn, "', '").concat(vditor.options.theme, "');\n Vditor.flowchartRender(previewElement, '").concat(vditor.options.cdn, "');\n Vditor.graphvizRender(previewElement, '").concat(vditor.options.cdn, "');\n Vditor.chartRender(previewElement, '").concat(vditor.options.cdn, "', '").concat(vditor.options.theme, "');\n Vditor.mindmapRender(previewElement, '").concat(vditor.options.cdn, "', '").concat(vditor.options.theme, "');\n Vditor.abcRender(previewElement, '").concat(vditor.options.cdn, "');\n ").concat(vditor.options.preview.render.media.enable ? 'Vditor.mediaRender(previewElement);' : "", "\n Vditor.speechRender(previewElement);\n</script>\n<script src=\"").concat(vditor.options.cdn, "/dist/js/icons/").concat(vditor.options.icon, ".js\"></script></body></html>");
13001
+ var html = "<html><head><link rel=\"stylesheet\" type=\"text/css\" href=\"".concat(vditor.options.cdn, "/dist/index.css\"/>\n<script src=\"").concat(vditor.options.cdn, "/dist/js/i18n/").concat(vditor.options.lang, ".js\"></script>\n<script src=\"").concat(vditor.options.cdn, "/dist/method.min.js\"></script></head>\n<body><div class=\"vditor-reset\" id=\"preview\">").concat(content, "</div>\n<script>\n const previewElement = document.getElementById('preview')\n Vditor.setContentTheme('").concat(vditor.options.preview.theme.current, "', '").concat(vditor.options.preview.theme.path, "');\n Vditor.codeRender(previewElement);\n Vditor.highlightRender(").concat(JSON.stringify(vditor.options.preview.hljs), ", previewElement, '").concat(vditor.options.cdn, "');\n Vditor.mathRender(previewElement, {\n cdn: '").concat(vditor.options.cdn, "',\n math: ").concat(JSON.stringify(vditor.options.preview.math), ",\n });\n Vditor.mermaidRender(previewElement, '").concat(vditor.options.cdn, "', '").concat(vditor.options.theme, "');\n Vditor.SMILESRender(previewElement, '").concat(vditor.options.cdn, "', '").concat(vditor.options.theme, "');\n Vditor.markmapRender(previewElement, '").concat(vditor.options.cdn, "');\n Vditor.flowchartRender(previewElement, '").concat(vditor.options.cdn, "');\n Vditor.graphvizRender(previewElement, '").concat(vditor.options.cdn, "');\n Vditor.chartRender(previewElement, '").concat(vditor.options.cdn, "', '").concat(vditor.options.theme, "');\n Vditor.mindmapRender(previewElement, '").concat(vditor.options.cdn, "', '").concat(vditor.options.theme, "');\n Vditor.abcRender(previewElement, '").concat(vditor.options.cdn, "');\n ").concat(vditor.options.preview.render.media.enable ? 'Vditor.mediaRender(previewElement);' : "", "\n Vditor.speechRender(previewElement);\n</script>\n<script src=\"").concat(vditor.options.cdn, "/dist/js/icons/").concat(vditor.options.icon, ".js\"></script></body></html>");
12850
13002
  download(vditor, html, content.substr(0, 10) + ".html");
12851
13003
  };
12852
13004
 
@@ -14103,6 +14255,10 @@ var undo_Undo = /** @class */ (function () {
14103
14255
  this[vditor.currentMode].lastText = text;
14104
14256
  vditor[vditor.currentMode].element.innerHTML = text;
14105
14257
  if (vditor.currentMode !== "sv") {
14258
+ vditor[vditor.currentMode].element.querySelectorAll(".vditor-".concat(vditor.currentMode, "__preview"))
14259
+ .forEach(function (blockElement) {
14260
+ blockElement.outerHTML = vditor.lute.SpinVditorDOM(blockElement.parentElement.outerHTML);
14261
+ });
14106
14262
  vditor[vditor.currentMode].element.querySelectorAll(".vditor-".concat(vditor.currentMode, "__preview[data-render='2']"))
14107
14263
  .forEach(function (blockElement) {
14108
14264
  processCodeRender(blockElement, vditor);
@@ -14985,6 +15141,10 @@ var WYSIWYG = /** @class */ (function () {
14985
15141
  break;
14986
15142
  }
14987
15143
  }
15144
+ // https://github.com/Vanessa219/vditor/issues/729
15145
+ if (endSpace && /^#{1,6} $/.test(blockElement.textContent)) {
15146
+ endSpace = false;
15147
+ }
14988
15148
  var headingElement = (0,hasClosestByHeadings/* hasClosestByHeadings */.W)(getSelection().getRangeAt(0).startContainer);
14989
15149
  if (headingElement && headingElement.textContent === "") {
14990
15150
  // heading 为空删除 https://github.com/Vanessa219/vditor/issues/150
@@ -15213,6 +15373,8 @@ var src_extends = (undefined && undefined.__extends) || (function () {
15213
15373
 
15214
15374
 
15215
15375
 
15376
+
15377
+
15216
15378
 
15217
15379
 
15218
15380
 
@@ -15364,7 +15526,9 @@ var Vditor = /** @class */ (function (_super) {
15364
15526
  };
15365
15527
  /** 清除缓存 */
15366
15528
  Vditor.prototype.clearCache = function () {
15367
- localStorage.removeItem(this.vditor.options.cache.id);
15529
+ if (this.vditor.options.cache.enable && (0,compatibility/* accessLocalStorage */.pK)()) {
15530
+ localStorage.removeItem(this.vditor.options.cache.id);
15531
+ }
15368
15532
  };
15369
15533
  /** 禁用缓存 */
15370
15534
  Vditor.prototype.disabledCache = function () {
@@ -15413,6 +15577,8 @@ var Vditor = /** @class */ (function (_super) {
15413
15577
  if (render === void 0) { render = true; }
15414
15578
  var range = (0,selection/* getEditorRange */.zh)(this.vditor);
15415
15579
  range.collapse(true);
15580
+ // https://github.com/Vanessa219/vditor/issues/716
15581
+ // https://github.com/Vanessa219/vditor/issues/917
15416
15582
  var tmpElement = document.createElement("template");
15417
15583
  tmpElement.innerHTML = value;
15418
15584
  range.insertNode(tmpElement.content.cloneNode(true));
@@ -15436,6 +15602,21 @@ var Vditor = /** @class */ (function (_super) {
15436
15602
  }
15437
15603
  }
15438
15604
  };
15605
+ /** 在焦点处插入 Markdown */
15606
+ Vditor.prototype.insertMD = function (md) {
15607
+ // https://github.com/Vanessa219/vditor/issues/1640
15608
+ if (this.vditor.currentMode === "ir") {
15609
+ (0,selection/* insertHTML */.oC)(this.vditor.lute.Md2VditorIRDOM(md), this.vditor);
15610
+ }
15611
+ else if (this.vditor.currentMode === "wysiwyg") {
15612
+ (0,selection/* insertHTML */.oC)(this.vditor.lute.Md2VditorDOM(md), this.vditor);
15613
+ }
15614
+ else {
15615
+ processPaste(this.vditor, md);
15616
+ }
15617
+ this.vditor.outline.render(this.vditor);
15618
+ execAfterRender(this.vditor);
15619
+ };
15439
15620
  /** 设置编辑器内容 */
15440
15621
  Vditor.prototype.setValue = function (markdown, clearStack) {
15441
15622
  var _this = this;