2024-09-11 03:16:54 +00:00
|
|
|
'use strict';
|
|
|
|
|
|
|
|
const config = require('config');
|
|
|
|
const yargs = require('yargs');
|
|
|
|
|
2024-09-11 03:16:56 +00:00
|
|
|
function getArgs() {
|
2024-09-11 03:16:56 +00:00
|
|
|
return yargs
|
|
|
|
.command('npm start -- --user <username>')
|
|
|
|
.option('users', {
|
|
|
|
alias: 'user',
|
|
|
|
describe: 'Reddit usernames to fetch posts from',
|
|
|
|
type: 'array',
|
|
|
|
})
|
|
|
|
.option('posts', {
|
|
|
|
alias: 'post',
|
|
|
|
describe: 'Reddit post IDs to fetch',
|
|
|
|
type: 'array',
|
|
|
|
})
|
|
|
|
.option('limit', {
|
|
|
|
describe: 'Maximum amount of posts to fetch per supplied user (!), after filtering out ignored, cross- and reposts',
|
|
|
|
type: 'number',
|
|
|
|
default: config.fetch.limit,
|
|
|
|
})
|
|
|
|
.option('sort', {
|
|
|
|
describe: 'Property to sort posts by',
|
|
|
|
choices: ['new', 'top', 'hot', 'controversial'],
|
|
|
|
default: config.fetch.sort,
|
|
|
|
})
|
|
|
|
.option('ignore', {
|
|
|
|
describe: 'Ignore posts with any of these properties',
|
|
|
|
type: 'array',
|
|
|
|
choices: ['pinned', 'stickied', 'hidden', 'spoiler', 'over_18'],
|
|
|
|
})
|
|
|
|
.option('include', {
|
|
|
|
describe: 'Include only these sources',
|
|
|
|
type: 'array',
|
|
|
|
})
|
|
|
|
.option('exclude', {
|
|
|
|
describe: 'Do not include these sources',
|
|
|
|
type: 'array',
|
|
|
|
})
|
|
|
|
.option('after', {
|
|
|
|
describe: 'Do not include posts from before this date (DD-MM-YYYY). When set to \'index\', it will assume the date of the latest indexed post.',
|
|
|
|
})
|
|
|
|
.option('archives', {
|
|
|
|
describe: 'Search archives for deleted posts',
|
|
|
|
type: 'boolean',
|
|
|
|
default: config.fetch.archives.search,
|
|
|
|
})
|
|
|
|
.argv;
|
2024-09-11 03:16:56 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
module.exports = getArgs;
|