@musnows/scriverse 0.3.11 → 0.4.1

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 (564) hide show
  1. package/README.en.md +3 -1
  2. package/README.md +5 -1
  3. package/dist/ai.js +292 -19
  4. package/dist/ai.js.map +1 -1
  5. package/dist/app.js +46 -4
  6. package/dist/app.js.map +1 -1
  7. package/dist/database.js +64 -0
  8. package/dist/database.js.map +1 -1
  9. package/dist/public/app.js +1088 -274
  10. package/dist/public/character-markdown.js +12 -0
  11. package/dist/public/character-version.js +3 -1
  12. package/dist/public/index.html +76 -29
  13. package/dist/public/keyboard-shortcuts.d.ts +9 -0
  14. package/dist/public/keyboard-shortcuts.js +4 -0
  15. package/dist/public/model-config.d.ts +1 -0
  16. package/dist/public/model-config.js +12 -3
  17. package/dist/public/module-layout.d.ts +17 -0
  18. package/dist/public/module-layout.js +28 -0
  19. package/dist/public/page-route.js +1 -1
  20. package/dist/public/relationship-graph.js +62 -2
  21. package/dist/public/styles.css +330 -98
  22. package/dist/public/vendor/vditor/dist/css/content-theme/ant-design.css +210 -0
  23. package/dist/public/vendor/vditor/dist/css/content-theme/dark.css +123 -0
  24. package/dist/public/vendor/vditor/dist/css/content-theme/light.css +101 -0
  25. package/dist/public/vendor/vditor/dist/css/content-theme/wechat.css +94 -0
  26. package/dist/public/vendor/vditor/dist/images/emoji/b3log.png +0 -0
  27. package/dist/public/vendor/vditor/dist/images/emoji/chainbook.png +0 -0
  28. package/dist/public/vendor/vditor/dist/images/emoji/doge.png +0 -0
  29. package/dist/public/vendor/vditor/dist/images/emoji/hacpai.png +0 -0
  30. package/dist/public/vendor/vditor/dist/images/emoji/huaji.gif +0 -0
  31. package/dist/public/vendor/vditor/dist/images/emoji/latke.png +0 -0
  32. package/dist/public/vendor/vditor/dist/images/emoji/liandi.png +0 -0
  33. package/dist/public/vendor/vditor/dist/images/emoji/lute.png +0 -0
  34. package/dist/public/vendor/vditor/dist/images/emoji/octocat.png +0 -0
  35. package/dist/public/vendor/vditor/dist/images/emoji/pipe.png +0 -0
  36. package/dist/public/vendor/vditor/dist/images/emoji/siyuan.png +0 -0
  37. package/dist/public/vendor/vditor/dist/images/emoji/solo.png +0 -0
  38. package/dist/public/vendor/vditor/dist/images/emoji/sym.png +0 -0
  39. package/dist/public/vendor/vditor/dist/images/emoji/trollface.png +0 -0
  40. package/dist/public/vendor/vditor/dist/images/emoji/vditor.png +0 -0
  41. package/dist/public/vendor/vditor/dist/images/emoji/wide.png +0 -0
  42. package/dist/public/vendor/vditor/dist/images/emoji/wulian.png +0 -0
  43. package/dist/public/vendor/vditor/dist/images/img-loading.svg +1 -0
  44. package/dist/public/vendor/vditor/dist/images/logo.png +0 -0
  45. package/dist/public/vendor/vditor/dist/index.css +1823 -0
  46. package/dist/public/vendor/vditor/dist/index.d.ts +82 -0
  47. package/dist/public/vendor/vditor/dist/index.js +15995 -0
  48. package/dist/public/vendor/vditor/dist/index.min.js +1 -0
  49. package/dist/public/vendor/vditor/dist/js/abcjs/abcjs_basic.min.js +3 -0
  50. package/dist/public/vendor/vditor/dist/js/echarts/echarts.min.js +45 -0
  51. package/dist/public/vendor/vditor/dist/js/flowchart.js/flowchart.min.js +8 -0
  52. package/dist/public/vendor/vditor/dist/js/graphviz/full.render.js +90 -0
  53. package/dist/public/vendor/vditor/dist/js/graphviz/viz.js +333 -0
  54. package/dist/public/vendor/vditor/dist/js/highlight.js/LICENSE +29 -0
  55. package/dist/public/vendor/vditor/dist/js/highlight.js/highlight.min.js +3835 -0
  56. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/a11y-dark.min.css +7 -0
  57. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/a11y-light.min.css +7 -0
  58. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/agate.min.css +20 -0
  59. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/an-old-hope.min.css +9 -0
  60. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/androidstudio.min.css +1 -0
  61. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/ant-design.min.css +84 -0
  62. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/arduino-light.min.css +1 -0
  63. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/arta.min.css +1 -0
  64. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/ascetic.min.css +1 -0
  65. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/atom-one-dark-reasonable.min.css +1 -0
  66. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/atom-one-dark.min.css +1 -0
  67. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/atom-one-light.min.css +1 -0
  68. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/3024.min.css +7 -0
  69. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/apathy.min.css +7 -0
  70. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/apprentice.min.css +7 -0
  71. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/ashes.min.css +7 -0
  72. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-cave-light.min.css +7 -0
  73. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-cave.min.css +7 -0
  74. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-dune-light.min.css +7 -0
  75. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-dune.min.css +7 -0
  76. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-estuary-light.min.css +7 -0
  77. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-estuary.min.css +7 -0
  78. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-forest-light.min.css +7 -0
  79. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-forest.min.css +7 -0
  80. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-heath-light.min.css +7 -0
  81. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-heath.min.css +7 -0
  82. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-lakeside-light.min.css +7 -0
  83. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-lakeside.min.css +7 -0
  84. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-plateau-light.min.css +7 -0
  85. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-plateau.min.css +7 -0
  86. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-savanna-light.min.css +7 -0
  87. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-savanna.min.css +7 -0
  88. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-seaside-light.min.css +7 -0
  89. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-seaside.min.css +7 -0
  90. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-sulphurpool-light.min.css +7 -0
  91. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atelier-sulphurpool.min.css +7 -0
  92. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/atlas.min.css +7 -0
  93. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/bespin.min.css +7 -0
  94. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/black-metal-bathory.min.css +7 -0
  95. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/black-metal-burzum.min.css +7 -0
  96. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/black-metal-dark-funeral.min.css +7 -0
  97. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/black-metal-gorgoroth.min.css +7 -0
  98. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/black-metal-immortal.min.css +7 -0
  99. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/black-metal-khold.min.css +7 -0
  100. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/black-metal-marduk.min.css +7 -0
  101. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/black-metal-mayhem.min.css +7 -0
  102. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/black-metal-nile.min.css +7 -0
  103. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/black-metal-venom.min.css +7 -0
  104. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/black-metal.min.css +7 -0
  105. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/brewer.min.css +7 -0
  106. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/bright.min.css +7 -0
  107. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/brogrammer.min.css +7 -0
  108. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/brush-trees-dark.min.css +7 -0
  109. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/brush-trees.min.css +7 -0
  110. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/chalk.min.css +7 -0
  111. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/circus.min.css +7 -0
  112. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/classic-dark.min.css +7 -0
  113. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/classic-light.min.css +7 -0
  114. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/codeschool.min.css +7 -0
  115. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/colors.min.css +7 -0
  116. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/cupcake.min.css +7 -0
  117. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/cupertino.min.css +7 -0
  118. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/danqing.min.css +7 -0
  119. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/darcula.min.css +7 -0
  120. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/dark-violet.min.css +7 -0
  121. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/darkmoss.min.css +7 -0
  122. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/darktooth.min.css +7 -0
  123. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/decaf.min.css +7 -0
  124. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/default-dark.min.css +7 -0
  125. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/default-light.min.css +7 -0
  126. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/dirtysea.min.css +7 -0
  127. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/dracula.min.css +7 -0
  128. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/edge-dark.min.css +7 -0
  129. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/edge-light.min.css +7 -0
  130. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/eighties.min.css +7 -0
  131. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/embers.min.css +7 -0
  132. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/equilibrium-dark.min.css +7 -0
  133. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/equilibrium-gray-dark.min.css +7 -0
  134. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/equilibrium-gray-light.min.css +7 -0
  135. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/equilibrium-light.min.css +7 -0
  136. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/espresso.min.css +7 -0
  137. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/eva-dim.min.css +7 -0
  138. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/eva.min.css +7 -0
  139. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/flat.min.css +7 -0
  140. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/framer.min.css +7 -0
  141. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/fruit-soda.min.css +7 -0
  142. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/gigavolt.min.css +7 -0
  143. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/github.min.css +7 -0
  144. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/google-dark.min.css +7 -0
  145. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/google-light.min.css +7 -0
  146. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/grayscale-dark.min.css +7 -0
  147. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/grayscale-light.min.css +7 -0
  148. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/green-screen.min.css +7 -0
  149. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/gruvbox-dark-hard.min.css +7 -0
  150. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/gruvbox-dark-medium.min.css +7 -0
  151. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/gruvbox-dark-pale.min.css +7 -0
  152. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/gruvbox-dark-soft.min.css +7 -0
  153. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/gruvbox-light-hard.min.css +7 -0
  154. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/gruvbox-light-medium.min.css +7 -0
  155. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/gruvbox-light-soft.min.css +7 -0
  156. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/hardcore.min.css +7 -0
  157. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/harmonic16-dark.min.css +7 -0
  158. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/harmonic16-light.min.css +7 -0
  159. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/heetch-dark.min.css +7 -0
  160. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/heetch-light.min.css +7 -0
  161. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/helios.min.css +7 -0
  162. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/hopscotch.min.css +7 -0
  163. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/horizon-dark.min.css +7 -0
  164. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/horizon-light.min.css +7 -0
  165. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/humanoid-dark.min.css +7 -0
  166. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/humanoid-light.min.css +7 -0
  167. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/ia-dark.min.css +7 -0
  168. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/ia-light.min.css +7 -0
  169. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/icy-dark.min.css +7 -0
  170. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/ir-black.min.css +7 -0
  171. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/isotope.min.css +7 -0
  172. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/kimber.min.css +7 -0
  173. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/london-tube.min.css +7 -0
  174. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/macintosh.min.css +7 -0
  175. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/marrakesh.min.css +7 -0
  176. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/materia.min.css +7 -0
  177. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/material-darker.min.css +7 -0
  178. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/material-lighter.min.css +7 -0
  179. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/material-palenight.min.css +7 -0
  180. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/material-vivid.min.css +7 -0
  181. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/material.min.css +7 -0
  182. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/mellow-purple.min.css +7 -0
  183. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/mexico-light.min.css +7 -0
  184. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/mocha.min.css +7 -0
  185. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/monokai.min.css +7 -0
  186. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/nebula.min.css +7 -0
  187. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/nord.min.css +7 -0
  188. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/nova.min.css +7 -0
  189. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/ocean.min.css +7 -0
  190. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/oceanicnext.min.css +7 -0
  191. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/one-light.min.css +7 -0
  192. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/onedark.min.css +7 -0
  193. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/outrun-dark.min.css +7 -0
  194. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/papercolor-dark.min.css +7 -0
  195. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/papercolor-light.min.css +7 -0
  196. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/paraiso.min.css +7 -0
  197. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/pasque.min.css +7 -0
  198. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/phd.min.css +7 -0
  199. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/pico.min.css +7 -0
  200. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/pop.min.css +7 -0
  201. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/porple.min.css +7 -0
  202. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/qualia.min.css +7 -0
  203. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/railscasts.min.css +7 -0
  204. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/rebecca.min.css +7 -0
  205. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/ros-pine-dawn.min.css +7 -0
  206. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/ros-pine-moon.min.css +7 -0
  207. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/ros-pine.min.css +7 -0
  208. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/sagelight.min.css +7 -0
  209. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/sandcastle.min.css +7 -0
  210. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/seti-ui.min.css +7 -0
  211. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/shapeshifter.min.css +7 -0
  212. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/silk-dark.min.css +7 -0
  213. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/silk-light.min.css +7 -0
  214. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/snazzy.min.css +7 -0
  215. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/solar-flare-light.min.css +7 -0
  216. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/solar-flare.min.css +7 -0
  217. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/solarized-dark.min.css +7 -0
  218. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/solarized-light.min.css +7 -0
  219. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/spacemacs.min.css +7 -0
  220. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/summercamp.min.css +7 -0
  221. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/summerfruit-dark.min.css +7 -0
  222. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/summerfruit-light.min.css +7 -0
  223. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/synth-midnight-terminal-dark.min.css +7 -0
  224. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/synth-midnight-terminal-light.min.css +7 -0
  225. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/tango.min.css +7 -0
  226. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/tender.min.css +7 -0
  227. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/tomorrow-night.min.css +7 -0
  228. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/tomorrow.min.css +7 -0
  229. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/twilight.min.css +7 -0
  230. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/unikitty-dark.min.css +7 -0
  231. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/unikitty-light.min.css +7 -0
  232. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/vulcan.min.css +7 -0
  233. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/windows-10-light.min.css +7 -0
  234. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/windows-10.min.css +7 -0
  235. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/windows-95-light.min.css +7 -0
  236. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/windows-95.min.css +7 -0
  237. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/windows-high-contrast-light.min.css +7 -0
  238. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/windows-high-contrast.min.css +7 -0
  239. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/windows-nt-light.min.css +7 -0
  240. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/windows-nt.min.css +7 -0
  241. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/woodland.min.css +7 -0
  242. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/xcode-dusk.min.css +7 -0
  243. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/base16/zenburn.min.css +7 -0
  244. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/brown-paper.min.css +1 -0
  245. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/brown-papersq.png +0 -0
  246. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/codepen-embed.min.css +1 -0
  247. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/color-brewer.min.css +1 -0
  248. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/dark.min.css +1 -0
  249. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/default.min.css +9 -0
  250. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/devibeans.min.css +7 -0
  251. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/docco.min.css +1 -0
  252. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/far.min.css +1 -0
  253. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/felipec.min.css +7 -0
  254. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/foundation.min.css +1 -0
  255. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/github-dark-dimmed.min.css +9 -0
  256. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/github-dark.min.css +10 -0
  257. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/github.min.css +10 -0
  258. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/gml.min.css +1 -0
  259. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/googlecode.min.css +1 -0
  260. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/gradient-dark.min.css +1 -0
  261. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/gradient-light.min.css +1 -0
  262. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/grayscale.min.css +1 -0
  263. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/hybrid.min.css +1 -0
  264. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/idea.min.css +1 -0
  265. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/intellij-light.min.css +1 -0
  266. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/ir-black.min.css +1 -0
  267. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/isbl-editor-dark.min.css +1 -0
  268. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/isbl-editor-light.min.css +1 -0
  269. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/kimbie-dark.min.css +1 -0
  270. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/kimbie-light.min.css +1 -0
  271. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/lightfair.min.css +1 -0
  272. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/lioshi.min.css +1 -0
  273. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/magula.min.css +1 -0
  274. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/mono-blue.min.css +1 -0
  275. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/monokai-sublime.min.css +1 -0
  276. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/monokai.min.css +1 -0
  277. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/night-owl.min.css +1 -0
  278. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/nnfx-dark.min.css +10 -0
  279. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/nnfx-light.min.css +10 -0
  280. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/nord.min.css +1 -0
  281. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/obsidian.min.css +1 -0
  282. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/panda-syntax-dark.min.css +1 -0
  283. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/panda-syntax-light.min.css +1 -0
  284. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/paraiso-dark.min.css +1 -0
  285. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/paraiso-light.min.css +1 -0
  286. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/pojoaque.jpg +0 -0
  287. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/pojoaque.min.css +1 -0
  288. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/purebasic.min.css +1 -0
  289. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/qtcreator-dark.min.css +1 -0
  290. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/qtcreator-light.min.css +1 -0
  291. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/rainbow.min.css +1 -0
  292. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/routeros.min.css +1 -0
  293. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/school-book.min.css +1 -0
  294. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/shades-of-purple.min.css +1 -0
  295. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/srcery.min.css +1 -0
  296. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/stackoverflow-dark.min.css +13 -0
  297. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/stackoverflow-light.min.css +13 -0
  298. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/sunburst.min.css +1 -0
  299. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/tokyo-night-dark.min.css +8 -0
  300. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/tokyo-night-light.min.css +8 -0
  301. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/tomorrow-night-blue.min.css +1 -0
  302. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/tomorrow-night-bright.min.css +1 -0
  303. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/vs.min.css +1 -0
  304. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/vs2015.min.css +1 -0
  305. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/xcode.min.css +1 -0
  306. package/dist/public/vendor/vditor/dist/js/highlight.js/styles/xt256.min.css +1 -0
  307. package/dist/public/vendor/vditor/dist/js/highlight.js/third-languages.js +135 -0
  308. package/dist/public/vendor/vditor/dist/js/i18n/de_DE.js +86 -0
  309. package/dist/public/vendor/vditor/dist/js/i18n/en_US.js +86 -0
  310. package/dist/public/vendor/vditor/dist/js/i18n/es_ES.js +86 -0
  311. package/dist/public/vendor/vditor/dist/js/i18n/fr_FR.js +86 -0
  312. package/dist/public/vendor/vditor/dist/js/i18n/ja_JP.js +86 -0
  313. package/dist/public/vendor/vditor/dist/js/i18n/ko_KR.js +86 -0
  314. package/dist/public/vendor/vditor/dist/js/i18n/pt_BR.js +86 -0
  315. package/dist/public/vendor/vditor/dist/js/i18n/ru_RU.js +86 -0
  316. package/dist/public/vendor/vditor/dist/js/i18n/sv_SE.js +86 -0
  317. package/dist/public/vendor/vditor/dist/js/i18n/vi_VN.js +86 -0
  318. package/dist/public/vendor/vditor/dist/js/i18n/zh_CN.js +86 -0
  319. package/dist/public/vendor/vditor/dist/js/i18n/zh_TW.js +86 -0
  320. package/dist/public/vendor/vditor/dist/js/icons/ant.js +174 -0
  321. package/dist/public/vendor/vditor/dist/js/icons/material.js +195 -0
  322. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_AMS-Regular.ttf +0 -0
  323. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_AMS-Regular.woff +0 -0
  324. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_AMS-Regular.woff2 +0 -0
  325. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Caligraphic-Bold.ttf +0 -0
  326. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Caligraphic-Bold.woff +0 -0
  327. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
  328. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Caligraphic-Regular.ttf +0 -0
  329. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Caligraphic-Regular.woff +0 -0
  330. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
  331. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Fraktur-Bold.ttf +0 -0
  332. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Fraktur-Bold.woff +0 -0
  333. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
  334. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Fraktur-Regular.ttf +0 -0
  335. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Fraktur-Regular.woff +0 -0
  336. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
  337. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Main-Bold.ttf +0 -0
  338. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Main-Bold.woff +0 -0
  339. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Main-Bold.woff2 +0 -0
  340. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Main-BoldItalic.ttf +0 -0
  341. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Main-BoldItalic.woff +0 -0
  342. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
  343. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Main-Italic.ttf +0 -0
  344. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Main-Italic.woff +0 -0
  345. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Main-Italic.woff2 +0 -0
  346. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Main-Regular.ttf +0 -0
  347. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Main-Regular.woff +0 -0
  348. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Main-Regular.woff2 +0 -0
  349. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Math-BoldItalic.ttf +0 -0
  350. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Math-BoldItalic.woff +0 -0
  351. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
  352. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Math-Italic.ttf +0 -0
  353. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Math-Italic.woff +0 -0
  354. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Math-Italic.woff2 +0 -0
  355. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_SansSerif-Bold.ttf +0 -0
  356. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_SansSerif-Bold.woff +0 -0
  357. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
  358. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_SansSerif-Italic.ttf +0 -0
  359. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_SansSerif-Italic.woff +0 -0
  360. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
  361. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_SansSerif-Regular.ttf +0 -0
  362. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_SansSerif-Regular.woff +0 -0
  363. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
  364. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Script-Regular.ttf +0 -0
  365. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Script-Regular.woff +0 -0
  366. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Script-Regular.woff2 +0 -0
  367. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Size1-Regular.ttf +0 -0
  368. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Size1-Regular.woff +0 -0
  369. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Size1-Regular.woff2 +0 -0
  370. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Size2-Regular.ttf +0 -0
  371. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Size2-Regular.woff +0 -0
  372. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Size2-Regular.woff2 +0 -0
  373. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Size3-Regular.ttf +0 -0
  374. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Size3-Regular.woff +0 -0
  375. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Size3-Regular.woff2 +0 -0
  376. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Size4-Regular.ttf +0 -0
  377. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Size4-Regular.woff +0 -0
  378. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Size4-Regular.woff2 +0 -0
  379. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Typewriter-Regular.ttf +0 -0
  380. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Typewriter-Regular.woff +0 -0
  381. package/dist/public/vendor/vditor/dist/js/katex/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
  382. package/dist/public/vendor/vditor/dist/js/katex/katex.min.css +1 -0
  383. package/dist/public/vendor/vditor/dist/js/katex/katex.min.js +1 -0
  384. package/dist/public/vendor/vditor/dist/js/katex/mhchem.min.js +1 -0
  385. package/dist/public/vendor/vditor/dist/js/lute/lute.min.js +72 -0
  386. package/dist/public/vendor/vditor/dist/js/markmap/katex.min.css +1 -0
  387. package/dist/public/vendor/vditor/dist/js/markmap/markmap.min.js +8251 -0
  388. package/dist/public/vendor/vditor/dist/js/markmap/prism.css +140 -0
  389. package/dist/public/vendor/vditor/dist/js/mathjax/LICENSE +202 -0
  390. package/dist/public/vendor/vditor/dist/js/mathjax/a11y/assistive-mml.js +1 -0
  391. package/dist/public/vendor/vditor/dist/js/mathjax/a11y/complexity.js +1 -0
  392. package/dist/public/vendor/vditor/dist/js/mathjax/a11y/explorer.js +1 -0
  393. package/dist/public/vendor/vditor/dist/js/mathjax/a11y/semantic-enrich.js +1 -0
  394. package/dist/public/vendor/vditor/dist/js/mathjax/input/asciimath.js +1 -0
  395. package/dist/public/vendor/vditor/dist/js/mathjax/input/mml/entities.js +1 -0
  396. package/dist/public/vendor/vditor/dist/js/mathjax/input/mml.js +1 -0
  397. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/action.js +1 -0
  398. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/all-packages.js +1 -0
  399. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/ams.js +1 -0
  400. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/amscd.js +1 -0
  401. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/autoload.js +1 -0
  402. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/bbox.js +1 -0
  403. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/boldsymbol.js +1 -0
  404. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/braket.js +1 -0
  405. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/bussproofs.js +1 -0
  406. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/cancel.js +1 -0
  407. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/color.js +1 -0
  408. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/colorV2.js +1 -0
  409. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/configMacros.js +1 -0
  410. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/enclose.js +1 -0
  411. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/extpfeil.js +1 -0
  412. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/html.js +1 -0
  413. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/mhchem.js +1 -0
  414. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/newcommand.js +1 -0
  415. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/noerrors.js +1 -0
  416. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/noundefined.js +1 -0
  417. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/physics.js +1 -0
  418. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/require.js +1 -0
  419. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/tagFormat.js +1 -0
  420. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/textmacros.js +1 -0
  421. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/unicode.js +1 -0
  422. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex/extensions/verb.js +1 -0
  423. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex-base.js +1 -0
  424. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex-full.js +1 -0
  425. package/dist/public/vendor/vditor/dist/js/mathjax/input/tex.js +1 -0
  426. package/dist/public/vendor/vditor/dist/js/mathjax/sre/mathmaps/de.js +104 -0
  427. package/dist/public/vendor/vditor/dist/js/mathjax/sre/mathmaps/en.js +110 -0
  428. package/dist/public/vendor/vditor/dist/js/mathjax/sre/mathmaps/es.js +104 -0
  429. package/dist/public/vendor/vditor/dist/js/mathjax/sre/mathmaps/fr.js +104 -0
  430. package/dist/public/vendor/vditor/dist/js/mathjax/sre/mathmaps/mathmaps_ie.js +518 -0
  431. package/dist/public/vendor/vditor/dist/js/mathjax/sre/mathmaps/nemeth.js +104 -0
  432. package/dist/public/vendor/vditor/dist/js/mathjax/sre/sre-node.js +11 -0
  433. package/dist/public/vendor/vditor/dist/js/mathjax/sre/sre_browser.js +1633 -0
  434. package/dist/public/vendor/vditor/dist/js/mathjax/tex-svg-full.js +1 -0
  435. package/dist/public/vendor/vditor/dist/js/mermaid/mermaid.min.js +2607 -0
  436. package/dist/public/vendor/vditor/dist/js/plantuml/plantuml-encoder.min.js +1 -0
  437. package/dist/public/vendor/vditor/dist/js/smiles-drawer/smiles-drawer.min.js +71 -0
  438. package/dist/public/vendor/vditor/dist/method.d.ts +51 -0
  439. package/dist/public/vendor/vditor/dist/method.js +2673 -0
  440. package/dist/public/vendor/vditor/dist/method.min.js +1 -0
  441. package/dist/public/vendor/vditor/dist/ts/constants.d.ts +45 -0
  442. package/dist/public/vendor/vditor/dist/ts/devtools/index.d.ts +7 -0
  443. package/dist/public/vendor/vditor/dist/ts/export/index.d.ts +4 -0
  444. package/dist/public/vendor/vditor/dist/ts/hint/index.d.ts +14 -0
  445. package/dist/public/vendor/vditor/dist/ts/ir/expandMarker.d.ts +1 -0
  446. package/dist/public/vendor/vditor/dist/ts/ir/highlightToolbarIR.d.ts +1 -0
  447. package/dist/public/vendor/vditor/dist/ts/ir/index.d.ts +13 -0
  448. package/dist/public/vendor/vditor/dist/ts/ir/input.d.ts +1 -0
  449. package/dist/public/vendor/vditor/dist/ts/ir/process.d.ts +8 -0
  450. package/dist/public/vendor/vditor/dist/ts/ir/processKeydown.d.ts +1 -0
  451. package/dist/public/vendor/vditor/dist/ts/markdown/SMILESRender.d.ts +1 -0
  452. package/dist/public/vendor/vditor/dist/ts/markdown/abcRender.d.ts +1 -0
  453. package/dist/public/vendor/vditor/dist/ts/markdown/adapterRender.d.ts +41 -0
  454. package/dist/public/vendor/vditor/dist/ts/markdown/anchorRender.d.ts +1 -0
  455. package/dist/public/vendor/vditor/dist/ts/markdown/chartRender.d.ts +1 -0
  456. package/dist/public/vendor/vditor/dist/ts/markdown/codeRender.d.ts +1 -0
  457. package/dist/public/vendor/vditor/dist/ts/markdown/flowchartRender.d.ts +1 -0
  458. package/dist/public/vendor/vditor/dist/ts/markdown/getHTML.d.ts +1 -0
  459. package/dist/public/vendor/vditor/dist/ts/markdown/getMarkdown.d.ts +1 -0
  460. package/dist/public/vendor/vditor/dist/ts/markdown/graphvizRender.d.ts +1 -0
  461. package/dist/public/vendor/vditor/dist/ts/markdown/highlightRender.d.ts +1 -0
  462. package/dist/public/vendor/vditor/dist/ts/markdown/lazyLoadImageRender.d.ts +6 -0
  463. package/dist/public/vendor/vditor/dist/ts/markdown/markmapRender.d.ts +1 -0
  464. package/dist/public/vendor/vditor/dist/ts/markdown/mathRender.d.ts +9 -0
  465. package/dist/public/vendor/vditor/dist/ts/markdown/mediaRender.d.ts +1 -0
  466. package/dist/public/vendor/vditor/dist/ts/markdown/mermaidRender.d.ts +1 -0
  467. package/dist/public/vendor/vditor/dist/ts/markdown/mindmapRender.d.ts +1 -0
  468. package/dist/public/vendor/vditor/dist/ts/markdown/outlineRender.d.ts +1 -0
  469. package/dist/public/vendor/vditor/dist/ts/markdown/plantumlRender.d.ts +1 -0
  470. package/dist/public/vendor/vditor/dist/ts/markdown/previewRender.d.ts +2 -0
  471. package/dist/public/vendor/vditor/dist/ts/markdown/setLute.d.ts +1 -0
  472. package/dist/public/vendor/vditor/dist/ts/markdown/speechRender.d.ts +6 -0
  473. package/dist/public/vendor/vditor/dist/ts/outline/index.d.ts +7 -0
  474. package/dist/public/vendor/vditor/dist/ts/preview/image.d.ts +1 -0
  475. package/dist/public/vendor/vditor/dist/ts/preview/index.d.ts +10 -0
  476. package/dist/public/vendor/vditor/dist/ts/resize/index.d.ts +6 -0
  477. package/dist/public/vendor/vditor/dist/ts/sv/combineFootnote.d.ts +6 -0
  478. package/dist/public/vendor/vditor/dist/ts/sv/index.d.ts +13 -0
  479. package/dist/public/vendor/vditor/dist/ts/sv/inputEvent.d.ts +1 -0
  480. package/dist/public/vendor/vditor/dist/ts/sv/process.d.ts +11 -0
  481. package/dist/public/vendor/vditor/dist/ts/sv/processKeydown.d.ts +1 -0
  482. package/dist/public/vendor/vditor/dist/ts/tip/index.d.ts +6 -0
  483. package/dist/public/vendor/vditor/dist/ts/toolbar/Both.d.ts +5 -0
  484. package/dist/public/vendor/vditor/dist/ts/toolbar/Br.d.ts +4 -0
  485. package/dist/public/vendor/vditor/dist/ts/toolbar/CodeTheme.d.ts +6 -0
  486. package/dist/public/vendor/vditor/dist/ts/toolbar/ContentTheme.d.ts +6 -0
  487. package/dist/public/vendor/vditor/dist/ts/toolbar/Counter.d.ts +6 -0
  488. package/dist/public/vendor/vditor/dist/ts/toolbar/Custom.d.ts +5 -0
  489. package/dist/public/vendor/vditor/dist/ts/toolbar/Devtools.d.ts +5 -0
  490. package/dist/public/vendor/vditor/dist/ts/toolbar/Divider.d.ts +4 -0
  491. package/dist/public/vendor/vditor/dist/ts/toolbar/EditMode.d.ts +8 -0
  492. package/dist/public/vendor/vditor/dist/ts/toolbar/Emoji.d.ts +7 -0
  493. package/dist/public/vendor/vditor/dist/ts/toolbar/Export.d.ts +6 -0
  494. package/dist/public/vendor/vditor/dist/ts/toolbar/Fullscreen.d.ts +6 -0
  495. package/dist/public/vendor/vditor/dist/ts/toolbar/Headings.d.ts +7 -0
  496. package/dist/public/vendor/vditor/dist/ts/toolbar/Help.d.ts +5 -0
  497. package/dist/public/vendor/vditor/dist/ts/toolbar/Indent.d.ts +5 -0
  498. package/dist/public/vendor/vditor/dist/ts/toolbar/Info.d.ts +5 -0
  499. package/dist/public/vendor/vditor/dist/ts/toolbar/InsertAfter.d.ts +5 -0
  500. package/dist/public/vendor/vditor/dist/ts/toolbar/InsertBefore.d.ts +5 -0
  501. package/dist/public/vendor/vditor/dist/ts/toolbar/MenuItem.d.ts +5 -0
  502. package/dist/public/vendor/vditor/dist/ts/toolbar/Outdent.d.ts +5 -0
  503. package/dist/public/vendor/vditor/dist/ts/toolbar/Outline.d.ts +5 -0
  504. package/dist/public/vendor/vditor/dist/ts/toolbar/Preview.d.ts +6 -0
  505. package/dist/public/vendor/vditor/dist/ts/toolbar/Record.d.ts +6 -0
  506. package/dist/public/vendor/vditor/dist/ts/toolbar/Redo.d.ts +5 -0
  507. package/dist/public/vendor/vditor/dist/ts/toolbar/Undo.d.ts +5 -0
  508. package/dist/public/vendor/vditor/dist/ts/toolbar/Upload.d.ts +6 -0
  509. package/dist/public/vendor/vditor/dist/ts/toolbar/index.d.ts +10 -0
  510. package/dist/public/vendor/vditor/dist/ts/toolbar/setToolbar.d.ts +20 -0
  511. package/dist/public/vendor/vditor/dist/ts/ui/initUI.d.ts +4 -0
  512. package/dist/public/vendor/vditor/dist/ts/ui/setCodeTheme.d.ts +1 -0
  513. package/dist/public/vendor/vditor/dist/ts/ui/setContentTheme.d.ts +1 -0
  514. package/dist/public/vendor/vditor/dist/ts/ui/setPreviewMode.d.ts +1 -0
  515. package/dist/public/vendor/vditor/dist/ts/ui/setTheme.d.ts +1 -0
  516. package/dist/public/vendor/vditor/dist/ts/undo/index.d.ts +19 -0
  517. package/dist/public/vendor/vditor/dist/ts/upload/getElement.d.ts +1 -0
  518. package/dist/public/vendor/vditor/dist/ts/upload/index.d.ts +8 -0
  519. package/dist/public/vendor/vditor/dist/ts/upload/setHeaders.d.ts +1 -0
  520. package/dist/public/vendor/vditor/dist/ts/util/Options.d.ts +8 -0
  521. package/dist/public/vendor/vditor/dist/ts/util/RecordMedia.d.ts +18 -0
  522. package/dist/public/vendor/vditor/dist/ts/util/addScript.d.ts +2 -0
  523. package/dist/public/vendor/vditor/dist/ts/util/addStyle.d.ts +1 -0
  524. package/dist/public/vendor/vditor/dist/ts/util/code160to32.d.ts +1 -0
  525. package/dist/public/vendor/vditor/dist/ts/util/compatibility.d.ts +7 -0
  526. package/dist/public/vendor/vditor/dist/ts/util/editorCommonEvent.d.ts +9 -0
  527. package/dist/public/vendor/vditor/dist/ts/util/fixBrowserBehavior.d.ts +39 -0
  528. package/dist/public/vendor/vditor/dist/ts/util/function.d.ts +3 -0
  529. package/dist/public/vendor/vditor/dist/ts/util/getSelectText.d.ts +1 -0
  530. package/dist/public/vendor/vditor/dist/ts/util/hasClosest.d.ts +9 -0
  531. package/dist/public/vendor/vditor/dist/ts/util/hasClosestByHeadings.d.ts +2 -0
  532. package/dist/public/vendor/vditor/dist/ts/util/highlightToolbar.d.ts +1 -0
  533. package/dist/public/vendor/vditor/dist/ts/util/hotKey.d.ts +1 -0
  534. package/dist/public/vendor/vditor/dist/ts/util/log.d.ts +1 -0
  535. package/dist/public/vendor/vditor/dist/ts/util/merge.d.ts +1 -0
  536. package/dist/public/vendor/vditor/dist/ts/util/processCode.d.ts +2 -0
  537. package/dist/public/vendor/vditor/dist/ts/util/selection.d.ts +14 -0
  538. package/dist/public/vendor/vditor/dist/ts/util/toc.d.ts +5 -0
  539. package/dist/public/vendor/vditor/dist/ts/wysiwyg/afterRenderEvent.d.ts +5 -0
  540. package/dist/public/vendor/vditor/dist/ts/wysiwyg/highlightToolbarWYSIWYG.d.ts +4 -0
  541. package/dist/public/vendor/vditor/dist/ts/wysiwyg/index.d.ts +22 -0
  542. package/dist/public/vendor/vditor/dist/ts/wysiwyg/inlineTag.d.ts +10 -0
  543. package/dist/public/vendor/vditor/dist/ts/wysiwyg/input.d.ts +1 -0
  544. package/dist/public/vendor/vditor/dist/ts/wysiwyg/processKeydown.d.ts +2 -0
  545. package/dist/public/vendor/vditor/dist/ts/wysiwyg/renderDomByMd.d.ts +5 -0
  546. package/dist/public/vendor/vditor/dist/ts/wysiwyg/setHeading.d.ts +2 -0
  547. package/dist/public/vendor/vditor/dist/ts/wysiwyg/showCode.d.ts +1 -0
  548. package/dist/public/vendor/vditor/dist/ts/wysiwyg/toolbarEvent.d.ts +1 -0
  549. package/dist/public/vendor/vditor/dist/types/index.d.ts +921 -0
  550. package/dist/public/work-permissions.d.ts +5 -2
  551. package/dist/public/work-permissions.js +40 -13
  552. package/dist/security.js +11 -0
  553. package/dist/security.js.map +1 -1
  554. package/dist/server-runtime.js +5 -2
  555. package/dist/server-runtime.js.map +1 -1
  556. package/dist/store.js +192 -34
  557. package/dist/store.js.map +1 -1
  558. package/dist/user-auth.js +36 -7
  559. package/dist/user-auth.js.map +1 -1
  560. package/dist/version.js +1 -1
  561. package/dist/version.js.map +1 -1
  562. package/dist/work-permissions.js +29 -6
  563. package/dist/work-permissions.js.map +1 -1
  564. package/package.json +2 -1
