File tree 1 file changed +12
-3
lines changed
packages/vite-plugin-angular/src/lib/authoring
1 file changed +12
-3
lines changed Original file line number Diff line number Diff line change 1
1
import { FRONTMATTER_REGEX } from './constants.js' ;
2
2
import { type VFile } from 'vfile' ;
3
+ import { type MarkedSetupService } from './marked-setup.service.js' ;
3
4
4
5
export type MarkdownTemplateTransform = (
5
6
content : string ,
6
7
fileName : string
7
8
) => string | Promise < string > | Promise < VFile > ;
8
9
10
+ let markedSetupServicePromise : undefined | Promise < MarkedSetupService > ;
11
+
9
12
export const defaultMarkdownTemplateTransform : MarkdownTemplateTransform =
10
13
async ( content : string ) => {
11
- const { MarkedSetupService } = await import ( './marked-setup.service.js' ) ;
12
-
14
+ if ( ! markedSetupServicePromise ) {
15
+ // set immediately to prevent other calls from seeing markedSetupServicePromise as
16
+ // undefined - can't use await here
17
+ markedSetupServicePromise = import ( './marked-setup.service.js' ) . then (
18
+ ( { MarkedSetupService } ) => new MarkedSetupService ( )
19
+ ) ;
20
+ }
13
21
// read template sections, parse markdown
14
- const markedSetupService = new MarkedSetupService ( ) ;
22
+ const markedSetupService = await markedSetupServicePromise ;
23
+
15
24
const mdContent = markedSetupService
16
25
. getMarkedInstance ( )
17
26
. parse (
You can’t perform that action at this time.
0 commit comments