]> git.r.bdr.sh - rbdr/blog/blobdiff - lib/generators/rss.js
Use serde and time
[rbdr/blog] / lib / generators / rss.js
index 4ae39257244941db8e76821766b9ff8dfc1020af..c47ba038ea1ccd3c81849af42cce8bca04fb8b68 100644 (file)
@@ -1,10 +1,8 @@
-'use strict';
-
-const { template, templateSettings } = require('dot');
-const { encodeXML } = require('entities');
-const { readFile, writeFile } = require('fs/promises');
-const { join } = require('path');
-const { debuglog } = require('util');
+import Dot from 'dot';
+import { encodeXML } from 'entities';
+import { readFile, writeFile } from 'fs/promises';
+import { join } from 'path';
+import { debuglog } from 'util';
 
 const internals = {
   debuglog: debuglog('blog'),
 
 const internals = {
   debuglog: debuglog('blog'),
@@ -29,7 +27,7 @@ const internals = {
  * @param {string} target the target directory
  * @param {Array.<Blog.tPost>} posts the list of posts
  */
  * @param {string} target the target directory
  * @param {Array.<Blog.tPost>} posts the list of posts
  */
-module.exports = async function RSSGenerator(source, target, posts) {
+export default async function RSSGenerator(source, target, posts) {
 
   internals.debuglog('Generating RSS');
   const feedTarget = join(target, internals.kFeedName);
 
   internals.debuglog('Generating RSS');
   const feedTarget = join(target, internals.kFeedName);
@@ -45,9 +43,9 @@ module.exports = async function RSSGenerator(source, target, posts) {
     title: internals.extractTitle(post.raw),
     html: encodeXML(post.html)
   }));
     title: internals.extractTitle(post.raw),
     html: encodeXML(post.html)
   }));
-  const feedXml = template(feedTemplate, {
-    ...templateSettings,
+  const feedXml = Dot.template(feedTemplate, {
+    ...Dot.templateSettings,
     strip: false
   })({ posts });
   await writeFile(feedTarget, feedXml);
     strip: false
   })({ posts });
   await writeFile(feedTarget, feedXml);
-};
+}