@@ -25,12 +25,15 @@ interface Step {
2525 codeProps : CodeProps
2626}
2727
28- const defaultFilename = "App.js"
28+ interface Options {
29+ defaultFileName ?: string
30+ }
2931
3032function useMdxSteps (
3133 mdx : React . ReactNode ,
3234 previewProps : PreviewProps ,
33- codeProps : CodeProps
35+ codeProps : CodeProps ,
36+ options : Options = { }
3437) {
3538 const steps : Step [ ] = [ ]
3639 let prevFiles : CodeFiles = { }
@@ -41,7 +44,8 @@ function useMdxSteps(
4144 const { files, activeFile } = getFiles (
4245 stepHeadProps ,
4346 prevFiles ,
44- prevActiveFile
47+ prevActiveFile ,
48+ options . defaultFileName
4549 )
4650 const step = {
4751 content : [ ] ,
@@ -69,7 +73,8 @@ function useMdxSteps(
6973function getFiles (
7074 stepHeadProps : StepHeadProps ,
7175 prevFiles : CodeFiles = { } ,
72- prevActiveFile : string = ""
76+ prevActiveFile : string = "" ,
77+ defaultFileName : string = "App.js"
7378) {
7479 let activeFile = stepHeadProps . activeFile || ""
7580 const files = { ...prevFiles }
@@ -80,7 +85,7 @@ function getFiles(
8085 preElement ?. props ?. children ?. props || { }
8186 const lang = codeElementProps . className ?. slice ( 9 )
8287 const { filename, hideTab } = parseMetastring (
83- codeElementProps . metastring || defaultFilename
88+ codeElementProps . metastring || defaultFileName
8489 )
8590 const code = codeElementProps . children
8691 files [ filename ] = { code, lang, hideTab }
0 commit comments