@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.
- package/README.md +20 -15
- package/dist/index.js +41 -7
- package/dist/install.js +7 -5
- package/dist/q-press-globals.d.ts +49 -0
- package/dist/templates/init/src/_q-press/api/components/MarkdownCode.json +2 -2
- package/dist/templates/init/src/_q-press/api/components/MarkdownCodepen.json +6 -9
- package/dist/templates/init/src/_q-press/api/components/MarkdownExample.json +27 -2
- package/dist/templates/init/src/_q-press/components/MarkdownApi.vue +129 -84
- package/dist/templates/init/src/_q-press/components/MarkdownCardLink.vue +1 -1
- package/dist/templates/init/src/_q-press/components/MarkdownCardTitle.vue +1 -1
- package/dist/templates/init/src/_q-press/components/MarkdownCode.vue +71 -3
- package/dist/templates/init/src/_q-press/components/MarkdownCodepen.vue +316 -59
- package/dist/templates/init/src/_q-press/components/MarkdownCopyButton.vue +1 -1
- package/dist/templates/init/src/_q-press/components/MarkdownExample.vue +54 -19
- package/dist/templates/init/src/_q-press/components/MarkdownLink.vue +5 -5
- package/dist/templates/init/src/_q-press/components/MarkdownMermaid.vue +123 -0
- package/dist/templates/init/src/_q-press/components/MarkdownTree.vue +2 -2
- package/dist/templates/init/src/_q-press/components/markdown-utils.ts +27 -3
- package/dist/templates/init/src/_q-press/css/app.scss +38 -26
- package/dist/templates/init/src/_q-press/css/code-theme.scss +634 -0
- package/dist/templates/init/src/_q-press/css/themes/default.scss +1 -1
- package/dist/templates/init/src/_q-press/css/themes/evergreen.scss +69 -0
- package/dist/templates/init/src/_q-press/css/themes/mystic.scss +1 -1
- package/dist/templates/init/src/_q-press/css/themes/newspaper.scss +1 -1
- package/dist/templates/init/src/_q-press/css/themes/sunrise.scss +1 -1
- package/dist/templates/init/src/_q-press/css/themes/tawny.scss +1 -1
- package/dist/templates/init/src/_q-press/layouts/MarkdownDrawerSidebar.vue +1 -1
- package/dist/templates/init/src/_q-press/layouts/MarkdownDrawerToc.vue +1 -1
- package/dist/templates/init/src/_q-press/layouts/MarkdownHeader.vue +1 -1
- package/dist/templates/init/src/_q-press/layouts/MarkdownLayout.vue +2 -2
- package/dist/templates/init/src/_q-press/layouts/MarkdownPage.vue +4 -3
- package/dist/templates/init/src/_q-press/layouts/MarkdownSearch.vue +1 -1
- package/dist/templates/init/src/_q-press/stores/markdown.ts +1 -2
- package/dist/templates/init/src/components/LandingPage/LandingPage.vue +15 -1
- package/dist/templates/init/src/components/QPressThemeGallery.vue +336 -0
- package/dist/templates/init/src/components/page-parts/releases/GitHubReleases.vue +121 -0
- package/dist/templates/init/src/components/page-parts/releases/PackageReleases.vue +191 -0
- package/dist/templates/init/src/components/page-parts/releases/md-table-parser.ts +52 -0
- package/dist/templates/init/src/components/page-parts/releases/sanitize.ts +132 -0
- package/dist/templates/init/src/markdown/__elements.md +8 -8
- package/dist/templates/init/src/markdown/__elements2.md +4 -4
- package/dist/templates/init/src/markdown/faq/best-practices.md +27 -0
- package/dist/templates/init/src/markdown/faq/general.md +27 -0
- package/dist/templates/init/src/markdown/faq/troubleshooting.md +27 -0
- package/dist/templates/init/src/markdown/getting-started/introduction.md +7 -5
- package/dist/templates/init/src/markdown/md-plugins/blockquote/overview.md +3 -1
- package/dist/templates/init/src/markdown/md-plugins/codeblocks/advanced.md +19 -15
- package/dist/templates/init/src/markdown/md-plugins/codeblocks/overview.md +45 -8
- package/dist/templates/init/src/markdown/md-plugins/containers/overview.md +3 -1
- package/dist/templates/init/src/markdown/md-plugins/frontmatter/overview.md +3 -1
- package/dist/templates/init/src/markdown/md-plugins/headers/overview.md +3 -1
- package/dist/templates/init/src/markdown/md-plugins/image/overview.md +3 -1
- package/dist/templates/init/src/markdown/md-plugins/imports/overview.md +3 -1
- package/dist/templates/init/src/markdown/md-plugins/inline-code/overview.md +3 -1
- package/dist/templates/init/src/markdown/md-plugins/link/advanced.md +2 -2
- package/dist/templates/init/src/markdown/md-plugins/link/overview.md +6 -4
- package/dist/templates/init/src/markdown/md-plugins/mermaid/advanced.md +69 -0
- package/dist/templates/init/src/markdown/md-plugins/mermaid/overview.md +73 -0
- package/dist/templates/init/src/markdown/md-plugins/shared/overview.md +28 -13
- package/dist/templates/init/src/markdown/md-plugins/table/overview.md +3 -1
- package/dist/templates/init/src/markdown/md-plugins/title/overview.md +3 -1
- package/dist/templates/init/src/markdown/other/contact.md +37 -0
- package/dist/templates/init/src/markdown/other/contributing/bugs-and-feature-requests.md +33 -0
- package/dist/templates/init/src/markdown/other/contributing/call-to-action.md +25 -0
- package/dist/templates/init/src/markdown/other/contributing/documentation.md +31 -0
- package/dist/templates/init/src/markdown/other/contributing/overview.md +41 -0
- package/dist/templates/init/src/markdown/other/contributing/packages.md +28 -0
- package/dist/templates/init/src/markdown/other/contributing/sponsor.md +23 -0
- package/dist/templates/init/src/markdown/other/faq.md +179 -0
- package/dist/templates/init/src/markdown/other/releases.md +11 -0
- package/dist/templates/init/src/markdown/other/upgrade-guide.md +165 -0
- package/dist/templates/init/src/markdown/quasar-app-extensions/qpress/advanced.md +11 -3
- package/dist/templates/init/src/markdown/quasar-app-extensions/qpress/components.md +25 -29
- package/dist/templates/init/src/markdown/quasar-app-extensions/qpress/overview.md +20 -20
- package/dist/templates/init/src/markdown/quasar-app-extensions/qpress/site-config.md +17 -3
- package/dist/templates/init/src/markdown/quasar-app-extensions/qpress/themes.md +101 -9
- package/dist/templates/init/src/markdown/quasar-app-extensions/vite-md-plugin-app-ext/advanced.md +158 -0
- package/dist/templates/init/src/markdown/quasar-app-extensions/vite-md-plugin-app-ext/overview.md +1 -1
- package/dist/templates/init/src/markdown/vite-plugins/vite-examples-plugin/advanced.md +8 -3
- package/dist/templates/init/src/markdown/vite-plugins/vite-examples-plugin/overview.md +19 -5
- package/dist/templates/init/src/markdown/vite-plugins/vite-md-plugin/advanced.md +84 -54
- package/dist/templates/init/src/markdown/vite-plugins/vite-md-plugin/overview.md +19 -3
- package/dist/templates/init/src/siteConfig/index.ts +52 -23
- package/dist/templates/update/src/_q-press/api/components/MarkdownCode.json +2 -2
- package/dist/templates/update/src/_q-press/api/components/MarkdownCodepen.json +6 -9
- package/dist/templates/update/src/_q-press/api/components/MarkdownExample.json +27 -2
- package/dist/templates/update/src/_q-press/components/MarkdownApi.vue +129 -84
- package/dist/templates/update/src/_q-press/components/MarkdownCardLink.vue +1 -1
- package/dist/templates/update/src/_q-press/components/MarkdownCardTitle.vue +1 -1
- package/dist/templates/update/src/_q-press/components/MarkdownCode.vue +71 -3
- package/dist/templates/update/src/_q-press/components/MarkdownCodepen.vue +316 -59
- package/dist/templates/update/src/_q-press/components/MarkdownCopyButton.vue +1 -1
- package/dist/templates/update/src/_q-press/components/MarkdownExample.vue +54 -19
- package/dist/templates/update/src/_q-press/components/MarkdownLink.vue +5 -5
- package/dist/templates/update/src/_q-press/components/MarkdownMermaid.vue +123 -0
- package/dist/templates/update/src/_q-press/components/MarkdownTree.vue +2 -2
- package/dist/templates/update/src/_q-press/components/markdown-utils.ts +27 -3
- package/dist/templates/update/src/_q-press/css/app.scss +38 -26
- package/dist/templates/update/src/_q-press/css/code-theme.scss +634 -0
- package/dist/templates/update/src/_q-press/css/themes/default.scss +1 -1
- package/dist/templates/update/src/_q-press/css/themes/evergreen.scss +69 -0
- package/dist/templates/update/src/_q-press/css/themes/mystic.scss +1 -1
- package/dist/templates/update/src/_q-press/css/themes/newspaper.scss +1 -1
- package/dist/templates/update/src/_q-press/css/themes/sunrise.scss +1 -1
- package/dist/templates/update/src/_q-press/css/themes/tawny.scss +1 -1
- package/dist/templates/update/src/_q-press/layouts/MarkdownDrawerSidebar.vue +1 -1
- package/dist/templates/update/src/_q-press/layouts/MarkdownDrawerToc.vue +1 -1
- package/dist/templates/update/src/_q-press/layouts/MarkdownHeader.vue +1 -1
- package/dist/templates/update/src/_q-press/layouts/MarkdownLayout.vue +2 -2
- package/dist/templates/update/src/_q-press/layouts/MarkdownPage.vue +4 -3
- package/dist/templates/update/src/_q-press/layouts/MarkdownSearch.vue +1 -1
- package/dist/templates/update/src/_q-press/stores/markdown.ts +1 -2
- package/package.json +22 -21
- package/src/index.ts +80 -11
- package/src/install.ts +10 -9
- package/src/q-press-globals.d.ts +49 -0
- package/src/templates/init/src/_q-press/api/components/MarkdownCode.json +2 -2
- package/src/templates/init/src/_q-press/api/components/MarkdownCodepen.json +6 -9
- package/src/templates/init/src/_q-press/api/components/MarkdownExample.json +27 -2
- package/src/templates/init/src/_q-press/components/MarkdownApi.vue +129 -84
- package/src/templates/init/src/_q-press/components/MarkdownCardLink.vue +1 -1
- package/src/templates/init/src/_q-press/components/MarkdownCardTitle.vue +1 -1
- package/src/templates/init/src/_q-press/components/MarkdownCode.vue +71 -3
- package/src/templates/init/src/_q-press/components/MarkdownCodepen.vue +316 -59
- package/src/templates/init/src/_q-press/components/MarkdownCopyButton.vue +1 -1
- package/src/templates/init/src/_q-press/components/MarkdownExample.vue +54 -19
- package/src/templates/init/src/_q-press/components/MarkdownLink.vue +5 -5
- package/src/templates/init/src/_q-press/components/MarkdownMermaid.vue +123 -0
- package/src/templates/init/src/_q-press/components/MarkdownTree.vue +2 -2
- package/src/templates/init/src/_q-press/components/markdown-utils.ts +27 -3
- package/src/templates/init/src/_q-press/css/app.scss +38 -26
- package/src/templates/init/src/_q-press/css/code-theme.scss +634 -0
- package/src/templates/init/src/_q-press/css/themes/default.scss +1 -1
- package/src/templates/init/src/_q-press/css/themes/evergreen.scss +69 -0
- package/src/templates/init/src/_q-press/css/themes/mystic.scss +1 -1
- package/src/templates/init/src/_q-press/css/themes/newspaper.scss +1 -1
- package/src/templates/init/src/_q-press/css/themes/sunrise.scss +1 -1
- package/src/templates/init/src/_q-press/css/themes/tawny.scss +1 -1
- package/src/templates/init/src/_q-press/layouts/MarkdownDrawerSidebar.vue +1 -1
- package/src/templates/init/src/_q-press/layouts/MarkdownDrawerToc.vue +1 -1
- package/src/templates/init/src/_q-press/layouts/MarkdownHeader.vue +1 -1
- package/src/templates/init/src/_q-press/layouts/MarkdownLayout.vue +2 -2
- package/src/templates/init/src/_q-press/layouts/MarkdownPage.vue +4 -3
- package/src/templates/init/src/_q-press/layouts/MarkdownSearch.vue +1 -1
- package/src/templates/init/src/_q-press/stores/markdown.ts +1 -2
- package/src/templates/init/src/components/LandingPage/LandingPage.vue +15 -1
- package/src/templates/init/src/components/QPressThemeGallery.vue +336 -0
- package/src/templates/init/src/components/page-parts/releases/GitHubReleases.vue +121 -0
- package/src/templates/init/src/components/page-parts/releases/PackageReleases.vue +191 -0
- package/src/templates/init/src/components/page-parts/releases/md-table-parser.ts +52 -0
- package/src/templates/init/src/components/page-parts/releases/sanitize.ts +132 -0
- package/src/templates/init/src/markdown/__elements.md +8 -8
- package/src/templates/init/src/markdown/__elements2.md +4 -4
- package/src/templates/init/src/markdown/faq/best-practices.md +27 -0
- package/src/templates/init/src/markdown/faq/general.md +27 -0
- package/src/templates/init/src/markdown/faq/troubleshooting.md +27 -0
- package/src/templates/init/src/markdown/getting-started/introduction.md +7 -5
- package/src/templates/init/src/markdown/md-plugins/blockquote/overview.md +3 -1
- package/src/templates/init/src/markdown/md-plugins/codeblocks/advanced.md +19 -15
- package/src/templates/init/src/markdown/md-plugins/codeblocks/overview.md +45 -8
- package/src/templates/init/src/markdown/md-plugins/containers/overview.md +3 -1
- package/src/templates/init/src/markdown/md-plugins/frontmatter/overview.md +3 -1
- package/src/templates/init/src/markdown/md-plugins/headers/overview.md +3 -1
- package/src/templates/init/src/markdown/md-plugins/image/overview.md +3 -1
- package/src/templates/init/src/markdown/md-plugins/imports/overview.md +3 -1
- package/src/templates/init/src/markdown/md-plugins/inline-code/overview.md +3 -1
- package/src/templates/init/src/markdown/md-plugins/link/advanced.md +2 -2
- package/src/templates/init/src/markdown/md-plugins/link/overview.md +6 -4
- package/src/templates/init/src/markdown/md-plugins/mermaid/advanced.md +69 -0
- package/src/templates/init/src/markdown/md-plugins/mermaid/overview.md +73 -0
- package/src/templates/init/src/markdown/md-plugins/shared/overview.md +28 -13
- package/src/templates/init/src/markdown/md-plugins/table/overview.md +3 -1
- package/src/templates/init/src/markdown/md-plugins/title/overview.md +3 -1
- package/src/templates/init/src/markdown/other/contact.md +37 -0
- package/src/templates/init/src/markdown/other/contributing/bugs-and-feature-requests.md +33 -0
- package/src/templates/init/src/markdown/other/contributing/call-to-action.md +25 -0
- package/src/templates/init/src/markdown/other/contributing/documentation.md +31 -0
- package/src/templates/init/src/markdown/other/contributing/overview.md +41 -0
- package/src/templates/init/src/markdown/other/contributing/packages.md +28 -0
- package/src/templates/init/src/markdown/other/contributing/sponsor.md +23 -0
- package/src/templates/init/src/markdown/other/faq.md +179 -0
- package/src/templates/init/src/markdown/other/releases.md +11 -0
- package/src/templates/init/src/markdown/other/upgrade-guide.md +165 -0
- package/src/templates/init/src/markdown/quasar-app-extensions/qpress/advanced.md +11 -3
- package/src/templates/init/src/markdown/quasar-app-extensions/qpress/components.md +25 -29
- package/src/templates/init/src/markdown/quasar-app-extensions/qpress/overview.md +20 -20
- package/src/templates/init/src/markdown/quasar-app-extensions/qpress/site-config.md +17 -3
- package/src/templates/init/src/markdown/quasar-app-extensions/qpress/themes.md +101 -9
- package/src/templates/init/src/markdown/quasar-app-extensions/vite-md-plugin-app-ext/advanced.md +158 -0
- package/src/templates/init/src/markdown/quasar-app-extensions/vite-md-plugin-app-ext/overview.md +1 -1
- package/src/templates/init/src/markdown/vite-plugins/vite-examples-plugin/advanced.md +8 -3
- package/src/templates/init/src/markdown/vite-plugins/vite-examples-plugin/overview.md +19 -5
- package/src/templates/init/src/markdown/vite-plugins/vite-md-plugin/advanced.md +84 -54
- package/src/templates/init/src/markdown/vite-plugins/vite-md-plugin/overview.md +19 -3
- package/src/templates/init/src/siteConfig/index.ts +52 -23
- package/src/templates/update/src/_q-press/api/components/MarkdownCode.json +2 -2
- package/src/templates/update/src/_q-press/api/components/MarkdownCodepen.json +6 -9
- package/src/templates/update/src/_q-press/api/components/MarkdownExample.json +27 -2
- package/src/templates/update/src/_q-press/components/MarkdownApi.vue +129 -84
- package/src/templates/update/src/_q-press/components/MarkdownCardLink.vue +1 -1
- package/src/templates/update/src/_q-press/components/MarkdownCardTitle.vue +1 -1
- package/src/templates/update/src/_q-press/components/MarkdownCode.vue +71 -3
- package/src/templates/update/src/_q-press/components/MarkdownCodepen.vue +316 -59
- package/src/templates/update/src/_q-press/components/MarkdownCopyButton.vue +1 -1
- package/src/templates/update/src/_q-press/components/MarkdownExample.vue +54 -19
- package/src/templates/update/src/_q-press/components/MarkdownLink.vue +5 -5
- package/src/templates/update/src/_q-press/components/MarkdownMermaid.vue +123 -0
- package/src/templates/update/src/_q-press/components/MarkdownTree.vue +2 -2
- package/src/templates/update/src/_q-press/components/markdown-utils.ts +27 -3
- package/src/templates/update/src/_q-press/css/app.scss +38 -26
- package/src/templates/update/src/_q-press/css/code-theme.scss +634 -0
- package/src/templates/update/src/_q-press/css/themes/default.scss +1 -1
- package/src/templates/update/src/_q-press/css/themes/evergreen.scss +69 -0
- package/src/templates/update/src/_q-press/css/themes/mystic.scss +1 -1
- package/src/templates/update/src/_q-press/css/themes/newspaper.scss +1 -1
- package/src/templates/update/src/_q-press/css/themes/sunrise.scss +1 -1
- package/src/templates/update/src/_q-press/css/themes/tawny.scss +1 -1
- package/src/templates/update/src/_q-press/layouts/MarkdownDrawerSidebar.vue +1 -1
- package/src/templates/update/src/_q-press/layouts/MarkdownDrawerToc.vue +1 -1
- package/src/templates/update/src/_q-press/layouts/MarkdownHeader.vue +1 -1
- package/src/templates/update/src/_q-press/layouts/MarkdownLayout.vue +2 -2
- package/src/templates/update/src/_q-press/layouts/MarkdownPage.vue +4 -3
- package/src/templates/update/src/_q-press/layouts/MarkdownSearch.vue +1 -1
- package/src/templates/update/src/_q-press/stores/markdown.ts +1 -2
- package/tsconfig.json +1 -1
- package/dist/templates/init/src/_q-press/api/components/MarkdownCodePrism.json +0 -29
- package/dist/templates/init/src/_q-press/components/MarkdownCodePrism.ts +0 -36
- package/dist/templates/init/src/_q-press/css/prism-theme.scss +0 -298
- package/dist/templates/init/src/markdown/guides/contributing.md +0 -101
- package/dist/templates/init/src/markdown/guides/faq.md +0 -115
- package/dist/templates/init/src/markdown/guides/release-notes.md +0 -0
- package/dist/templates/init/src/markdown/guides/style-guide.md +0 -0
- package/dist/templates/init/src/markdown/guides/upgrade-guide.md +0 -92
- package/dist/templates/init/src/markdown/other/release-notes.md +0 -8
- package/dist/templates/init/src/q-press.globals.d.ts +0 -36
- package/dist/templates/update/src/_q-press/api/components/MarkdownCodePrism.json +0 -29
- package/dist/templates/update/src/_q-press/components/MarkdownCodePrism.ts +0 -36
- package/dist/templates/update/src/_q-press/css/prism-theme.scss +0 -298
- package/dist/templates/update/src/q-press.globals.d.ts +0 -36
- package/src/templates/init/src/_q-press/api/components/MarkdownCodePrism.json +0 -29
- package/src/templates/init/src/_q-press/components/MarkdownCodePrism.ts +0 -36
- package/src/templates/init/src/_q-press/css/prism-theme.scss +0 -298
- package/src/templates/init/src/markdown/guides/contributing.md +0 -101
- package/src/templates/init/src/markdown/guides/faq.md +0 -115
- package/src/templates/init/src/markdown/guides/release-notes.md +0 -0
- package/src/templates/init/src/markdown/guides/style-guide.md +0 -0
- package/src/templates/init/src/markdown/guides/upgrade-guide.md +0 -92
- package/src/templates/init/src/markdown/other/release-notes.md +0 -8
- package/src/templates/init/src/q-press.globals.d.ts +0 -36
- package/src/templates/update/src/_q-press/api/components/MarkdownCodePrism.json +0 -29
- package/src/templates/update/src/_q-press/components/MarkdownCodePrism.ts +0 -36
- package/src/templates/update/src/_q-press/css/prism-theme.scss +0 -298
- package/src/templates/update/src/q-press.globals.d.ts +0 -36
|
@@ -12,6 +12,7 @@ The Codeblocks Plugin is a powerful tool that enhances the standard code block f
|
|
|
12
12
|
## Key Features
|
|
13
13
|
|
|
14
14
|
- **Syntax Highlighting**: Automatically highlight code syntax for various programming languages.
|
|
15
|
+
- **TwoSlash Hovers**: Opt in to TypeScript-powered hover and query output for richer examples.
|
|
15
16
|
- **Line Numbers**: Display line numbers alongside your code blocks for better readability.
|
|
16
17
|
- **Line Highlighting**: Highlight specific lines of code for emphasis.
|
|
17
18
|
- **Add/Remove Lines**: Highlight add or remove lines of code with ease.
|
|
@@ -65,6 +66,36 @@ console.log('Hello, world!')
|
|
|
65
66
|
```
|
|
66
67
|
````
|
|
67
68
|
|
|
69
|
+
### Code Block with TwoSlash
|
|
70
|
+
|
|
71
|
+
Add the `twoslash` attribute to TypeScript or JavaScript examples when you want inferred type information, compiler diagnostics, or query output. Hover an identifier in the example below to see the type tooltip.
|
|
72
|
+
|
|
73
|
+
```ts [twoslash]
|
|
74
|
+
const count = 1
|
|
75
|
+
const label = count.toFixed(0)
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
````markup
|
|
79
|
+
```ts [twoslash]
|
|
80
|
+
const count = 1
|
|
81
|
+
const label = count.toFixed(0)
|
|
82
|
+
```
|
|
83
|
+
````
|
|
84
|
+
|
|
85
|
+
If you add a `// ^?` query marker, TwoSlash renders that query result persistently below the matching expression. That is useful for teaching types directly in the page, while normal identifier details remain hover-based.
|
|
86
|
+
|
|
87
|
+
```ts [twoslash]
|
|
88
|
+
const selectedIcon = 'event' as const
|
|
89
|
+
// ^?
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
````markup
|
|
93
|
+
```ts [twoslash]
|
|
94
|
+
const selectedIcon = 'event' as const
|
|
95
|
+
// ^?
|
|
96
|
+
```
|
|
97
|
+
````
|
|
98
|
+
|
|
68
99
|
### Code Block with Restricted Height
|
|
69
100
|
|
|
70
101
|
```js [maxheight=300px]
|
|
@@ -482,6 +513,8 @@ Look for the `+` and `-` on individual lines at the far-left.
|
|
|
482
513
|
```tabs
|
|
483
514
|
<<| bash pnpm |>>
|
|
484
515
|
pnpm add @md-plugins/md-plugin-codeblocks
|
|
516
|
+
<<| bash bun |>>
|
|
517
|
+
bun add @md-plugins/md-plugin-codeblocks
|
|
485
518
|
<<| bash yarn |>>
|
|
486
519
|
yarn add @md-plugins/md-plugin-codeblocks
|
|
487
520
|
<<| bash npm |>>
|
|
@@ -492,6 +525,8 @@ npm install @md-plugins/md-plugin-codeblocks
|
|
|
492
525
|
```tabs
|
|
493
526
|
<<| bash pnpm |>>
|
|
494
527
|
pnpm add @md-plugins/md-plugin-codeblocks
|
|
528
|
+
<<| bash bun |>>
|
|
529
|
+
bun add @md-plugins/md-plugin-codeblocks
|
|
495
530
|
<<| bash yarn |>>
|
|
496
531
|
yarn add @md-plugins/md-plugin-codeblocks
|
|
497
532
|
<<| bash npm |>>
|
|
@@ -597,11 +632,13 @@ The official NPM name is `@md-plugins/md-plugin-codeblocks`.
|
|
|
597
632
|
|
|
598
633
|
## Installation
|
|
599
634
|
|
|
600
|
-
You can install the Codeblocks plugin using npm, yarn, or
|
|
635
|
+
You can install the Codeblocks plugin using npm, yarn, pnpm, or bun. Choose your preferred method below:
|
|
601
636
|
|
|
602
637
|
```tabs
|
|
603
638
|
<<| bash pnpm |>>
|
|
604
639
|
pnpm add @md-plugins/md-plugin-codeblocks
|
|
640
|
+
<<| bash bun |>>
|
|
641
|
+
bun add @md-plugins/md-plugin-codeblocks
|
|
605
642
|
<<| bash yarn |>>
|
|
606
643
|
yarn add @md-plugins/md-plugin-codeblocks
|
|
607
644
|
<<| bash npm |>>
|
|
@@ -627,13 +664,13 @@ md.use(codeblocksPlugin, {
|
|
|
627
664
|
preClass: 'markdown-code', // Optional: Customize the class for the pre tag
|
|
628
665
|
codeClass: '', // Optional: Customize the class for the code tag
|
|
629
666
|
pageScripts: [
|
|
630
|
-
"import MarkdownPrerender from '
|
|
631
|
-
"import MarkdownCopyButton from '
|
|
667
|
+
"import MarkdownPrerender from '@/.q-press/components/MarkdownPrerender'", // ts file
|
|
668
|
+
"import MarkdownCopyButton from '@/.q-press/components/MarkdownCopyButton.vue'",
|
|
632
669
|
], // Optional: Include page scripts
|
|
633
670
|
langList: [
|
|
634
671
|
{ name: 'javascript', aliases: 'javascript|js' },
|
|
635
672
|
{ name: 'typescript', aliases: 'typescript|ts' },
|
|
636
|
-
], // Optional: Customize
|
|
673
|
+
], // Optional: Customize Shiki languages
|
|
637
674
|
})
|
|
638
675
|
|
|
639
676
|
// Now you can use the Codeblocks plugin in your Markdown content
|
|
@@ -653,7 +690,7 @@ The Codeblocks plugin accepts the following options:
|
|
|
653
690
|
- **preClass**: The class to be used for the pre tag. Default is `markdown-pre`.
|
|
654
691
|
- **codeClass**: The class to be used for the code tag. Default is `markdown-code`.
|
|
655
692
|
- **pageScripts**: An array of page scripts to be included.
|
|
656
|
-
- **langList**: Optional
|
|
693
|
+
- **langList**: Optional Shiki languages configuration array. Each item can have a name, optional aliases, and customCopy boolean.
|
|
657
694
|
|
|
658
695
|
When `defaultLang` is `markup`, the plugin will use the `markup` language for code blocks which means no highlighting will be applied.
|
|
659
696
|
|
|
@@ -682,13 +719,13 @@ md.use(codeblocksPlugin, {
|
|
|
682
719
|
preClass: 'markdown-pre', // Customize the class for the pre tag
|
|
683
720
|
codeClass: 'markdown-code', // Customize the class for the code tag
|
|
684
721
|
pageScripts: [
|
|
685
|
-
"import MarkdownPrerender from '
|
|
686
|
-
"import MarkdownCopyButton from '
|
|
722
|
+
"import MarkdownPrerender from '@/.q-press/components/MarkdownPrerender'", // ts file
|
|
723
|
+
"import MarkdownCopyButton from '@/.q-press/components/MarkdownCopyButton.vue'",
|
|
687
724
|
], // Include page scripts
|
|
688
725
|
langList: [
|
|
689
726
|
{ name: 'javascript', aliases: 'javascript|js' },
|
|
690
727
|
{ name: 'typescript', aliases: 'typescript|ts' },
|
|
691
|
-
], // Customize
|
|
728
|
+
], // Customize Shiki languages
|
|
692
729
|
})
|
|
693
730
|
.use(markdownItAnchor)
|
|
694
731
|
.use(markdownItToc)
|
|
@@ -89,11 +89,13 @@ The official NPM name is `@md-plugins/md-plugin-containers`.
|
|
|
89
89
|
|
|
90
90
|
## Installation
|
|
91
91
|
|
|
92
|
-
You can install the Containers plugin using npm, yarn, or
|
|
92
|
+
You can install the Containers plugin using npm, yarn, pnpm, or bun. Choose your preferred method below:
|
|
93
93
|
|
|
94
94
|
```tabs
|
|
95
95
|
<<| bash pnpm |>>
|
|
96
96
|
pnpm add @md-plugins/md-plugin-containers
|
|
97
|
+
<<| bash bun |>>
|
|
98
|
+
bun add @md-plugins/md-plugin-containers
|
|
97
99
|
<<| bash yarn |>>
|
|
98
100
|
yarn add @md-plugins/md-plugin-containers
|
|
99
101
|
<<| bash npm |>>
|
|
@@ -54,11 +54,13 @@ The official NPM name is `@md-plugins/md-plugin-frontmatter`.
|
|
|
54
54
|
|
|
55
55
|
## Installation
|
|
56
56
|
|
|
57
|
-
You can install the Frontmatter plugin using npm, yarn, or
|
|
57
|
+
You can install the Frontmatter plugin using npm, yarn, pnpm, or bun. Choose your preferred method below:
|
|
58
58
|
|
|
59
59
|
```tabs
|
|
60
60
|
<<| bash pnpm |>>
|
|
61
61
|
pnpm add @md-plugins/md-plugin-frontmatter
|
|
62
|
+
<<| bash bun |>>
|
|
63
|
+
bun add @md-plugins/md-plugin-frontmatter
|
|
62
64
|
<<| bash yarn |>>
|
|
63
65
|
yarn add @md-plugins/md-plugin-frontmatter
|
|
64
66
|
<<| bash npm |>>
|
|
@@ -56,11 +56,13 @@ The official NPM name is `@md-plugins/md-plugin-headers`.
|
|
|
56
56
|
|
|
57
57
|
## Installation
|
|
58
58
|
|
|
59
|
-
You can install the Headers plugin using npm, yarn, or
|
|
59
|
+
You can install the Headers plugin using npm, yarn, pnpm, or bun. Choose your preferred method below:
|
|
60
60
|
|
|
61
61
|
```tabs
|
|
62
62
|
<<| bash pnpm |>>
|
|
63
63
|
pnpm add @md-plugins/md-plugin-headers
|
|
64
|
+
<<| bash bun |>>
|
|
65
|
+
bun add @md-plugins/md-plugin-headers
|
|
64
66
|
<<| bash yarn |>>
|
|
65
67
|
yarn add @md-plugins/md-plugin-headers
|
|
66
68
|
<<| bash npm |>>
|
|
@@ -58,11 +58,13 @@ The official NPM name is `@md-plugins/md-plugin-image`.
|
|
|
58
58
|
|
|
59
59
|
## Installation
|
|
60
60
|
|
|
61
|
-
You can install the Image plugin using npm, yarn, or
|
|
61
|
+
You can install the Image plugin using npm, yarn, pnpm, or bun. Choose your preferred method below:
|
|
62
62
|
|
|
63
63
|
```tabs
|
|
64
64
|
<<| bash pnpm |>>
|
|
65
65
|
pnpm add @md-plugins/md-plugin-image
|
|
66
|
+
<<| bash bun |>>
|
|
67
|
+
bun add @md-plugins/md-plugin-image
|
|
66
68
|
<<| bash yarn |>>
|
|
67
69
|
yarn add @md-plugins/md-plugin-image
|
|
68
70
|
<<| bash npm |>>
|
|
@@ -39,11 +39,13 @@ The official NPM name is `@md-plugins/md-plugin-imports`.
|
|
|
39
39
|
|
|
40
40
|
## Installation
|
|
41
41
|
|
|
42
|
-
You can install the Imports plugin using npm, yarn, or
|
|
42
|
+
You can install the Imports plugin using npm, yarn, pnpm, or bun. Choose your preferred method below:
|
|
43
43
|
|
|
44
44
|
```tabs
|
|
45
45
|
<<| bash pnpm |>>
|
|
46
46
|
pnpm add @md-plugins/md-plugin-imports
|
|
47
|
+
<<| bash bun |>>
|
|
48
|
+
bun add @md-plugins/md-plugin-imports
|
|
47
49
|
<<| bash yarn |>>
|
|
48
50
|
yarn add @md-plugins/md-plugin-imports
|
|
49
51
|
<<| bash npm |>>
|
|
@@ -33,11 +33,13 @@ The official NPM name is `@md-plugins/md-plugin-inlinecode`.
|
|
|
33
33
|
|
|
34
34
|
## Installation
|
|
35
35
|
|
|
36
|
-
You can install the Inlinecode plugin using npm, yarn, or
|
|
36
|
+
You can install the Inlinecode plugin using npm, yarn, pnpm, or bun. Choose your preferred method below:
|
|
37
37
|
|
|
38
38
|
```tabs
|
|
39
39
|
<<| bash pnpm |>>
|
|
40
40
|
pnpm add @md-plugins/md-plugin-inlinecode
|
|
41
|
+
<<| bash bun |>>
|
|
42
|
+
bun add @md-plugins/md-plugin-inlinecode
|
|
41
43
|
<<| bash yarn |>>
|
|
42
44
|
yarn add @md-plugins/md-plugin-inlinecode
|
|
43
45
|
<<| bash npm |>>
|
|
@@ -83,7 +83,7 @@ The `link` plugin provides several options for customization. Here are the avail
|
|
|
83
83
|
#### pageScript
|
|
84
84
|
|
|
85
85
|
- **Type**: `string`
|
|
86
|
-
- **Default**: `'import MarkdownLink from "
|
|
86
|
+
- **Default**: `'import MarkdownLink from "@/.q-press/components/MarkdownLink.vue"'`
|
|
87
87
|
- **Description**: The script to import the custom link component.
|
|
88
88
|
|
|
89
89
|
### Example Configuration
|
|
@@ -99,7 +99,7 @@ const md = new MarkdownIt()
|
|
|
99
99
|
md.use(linkPlugin, {
|
|
100
100
|
linkTag: 'CustomLink',
|
|
101
101
|
linkToKeyword: 'href',
|
|
102
|
-
pageScript: 'import CustomLink from "
|
|
102
|
+
pageScript: 'import CustomLink from "@/components/CustomLink.vue"',
|
|
103
103
|
})
|
|
104
104
|
```
|
|
105
105
|
|
|
@@ -38,7 +38,7 @@ const md = new MarkdownIt()
|
|
|
38
38
|
md.use(linkPlugin, {
|
|
39
39
|
linkTag: 'CustomLink', // Optional: Customize the link tag
|
|
40
40
|
linkToKeyword: 'href', // Optional: Customize the link keyword
|
|
41
|
-
pageScript: 'import CustomLink from "
|
|
41
|
+
pageScript: 'import CustomLink from "@/components/CustomLink.vue"', // Optional: Add import statement
|
|
42
42
|
})
|
|
43
43
|
|
|
44
44
|
// Now you can use the Link plugin in your Markdown content
|
|
@@ -52,11 +52,13 @@ The official NPM name is `@md-plugins/md-plugin-link`.
|
|
|
52
52
|
|
|
53
53
|
## Installation
|
|
54
54
|
|
|
55
|
-
You can install the Link plugin using npm, yarn, or
|
|
55
|
+
You can install the Link plugin using npm, yarn, pnpm, or bun. Choose your preferred method below:
|
|
56
56
|
|
|
57
57
|
```tabs
|
|
58
58
|
<<| bash pnpm |>>
|
|
59
59
|
pnpm add @md-plugins/md-plugin-link
|
|
60
|
+
<<| bash bun |>>
|
|
61
|
+
bun add @md-plugins/md-plugin-link
|
|
60
62
|
<<| bash yarn |>>
|
|
61
63
|
yarn add @md-plugins/md-plugin-link
|
|
62
64
|
<<| bash npm |>>
|
|
@@ -76,7 +78,7 @@ const md = new MarkdownIt()
|
|
|
76
78
|
md.use(linkPlugin, {
|
|
77
79
|
linkTag: 'CustomLink', // Optional: Customize the link tag
|
|
78
80
|
linkToKeyword: 'href', // Optional: Customize the link keyword
|
|
79
|
-
pageScript: 'import CustomLink from "
|
|
81
|
+
pageScript: 'import CustomLink from "@/components/CustomLink.vue"', // Optional: Add import statement
|
|
80
82
|
})
|
|
81
83
|
|
|
82
84
|
// Now you can use the Link plugin in your Markdown content
|
|
@@ -107,7 +109,7 @@ const md = new MarkdownIt()
|
|
|
107
109
|
md.use(linkPlugin, {
|
|
108
110
|
linkTag: 'CustomLink', // Customize the link tag
|
|
109
111
|
linkToKeyword: 'href', // Customize the link keyword
|
|
110
|
-
pageScript: 'import CustomLink from "
|
|
112
|
+
pageScript: 'import CustomLink from "@/components/CustomLink.vue"', // Add import statement
|
|
111
113
|
})
|
|
112
114
|
.use(markdownItAnchor)
|
|
113
115
|
.use(markdownItToc)
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Mermaid Advanced Topics
|
|
3
|
+
desc: Mermaid plugin options and integration details.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
The Mermaid plugin is small, but it has two different integration paths:
|
|
7
|
+
|
|
8
|
+
- **Component mode** is the Q-Press default. It emits `MarkdownMermaid` and lets Vue render Mermaid on the client.
|
|
9
|
+
- **Pre mode** emits a plain `<pre class="mermaid">` block for custom MarkdownIt pipelines.
|
|
10
|
+
|
|
11
|
+
## Options
|
|
12
|
+
|
|
13
|
+
| Option | Type | Default | Description |
|
|
14
|
+
| --------------- | ---------------------- | -------------------- | -------------------------------------------- |
|
|
15
|
+
| `languages` | `string[]` | `['mermaid', 'mmd']` | Fence languages treated as Mermaid diagrams. |
|
|
16
|
+
| `renderMode` | `'component' \| 'pre'` | `'component'` | Output mode for diagrams. |
|
|
17
|
+
| `componentName` | `string` | `'MarkdownMermaid'` | Component used in component mode. |
|
|
18
|
+
| `codeProp` | `string` | `'code'` | Component prop that receives Mermaid source. |
|
|
19
|
+
| `preClass` | `string` | `'mermaid'` | CSS class used in pre mode. |
|
|
20
|
+
| `pageScripts` | `string[]` | Q-Press import | Imports added to generated Vue pages. |
|
|
21
|
+
|
|
22
|
+
## Component Mode
|
|
23
|
+
|
|
24
|
+
Use component mode when Markdown output is compiled into Vue components:
|
|
25
|
+
|
|
26
|
+
```ts
|
|
27
|
+
import MarkdownIt from 'markdown-it'
|
|
28
|
+
import { mermaidPlugin } from '@md-plugins/md-plugin-mermaid'
|
|
29
|
+
|
|
30
|
+
const md = new MarkdownIt()
|
|
31
|
+
md.use(mermaidPlugin, {
|
|
32
|
+
componentName: 'MarkdownMermaid',
|
|
33
|
+
codeProp: 'code',
|
|
34
|
+
})
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Component mode adds this import to the generated page when a Mermaid fence is found:
|
|
38
|
+
|
|
39
|
+
```ts
|
|
40
|
+
import MarkdownMermaid from '@/.q-press/components/MarkdownMermaid.vue'
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Pre Mode
|
|
44
|
+
|
|
45
|
+
Use pre mode when your app has its own Mermaid bootstrapping:
|
|
46
|
+
|
|
47
|
+
```ts
|
|
48
|
+
import MarkdownIt from 'markdown-it'
|
|
49
|
+
import { mermaidPlugin } from '@md-plugins/md-plugin-mermaid'
|
|
50
|
+
|
|
51
|
+
const md = new MarkdownIt()
|
|
52
|
+
md.use(mermaidPlugin, {
|
|
53
|
+
renderMode: 'pre',
|
|
54
|
+
preClass: 'mermaid',
|
|
55
|
+
})
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
Then run Mermaid after the HTML is mounted:
|
|
59
|
+
|
|
60
|
+
```ts
|
|
61
|
+
import mermaid from 'mermaid'
|
|
62
|
+
|
|
63
|
+
mermaid.initialize({ startOnLoad: false })
|
|
64
|
+
await mermaid.run({ querySelector: '.mermaid' })
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## Security
|
|
68
|
+
|
|
69
|
+
The Q-Press `MarkdownMermaid` component initializes Mermaid with `securityLevel: 'strict'`. Keep that unless you have a specific reason to allow looser rendering.
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Mermaid Plugin
|
|
3
|
+
desc: Render Mermaid diagrams from fenced code blocks.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
The Mermaid plugin turns `mermaid` and `mmd` fenced code blocks into diagrams. In Q-Press and `viteMdPlugin`, Mermaid diagrams render through the generated `MarkdownMermaid` Vue component so diagrams stay client-side and SSR-safe.
|
|
7
|
+
|
|
8
|
+
## Example
|
|
9
|
+
|
|
10
|
+
```mermaid
|
|
11
|
+
flowchart LR
|
|
12
|
+
Markdown[Markdown file] --> Plugin[md-plugin-mermaid]
|
|
13
|
+
Plugin --> Component[MarkdownMermaid]
|
|
14
|
+
Component --> Diagram[Rendered diagram]
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Markdown
|
|
18
|
+
|
|
19
|
+
````markdown
|
|
20
|
+
```mermaid
|
|
21
|
+
flowchart LR
|
|
22
|
+
Markdown[Markdown file] --> Plugin[md-plugin-mermaid]
|
|
23
|
+
Plugin --> Component[MarkdownMermaid]
|
|
24
|
+
Component --> Diagram[Rendered diagram]
|
|
25
|
+
```
|
|
26
|
+
````
|
|
27
|
+
|
|
28
|
+
## Installation
|
|
29
|
+
|
|
30
|
+
You can install the Mermaid plugin using npm, yarn, pnpm, or bun:
|
|
31
|
+
|
|
32
|
+
```tabs
|
|
33
|
+
<<| bash pnpm |>>
|
|
34
|
+
pnpm add @md-plugins/md-plugin-mermaid mermaid
|
|
35
|
+
<<| bash bun |>>
|
|
36
|
+
bun add @md-plugins/md-plugin-mermaid mermaid
|
|
37
|
+
<<| bash yarn |>>
|
|
38
|
+
yarn add @md-plugins/md-plugin-mermaid mermaid
|
|
39
|
+
<<| bash npm |>>
|
|
40
|
+
npm install @md-plugins/md-plugin-mermaid mermaid
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Q-Press installs `mermaid` for generated documentation projects. Direct MarkdownIt users only need `mermaid` if they render diagrams in the browser.
|
|
44
|
+
|
|
45
|
+
## Basic Usage
|
|
46
|
+
|
|
47
|
+
```ts
|
|
48
|
+
import MarkdownIt from 'markdown-it'
|
|
49
|
+
import { mermaidPlugin } from '@md-plugins/md-plugin-mermaid'
|
|
50
|
+
|
|
51
|
+
const md = new MarkdownIt()
|
|
52
|
+
md.use(mermaidPlugin)
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
The default output is a Vue component:
|
|
56
|
+
|
|
57
|
+
```html
|
|
58
|
+
<MarkdownMermaid :code="diagramSource"></MarkdownMermaid>
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
If you own the browser initialization yourself, use plain pre mode:
|
|
62
|
+
|
|
63
|
+
```ts
|
|
64
|
+
md.use(mermaidPlugin, {
|
|
65
|
+
renderMode: 'pre',
|
|
66
|
+
})
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
That renders Mermaid-compatible HTML:
|
|
70
|
+
|
|
71
|
+
```html
|
|
72
|
+
<pre class="mermaid"><code>flowchart LR...</code></pre>
|
|
73
|
+
```
|
|
@@ -1,20 +1,24 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: Shared
|
|
3
|
-
desc: Overview of the shared utilities and types
|
|
2
|
+
title: Shared Package Overview
|
|
3
|
+
desc: Overview of the shared utilities and types used by MD-Plugins packages.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
The
|
|
6
|
+
The `@md-plugins/shared` package provides utilities and types used internally by the MD-Plugins packages. It serves as a common foundation, ensuring consistency and reducing duplication across the different plugins.
|
|
7
|
+
|
|
8
|
+
::: tip
|
|
9
|
+
QPress applications do not need to install or import `@md-plugins/shared` directly. Install it only when you are building a custom Markdown-It plugin or contributing to the MD-Plugins packages themselves.
|
|
10
|
+
:::
|
|
7
11
|
|
|
8
12
|
## Key Features
|
|
9
13
|
|
|
10
14
|
- **Common Utilities**: Provides utility functions that are commonly used across multiple plugins.
|
|
11
15
|
- **Type Definitions**: Includes TypeScript type definitions to ensure type safety and consistency.
|
|
12
16
|
- **Helper Functions**: Offers helper functions to simplify common tasks and operations.
|
|
13
|
-
- **Reusable
|
|
17
|
+
- **Reusable Helpers**: Contains shared helpers that can be leveraged by other MD-Plugins packages.
|
|
14
18
|
|
|
15
19
|
## Utilities
|
|
16
20
|
|
|
17
|
-
The
|
|
21
|
+
The shared package includes a variety of utility functions that can be used to perform common tasks. Some of the key utilities include:
|
|
18
22
|
|
|
19
23
|
- **String Manipulation**: Functions for manipulating and formatting strings.
|
|
20
24
|
- **Array Operations**: Functions for performing common array operations.
|
|
@@ -23,14 +27,12 @@ The `shared` plugin includes a variety of utility functions that can be used to
|
|
|
23
27
|
|
|
24
28
|
## Type Definitions
|
|
25
29
|
|
|
26
|
-
The
|
|
30
|
+
The shared package provides TypeScript type definitions that are used across the MD-Plugins project. These type definitions help ensure type safety and consistency. Some of the key type definitions include:
|
|
27
31
|
|
|
28
32
|
- **MarkdownItEnv**: Defines the structure of the environment object used by MD-Plugins plugins.
|
|
29
33
|
- **PluginOptions**: Defines the structure of the options object passed to plugins.
|
|
30
34
|
|
|
31
|
-
```ts
|
|
32
|
-
import Token from 'markdown-it/lib/token.mjs'
|
|
33
|
-
|
|
35
|
+
```ts [twoslash]
|
|
34
36
|
/**
|
|
35
37
|
* Escape html chars
|
|
36
38
|
*/
|
|
@@ -83,6 +85,19 @@ type ResolvePluginOptionsFn = <T extends object, K extends keyof any>(
|
|
|
83
85
|
defaults: T,
|
|
84
86
|
) => T
|
|
85
87
|
|
|
88
|
+
interface LinkPluginOptions {
|
|
89
|
+
externalTarget?: '_blank' | '_self'
|
|
90
|
+
externalRel?: string
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
const linkOptions = resolvePluginOptions({ link: { externalTarget: '_blank' } }, 'link', {
|
|
94
|
+
externalTarget: '_self',
|
|
95
|
+
externalRel: 'noopener',
|
|
96
|
+
} satisfies LinkPluginOptions)
|
|
97
|
+
|
|
98
|
+
const linkTarget = linkOptions.externalTarget
|
|
99
|
+
// ^?
|
|
100
|
+
|
|
86
101
|
interface ResolveTitleOptions {
|
|
87
102
|
/**
|
|
88
103
|
* Should allow inline HTML tags or not.
|
|
@@ -105,7 +120,7 @@ interface ResolveTitleOptions {
|
|
|
105
120
|
* Typically using the next token of `heading_open` token
|
|
106
121
|
*/
|
|
107
122
|
declare const resolveTitleFromToken: (
|
|
108
|
-
token:
|
|
123
|
+
token: unknown,
|
|
109
124
|
{ shouldAllowHtml, shouldEscapeText }: ResolveTitleOptions,
|
|
110
125
|
) => string
|
|
111
126
|
|
|
@@ -135,7 +150,7 @@ interface ResolveHeadersOptions extends ResolveTitleOptions {
|
|
|
135
150
|
* Resolve headers from markdown-it tokens
|
|
136
151
|
*/
|
|
137
152
|
declare const resolveHeadersFromTokens: (
|
|
138
|
-
tokens:
|
|
153
|
+
tokens: unknown[],
|
|
139
154
|
{
|
|
140
155
|
level,
|
|
141
156
|
shouldAllowHtml,
|
|
@@ -179,7 +194,7 @@ export {
|
|
|
179
194
|
|
|
180
195
|
## Helper Functions
|
|
181
196
|
|
|
182
|
-
The
|
|
197
|
+
The shared package includes a variety of helper functions that simplify common tasks and operations. Some of the key helper functions include:
|
|
183
198
|
|
|
184
199
|
- **resolveTitleFromToken**: Extracts the title from a Markdown token.
|
|
185
200
|
- **parseFrontmatter**: Parses frontmatter content from a Markdown file.
|
|
@@ -190,6 +205,6 @@ The `shared` plugin includes a variety of helper functions that simplify common
|
|
|
190
205
|
|
|
191
206
|
## Conclusion
|
|
192
207
|
|
|
193
|
-
The
|
|
208
|
+
The shared package is an essential internal part of the MD-Plugins project, providing common utilities, type definitions, and helper functions. If you are building custom plugins, you can use it to stay aligned with the same types and helpers used by the official MD-Plugins packages.
|
|
194
209
|
|
|
195
210
|
Happy coding!
|
|
@@ -101,11 +101,13 @@ The official NPM name is `@md-plugins/md-plugin-table`.
|
|
|
101
101
|
|
|
102
102
|
## Installation
|
|
103
103
|
|
|
104
|
-
You can install the Table plugin using npm, yarn, or
|
|
104
|
+
You can install the Table plugin using npm, yarn, pnpm, or bun. Choose your preferred method below:
|
|
105
105
|
|
|
106
106
|
```tabs
|
|
107
107
|
<<| bash pnpm |>>
|
|
108
108
|
pnpm add @md-plugins/md-plugin-table
|
|
109
|
+
<<| bash bun |>>
|
|
110
|
+
bun add @md-plugins/md-plugin-table
|
|
109
111
|
<<| bash yarn |>>
|
|
110
112
|
yarn add @md-plugins/md-plugin-table
|
|
111
113
|
<<| bash npm |>>
|
|
@@ -39,11 +39,13 @@ The official NPM name is `@md-plugins/md-plugin-title`.
|
|
|
39
39
|
|
|
40
40
|
## Installation
|
|
41
41
|
|
|
42
|
-
You can install the Title plugin using npm, yarn, or
|
|
42
|
+
You can install the Title plugin using npm, yarn, pnpm, or bun. Choose your preferred method below:
|
|
43
43
|
|
|
44
44
|
```tabs
|
|
45
45
|
<<| bash pnpm |>>
|
|
46
46
|
pnpm add @md-plugins/md-plugin-title
|
|
47
|
+
<<| bash bun |>>
|
|
48
|
+
bun add @md-plugins/md-plugin-title
|
|
47
49
|
<<| bash yarn |>>
|
|
48
50
|
yarn add @md-plugins/md-plugin-title
|
|
49
51
|
<<| bash npm |>>
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Contact
|
|
3
|
+
desc: Contacting us
|
|
4
|
+
keys: Other
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Have a question about MD-Plugins or Q-Press? We're here to help. Before opening a new issue, please check whether your topic is already covered by the docs or existing GitHub issues.
|
|
8
|
+
|
|
9
|
+
## Check Existing Resources
|
|
10
|
+
|
|
11
|
+
### GitHub issues
|
|
12
|
+
|
|
13
|
+
Search the [MD-Plugins issues](https://github.com/md-plugins/md-plugins/issues) for related bugs, feature requests, and support questions.
|
|
14
|
+
|
|
15
|
+
### GitHub discussions
|
|
16
|
+
|
|
17
|
+
If your question is not a bug report or feature request, start with [GitHub Discussions](https://github.com/md-plugins/md-plugins/discussions).
|
|
18
|
+
|
|
19
|
+
## Provide A Suggestion Or Contribution
|
|
20
|
+
|
|
21
|
+
### GitHub issues
|
|
22
|
+
|
|
23
|
+
Report bugs and request features through [GitHub Issues](https://github.com/md-plugins/md-plugins/issues).
|
|
24
|
+
|
|
25
|
+
### GitHub pull requests
|
|
26
|
+
|
|
27
|
+
If you have a specific fix or improvement, open a pull request against the [MD-Plugins repository](https://github.com/md-plugins/md-plugins).
|
|
28
|
+
|
|
29
|
+
## Start A Discussion
|
|
30
|
+
|
|
31
|
+
### Discord
|
|
32
|
+
|
|
33
|
+
Use the [Quasar Discord](https://chat.quasar.dev) and head to the `#app-extensions` channel.
|
|
34
|
+
|
|
35
|
+
### X / Twitter
|
|
36
|
+
|
|
37
|
+
You can follow MD-Plugins at [@md_plugins](https://twitter.com/md_plugins).
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Bugs and Feature Requests
|
|
3
|
+
desc: How to report bugs and request features
|
|
4
|
+
keys: Contributing
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Checking For Known Issues
|
|
8
|
+
|
|
9
|
+
### GitHub
|
|
10
|
+
|
|
11
|
+
We use GitHub to track bugs and feature requests. Before opening a new issue, please search the [existing MD-Plugins issues](https://github.com/md-plugins/md-plugins/issues).
|
|
12
|
+
|
|
13
|
+
### Documentation
|
|
14
|
+
|
|
15
|
+
Please take a moment to check the relevant plugin, Vite plugin, or Q-Press documentation page. The issue may already be covered there.
|
|
16
|
+
|
|
17
|
+
## Creating An Issue
|
|
18
|
+
|
|
19
|
+
Open a [GitHub issue](https://github.com/md-plugins/md-plugins/issues) and include:
|
|
20
|
+
|
|
21
|
+
- A clear title.
|
|
22
|
+
- The package or Q-Press area involved.
|
|
23
|
+
- Steps to reproduce the problem.
|
|
24
|
+
- Expected behavior and actual behavior.
|
|
25
|
+
- A small reproduction when possible.
|
|
26
|
+
|
|
27
|
+
## Pull Requests
|
|
28
|
+
|
|
29
|
+
If you already have a fix, open a pull request against the [MD-Plugins repository](https://github.com/md-plugins/md-plugins/pulls).
|
|
30
|
+
|
|
31
|
+
## Larger Changes
|
|
32
|
+
|
|
33
|
+
For broader changes, start a discussion first so we can agree on direction before implementation work begins.
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Call to Action
|
|
3
|
+
desc: Things that need help from the community
|
|
4
|
+
keys: Contributing
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Helping Out
|
|
8
|
+
|
|
9
|
+
This page highlights areas where community help would be especially valuable.
|
|
10
|
+
|
|
11
|
+
### Examples
|
|
12
|
+
|
|
13
|
+
Practical examples are one of the best ways to show how MD-Plugins and Q-Press are meant to be used. More focused examples for plugins, containers, code blocks, and Q-Press customization are always useful.
|
|
14
|
+
|
|
15
|
+
### Tests
|
|
16
|
+
|
|
17
|
+
Additional tests help keep the package collection stable as the Quasar, Vite, and Markdown ecosystems move forward.
|
|
18
|
+
|
|
19
|
+
### Documentation
|
|
20
|
+
|
|
21
|
+
If a page feels unclear, too sparse, or missing a migration note, documentation help is welcome.
|
|
22
|
+
|
|
23
|
+
### Accessibility
|
|
24
|
+
|
|
25
|
+
Markdown output should remain readable and accessible in both light and dark modes. Contrast, focus behavior, generated links, and semantic markup are all good areas to improve.
|