summaryrefslogtreecommitdiff
path: root/packages/markdown/remark/src/load-plugins.ts
diff options
context:
space:
mode:
authorGravatar Juan Martín Seery <me@juanm04.com> 2022-04-11 20:01:12 -0300
committerGravatar GitHub <noreply@github.com> 2022-04-11 16:01:12 -0700
commitb835e285defb4f31fc5ac1039c7f607c07f3c00b (patch)
tree71e4ba696d06e25fd6e42b556a384adf7e2d1a53 /packages/markdown/remark/src/load-plugins.ts
parent11766acec914ffc2639dfb228468ebab37de746d (diff)
downloadastro-b835e285defb4f31fc5ac1039c7f607c07f3c00b.tar.gz
astro-b835e285defb4f31fc5ac1039c7f607c07f3c00b.tar.zst
astro-b835e285defb4f31fc5ac1039c7f607c07f3c00b.zip
feat: markdown config typechecking (#2970)
* Added schemas to markdown plugin * Added new schemas to main package * Changesets * typeraw * Explaination about the weird type hack * Added markdown.mode to config * Added comment * Formatted * Moved validation to `astro` and added RemarkPlugin ad RehypePlugin * Removed the ability to have a custom markdown renderer internally * Fixed plugin type * Removed unused renderMarkdownWithFrontmatter * Added missing dependency * Dynamically import astro markdown * Cache import
Diffstat (limited to 'packages/markdown/remark/src/load-plugins.ts')
-rw-r--r--packages/markdown/remark/src/load-plugins.ts5
1 files changed, 3 insertions, 2 deletions
diff --git a/packages/markdown/remark/src/load-plugins.ts b/packages/markdown/remark/src/load-plugins.ts
index 139eeaf19..c64d13543 100644
--- a/packages/markdown/remark/src/load-plugins.ts
+++ b/packages/markdown/remark/src/load-plugins.ts
@@ -1,5 +1,4 @@
import * as unified from 'unified';
-import type { Plugin } from './types';
async function importPlugin(p: string | unified.Plugin): Promise<unified.Plugin> {
if (typeof p === 'string') {
@@ -10,7 +9,9 @@ async function importPlugin(p: string | unified.Plugin): Promise<unified.Plugin>
return p;
}
-export function loadPlugins(items: Plugin[]): Promise<[unified.Plugin, any?]>[] {
+export function loadPlugins(
+ items: (string | [string, any] | unified.Plugin<any[], any> | [unified.Plugin<any[], any>, any])[]
+): Promise<[unified.Plugin, any?]>[] {
return items.map((p) => {
return new Promise((resolve, reject) => {
if (Array.isArray(p)) {