cross-seed 6.11.2 → 6.12.0-0
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/action.js +339 -222
- package/dist/action.js.map +1 -1
- package/dist/clients/Deluge.js +100 -55
- package/dist/clients/Deluge.js.map +1 -1
- package/dist/clients/QBittorrent.js +147 -50
- package/dist/clients/QBittorrent.js.map +1 -1
- package/dist/clients/RTorrent.js +86 -56
- package/dist/clients/RTorrent.js.map +1 -1
- package/dist/clients/TorrentClient.js +60 -28
- package/dist/clients/TorrentClient.js.map +1 -1
- package/dist/clients/Transmission.js +67 -33
- package/dist/clients/Transmission.js.map +1 -1
- package/dist/cmd.js +10 -13
- package/dist/cmd.js.map +1 -1
- package/dist/config.template.cjs +17 -29
- package/dist/config.template.cjs.map +1 -1
- package/dist/configSchema.js +104 -30
- package/dist/configSchema.js.map +1 -1
- package/dist/configuration.js.map +1 -1
- package/dist/constants.js +2 -1
- package/dist/constants.js.map +1 -1
- package/dist/dataFiles.js +14 -11
- package/dist/dataFiles.js.map +1 -1
- package/dist/db.js +10 -7
- package/dist/db.js.map +1 -1
- package/dist/decide.js +13 -16
- package/dist/decide.js.map +1 -1
- package/dist/diff.js +5 -26
- package/dist/diff.js.map +1 -1
- package/dist/inject.js +99 -98
- package/dist/inject.js.map +1 -1
- package/dist/logger.js +26 -15
- package/dist/logger.js.map +1 -1
- package/dist/pipeline.js +127 -75
- package/dist/pipeline.js.map +1 -1
- package/dist/preFilter.js +2 -35
- package/dist/preFilter.js.map +1 -1
- package/dist/pushNotifier.js +3 -0
- package/dist/pushNotifier.js.map +1 -1
- package/dist/runtimeConfig.js.map +1 -1
- package/dist/searchee.js +136 -91
- package/dist/searchee.js.map +1 -1
- package/dist/startup.js +3 -2
- package/dist/startup.js.map +1 -1
- package/dist/torrent.js +132 -98
- package/dist/torrent.js.map +1 -1
- package/dist/torznab.js +5 -5
- package/dist/torznab.js.map +1 -1
- package/dist/utils.js +26 -6
- package/dist/utils.js.map +1 -1
- package/package.json +1 -1
    
        package/dist/action.js.map
    CHANGED
    
    | @@ -1 +1 @@ | |
| 1 | 
            -
            {"version":3,"file":"action.js","sourceRoot":"","sources":["../src/action.ts"],"names":[],"mappings":"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"}
         | 
| 1 | 
            +
            {"version":3,"file":"action.js","sourceRoot":"","sources":["../src/action.ts"],"names":[],"mappings":"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"}
         | 
    
        package/dist/clients/Deluge.js
    CHANGED
    
    | @@ -10,6 +10,7 @@ import { getRuntimeConfig } from "../runtimeConfig.js"; | |
| 10 10 | 
             
            import { createSearcheeFromDB, parseTitle, updateSearcheeClientDB, } from "../searchee.js";
         | 
| 11 11 | 
             
            import { extractCredentialsFromUrl, getLogString, humanReadableSize, sanitizeInfoHash, wait, } from "../utils.js";
         | 
| 12 12 | 
             
            import { getMaxRemainingBytes, getResumeStopTime, organizeTrackers, resumeErrSleepTime, resumeSleepTime, shouldRecheck, } from "./TorrentClient.js";
         | 
| 13 | 
            +
            import { inspect } from "util";
         | 
| 13 14 | 
             
            var DelugeErrorCode;
         | 
| 14 15 | 
             
            (function (DelugeErrorCode) {
         | 
| 15 16 | 
             
                DelugeErrorCode[DelugeErrorCode["NO_AUTH"] = 1] = "NO_AUTH";
         | 
| @@ -19,12 +20,24 @@ var DelugeErrorCode; | |
| 19 20 | 
             
                DelugeErrorCode[DelugeErrorCode["BAD_JSON"] = 5] = "BAD_JSON";
         | 
| 20 21 | 
             
            })(DelugeErrorCode || (DelugeErrorCode = {}));
         | 
