diff options
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/generateApi.js | 23 | ||||
-rwxr-xr-x | scripts/postbuild.sh | 6 | ||||
-rwxr-xr-x | scripts/prebuild.sh | 12 |
3 files changed, 41 insertions, 0 deletions
diff --git a/scripts/generateApi.js b/scripts/generateApi.js new file mode 100755 index 0000000..f72745e --- /dev/null +++ b/scripts/generateApi.js @@ -0,0 +1,23 @@ +import fs from 'fs' +import k from '../api' + +let posts = k.getPosts() + +posts = posts.map(({ date, title, content, route }) => { + const { year, month, day } = date + const { description, meta } = content + + return { + date: `${year}-${month}-${day}`, + title, + content: { description, meta }, + route + } +}) + +posts.sort((a, b) => (a.route > b.route ? 1 : -1)) + +fs.writeFile('./dist/api/posts.json', JSON.stringify(posts), err => + err ? console.log(err) : null +) +console.log(posts) diff --git a/scripts/postbuild.sh b/scripts/postbuild.sh new file mode 100755 index 0000000..85e35f9 --- /dev/null +++ b/scripts/postbuild.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +mkdir ./dist/api + +node -r esm ./scripts/generateApi.js + diff --git a/scripts/prebuild.sh b/scripts/prebuild.sh new file mode 100755 index 0000000..937bf5f --- /dev/null +++ b/scripts/prebuild.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +set -x +set -eou pipefail + +if [ -d ./content ]; then + cd content + git pull + cd .. +else + git clone https://github.com/19pdh/kronika content +fi |