Jacky Zhao
2023-07-22 8dd73704e6e95254d2addf51fede6329f90796b8
quartz/bootstrap-cli.mjs
@@ -72,7 +72,7 @@
  serve: {
    boolean: true,
    default: false,
    describe: 'run a local server to preview your Quartz'
    describe: 'run a local server to live-preview your Quartz'
  },
  port: {
    number: true,
@@ -128,16 +128,6 @@
      ]
    }))
    // TODO
    const linkResolutionStrategy = exitIfCancel(await select({
      message: `Choose how Quartz should resolve links in your content. You can change this later in \`quartz.config.ts\`.`,
      options: [
        { value: 'absolute', label: "Treat links as absolute path", hint: "for content made for Quartz 3 and Hugo" },
        { value: 'shortest', label: "Treat links as shortest path", hint: "for most Obsidian vaults" },
        { value: 'relative', label: "Treat links as relative paths", hint: "for just normal Markdown files" },
      ]
    }))
    async function rmContentFolder() {
      const contentStat = await fs.promises.lstat(contentFolder)
      if (contentStat) {
@@ -182,6 +172,16 @@
`
      )
    }
    // get a prefered link resolution strategy
    const linkResolutionStrategy = exitIfCancel(await select({
      message: `Choose how Quartz should resolve links in your content. You can change this later in \`quartz.config.ts\`.`,
      options: [
        { value: 'absolute', label: "Treat links as absolute path", hint: "for content made for Quartz 3 and Hugo" },
        { value: 'shortest', label: "Treat links as shortest path", hint: "for most Obsidian vaults" },
        { value: 'relative', label: "Treat links as relative paths", hint: "for just normal Markdown files" },
      ]
    }))
    // now, do config changes
    const configFilePath = path.join(cwd, "quartz.config.ts")
@@ -255,6 +255,7 @@
          setup(build) {
            build.onLoad({ filter: /\.inline\.(ts|js)$/ }, async (args) => {
              let text = await promises.readFile(args.path, 'utf8')
              // remove default exports that we manually inserted
              text = text.replace('export default', '')
              text = text.replace('export', '')
@@ -295,8 +296,8 @@
      console.log(`Successfully transpiled ${Object.keys(meta.inputs).length} files (${prettyBytes(meta.bytes)})`)
    }
    const { default: init } = await import(cacheFile)
    init(argv, version)
    const { default: buildQuartz } = await import(cacheFile)
    buildQuartz(argv, version)
  })
  .showHelpOnFail(false)
  .help()