@@ -0,0 +1,12 @@
1
+ const supportedImageMimeType = /^image\/(?:png|jpe?g|webp|gif)$/u;
2
+
3
+ export function clipboardImageFiles(clipboardData) {
4
+ const items = Array.from(clipboardData?.items ?? []);
5
+ const itemFiles = items
6
+ .filter((item) => item.kind === "file" && supportedImageMimeType.test(String(item.type ?? "")))
7
+ .map((item) => item.getAsFile?.())
8
+ .filter(Boolean);
9
+ if (itemFiles.length > 0) return itemFiles;
10
+ return Array.from(clipboardData?.files ?? [])
11
+ .filter((file) => supportedImageMimeType.test(String(file.type ?? "")));
12
+ }
@@ -1,5 +1,6 @@
1
1
  const fieldLabels = Object.freeze({
2
2
  name: "标准名",
3
+ code: "编号",
3
4
  aliases: "别名",
4
5
  raceId: "种族",
5
6
  species: "种族",
@@ -15,7 +16,8 @@ const fieldLabels = Object.freeze({
15
16
  export function describeCharacterVersionChanges(snapshot, previousSnapshot) {
16
17
  if (!previousSnapshot) return ["建立人物档案"];
17
18
  return [...new Set(Object.entries(fieldLabels).filter(([key]) => (
18
- JSON.stringify(snapshot?.[key] ?? null) !== JSON.stringify(previousSnapshot?.[key] ?? null)
19
+ JSON.stringify(key === "code" ? String(snapshot?.[key] ?? "") : (snapshot?.[key] ?? null))
20
+ !== JSON.stringify(key === "code" ? String(previousSnapshot?.[key] ?? "") : (previousSnapshot?.[key] ?? null))
19
21
  )).map(([, label]) => label))];
20
22
  }
21
23
 
@@ -9,7 +9,8 @@
9
9
  <script src="/theme-init.js?v=20260720-route-skeleton"></script>
10
10
  <link rel="icon" href="/icon.svg?v=20260712" type="image/svg+xml">
11
11
  <link rel="manifest" href="/site.webmanifest">
12
- <link rel="stylesheet" href="/styles.css?v=20260722-prose-replacement-permission">
12
+ <link rel="stylesheet" href="/vendor/vditor/dist/index.css?v=3.11.2">
13
+ <link rel="stylesheet" href="/styles.css?v=20260724-whitespace-access">
13
14
  </head>
14
15
  <body class="auth-pending">
15
16
  <section id="auth-view" class="auth-view hidden" aria-labelledby="auth-title">
@@ -74,7 +75,7 @@
74
75
  <button id="account-settings-button" type="button" role="menuitem">账户设置</button>
75
76
  <button id="logout-button" type="button" role="menuitem">退出登录</button>
76
77
  </div>
77
- <button id="top-search-button" class="topbar-icon-button" type="button" aria-label="全文检索" title="全文检索" disabled>
78
+ <button id="top-search-button" class="topbar-icon-button" type="button" aria-label="全文检索" title="全文检索(Command/Ctrl+F)" disabled>
78
79
  <svg class="topbar-icon" viewBox="0 0 24 24" aria-hidden="true"><circle cx="11" cy="11" r="6.5"/><path d="m16.2 16.2 4.3 4.3"/></svg>
79
80
  </button>
80
81
  <button id="theme-toggle" class="theme-toggle" type="button" aria-label="切换到黑夜模式" title="切换到黑夜模式" aria-pressed="false">
@@ -99,9 +100,6 @@
99
100
  </label>
100
101
  <button id="left-panel-toggle" class="panel-collapse-button" type="button" aria-label="收起作品侧栏" aria-expanded="true">‹</button>
101
102
  </div>
102
- <button id="import-history-button" class="secondary-button import-history-button" type="button" aria-controls="import-history-dialog" aria-haspopup="dialog">导入历史与恢复</button>
103
- <button id="new-volume-button" class="secondary-button" type="button">新建分卷</button>
104
- <button id="new-chapter-button" class="secondary-button" type="button">新建章节</button>
105
103
  </div>
106
104
  <nav id="module-nav" class="module-nav" aria-label="作品模块">
107
105
  <button type="button" data-module="editor" class="active"><svg class="nav-icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"/><path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"/></svg>正文</button>
@@ -120,7 +118,10 @@
120
118
  </nav>
121
119
  <div class="panel-heading">
122
120
  <span>作品目录</span>
123
- <span id="chapter-count">0 章</span>
121
+ <div class="panel-heading-actions">
122
+ <span id="chapter-count">0 章</span>
123
+ <button id="new-volume-button" class="add-button" type="button" aria-label="新建分卷" title="新建分卷">+</button>
124
+ </div>
124
125
  </div>
125
126
  <div id="novel-tree" class="novel-tree empty-copy">创建或选择作品后开始写作</div>
126
127
  </aside>
@@ -179,7 +180,6 @@
179
180
  <button id="insight-button" class="ghost-button" type="button">章节概览</button>
180
181
  <button id="versions-button" class="ghost-button" type="button">版本</button>
181
182
  <button id="tidy-blank-lines-button" class="ghost-button" type="button">整理空行</button>
182
- <button id="toggle-whitespace-button" class="ghost-button" type="button" aria-pressed="true" title="用点标记半角空格,用方框标记全角空格,用箭头标记 Tab">隐藏空白符</button>
183
183
  <button id="save-button" class="primary-button" type="button">保存正文</button>
184
184
  </div>
185
185
  </div>
@@ -201,7 +201,9 @@
201
201
  <h1 id="module-title">模块</h1>
202
202
  <p id="module-description"></p>
203
203
  </div>
204
- <button id="module-create-button" class="primary-button" type="button">新建</button>
204
+ <div id="module-header-actions" class="module-header-actions">
205
+ <button id="module-create-button" class="primary-button" type="button">新建</button>
206
+ </div>
205
207
  </div>
206
208
  <div id="module-content" class="module-content"></div>
207
209
  </section>
@@ -320,48 +322,58 @@
320
322
  <dialog id="import-mode-dialog" class="dialog import-mode-dialog" aria-labelledby="import-mode-dialog-title" aria-describedby="import-mode-dialog-description" data-testid="import-mode-dialog">
321
323
  <form method="dialog">
322
324
  <div class="dialog-header">
323
- <div><span class="eyebrow">已有项目</span><h2 id="import-mode-dialog-title">选择正文导入方式</h2></div>
325
+ <div><span class="eyebrow">已有项目</span><h2 id="import-mode-dialog-title" tabindex="-1">选择正文导入方式</h2></div>
324
326
  <button class="dialog-close" value="cancel" aria-label="取消导入" type="submit">×</button>
325
327
  </div>
326
328
  <div class="import-mode-body">
327
329
  <p id="import-mode-dialog-description">即将把所选文件导入当前作品。请选择追加还是覆盖正文。</p>
328
330
  <p id="import-mode-file-summary" class="import-mode-file-summary"></p>
329
331
  <p id="import-mode-unsaved-warning" class="import-mode-unsaved-warning hidden" role="alert">当前章节有未保存修改,继续导入会丢失这些本地修改。</p>
330
- <div class="import-mode-options" aria-label="导入方式说明">
331
- <section><strong>追加正文</strong><span>保留现有卷章,把新文件解析出的卷章添加到目录末尾。</span></section>
332
- <section><strong>覆盖正文</strong><span>删除现有正文目录后写入新文件;导入前会保留可恢复的版本快照。</span><small id="import-mode-overwrite-permission" class="import-mode-permission hidden">覆盖会影响章节关联资料,需要所有受影响模块均为可编辑。</small></section>
332
+ <div class="import-mode-options" role="radiogroup" aria-label="正文导入方式">
333
+ <label class="import-mode-option" data-testid="import-mode-append-option">
334
+ <input id="import-mode-append" type="radio" name="importMode" value="append" aria-describedby="import-mode-append-description">
335
+ <span class="import-mode-option-card"><strong>追加正文</strong><span id="import-mode-append-description">保留现有卷章,把新文件解析出的卷章添加到目录末尾。</span></span>
336
+ </label>
337
+ <label class="import-mode-option" data-testid="import-mode-overwrite-option">
338
+ <input id="import-mode-overwrite" type="radio" name="importMode" value="overwrite" aria-describedby="import-mode-overwrite-description import-mode-overwrite-permission">
339
+ <span class="import-mode-option-card"><strong>覆盖正文</strong><span id="import-mode-overwrite-description">删除现有正文目录后写入新文件;导入前会保留可恢复的版本快照。</span><small id="import-mode-overwrite-permission" class="import-mode-permission hidden">覆盖会影响章节关联资料,需要所有受影响模块均为可编辑。</small></span>
340
+ </label>
333
341
  </div>
334
342
  </div>
335
343
  <div class="dialog-actions">
336
344
  <button class="ghost-button" value="cancel" type="submit">取消</button>
337
- <button id="import-mode-append" class="ghost-button" value="append" type="submit">追加正文</button>
338
- <button id="import-mode-overwrite" class="primary-button" value="overwrite" type="submit">覆盖正文</button>
345
+ <button id="import-mode-confirm" class="primary-button" value="confirm" type="submit" disabled>确认</button>
339
346
  </div>
340
347
  </form>
341
348
  </dialog>
342
349
 
343
350
  <section id="entity-editor-view" class="entity-editor-view hidden" aria-label="全屏资料编辑">
344
- <form id="setting-editor-form" class="entity-editor-page hidden" aria-labelledby="setting-editor-title">
345
- <header class="entity-editor-header">
351
+ <form id="setting-editor-form" class="entity-editor-page hidden" aria-label="设定编辑器">
352
+ <header class="entity-editor-header setting-editor-header">
346
353
  <button id="setting-editor-back" class="entity-editor-back" type="button">返回设定库</button>
347
354
  <div class="entity-editor-heading">
348
355
  <span id="setting-editor-eyebrow" class="eyebrow">作者事实</span>
349
- <h1 id="setting-editor-title">新建设定</h1>
356
+ <input id="setting-editor-name" class="setting-editor-title-input" name="title" maxlength="200" placeholder="新建设定" aria-label="设定标题">
357
+ <div class="setting-editor-header-fields">
358
+ <label>分类<select id="setting-editor-category" name="category">
359
+ <option value="世界规则">世界规则</option><option value="历史与年代">历史与年代</option><option value="地点与地图">地点与地图</option><option value="组织与阵营">组织与阵营</option><option value="物种与族群">物种与族群</option><option value="科技与物品">科技与物品</option><option value="术语与称谓">术语与称谓</option><option value="创作约束">创作约束</option>
360
+ </select></label>
361
+ <label class="setting-editor-lock"><input id="setting-editor-locked" name="locked" type="checkbox"><span><b>锁定为 AI 硬约束</b><small>锁定后,AI 续写与校对不能擅自覆盖这条设定。</small></span></label>
362
+ <label id="setting-change-note-field" class="setting-editor-change-note">版本说明<input id="setting-change-note" name="changeNote" maxlength="500" placeholder="可选,例如:补充纪元历法限制"></label>
363
+ </div>
350
364
  </div>
351
365
  <button id="setting-editor-submit" class="primary-button" type="submit">保存设定</button>
352
366
  </header>
353
367
  <div class="setting-editor-workspace">
354
- <aside class="setting-editor-sidebar" aria-label="设定元数据">
355
- <label>标题<input id="setting-editor-name" name="title" maxlength="200" required></label>
356
- <label>分类<select id="setting-editor-category" name="category">
357
- <option value="世界规则">世界规则</option><option value="历史与年代">历史与年代</option><option value="地点与地图">地点与地图</option><option value="组织与阵营">组织与阵营</option><option value="物种与族群">物种与族群</option><option value="科技与物品">科技与物品</option><option value="术语与称谓">术语与称谓</option><option value="创作约束">创作约束</option>
358
- </select></label>
359
- <label class="setting-editor-lock"><input id="setting-editor-locked" name="locked" type="checkbox"><span><b>锁定为 AI 硬约束</b><small>锁定后,AI 续写与校对不能擅自覆盖这条设定。</small></span></label>
360
- <label id="setting-change-note-field">版本说明<input id="setting-change-note" name="changeNote" maxlength="500" placeholder="可选,例如:补充纪元历法限制"></label>
361
- </aside>
368
+ <section id="setting-editor-management" class="entity-editor-management hidden" aria-label="设定档案操作">
369
+ <div><strong>档案操作</strong><small>版本历史和高风险操作集中在编辑面板内。</small></div>
370
+ <div class="entity-editor-management-actions"><button id="setting-editor-confirm" class="ghost-button hidden" type="button">确认候选</button><button id="setting-editor-deprecate" class="ghost-button hidden" type="button">弃用</button><button id="setting-editor-history" class="ghost-button" type="button">版本历史</button><button id="setting-editor-delete" class="danger-button" type="button">删除设定</button></div>
371
+ </section>
362
372
  <main class="setting-editor-content">
363
- <label for="setting-editor-body"><span>设定正文</span><small>适合维护长篇世界观、规则、历史、地点与创作约束。</small></label>
364
- <textarea id="setting-editor-body" name="content" maxlength="200000" spellcheck="true" placeholder="在这里完整记录设定内容" required></textarea>
373
+ <div class="setting-markdown-field" data-vditor-editor-field>
374
+ <div id="setting-editor-markdown" class="vditor-editor-host" data-vditor-editor aria-label="Markdown 编辑器"></div>
375
+ <textarea id="setting-editor-body" class="hidden" name="content" data-vditor-value maxlength="200000" aria-label="Markdown 原文"></textarea>
376
+ </div>
365
377
  </main>
366
378
  </div>
367
379
  </form>
@@ -375,6 +387,8 @@
375
387
  </div>
376
388
  <div class="character-editor-header-actions">
377
389
  <button id="character-history-button" class="ghost-button" type="button" aria-controls="character-history-panel" aria-expanded="false">版本历史</button>
390
+ <button id="character-merge-button" class="ghost-button hidden" type="button">合并角色</button>
391
+ <button id="character-delete-button" class="danger-button hidden" type="button">删除角色</button>
378
392
  </div>
379
393
  </header>
380
394
  <div class="character-editor-workspace">
@@ -397,9 +411,36 @@
397
411
  </footer>
398
412
  </form>
399
413
 
414
+ <form id="knowledge-editor-form" class="entity-editor-page hidden" aria-labelledby="knowledge-editor-title">
415
+ <header class="character-editor-header knowledge-editor-header">
416
+ <button id="knowledge-editor-close" class="entity-editor-back" type="button">返回列表</button>
417
+ <div>
418
+ <span id="knowledge-editor-eyebrow" class="eyebrow">世界档案</span>
419
+ <div class="character-editor-title-row"><h1 id="knowledge-editor-title">新建档案</h1><span id="knowledge-editor-version" class="character-version-badge">新档案</span></div>
420
+ </div>
421
+ <div class="character-editor-header-actions">
422
+ <span id="knowledge-editor-header-note" class="knowledge-editor-header-note">独立资料页</span>
423
+ <button id="knowledge-editor-history" class="ghost-button hidden" type="button">版本历史</button>
424
+ <button id="knowledge-editor-merge" class="ghost-button hidden" type="button">合并档案</button>
425
+ <button id="knowledge-editor-delete" class="danger-button hidden" type="button">删除档案</button>
426
+ </div>
427
+ </header>
428
+ <div class="character-editor-workspace knowledge-editor-workspace">
429
+ <nav id="knowledge-editor-nav" class="character-editor-nav" role="tablist" aria-label="世界档案编辑分区"></nav>
430
+ <main id="knowledge-editor-fields" class="character-editor-fields"></main>
431
+ </div>
432
+ <footer class="character-editor-actions knowledge-editor-actions">
433
+ <p id="knowledge-editor-footer-note">保存后返回当前列表。</p>
434
+ <div><button id="knowledge-editor-cancel" class="ghost-button" type="button">返回列表</button><button id="knowledge-editor-submit" class="primary-button" type="submit">保存档案</button></div>
435
+ </footer>
436
+ </form>
437
+
400
438
  <section id="character-section-editor-view" class="entity-editor-page hidden" aria-labelledby="character-section-editor-title">
401
439
  <div id="character-section-editor-host" class="character-section-editor-host"></div>
402
440
  </section>
441
+ <section id="knowledge-section-editor-view" class="entity-editor-page hidden" aria-labelledby="knowledge-section-editor-title">
442
+ <div id="knowledge-section-editor-host" class="character-section-editor-host"></div>
443
+ </section>
403
444
  </section>
404
445
 
405
446
  <dialog id="search-dialog" class="dialog wide-dialog" aria-labelledby="search-dialog-title">
@@ -459,6 +500,10 @@
459
500
  <option value="relaxed">宽松</option>
460
501
  </select>
461
502
  </label>
503
+ <section class="work-access-field appearance-whitespace-field" aria-labelledby="appearance-whitespace-title">
504
+ <div><strong id="appearance-whitespace-title">正文空白符</strong><small>即时显示或隐藏空格、全角空格和 Tab 的可视标记。</small></div>
505
+ <button id="toggle-whitespace-appearance" class="ghost-button" data-toggle-whitespace type="button" aria-pressed="true">隐藏空白符</button>
506
+ </section>
462
507
  <div id="font-preview" class="font-preview" aria-live="polite">
463
508
  <strong>字体预览 Typography 0123</strong>
464
509
  <span>中文默认使用黑体,English letters always use monospace.</span>
@@ -524,7 +569,7 @@
524
569
  </section>
525
570
  <section class="account-settings-section" aria-labelledby="password-settings-title">
526
571
  <header class="account-settings-section-header"><h3 id="password-settings-title">修改密码</h3><p>新密码至少需要 10 个字符。</p></header>
527
- <form id="password-form" class="account-settings-form password-settings-form"><label>当前密码<input name="currentPassword" type="password" autocomplete="current-password" maxlength="200" required></label><label>新密码<input name="newPassword" type="password" autocomplete="new-password" minlength="10" maxlength="200" required></label><button class="primary-button" type="submit">更新密码</button></form>
572
+ <form id="password-form" class="account-settings-form password-settings-form"><label>当前密码<input name="currentPassword" type="password" autocomplete="current-password" maxlength="200" required></label><label>新密码<input name="newPassword" type="password" autocomplete="new-password" minlength="10" maxlength="200" required></label><label>确认新密码<input name="passwordConfirmation" type="password" autocomplete="new-password" minlength="10" maxlength="200" required></label><button class="primary-button" type="submit">更新密码</button></form>
528
573
  </section>
529
574
  <section class="account-settings-section" aria-labelledby="api-key-settings-title">
530
575
  <header class="account-settings-section-header"><h3 id="api-key-settings-title">CLI API Key</h3><p>用于 CLI 登录。服务端只保存摘要,重置后旧 Key 会立即失效,新 Key 仅显示一次。</p></header>
@@ -623,6 +668,8 @@
623
668
  </dialog>
624
669
 
625
670
  <div id="auth-loading" class="auth-loading" role="status" aria-label="正在载入工作台"></div>
626
- <script type="module" src="/app.js?v=20260722-prose-replacement-permission"></script>
671
+ <script id="vditorIconScript" src="/vendor/vditor/dist/js/icons/ant.js?v=3.11.2"></script>
672
+ <script src="/vendor/vditor/dist/index.min.js?v=3.11.2"></script>
673
+ <script type="module" src="/app.js?v=20260724-whitespace-access"></script>
627
674
  </body>
628
675
  </html>
@@ -0,0 +1,9 @@
1
+ export type KeyboardShortcutEvent = {
2
+ key?: unknown;
3
+ metaKey?: boolean;
4
+ ctrlKey?: boolean;
5
+ altKey?: boolean;
6
+ shiftKey?: boolean;
7
+ };
8
+
9
+ export function isGlobalSearchShortcut(event?: KeyboardShortcutEvent | null): boolean;
@@ -0,0 +1,4 @@
1
+ export function isGlobalSearchShortcut(event) {
2
+ if (!event || String(event.key ?? "").toLowerCase() !== "f") return false;
3
+ return (Boolean(event.metaKey) || Boolean(event.ctrlKey)) && !event.altKey && !event.shiftKey;
4
+ }
@@ -12,6 +12,7 @@ export type ModelFormValues = {
12
12
  };
13
13
 
14
14
  export function normalizeModelPurposes(purposes: unknown): string[];
15
+ export function isKimiModelId(modelId: unknown): boolean;
15
16
  export function modelFormValues(model?: Record<string, unknown> | null): ModelFormValues;
16
17
  export function modelPayload(values: ModelFormValues, existingPreset?: Record<string, unknown>): Record<string, unknown> & { thinkingEnabled: boolean };
17
18
  export function modelOptionLabel(model: Record<string, unknown> | null | undefined): string;
@@ -21,13 +21,21 @@ export function normalizeModelPurposes(purposes) {
21
21
  return [...new Set(values.map((value) => purposeAliases.get(String(value).trim())).filter(Boolean))];
22
22
  }
23
23
 
24
+ export function isKimiModelId(modelId) {
25
+ return String(modelId ?? "").toLowerCase().includes("kimi");
26
+ }
27
+
24
28
  export function modelFormValues(model = null) {
29
+ const modelId = String(model?.modelId ?? "");
30
+ const configuredTemperature = model?.preset?.temperature;
25
31
  return {
26
32
  displayName: model?.displayName ?? "",
27
- modelId: model?.modelId ?? "",
33
+ modelId,
28
34
  purposes: model ? normalizeModelPurposes(model.purposes) : ["chat", "continue"],
29
35
  contextWindow: model?.contextWindow ?? 128000,
30
- temperature: model?.preset?.temperature ?? 0.7,
36
+ temperature: isKimiModelId(modelId) && !(typeof configuredTemperature === "number" && Number.isFinite(configuredTemperature))
37
+ ? 1
38
+ : (configuredTemperature ?? 0.7),
31
39
  maxTokens: model?.preset?.max_tokens ?? 32000,
32
40
  thinkingEnabled: model?.thinkingEnabled ?? true,
33
41
  enabled: model?.enabled ?? true
@@ -35,9 +43,10 @@ export function modelFormValues(model = null) {
35
43
  }
36
44
 
37
45
  export function modelPayload(values, existingPreset = {}) {
46
+ const modelId = String(values.modelId);
38
47
  return {
39
48
  displayName: String(values.displayName),
40
- modelId: String(values.modelId),
49
+ modelId,
41
50
  purposes: normalizeModelPurposes(values.purposes),
42
51
  contextWindow: Number(values.contextWindow),
43
52
  preset: {
@@ -0,0 +1,17 @@
1
+ export type ModuleLayout = "cards" | "rows";
2
+
3
+ export const MODULE_LAYOUT_STORAGE_KEY: string;
4
+ export const LEGACY_SETTINGS_LAYOUT_STORAGE_KEY: string;
5
+ export const MODULE_LAYOUTS: readonly ModuleLayout[];
6
+
7
+ export function normalizeModuleLayout(value: unknown): ModuleLayout;
8
+ export function moduleLayoutLabel(layout: unknown): string;
9
+
10
+ /** @deprecated 使用 normalizeModuleLayout */
11
+ export function normalizeSettingsLayout(value: unknown): ModuleLayout;
12
+ /** @deprecated 使用 moduleLayoutLabel */
13
+ export function settingsLayoutLabel(layout: unknown): string;
14
+ /** @deprecated 使用 MODULE_LAYOUTS */
15
+ export const SETTINGS_LAYOUTS: readonly ModuleLayout[];
16
+ /** @deprecated 使用 MODULE_LAYOUT_STORAGE_KEY */
17
+ export const SETTINGS_LAYOUT_STORAGE_KEY: string;
@@ -0,0 +1,28 @@
1
+ export const MODULE_LAYOUT_STORAGE_KEY = "scriverse-module-layout-v1";
2
+ export const LEGACY_SETTINGS_LAYOUT_STORAGE_KEY = "scriverse-settings-layout-v1";
3
+
4
+ export const MODULE_LAYOUTS = ["cards", "rows"];
5
+
6
+ export function normalizeModuleLayout(value) {
7
+ return value === "rows" ? "rows" : "cards";
8
+ }
9
+
10
+ export function moduleLayoutLabel(layout) {
11
+ return normalizeModuleLayout(layout) === "rows" ? "列表" : "卡片";
12
+ }
13
+
14
+ /** @deprecated 使用 normalizeModuleLayout */
15
+ export function normalizeSettingsLayout(value) {
16
+ return normalizeModuleLayout(value);
17
+ }
18
+
19
+ /** @deprecated 使用 moduleLayoutLabel */
20
+ export function settingsLayoutLabel(layout) {
21
+ return moduleLayoutLabel(layout);
22
+ }
23
+
24
+ /** @deprecated 使用 MODULE_LAYOUTS */
25
+ export const SETTINGS_LAYOUTS = MODULE_LAYOUTS;
26
+
27
+ /** @deprecated 使用 MODULE_LAYOUT_STORAGE_KEY */
28
+ export const SETTINGS_LAYOUT_STORAGE_KEY = MODULE_LAYOUT_STORAGE_KEY;
@@ -13,7 +13,7 @@ export const RESTORABLE_MODULES = Object.freeze([
13
13
 
14
14
  const moduleSet = new Set(RESTORABLE_MODULES);
15
15
  const returnViewSet = new Set(["shelf", "editor", "module", "welcome"]);
16
- const entityEditorSet = new Set(["setting", "character"]);
16
+ const entityEditorSet = new Set(["setting", "character", "race", "organization"]);
17
17
 
18
18
  function value(params, key) {
19
19
  return String(params.get(key) ?? "").trim();
@@ -23,6 +23,16 @@ const NETWORK_LAYOUTS = Object.freeze({
23
23
  });
24
24
  const RELATIONSHIP_EDGE_GAP = 24;
25
25
  let relationshipRendererSequence = 0;
26
+
27
+ export function getRelationshipNetworkInitialScale(nodeCount, expanded = false) {
28
+ if (expanded) return 1;
29
+ const count = Math.max(0, Number(nodeCount) || 0);
30
+ if (count > 180) return 1.35;
31
+ if (count > 120) return 1.25;
32
+ if (count > 80) return 1.16;
33
+ return 1;
34
+ }
35
+
26
36
  const GALAXY_CELESTIAL_PALETTES = Object.freeze([
27
37
  Object.freeze({ key: "solar", hue: 42, saturation: 96, lightness: 68, color: "#ffc95f", core: "#fff8d4", rim: "#9f3c18", atmosphere: "rgba(255,184,72,.58)", ring: "rgba(255,222,151,.72)" }),
28
38
  Object.freeze({ key: "azure", hue: 211, saturation: 94, lightness: 68, color: "#61b8ff", core: "#effaff", rim: "#173b85", atmosphere: "rgba(79,156,255,.56)", ring: "rgba(164,214,255,.68)" }),
@@ -296,6 +306,44 @@ export function buildRelationshipGraph(characters, relationships) {
296
306
  return { nodes, edges, nodeById, warnings, stats: { nodeCount: nodes.length, edgeCount: edges.length, maxDegree } };
297
307
  }
298
308
 
309
+ function separateOverlappingNetworkNodes(nodes, layout) {
310
+ const iterations = nodes.length > 150 ? 44 : 24;
311
+ const padding = nodes.length > 120 ? 12 : 9;
312
+ for (let iteration = 0; iteration < iterations; iteration += 1) {
313
+ let overlapCount = 0;
314
+ for (let leftIndex = 0; leftIndex < nodes.length; leftIndex += 1) {
315
+ const left = nodes[leftIndex];
316
+ for (let rightIndex = leftIndex + 1; rightIndex < nodes.length; rightIndex += 1) {
317
+ const right = nodes[rightIndex];
318
+ let dx = right.x - left.x;
319
+ let dy = right.y - left.y;
320
+ let distance = Math.hypot(dx, dy);
321
+ if (distance < 0.001) {
322
+ const angle = (hashString(`${left.id}:${right.id}`) / 4294967296) * Math.PI * 2;
323
+ dx = Math.cos(angle);
324
+ dy = Math.sin(angle);
325
+ distance = 1;
326
+ }
327
+ const minimumDistance = left.radius + right.radius + padding;
328
+ if (distance >= minimumDistance) continue;
329
+ overlapCount += 1;
330
+ const correction = (minimumDistance - distance) * 0.52;
331
+ const nx = dx / distance;
332
+ const ny = dy / distance;
333
+ left.x -= nx * correction;
334
+ left.y -= ny * correction;
335
+ right.x += nx * correction;
336
+ right.y += ny * correction;
337
+ }
338
+ }
339
+ for (const node of nodes) {
340
+ node.x = clamp(node.x, layout.marginX + node.radius, layout.width - layout.marginX - node.radius);
341
+ node.y = clamp(node.y, layout.marginY + node.radius, layout.height - layout.marginY - node.radius);
342
+ }
343
+ if (!overlapCount) break;
344
+ }
345
+ }
346
+
299
347
  export function layoutRelationshipNetwork(graph, seed = "relationship-network", options = {}) {
300
348
  const layout = options.expanded ? NETWORK_LAYOUTS.expanded : NETWORK_LAYOUTS.standard;
301
349
  const random = seededRandom(hashString(`${seed}:${graph.nodes.map((node) => node.id).join("|")}`));
@@ -390,6 +438,7 @@ export function layoutRelationshipNetwork(graph, seed = "relationship-network",
390
438
  node.x = layout.marginX + (node.x - minX) / width * (layout.width - layout.marginX * 2);
391
439
  node.y = layout.marginY + (node.y - minY) / height * (layout.height - layout.marginY * 2);
392
440
  }
441
+ separateOverlappingNetworkNodes(nodes, layout);
393
442
  }
394
443
  return { nodes, byId, width: layout.width, height: layout.height };
395
444
  }
@@ -694,7 +743,7 @@ export function renderRelationshipMindMap(container, graph, options = {}) {
694
743
  let selectedId = null;
695
744
  let selectedEdgeId = null;
696
745
  let hoveredId = null;
697
- let viewScale = 1;
746
+ let viewScale = getRelationshipNetworkInitialScale(graph.nodes.length, options.expanded);
698
747
  let viewX = 0;
699
748
  let viewY = 0;
700
749
  let animationFrame = null;
@@ -880,6 +929,7 @@ export function renderRelationshipMindMap(container, graph, options = {}) {
880
929
  stage.append(svg);
881
930
 
882
931
  const nodeElements = new Map();
932
+ const defaultLabelLimit = graph.nodes.length > 180 ? 36 : graph.nodes.length > 120 ? 48 : graph.nodes.length > 80 ? 64 : graph.nodes.length;
883
933
  const updateNodePosition = (nodeId) => {
884
934
  const position = positions.get(nodeId);
885
935
  const button = nodeElements.get(nodeId);
@@ -1201,6 +1251,7 @@ export function renderRelationshipMindMap(container, graph, options = {}) {
1201
1251
  button.className = `mind-node network-node obsidian-node${node.locked ? " is-locked" : ""}${node.degree === 0 ? " is-isolated" : ""}`;
1202
1252
  button.dataset.nodeId = node.id;
1203
1253
  button.dataset.groupKey = node.groupKey || appearance.group.key;
1254
+ button.classList.toggle("is-label-visible", graph.nodes.indexOf(node) < defaultLabelLimit || node.degree >= 4);
1204
1255
  button.style.setProperty("--node-size", `${nodeSize}px`);
1205
1256
  button.style.setProperty("--node-color", node.color || appearance.color);
1206
1257
  button.style.setProperty("--node-glow", node.glow || appearance.glow);
@@ -1304,6 +1355,14 @@ export function renderRelationshipMindMap(container, graph, options = {}) {
1304
1355
  viewY = 0;
1305
1356
  updateViewTransform(true);
1306
1357
  };
1358
+ const setDefaultView = (animate = false) => {
1359
+ viewScale = getRelationshipNetworkInitialScale(graph.nodes.length, options.expanded);
1360
+ const width = viewport.clientWidth;
1361
+ const height = viewport.clientHeight;
1362
+ viewX = width ? (width - width * viewScale) / 2 : 0;
1363
+ viewY = height ? (height - height * viewScale) / 2 : 0;
1364
+ updateViewTransform(animate);
1365
+ };
1307
1366
  const animatePositions = (targets, duration = 650) => {
1308
1367
  freezePhysics();
1309
1368
  if (animationFrame) window.cancelAnimationFrame(animationFrame);
@@ -1342,7 +1401,7 @@ export function renderRelationshipMindMap(container, graph, options = {}) {
1342
1401
  hoveredId = null;
1343
1402
  freezePhysics();
1344
1403
  refreshHighlight();
1345
- fitView();
1404
+ setDefaultView(true);
1346
1405
  animatePositions(originalPositions);
1347
1406
  });
1348
1407
 
@@ -1393,6 +1452,7 @@ export function renderRelationshipMindMap(container, graph, options = {}) {
1393
1452
  clearGraphHighlight();
1394
1453
  shell.append(toolbar, viewport);
1395
1454
  container.append(shell);
1455
+ setDefaultView();
1396
1456
  return {
1397
1457
  destroy() {
1398
1458
  destroyed = true;