crisp-theme.git

git clone https://git.crispbyte.dev/crisp-theme.git

crisp-theme.git / _config
cheddar  ·  2025-05-01

filters.js

 1import { format } from 'date-fns';
 2
 3export default function(eleventyConfig) {
 4  eleventyConfig.addFilter("readableDate", (dateObj) => {
 5    return format(dateOnly(dateObj), 'MMMM do, yyyy');
 6  });
 7
 8  eleventyConfig.addFilter("htmlDateString", (dateObj) => {
 9    return format(dateOnly(dateObj), 'yyyy-MM-dd');
10  });
11
12  eleventyConfig.addFilter("seriesPosts", (posts, seriesName) => {
13    return posts.
14      filter(post => post.data.series?.name == seriesName).
15      sort((a, b) => a.data.series.number - b.data.series.number);
16  });
17
18  function dateOnly(dateObj) {
19    return new Date(dateObj.getUTCFullYear(), dateObj.getUTCMonth(), dateObj.getUTCDate());
20  }
21}