summaryrefslogtreecommitdiff
path: root/packages/markdown/remark/src/load-plugins.ts
diff options
context:
space:
mode:
authorGravatar Juan Martín Seery <me@juanm04.com> 2022-02-04 15:49:50 -0300
committerGravatar GitHub <noreply@github.com> 2022-02-04 13:49:50 -0500
commitcfeaa9414acdecec6f5d66ee0e33fe4fde574eee (patch)
tree2c27727d025905958c76614693184f83db106033 /packages/markdown/remark/src/load-plugins.ts
parent8f9b1cbc8bf76455efa96ab591d6293aa8a43964 (diff)
downloadastro-cfeaa9414acdecec6f5d66ee0e33fe4fde574eee.tar.gz
astro-cfeaa9414acdecec6f5d66ee0e33fe4fde574eee.tar.zst
astro-cfeaa9414acdecec6f5d66ee0e33fe4fde574eee.zip
fix: import local plugins into markdown (#2534)
* Replaced "UnifiedPluginImport" for a function * Updated tests * Updated docs * Updated examples * Added changeset * Fixed tests * Removed unused "UnifiedPluginImport" * Duplicated add-classes.mjs
Diffstat (limited to 'packages/markdown/remark/src/load-plugins.ts')
-rw-r--r--packages/markdown/remark/src/load-plugins.ts15
1 files changed, 8 insertions, 7 deletions
diff --git a/packages/markdown/remark/src/load-plugins.ts b/packages/markdown/remark/src/load-plugins.ts
index b1e72ae36..139eeaf19 100644
--- a/packages/markdown/remark/src/load-plugins.ts
+++ b/packages/markdown/remark/src/load-plugins.ts
@@ -1,26 +1,27 @@
import * as unified from 'unified';
-import type { Plugin, UnifiedPluginImport } from './types';
+import type { Plugin } from './types';
-async function importPlugin(p: string | UnifiedPluginImport): UnifiedPluginImport {
+async function importPlugin(p: string | unified.Plugin): Promise<unified.Plugin> {
if (typeof p === 'string') {
- return await import(p);
+ const importResult = await import(p);
+ return importResult.default;
}
- return await p;
+ return p;
}
-export function loadPlugins(items: Plugin[]): Promise<[unified.Plugin] | [unified.Plugin, any]>[] {
+export function loadPlugins(items: Plugin[]): Promise<[unified.Plugin, any?]>[] {
return items.map((p) => {
return new Promise((resolve, reject) => {
if (Array.isArray(p)) {
const [plugin, opts] = p;
return importPlugin(plugin)
- .then((m) => resolve([m.default, opts]))
+ .then((m) => resolve([m, opts]))
.catch((e) => reject(e));
}
return importPlugin(p)
- .then((m) => resolve([m.default]))
+ .then((m) => resolve([m]))
.catch((e) => reject(e));
});
});