use got instead of axios, some cleanup, problem with async context being lost for...
[websub-hub] / config / default.js
index 3714253ee999c99e627f030503ec928d5392732d..2d3f34e92ba05109dd165e7771b9cad6621bc60f 100644 (file)
@@ -2,8 +2,9 @@
 
 // Provide default values for all configuration.
 
-const packageName = require('../package.json').name;
+const { name: packageName, version: packageVersion } = require('../package.json');
 const common = require('../src/common');
+const Enum = require('../src/enum');
 
 const defaultOptions = {
   // Uniquely identify this instance, used to tag work-in-progress.
@@ -47,32 +48,37 @@ const defaultOptions = {
 
   manager: {
     pageTitle: packageName, // title on html pages
+    logoUrl: 'static/logo.svg', // image to go with title
     footerEntries: [ // common footers on all html pages
       '<a href="https://git.squeep.com/?p=websub-hub;a=tree">Development Repository</a> / <a href="https://github.com/thylacine/websub-hub/">GitHub mirror</a>',
-      '<small><span class="copyright">&copy;<time datetime="2021">&#8559;&#8559;&#8553;&#8553;&#8544;</time></span></small>',
+      '<span class="copyright">&copy;<time datetime="2022">&#8559;&#8559;&#8553;&#8553;&#8544;&#8544;</time></span>',
     ],
+    publishHistoryDays: 60, // Number of days of update history to show on topic details page
     strictSecrets: false, // If true, reject requests with secrets but not over https
     publicHub: true, // Accept publish requests as new topics.
     processImmediately: true, // If true, immediately attempt to process requests when accepted.
   },
 
   communication: {
+    requestTimeoutMs: 120000,
     strictTopicHubLink: true, // If true, deletes topics which do not list us (dingus.selfBaseUrl) as a hub relation.
     retryBackoffSeconds: [60, 120, 360, 1440, 7200, 43200, 86400], // failed requests retry according to number of attempts
     claimTimeoutSeconds: 600, // how long until an in-progress task is deemed abandoned
   },
 
-  // Outgoing request UA header. Comments are defaults in code.
+  // Outgoing request UA header.
+  // These values are the same as the defaults in the code, but we are setting
+  // them here so they also apply to UA of other modules, e.g. @squeep/indieauth-helper
   userAgent: {
-    // product: packageName,
-    // version: packageVersion,
-    // implementation: Enum.Specification,
+    product: packageName,
+    version: packageVersion,
+    implementation: Enum.Specification,
   },
 
   authenticator: {
     basicRealm: packageName, // Realm prompt for login on administration pages
     secureAuthOnly: true, // Require secure transport for authentication.
-    authnEnabled: ['argon2', 'pam'],
+    authnEnabled: ['indieAuth', 'argon2', 'pam'],
     forbiddenPAMIdentifiers: ['root'],
   },
 
@@ -84,4 +90,4 @@ const defaultOptions = {
 
 };
 
-module.exports = defaultOptions;
\ No newline at end of file
+module.exports = defaultOptions;