@md-plugins/quasar-app-extension-q-press 0.1.0-beta.2 → 0.1.0-beta.21

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 (253) hide show
  1. package/README.md +20 -15
  2. package/dist/index.js +41 -7
  3. package/dist/install.js +7 -5
  4. package/dist/q-press-globals.d.ts +49 -0
  5. package/dist/templates/init/src/_q-press/api/components/MarkdownCode.json +2 -2
  6. package/dist/templates/init/src/_q-press/api/components/MarkdownCodepen.json +6 -9
  7. package/dist/templates/init/src/_q-press/api/components/MarkdownExample.json +27 -2
  8. package/dist/templates/init/src/_q-press/components/MarkdownApi.vue +129 -84
  9. package/dist/templates/init/src/_q-press/components/MarkdownCardLink.vue +1 -1
  10. package/dist/templates/init/src/_q-press/components/MarkdownCardTitle.vue +1 -1
  11. package/dist/templates/init/src/_q-press/components/MarkdownCode.vue +71 -3
  12. package/dist/templates/init/src/_q-press/components/MarkdownCodepen.vue +316 -59
  13. package/dist/templates/init/src/_q-press/components/MarkdownCopyButton.vue +1 -1
  14. package/dist/templates/init/src/_q-press/components/MarkdownExample.vue +54 -19
  15. package/dist/templates/init/src/_q-press/components/MarkdownLink.vue +5 -5
  16. package/dist/templates/init/src/_q-press/components/MarkdownMermaid.vue +123 -0
  17. package/dist/templates/init/src/_q-press/components/MarkdownTree.vue +2 -2
  18. package/dist/templates/init/src/_q-press/components/markdown-utils.ts +27 -3
  19. package/dist/templates/init/src/_q-press/css/app.scss +38 -26
  20. package/dist/templates/init/src/_q-press/css/code-theme.scss +634 -0
  21. package/dist/templates/init/src/_q-press/css/themes/default.scss +1 -1
  22. package/dist/templates/init/src/_q-press/css/themes/evergreen.scss +69 -0
  23. package/dist/templates/init/src/_q-press/css/themes/mystic.scss +1 -1
  24. package/dist/templates/init/src/_q-press/css/themes/newspaper.scss +1 -1
  25. package/dist/templates/init/src/_q-press/css/themes/sunrise.scss +1 -1
  26. package/dist/templates/init/src/_q-press/css/themes/tawny.scss +1 -1
  27. package/dist/templates/init/src/_q-press/layouts/MarkdownDrawerSidebar.vue +1 -1
  28. package/dist/templates/init/src/_q-press/layouts/MarkdownDrawerToc.vue +1 -1
  29. package/dist/templates/init/src/_q-press/layouts/MarkdownHeader.vue +1 -1
  30. package/dist/templates/init/src/_q-press/layouts/MarkdownLayout.vue +2 -2
  31. package/dist/templates/init/src/_q-press/layouts/MarkdownPage.vue +4 -3
  32. package/dist/templates/init/src/_q-press/layouts/MarkdownSearch.vue +1 -1
  33. package/dist/templates/init/src/_q-press/stores/markdown.ts +1 -2
  34. package/dist/templates/init/src/components/LandingPage/LandingPage.vue +15 -1
  35. package/dist/templates/init/src/components/QPressThemeGallery.vue +336 -0
  36. package/dist/templates/init/src/components/page-parts/releases/GitHubReleases.vue +121 -0
  37. package/dist/templates/init/src/components/page-parts/releases/PackageReleases.vue +191 -0
  38. package/dist/templates/init/src/components/page-parts/releases/md-table-parser.ts +52 -0
  39. package/dist/templates/init/src/components/page-parts/releases/sanitize.ts +132 -0
  40. package/dist/templates/init/src/markdown/__elements.md +8 -8
  41. package/dist/templates/init/src/markdown/__elements2.md +4 -4
  42. package/dist/templates/init/src/markdown/faq/best-practices.md +27 -0
  43. package/dist/templates/init/src/markdown/faq/general.md +27 -0
  44. package/dist/templates/init/src/markdown/faq/troubleshooting.md +27 -0
  45. package/dist/templates/init/src/markdown/getting-started/introduction.md +7 -5
  46. package/dist/templates/init/src/markdown/md-plugins/blockquote/overview.md +3 -1
  47. package/dist/templates/init/src/markdown/md-plugins/codeblocks/advanced.md +19 -15
  48. package/dist/templates/init/src/markdown/md-plugins/codeblocks/overview.md +45 -8
  49. package/dist/templates/init/src/markdown/md-plugins/containers/overview.md +3 -1
  50. package/dist/templates/init/src/markdown/md-plugins/frontmatter/overview.md +3 -1
  51. package/dist/templates/init/src/markdown/md-plugins/headers/overview.md +3 -1
  52. package/dist/templates/init/src/markdown/md-plugins/image/overview.md +3 -1
  53. package/dist/templates/init/src/markdown/md-plugins/imports/overview.md +3 -1
  54. package/dist/templates/init/src/markdown/md-plugins/inline-code/overview.md +3 -1
  55. package/dist/templates/init/src/markdown/md-plugins/link/advanced.md +2 -2
  56. package/dist/templates/init/src/markdown/md-plugins/link/overview.md +6 -4
  57. package/dist/templates/init/src/markdown/md-plugins/mermaid/advanced.md +69 -0
  58. package/dist/templates/init/src/markdown/md-plugins/mermaid/overview.md +73 -0
  59. package/dist/templates/init/src/markdown/md-plugins/shared/overview.md +28 -13
  60. package/dist/templates/init/src/markdown/md-plugins/table/overview.md +3 -1
  61. package/dist/templates/init/src/markdown/md-plugins/title/overview.md +3 -1
  62. package/dist/templates/init/src/markdown/other/contact.md +37 -0
  63. package/dist/templates/init/src/markdown/other/contributing/bugs-and-feature-requests.md +33 -0
  64. package/dist/templates/init/src/markdown/other/contributing/call-to-action.md +25 -0
  65. package/dist/templates/init/src/markdown/other/contributing/documentation.md +31 -0
  66. package/dist/templates/init/src/markdown/other/contributing/overview.md +41 -0
  67. package/dist/templates/init/src/markdown/other/contributing/packages.md +28 -0
  68. package/dist/templates/init/src/markdown/other/contributing/sponsor.md +23 -0
  69. package/dist/templates/init/src/markdown/other/faq.md +179 -0
  70. package/dist/templates/init/src/markdown/other/releases.md +11 -0
  71. package/dist/templates/init/src/markdown/other/upgrade-guide.md +165 -0
  72. package/dist/templates/init/src/markdown/quasar-app-extensions/qpress/advanced.md +11 -3
  73. package/dist/templates/init/src/markdown/quasar-app-extensions/qpress/components.md +25 -29
  74. package/dist/templates/init/src/markdown/quasar-app-extensions/qpress/overview.md +20 -20
  75. package/dist/templates/init/src/markdown/quasar-app-extensions/qpress/site-config.md +17 -3
  76. package/dist/templates/init/src/markdown/quasar-app-extensions/qpress/themes.md +101 -9
  77. package/dist/templates/init/src/markdown/quasar-app-extensions/vite-md-plugin-app-ext/advanced.md +158 -0
  78. package/dist/templates/init/src/markdown/quasar-app-extensions/vite-md-plugin-app-ext/overview.md +1 -1
  79. package/dist/templates/init/src/markdown/vite-plugins/vite-examples-plugin/advanced.md +8 -3
  80. package/dist/templates/init/src/markdown/vite-plugins/vite-examples-plugin/overview.md +19 -5
  81. package/dist/templates/init/src/markdown/vite-plugins/vite-md-plugin/advanced.md +84 -54
  82. package/dist/templates/init/src/markdown/vite-plugins/vite-md-plugin/overview.md +19 -3
  83. package/dist/templates/init/src/siteConfig/index.ts +52 -23
  84. package/dist/templates/update/src/_q-press/api/components/MarkdownCode.json +2 -2
  85. package/dist/templates/update/src/_q-press/api/components/MarkdownCodepen.json +6 -9
  86. package/dist/templates/update/src/_q-press/api/components/MarkdownExample.json +27 -2
  87. package/dist/templates/update/src/_q-press/components/MarkdownApi.vue +129 -84
  88. package/dist/templates/update/src/_q-press/components/MarkdownCardLink.vue +1 -1
  89. package/dist/templates/update/src/_q-press/components/MarkdownCardTitle.vue +1 -1
  90. package/dist/templates/update/src/_q-press/components/MarkdownCode.vue +71 -3
  91. package/dist/templates/update/src/_q-press/components/MarkdownCodepen.vue +316 -59
  92. package/dist/templates/update/src/_q-press/components/MarkdownCopyButton.vue +1 -1
  93. package/dist/templates/update/src/_q-press/components/MarkdownExample.vue +54 -19
  94. package/dist/templates/update/src/_q-press/components/MarkdownLink.vue +5 -5
  95. package/dist/templates/update/src/_q-press/components/MarkdownMermaid.vue +123 -0
  96. package/dist/templates/update/src/_q-press/components/MarkdownTree.vue +2 -2
  97. package/dist/templates/update/src/_q-press/components/markdown-utils.ts +27 -3
  98. package/dist/templates/update/src/_q-press/css/app.scss +38 -26
  99. package/dist/templates/update/src/_q-press/css/code-theme.scss +634 -0
  100. package/dist/templates/update/src/_q-press/css/themes/default.scss +1 -1
  101. package/dist/templates/update/src/_q-press/css/themes/evergreen.scss +69 -0
  102. package/dist/templates/update/src/_q-press/css/themes/mystic.scss +1 -1
  103. package/dist/templates/update/src/_q-press/css/themes/newspaper.scss +1 -1
  104. package/dist/templates/update/src/_q-press/css/themes/sunrise.scss +1 -1
  105. package/dist/templates/update/src/_q-press/css/themes/tawny.scss +1 -1
  106. package/dist/templates/update/src/_q-press/layouts/MarkdownDrawerSidebar.vue +1 -1
  107. package/dist/templates/update/src/_q-press/layouts/MarkdownDrawerToc.vue +1 -1
  108. package/dist/templates/update/src/_q-press/layouts/MarkdownHeader.vue +1 -1
  109. package/dist/templates/update/src/_q-press/layouts/MarkdownLayout.vue +2 -2
  110. package/dist/templates/update/src/_q-press/layouts/MarkdownPage.vue +4 -3
  111. package/dist/templates/update/src/_q-press/layouts/MarkdownSearch.vue +1 -1
  112. package/dist/templates/update/src/_q-press/stores/markdown.ts +1 -2
  113. package/package.json +22 -21
  114. package/src/index.ts +80 -11
  115. package/src/install.ts +10 -9
  116. package/src/q-press-globals.d.ts +49 -0
  117. package/src/templates/init/src/_q-press/api/components/MarkdownCode.json +2 -2
  118. package/src/templates/init/src/_q-press/api/components/MarkdownCodepen.json +6 -9
  119. package/src/templates/init/src/_q-press/api/components/MarkdownExample.json +27 -2
  120. package/src/templates/init/src/_q-press/components/MarkdownApi.vue +129 -84
  121. package/src/templates/init/src/_q-press/components/MarkdownCardLink.vue +1 -1
  122. package/src/templates/init/src/_q-press/components/MarkdownCardTitle.vue +1 -1
  123. package/src/templates/init/src/_q-press/components/MarkdownCode.vue +71 -3
  124. package/src/templates/init/src/_q-press/components/MarkdownCodepen.vue +316 -59
  125. package/src/templates/init/src/_q-press/components/MarkdownCopyButton.vue +1 -1
  126. package/src/templates/init/src/_q-press/components/MarkdownExample.vue +54 -19
  127. package/src/templates/init/src/_q-press/components/MarkdownLink.vue +5 -5
  128. package/src/templates/init/src/_q-press/components/MarkdownMermaid.vue +123 -0
  129. package/src/templates/init/src/_q-press/components/MarkdownTree.vue +2 -2
  130. package/src/templates/init/src/_q-press/components/markdown-utils.ts +27 -3
  131. package/src/templates/init/src/_q-press/css/app.scss +38 -26
  132. package/src/templates/init/src/_q-press/css/code-theme.scss +634 -0
  133. package/src/templates/init/src/_q-press/css/themes/default.scss +1 -1
  134. package/src/templates/init/src/_q-press/css/themes/evergreen.scss +69 -0
  135. package/src/templates/init/src/_q-press/css/themes/mystic.scss +1 -1
  136. package/src/templates/init/src/_q-press/css/themes/newspaper.scss +1 -1
  137. package/src/templates/init/src/_q-press/css/themes/sunrise.scss +1 -1
  138. package/src/templates/init/src/_q-press/css/themes/tawny.scss +1 -1
  139. package/src/templates/init/src/_q-press/layouts/MarkdownDrawerSidebar.vue +1 -1
  140. package/src/templates/init/src/_q-press/layouts/MarkdownDrawerToc.vue +1 -1
  141. package/src/templates/init/src/_q-press/layouts/MarkdownHeader.vue +1 -1
  142. package/src/templates/init/src/_q-press/layouts/MarkdownLayout.vue +2 -2
  143. package/src/templates/init/src/_q-press/layouts/MarkdownPage.vue +4 -3
  144. package/src/templates/init/src/_q-press/layouts/MarkdownSearch.vue +1 -1
  145. package/src/templates/init/src/_q-press/stores/markdown.ts +1 -2
  146. package/src/templates/init/src/components/LandingPage/LandingPage.vue +15 -1
  147. package/src/templates/init/src/components/QPressThemeGallery.vue +336 -0
  148. package/src/templates/init/src/components/page-parts/releases/GitHubReleases.vue +121 -0
  149. package/src/templates/init/src/components/page-parts/releases/PackageReleases.vue +191 -0
  150. package/src/templates/init/src/components/page-parts/releases/md-table-parser.ts +52 -0
  151. package/src/templates/init/src/components/page-parts/releases/sanitize.ts +132 -0
  152. package/src/templates/init/src/markdown/__elements.md +8 -8
  153. package/src/templates/init/src/markdown/__elements2.md +4 -4
  154. package/src/templates/init/src/markdown/faq/best-practices.md +27 -0
  155. package/src/templates/init/src/markdown/faq/general.md +27 -0
  156. package/src/templates/init/src/markdown/faq/troubleshooting.md +27 -0
  157. package/src/templates/init/src/markdown/getting-started/introduction.md +7 -5
  158. package/src/templates/init/src/markdown/md-plugins/blockquote/overview.md +3 -1
  159. package/src/templates/init/src/markdown/md-plugins/codeblocks/advanced.md +19 -15
  160. package/src/templates/init/src/markdown/md-plugins/codeblocks/overview.md +45 -8
  161. package/src/templates/init/src/markdown/md-plugins/containers/overview.md +3 -1
  162. package/src/templates/init/src/markdown/md-plugins/frontmatter/overview.md +3 -1
  163. package/src/templates/init/src/markdown/md-plugins/headers/overview.md +3 -1
  164. package/src/templates/init/src/markdown/md-plugins/image/overview.md +3 -1
  165. package/src/templates/init/src/markdown/md-plugins/imports/overview.md +3 -1
  166. package/src/templates/init/src/markdown/md-plugins/inline-code/overview.md +3 -1
  167. package/src/templates/init/src/markdown/md-plugins/link/advanced.md +2 -2
  168. package/src/templates/init/src/markdown/md-plugins/link/overview.md +6 -4
  169. package/src/templates/init/src/markdown/md-plugins/mermaid/advanced.md +69 -0
  170. package/src/templates/init/src/markdown/md-plugins/mermaid/overview.md +73 -0
  171. package/src/templates/init/src/markdown/md-plugins/shared/overview.md +28 -13
  172. package/src/templates/init/src/markdown/md-plugins/table/overview.md +3 -1
  173. package/src/templates/init/src/markdown/md-plugins/title/overview.md +3 -1
  174. package/src/templates/init/src/markdown/other/contact.md +37 -0
  175. package/src/templates/init/src/markdown/other/contributing/bugs-and-feature-requests.md +33 -0
  176. package/src/templates/init/src/markdown/other/contributing/call-to-action.md +25 -0
  177. package/src/templates/init/src/markdown/other/contributing/documentation.md +31 -0
  178. package/src/templates/init/src/markdown/other/contributing/overview.md +41 -0
  179. package/src/templates/init/src/markdown/other/contributing/packages.md +28 -0
  180. package/src/templates/init/src/markdown/other/contributing/sponsor.md +23 -0
  181. package/src/templates/init/src/markdown/other/faq.md +179 -0
  182. package/src/templates/init/src/markdown/other/releases.md +11 -0
  183. package/src/templates/init/src/markdown/other/upgrade-guide.md +165 -0
  184. package/src/templates/init/src/markdown/quasar-app-extensions/qpress/advanced.md +11 -3
  185. package/src/templates/init/src/markdown/quasar-app-extensions/qpress/components.md +25 -29
  186. package/src/templates/init/src/markdown/quasar-app-extensions/qpress/overview.md +20 -20
  187. package/src/templates/init/src/markdown/quasar-app-extensions/qpress/site-config.md +17 -3
  188. package/src/templates/init/src/markdown/quasar-app-extensions/qpress/themes.md +101 -9
  189. package/src/templates/init/src/markdown/quasar-app-extensions/vite-md-plugin-app-ext/advanced.md +158 -0
  190. package/src/templates/init/src/markdown/quasar-app-extensions/vite-md-plugin-app-ext/overview.md +1 -1
  191. package/src/templates/init/src/markdown/vite-plugins/vite-examples-plugin/advanced.md +8 -3
  192. package/src/templates/init/src/markdown/vite-plugins/vite-examples-plugin/overview.md +19 -5
  193. package/src/templates/init/src/markdown/vite-plugins/vite-md-plugin/advanced.md +84 -54
  194. package/src/templates/init/src/markdown/vite-plugins/vite-md-plugin/overview.md +19 -3
  195. package/src/templates/init/src/siteConfig/index.ts +52 -23
  196. package/src/templates/update/src/_q-press/api/components/MarkdownCode.json +2 -2
  197. package/src/templates/update/src/_q-press/api/components/MarkdownCodepen.json +6 -9
  198. package/src/templates/update/src/_q-press/api/components/MarkdownExample.json +27 -2
  199. package/src/templates/update/src/_q-press/components/MarkdownApi.vue +129 -84
  200. package/src/templates/update/src/_q-press/components/MarkdownCardLink.vue +1 -1
  201. package/src/templates/update/src/_q-press/components/MarkdownCardTitle.vue +1 -1
  202. package/src/templates/update/src/_q-press/components/MarkdownCode.vue +71 -3
  203. package/src/templates/update/src/_q-press/components/MarkdownCodepen.vue +316 -59
  204. package/src/templates/update/src/_q-press/components/MarkdownCopyButton.vue +1 -1
  205. package/src/templates/update/src/_q-press/components/MarkdownExample.vue +54 -19
  206. package/src/templates/update/src/_q-press/components/MarkdownLink.vue +5 -5
  207. package/src/templates/update/src/_q-press/components/MarkdownMermaid.vue +123 -0
  208. package/src/templates/update/src/_q-press/components/MarkdownTree.vue +2 -2
  209. package/src/templates/update/src/_q-press/components/markdown-utils.ts +27 -3
  210. package/src/templates/update/src/_q-press/css/app.scss +38 -26
  211. package/src/templates/update/src/_q-press/css/code-theme.scss +634 -0
  212. package/src/templates/update/src/_q-press/css/themes/default.scss +1 -1
  213. package/src/templates/update/src/_q-press/css/themes/evergreen.scss +69 -0
  214. package/src/templates/update/src/_q-press/css/themes/mystic.scss +1 -1
  215. package/src/templates/update/src/_q-press/css/themes/newspaper.scss +1 -1
  216. package/src/templates/update/src/_q-press/css/themes/sunrise.scss +1 -1
  217. package/src/templates/update/src/_q-press/css/themes/tawny.scss +1 -1
  218. package/src/templates/update/src/_q-press/layouts/MarkdownDrawerSidebar.vue +1 -1
  219. package/src/templates/update/src/_q-press/layouts/MarkdownDrawerToc.vue +1 -1
  220. package/src/templates/update/src/_q-press/layouts/MarkdownHeader.vue +1 -1
  221. package/src/templates/update/src/_q-press/layouts/MarkdownLayout.vue +2 -2
  222. package/src/templates/update/src/_q-press/layouts/MarkdownPage.vue +4 -3
  223. package/src/templates/update/src/_q-press/layouts/MarkdownSearch.vue +1 -1
  224. package/src/templates/update/src/_q-press/stores/markdown.ts +1 -2
  225. package/tsconfig.json +1 -1
  226. package/dist/templates/init/src/_q-press/api/components/MarkdownCodePrism.json +0 -29
  227. package/dist/templates/init/src/_q-press/components/MarkdownCodePrism.ts +0 -36
  228. package/dist/templates/init/src/_q-press/css/prism-theme.scss +0 -298
  229. package/dist/templates/init/src/markdown/guides/contributing.md +0 -101
  230. package/dist/templates/init/src/markdown/guides/faq.md +0 -115
  231. package/dist/templates/init/src/markdown/guides/release-notes.md +0 -0
  232. package/dist/templates/init/src/markdown/guides/style-guide.md +0 -0
  233. package/dist/templates/init/src/markdown/guides/upgrade-guide.md +0 -92
  234. package/dist/templates/init/src/markdown/other/release-notes.md +0 -8
  235. package/dist/templates/init/src/q-press.globals.d.ts +0 -36
  236. package/dist/templates/update/src/_q-press/api/components/MarkdownCodePrism.json +0 -29
  237. package/dist/templates/update/src/_q-press/components/MarkdownCodePrism.ts +0 -36
  238. package/dist/templates/update/src/_q-press/css/prism-theme.scss +0 -298
  239. package/dist/templates/update/src/q-press.globals.d.ts +0 -36
  240. package/src/templates/init/src/_q-press/api/components/MarkdownCodePrism.json +0 -29
  241. package/src/templates/init/src/_q-press/components/MarkdownCodePrism.ts +0 -36
  242. package/src/templates/init/src/_q-press/css/prism-theme.scss +0 -298
  243. package/src/templates/init/src/markdown/guides/contributing.md +0 -101
  244. package/src/templates/init/src/markdown/guides/faq.md +0 -115
  245. package/src/templates/init/src/markdown/guides/release-notes.md +0 -0
  246. package/src/templates/init/src/markdown/guides/style-guide.md +0 -0
  247. package/src/templates/init/src/markdown/guides/upgrade-guide.md +0 -92
  248. package/src/templates/init/src/markdown/other/release-notes.md +0 -8
  249. package/src/templates/init/src/q-press.globals.d.ts +0 -36
  250. package/src/templates/update/src/_q-press/api/components/MarkdownCodePrism.json +0 -29
  251. package/src/templates/update/src/_q-press/components/MarkdownCodePrism.ts +0 -36
  252. package/src/templates/update/src/_q-press/css/prism-theme.scss +0 -298
  253. package/src/templates/update/src/q-press.globals.d.ts +0 -36
