From 81f8198591cab756b3a2b476f0635d7f8bb41fa0 Mon Sep 17 00:00:00 2001 From: Reorx Date: Tue, 7 Feb 2023 23:39:11 +0800 Subject: [PATCH] add side-projects and meta in reorx theme --- sample.resume.json | 11 ++++++ src/themes/reorx/index.ejs | 76 +++++++++++++++++++++++++++---------- src/themes/reorx/index.scss | 18 ++++++++- 3 files changed, 82 insertions(+), 23 deletions(-) diff --git a/sample.resume.json b/sample.resume.json index 7a9dfeb..b6e959d 100644 --- a/sample.resume.json +++ b/sample.resume.json @@ -153,6 +153,17 @@ "type": "application" } ], + "sideProjects": [ + { + "name": "Bebop", + "description": "A spaceship that flies", + "url": "https://bebop.example.com", + "startDate": "2022-01-01", + "keywords": [ + "Aerodynamics", "Space travel", "Rocket science" + ] + } + ], "meta": { "canonical": "https://raw.githubusercontent.com/jsonresume/resume-schema/master/resume.json", "version": "v1.0.0", diff --git a/src/themes/reorx/index.ejs b/src/themes/reorx/index.ejs index 8c5566a..340965b 100644 --- a/src/themes/reorx/index.ejs +++ b/src/themes/reorx/index.ejs @@ -39,15 +39,32 @@ function linkInDiv(url) { <% -function dateRange(item, preserveDay) { +function dateRange(item, level) { let {startDate, endDate} = item if (!startDate && !endDate) return '' - if (!preserveDay) { - const format = 'MMM YYYY' - startDate = fn.reformatDate(startDate, format) - endDate = fn.reformatDate(endDate, format) + let format + // level: 1: year, 2: month, 3: day + switch (level) { + case 1: + format = 'YYYY' + break; + case 2: + format = 'MMM YYYY' + break; } - return `
${startDate} – ${endDate}
` + if (format) { + startDate = startDate ? fn.reformatDate(startDate, format) : '' + endDate = endDate ? fn.reformatDate(endDate, format) : '' + } + let result = '' + if (startDate && endDate) { + result = `${startDate} – ${endDate}` + } else if (startDate) { + result = `Since ${startDate}` + } else if (endDate) { + result = `Until ${endDate}` + } + return `
${result}
` } %> @@ -62,7 +79,7 @@ function dateRange(item, preserveDay) {

<%= item.institution %>

- <%- dateRange(item) %> + <%- dateRange(item, 2) %>
<%= item.studyType %>, <%= item.area %> @@ -90,7 +107,7 @@ function dateRange(item, preserveDay) {

<%= item.name %>

- <%- dateRange(item) %> + <%- dateRange(item, 2) %>
<%= item.position %>
<%= item.summary %>
@@ -120,7 +137,7 @@ function dateRange(item, preserveDay) {

<%= item.name %>

- <%- dateRange(item) %> + <%- dateRange(item, 2) %>
<%= item.description %>
<% if (item.highlights && item.highlights.length > 0) { %> @@ -132,7 +149,7 @@ function dateRange(item, preserveDay) {
<% } %> -
+
<% for (const kw of item.keywords) { %> <%= kw %> <% } %> @@ -152,19 +169,19 @@ function dateRange(item, preserveDay) {
<% for (const item of cv.sideProjects) { %>
-

<%= item.name %>

-

<%= item.url %>

-

<%= item.description %>

- <%- dateRange(item) %> +
+

<%= item.name %>

+ <%- dateRange(item, 1) %> +
+
<%= item.description %>
<% if (item.keywords && item.keywords.length > 0) { %> - - <% } %> -
+
<% for (const kw of item.keywords) { %> <%= kw %> <% } %>
-
+ <% } %> + <%- linkInDiv(item.url) %>
<% } %> @@ -183,13 +200,12 @@ function dateRange(item, preserveDay) {

<%= item.name %>

<%= item.level %>
<% if (item.keywords && item.keywords.length > 0) { %> - - <% } %>
<% for (const kw of item.keywords) { %> <%= kw %> <% } %>
+ <% } %>
<% } %>
@@ -206,8 +222,26 @@ function dateRange(item, preserveDay) { <% for (const item of cv.languages) { %>

<%= item.language %>

-
<%= item.fluency %>
+
<%= item.fluency %>
<% } %> <% } %> + + + + + + + + + + + diff --git a/src/themes/reorx/index.scss b/src/themes/reorx/index.scss index dcaacb8..08e7331 100644 --- a/src/themes/reorx/index.scss +++ b/src/themes/reorx/index.scss @@ -1,5 +1,6 @@ $color-signature: #2A3FFB; $color-text-dim: #777; +$color-border-dim: #aaa; $fz-1: 36px; $fz-2: 22px; $fz-3: 18px; @@ -121,7 +122,20 @@ section { } .skills-section { - .section-item { - + .level { + margin: .8em 0; + } +} + +footer { + opacity: .7; + margin-top: 3em; + border-top: 1px solid $color-border-dim; + padding: 4px 0 8px; + display: flex; + font-size: 13px; + color: $color-text-dim; + > div { + margin-right: 2em; } }