mdsvr 1.0.3 → 2.0.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 (401) hide show
  1. package/README.md +180 -4
  2. package/bin/mdsvr.js +0 -0
  3. package/dist/assets/assets/highlight.js-styles/1c-light.css +107 -0
  4. package/dist/assets/assets/highlight.js-styles/1c-light.min.css +9 -0
  5. package/dist/assets/assets/highlight.js-styles/a11y-dark.css +94 -0
  6. package/dist/assets/assets/highlight.js-styles/a11y-dark.min.css +7 -0
  7. package/dist/assets/assets/highlight.js-styles/a11y-light.css +94 -0
  8. package/dist/assets/assets/highlight.js-styles/a11y-light.min.css +7 -0
  9. package/dist/assets/assets/highlight.js-styles/agate.css +127 -0
  10. package/dist/assets/assets/highlight.js-styles/agate.min.css +20 -0
  11. package/dist/assets/assets/highlight.js-styles/an-old-hope.css +75 -0
  12. package/dist/assets/assets/highlight.js-styles/an-old-hope.min.css +9 -0
  13. package/dist/assets/assets/highlight.js-styles/androidstudio.css +60 -0
  14. package/dist/assets/assets/highlight.js-styles/androidstudio.min.css +1 -0
  15. package/dist/assets/assets/highlight.js-styles/arduino-light.css +78 -0
  16. package/dist/assets/assets/highlight.js-styles/arduino-light.min.css +1 -0
  17. package/dist/assets/assets/highlight.js-styles/arta.css +66 -0
  18. package/dist/assets/assets/highlight.js-styles/arta.min.css +1 -0
  19. package/dist/assets/assets/highlight.js-styles/ascetic.css +45 -0
  20. package/dist/assets/assets/highlight.js-styles/ascetic.min.css +1 -0
  21. package/dist/assets/assets/highlight.js-styles/atom-one-dark-reasonable.css +105 -0
  22. package/dist/assets/assets/highlight.js-styles/atom-one-dark-reasonable.min.css +1 -0
  23. package/dist/assets/assets/highlight.js-styles/atom-one-dark.css +90 -0
  24. package/dist/assets/assets/highlight.js-styles/atom-one-dark.min.css +1 -0
  25. package/dist/assets/assets/highlight.js-styles/atom-one-light.css +90 -0
  26. package/dist/assets/assets/highlight.js-styles/atom-one-light.min.css +1 -0
  27. package/dist/assets/assets/highlight.js-styles/brown-paper.css +63 -0
  28. package/dist/assets/assets/highlight.js-styles/brown-paper.min.css +1 -0
  29. package/dist/assets/assets/highlight.js-styles/codepen-embed.css +57 -0
  30. package/dist/assets/assets/highlight.js-styles/codepen-embed.min.css +1 -0
  31. package/dist/assets/assets/highlight.js-styles/color-brewer.css +66 -0
  32. package/dist/assets/assets/highlight.js-styles/color-brewer.min.css +1 -0
  33. package/dist/assets/assets/highlight.js-styles/cybertopia-cherry.css +103 -0
  34. package/dist/assets/assets/highlight.js-styles/cybertopia-cherry.min.css +1 -0
  35. package/dist/assets/assets/highlight.js-styles/cybertopia-dimmer.css +103 -0
  36. package/dist/assets/assets/highlight.js-styles/cybertopia-dimmer.min.css +1 -0
  37. package/dist/assets/assets/highlight.js-styles/cybertopia-icecap.css +103 -0
  38. package/dist/assets/assets/highlight.js-styles/cybertopia-icecap.min.css +1 -0
  39. package/dist/assets/assets/highlight.js-styles/cybertopia-saturated.css +103 -0
  40. package/dist/assets/assets/highlight.js-styles/cybertopia-saturated.min.css +1 -0
  41. package/dist/assets/assets/highlight.js-styles/dark.css +62 -0
  42. package/dist/assets/assets/highlight.js-styles/dark.min.css +1 -0
  43. package/dist/assets/assets/highlight.js-styles/default.css +117 -0
  44. package/dist/assets/assets/highlight.js-styles/default.min.css +9 -0
  45. package/dist/assets/assets/highlight.js-styles/devibeans.css +90 -0
  46. package/dist/assets/assets/highlight.js-styles/devibeans.min.css +7 -0
  47. package/dist/assets/assets/highlight.js-styles/docco.css +83 -0
  48. package/dist/assets/assets/highlight.js-styles/docco.min.css +1 -0
  49. package/dist/assets/assets/highlight.js-styles/far.css +67 -0
  50. package/dist/assets/assets/highlight.js-styles/far.min.css +1 -0
  51. package/dist/assets/assets/highlight.js-styles/felipec.css +94 -0
  52. package/dist/assets/assets/highlight.js-styles/felipec.min.css +7 -0
  53. package/dist/assets/assets/highlight.js-styles/foundation.css +80 -0
  54. package/dist/assets/assets/highlight.js-styles/foundation.min.css +1 -0
  55. package/dist/assets/assets/highlight.js-styles/github-dark-dimmed.css +117 -0
  56. package/dist/assets/assets/highlight.js-styles/github-dark-dimmed.min.css +9 -0
  57. package/dist/assets/assets/highlight.js-styles/github-dark.css +118 -0
  58. package/dist/assets/assets/highlight.js-styles/github-dark.min.css +10 -0
  59. package/dist/assets/assets/highlight.js-styles/github.css +118 -0
  60. package/dist/assets/assets/highlight.js-styles/github.min.css +10 -0
  61. package/dist/assets/assets/highlight.js-styles/gml.css +72 -0
  62. package/dist/assets/assets/highlight.js-styles/gml.min.css +1 -0
  63. package/dist/assets/assets/highlight.js-styles/googlecode.css +79 -0
  64. package/dist/assets/assets/highlight.js-styles/googlecode.min.css +1 -0
  65. package/dist/assets/assets/highlight.js-styles/gradient-dark.css +90 -0
  66. package/dist/assets/assets/highlight.js-styles/gradient-dark.min.css +1 -0
  67. package/dist/assets/assets/highlight.js-styles/gradient-light.css +90 -0
  68. package/dist/assets/assets/highlight.js-styles/gradient-light.min.css +1 -0
  69. package/dist/assets/assets/highlight.js-styles/grayscale.css +89 -0
  70. package/dist/assets/assets/highlight.js-styles/grayscale.min.css +1 -0
  71. package/dist/assets/assets/highlight.js-styles/hybrid.css +88 -0
  72. package/dist/assets/assets/highlight.js-styles/hybrid.min.css +1 -0
  73. package/dist/assets/assets/highlight.js-styles/idea.css +86 -0
  74. package/dist/assets/assets/highlight.js-styles/idea.min.css +1 -0
  75. package/dist/assets/assets/highlight.js-styles/intellij-light.css +107 -0
  76. package/dist/assets/assets/highlight.js-styles/intellij-light.min.css +1 -0
  77. package/dist/assets/assets/highlight.js-styles/ir-black.css +66 -0
  78. package/dist/assets/assets/highlight.js-styles/ir-black.min.css +1 -0
  79. package/dist/assets/assets/highlight.js-styles/isbl-editor-dark.css +94 -0
  80. package/dist/assets/assets/highlight.js-styles/isbl-editor-dark.min.css +1 -0
  81. package/dist/assets/assets/highlight.js-styles/isbl-editor-light.css +93 -0
  82. package/dist/assets/assets/highlight.js-styles/isbl-editor-light.min.css +1 -0
  83. package/dist/assets/assets/highlight.js-styles/kimbie-dark.css +69 -0
  84. package/dist/assets/assets/highlight.js-styles/kimbie-dark.min.css +1 -0
  85. package/dist/assets/assets/highlight.js-styles/kimbie-light.css +69 -0
  86. package/dist/assets/assets/highlight.js-styles/kimbie-light.min.css +1 -0
  87. package/dist/assets/assets/highlight.js-styles/lightfair.css +81 -0
  88. package/dist/assets/assets/highlight.js-styles/lightfair.min.css +1 -0
  89. package/dist/assets/assets/highlight.js-styles/lioshi.css +76 -0
  90. package/dist/assets/assets/highlight.js-styles/lioshi.min.css +1 -0
  91. package/dist/assets/assets/highlight.js-styles/magula.css +66 -0
  92. package/dist/assets/assets/highlight.js-styles/magula.min.css +1 -0
  93. package/dist/assets/assets/highlight.js-styles/mono-blue.css +56 -0
  94. package/dist/assets/assets/highlight.js-styles/mono-blue.min.css +1 -0
  95. package/dist/assets/assets/highlight.js-styles/monokai-sublime.css +76 -0
  96. package/dist/assets/assets/highlight.js-styles/monokai-sublime.min.css +1 -0
  97. package/dist/assets/assets/highlight.js-styles/monokai.css +70 -0
  98. package/dist/assets/assets/highlight.js-styles/monokai.min.css +1 -0
  99. package/dist/assets/assets/highlight.js-styles/night-owl.css +174 -0
  100. package/dist/assets/assets/highlight.js-styles/night-owl.min.css +1 -0
  101. package/dist/assets/assets/highlight.js-styles/nnfx-dark.css +104 -0
  102. package/dist/assets/assets/highlight.js-styles/nnfx-dark.min.css +10 -0
  103. package/dist/assets/assets/highlight.js-styles/nnfx-light.css +104 -0
  104. package/dist/assets/assets/highlight.js-styles/nnfx-light.min.css +10 -0
  105. package/dist/assets/assets/highlight.js-styles/nord.css +275 -0
  106. package/dist/assets/assets/highlight.js-styles/nord.min.css +1 -0
  107. package/dist/assets/assets/highlight.js-styles/obsidian.css +79 -0
  108. package/dist/assets/assets/highlight.js-styles/obsidian.min.css +1 -0
  109. package/dist/assets/assets/highlight.js-styles/panda-syntax-dark.css +92 -0
  110. package/dist/assets/assets/highlight.js-styles/panda-syntax-dark.min.css +1 -0
  111. package/dist/assets/assets/highlight.js-styles/panda-syntax-light.css +89 -0
  112. package/dist/assets/assets/highlight.js-styles/panda-syntax-light.min.css +1 -0
  113. package/dist/assets/assets/highlight.js-styles/paraiso-dark.css +67 -0
  114. package/dist/assets/assets/highlight.js-styles/paraiso-dark.min.css +1 -0
  115. package/dist/assets/assets/highlight.js-styles/paraiso-light.css +67 -0
  116. package/dist/assets/assets/highlight.js-styles/paraiso-light.min.css +1 -0
  117. package/dist/assets/assets/highlight.js-styles/pojoaque.css +76 -0
  118. package/dist/assets/assets/highlight.js-styles/pojoaque.min.css +1 -0
  119. package/dist/assets/assets/highlight.js-styles/purebasic.css +103 -0
  120. package/dist/assets/assets/highlight.js-styles/purebasic.min.css +1 -0
  121. package/dist/assets/assets/highlight.js-styles/qtcreator-dark.css +76 -0
  122. package/dist/assets/assets/highlight.js-styles/qtcreator-dark.min.css +1 -0
  123. package/dist/assets/assets/highlight.js-styles/qtcreator-light.css +74 -0
  124. package/dist/assets/assets/highlight.js-styles/qtcreator-light.min.css +1 -0
  125. package/dist/assets/assets/highlight.js-styles/rainbow.css +77 -0
  126. package/dist/assets/assets/highlight.js-styles/rainbow.min.css +1 -0
  127. package/dist/assets/assets/highlight.js-styles/rose-pine-dawn.css +107 -0
  128. package/dist/assets/assets/highlight.js-styles/rose-pine-dawn.min.css +4 -0
  129. package/dist/assets/assets/highlight.js-styles/rose-pine-moon.css +109 -0
  130. package/dist/assets/assets/highlight.js-styles/rose-pine-moon.min.css +4 -0
  131. package/dist/assets/assets/highlight.js-styles/rose-pine.css +109 -0
  132. package/dist/assets/assets/highlight.js-styles/rose-pine.min.css +4 -0
  133. package/dist/assets/assets/highlight.js-styles/routeros.css +86 -0
  134. package/dist/assets/assets/highlight.js-styles/routeros.min.css +1 -0
  135. package/dist/assets/assets/highlight.js-styles/school-book.css +62 -0
  136. package/dist/assets/assets/highlight.js-styles/school-book.min.css +1 -0
  137. package/dist/assets/assets/highlight.js-styles/shades-of-purple.css +84 -0
  138. package/dist/assets/assets/highlight.js-styles/shades-of-purple.min.css +1 -0
  139. package/dist/assets/assets/highlight.js-styles/srcery.css +89 -0
  140. package/dist/assets/assets/highlight.js-styles/srcery.min.css +1 -0
  141. package/dist/assets/assets/highlight.js-styles/stackoverflow-dark.css +117 -0
  142. package/dist/assets/assets/highlight.js-styles/stackoverflow-dark.min.css +13 -0
  143. package/dist/assets/assets/highlight.js-styles/stackoverflow-light.css +117 -0
  144. package/dist/assets/assets/highlight.js-styles/stackoverflow-light.min.css +13 -0
  145. package/dist/assets/assets/highlight.js-styles/sunburst.css +89 -0
  146. package/dist/assets/assets/highlight.js-styles/sunburst.min.css +1 -0
  147. package/dist/assets/assets/highlight.js-styles/tokyo-night-dark.css +114 -0
  148. package/dist/assets/assets/highlight.js-styles/tokyo-night-dark.min.css +8 -0
  149. package/dist/assets/assets/highlight.js-styles/tokyo-night-light.css +114 -0
  150. package/dist/assets/assets/highlight.js-styles/tokyo-night-light.min.css +8 -0
  151. package/dist/assets/assets/highlight.js-styles/tomorrow-night-blue.css +69 -0
  152. package/dist/assets/assets/highlight.js-styles/tomorrow-night-blue.min.css +1 -0
  153. package/dist/assets/assets/highlight.js-styles/tomorrow-night-bright.css +68 -0
  154. package/dist/assets/assets/highlight.js-styles/tomorrow-night-bright.min.css +1 -0
  155. package/dist/assets/assets/highlight.js-styles/vs.css +63 -0
  156. package/dist/assets/assets/highlight.js-styles/vs.min.css +1 -0
  157. package/dist/assets/assets/highlight.js-styles/vs2015.css +100 -0
  158. package/dist/assets/assets/highlight.js-styles/vs2015.min.css +1 -0
  159. package/dist/assets/assets/highlight.js-styles/xcode.css +90 -0
  160. package/dist/assets/assets/highlight.js-styles/xcode.min.css +1 -0
  161. package/dist/assets/assets/highlight.js-styles/xt256.css +79 -0
  162. package/dist/assets/assets/highlight.js-styles/xt256.min.css +1 -0
  163. package/dist/assets/highlight.js-styles/1c-light.css +107 -0
  164. package/dist/assets/highlight.js-styles/1c-light.min.css +9 -0
  165. package/dist/assets/highlight.js-styles/a11y-dark.css +94 -0
  166. package/dist/assets/highlight.js-styles/a11y-dark.min.css +7 -0
  167. package/dist/assets/highlight.js-styles/a11y-light.css +94 -0
  168. package/dist/assets/highlight.js-styles/a11y-light.min.css +7 -0
  169. package/dist/assets/highlight.js-styles/agate.css +127 -0
  170. package/dist/assets/highlight.js-styles/agate.min.css +20 -0
  171. package/dist/assets/highlight.js-styles/an-old-hope.css +75 -0
  172. package/dist/assets/highlight.js-styles/an-old-hope.min.css +9 -0
  173. package/dist/assets/highlight.js-styles/androidstudio.css +60 -0
  174. package/dist/assets/highlight.js-styles/androidstudio.min.css +1 -0
  175. package/dist/assets/highlight.js-styles/arduino-light.css +78 -0
  176. package/dist/assets/highlight.js-styles/arduino-light.min.css +1 -0
  177. package/dist/assets/highlight.js-styles/arta.css +66 -0
  178. package/dist/assets/highlight.js-styles/arta.min.css +1 -0
  179. package/dist/assets/highlight.js-styles/ascetic.css +45 -0
  180. package/dist/assets/highlight.js-styles/ascetic.min.css +1 -0
  181. package/dist/assets/highlight.js-styles/atom-one-dark-reasonable.css +105 -0
  182. package/dist/assets/highlight.js-styles/atom-one-dark-reasonable.min.css +1 -0
  183. package/dist/assets/highlight.js-styles/atom-one-dark.css +90 -0
  184. package/dist/assets/highlight.js-styles/atom-one-dark.min.css +1 -0
  185. package/dist/assets/highlight.js-styles/atom-one-light.css +90 -0
  186. package/dist/assets/highlight.js-styles/atom-one-light.min.css +1 -0
  187. package/dist/assets/highlight.js-styles/brown-paper.css +63 -0
  188. package/dist/assets/highlight.js-styles/brown-paper.min.css +1 -0
  189. package/dist/assets/highlight.js-styles/codepen-embed.css +57 -0
  190. package/dist/assets/highlight.js-styles/codepen-embed.min.css +1 -0
  191. package/dist/assets/highlight.js-styles/color-brewer.css +66 -0
  192. package/dist/assets/highlight.js-styles/color-brewer.min.css +1 -0
  193. package/dist/assets/highlight.js-styles/cybertopia-cherry.css +103 -0
  194. package/dist/assets/highlight.js-styles/cybertopia-cherry.min.css +1 -0
  195. package/dist/assets/highlight.js-styles/cybertopia-dimmer.css +103 -0
  196. package/dist/assets/highlight.js-styles/cybertopia-dimmer.min.css +1 -0
  197. package/dist/assets/highlight.js-styles/cybertopia-icecap.css +103 -0
  198. package/dist/assets/highlight.js-styles/cybertopia-icecap.min.css +1 -0
  199. package/dist/assets/highlight.js-styles/cybertopia-saturated.css +103 -0
  200. package/dist/assets/highlight.js-styles/cybertopia-saturated.min.css +1 -0
  201. package/dist/assets/highlight.js-styles/dark.css +62 -0
  202. package/dist/assets/highlight.js-styles/dark.min.css +1 -0
  203. package/dist/assets/highlight.js-styles/default.css +117 -0
  204. package/dist/assets/highlight.js-styles/default.min.css +9 -0
  205. package/dist/assets/highlight.js-styles/devibeans.css +90 -0
  206. package/dist/assets/highlight.js-styles/devibeans.min.css +7 -0
  207. package/dist/assets/highlight.js-styles/docco.css +83 -0
  208. package/dist/assets/highlight.js-styles/docco.min.css +1 -0
  209. package/dist/assets/highlight.js-styles/far.css +67 -0
  210. package/dist/assets/highlight.js-styles/far.min.css +1 -0
  211. package/dist/assets/highlight.js-styles/felipec.css +94 -0
  212. package/dist/assets/highlight.js-styles/felipec.min.css +7 -0
  213. package/dist/assets/highlight.js-styles/foundation.css +80 -0
  214. package/dist/assets/highlight.js-styles/foundation.min.css +1 -0
  215. package/dist/assets/highlight.js-styles/github-dark-dimmed.css +117 -0
  216. package/dist/assets/highlight.js-styles/github-dark-dimmed.min.css +9 -0
  217. package/dist/assets/highlight.js-styles/github-dark.css +118 -0
  218. package/dist/assets/highlight.js-styles/github-dark.min.css +10 -0
  219. package/dist/assets/highlight.js-styles/github.css +118 -0
  220. package/dist/assets/highlight.js-styles/github.min.css +10 -0
  221. package/dist/assets/highlight.js-styles/gml.css +72 -0
  222. package/dist/assets/highlight.js-styles/gml.min.css +1 -0
  223. package/dist/assets/highlight.js-styles/googlecode.css +79 -0
  224. package/dist/assets/highlight.js-styles/googlecode.min.css +1 -0
  225. package/dist/assets/highlight.js-styles/gradient-dark.css +90 -0
  226. package/dist/assets/highlight.js-styles/gradient-dark.min.css +1 -0
  227. package/dist/assets/highlight.js-styles/gradient-light.css +90 -0
  228. package/dist/assets/highlight.js-styles/gradient-light.min.css +1 -0
  229. package/dist/assets/highlight.js-styles/grayscale.css +89 -0
  230. package/dist/assets/highlight.js-styles/grayscale.min.css +1 -0
  231. package/dist/assets/highlight.js-styles/hybrid.css +88 -0
  232. package/dist/assets/highlight.js-styles/hybrid.min.css +1 -0
  233. package/dist/assets/highlight.js-styles/idea.css +86 -0
  234. package/dist/assets/highlight.js-styles/idea.min.css +1 -0
  235. package/dist/assets/highlight.js-styles/intellij-light.css +107 -0
  236. package/dist/assets/highlight.js-styles/intellij-light.min.css +1 -0
  237. package/dist/assets/highlight.js-styles/ir-black.css +66 -0
  238. package/dist/assets/highlight.js-styles/ir-black.min.css +1 -0
  239. package/dist/assets/highlight.js-styles/isbl-editor-dark.css +94 -0
  240. package/dist/assets/highlight.js-styles/isbl-editor-dark.min.css +1 -0
  241. package/dist/assets/highlight.js-styles/isbl-editor-light.css +93 -0
  242. package/dist/assets/highlight.js-styles/isbl-editor-light.min.css +1 -0
  243. package/dist/assets/highlight.js-styles/kimbie-dark.css +69 -0
  244. package/dist/assets/highlight.js-styles/kimbie-dark.min.css +1 -0
  245. package/dist/assets/highlight.js-styles/kimbie-light.css +69 -0
  246. package/dist/assets/highlight.js-styles/kimbie-light.min.css +1 -0
  247. package/dist/assets/highlight.js-styles/lightfair.css +81 -0
  248. package/dist/assets/highlight.js-styles/lightfair.min.css +1 -0
  249. package/dist/assets/highlight.js-styles/lioshi.css +76 -0
  250. package/dist/assets/highlight.js-styles/lioshi.min.css +1 -0
  251. package/dist/assets/highlight.js-styles/magula.css +66 -0
  252. package/dist/assets/highlight.js-styles/magula.min.css +1 -0
  253. package/dist/assets/highlight.js-styles/mono-blue.css +56 -0
  254. package/dist/assets/highlight.js-styles/mono-blue.min.css +1 -0
  255. package/dist/assets/highlight.js-styles/monokai-sublime.css +76 -0
  256. package/dist/assets/highlight.js-styles/monokai-sublime.min.css +1 -0
  257. package/dist/assets/highlight.js-styles/monokai.css +70 -0
  258. package/dist/assets/highlight.js-styles/monokai.min.css +1 -0
  259. package/dist/assets/highlight.js-styles/night-owl.css +174 -0
  260. package/dist/assets/highlight.js-styles/night-owl.min.css +1 -0
  261. package/dist/assets/highlight.js-styles/nnfx-dark.css +104 -0
  262. package/dist/assets/highlight.js-styles/nnfx-dark.min.css +10 -0
  263. package/dist/assets/highlight.js-styles/nnfx-light.css +104 -0
  264. package/dist/assets/highlight.js-styles/nnfx-light.min.css +10 -0
  265. package/dist/assets/highlight.js-styles/nord.css +275 -0
  266. package/dist/assets/highlight.js-styles/nord.min.css +1 -0
  267. package/dist/assets/highlight.js-styles/obsidian.css +79 -0
  268. package/dist/assets/highlight.js-styles/obsidian.min.css +1 -0
  269. package/dist/assets/highlight.js-styles/panda-syntax-dark.css +92 -0
  270. package/dist/assets/highlight.js-styles/panda-syntax-dark.min.css +1 -0
  271. package/dist/assets/highlight.js-styles/panda-syntax-light.css +89 -0
  272. package/dist/assets/highlight.js-styles/panda-syntax-light.min.css +1 -0
  273. package/dist/assets/highlight.js-styles/paraiso-dark.css +67 -0
  274. package/dist/assets/highlight.js-styles/paraiso-dark.min.css +1 -0
  275. package/dist/assets/highlight.js-styles/paraiso-light.css +67 -0
  276. package/dist/assets/highlight.js-styles/paraiso-light.min.css +1 -0
  277. package/dist/assets/highlight.js-styles/pojoaque.css +76 -0
  278. package/dist/assets/highlight.js-styles/pojoaque.min.css +1 -0
  279. package/dist/assets/highlight.js-styles/purebasic.css +103 -0
  280. package/dist/assets/highlight.js-styles/purebasic.min.css +1 -0
  281. package/dist/assets/highlight.js-styles/qtcreator-dark.css +76 -0
  282. package/dist/assets/highlight.js-styles/qtcreator-dark.min.css +1 -0
  283. package/dist/assets/highlight.js-styles/qtcreator-light.css +74 -0
  284. package/dist/assets/highlight.js-styles/qtcreator-light.min.css +1 -0
  285. package/dist/assets/highlight.js-styles/rainbow.css +77 -0
  286. package/dist/assets/highlight.js-styles/rainbow.min.css +1 -0
  287. package/dist/assets/highlight.js-styles/rose-pine-dawn.css +107 -0
  288. package/dist/assets/highlight.js-styles/rose-pine-dawn.min.css +4 -0
  289. package/dist/assets/highlight.js-styles/rose-pine-moon.css +109 -0
  290. package/dist/assets/highlight.js-styles/rose-pine-moon.min.css +4 -0
  291. package/dist/assets/highlight.js-styles/rose-pine.css +109 -0
  292. package/dist/assets/highlight.js-styles/rose-pine.min.css +4 -0
  293. package/dist/assets/highlight.js-styles/routeros.css +86 -0
  294. package/dist/assets/highlight.js-styles/routeros.min.css +1 -0
  295. package/dist/assets/highlight.js-styles/school-book.css +62 -0
  296. package/dist/assets/highlight.js-styles/school-book.min.css +1 -0
  297. package/dist/assets/highlight.js-styles/shades-of-purple.css +84 -0
  298. package/dist/assets/highlight.js-styles/shades-of-purple.min.css +1 -0
  299. package/dist/assets/highlight.js-styles/srcery.css +89 -0
  300. package/dist/assets/highlight.js-styles/srcery.min.css +1 -0
  301. package/dist/assets/highlight.js-styles/stackoverflow-dark.css +117 -0
  302. package/dist/assets/highlight.js-styles/stackoverflow-dark.min.css +13 -0
  303. package/dist/assets/highlight.js-styles/stackoverflow-light.css +117 -0
  304. package/dist/assets/highlight.js-styles/stackoverflow-light.min.css +13 -0
  305. package/dist/assets/highlight.js-styles/sunburst.css +89 -0
  306. package/dist/assets/highlight.js-styles/sunburst.min.css +1 -0
  307. package/dist/assets/highlight.js-styles/tokyo-night-dark.css +114 -0
  308. package/dist/assets/highlight.js-styles/tokyo-night-dark.min.css +8 -0
  309. package/dist/assets/highlight.js-styles/tokyo-night-light.css +114 -0
  310. package/dist/assets/highlight.js-styles/tokyo-night-light.min.css +8 -0
  311. package/dist/assets/highlight.js-styles/tomorrow-night-blue.css +69 -0
  312. package/dist/assets/highlight.js-styles/tomorrow-night-blue.min.css +1 -0
  313. package/dist/assets/highlight.js-styles/tomorrow-night-bright.css +68 -0
  314. package/dist/assets/highlight.js-styles/tomorrow-night-bright.min.css +1 -0
  315. package/dist/assets/highlight.js-styles/vs.css +63 -0
  316. package/dist/assets/highlight.js-styles/vs.min.css +1 -0
  317. package/dist/assets/highlight.js-styles/vs2015.css +100 -0
  318. package/dist/assets/highlight.js-styles/vs2015.min.css +1 -0
  319. package/dist/assets/highlight.js-styles/xcode.css +90 -0
  320. package/dist/assets/highlight.js-styles/xcode.min.css +1 -0
  321. package/dist/assets/highlight.js-styles/xt256.css +79 -0
  322. package/dist/assets/highlight.js-styles/xt256.min.css +1 -0
  323. package/dist/cli.js +67 -3
  324. package/dist/cli.js.map +1 -1
  325. package/dist/directory.d.ts.map +1 -1
  326. package/dist/directory.js +50 -21
  327. package/dist/directory.js.map +1 -1
  328. package/dist/generators/feed.d.ts +3 -0
  329. package/dist/generators/feed.d.ts.map +1 -0
  330. package/dist/generators/feed.js +110 -0
  331. package/dist/generators/feed.js.map +1 -0
  332. package/dist/generators/search-index.d.ts +10 -0
  333. package/dist/generators/search-index.d.ts.map +1 -0
  334. package/dist/generators/search-index.js +79 -0
  335. package/dist/generators/search-index.js.map +1 -0
  336. package/dist/generators/sitemap.d.ts +3 -0
  337. package/dist/generators/sitemap.d.ts.map +1 -0
  338. package/dist/generators/sitemap.js +90 -0
  339. package/dist/generators/sitemap.js.map +1 -0
  340. package/dist/index.d.ts +2 -0
  341. package/dist/index.d.ts.map +1 -1
  342. package/dist/index.js +1 -0
  343. package/dist/index.js.map +1 -1
  344. package/dist/renderer/components.d.ts +60 -0
  345. package/dist/renderer/components.d.ts.map +1 -0
  346. package/dist/renderer/components.js +59 -0
  347. package/dist/renderer/components.js.map +1 -0
  348. package/dist/renderer/index.d.ts +7 -0
  349. package/dist/renderer/index.d.ts.map +1 -0
  350. package/dist/renderer/index.js +14 -0
  351. package/dist/renderer/index.js.map +1 -0
  352. package/dist/renderer/markdown.d.ts +15 -0
  353. package/dist/renderer/markdown.d.ts.map +1 -0
  354. package/dist/renderer/markdown.js +77 -0
  355. package/dist/renderer/markdown.js.map +1 -0
  356. package/dist/renderer/mdx.d.ts +14 -0
  357. package/dist/renderer/mdx.d.ts.map +1 -0
  358. package/dist/renderer/mdx.js +55 -0
  359. package/dist/renderer/mdx.js.map +1 -0
  360. package/dist/router.d.ts +2 -1
  361. package/dist/router.d.ts.map +1 -1
  362. package/dist/router.js +158 -45
  363. package/dist/router.js.map +1 -1
  364. package/dist/server.d.ts +5 -1
  365. package/dist/server.d.ts.map +1 -1
  366. package/dist/server.js +88 -27
  367. package/dist/server.js.map +1 -1
  368. package/dist/settings/defaults.d.ts +5 -0
  369. package/dist/settings/defaults.d.ts.map +1 -0
  370. package/dist/settings/defaults.js +35 -0
  371. package/dist/settings/defaults.js.map +1 -0
  372. package/dist/settings/index.d.ts +11 -0
  373. package/dist/settings/index.d.ts.map +1 -0
  374. package/dist/settings/index.js +82 -0
  375. package/dist/settings/index.js.map +1 -0
  376. package/dist/settings/schema.d.ts +820 -0
  377. package/dist/settings/schema.d.ts.map +1 -0
  378. package/dist/settings/schema.js +117 -0
  379. package/dist/settings/schema.js.map +1 -0
  380. package/dist/template/index.d.ts +15 -0
  381. package/dist/template/index.d.ts.map +1 -0
  382. package/dist/template/index.js +924 -0
  383. package/dist/template/index.js.map +1 -0
  384. package/dist/template/search.d.ts +5 -0
  385. package/dist/template/search.d.ts.map +1 -0
  386. package/dist/template/search.js +241 -0
  387. package/dist/template/search.js.map +1 -0
  388. package/dist/template/seo.d.ts +13 -0
  389. package/dist/template/seo.d.ts.map +1 -0
  390. package/dist/template/seo.js +71 -0
  391. package/dist/template/seo.js.map +1 -0
  392. package/dist/template/sidebar.d.ts +15 -0
  393. package/dist/template/sidebar.d.ts.map +1 -0
  394. package/dist/template/sidebar.js +229 -0
  395. package/dist/template/sidebar.js.map +1 -0
  396. package/dist/template.d.ts.map +1 -1
  397. package/dist/template.js +0 -13
  398. package/dist/template.js.map +1 -1
  399. package/dist/types.d.ts +4 -0
  400. package/dist/types.d.ts.map +1 -1
  401. package/package.json +17 -5
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/template/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { Settings } from "../settings/index.js";
2
+ export declare function renderSearchModal(settings: Settings): string;
3
+ export declare function renderSearchTrigger(settings: Settings): string;
4
+ export declare function getSearchInlineScript(): string;
5
+ //# sourceMappingURL=search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/template/search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CA2B5D;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAc9D;AAED,wBAAgB,qBAAqB,IAAI,MAAM,CAsM9C"}
@@ -0,0 +1,241 @@
1
+ export function renderSearchModal(settings) {
2
+ if (!settings.search.enabled) {
3
+ return "";
4
+ }
5
+ return `
6
+ <div id="search-modal" class="search-modal" style="display: none;">
7
+ <div class="search-overlay" onclick="closeSearch()"></div>
8
+ <div class="search-container">
9
+ <div class="search-header">
10
+ <input
11
+ type="text"
12
+ id="search-input"
13
+ class="search-input"
14
+ placeholder="${settings.search.placeholder}"
15
+ autocomplete="off"
16
+ />
17
+ <button class="search-close" onclick="closeSearch()">×</button>
18
+ </div>
19
+ <div id="search-results" class="search-results"></div>
20
+ <div class="search-footer">
21
+ <span>Press <kbd>Esc</kbd> to close</span>
22
+ <span><kbd>↑</kbd><kbd>↓</kbd> to navigate</span>
23
+ </div>
24
+ </div>
25
+ </div>
26
+ `;
27
+ }
28
+ export function renderSearchTrigger(settings) {
29
+ if (!settings.search.enabled) {
30
+ return "";
31
+ }
32
+ return `
33
+ <button class="search-trigger" onclick="openSearch()" title="Search (Cmd+K)">
34
+ <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
35
+ <path d="M7.33333 12.6667C10.2789 12.6667 12.6667 10.2789 12.6667 7.33333C12.6667 4.38781 10.2789 2 7.33333 2C4.38781 2 2 4.38781 2 7.33333C2 10.2789 4.38781 12.6667 7.33333 12.6667Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
36
+ <path d="M14 14L11.3333 11.3333" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
37
+ </svg>
38
+ <span class="search-shortcut">⌘K</span>
39
+ </button>
40
+ `;
41
+ }
42
+ export function getSearchInlineScript() {
43
+ return `
44
+ <script>
45
+ (function() {
46
+ let searchIndex = null;
47
+ let searchModal = null;
48
+ let searchInput = null;
49
+ let searchResults = null;
50
+ let selectedIndex = -1;
51
+
52
+ function init() {
53
+ searchModal = document.getElementById('search-modal');
54
+ searchInput = document.getElementById('search-input');
55
+ searchResults = document.getElementById('search-results');
56
+
57
+ if (!searchModal) return;
58
+
59
+ // Keyboard shortcuts
60
+ document.addEventListener('keydown', function(e) {
61
+ // Cmd/Ctrl + K
62
+ if ((e.metaKey || e.ctrlKey) && e.key === 'k') {
63
+ e.preventDefault();
64
+ openSearch();
65
+ }
66
+ // Escape
67
+ if (e.key === 'Escape' && searchModal.style.display === 'block') {
68
+ closeSearch();
69
+ }
70
+ // Arrow navigation
71
+ if (searchModal.style.display === 'block') {
72
+ if (e.key === 'ArrowDown') {
73
+ e.preventDefault();
74
+ moveSelection(1);
75
+ } else if (e.key === 'ArrowUp') {
76
+ e.preventDefault();
77
+ moveSelection(-1);
78
+ } else if (e.key === 'Enter') {
79
+ e.preventDefault();
80
+ selectResult();
81
+ }
82
+ }
83
+ });
84
+
85
+ // Input handler
86
+ if (searchInput) {
87
+ searchInput.addEventListener('input', debounce(performSearch, 150));
88
+ }
89
+
90
+ // Load search index
91
+ loadSearchIndex();
92
+ }
93
+
94
+ async function loadSearchIndex() {
95
+ try {
96
+ const res = await fetch('/search-index.json');
97
+ if (res.ok) {
98
+ searchIndex = await res.json();
99
+ }
100
+ } catch (e) {
101
+ console.error('Failed to load search index:', e);
102
+ }
103
+ }
104
+
105
+ window.openSearch = function() {
106
+ if (!searchModal) return;
107
+ searchModal.style.display = 'block';
108
+ document.body.style.overflow = 'hidden';
109
+ if (searchInput) {
110
+ searchInput.focus();
111
+ searchInput.select();
112
+ }
113
+ };
114
+
115
+ window.closeSearch = function() {
116
+ if (!searchModal) return;
117
+ searchModal.style.display = 'none';
118
+ document.body.style.overflow = '';
119
+ selectedIndex = -1;
120
+ if (searchInput) searchInput.value = '';
121
+ if (searchResults) searchResults.innerHTML = '';
122
+ };
123
+
124
+ function performSearch() {
125
+ const query = (searchInput?.value || '').toLowerCase().trim();
126
+ if (!query || !searchIndex) {
127
+ if (searchResults) searchResults.innerHTML = '';
128
+ return;
129
+ }
130
+
131
+ const results = searchIndex
132
+ .map(item => {
133
+ let score = 0;
134
+ const titleLower = item.title.toLowerCase();
135
+ const contentLower = item.content.toLowerCase();
136
+
137
+ // Title match is weighted higher
138
+ if (titleLower === query) score += 100;
139
+ else if (titleLower.startsWith(query)) score += 50;
140
+ else if (titleLower.includes(query)) score += 25;
141
+
142
+ // Content match
143
+ if (contentLower.includes(query)) score += 10;
144
+
145
+ // Heading match
146
+ if (item.headings.some(h => h.toLowerCase().includes(query))) score += 15;
147
+
148
+ return { item, score };
149
+ })
150
+ .filter(r => r.score > 0)
151
+ .sort((a, b) => b.score - a.score)
152
+ .slice(0, 10)
153
+ .map(r => r.item);
154
+
155
+ renderResults(results, query);
156
+ }
157
+
158
+ function renderResults(results, query) {
159
+ if (!searchResults) return;
160
+
161
+ if (results.length === 0) {
162
+ searchResults.innerHTML = '<div class="search-no-results">No results found</div>';
163
+ return;
164
+ }
165
+
166
+ const html = results.map((result, index) => {
167
+ const highlighted = highlightText(result.excerpt || result.content.slice(0, 200), query);
168
+ const selectedClass = index === 0 ? 'selected' : '';
169
+ return '<a href="' + result.href + '" class="search-result ' + selectedClass + '" data-index="' + index + '">' +
170
+ '<div class="search-result-title">' + escapeHtml(result.title) + '</div>' +
171
+ '<div class="search-result-excerpt">' + highlighted + '</div>' +
172
+ '</a>';
173
+ }).join('');
174
+
175
+ searchResults.innerHTML = html;
176
+ selectedIndex = results.length > 0 ? 0 : -1;
177
+
178
+ // Add click handlers
179
+ searchResults.querySelectorAll('.search-result').forEach(el => {
180
+ el.addEventListener('click', function(e) {
181
+ if (e.target.tagName !== 'A') {
182
+ const href = this.getAttribute('href');
183
+ if (href) window.location.href = href;
184
+ }
185
+ });
186
+ });
187
+ }
188
+
189
+ function highlightText(text, query) {
190
+ if (!query) return escapeHtml(text);
191
+ const regex = new RegExp('(' + escapeRegex(query) + ')', 'gi');
192
+ return escapeHtml(text).replace(regex, '<mark>$1</mark>');
193
+ }
194
+
195
+ function escapeRegex(string) {
196
+ var special = /[\\^$.*+?()[\]{}|]/g;
197
+ return string.replace(special, '\\$&');
198
+ }
199
+
200
+ function escapeHtml(text) {
201
+ const div = document.createElement('div');
202
+ div.textContent = text;
203
+ return div.innerHTML;
204
+ }
205
+
206
+ function moveSelection(delta) {
207
+ const items = searchResults?.querySelectorAll('.search-result');
208
+ if (!items || items.length === 0) return;
209
+
210
+ items[selectedIndex]?.classList.remove('selected');
211
+ selectedIndex = (selectedIndex + delta + items.length) % items.length;
212
+ items[selectedIndex]?.classList.add('selected');
213
+ items[selectedIndex]?.scrollIntoView({ block: 'nearest' });
214
+ }
215
+
216
+ function selectResult() {
217
+ const items = searchResults?.querySelectorAll('.search-result');
218
+ if (items && items[selectedIndex]) {
219
+ const href = items[selectedIndex].getAttribute('href');
220
+ if (href) window.location.href = href;
221
+ }
222
+ }
223
+
224
+ function debounce(fn, wait) {
225
+ let timeout;
226
+ return function(...args) {
227
+ clearTimeout(timeout);
228
+ timeout = setTimeout(() => fn.apply(this, args), wait);
229
+ };
230
+ }
231
+
232
+ if (document.readyState === 'loading') {
233
+ document.addEventListener('DOMContentLoaded', init);
234
+ } else {
235
+ init();
236
+ }
237
+ })();
238
+ </script>
239
+ `;
240
+ }
241
+ //# sourceMappingURL=search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/template/search.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,iBAAiB,CAAC,QAAkB;IAClD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QAC7B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO;;;;;;;;;uBASc,QAAQ,CAAC,MAAM,CAAC,WAAW;;;;;;;;;;;;CAYjD,CAAC;AACF,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,QAAkB;IACpD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QAC7B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO;;;;;;;;CAQR,CAAC;AACF,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoMR,CAAC;AACF,CAAC"}
@@ -0,0 +1,13 @@
1
+ import type { Settings } from "../settings/index.js";
2
+ export interface SeoData {
3
+ title: string;
4
+ description?: string;
5
+ image?: string;
6
+ url?: string;
7
+ type?: "website" | "article";
8
+ date?: string;
9
+ author?: string;
10
+ noIndex?: boolean;
11
+ }
12
+ export declare function buildSeoTags(data: SeoData, settings: Settings): string;
13
+ //# sourceMappingURL=seo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seo.d.ts","sourceRoot":"","sources":["../../src/template/seo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAyBD,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,GAAG,MAAM,CA0EtE"}
@@ -0,0 +1,71 @@
1
+ function escapeHtml(text) {
2
+ const htmlEscapes = {
3
+ "&": "&amp;",
4
+ "<": "&lt;",
5
+ ">": "&gt;",
6
+ '"': "&quot;",
7
+ "'": "&#x27;",
8
+ };
9
+ return text.replace(/[&<>"']/g, (char) => htmlEscapes[char] || char);
10
+ }
11
+ function resolveImageUrl(image, settings) {
12
+ if (image.startsWith("http://") || image.startsWith("https://")) {
13
+ return image;
14
+ }
15
+ if (settings.site.baseUrl) {
16
+ const base = settings.site.baseUrl.replace(/\/$/, "");
17
+ const path = image.startsWith("/") ? image : `/${image}`;
18
+ return `${base}${path}`;
19
+ }
20
+ return image;
21
+ }
22
+ export function buildSeoTags(data, settings) {
23
+ const title = settings.seo.titleTemplate.replace("%s", data.title);
24
+ const image = data.image ?? settings.seo.defaultImage;
25
+ const description = data.description ?? settings.site.description ?? "";
26
+ const tags = [];
27
+ // Basic meta
28
+ tags.push(`<title>${escapeHtml(title)}</title>`);
29
+ tags.push(`<meta name="description" content="${escapeHtml(description)}">`);
30
+ if (data.noIndex || settings.seo.noIndex) {
31
+ tags.push('<meta name="robots" content="noindex">');
32
+ }
33
+ // Open Graph
34
+ tags.push(`<meta property="og:title" content="${escapeHtml(title)}">`);
35
+ tags.push(`<meta property="og:description" content="${escapeHtml(description)}">`);
36
+ tags.push(`<meta property="og:type" content="${data.type ?? "website"}">`);
37
+ if (data.url) {
38
+ tags.push(`<meta property="og:url" content="${data.url}">`);
39
+ }
40
+ if (image) {
41
+ tags.push(`<meta property="og:image" content="${resolveImageUrl(image, settings)}">`);
42
+ }
43
+ // Twitter Card
44
+ tags.push(`<meta name="twitter:card" content="${settings.seo.twitterCard}">`);
45
+ if (settings.seo.twitterSite) {
46
+ tags.push(`<meta name="twitter:site" content="${settings.seo.twitterSite}">`);
47
+ }
48
+ tags.push(`<meta name="twitter:title" content="${escapeHtml(title)}">`);
49
+ if (image) {
50
+ tags.push(`<meta name="twitter:image" content="${resolveImageUrl(image, settings)}">`);
51
+ }
52
+ // Article meta
53
+ if (data.date) {
54
+ tags.push(`<meta property="article:published_time" content="${data.date}">`);
55
+ }
56
+ if (data.author) {
57
+ tags.push(`<meta property="article:author" content="${data.author}">`);
58
+ }
59
+ // Canonical & Sitemap
60
+ if (data.url && settings.site.baseUrl) {
61
+ tags.push(`<link rel="canonical" href="${data.url}">`);
62
+ }
63
+ if (settings.seo.generateSitemap) {
64
+ tags.push('<link rel="sitemap" type="application/xml" href="/sitemap.xml">');
65
+ }
66
+ if (settings.seo.generateRssFeed) {
67
+ tags.push('<link rel="alternate" type="application/rss+xml" href="/feed.xml">');
68
+ }
69
+ return tags.join("\n ");
70
+ }
71
+ //# sourceMappingURL=seo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seo.js","sourceRoot":"","sources":["../../src/template/seo.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { Settings } from "../settings/index.js";
2
+ import type { TocItem } from "../renderer/markdown.js";
3
+ export interface NavItem {
4
+ title: string;
5
+ href: string;
6
+ children?: NavItem[];
7
+ active?: boolean;
8
+ type: "file" | "dir";
9
+ order?: number;
10
+ sortBy: string;
11
+ }
12
+ export declare function buildSidebar(rootDir: string, currentPath: string, settings: Settings): Promise<NavItem[]>;
13
+ export declare function renderSidebar(items: NavItem[], settings: Settings, level?: number): string;
14
+ export declare function renderToc(toc: TocItem[], settings: Settings): string;
15
+ //# sourceMappingURL=sidebar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sidebar.d.ts","sourceRoot":"","sources":["../../src/template/sidebar.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAEvD,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAqHD,wBAAsB,YAAY,CAChC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,OAAO,EAAE,CAAC,CA2CpB;AAED,wBAAgB,aAAa,CAC3B,KAAK,EAAE,OAAO,EAAE,EAChB,QAAQ,EAAE,QAAQ,EAClB,KAAK,SAAI,GACR,MAAM,CAmCR;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,GAAG,MAAM,CA8EpE"}
@@ -0,0 +1,229 @@
1
+ import path from "node:path";
2
+ import { promises as fs } from "node:fs";
3
+ // Extract title from content (first h1 or frontmatter)
4
+ async function extractTitle(filePath, settings) {
5
+ try {
6
+ const content = await fs.readFile(filePath, "utf-8");
7
+ // Check frontmatter for title
8
+ const frontmatterMatch = content.match(/^---\n([\s\S]*?)\n---/);
9
+ if (frontmatterMatch) {
10
+ const titleMatch = frontmatterMatch[1].match(/^title:\s*(.+)$/m);
11
+ if (titleMatch) {
12
+ return titleMatch[1].trim().replace(/^["']|["']$/g, "");
13
+ }
14
+ }
15
+ // Check for first h1
16
+ const h1Match = content.match(/^#\s+(.+)$/m);
17
+ if (h1Match) {
18
+ return h1Match[1].trim();
19
+ }
20
+ }
21
+ catch {
22
+ // Fall through to filename
23
+ }
24
+ // Humanize filename
25
+ const basename = path.basename(filePath, path.extname(filePath));
26
+ return humanizeFilename(basename);
27
+ }
28
+ function humanizeFilename(filename) {
29
+ return filename
30
+ .replace(/[-_]/g, " ")
31
+ .replace(/\.\w+$/, "")
32
+ .replace(/^\w/, (c) => c.toUpperCase());
33
+ }
34
+ function isHidden(filePath, settings) {
35
+ const basename = path.basename(filePath);
36
+ // Check hidden patterns
37
+ for (const pattern of settings.files.extensions.hidden) {
38
+ if (basename === pattern)
39
+ return true;
40
+ if (pattern.startsWith("*") && basename.endsWith(pattern.slice(1)))
41
+ return true;
42
+ if (pattern.endsWith("/*") && filePath.includes(pattern.slice(0, -1)))
43
+ return true;
44
+ }
45
+ // Files starting with _ are hidden
46
+ if (basename.startsWith("_"))
47
+ return true;
48
+ return false;
49
+ }
50
+ async function readDirRecursive(dirPath, rootDir, currentPath, settings) {
51
+ const entries = await fs.readdir(dirPath, { withFileTypes: true });
52
+ const items = [];
53
+ for (const entry of entries) {
54
+ const fullPath = path.join(dirPath, entry.name);
55
+ const relativePath = "/" + path.relative(rootDir, fullPath).replace(/\\/g, "/");
56
+ if (isHidden(fullPath, settings))
57
+ continue;
58
+ if (entry.isDirectory()) {
59
+ const children = await readDirRecursive(fullPath, rootDir, currentPath, settings);
60
+ if (children.length > 0) {
61
+ items.push({
62
+ title: humanizeFilename(entry.name),
63
+ href: relativePath + "/",
64
+ children,
65
+ type: "dir",
66
+ sortBy: entry.name.toLowerCase(),
67
+ });
68
+ }
69
+ }
70
+ else if (entry.name.endsWith(".md") ||
71
+ (entry.name.endsWith(".mdx") && settings.mdx.enabled)) {
72
+ // Skip README files - they are rendered as directory index
73
+ const baseName = entry.name.replace(/\.(md|mdx)$/i, "").toLowerCase();
74
+ if (baseName === "readme")
75
+ continue;
76
+ const title = await extractTitle(fullPath, settings);
77
+ const href = relativePath.replace(/\.(md|mdx)$/, "");
78
+ items.push({
79
+ title,
80
+ href,
81
+ type: "file",
82
+ sortBy: baseName.toLowerCase(),
83
+ });
84
+ }
85
+ }
86
+ // Sort: folders first, then alphabetically by filename/folder name
87
+ return items.sort((a, b) => {
88
+ if (a.type === "dir" && b.type !== "dir")
89
+ return -1;
90
+ if (a.type !== "dir" && b.type === "dir")
91
+ return 1;
92
+ return a.sortBy.localeCompare(b.sortBy);
93
+ });
94
+ }
95
+ export async function buildSidebar(rootDir, currentPath, settings) {
96
+ if (!settings.navigation.sidebar.enabled) {
97
+ return [];
98
+ }
99
+ const items = await readDirRecursive(rootDir, rootDir, currentPath, settings);
100
+ // Check for root README.md and add Home item
101
+ const readmePath = path.join(rootDir, "README.md");
102
+ try {
103
+ await fs.access(readmePath);
104
+ const title = await extractTitle(readmePath, settings);
105
+ // Insert Home at the beginning
106
+ items.unshift({
107
+ title: title || "Home",
108
+ href: "/",
109
+ type: "file",
110
+ sortBy: "",
111
+ });
112
+ }
113
+ catch {
114
+ // No README.md at root
115
+ }
116
+ // Mark active item - only exact match, not parent paths
117
+ function markActive(items) {
118
+ for (const item of items) {
119
+ const isRoot = item.href === "/";
120
+ const isExactMatch = item.href === currentPath;
121
+ // Only exact match, no parent path highlighting
122
+ const isActive = isRoot
123
+ ? currentPath === "/" || currentPath === ""
124
+ : isExactMatch;
125
+ if (isActive) {
126
+ item.active = true;
127
+ }
128
+ if (item.children) {
129
+ markActive(item.children);
130
+ }
131
+ }
132
+ }
133
+ markActive(items);
134
+ return items;
135
+ }
136
+ export function renderSidebar(items, settings, level = 0) {
137
+ if (items.length === 0)
138
+ return "";
139
+ const indent = " ".repeat(level * 2);
140
+ const lines = [];
141
+ lines.push(`${indent}<ul class="sidebar-nav" data-level="${level}">`);
142
+ for (const item of items) {
143
+ const hasChildren = item.children && item.children.length > 0;
144
+ const activeClass = item.active ? " active" : "";
145
+ const folderClass = item.type === "dir" ? " folder" : "";
146
+ lines.push(`${indent} <li class="nav-item${activeClass}${folderClass}" data-type="${item.type}">`);
147
+ const icon = item.type === "dir" ? "📁" : "📄";
148
+ lines.push(`${indent} <a href="${item.href}" class="nav-link${activeClass}">${icon} ${escapeHtml(item.title)}</a>`);
149
+ if (hasChildren && settings.navigation.sidebar.defaultOpen) {
150
+ lines.push(`${indent} <div class="nav-children">`);
151
+ lines.push(renderSidebar(item.children, settings, level + 1));
152
+ lines.push(`${indent} </div>`);
153
+ }
154
+ lines.push(`${indent} </li>`);
155
+ }
156
+ lines.push(`${indent}</ul>`);
157
+ return lines.join("\n");
158
+ }
159
+ export function renderToc(toc, settings) {
160
+ if (!settings.navigation.tocEnabled || toc.length === 0) {
161
+ return "";
162
+ }
163
+ const filtered = toc.filter((item) => item.level <= settings.navigation.tocMaxDepth);
164
+ if (filtered.length === 0)
165
+ return "";
166
+ const lines = [];
167
+ lines.push('<nav class="toc">');
168
+ lines.push(" <h3>On this page</h3>");
169
+ // Build nested tree structure from flat TOC array
170
+ function buildTree(items, startLevel = 1) {
171
+ const result = [];
172
+ let i = 0;
173
+ while (i < items.length) {
174
+ const item = items[i];
175
+ if (item.level < startLevel) {
176
+ // Stop when we hit a higher-level heading
177
+ break;
178
+ }
179
+ if (item.level === startLevel) {
180
+ // This is a sibling at current level
181
+ const newItem = { ...item, children: [] };
182
+ // Find its children (higher levels until next sibling or parent)
183
+ const childStart = i + 1;
184
+ let childEnd = childStart;
185
+ while (childEnd < items.length && items[childEnd].level > startLevel) {
186
+ childEnd++;
187
+ }
188
+ newItem.children = buildTree(items.slice(childStart, childEnd), startLevel + 1);
189
+ result.push(newItem);
190
+ i = childEnd;
191
+ }
192
+ else {
193
+ // Skip items that are deeper than current level (they'll be handled as children)
194
+ i++;
195
+ }
196
+ }
197
+ return result;
198
+ }
199
+ function renderTocTree(items, level) {
200
+ if (items.length === 0)
201
+ return "";
202
+ const subLines = [];
203
+ subLines.push(`<ul class="toc-list toc-level-${level}">`);
204
+ for (const item of items) {
205
+ const hasChildren = item.children && item.children.length > 0;
206
+ subLines.push(`<li class="toc-item"><a href="#${item.slug}">${escapeHtml(item.text)}</a></li>`);
207
+ if (hasChildren) {
208
+ subLines.push(renderTocTree(item.children, level + 1));
209
+ }
210
+ }
211
+ subLines.push("</ul>");
212
+ return subLines.join("\n");
213
+ }
214
+ const tree = buildTree(filtered, 1);
215
+ lines.push(renderTocTree(tree, 1));
216
+ lines.push("</nav>");
217
+ return lines.join("\n");
218
+ }
219
+ function escapeHtml(text) {
220
+ const htmlEscapes = {
221
+ "&": "&amp;",
222
+ "<": "&lt;",
223
+ ">": "&gt;",
224
+ '"': "&quot;",
225
+ "'": "&#x27;",
226
+ };
227
+ return text.replace(/[&<>"']/g, (char) => htmlEscapes[char] || char);
228
+ }
229
+ //# sourceMappingURL=sidebar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sidebar.js","sourceRoot":"","sources":["../../src/template/sidebar.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../src/template.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAC,MAAM,EAAE;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,MAAM,CAiLT"}
1
+ {"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../src/template.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAC,MAAM,EAAE;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,MAAM,CAoKT"}
package/dist/template.js CHANGED
@@ -143,19 +143,6 @@ export function wrapHtml(params) {
143
143
  @media (max-width: 480px) {
144
144
  .container { margin: 8px; padding: 16px; }
145
145
  }
146
- /* Syntax highlighting colors for dark code blocks */
147
- .hljs-keyword { color: #ff7b72; }
148
- .hljs-string { color: #a5d6ff; }
149
- .hljs-number { color: #79c0ff; }
150
- .hljs-comment { color: #8b949e; font-style: italic; }
151
- .hljs-function { color: #d2a8ff; }
152
- .hljs-class { color: #ffa657; }
153
- .hljs-variable { color: #ffa657; }
154
- .hljs-operator { color: #ff7b72; }
155
- .hljs-punctuation { color: #c9d1d9; }
156
- .hljs-property { color: #79c0ff; }
157
- .hljs-tag { color: #7ee787; }
158
- .hljs-attr { color: #79c0ff; }
159
146
  </style>
160
147
  </head>
161
148
  <body>