Skip to content

Commit 324d15c

Browse files
committed
Add defaultFileName option to mdx steps
1 parent fe7ae10 commit 324d15c

File tree

1 file changed

+10
-5
lines changed

1 file changed

+10
-5
lines changed

packages/scrollycoding/src/mdx-steps.tsx

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,15 @@ interface Step {
2525
codeProps: CodeProps
2626
}
2727

28-
const defaultFilename = "App.js"
28+
interface Options {
29+
defaultFileName?: string
30+
}
2931

3032
function 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(
6973
function 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

Comments
 (0)