@@ -34,7 +34,7 @@ $light-pill: $brand-light;
34
34
  $light-text: $brand-light-text;
35
35
  $light-bg: $brand-light-bg;
36
36
 
37
- $dark-pill: scale-color($brand-dark, $lightness: 20%);
37
+ $dark-pill: color.scale($brand-dark-bg, $lightness: 12%);
38
38
  $dark-text: $brand-dark-text;
39
39
  $dark-bg: $brand-dark-bg;
40
40
 
@@ -34,7 +34,7 @@ $light-pill: $brand-light;
34
34
  $light-text: $brand-light-text;
35
35
  $light-bg: $brand-light-bg;
36
36
 
37
- $dark-pill: scale-color($brand-primary, $lightness: -80%);
37
+ $dark-pill: color.scale($brand-dark-bg, $lightness: 12%);
38
38
  $dark-text: $brand-dark-text;
39
39
  $dark-bg: $brand-dark-bg;
40
40
 
@@ -25,7 +25,7 @@
25
25
  <script setup lang="ts">
26
26
  import { mdiClose } from '@quasar/extras/mdi-v7'
27
27
 
28
- import { useMarkdownStore } from 'src/.q-press/stores/markdown'
28
+ import { useMarkdownStore } from '@/.q-press/stores/markdown'
29
29
  import MarkdownPageSidebar from './MarkdownPageSidebar'
