From d8b16ab6f67210ec809716286cbdfabf8f017bc0 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 16 Jul 2025 14:50:16 +0000 Subject: [PATCH 1/3] Initial plan From fe3b0442369ece05884769ee60503615b9e1ae85 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 16 Jul 2025 14:55:07 +0000 Subject: [PATCH 2/3] Reproduce issue with YYYY date format showing as Jan YYYY Co-authored-by: reorx <405972+reorx@users.noreply.github.com> --- sample.cv.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sample.cv.json b/sample.cv.json index db00400..c68dd14 100644 --- a/sample.cv.json +++ b/sample.cv.json @@ -34,7 +34,7 @@ "description": "AI-powered data optimization company", "position": "Senior Engineering Manager", "url": "http://nucleuslabs.example.com", - "startDate": "2023-01", + "startDate": "2023", "endDate": null, "summary": "Currently leading a team of engineers developing next-generation AI algorithms for data compression and optimization.", "highlights": [ @@ -140,7 +140,7 @@ "awards": [ { "title": "Digital Compression Pioneer Award", - "date": "2014-11-01", + "date": "2014", "awarder": "Techcrunch", "summary": "There is no spoon." }, From ca77ca85f920383258be4f16ab1817d2cfe14753 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 16 Jul 2025 15:00:47 +0000 Subject: [PATCH 3/3] Fix YYYY date formatting across all sections Co-authored-by: reorx <405972+reorx@users.noreply.github.com> --- sample.cv.json | 4 ++-- src/themes/reorx/index.ejs | 42 ++++++++++++++++++++++++++++++++------ 2 files changed, 38 insertions(+), 8 deletions(-) diff --git a/sample.cv.json b/sample.cv.json index c68dd14..2d10807 100644 --- a/sample.cv.json +++ b/sample.cv.json @@ -115,7 +115,7 @@ "url": "https://www.ou.edu/", "area": "Information Technology", "studyType": "Bachelor", - "startDate": "2011-06-01", + "startDate": "2011", "endDate": "2014-01-01", "score": "4.0", "courses": [ @@ -155,7 +155,7 @@ { "name": "Video compression for 3d media", "publisher": "Hooli", - "releaseDate": "2014-10-01", + "releaseDate": "2014-10", "url": "http://en.wikipedia.org/wiki/Silicon_Valley_(TV_series)", "summary": "Innovative middle-out compression algorithm that changes the way we store data." }, diff --git a/src/themes/reorx/index.ejs b/src/themes/reorx/index.ejs index 2a30151..ec5e549 100644 --- a/src/themes/reorx/index.ejs +++ b/src/themes/reorx/index.ejs @@ -33,8 +33,28 @@ function dateRange(item, level) { break; } if (format) { - startDate = startDate ? fn.reformatDate(startDate, format) : '' - endDate = endDate ? fn.reformatDate(endDate, format) : '' + // Handle YYYY-only and YYYY-MM dates + if (startDate && /^\d{4}$/.test(startDate)) { + // YYYY format - return as-is + startDate = startDate + } else if (startDate && /^\d{4}-\d{2}$/.test(startDate)) { + // YYYY-MM format - format as MMM YYYY + startDate = fn.reformatDate(startDate, 'MMM YYYY') + } else { + // Other formats (YYYY-MM-DD, etc.) + startDate = startDate ? fn.reformatDate(startDate, format) : '' + } + + if (endDate && /^\d{4}$/.test(endDate)) { + // YYYY format - return as-is + endDate = endDate + } else if (endDate && /^\d{4}-\d{2}$/.test(endDate)) { + // YYYY-MM format - format as MMM YYYY + endDate = fn.reformatDate(endDate, 'MMM YYYY') + } else { + // Other formats (YYYY-MM-DD, etc.) + endDate = endDate ? fn.reformatDate(endDate, format) : '' + } } let result = '' if (startDate && endDate) { @@ -49,8 +69,8 @@ function dateRange(item, level) { %> <% -function date(item, level) { - let {date} = item +function date(item, level, fieldName = 'date') { + let date = item[fieldName] if (!date) return '' let format // level: 1: year, 2: month, 3: day @@ -63,7 +83,17 @@ function date(item, level) { break; } if (format) { - date = date ? fn.reformatDate(date, format) : '' + // Handle YYYY-only and YYYY-MM dates + if (/^\d{4}$/.test(date)) { + // YYYY format - return as-is + date = date + } else if (/^\d{4}-\d{2}$/.test(date)) { + // YYYY-MM format - format as MMM YYYY + date = fn.reformatDate(date, 'MMM YYYY') + } else { + // Other formats (YYYY-MM-DD, etc.) + date = date ? fn.reformatDate(date, format) : '' + } } return `