fix(transformer): use variable for repository workdir

use default value if repo.workdir is undefined to user fullFp value
This commit is contained in:
Dralagen 2025-03-19 00:06:33 +01:00
parent baa9a49c8c
commit cba7eb680f

View File

@ -35,9 +35,11 @@ export const CreatedModifiedDate: QuartzTransformerPlugin<Partial<Options>> = (u
return [ return [
() => { () => {
let repo: Repository | undefined = undefined let repo: Repository | undefined = undefined
let repositoryWorkdir: string
if (opts.priority.includes("git")) { if (opts.priority.includes("git")) {
try { try {
repo = Repository.discover(ctx.argv.directory) repo = Repository.discover(ctx.argv.directory)
repositoryWorkdir = repo.workdir() ?? ""
} catch (e) { } catch (e) {
console.log( console.log(
chalk.yellow(`\nWarning: couldn't find git repository for ${ctx.argv.directory}`), chalk.yellow(`\nWarning: couldn't find git repository for ${ctx.argv.directory}`),
@ -62,8 +64,8 @@ export const CreatedModifiedDate: QuartzTransformerPlugin<Partial<Options>> = (u
modified ||= file.data.frontmatter.modified as MaybeDate modified ||= file.data.frontmatter.modified as MaybeDate
published ||= file.data.frontmatter.published as MaybeDate published ||= file.data.frontmatter.published as MaybeDate
} else if (source === "git" && repo) { } else if (source === "git" && repo) {
const relativePath = path.relative(repo.workdir()!, fullFp)
try { try {
const relativePath = path.relative(repositoryWorkdir, fullFp)
modified ||= await repo.getFileLatestModifiedDateAsync(relativePath) modified ||= await repo.getFileLatestModifiedDateAsync(relativePath)
} catch { } catch {
console.log( console.log(