From 856befc423c2043fd93f7b08607246ed790ea070 Mon Sep 17 00:00:00 2001 From: Tom Raithel Date: Sun, 19 Feb 2017 22:03:42 +0100 Subject: [PATCH] Show release on homepage --- package.json | 1 + static-pages/index.pug | 4 ++-- static-pages/overview.pug | 8 ++++---- tasks/radar.js | 7 +++++-- tasks/static.js | 2 +- tasks/template.js | 2 ++ 6 files changed, 15 insertions(+), 9 deletions(-) diff --git a/package.json b/package.json index fb3e66e..1a00900 100644 --- a/package.json +++ b/package.json @@ -27,6 +27,7 @@ "fs-extra": "2.0.0", "live-server": "1.2.0", "marked": "0.3.6", + "moment": "2.17.1", "pjax": "0.2.4", "postcss-cli": "2.6.0", "postcss-css-variables": "0.6.0", diff --git a/static-pages/index.pug b/static-pages/index.pug index daab9a6..6ac1126 100644 --- a/static-pages/index.pug +++ b/static-pages/index.pug @@ -9,9 +9,9 @@ block content | Technology Radar span.hero-headline__alt = ' ' - | March 2017 + = formatRelease(releases[releases.length - 1]) div.quadrant-grid - each quadrant, quadrantName in groupByQuadrants(radar) + each quadrant, quadrantName in groupByQuadrants(items) .quadrant-grid__quadrant .quadrant-section .quadrant-section__header diff --git a/static-pages/overview.pug b/static-pages/overview.pug index c7128e7..20f0696 100644 --- a/static-pages/overview.pug +++ b/static-pages/overview.pug @@ -6,7 +6,7 @@ block vars block content .js--filter( - data-index=JSON.stringify(groupByFirstLetter(radar)) + data-index=JSON.stringify(groupByFirstLetter(items)) ) .headline-group .hero-headline @@ -19,7 +19,7 @@ block content v-on:click="setRing('all')" v-bind:class=`ring === 'all' ? 'badge--neutral' : ''` ) all - each items, ringName in groupByRing(radar) + each _, ringName in groupByRing(items) .nav__item a.badge.badge--big.badge--empty( href='#' @@ -28,7 +28,7 @@ block content )= ringName div.letter-index - each items, letter in groupByFirstLetter(radar) + each indexItems, letter in groupByFirstLetter(items) .letter-index__group( v-if=`isGroupVisible('${letter}')` ) @@ -36,7 +36,7 @@ block content .letter-index__items .item-list .item-list__list - each item in items + each item in indexItems a.item.item--big.item--no-leading-border.item--no-trailing-border( href=`/${item.quadrant}/${item.name}.html` v-if=`isRingVisible('${item.ring}')` diff --git a/tasks/radar.js b/tasks/radar.js index 5885b68..203c94c 100644 --- a/tasks/radar.js +++ b/tasks/radar.js @@ -20,7 +20,10 @@ export const createRadar = async (tree) => { const items = createItems(revisions); const flaggedItems = flagWithIsNew(items, allReleases); - return flaggedItems; + return { + items: flaggedItems, + releases: allReleases, + }; }; export const groupByQuadrants = (items) => ( @@ -179,7 +182,7 @@ const revisionCreatesNewHistoryEntry = (revision) => { typeof revision.ring !== 'undefined'; }; -export const outputRadar = (items) => { +export const outputRadar = ({ items }) => { const quadrants = groupByQuadrants(items); Object.entries(quadrants).map(([quadrantName, quadrant]) => ( diff --git a/tasks/static.js b/tasks/static.js index b59b9d2..a2c1050 100644 --- a/tasks/static.js +++ b/tasks/static.js @@ -29,7 +29,7 @@ const renderStaticPages = (radar, fileNames) => ( Promise.all(fileNames.map((name) => ( new Promise((resolve, reject) => ( outputFile(distPath(`${name}.html`), pug.renderFile(staticPath(`${name}.pug`), vars({ - radar, + ...radar, })), (err, data) => { if (err) { reject(err); diff --git a/tasks/template.js b/tasks/template.js index 0a8b67b..807d4d0 100644 --- a/tasks/template.js +++ b/tasks/template.js @@ -1,4 +1,5 @@ import pug from 'pug'; +import moment from 'moment'; import { relativePath } from './file'; import { groupByQuadrants, @@ -19,6 +20,7 @@ export const vars = (vars) => ({ return mappings[text.trim()] || '-'; }, + formatRelease: (release) => moment(release, 'YYYY-MM-DD').format('MMM YYYY'), groupByQuadrants, groupByFirstLetter, groupByRing,