Added ignore argument.
This commit is contained in:
@@ -25,6 +25,9 @@ promiseFinally.shim();
|
||||
|
||||
const limit = yargs.limit || config.fetch.limit;
|
||||
|
||||
// allow for any combination of --ignore val1 --ignore val2, --ignore=val1,val2
|
||||
const ignore = yargs.ignore ? [].concat(yargs.ignore).reduce((acc, prop) => acc.concat(prop.split(',')), []) : [];
|
||||
|
||||
if(!yargs.user && typeof yargs.users !== 'string') {
|
||||
return console.log('\x1b[31m%s\x1b[0m', 'Please supply at least one user with --user=[user], or multiple users with --users=[user1,user2] or --user=[user1] --user=[user2]');
|
||||
}
|
||||
@@ -45,7 +48,7 @@ users.forEach(username => {
|
||||
submissions
|
||||
}));
|
||||
}).then(({user, submissions}) => {
|
||||
const posts = curateSubmissions(submissions).slice(0, limit);
|
||||
const posts = curateSubmissions(submissions, ignore).slice(0, limit);
|
||||
|
||||
return fetchInfo(posts).then(info => ({
|
||||
user,
|
||||
|
||||
@@ -3,11 +3,20 @@
|
||||
const config = require('config');
|
||||
const dissectLink = require('../dissectLink.js');
|
||||
|
||||
function curateSubmissions(submissions) {
|
||||
function curateSubmissions(submissions, ignore) {
|
||||
const processed = new Set();
|
||||
|
||||
return submissions.reduce((acc, submission, index) => {
|
||||
const host = dissectLink(submission.url);
|
||||
const ignoring = ignore.find(prop => {
|
||||
return submission[prop];
|
||||
});
|
||||
|
||||
if(ignoring) {
|
||||
console.log('\x1b[33m%s\x1b[0m', `Ignoring ${ignoring} post '${submission.title}' - ${submission.url}`);
|
||||
|
||||
return acc;
|
||||
}
|
||||
|
||||
if(host) {
|
||||
if(config.fetch.avoidDuplicates && processed.has(host.id)) {
|
||||
|
||||
Reference in New Issue
Block a user