cross-seed 2.7.0 → 2.9.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/package.json +1 -1
- package/dist/src/cmd.js +22 -5
- package/dist/src/cmd.js.map +1 -1
- package/dist/src/config.template.docker.js +9 -0
- package/dist/src/config.template.docker.js.map +1 -1
- package/dist/src/config.template.js +9 -0
- package/dist/src/config.template.js.map +1 -1
- package/dist/src/configuration.js.map +1 -1
- package/dist/src/logger.js +30 -2
- package/dist/src/logger.js.map +1 -1
- package/dist/src/pipeline.js +13 -0
- package/dist/src/pipeline.js.map +1 -1
- package/dist/src/pushNotifier.js +35 -0
- package/dist/src/pushNotifier.js.map +1 -0
- package/dist/src/runtimeConfig.js.map +1 -1
- package/dist/src/server.js +1 -1
- package/dist/src/server.js.map +1 -1
- package/dist/src/startup.js +1 -1
- package/dist/src/startup.js.map +1 -1
- package/dist/src/torrent.js +2 -2
- package/dist/src/torrent.js.map +1 -1
- package/package.json +1 -1
package/dist/package.json
CHANGED
package/dist/src/cmd.js
CHANGED
@@ -13,6 +13,7 @@ const db_1 = require("./db");
|
|
13
13
|
const errors_1 = require("./errors");
|
14
14
|
const logger_1 = require("./logger");
|
15
15
|
const pipeline_1 = require("./pipeline");
|
16
|
+
const pushNotifier_1 = require("./pushNotifier");
|
16
17
|
const runtimeConfig_1 = require("./runtimeConfig");
|
17
18
|
const server_1 = require("./server");
|
18
19
|
const util_1 = require("util");
|
@@ -26,28 +27,33 @@ function fallback(...args) {
|
|
26
27
|
return undefined;
|
27
28
|
}
|
28
29
|
function processOptions(options) {
|
29
|
-
|
30
|
+
var _a;
|
31
|
+
options.trackers = (_a = options.trackers) === null || _a === void 0 ? void 0 : _a.split(",").filter((e) => e !== "");
|
30
32
|
return options;
|
31
33
|
}
|
32
34
|
async function run() {
|
33
35
|
const fileConfig = configuration_1.getFileConfig();
|
34
36
|
function createCommandWithSharedOptions(name, description) {
|
37
|
+
var _a;
|
35
38
|
return commander_1.program
|
36
39
|
.command(name)
|
37
40
|
.description(description)
|
38
41
|
.requiredOption("-u, --jackett-server-url <url>", "Your Jackett server url", fileConfig.jackettServerUrl)
|
39
42
|
.requiredOption("-k, --jackett-api-key <key>", "Your Jackett API key", fileConfig.jackettApiKey)
|
40
|
-
.requiredOption("-t, --trackers <tracker1>,<tracker2>", "Comma-separated list of Jackett tracker ids to search (Tracker ids can be found in their Torznab feed paths)", fallback(fileConfig.trackers
|
43
|
+
.requiredOption("-t, --trackers <tracker1>,<tracker2>", "Comma-separated list of Jackett tracker ids to search (Tracker ids can be found in their Torznab feed paths)", fallback((_a = fileConfig.trackers) === null || _a === void 0 ? void 0 : _a.join(","), ""))
|
41
44
|
.requiredOption("-i, --torrent-dir <dir>", "Directory with torrent files", fileConfig.torrentDir)
|
42
45
|
.requiredOption("-s, --output-dir <dir>", "Directory to save results in", fileConfig.outputDir)
|
43
46
|
.requiredOption("-a, --search-all", "Search for all torrents regardless of their contents", fallback(fileConfig.searchAll, false))
|
47
|
+
.option("-x, --exclude-older <cutoff>", "Exclude torrents first seen more than n minutes ago. Bypasses the -a flag.", (n) => parseInt(n), fileConfig.excludeOlder)
|
48
|
+
.option("-r, --exclude-recent-search <cutoff>", "Exclude torrents which have been searched more recently than n minutes ago. Bypasses the -a flag.", (n) => parseInt(n), fileConfig.excludeRecentSearch)
|
44
49
|
.requiredOption("-v, --verbose", "Log verbose output", false)
|
45
50
|
.addOption(new commander_1.Option("-A, --action <action>", "If set to 'inject', cross-seed will attempt to add the found torrents to your torrent client.")
|
46
51
|
.default(fallback(fileConfig.action, constants_1.Action.SAVE))
|
47
52
|
.choices(Object.values(constants_1.Action))
|
48
53
|
.makeOptionMandatory())
|
49
54
|
.option("--rtorrent-rpc-url <url>", "The url of your rtorrent XMLRPC interface. Requires '-A inject'. See the docs for more information.", fileConfig.rtorrentRpcUrl)
|
50
|
-
.option("--qbittorrent-url <url>", "The url of your qBittorrent webui. Requires '-A inject'. See the docs for more information.", fileConfig.qbittorrentUrl)
|
55
|
+
.option("--qbittorrent-url <url>", "The url of your qBittorrent webui. Requires '-A inject'. See the docs for more information.", fileConfig.qbittorrentUrl)
|
56
|
+
.option("--notification-webhook-url <url>", "cross-seed will send POST requests to this url with a JSON payload of { title, body }", fileConfig.notificationWebhookUrl);
|
51
57
|
}
|
52
58
|
commander_1.program.name(package_json_1.default.name);
|
53
59
|
commander_1.program.description(chalk_1.default.yellow.bold("cross-seed"));
|
@@ -68,6 +74,7 @@ async function run() {
|
|
68
74
|
const runtimeConfig = processOptions(options);
|
69
75
|
runtimeConfig_1.setRuntimeConfig(runtimeConfig);
|
70
76
|
logger_1.initializeLogger();
|
77
|
+
pushNotifier_1.initializePushNotifier();
|
71
78
|
logger_1.logger.verbose({
|
72
79
|
label: logger_1.Label.CONFIGDUMP,
|
73
80
|
message: util_1.inspect(runtimeConfig),
|
@@ -87,17 +94,27 @@ async function run() {
|
|
87
94
|
throw e;
|
88
95
|
}
|
89
96
|
});
|
97
|
+
commander_1.program
|
98
|
+
.command("test-notification")
|
99
|
+
.description("Send a test notification")
|
100
|
+
.requiredOption("--notification-webhook-url <url>", "cross-seed will send POST requests to this url with a JSON payload of { title, body }", fileConfig.notificationWebhookUrl)
|
101
|
+
.action((options) => {
|
102
|
+
const runtimeConfig = processOptions(options);
|
103
|
+
runtimeConfig_1.setRuntimeConfig(runtimeConfig);
|
104
|
+
logger_1.initializeLogger();
|
105
|
+
pushNotifier_1.initializePushNotifier();
|
106
|
+
pushNotifier_1.sendTestNotification();
|
107
|
+
});
|
90
108
|
createCommandWithSharedOptions("search", "Search for cross-seeds")
|
91
109
|
.requiredOption("-o, --offset <offset>", "Offset to start from", (n) => parseInt(n), 0)
|
92
110
|
.requiredOption("-d, --delay <delay>", "Pause duration (seconds) between searches", parseFloat, fallback(fileConfig.delay, 10))
|
93
111
|
.option("-e, --include-episodes", "Include single-episode torrents in the search", fallback(fileConfig.includeEpisodes, false))
|
94
|
-
.option("-x, --exclude-older <cutoff>", "Exclude torrents first seen more than x minutes ago. Overrides the -a flag.", (n) => parseInt(n))
|
95
|
-
.option("-r, --exclude-recent-search <cutoff>", "Exclude torrents which have been searched more recently than x minutes ago. Overrides the -a flag.", (n) => parseInt(n))
|
96
112
|
.action(async (options) => {
|
97
113
|
try {
|
98
114
|
const runtimeConfig = processOptions(options);
|
99
115
|
runtimeConfig_1.setRuntimeConfig(runtimeConfig);
|
100
116
|
logger_1.initializeLogger();
|
117
|
+
pushNotifier_1.initializePushNotifier();
|
101
118
|
logger_1.logger.verbose({
|
102
119
|
label: logger_1.Label.CONFIGDUMP,
|
103
120
|
message: util_1.inspect(runtimeConfig),
|
package/dist/src/cmd.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"cmd.js","sourceRoot":"","sources":["../../src/cmd.ts"],"names":[],"mappings":";;;;;;AACA,kDAA0B;AAC1B,yCAA4C;AAC5C,mEAA6C;AAC7C,mDAAgE;AAChE,2CAAqC;AACrC,6BAAoC;AACpC,qCAA0C;AAC1C,qCAA2D;AAC3D,yCAAkC;AAClC,mDAAmD;AACnD,qCAAiC;AACjC,+BAA+B;AAC/B,4BAA0B;AAE1B,uCAAgD;AAEhD,SAAS,QAAQ,CAAC,GAAG,IAAI;IACxB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;QACvB,IAAI,GAAG,KAAK,SAAS;YAAE,OAAO,GAAG,CAAC;KAClC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,SAAS,cAAc,CAAC,OAAO
|
1
|
+
{"version":3,"file":"cmd.js","sourceRoot":"","sources":["../../src/cmd.ts"],"names":[],"mappings":"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"}
|
@@ -28,6 +28,11 @@ module.exports = {
|
|
28
28
|
// search for all torrents, regardless of their contents
|
29
29
|
// this option overrides includeEpisodes.
|
30
30
|
searchAll: false,
|
31
|
+
// Exclude torrents first seen more than n minutes ago.
|
32
|
+
excludeOlder: undefined,
|
33
|
+
// Exclude torrents which have been searched
|
34
|
+
// more recently than n minutes ago.
|
35
|
+
excludeRecentSearch: undefined,
|
31
36
|
// can be either "save" or "inject".
|
32
37
|
// With "inject" you need to set up one of the below clients.
|
33
38
|
action: "save",
|
@@ -40,5 +45,9 @@ module.exports = {
|
|
40
45
|
// Supply your username and password inside the url like so:
|
41
46
|
// "http://username:password@localhost:8080"
|
42
47
|
qbittorrentUrl: undefined,
|
48
|
+
// cross-seed will send POST requests to this url
|
49
|
+
// with a JSON payload of { title, body }.
|
50
|
+
// Conforms to the caronc/apprise REST API.
|
51
|
+
notificationWebhookUrl: undefined,
|
43
52
|
};
|
44
53
|
//# sourceMappingURL=config.template.docker.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"config.template.docker.js","sourceRoot":"","sources":["../../src/config.template.docker.js"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,oEAAoE;AACpE,4EAA4E;AAC5E,wBAAwB;AAExB,MAAM,CAAC,OAAO,GAAG;IAChB,gBAAgB,EAAE,6BAA6B;IAC/C,aAAa,EAAE,2BAA2B;IAE1C,4EAA4E;IAC5E,4DAA4D;IAC5D,KAAK,EAAE,EAAE;IAET,qBAAqB;IACrB,gDAAgD;IAChD,uDAAuD;IACvD,QAAQ,EAAE,CAAC,MAAM,EAAE,eAAe,CAAC;IAEnC,sCAAsC;IACtC,+CAA+C;IAC/C,2CAA2C;IAC3C,8CAA8C;IAC9C,gCAAgC;IAChC,2DAA2D;IAC3D,UAAU,EAAE,WAAW;IAEvB,gEAAgE;IAChE,gCAAgC;IAChC,2DAA2D;IAC3D,SAAS,EAAE,cAAc;IAEzB,gDAAgD;IAChD,eAAe,EAAE,KAAK;IAEtB,wDAAwD;IACxD,yCAAyC;IACzC,SAAS,EAAE,KAAK;IAEhB,oCAAoC;IACpC,6DAA6D;IAC7D,MAAM,EAAE,MAAM;IAEd,6CAA6C;IAC7C,uCAAuC;IACvC,wEAAwE;IACxE,cAAc,EAAE,SAAS;IAEzB,qCAAqC;IACrC,uCAAuC;IACvC,4DAA4D;IAC5D,4CAA4C;IAC5C,cAAc,EAAE,SAAS;
|
1
|
+
{"version":3,"file":"config.template.docker.js","sourceRoot":"","sources":["../../src/config.template.docker.js"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,oEAAoE;AACpE,4EAA4E;AAC5E,wBAAwB;AAExB,MAAM,CAAC,OAAO,GAAG;IAChB,gBAAgB,EAAE,6BAA6B;IAC/C,aAAa,EAAE,2BAA2B;IAE1C,4EAA4E;IAC5E,4DAA4D;IAC5D,KAAK,EAAE,EAAE;IAET,qBAAqB;IACrB,gDAAgD;IAChD,uDAAuD;IACvD,QAAQ,EAAE,CAAC,MAAM,EAAE,eAAe,CAAC;IAEnC,sCAAsC;IACtC,+CAA+C;IAC/C,2CAA2C;IAC3C,8CAA8C;IAC9C,gCAAgC;IAChC,2DAA2D;IAC3D,UAAU,EAAE,WAAW;IAEvB,gEAAgE;IAChE,gCAAgC;IAChC,2DAA2D;IAC3D,SAAS,EAAE,cAAc;IAEzB,gDAAgD;IAChD,eAAe,EAAE,KAAK;IAEtB,wDAAwD;IACxD,yCAAyC;IACzC,SAAS,EAAE,KAAK;IAEhB,uDAAuD;IACvD,YAAY,EAAE,SAAS;IAEvB,4CAA4C;IAC5C,oCAAoC;IACpC,mBAAmB,EAAE,SAAS;IAE9B,oCAAoC;IACpC,6DAA6D;IAC7D,MAAM,EAAE,MAAM;IAEd,6CAA6C;IAC7C,uCAAuC;IACvC,wEAAwE;IACxE,cAAc,EAAE,SAAS;IAEzB,qCAAqC;IACrC,uCAAuC;IACvC,4DAA4D;IAC5D,4CAA4C;IAC5C,cAAc,EAAE,SAAS;IAEzB,iDAAiD;IACjD,0CAA0C;IAC1C,2CAA2C;IAC3C,sBAAsB,EAAE,SAAS;CACjC,CAAC"}
|
@@ -23,6 +23,11 @@ module.exports = {
|
|
23
23
|
// search for all torrents, regardless of their contents
|
24
24
|
// this option overrides includeEpisodes.
|
25
25
|
searchAll: false,
|
26
|
+
// Exclude torrents first seen more than n minutes ago.
|
27
|
+
excludeOlder: undefined,
|
28
|
+
// Exclude torrents which have been searched
|
29
|
+
// more recently than n minutes ago.
|
30
|
+
excludeRecentSearch: undefined,
|
26
31
|
// can be either "save" or "inject".
|
27
32
|
// With "inject" you need to set up one of the below clients.
|
28
33
|
action: "save",
|
@@ -35,5 +40,9 @@ module.exports = {
|
|
35
40
|
// Supply your username and password inside the url like so:
|
36
41
|
// "http://username:password@localhost:8080"
|
37
42
|
qbittorrentUrl: undefined,
|
43
|
+
// cross-seed will send POST requests to this url
|
44
|
+
// with a JSON payload of { title, body }.
|
45
|
+
// Conforms to the caronc/apprise REST API.
|
46
|
+
notificationWebhookUrl: undefined,
|
38
47
|
};
|
39
48
|
//# sourceMappingURL=config.template.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"config.template.js","sourceRoot":"","sources":["../../src/config.template.js"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,wBAAwB;AAExB,MAAM,CAAC,OAAO,GAAG;IAChB,aAAa,EAAE,CAAC;IAEhB,gBAAgB,EAAE,+BAA+B;IACjD,aAAa,EAAE,2BAA2B;IAE1C,4EAA4E;IAC5E,4DAA4D;IAC5D,KAAK,EAAE,EAAE;IAET,qBAAqB;IACrB,gDAAgD;IAChD,uDAAuD;IACvD,QAAQ,EAAE,CAAC,MAAM,EAAE,eAAe,CAAC;IAEnC,sCAAsC;IACtC,+CAA+C;IAC/C,2CAA2C;IAC3C,8CAA8C;IAC9C,UAAU,EAAE,2BAA2B;IAEvC,gEAAgE;IAChE,SAAS,EAAE,GAAG;IAEd,gDAAgD;IAChD,eAAe,EAAE,KAAK;IAEtB,wDAAwD;IACxD,yCAAyC;IACzC,SAAS,EAAE,KAAK;IAEhB,oCAAoC;IACpC,6DAA6D;IAC7D,MAAM,EAAE,MAAM;IAEd,6CAA6C;IAC7C,uCAAuC;IACvC,wEAAwE;IACxE,cAAc,EAAE,SAAS;IAEzB,qCAAqC;IACrC,uCAAuC;IACvC,4DAA4D;IAC5D,4CAA4C;IAC5C,cAAc,EAAE,SAAS;
|
1
|
+
{"version":3,"file":"config.template.js","sourceRoot":"","sources":["../../src/config.template.js"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,wBAAwB;AAExB,MAAM,CAAC,OAAO,GAAG;IAChB,aAAa,EAAE,CAAC;IAEhB,gBAAgB,EAAE,+BAA+B;IACjD,aAAa,EAAE,2BAA2B;IAE1C,4EAA4E;IAC5E,4DAA4D;IAC5D,KAAK,EAAE,EAAE;IAET,qBAAqB;IACrB,gDAAgD;IAChD,uDAAuD;IACvD,QAAQ,EAAE,CAAC,MAAM,EAAE,eAAe,CAAC;IAEnC,sCAAsC;IACtC,+CAA+C;IAC/C,2CAA2C;IAC3C,8CAA8C;IAC9C,UAAU,EAAE,2BAA2B;IAEvC,gEAAgE;IAChE,SAAS,EAAE,GAAG;IAEd,gDAAgD;IAChD,eAAe,EAAE,KAAK;IAEtB,wDAAwD;IACxD,yCAAyC;IACzC,SAAS,EAAE,KAAK;IAEhB,uDAAuD;IACvD,YAAY,EAAE,SAAS;IAEvB,4CAA4C;IAC5C,oCAAoC;IACpC,mBAAmB,EAAE,SAAS;IAE9B,oCAAoC;IACpC,6DAA6D;IAC7D,MAAM,EAAE,MAAM;IAEd,6CAA6C;IAC7C,uCAAuC;IACvC,wEAAwE;IACxE,cAAc,EAAE,SAAS;IAEzB,qCAAqC;IACrC,uCAAuC;IACvC,4DAA4D;IAC5D,4CAA4C;IAC5C,cAAc,EAAE,SAAS;IAEzB,iDAAiD;IACjD,0CAA0C;IAC1C,2CAA2C;IAC3C,sBAAsB,EAAE,SAAS;CACjC,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../src/configuration.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,4CAAoB;AACpB,gDAAwB;AACxB,mEAA6C;AAC7C,wEAA+C;AAC/C,2CAA0D;
|
1
|
+
{"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../src/configuration.ts"],"names":[],"mappings":"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"}
|
package/dist/src/logger.js
CHANGED
@@ -16,6 +16,34 @@ var Label;
|
|
16
16
|
Label["SERVER"] = "server";
|
17
17
|
Label["STARTUP"] = "startup";
|
18
18
|
})(Label = exports.Label || (exports.Label = {}));
|
19
|
+
const redactionMsg = "[REDACTED]";
|
20
|
+
function redactUrlPassword(message, urlStr) {
|
21
|
+
let url;
|
22
|
+
try {
|
23
|
+
url = new URL(urlStr);
|
24
|
+
if (url.password) {
|
25
|
+
const urlDecodedPassword = decodeURIComponent(url.password);
|
26
|
+
const urlEncodedPassword = encodeURIComponent(url.password);
|
27
|
+
message = message.split(url.password).join(redactionMsg);
|
28
|
+
message = message.split(urlDecodedPassword).join(redactionMsg);
|
29
|
+
message = message.split(urlEncodedPassword).join(redactionMsg);
|
30
|
+
}
|
31
|
+
}
|
32
|
+
catch (e) {
|
33
|
+
// do nothing
|
34
|
+
}
|
35
|
+
return message;
|
36
|
+
}
|
37
|
+
function redactMessage(message) {
|
38
|
+
const runtimeConfig = runtimeConfig_1.getRuntimeConfig();
|
39
|
+
message = message.split(runtimeConfig.jackettApiKey).join(redactionMsg);
|
40
|
+
for (const [key, urlStr] of Object.entries(runtimeConfig)) {
|
41
|
+
if (key.endsWith("Url") && urlStr) {
|
42
|
+
message = redactUrlPassword(message, urlStr);
|
43
|
+
}
|
44
|
+
}
|
45
|
+
return message;
|
46
|
+
}
|
19
47
|
function initializeLogger() {
|
20
48
|
configuration_1.createAppDir();
|
21
49
|
exports.logger = winston_1.createLogger({
|
@@ -23,7 +51,7 @@ function initializeLogger() {
|
|
23
51
|
format: winston_1.format.combine(winston_1.format.timestamp({
|
24
52
|
format: "YYYY-MM-DD HH:mm:ss",
|
25
53
|
}), winston_1.format.errors({ stack: true }), winston_1.format.splat(), winston_1.format.colorize(), winston_1.format.printf(({ level, message, label, timestamp }) => {
|
26
|
-
return `${timestamp} ${level}: ${label ? `[${label}] ` : ""}${message}`;
|
54
|
+
return `${timestamp} ${level}: ${label ? `[${label}] ` : ""}${redactMessage(message)}`;
|
27
55
|
})),
|
28
56
|
transports: [
|
29
57
|
new winston_1.transports.File({
|
@@ -40,7 +68,7 @@ function initializeLogger() {
|
|
40
68
|
new winston_1.transports.Console({
|
41
69
|
level: runtimeConfig_1.getRuntimeConfig().verbose ? "silly" : "info",
|
42
70
|
format: winston_1.format.combine(winston_1.format.errors({ stack: true }), winston_1.format.splat(), winston_1.format.colorize(), winston_1.format.printf(({ level, message, label }) => {
|
43
|
-
return `${level}: ${label ? `[${label}] ` : ""}${message}`;
|
71
|
+
return `${level}: ${label ? `[${label}] ` : ""}${redactMessage(message)}`;
|
44
72
|
})),
|
45
73
|
}),
|
46
74
|
],
|
package/dist/src/logger.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAC5B,qCAAmE;AACnE,mDAAuD;AACvD,mDAAmD;AAEnD,IAAY,KASX;AATD,WAAY,KAAK;IAChB,oCAA2B,CAAA;IAC3B,8BAAqB,CAAA;IACrB,0BAAiB,CAAA;IACjB,gCAAuB,CAAA;IACvB,kCAAyB,CAAA;IACzB,4BAAmB,CAAA;IACnB,0BAAiB,CAAA;IACjB,4BAAmB,CAAA;AACpB,CAAC,EATW,KAAK,GAAL,aAAK,KAAL,aAAK,QAShB;AAID,SAAgB,gBAAgB;IAC/B,4BAAY,EAAE,CAAC;IACf,cAAM,GAAG,sBAAY,CAAC;QACrB,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,gBAAM,CAAC,OAAO,CACrB,gBAAM,CAAC,SAAS,CAAC;YAChB,MAAM,EAAE,qBAAqB;SAC7B,CAAC,EACF,gBAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAC9B,gBAAM,CAAC,KAAK,EAAE,EACd,gBAAM,CAAC,QAAQ,EAAE,EACjB,gBAAM,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE;YACtD,OAAO,GAAG,SAAS,IAAI,KAAK,KAC3B,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EACzB,GAAG,OAAO,EAAE,CAAC;
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger.ts"],"names":[],"mappings":"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"}
|
package/dist/src/pipeline.js
CHANGED
@@ -13,6 +13,7 @@ const decide_1 = require("./decide");
|
|
13
13
|
const jackett_1 = require("./jackett");
|
14
14
|
const logger_1 = require("./logger");
|
15
15
|
const preFilter_1 = require("./preFilter");
|
16
|
+
const pushNotifier_1 = require("./pushNotifier");
|
16
17
|
const runtimeConfig_1 = require("./runtimeConfig");
|
17
18
|
const torrent_1 = require("./torrent");
|
18
19
|
const utils_1 = require("./utils");
|
@@ -35,6 +36,18 @@ async function findOnOtherSites(searchee, hashesToExclude, nonceOptions = runtim
|
|
35
36
|
const results = response.Results;
|
36
37
|
const loaded = await Promise.all(results.map(assessEach));
|
37
38
|
const successful = loaded.filter((e) => e.assessment.decision === constants_1.Decision.MATCH);
|
39
|
+
pushNotifier_1.pushNotifier.notify({
|
40
|
+
body: `Found ${searchee.name} on ${successful.length} trackers${successful.length &&
|
41
|
+
// @ts-expect-error ListFormat totally exists in node 12
|
42
|
+
`: ${new Intl.ListFormat("en", {
|
43
|
+
style: "long",
|
44
|
+
type: "conjunction",
|
45
|
+
}).format(successful.map((s) => s.tracker))}`}`,
|
46
|
+
extra: {
|
47
|
+
infoHashes: successful.map((s) => s.assessment.info.infoHash),
|
48
|
+
trackers: successful.map((s) => s.tracker),
|
49
|
+
},
|
50
|
+
});
|
38
51
|
let isTorrentIncomplete;
|
39
52
|
for (const { tracker, assessment: { info: newInfo }, } of successful) {
|
40
53
|
const styledName = chalk_1.default.green.bold(newInfo.name);
|
package/dist/src/pipeline.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/pipeline.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/pipeline.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,35 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
+
exports.sendTestNotification = exports.initializePushNotifier = exports.PushNotifier = exports.pushNotifier = void 0;
|
7
|
+
const node_fetch_1 = __importDefault(require("node-fetch"));
|
8
|
+
const logger_1 = require("./logger");
|
9
|
+
const runtimeConfig_1 = require("./runtimeConfig");
|
10
|
+
class PushNotifier {
|
11
|
+
constructor(url) {
|
12
|
+
this.url = url;
|
13
|
+
}
|
14
|
+
notify({ title = "cross-seed", body, ...rest }) {
|
15
|
+
if (this.url) {
|
16
|
+
node_fetch_1.default(this.url, {
|
17
|
+
method: "POST",
|
18
|
+
headers: { "Content-Type": "application/json" },
|
19
|
+
body: JSON.stringify({ title, body, ...rest }),
|
20
|
+
});
|
21
|
+
}
|
22
|
+
}
|
23
|
+
}
|
24
|
+
exports.PushNotifier = PushNotifier;
|
25
|
+
function initializePushNotifier() {
|
26
|
+
const { notificationWebhookUrl } = runtimeConfig_1.getRuntimeConfig();
|
27
|
+
exports.pushNotifier = new PushNotifier(notificationWebhookUrl);
|
28
|
+
}
|
29
|
+
exports.initializePushNotifier = initializePushNotifier;
|
30
|
+
function sendTestNotification() {
|
31
|
+
exports.pushNotifier.notify({ body: "Test" });
|
32
|
+
logger_1.logger.info("Sent test notification");
|
33
|
+
}
|
34
|
+
exports.sendTestNotification = sendTestNotification;
|
35
|
+
//# sourceMappingURL=pushNotifier.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"pushNotifier.js","sourceRoot":"","sources":["../../src/pushNotifier.ts"],"names":[],"mappings":";;;;;;AAAA,4DAA+B;AAC/B,qCAAkC;AAClC,mDAAmD;AAUnD,MAAa,YAAY;IAExB,YAAY,GAAW;QACtB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,EAAE,KAAK,GAAG,YAAY,EAAE,IAAI,EAAE,GAAG,IAAI,EAAoB;QAC/D,IAAI,IAAI,CAAC,GAAG,EAAE;YACb,oBAAK,CAAC,IAAI,CAAC,GAAG,EAAE;gBACf,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,CAAC;aAC9C,CAAC,CAAC;SACH;IACF,CAAC;CACD;AAfD,oCAeC;AAED,SAAgB,sBAAsB;IACrC,MAAM,EAAE,sBAAsB,EAAE,GAAG,gCAAgB,EAAE,CAAC;IACtD,oBAAY,GAAG,IAAI,YAAY,CAAC,sBAAsB,CAAC,CAAC;AACzD,CAAC;AAHD,wDAGC;AAED,SAAgB,oBAAoB;IACnC,oBAAY,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IACtC,eAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;AACvC,CAAC;AAHD,oDAGC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"runtimeConfig.js","sourceRoot":"","sources":["../../src/runtimeConfig.ts"],"names":[],"mappings":";;;
|
1
|
+
{"version":3,"file":"runtimeConfig.js","sourceRoot":"","sources":["../../src/runtimeConfig.ts"],"names":[],"mappings":";;;AAyBa,QAAA,iBAAiB,GAAG;IAChC,QAAQ,EAAE,SAAS;IACnB,SAAS,EAAE,SAAS;CACpB,CAAC;AAEF,IAAI,aAA4B,CAAC;AAEjC,SAAgB,gBAAgB,CAAC,SAAwB;IACxD,aAAa,GAAG,SAAS,CAAC;AAC3B,CAAC;AAFD,4CAEC;AAED,SAAgB,gBAAgB;IAC/B,OAAO,aAAa,CAAC;AACtB,CAAC;AAFD,4CAEC"}
|
package/dist/src/server.js
CHANGED
@@ -5,11 +5,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
6
|
exports.serve = void 0;
|
7
7
|
const http_1 = __importDefault(require("http"));
|
8
|
+
const lodash_1 = require("lodash");
|
8
9
|
const querystring_1 = require("querystring");
|
9
10
|
const util_1 = require("util");
|
10
11
|
const logger_1 = require("./logger");
|
11
12
|
const pipeline_1 = require("./pipeline");
|
12
|
-
const lodash_1 = require("lodash");
|
13
13
|
function getData(req) {
|
14
14
|
return new Promise((resolve) => {
|
15
15
|
const chunks = [];
|
package/dist/src/server.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":";;;;;;
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
|
package/dist/src/startup.js
CHANGED
@@ -19,7 +19,7 @@ async function doStartupValidation() {
|
|
19
19
|
const downloadClient = TorrentClient_1.getClient();
|
20
20
|
await Promise.all([
|
21
21
|
jackett_1.validateJackettApi(),
|
22
|
-
downloadClient
|
22
|
+
downloadClient === null || downloadClient === void 0 ? void 0 : downloadClient.validateConfig(),
|
23
23
|
torrent_1.validateTorrentDir(),
|
24
24
|
].filter(Boolean));
|
25
25
|
logger_1.logger.info("Your configuration is valid!");
|
package/dist/src/startup.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"startup.js","sourceRoot":"","sources":["../../src/startup.ts"],"names":[],"mappings":";;;AAAA,2DAAoD;AACpD,qCAA0C;AAC1C,uCAA+C;AAC/C,qCAAkC;AAClC,mDAAmD;AACnD,uCAA+C;AAE/C,SAAS,eAAe;IACvB,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,GAAG,gCAAgB,EAAE,CAAC;IACtE,IAAI,MAAM,KAAK,QAAQ,IAAI,CAAC,CAAC,cAAc,IAAI,cAAc,CAAC,EAAE;QAC/D,MAAM,IAAI,uBAAc,CACvB,qFAAqF,CACrF,CAAC;KACF;AACF,CAAC;AAEM,KAAK,UAAU,mBAAmB;IACxC,eAAM,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;IAChD,eAAe,EAAE,CAAC;IAClB,MAAM,cAAc,GAAG,yBAAS,EAAE,CAAC;IACnC,MAAM,OAAO,CAAC,GAAG,CAChB;QACC,4BAAkB,EAAE;QACpB,cAAc,
|
1
|
+
{"version":3,"file":"startup.js","sourceRoot":"","sources":["../../src/startup.ts"],"names":[],"mappings":";;;AAAA,2DAAoD;AACpD,qCAA0C;AAC1C,uCAA+C;AAC/C,qCAAkC;AAClC,mDAAmD;AACnD,uCAA+C;AAE/C,SAAS,eAAe;IACvB,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,GAAG,gCAAgB,EAAE,CAAC;IACtE,IAAI,MAAM,KAAK,QAAQ,IAAI,CAAC,CAAC,cAAc,IAAI,cAAc,CAAC,EAAE;QAC/D,MAAM,IAAI,uBAAc,CACvB,qFAAqF,CACrF,CAAC;KACF;AACF,CAAC;AAEM,KAAK,UAAU,mBAAmB;IACxC,eAAM,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;IAChD,eAAe,EAAE,CAAC;IAClB,MAAM,cAAc,GAAG,yBAAS,EAAE,CAAC;IACnC,MAAM,OAAO,CAAC,GAAG,CAChB;QACC,4BAAkB,EAAE;QACpB,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,cAAc,EAAE;QAChC,4BAAkB,EAAE;KACpB,CAAC,MAAM,CAAC,OAAO,CAAC,CACjB,CAAC;IACF,eAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;AAC7C,CAAC;AAZD,kDAYC"}
|
package/dist/src/torrent.js
CHANGED
@@ -41,6 +41,7 @@ async function parseTorrentFromFilename(filename) {
|
|
41
41
|
}
|
42
42
|
exports.parseTorrentFromFilename = parseTorrentFromFilename;
|
43
43
|
async function parseTorrentFromURL(url) {
|
44
|
+
var _a;
|
44
45
|
let response;
|
45
46
|
try {
|
46
47
|
response = await new Promise((resolve, reject) => {
|
@@ -60,8 +61,7 @@ async function parseTorrentFromURL(url) {
|
|
60
61
|
if (response.statusCode < 200 || response.statusCode >= 300) {
|
61
62
|
if (response.statusCode >= 300 &&
|
62
63
|
response.statusCode < 400 &&
|
63
|
-
response.headers.location
|
64
|
-
response.headers.location.startsWith("magnet:")) {
|
64
|
+
((_a = response.headers.location) === null || _a === void 0 ? void 0 : _a.startsWith("magnet:"))) {
|
65
65
|
logger_1.logger.error(`Unsupported: magnet link detected at ${url}`);
|
66
66
|
return null;
|
67
67
|
}
|
package/dist/src/torrent.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"torrent.js","sourceRoot":"","sources":["../../src/torrent.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAgD;AAChD,kEAAuD;AACvD,gDAAwB;AACxB,2CAAoC;AACpC,+BAA+B;AAC/B,2CAA+C;AAC/C,8CAAsB;AACtB,qCAA0C;AAC1C,qCAAkC;AAClC,mDAAiE;AACjE,yCAAqE;AACrE,mCAA6C;AAOtC,KAAK,UAAU,wBAAwB,CAC7C,QAAgB;IAEhB,MAAM,IAAI,GAAG,MAAM,aAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACjD,OAAO,uBAAY,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AALD,4DAKC;AAEM,KAAK,UAAU,mBAAmB,CAAC,GAAW
|
1
|
+
{"version":3,"file":"torrent.js","sourceRoot":"","sources":["../../src/torrent.ts"],"names":[],"mappings":"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"}
|