| 21 22 | 
             
            export default class Deluge {
         | 
| 22 | 
            -
                 | 
| 23 | 
            +
                url;
         | 
| 24 | 
            +
                clientHost;
         | 
| 25 | 
            +
                clientPriority;
         | 
| 26 | 
            +
                clientType = Label.DELUGE;
         | 
| 27 | 
            +
                readonly;
         | 
| 28 | 
            +
                label;
         | 
| 23 29 | 
             
                delugeCookie = null;
         | 
| 24 30 | 
             
                delugeLabel = TORRENT_TAG;
         | 
| 25 31 | 
             
                delugeLabelSuffix = TORRENT_CATEGORY_SUFFIX;
         | 
| 26 32 | 
             
                isLabelEnabled;
         | 
| 27 33 | 
             
                delugeRequestId = 0;
         | 
| 34 | 
            +
                constructor(url, priority, readonly) {
         | 
| 35 | 
            +
                    this.url = url;
         | 
| 36 | 
            +
                    this.clientHost = new URL(url).host;
         | 
| 37 | 
            +
                    this.clientPriority = priority;
         | 
| 38 | 
            +
                    this.readonly = readonly;
         | 
| 39 | 
            +
                    this.label = `${this.clientType}@${this.clientHost}`;
         | 
| 40 | 
            +
                }
         | 
| 28 41 | 
             
                /**
         | 
| 29 42 | 
             
                 * validates the login and host for deluge webui
         | 
| 30 43 | 
             
                 */
         | 
| @@ -32,25 +45,28 @@ export default class Deluge { | |
| 32 45 | 
             
                    const { torrentDir } = getRuntimeConfig();
         | 
| 33 46 | 
             
                    await this.authenticate();
         | 
| 34 47 | 
             
                    this.isLabelEnabled = await this.labelEnabled();
         | 
| 48 | 
            +
                    logger.info({
         | 
| 49 | 
            +
                        label: this.label,
         | 
| 50 | 
            +
                        message: `Logged in successfully${this.readonly ? " (readonly)" : ""}`,
         | 
| 51 | 
            +
                    });
         | 
| 35 52 | 
             
                    if (!torrentDir)
         | 
| 36 53 | 
             
                        return;
         | 
| 37 54 | 
             
                    if (!readdirSync(torrentDir).some((f) => f.endsWith(".state"))) {
         | 
| 38 | 
            -
                        throw new CrossSeedError( | 
| 55 | 
            +
                        throw new CrossSeedError(`[${this.label}] Invalid torrentDir, if no torrents are in client set to null for now: https://www.cross-seed.org/docs/basics/options#torrentdir`);
         | 
| 39 56 | 
             
                    }
         | 
| 40 57 | 
             
                }
         | 
| 41 58 | 
             
                /**
         | 
| 42 59 | 
             
                 * connects and authenticates to the webui
         | 
| 43 60 | 
             
                 */
         | 
| 44 61 | 
             
                async authenticate() {
         | 
| 45 | 
            -
                    const {  | 
| 46 | 
            -
                    const { href, password } = extractCredentialsFromUrl(delugeRpcUrl).unwrapOrThrow(new CrossSeedError("delugeRpcUrl must be percent-encoded"));
         | 
| 62 | 
            +
                    const { href, password } = extractCredentialsFromUrl(this.url).unwrapOrThrow(new CrossSeedError(`[${this.label}] delugeRpcUrl must be percent-encoded`));
         | 
| 47 63 | 
             
                    if (!password) {
         | 
| 48 | 
            -
                        throw new CrossSeedError( | 
| 64 | 
            +
                        throw new CrossSeedError(`[${this.label}] You need to define a password in the delugeRpcUrl. (e.g. http://:<PASSWORD>@localhost:8112)`);
         | 
| 49 65 | 
             
                    }
         | 
| 50 66 | 
             
                    try {
         | 
| 51 | 
            -
                        const authResponse = (await this.call("auth.login", [password], 0)).unwrapOrThrow(new Error( | 
| 67 | 
            +
                        const authResponse = (await this.call("auth.login", [password], 0)).unwrapOrThrow(new Error(`[${this.label}] failed to connect for authentication`));
         | 
| 52 68 | 
             
                        if (!authResponse) {
         | 
| 53 | 
            -
                            throw new CrossSeedError(`Reached Deluge, but failed to authenticate: ${href}`);
         | 
| 69 | 
            +
                            throw new CrossSeedError(`[${this.label}] Reached Deluge, but failed to authenticate: ${href}`);
         | 
| 54 70 | 
             
                        }
         | 
| 55 71 | 
             
                    }
         | 
| 56 72 | 
             
                    catch (networkError) {
         | 
| @@ -58,14 +74,20 @@ export default class Deluge { | |
| 58 74 | 
             
                    }
         | 
| 59 75 | 
             
                    const isConnectedResponse = await this.call("web.connected", [], 0);
         | 
| 60 76 | 
             
                    if (isConnectedResponse.isOk() && !isConnectedResponse.unwrap()) {
         | 
| 61 | 
            -
                        logger.warn( | 
| 62 | 
            -
             | 
| 77 | 
            +
                        logger.warn({
         | 
| 78 | 
            +
                            label: this.label,
         | 
| 79 | 
            +
                            message: "Deluge WebUI disconnected from daemon...attempting to reconnect.",
         | 
| 80 | 
            +
                        });
         | 
| 81 | 
            +
                        const webuiHostList = (await this.call("web.get_hosts", [], 0)).unwrapOrThrow(new Error(`[${this.label}] failed to get host-list for reconnect`));
         | 
| 63 82 | 
             
                        const connectResponse = await this.call("web.connect", [webuiHostList[0][0]], 0);
         | 
| 64 83 | 
             
                        if (connectResponse.isOk() && connectResponse.unwrap()) {
         | 
| 65 | 
            -
                            logger.info( | 
| 84 | 
            +
                            logger.info({
         | 
| 85 | 
            +
                                label: this.label,
         | 
| 86 | 
            +
                                message: "Deluge WebUI connected to the daemon.",
         | 
| 87 | 
            +
                            });
         | 
| 66 88 | 
             
                        }
         | 
| 67 89 | 
             
                        else {
         | 
| 68 | 
            -
                            throw new CrossSeedError( | 
| 90 | 
            +
                            throw new CrossSeedError(`[${this.label}] Unable to connect WebUI to Deluge daemon. Connect to the WebUI to resolve this.`);
         | 
| 69 91 | 
             
                        }
         | 
| 70 92 | 
             
                    }
         | 
| 71 93 | 
             
                }
         | 
| @@ -77,8 +99,10 @@ export default class Deluge { | |
| 77 99 | 
             
                 * @return a promised Result of the specified ResultType or an ErrorType
         | 
| 78 100 | 
             
                 */
         | 
| 79 101 | 
             
                async call(method, params, retries = 1) {
         | 
| 80 | 
            -
                    const  | 
| 81 | 
            -
                    const  | 
| 102 | 
            +
                    const msg = `Calling method ${method} with params ${inspect(params, { depth: null, compact: true })}`;
         | 
| 103 | 
            +
                    const message = msg.length > 1000 ? `${msg.slice(0, 1000)}...` : msg;
         | 
| 104 | 
            +
                    logger.verbose({ label: this.label, message });
         | 
| 105 | 
            +
                    const { href } = extractCredentialsFromUrl(this.url).unwrapOrThrow(new CrossSeedError(`[${this.label}] delugeRpcUrl must be percent-encoded`));
         | 
| 82 106 | 
             
                    const headers = new Headers({ "Content-Type": "application/json" });
         | 
| 83 107 | 
             
                    if (this.delugeCookie)
         | 
| 84 108 | 
             
                        headers.set("Cookie", this.delugeCookie);
         | 
| @@ -98,9 +122,9 @@ export default class Deluge { | |
| 98 122 | 
             
                    catch (networkError) {
         | 
| 99 123 | 
             
                        if (networkError.name === "AbortError" ||
         | 
| 100 124 | 
             
                            networkError.name === "TimeoutError") {
         | 
| 101 | 
            -
                            throw new Error(`Deluge method ${method} timed out after 10 seconds`);
         | 
| 125 | 
            +
                            throw new Error(`[${this.label}] Deluge method ${method} timed out after 10 seconds`);
         | 
| 102 126 | 
             
                        }
         | 
| 103 | 
            -
                        throw new Error(`Failed to connect to Deluge at ${href}`, {
         | 
| 127 | 
            +
                        throw new Error(`[${this.label}] Failed to connect to Deluge at ${href}`, {
         | 
| 104 128 | 
             
                            cause: networkError,
         | 
| 105 129 | 
             
                        });
         | 
| 106 130 | 
             
                    }
         | 
| @@ -108,7 +132,7 @@ export default class Deluge { | |
| 108 132 | 
             
                        json = (await response.json());
         | 
| 109 133 | 
             
                    }
         | 
| 110 134 | 
             
                    catch (jsonParseError) {
         | 
| 111 | 
            -
                        throw new Error(`Deluge method ${method} response was non-JSON ${jsonParseError}`);
         | 
| 135 | 
            +
                        throw new Error(`[${this.label}] Deluge method ${method} response was non-JSON ${jsonParseError}`);
         | 
| 112 136 | 
             
                    }
         | 
| 113 137 | 
             
                    if (json.error?.code === DelugeErrorCode.NO_AUTH && retries > 0) {
         | 
| 114 138 | 
             
                        this.delugeCookie = null;
         | 
| @@ -117,7 +141,7 @@ export default class Deluge { | |
| 117 141 | 
             
                            return this.call(method, params, 0);
         | 
| 118 142 | 
             
                        }
         | 
| 119 143 | 
             
                        else {
         | 
| 120 | 
            -
                            throw new Error( | 
| 144 | 
            +
                            throw new Error(`[${this.label}] Connection lost with Deluge. Re-authentication failed.`);
         | 
| 121 145 | 
             
                        }
         | 
| 122 146 | 
             
                    }
         | 
| 123 147 | 
             
                    this.handleResponseHeaders(response.headers);
         | 
| @@ -175,14 +199,14 @@ export default class Deluge { | |
| 175 199 | 
             
                            torrentLog = `${torrentInfo.name} [${sanitizeInfoHash(infoHash)}]`;
         | 
| 176 200 | 
             
                            if (torrentInfo.state !== "Paused") {
         | 
| 177 201 | 
             
                                logger.warn({
         | 
| 178 | 
            -
                                    label:  | 
| 202 | 
            +
                                    label: this.label,
         | 
| 179 203 | 
             
                                    message: `Will not resume ${torrentLog}: state is ${torrentInfo.state}`,
         | 
| 180 204 | 
             
                                });
         | 
| 181 205 | 
             
                                return;
         | 
| 182 206 | 
             
                            }
         | 
| 183 207 | 
             
                            if (torrentInfo.total_remaining > maxRemainingBytes) {
         | 
| 184 208 | 
             
                                logger.warn({
         | 
| 185 | 
            -
                                    label:  | 
| 209 | 
            +
                                    label: this.label,
         | 
| 186 210 | 
             
                                    message: `Will not resume ${torrentLog}: ${humanReadableSize(torrentInfo.total_remaining, { binary: true })} remaining > ${humanReadableSize(maxRemainingBytes, { binary: true })}`,
         | 
| 187 211 | 
             
                                });
         | 
| 188 212 | 
             
                                return;
         | 
| @@ -193,14 +217,14 @@ export default class Deluge { | |
| 193 217 | 
             
                            continue;
         | 
| 194 218 | 
             
                        }
         | 
| 195 219 | 
             
                        logger.info({
         | 
| 196 | 
            -
                            label:  | 
| 220 | 
            +
                            label: this.label,
         | 
| 197 221 | 
             
                            message: `Resuming ${torrentLog}: ${humanReadableSize(torrentInfo.total_remaining, { binary: true })} remaining`,
         | 
| 198 222 | 
             
                        });
         | 
| 199 223 | 
             
                        await this.call("core.resume_torrent", [[infoHash]]);
         | 
| 200 224 | 
             
                        return;
         | 
| 201 225 | 
             
                    }
         | 
| 202 226 | 
             
                    logger.warn({
         | 
| 203 | 
            -
                        label:  | 
| 227 | 
            +
                        label: this.label,
         | 
| 204 228 | 
             
                        message: `Will not resume torrent ${infoHash}: timeout`,
         | 
| 205 229 | 
             
                    });
         | 
| 206 230 | 
             
                }
         | 
| @@ -262,11 +286,11 @@ export default class Deluge { | |
| 262 286 | 
             
                        }
         | 
| 263 287 | 
             
                    }
         | 
| 264 288 | 
             
                    catch (e) {
         | 
| 265 | 
            -
                        logger.debug(e);
         | 
| 266 289 | 
             
                        logger.warn({
         | 
| 267 | 
            -
                            label:  | 
| 290 | 
            +
                            label: this.label,
         | 
| 268 291 | 
             
                            message: `Failed to label ${getLogString(newTorrent)} as ${label}: ${e.message}`,
         | 
| 269 292 | 
             
                        });
         | 
| 293 | 
            +
                        logger.debug(e);
         | 
| 270 294 | 
             
                    }
         | 
| 271 295 | 
             
                }
         | 
| 272 296 | 
             
                /**
         | 
| @@ -274,29 +298,33 @@ export default class Deluge { | |
| 274 298 | 
             
                 * @param newTorrent injected candidate torrent
         | 
| 275 299 | 
             
                 * @param searchee originating torrent (searchee)
         | 
| 276 300 | 
             
                 * @param decision decision by which the newTorrent was matched
         | 
| 277 | 
            -
                 * @param  | 
| 301 | 
            +
                 * @param options.onlyCompleted boolean to only inject completed torrents
         | 
| 302 | 
            +
                 * @param options.destinationDir location of the linked files (optional)
         | 
| 278 303 | 
             
                 * @return InjectionResult of the newTorrent's injection
         | 
| 279 304 | 
             
                 */
         | 
| 280 | 
            -
                async inject(newTorrent, searchee, decision,  | 
| 305 | 
            +
                async inject(newTorrent, searchee, decision, options) {
         | 
| 281 306 | 
             
                    try {
         | 
| 282 307 | 
             
                        let torrentInfo;
         | 
| 283 | 
            -
                        if (searchee.infoHash) {
         | 
| 308 | 
            +
                        if (options.onlyCompleted && searchee.infoHash) {
         | 
| 284 309 | 
             
                            torrentInfo = await this.getTorrentInfo(searchee.infoHash);
         | 
| 285 | 
            -
                            if (!torrentInfo.complete) | 
| 310 | 
            +
                            if (!torrentInfo.complete)
         | 
| 286 311 | 
             
                                return InjectionResult.TORRENT_NOT_COMPLETE;
         | 
| 287 | 
            -
                            }
         | 
| 288 312 | 
             
                        }
         | 
| 289 | 
            -
                        if (! | 
| 313 | 
            +
                        if (!options.destinationDir &&
         | 
| 314 | 
            +
                            (!searchee.infoHash || !torrentInfo)) {
         | 
| 290 315 | 
             
                            logger.debug({
         | 
| 291 | 
            -
                                label:  | 
| 316 | 
            +
                                label: this.label,
         | 
| 292 317 | 
             
                                message: `Injection failure: ${getLogString(searchee)} was missing critical data.`,
         | 
| 293 318 | 
             
                            });
         | 
| 294 319 | 
             
                            return InjectionResult.FAILURE;
         | 
| 295 320 | 
             
                        }
         | 
| 296 321 | 
             
                        const torrentFileName = `${newTorrent.getFileSystemSafeName()}.cross-seed.torrent`;
         | 
| 297 322 | 
             
                        const encodedTorrentData = newTorrent.encode().toString("base64");
         | 
| 298 | 
            -
                        const  | 
| 299 | 
            -
             | 
| 323 | 
            +
                        const destinationDir = options.destinationDir
         | 
| 324 | 
            +
                            ? options.destinationDir
         | 
| 325 | 
            +
                            : torrentInfo.save_path;
         | 
| 326 | 
            +
                        const toRecheck = shouldRecheck(searchee, decision);
         | 
| 327 | 
            +
                        const params = this.formatData(torrentFileName, encodedTorrentData, destinationDir, toRecheck);
         | 
| 300 328 | 
             
                        const addResponse = await this.call("core.add_torrent_file", params);
         | 
| 301 329 | 
             
                        if (addResponse.isErr()) {
         | 
| 302 330 | 
             
                            const addResponseError = addResponse.unwrapErr();
         | 
| @@ -305,14 +333,14 @@ export default class Deluge { | |
| 305 333 | 
             
                            }
         | 
| 306 334 | 
             
                            else if (addResponseError) {
         | 
| 307 335 | 
             
                                logger.debug({
         | 
| 308 | 
            -
                                    label:  | 
| 336 | 
            +
                                    label: this.label,
         | 
| 309 337 | 
             
                                    message: `Injection failed: ${addResponseError.message}`,
         | 
| 310 338 | 
             
                                });
         | 
| 311 339 | 
             
                                return InjectionResult.FAILURE;
         | 
| 312 340 | 
             
                            }
         | 
| 313 341 | 
             
                            else {
         | 
| 314 342 | 
             
                                logger.debug({
         | 
| 315 | 
            -
                                    label:  | 
| 343 | 
            +
                                    label: this.label,
         | 
| 316 344 | 
             
                                    message: `Unknown injection failure: ${getLogString(newTorrent)}`,
         | 
| 317 345 | 
             
                                });
         | 
| 318 346 | 
             
                                return InjectionResult.FAILURE;
         | 
| @@ -320,7 +348,7 @@ export default class Deluge { | |
| 320 348 | 
             
                        }
         | 
| 321 349 | 
             
                        if (addResponse.isOk()) {
         | 
| 322 350 | 
             
                            await this.setLabel(newTorrent, this.calculateLabel(searchee, torrentInfo));
         | 
| 323 | 
            -
                            if ( | 
| 351 | 
            +
                            if (toRecheck) {
         | 
| 324 352 | 
             
                                // when paused, libtorrent doesnt start rechecking
         | 
| 325 353 | 
             
                                // leaves torrent ready to download - ~99%
         | 
| 326 354 | 
             
                                await wait(1000);
         | 
| @@ -333,7 +361,7 @@ export default class Deluge { | |
| 333 361 | 
             
                    }
         | 
| 334 362 | 
             
                    catch (error) {
         | 
| 335 363 | 
             
                        logger.error({
         | 
| 336 | 
            -
                            label:  | 
| 364 | 
            +
                            label: this.label,
         | 
| 337 365 | 
             
                            message: `Injection failed: ${error}`,
         | 
| 338 366 | 
             
                        });
         | 
| 339 367 | 
             
                        logger.debug(error);
         | 
| @@ -350,19 +378,17 @@ export default class Deluge { | |
| 350 378 | 
             
                 * formats the json for rpc calls to inject
         | 
| 351 379 | 
             
                 * @param filename filename for the injecting torrent file
         | 
| 352 380 | 
             
                 * @param filedump string with encoded torrent file
         | 
| 353 | 
            -
                 * @param  | 
| 354 | 
            -
                 * @param  | 
| 355 | 
            -
                 * @param decision decision by which the newTorrent was matched
         | 
| 381 | 
            +
                 * @param destinationDir path to the torrent data
         | 
| 382 | 
            +
                 * @param toRecheck boolean to recheck the torrent
         | 
| 356 383 | 
             
                 */
         | 
| 357 | 
            -
                formatData(filename, filedump,  | 
| 358 | 
            -
                    const toRecheck = shouldRecheck(searchee, decision);
         | 
| 384 | 
            +
                formatData(filename, filedump, destinationDir, toRecheck) {
         | 
| 359 385 | 
             
                    return [
         | 
| 360 386 | 
             
                        filename,
         | 
| 361 387 | 
             
                        filedump,
         | 
| 362 388 | 
             
                        {
         | 
| 363 389 | 
             
                            add_paused: toRecheck,
         | 
| 364 390 | 
             
                            seed_mode: !toRecheck,
         | 
| 365 | 
            -
                            download_location:  | 
| 391 | 
            +
                            download_location: destinationDir,
         | 
| 366 392 | 
             
                        },
         | 
| 367 393 | 
             
                    ];
         | 
| 368 394 | 
             
                }
         | 
| @@ -434,13 +460,31 @@ export default class Deluge { | |
| 434 460 | 
             
                 */
         | 
| 435 461 | 
             
                async isTorrentComplete(infoHash) {
         | 
| 436 462 | 
             
                    try {
         | 
| 437 | 
            -
                        const torrentInfo = await this.getTorrentInfo(infoHash | 
| 463 | 
            +
                        const torrentInfo = await this.getTorrentInfo(infoHash, {
         | 
| 464 | 
            +
                            useVerbose: true,
         | 
| 465 | 
            +
                        });
         | 
| 438 466 | 
             
                        return torrentInfo.complete ? resultOf(true) : resultOf(false);
         | 
| 439 467 | 
             
                    }
         | 
| 440 468 | 
             
                    catch (e) {
         | 
| 441 469 | 
             
                        return resultOfErr("NOT_FOUND");
         | 
| 442 470 | 
             
                    }
         | 
| 443 471 | 
             
                }
         | 
| 472 | 
            +
                /**
         | 
| 473 | 
            +
                 * checks if a torrent is checking in deluge
         | 
| 474 | 
            +
                 * @param infoHash the infoHash of the torrent to check
         | 
| 475 | 
            +
                 * @return Result containing either a boolean or reason it was not provided
         | 
| 476 | 
            +
                 */
         | 
| 477 | 
            +
                async isTorrentChecking(infoHash) {
         | 
| 478 | 
            +
                    try {
         | 
| 479 | 
            +
                        const torrentInfo = await this.getTorrentInfo(infoHash, {
         | 
| 480 | 
            +
                            useVerbose: true,
         | 
| 481 | 
            +
                        });
         | 
| 482 | 
            +
                        return resultOf(torrentInfo.state === "Checking");
         | 
| 483 | 
            +
                    }
         | 
| 484 | 
            +
                    catch (e) {
         | 
| 485 | 
            +
                        return resultOfErr("NOT_FOUND");
         | 
| 486 | 
            +
                    }
         | 
| 487 | 
            +
                }
         | 
| 444 488 | 
             
                /**
         | 
| 445 489 | 
             
                 * @return All torrents in the client
         | 
| 446 490 | 
             
                 */
         | 
| @@ -457,7 +501,6 @@ export default class Deluge { | |
| 457 501 | 
             
                    return Object.entries(torrents).map(([hash, torrent]) => ({
         | 
| 458 502 | 
             
                        infoHash: hash,
         | 
| 459 503 | 
             
                        category: torrent.label ?? "",
         | 
| 460 | 
            -
                        tags: [],
         | 
| 461 504 | 
             
                    }));
         | 
| 462 505 | 
             
                }
         | 
| 463 506 | 
             
                /**
         | 
| @@ -476,7 +519,7 @@ export default class Deluge { | |
| 476 519 | 
             
                    ]);
         | 
| 477 520 | 
             
                    if (torrentsRes.isErr()) {
         | 
| 478 521 | 
             
                        logger.error({
         | 
| 479 | 
            -
                            label:  | 
| 522 | 
            +
                            label: this.label,
         | 
| 480 523 | 
             
                            message: "Failed to get torrents from client",
         | 
| 481 524 | 
             
                        });
         | 
| 482 525 | 
             
                        logger.debug(torrentsRes.unwrapErr());
         | 
| @@ -485,7 +528,7 @@ export default class Deluge { | |
| 485 528 | 
             
                    const torrents = torrentsRes.unwrap().torrents;
         | 
| 486 529 | 
             
                    if (!torrents || !Object.keys(torrents).length) {
         | 
| 487 530 | 
             
                        logger.verbose({
         | 
| 488 | 
            -
                            label:  | 
| 531 | 
            +
                            label: this.label,
         | 
| 489 532 | 
             
                            message: "No torrents found in client",
         | 
| 490 533 | 
             
                        });
         | 
| 491 534 | 
             
                        return { searchees, newSearchees };
         | 
| @@ -495,6 +538,7 @@ export default class Deluge { | |
| 495 538 | 
             
                        infoHashes.add(infoHash);
         | 
| 496 539 | 
             
                        const dbTorrent = await memDB("torrent")
         | 
| 497 540 | 
             
                            .where("info_hash", infoHash)
         | 
| 541 | 
            +
                            .where("client_host", this.clientHost)
         | 
| 498 542 | 
             
                            .first();
         | 
| 499 543 | 
             
                        const refresh = options?.refresh === undefined
         | 
| 500 544 | 
             
                            ? false
         | 
| @@ -514,7 +558,7 @@ export default class Deluge { | |
| 514 558 | 
             
                        }));
         | 
| 515 559 | 
             
                        if (!files.length) {
         | 
| 516 560 | 
             
                            logger.verbose({
         | 
| 517 | 
            -
                                label:  | 
| 561 | 
            +
                                label: this.label,
         | 
| 518 562 | 
             
                                message: `No files found for ${torrent.name} [${sanitizeInfoHash(infoHash)}]: skipping`,
         | 
| 519 563 | 
             
                            });
         | 
| 520 564 | 
             
                            continue;
         | 
| @@ -525,30 +569,30 @@ export default class Deluge { | |
| 525 569 | 
             
                        const length = torrent.total_size;
         | 
| 526 570 | 
             
                        const savePath = torrent.save_path;
         | 
| 527 571 | 
             
                        const category = torrent.label ?? "";
         | 
| 528 | 
            -
                        const tags = [];
         | 
| 529 572 | 
             
                        const searchee = {
         | 
| 530 573 | 
             
                            infoHash,
         | 
| 531 574 | 
             
                            name,
         | 
| 532 575 | 
             
                            title,
         | 
| 533 576 | 
             
                            files,
         | 
| 534 577 | 
             
                            length,
         | 
| 578 | 
            +
                            clientHost: this.clientHost,
         | 
| 535 579 | 
             
                            savePath,
         | 
| 536 580 | 
             
                            category,
         | 
| 537 | 
            -
                            tags,
         | 
| 538 581 | 
             
                            trackers,
         | 
| 539 582 | 
             
                        };
         | 
| 540 583 | 
             
                        newSearchees.push(searchee);
         | 
| 541 584 | 
             
                        searchees.push(searchee);
         | 
| 542 585 | 
             
                    }
         | 
| 543 | 
            -
                    await updateSearcheeClientDB(newSearchees, infoHashes);
         | 
| 586 | 
            +
                    await updateSearcheeClientDB(this.clientHost, newSearchees, infoHashes);
         | 
| 544 587 | 
             
                    return { searchees, newSearchees };
         | 
| 545 588 | 
             
                }
         | 
| 546 589 | 
             
                /**
         | 
| 547 590 | 
             
                 * returns information needed to complete/validate injection
         | 
| 548 591 | 
             
                 * @return Promise of TorrentInfo type
         | 
| 549 592 | 
             
                 * @param infoHash infohash to query for in the client
         | 
| 593 | 
            +
                 * @param options.useVerbose use verbose instead of error logging
         | 
| 550 594 | 
             
                 */
         | 
| 551 | 
            -
                async getTorrentInfo(infoHash) {
         | 
| 595 | 
            +
                async getTorrentInfo(infoHash, options) {
         | 
| 552 596 | 
             
                    let torrent;
         | 
| 553 597 | 
             
                    try {
         | 
| 554 598 | 
             
                        const params = [
         | 
| @@ -590,12 +634,13 @@ export default class Deluge { | |
| 590 634 | 
             
                        };
         | 
| 591 635 | 
             
                    }
         | 
| 592 636 | 
             
                    catch (e) {
         | 
| 593 | 
            -
                        logger.error | 
| 594 | 
            -
             | 
| 595 | 
            -
                             | 
| 637 | 
            +
                        const log = options?.useVerbose ? logger.verbose : logger.error;
         | 
| 638 | 
            +
                        log({
         | 
| 639 | 
            +
                            label: this.label,
         | 
| 640 | 
            +
                            message: `Failed to fetch torrent data for ${infoHash}: ${e.message}`,
         | 
| 596 641 | 
             
                        });
         | 
| 597 642 | 
             
                        logger.debug(e);
         | 
| 598 | 
            -
                        throw new Error( | 
| 643 | 
            +
                        throw new Error(`[${this.label}] web.update_ui: failed to fetch data from client`, {
         | 
| 599 644 | 
             
                            cause: e,
         | 
| 600 645 | 
             
                        });
         | 
| 601 646 | 
             
                    }
         | 
| @@ -1 +1 @@ | |
| 1 | 
            -
            {"version":3,"file":"Deluge.js","sourceRoot":"","sources":["../../src/clients/Deluge.ts"],"names":[],"mappings":"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"}
         | 
| 1 | 
            +
            {"version":3,"file":"Deluge.js","sourceRoot":"","sources":["../../src/clients/Deluge.ts"],"names":[],"mappings":"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"}
         |