30
30
 
31
31
  const markdownStore = useMarkdownStore()
@@ -29,7 +29,7 @@
29
29
  <script setup lang="ts">
30
30
  import { mdiClose } from '@quasar/extras/mdi-v7'
31
31
 
32
- import { useMarkdownStore } from 'src/.q-press/stores/markdown'
32
+ import { useMarkdownStore } from '@/.q-press/stores/markdown'
33
33
 
34
34
  import MarkdownPageToc from './MarkdownPageToc.vue'
35
35
 
@@ -306,7 +306,7 @@ const hasMoreLinks = computed(() => siteConfig.links.moreLinks.length > 0)
306
306
  }
307
307
 
308
308
  &__links {
309
- justify-content: end;
309
+ justify-content: flex-end;
310
310
 
311
311
  @media (min-width: 1921px) {
312
312
  justify-content: center;
@@ -38,7 +38,7 @@ import { computed } from 'vue'
38
38
  import { useRoute } from 'vue-router'
39
39
  import { mdiArrowUp } from '@quasar/extras/mdi-v7'
40
40
 
41
- // import { useMarkdownStore } from 'src/.q-press/stores/doc'
41
+ // import { useMarkdownStore } from '@/.q-press/stores/doc'
42
42
  import { useScroll } from '../composables/scroll'
43
43
 
44
44
  import MarkdownHeader from './MarkdownHeader.vue'
@@ -101,7 +101,7 @@ const pageContentClass = computed(
101
101
  }
102
102
 
103
103
  @media (max-width: 1845px) {
104
- justify-content: start;
104
+ justify-content: flex-start;
105
105
 
106
106
  .markdown-page__toc-container--flowing {
107
107
  display: none;
@@ -49,7 +49,7 @@
49
49
 
50
50
  <slot />
51
51
 
52
- <div v-if="props.nav" class="markdown-page__nav markdown-page__nav--footer">
52
+ <div v-if="showFooterNav" class="markdown-page__nav markdown-page__nav--footer">
53
53
  <div class="text-h6 q-pb-md markdown-heading">Ready for more?</div>
54
54
  <div class="q-gutter-sm flex">
55
55
  <router-link
@@ -94,7 +94,6 @@ import { useRoute } from 'vue-router'
94
94
  import { mdiPencil, mdiFlash, mdiLaunch } from '@quasar/extras/mdi-v7'
95
95
 
96
96
  import type { NavItem, RelatedItem } from '@md-plugins/vite-md-plugin'
97
- import type { TocItem } from '@md-plugins/md-plugin-headers'
98
97
  import MarkdownLink from '../components/MarkdownLink.vue'
99
98
  import MarkdownPageToc from './MarkdownPageToc.vue'
100
99
 
@@ -129,7 +128,7 @@ const props = defineProps({
129
128
  },
130
129
 
131
130
  toc: {
132
- type: Array<TocItem>,
131
+ type: Array<TocMenuItem>,
133
132
  default: () => [],
134
133
  },
135
134
  related: {
@@ -164,6 +163,8 @@ const editHref = computed(() => `${siteConfig.githubEditRootSrc}/markdown/${prop
164
163
 
165
164
  const isFullscreen = computed(() => route.meta.fullscreen === true || props.fullscreen)
166
165
 
166
+ const showFooterNav = computed(() => isFullscreen.value !== true && props.nav.length > 0)
167
+
167
168
  const hasToc = computed(
168
169
  () =>
169
170
  route.meta.fullwidth !== true &&
@@ -39,7 +39,7 @@
39
39
  </div>
40
40
  </template>
41
41
 
42
- <script setup>
42
+ <script setup lang="ts">
43
43
  import { useQuasar } from 'quasar'
44
44
  import { computed, ref, watch, markRaw, onMounted, onBeforeUnmount } from 'vue'
45
45
  import { useRoute, useRouter } from 'vue-router'
@@ -1,7 +1,6 @@
1
1
  import { defineStore, acceptHMRUpdate } from 'pinia'
2
2
  import { useRoute } from 'vue-router'
3
3
  import { useScroll } from '../composables/scroll'
4
- import type { TocItem } from '@md-plugins/md-plugin-headers'
5
4
 
6
5
  export const useMarkdownStore = defineStore('markdown-store', {
7
6
  state: () => ({
@@ -60,7 +59,7 @@ export const useMarkdownStore = defineStore('markdown-store', {
60
59
  }
61
60
  },
62
61
 
63
- setToc(toc: TocItem[]) {
62
+ setToc(toc: TocMenuItem[]) {
64
63
  const { scrollTo } = useScroll()
65
64
  this.toc =
66
65
  toc !== void 0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@md-plugins/quasar-app-extension-q-press",
3
- "version": "0.1.0-beta.2",
3
+ "version": "0.1.0-beta.21",
4
4
  "description": "QPress - The Ultimate Markdown Solution for Quasar Framework",
5
5
  "keywords": [
6
6
  "markdown",
@@ -22,39 +22,40 @@
22
22
  },
23
23
  "type": "module",
24
24
  "main": "dist/index.js",
25
+ "types": "dist/q-press-globals.d.ts",
25
26
  "publishConfig": {
26
27
  "access": "public"
27
28
  },
28
29
  "dependencies": {
29
30
  "@types/markdown-it": "^14.1.2",
30
- "fs-extra": "^11.3.4",
31
- "markdown-it": "^14.1.1",
32
- "@md-plugins/md-plugin-blockquote": "0.1.0-beta.2",
33
- "@md-plugins/md-plugin-containers": "0.1.0-beta.2",
34
- "@md-plugins/md-plugin-image": "0.1.0-beta.2",
35
- "@md-plugins/md-plugin-frontmatter": "0.1.0-beta.2",
36
- "@md-plugins/md-plugin-headers": "0.1.0-beta.2",
37
- "@md-plugins/md-plugin-imports": "0.1.0-beta.2",
38
- "@md-plugins/md-plugin-inlinecode": "0.1.0-beta.2",
39
- "@md-plugins/md-plugin-link": "0.1.0-beta.2",
40
- "@md-plugins/md-plugin-table": "0.1.0-beta.2",
41
- "@md-plugins/md-plugin-codeblocks": "0.1.0-beta.2",
42
- "@md-plugins/vite-md-plugin": "0.1.0-beta.2",
43
- "@md-plugins/shared": "0.1.0-beta.2",
44
- "@md-plugins/md-plugin-title": "0.1.0-beta.2"
31
+ "fs-extra": "^11.3.5",
32
+ "markdown-it": "^14.2.0",
33
+ "@md-plugins/md-plugin-blockquote": "0.1.0-beta.21",
34
+ "@md-plugins/md-plugin-containers": "0.1.0-beta.21",
35
+ "@md-plugins/md-plugin-headers": "0.1.0-beta.21",
36
+ "@md-plugins/md-plugin-frontmatter": "0.1.0-beta.21",
37
+ "@md-plugins/md-plugin-inlinecode": "0.1.0-beta.21",
38
+ "@md-plugins/md-plugin-imports": "0.1.0-beta.21",
39
+ "@md-plugins/md-plugin-image": "0.1.0-beta.21",
40
+ "@md-plugins/md-plugin-codeblocks": "0.1.0-beta.21",
41
+ "@md-plugins/md-plugin-link": "0.1.0-beta.21",
42
+ "@md-plugins/md-plugin-mermaid": "0.1.0-beta.21",
43
+ "@md-plugins/md-plugin-table": "0.1.0-beta.21",
44
+ "@md-plugins/md-plugin-title": "0.1.0-beta.21",
45
+ "@md-plugins/vite-md-plugin": "0.1.0-beta.21"
45
46
  },
46
47
  "devDependencies": {
47
- "@quasar/app-vite": "3.0.0-beta.14",
48
+ "@quasar/app-vite": "3.0.0-beta.33",
48
49
  "@types/markdown-it": "^14.1.2",
49
- "vite": "^8.0.3"
50
+ "vite": "^8.0.14"
50
51
  },
51
52
  "peerDependencies": {
52
- "@quasar/app-vite": ">=3.0.0-beta.14",
53
- "markdown-it": "^14.1.0"
53
+ "@quasar/app-vite": ">=3.0.0-beta.33",
54
+ "markdown-it": "^14.2.0"
54
55
  },
55
56
  "engines": {
56
57
  "node": ">=22.13",
57
- "pnpm": ">=11.1.0"
58
+ "pnpm": ">=11.3.0"
58
59
  },
59
60
  "scripts": {
60
61
  "build": "pnpm exec tsc -p ./tsconfig.build.json && node ./scripts/build.js",
package/src/index.ts CHANGED
@@ -6,28 +6,95 @@
6
6
  */
7
7
 
8
8
  import { defineIndexScript } from '@quasar/app-vite'
9
+ import { fileURLToPath } from 'node:url'
9
10
 
10
11
  // import fse from 'fs-extra'
11
12
  // import { viteMdPlugin } from '@md-plugins/vite-md-plugin'
12
13
 
13
- export default defineIndexScript((api) => {
14
- // verify this is a Vite project
15
- if (!api.hasVite) {
16
- throw new Error('This extension requires Vite')
14
+ type ViteAliasEntry = {
15
+ find: string | RegExp
16
+ replacement: string
17
+ }
18
+
19
+ type ViteAlias = readonly ViteAliasEntry[] | Record<string, string>
20
+
21
+ type ViteConfigWithAlias = {
22
+ resolve?: {
23
+ alias?: ViteAlias
24
+ }
25
+ }
26
+
27
+ type QuasarTsConfig = {
28
+ files?: string[]
29
+ }
30
+
31
+ type QuasarTypescriptConfig = {
32
+ extendTsConfig?: (tsConfig: QuasarTsConfig) => void
33
+ }
34
+
35
+ const qPressGlobalsTsConfigPath = fileURLToPath(
36
+ new URL('./q-press-globals.d.ts', import.meta.url),
37
+ ).replace(/\\/g, '/')
38
+
39
+ function normalizeAlias(alias: ViteAlias | undefined): ViteAliasEntry[] {
40
+ if (Array.isArray(alias)) {
41
+ return [...alias]
17
42
  }
18
43
 
44
+ return Object.entries(alias ?? {}).map(([find, replacement]) => ({
45
+ find,
46
+ replacement,
47
+ }))
48
+ }
49
+
50
+ function addQuasarSourceAlias(viteConf: ViteConfigWithAlias, appDir: string): void {
51
+ const alias = normalizeAlias(viteConf.resolve?.alias)
52
+
53
+ viteConf.resolve ??= {}
54
+ viteConf.resolve.alias = [
55
+ ...alias,
56
+ {
57
+ find: /^quasar\/src\/(.*)$/,
58
+ replacement: `${appDir.replace(/\\/g, '/')}/node_modules/quasar/src/$1`,
59
+ },
60
+ ]
61
+ }
62
+
63
+ function addQPressGlobalsToTsConfig(tsConfig: QuasarTsConfig): void {
64
+ tsConfig.files ??= []
65
+
66
+ if (!tsConfig.files.includes(qPressGlobalsTsConfigPath)) {
67
+ tsConfig.files.push(qPressGlobalsTsConfigPath)
68
+ }
69
+ }
70
+
71
+ function extendTypeScriptConfig(typescriptConfig: QuasarTypescriptConfig): void {
72
+ const userExtendTsConfig = typescriptConfig.extendTsConfig
73
+
74
+ typescriptConfig.extendTsConfig = (tsConfig) => {
75
+ userExtendTsConfig?.(tsConfig)
76
+ addQPressGlobalsToTsConfig(tsConfig)
77
+ }
78
+ }
79
+
80
+ export default defineIndexScript((api) => {
19
81
  api.compatibleWith('quasar', '^2.0.0')
20
- api.compatibleWith('@quasar/app-vite', '>=3.0.0-beta.14')
82
+ api.compatibleWith('@quasar/app-vite', '>=3.0.0-beta.33')
21
83
 
22
84
  // here we extend /quasar.config, so we can add some Vite/Vue stuff
23
85
  api.extendQuasarConf(async (config) => {
24
86
  config.build ??= {}
87
+ config.build.typescript ??= {}
25
88
  config.build.viteVuePluginOptions ??= {}
26
89
  config.framework ??= {}
27
90
 
91
+ extendTypeScriptConfig(config.build.typescript)
92
+
28
93
  // make sure 'vueRouterMode' has 'history' mode
29
94
  if (config.build.vueRouterMode !== 'history') {
30
- console.warn('Changing vueRouterMode to "history" - required for hash links to work correctly')
95
+ console.warn(
96
+ 'Changing vueRouterMode to "history" - required for hash links to work correctly',
97
+ )
31
98
  config.build.vueRouterMode = 'history'
32
99
  }
33
100
 
@@ -35,11 +102,9 @@ export default defineIndexScript((api) => {
35
102
  const include = config.build.viteVuePluginOptions.include
36
103
  if (Array.isArray(include)) {
37
104
  include.push(/\.(vue|md)$/)
38
- }
39
- else if (include !== void 0) {
105
+ } else if (include !== void 0) {
40
106
  config.build.viteVuePluginOptions.include = [include, /\.(vue|md)$/]
41
- }
42
- else {
107
+ } else {
43
108
  config.build.viteVuePluginOptions.include = [/\.(vue|md)$/]
44
109
  }
45
110
 
@@ -67,4 +132,8 @@ export default defineIndexScript((api) => {
67
132
  // config.vite.plugins.push(viteMdPlugin({ path: markdownPath, menu: sidebar }))
68
133
  // }
69
134
  })
70
- })
135
+
136
+ api.extendViteConf((viteConf, _invoke, aeApi) => {
137
+ addQuasarSourceAlias(viteConf, aeApi.appDir)
138
+ })
139
+ })
package/src/install.ts CHANGED
@@ -8,13 +8,8 @@ import { defineInstallScript } from '@quasar/app-vite'
8
8
  import { existsSync } from 'node:fs'
9
9
 
10
10
  export default defineInstallScript(async (api) => {
11
- // verify this is a Vite project
12
- if (!api.hasVite) {
13
- throw new Error('This extension requires Vite')
14
- }
15
-
16
11
  api.compatibleWith('quasar', '^2.0.0')
17
- api.compatibleWith('@quasar/app-vite', '>=3.0.0-beta.14')
12
+ api.compatibleWith('@quasar/app-vite', '>=3.0.0-beta.33')
18
13
 
19
14
  // project must have pinia installed
20
15
  if ((await api.getStorePackageName()) !== 'pinia') {
@@ -32,6 +27,13 @@ export default defineInstallScript(async (api) => {
32
27
  throw new Error('This extension requires TypeScript')
33
28
  }
34
29
 
30
+ api.extendPackageJson({
31
+ dependencies: {
32
+ mermaid: '^11.15.0',
33
+ shiki: '^4.1.0',
34
+ },
35
+ })
36
+
35
37
  const path = api.resolve.src('siteConfig')
36
38
  if (existsSync(path)) {
37
39
  // this is an update scenario
@@ -39,12 +41,11 @@ export default defineInstallScript(async (api) => {
39
41
  console.warn("Update only for 'src/.q-press' folder")
40
42
  console.warn('-------------------------------------')
41
43
  api.render('./templates/update')
42
- }
43
- else {
44
+ } else {
44
45
  // this is a project initial setup
45
46
  console.warn('--------------------------------------------')
46
47
  console.warn('Initial setup. Be sure to read the\ndocumentation on the manual set up required.')
47
48
  console.warn('--------------------------------------------')
48
49
  api.render('./templates/init')
49
50
  }
50
- })
51
+ })
@@ -0,0 +1,49 @@
1
+ /// <reference types="@quasar/app-vite/client" />
2
+
3
+ declare module '*.md'
4
+
5
+ declare global {
6
+ interface ImportMetaHot {
7
+ accept(callback?: (..._args: unknown[]) => unknown): void
8
+ }
9
+
10
+ interface ImportMeta {
11
+ readonly env: ImportMetaEnv
12
+ glob: <T = unknown>(pattern: string) => Record<string, () => Promise<T>>
13
+ hot?: ImportMetaHot
14
+ }
15
+
16
+ interface TocMenuItem {
17
+ id: string
18
+ level: number
19
+ title: string
20
+ link?: string
21
+ deep?: boolean
22
+ sub?: boolean
23
+ onClick?: () => void
24
+ children?: TocMenuItem[]
25
+ }
26
+
27
+ interface MarkdownModule {
28
+ title?: string
29
+ headers?: TocMenuItem[]
30
+ frontmatter?: Record<string, unknown>
31
+ filename?: string
32
+ render: (..._args: unknown[]) => unknown
33
+ }
34
+
35
+ interface MenuItem {
36
+ name: string
37
+ path?: string
38
+ icon?: string
39
+ iconColor?: string
40
+ rightIcon?: string
41
+ rightIconColor?: string
42
+ badge?: string
43
+ children?: MenuItem[] | undefined
44
+ external?: boolean
45
+ expanded?: boolean
46
+ }
47
+ }
48
+
49
+ export {}
@@ -6,7 +6,7 @@
6
6
  "props": {
7
7
  "code": {
8
8
  "type": "String",
9
- "desc": "The code to display",
9
+ "desc": "The code to display with Shiki syntax highlighting",
10
10
  "examples": [
11
11
  "'const a = 1;'",
12
12
  "'<div>Hello World</div>'"
@@ -34,4 +34,4 @@
34
34
  "category": "content"
35
35
  }
36
36
  }
37
- }
37
+ }
@@ -4,18 +4,15 @@
4
4
  "docsUrl": "https://path-to-your-docs/markdown-codepen"
5
5
  },
6
6
  "props": {
7
- "active": {
8
- "type": "Boolean",
9
- "desc": "Flag to indicate if the form should be active",
10
- "category": "state"
11
- },
12
- "options": {
7
+ "title": {
13
8
  "type": "String",
14
- "desc": "JSON string containing the CodePen options",
9
+ "desc": "Title used for the generated CodePen",
10
+ "required": true,
15
11
  "examples": [
16
- "'{\"title\":\"My Pen\",\"html\":\"<div>Hello World</div>\"}'"
12
+ "'Basic Example'",
13
+ "'Advanced Playground'"
17
14
  ],
18
15
  "category": "content"
19
16
  }
20
17
  }
21
- }
18
+ }
@@ -13,10 +13,35 @@
13
13
  ],
14
14
  "category": "content"
15
15
  },
16
+ "file": {
17
+ "type": "String",
18
+ "desc": "Vue example file name without the .vue extension",
19
+ "required": true,
20
+ "examples": [
21
+ "'Basic'",
22
+ "'AdvancedUsage'"
23
+ ],
24
+ "category": "content"
25
+ },
26
+ "noEdit": {
27
+ "type": "Boolean",
28
+ "desc": "Hide the CodePen edit button",
29
+ "category": "behavior"
30
+ },
16
31
  "noGithub": {
17
32
  "type": "Boolean",
18
- "desc": "Flag to indicate if the GitHub button should be hidden",
33
+ "desc": "Hide the GitHub source button",
34
+ "category": "behavior"
35
+ },
36
+ "scrollable": {
37
+ "type": "Boolean",
38
+ "desc": "Constrain the example content to a scrollable area",
39
+ "category": "content"
40
+ },
41
+ "overflow": {
42
+ "type": "Boolean",
43
+ "desc": "Allow the example content to manage overflow automatically",
19
44
  "category": "behavior"
20
45
  }
21
46
  }
22
- }
47
+ }