fix: safely handle undefined getDate in byDateAndAlphabetical

This commit is contained in:
saberzero1 2026-04-03 15:58:13 +02:00
parent fbc9d6e9cb
commit cf1450b6f7
No known key found for this signature in database
5 changed files with 20 additions and 20 deletions

12
dist/index.js vendored
View file

@ -394,13 +394,13 @@ function getDate(data) {
}
function byDateAndAlphabetical() {
return (f1, f2) => {
const f1Dates = f1.dates;
const f2Dates = f2.dates;
if (f1Dates && f2Dates) {
return getDate(f2).getTime() - getDate(f1).getTime();
} else if (f1Dates && !f2Dates) {
const f1Date = getDate(f1);
const f2Date = getDate(f2);
if (f1Date && f2Date) {
return f2Date.getTime() - f1Date.getTime();
} else if (f1Date && !f2Date) {
return -1;
} else if (!f1Dates && f2Dates) {
} else if (!f1Date && f2Date) {
return 1;
}
const f1Title = (f1.frontmatter?.title ?? "").toLowerCase();

2
dist/index.js.map vendored

File diff suppressed because one or more lines are too long

12
dist/sort.js vendored
View file

@ -9,13 +9,13 @@ function getDate(data) {
}
function byDateAndAlphabetical() {
return (f1, f2) => {
const f1Dates = f1.dates;
const f2Dates = f2.dates;
if (f1Dates && f2Dates) {
return getDate(f2).getTime() - getDate(f1).getTime();
} else if (f1Dates && !f2Dates) {
const f1Date = getDate(f1);
const f2Date = getDate(f2);
if (f1Date && f2Date) {
return f2Date.getTime() - f1Date.getTime();
} else if (f1Date && !f2Date) {
return -1;
} else if (!f1Dates && f2Dates) {
} else if (!f1Date && f2Date) {
return 1;
}
const f1Title = (f1.frontmatter?.title ?? "").toLowerCase();

2
dist/sort.js.map vendored
View file

@ -1 +1 @@
{"version":3,"sources":["../src/sort.ts"],"names":[],"mappings":";AAEO,SAAS,QAAQ,IAAA,EAA0C;AAChE,EAAA,MAAM,kBAAkB,IAAA,CAAK,eAAA;AAC7B,EAAA,IAAI,CAAC,eAAA,EAAiB;AACpB,IAAA,OAAO,MAAA;AAAA,EACT;AACA,EAAA,MAAM,QAAQ,IAAA,CAAK,KAAA;AACnB,EAAA,OAAO,QAAQ,eAAe,CAAA;AAChC;AAEO,SAAS,qBAAA,GAAgC;AAC9C,EAAA,OAAO,CAAC,IAAI,EAAA,KAAO;AACjB,IAAA,MAAM,UAAU,EAAA,CAAG,KAAA;AACnB,IAAA,MAAM,UAAU,EAAA,CAAG,KAAA;AACnB,IAAA,IAAI,WAAW,OAAA,EAAS;AACtB,MAAA,OAAO,OAAA,CAAQ,EAAE,CAAA,CAAG,OAAA,KAAY,OAAA,CAAQ,EAAE,EAAG,OAAA,EAAQ;AAAA,IACvD,CAAA,MAAA,IAAW,OAAA,IAAW,CAAC,OAAA,EAAS;AAC9B,MAAA,OAAO,EAAA;AAAA,IACT,CAAA,MAAA,IAAW,CAAC,OAAA,IAAW,OAAA,EAAS;AAC9B,MAAA,OAAO,CAAA;AAAA,IACT;AAEA,IAAA,MAAM,OAAA,GAAA,CACF,EAAA,CAAG,WAAA,EAAyC,KAAA,IAAoB,IAClE,WAAA,EAAY;AACd,IAAA,MAAM,OAAA,GAAA,CACF,EAAA,CAAG,WAAA,EAAyC,KAAA,IAAoB,IAClE,WAAA,EAAY;AACd,IAAA,OAAO,OAAA,CAAQ,cAAc,OAAO,CAAA;AAAA,EACtC,CAAA;AACF","file":"sort.js","sourcesContent":["import type { QuartzPluginData, ValidDateType, SortFn } from \"@quartz-community/types\";\n\nexport function getDate(data: QuartzPluginData): Date | undefined {\n const defaultDateType = data.defaultDateType as ValidDateType | undefined;\n if (!defaultDateType) {\n return undefined;\n }\n const dates = data.dates as Record<ValidDateType, Date> | undefined;\n return dates?.[defaultDateType];\n}\n\nexport function byDateAndAlphabetical(): SortFn {\n return (f1, f2) => {\n const f1Dates = f1.dates as Record<string, Date> | undefined;\n const f2Dates = f2.dates as Record<string, Date> | undefined;\n if (f1Dates && f2Dates) {\n return getDate(f2)!.getTime() - getDate(f1)!.getTime();\n } else if (f1Dates && !f2Dates) {\n return -1;\n } else if (!f1Dates && f2Dates) {\n return 1;\n }\n\n const f1Title = (\n ((f1.frontmatter as Record<string, unknown>)?.title as string) ?? \"\"\n ).toLowerCase();\n const f2Title = (\n ((f2.frontmatter as Record<string, unknown>)?.title as string) ?? \"\"\n ).toLowerCase();\n return f1Title.localeCompare(f2Title);\n };\n}\n"]}
{"version":3,"sources":["../src/sort.ts"],"names":[],"mappings":";AAEO,SAAS,QAAQ,IAAA,EAA0C;AAChE,EAAA,MAAM,kBAAkB,IAAA,CAAK,eAAA;AAC7B,EAAA,IAAI,CAAC,eAAA,EAAiB;AACpB,IAAA,OAAO,MAAA;AAAA,EACT;AACA,EAAA,MAAM,QAAQ,IAAA,CAAK,KAAA;AACnB,EAAA,OAAO,QAAQ,eAAe,CAAA;AAChC;AAEO,SAAS,qBAAA,GAAgC;AAC9C,EAAA,OAAO,CAAC,IAAI,EAAA,KAAO;AACjB,IAAA,MAAM,MAAA,GAAS,QAAQ,EAAE,CAAA;AACzB,IAAA,MAAM,MAAA,GAAS,QAAQ,EAAE,CAAA;AACzB,IAAA,IAAI,UAAU,MAAA,EAAQ;AACpB,MAAA,OAAO,MAAA,CAAO,OAAA,EAAQ,GAAI,MAAA,CAAO,OAAA,EAAQ;AAAA,IAC3C,CAAA,MAAA,IAAW,MAAA,IAAU,CAAC,MAAA,EAAQ;AAC5B,MAAA,OAAO,EAAA;AAAA,IACT,CAAA,MAAA,IAAW,CAAC,MAAA,IAAU,MAAA,EAAQ;AAC5B,MAAA,OAAO,CAAA;AAAA,IACT;AAEA,IAAA,MAAM,OAAA,GAAA,CACF,EAAA,CAAG,WAAA,EAAyC,KAAA,IAAoB,IAClE,WAAA,EAAY;AACd,IAAA,MAAM,OAAA,GAAA,CACF,EAAA,CAAG,WAAA,EAAyC,KAAA,IAAoB,IAClE,WAAA,EAAY;AACd,IAAA,OAAO,OAAA,CAAQ,cAAc,OAAO,CAAA;AAAA,EACtC,CAAA;AACF","file":"sort.js","sourcesContent":["import type { QuartzPluginData, ValidDateType, SortFn } from \"@quartz-community/types\";\n\nexport function getDate(data: QuartzPluginData): Date | undefined {\n const defaultDateType = data.defaultDateType as ValidDateType | undefined;\n if (!defaultDateType) {\n return undefined;\n }\n const dates = data.dates as Record<ValidDateType, Date> | undefined;\n return dates?.[defaultDateType];\n}\n\nexport function byDateAndAlphabetical(): SortFn {\n return (f1, f2) => {\n const f1Date = getDate(f1);\n const f2Date = getDate(f2);\n if (f1Date && f2Date) {\n return f2Date.getTime() - f1Date.getTime();\n } else if (f1Date && !f2Date) {\n return -1;\n } else if (!f1Date && f2Date) {\n return 1;\n }\n\n const f1Title = (\n ((f1.frontmatter as Record<string, unknown>)?.title as string) ?? \"\"\n ).toLowerCase();\n const f2Title = (\n ((f2.frontmatter as Record<string, unknown>)?.title as string) ?? \"\"\n ).toLowerCase();\n return f1Title.localeCompare(f2Title);\n };\n}\n"]}

View file

@ -11,13 +11,13 @@ export function getDate(data: QuartzPluginData): Date | undefined {
export function byDateAndAlphabetical(): SortFn {
return (f1, f2) => {
const f1Dates = f1.dates as Record<string, Date> | undefined;
const f2Dates = f2.dates as Record<string, Date> | undefined;
if (f1Dates && f2Dates) {
return getDate(f2)!.getTime() - getDate(f1)!.getTime();
} else if (f1Dates && !f2Dates) {
const f1Date = getDate(f1);
const f2Date = getDate(f2);
if (f1Date && f2Date) {
return f2Date.getTime() - f1Date.getTime();
} else if (f1Date && !f2Date) {
return -1;
} else if (!f1Dates && f2Dates) {
} else if (!f1Date && f2Date) {
return 1;
}