feat: add warning for missing home page
This commit is contained in:
		@@ -7,6 +7,7 @@ import { FullPageLayout } from "../../cfg"
 | 
				
			|||||||
import { FilePath, pathToRoot } from "../../util/path"
 | 
					import { FilePath, pathToRoot } from "../../util/path"
 | 
				
			||||||
import { defaultContentPageLayout, sharedPageComponents } from "../../../quartz.layout"
 | 
					import { defaultContentPageLayout, sharedPageComponents } from "../../../quartz.layout"
 | 
				
			||||||
import { Content } from "../../components"
 | 
					import { Content } from "../../components"
 | 
				
			||||||
 | 
					import chalk from "chalk"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export const ContentPage: QuartzEmitterPlugin<Partial<FullPageLayout>> = (userOpts) => {
 | 
					export const ContentPage: QuartzEmitterPlugin<Partial<FullPageLayout>> = (userOpts) => {
 | 
				
			||||||
  const opts: FullPageLayout = {
 | 
					  const opts: FullPageLayout = {
 | 
				
			||||||
@@ -29,8 +30,14 @@ export const ContentPage: QuartzEmitterPlugin<Partial<FullPageLayout>> = (userOp
 | 
				
			|||||||
      const cfg = ctx.cfg.configuration
 | 
					      const cfg = ctx.cfg.configuration
 | 
				
			||||||
      const fps: FilePath[] = []
 | 
					      const fps: FilePath[] = []
 | 
				
			||||||
      const allFiles = content.map((c) => c[1].data)
 | 
					      const allFiles = content.map((c) => c[1].data)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      let containsIndex = false
 | 
				
			||||||
      for (const [tree, file] of content) {
 | 
					      for (const [tree, file] of content) {
 | 
				
			||||||
        const slug = file.data.slug!
 | 
					        const slug = file.data.slug!
 | 
				
			||||||
 | 
					        if (slug === "index") {
 | 
				
			||||||
 | 
					          containsIndex = true
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        const externalResources = pageResources(pathToRoot(slug), resources)
 | 
					        const externalResources = pageResources(pathToRoot(slug), resources)
 | 
				
			||||||
        const componentData: QuartzComponentProps = {
 | 
					        const componentData: QuartzComponentProps = {
 | 
				
			||||||
          fileData: file.data,
 | 
					          fileData: file.data,
 | 
				
			||||||
@@ -50,6 +57,15 @@ export const ContentPage: QuartzEmitterPlugin<Partial<FullPageLayout>> = (userOp
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
        fps.push(fp)
 | 
					        fps.push(fp)
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      if (!containsIndex) {
 | 
				
			||||||
 | 
					        console.log(
 | 
				
			||||||
 | 
					          chalk.yellow(
 | 
				
			||||||
 | 
					            `\nWarning: you seem to be missing an \`index.md\` home page file at the root of your \`${ctx.argv.directory}\` folder. This may cause errors when deploying.`,
 | 
				
			||||||
 | 
					          ),
 | 
				
			||||||
 | 
					        )
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      return fps
 | 
					      return fps
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user