cross-seed 6.13.6 → 7.0.0-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/README.md +12 -13
- package/dist/Result.d.ts +27 -0
- package/dist/action.d.ts +34 -0
- package/dist/action.js +2 -1
- package/dist/action.js.map +1 -1
- package/dist/arr.d.ts +31 -0
- package/dist/arr.js +107 -39
- package/dist/arr.js.map +1 -1
- package/dist/auth.d.ts +3 -0
- package/dist/auth.js +9 -6
- package/dist/auth.js.map +1 -1
- package/dist/clients/Deluge.d.ts +153 -0
- package/dist/clients/Deluge.js +6 -6
- package/dist/clients/Deluge.js.map +1 -1
- package/dist/clients/QBittorrent.d.ts +218 -0
- package/dist/clients/RTorrent.d.ts +43 -0
- package/dist/clients/RTorrent.js +6 -3
- package/dist/clients/RTorrent.js.map +1 -1
- package/dist/clients/TorrentClient.d.ts +108 -0
- package/dist/clients/TorrentClient.js +136 -67
- package/dist/clients/TorrentClient.js.map +1 -1
- package/dist/clients/Transmission.d.ts +43 -0
- package/dist/clients/Transmission.js +2 -2
- package/dist/clients/Transmission.js.map +1 -1
- package/dist/cmd.d.ts +2 -0
- package/dist/cmd.js +42 -110
- package/dist/cmd.js.map +1 -1
- package/dist/configSchema.d.ts +1 -0
- package/dist/configSchema.js +1 -666
- package/dist/configSchema.js.map +1 -1
- package/dist/configuration.d.ts +63 -0
- package/dist/configuration.js +263 -24
- package/dist/configuration.js.map +1 -1
- package/dist/constants.d.ts +108 -0
- package/dist/constants.js +2 -32
- package/dist/constants.js.map +1 -1
- package/dist/dataFiles.d.ts +8 -0
- package/dist/dataFiles.js +21 -6
- package/dist/dataFiles.js.map +1 -1
- package/dist/db.d.ts +3 -0
- package/dist/dbConfig.d.ts +4 -0
- package/dist/dbConfig.js +67 -0
- package/dist/dbConfig.js.map +1 -0
- package/dist/decide.d.ts +25 -0
- package/dist/decide.js +4 -4
- package/dist/decide.js.map +1 -1
- package/dist/diff.d.ts +1 -0
- package/dist/errors.d.ts +3 -0
- package/dist/errors.js +0 -9
- package/dist/errors.js.map +1 -1
- package/dist/indexers.d.ts +105 -0
- package/dist/indexers.js +82 -14
- package/dist/indexers.js.map +1 -1
- package/dist/inject.d.ts +2 -0
- package/dist/jobs.d.ts +29 -0
- package/dist/jobs.js +14 -9
- package/dist/jobs.js.map +1 -1
- package/dist/logger.d.ts +29 -0
- package/dist/logger.js +18 -4
- package/dist/logger.js.map +1 -1
- package/dist/migrations/00-initialSchema.d.ts +9 -0
- package/dist/migrations/01-jobs.d.ts +9 -0
- package/dist/migrations/02-timestamps.d.ts +9 -0
- package/dist/migrations/03-rateLimits.d.ts +9 -0
- package/dist/migrations/04-auth.d.ts +9 -0
- package/dist/migrations/04-auth.js +1 -1
- package/dist/migrations/04-auth.js.map +1 -1
- package/dist/migrations/05-caps.d.ts +9 -0
- package/dist/migrations/06-uniqueDecisions.d.ts +9 -0
- package/dist/migrations/07-limits.d.ts +9 -0
- package/dist/migrations/08-rss.d.ts +9 -0
- package/dist/migrations/09-clientAndDataSearchees.d.ts +9 -0
- package/dist/migrations/10-indexerNameAudioBookCaps.d.ts +9 -0
- package/dist/migrations/11-trackers.d.ts +9 -0
- package/dist/migrations/12-user-auth.d.ts +9 -0
- package/dist/migrations/12-user-auth.js +22 -0
- package/dist/migrations/12-user-auth.js.map +1 -0
- package/dist/migrations/13-settings.d.ts +9 -0
- package/dist/migrations/13-settings.js +23 -0
- package/dist/migrations/13-settings.js.map +1 -0
- package/dist/migrations/14-indexer-enabled-flag.d.ts +9 -0
- package/dist/migrations/14-indexer-enabled-flag.js +12 -0
- package/dist/migrations/14-indexer-enabled-flag.js.map +1 -0
- package/dist/migrations/15-remove-url-unique-constraint.d.ts +9 -0
- package/dist/migrations/15-remove-url-unique-constraint.js +14 -0
- package/dist/migrations/15-remove-url-unique-constraint.js.map +1 -0
- package/dist/migrations/16-prune-inactive-indexers.d.ts +9 -0
- package/dist/migrations/16-prune-inactive-indexers.js +17 -0
- package/dist/migrations/16-prune-inactive-indexers.js.map +1 -0
- package/dist/migrations/migrations.d.ts +13 -0
- package/dist/migrations/migrations.js +10 -0
- package/dist/migrations/migrations.js.map +1 -1
- package/dist/parseTorrent.d.ts +53 -0
- package/dist/pipeline.d.ts +41 -0
- package/dist/pipeline.js +57 -10
- package/dist/pipeline.js.map +1 -1
- package/dist/preFilter.d.ts +25 -0
- package/dist/preFilter.js +15 -15
- package/dist/preFilter.js.map +1 -1
- package/dist/problems/linking.d.ts +2 -0
- package/dist/problems/linking.js +80 -0
- package/dist/problems/linking.js.map +1 -0
- package/dist/problems/path.d.ts +22 -0
- package/dist/problems/path.js +96 -0
- package/dist/problems/path.js.map +1 -0
- package/dist/problems.d.ts +13 -0
- package/dist/problems.js +48 -0
- package/dist/problems.js.map +1 -0
- package/dist/pushNotifier.d.ts +19 -0
- package/dist/routes/baseApi.d.ts +2 -0
- package/dist/routes/baseApi.js +354 -0
- package/dist/routes/baseApi.js.map +1 -0
- package/dist/routes/indexerApi.d.ts +6 -0
- package/dist/routes/indexerApi.js +165 -0
- package/dist/routes/indexerApi.js.map +1 -0
- package/dist/routes/staticFrontendPlugin.d.ts +4 -0
- package/dist/routes/staticFrontendPlugin.js +61 -0
- package/dist/routes/staticFrontendPlugin.js.map +1 -0
- package/dist/runtimeConfig.d.ts +6 -0
- package/dist/runtimeConfig.js +17 -1
- package/dist/runtimeConfig.js.map +1 -1
- package/dist/searchee.d.ts +108 -0
- package/dist/searchee.js +36 -5
- package/dist/searchee.js.map +1 -1
- package/dist/server.d.ts +4 -0
- package/dist/server.js +38 -429
- package/dist/server.js.map +1 -1
- package/dist/services/indexerService.d.ts +96 -0
- package/dist/services/indexerService.js +287 -0
- package/dist/services/indexerService.js.map +1 -0
- package/dist/sessionCookies.d.ts +5 -0
- package/dist/sessionCookies.js +27 -0
- package/dist/sessionCookies.js.map +1 -0
- package/dist/startup.d.ts +25 -0
- package/dist/startup.js +105 -151
- package/dist/startup.js.map +1 -1
- package/dist/torrent.d.ts +69 -0
- package/dist/torrent.js +17 -13
- package/dist/torrent.js.map +1 -1
- package/dist/torznab.d.ts +60 -0
- package/dist/torznab.js +14 -89
- package/dist/torznab.js.map +1 -1
- package/dist/trpc/fastifyAdapter.d.ts +2 -0
- package/dist/trpc/fastifyAdapter.js +9 -0
- package/dist/trpc/fastifyAdapter.js.map +1 -0
- package/dist/trpc/index.d.ts +49 -0
- package/dist/trpc/index.js +53 -0
- package/dist/trpc/index.js.map +1 -0
- package/dist/trpc/routers/auth.d.ts +43 -0
- package/dist/trpc/routers/auth.js +116 -0
- package/dist/trpc/routers/auth.js.map +1 -0
- package/dist/trpc/routers/clients.d.ts +21 -0
- package/dist/trpc/routers/clients.js +65 -0
- package/dist/trpc/routers/clients.js.map +1 -0
- package/dist/trpc/routers/health.d.ts +14 -0
- package/dist/trpc/routers/health.js +20 -0
- package/dist/trpc/routers/health.js.map +1 -0
- package/dist/trpc/routers/index.d.ts +391 -0
- package/dist/trpc/routers/index.js +23 -0
- package/dist/trpc/routers/index.js.map +1 -0
- package/dist/trpc/routers/indexers.d.ts +75 -0
- package/dist/trpc/routers/indexers.js +79 -0
- package/dist/trpc/routers/indexers.js.map +1 -0
- package/dist/trpc/routers/jobs.d.ts +33 -0
- package/dist/trpc/routers/jobs.js +84 -0
- package/dist/trpc/routers/jobs.js.map +1 -0
- package/dist/trpc/routers/logs.d.ts +27 -0
- package/dist/trpc/routers/logs.js +91 -0
- package/dist/trpc/routers/logs.js.map +1 -0
- package/dist/trpc/routers/searchees.d.ts +51 -0
- package/dist/trpc/routers/searchees.js +156 -0
- package/dist/trpc/routers/searchees.js.map +1 -0
- package/dist/trpc/routers/settings.d.ts +83 -0
- package/dist/trpc/routers/settings.js +92 -0
- package/dist/trpc/routers/settings.js.map +1 -0
- package/dist/trpc/routers/stats.d.ts +42 -0
- package/dist/trpc/routers/stats.js +102 -0
- package/dist/trpc/routers/stats.js.map +1 -0
- package/dist/userAuth.d.ts +21 -0
- package/dist/userAuth.js +86 -0
- package/dist/userAuth.js.map +1 -0
- package/dist/utils/authUtils.d.ts +10 -0
- package/dist/utils/authUtils.js +24 -0
- package/dist/utils/authUtils.js.map +1 -0
- package/dist/utils/logWatcher.d.ts +28 -0
- package/dist/utils/logWatcher.js +218 -0
- package/dist/utils/logWatcher.js.map +1 -0
- package/dist/utils/object.d.ts +1 -0
- package/dist/utils/object.js +4 -0
- package/dist/utils/object.js.map +1 -0
- package/dist/utils.d.ts +175 -0
- package/dist/utils.js +61 -38
- package/dist/utils.js.map +1 -1
- package/dist/webui/assets/FieldInfo-Bxj_j8SJ.js +1 -0
- package/dist/webui/assets/Page-C3rteCZt.js +1 -0
- package/dist/webui/assets/array-field-DVSC6nHP.js +1 -0
- package/dist/webui/assets/badge-DTZMtS0e.js +1 -0
- package/dist/webui/assets/check-Bu3ldi63.js +1 -0
- package/dist/webui/assets/chevron-down-CRy8M0kJ.js +1 -0
- package/dist/webui/assets/clients-CW8oEZoQ.js +1 -0
- package/dist/webui/assets/connect-YBNsnjWT.js +1 -0
- package/dist/webui/assets/debug-mz8-WYZj.js +1 -0
- package/dist/webui/assets/directories-BSK28RgR.js +1 -0
- package/dist/webui/assets/duration-field-C6xoSlJg.js +1 -0
- package/dist/webui/assets/general-lJJxZhH7.js +1 -0
- package/dist/webui/assets/health-CXbsVrie.js +1 -0
- package/dist/webui/assets/index-Bi48hI2z.js +54 -0
- package/dist/webui/assets/index-C-Ul7GNg.css +1 -0
- package/dist/webui/assets/index-C2cH1Gst.js +1 -0
- package/dist/webui/assets/index-Cc5bDmJr.js +1 -0
- package/dist/webui/assets/jobs-CxmNab9w.js +1 -0
- package/dist/webui/assets/library-vaj2W8sE.js +1 -0
- package/dist/webui/assets/loader-circle-M0gu1gZ-.js +1 -0
- package/dist/webui/assets/logs-Cu9RyKS0.js +1 -0
- package/dist/webui/assets/search-2R5sIdT8.js +1 -0
- package/dist/webui/assets/select-field-BCqNLDrJ.js +1 -0
- package/dist/webui/assets/select-zHgqMzLj.js +1 -0
- package/dist/webui/assets/settings-CMYjpTbZ.js +1 -0
- package/dist/webui/assets/submit-button-BtcnyggQ.js +1 -0
- package/dist/webui/assets/switch-G0W3uJVN.js +1 -0
- package/dist/webui/assets/switch-field-IBd9ORNq.js +1 -0
- package/dist/webui/assets/table-DvgJU7Gh.js +1 -0
- package/dist/webui/assets/test-tube-BIwmoM45.js +1 -0
- package/dist/webui/assets/text-field-DruSbGhy.js +1 -0
- package/dist/webui/assets/time-BSMZjmyW.js +1 -0
- package/dist/webui/assets/trackers-D-OpAe63.js +7 -0
- package/dist/webui/assets/use-form-validation-context-BkAfWAh0.js +1 -0
- package/dist/webui/assets/use-settings-form-submit-CDRh-E9U.js +2 -0
- package/dist/webui/assets/useQuery-A4Hv_4uX.js +1 -0
- package/dist/webui/index.html +13 -0
- package/node_modules/@cross-seed/shared/dist/configSchema.d.ts +261 -0
- package/node_modules/@cross-seed/shared/dist/configSchema.d.ts.map +1 -0
- package/node_modules/@cross-seed/shared/dist/configSchema.js +53 -0
- package/node_modules/@cross-seed/shared/dist/configSchema.js.map +1 -0
- package/node_modules/@cross-seed/shared/dist/constants.d.ts +122 -0
- package/node_modules/@cross-seed/shared/dist/constants.d.ts.map +1 -0
- package/node_modules/@cross-seed/shared/dist/constants.js +127 -0
- package/node_modules/@cross-seed/shared/dist/constants.js.map +1 -0
- package/node_modules/@cross-seed/shared/dist/tsconfig.tsbuildinfo +1 -0
- package/node_modules/@cross-seed/shared/dist/utils.d.ts +6 -0
- package/node_modules/@cross-seed/shared/dist/utils.d.ts.map +1 -0
- package/node_modules/@cross-seed/shared/dist/utils.js +9 -0
- package/node_modules/@cross-seed/shared/dist/utils.js.map +1 -0
- package/node_modules/@cross-seed/shared/package.json +22 -0
- package/package.json +35 -11
- package/dist/config.template.cjs +0 -353
- package/dist/config.template.cjs.map +0 -1
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
import { DecisionAnyMatch, InjectionResult } from "../constants.js";
|
|
2
|
+
import { Label } from "../logger.js";
|
|
3
|
+
import { Metafile } from "../parseTorrent.js";
|
|
4
|
+
import { Result } from "../Result.js";
|
|
5
|
+
import { Searchee, SearcheeWithInfoHash } from "../searchee.js";
|
|
6
|
+
import { ClientSearcheeResult, TorrentClient, TorrentMetadataInClient } from "./TorrentClient.js";
|
|
7
|
+
export default class Deluge implements TorrentClient {
|
|
8
|
+
readonly url: string;
|
|
9
|
+
readonly clientHost: string;
|
|
10
|
+
readonly clientPriority: number;
|
|
11
|
+
readonly clientType = Label.DELUGE;
|
|
12
|
+
readonly readonly: boolean;
|
|
13
|
+
readonly label: string;
|
|
14
|
+
private delugeCookie;
|
|
15
|
+
private delugeLabel;
|
|
16
|
+
private delugeLabelSuffix;
|
|
17
|
+
private isLabelEnabled;
|
|
18
|
+
private delugeRequestId;
|
|
19
|
+
constructor(url: string, clientHost: string, priority: number, readonly: boolean);
|
|
20
|
+
/**
|
|
21
|
+
* validates the login and host for deluge webui
|
|
22
|
+
*/
|
|
23
|
+
validateConfig(): Promise<void>;
|
|
24
|
+
/**
|
|
25
|
+
* connects and authenticates to the webui
|
|
26
|
+
*/
|
|
27
|
+
private authenticate;
|
|
28
|
+
/**
|
|
29
|
+
* ensures authentication and sends JSON-RPC calls to deluge
|
|
30
|
+
* @param method RPC method to send (usually prefaced with module name)
|
|
31
|
+
* @param params parameters for the method (usually in an array)
|
|
32
|
+
* @param retries specify a retry count (optional)
|
|
33
|
+
* @return a promised Result of the specified ResultType or an ErrorType
|
|
34
|
+
*/
|
|
35
|
+
private call;
|
|
36
|
+
/**
|
|
37
|
+
* parses the set-cookie header and updates stored value
|
|
38
|
+
* @param headers the headers from a request
|
|
39
|
+
*/
|
|
40
|
+
private handleResponseHeaders;
|
|
41
|
+
/**
|
|
42
|
+
* checks enabled plugins for "Label"
|
|
43
|
+
* @return boolean declaring whether the "Label" plugin is enabled
|
|
44
|
+
*/
|
|
45
|
+
private labelEnabled;
|
|
46
|
+
/**
|
|
47
|
+
* checks the status of an infohash in the client and resumes if/when criteria is met
|
|
48
|
+
* @param meta MetaFile containing torrent being resumed
|
|
49
|
+
* @param decision decision by which the newTorrent was matched
|
|
50
|
+
* @param options options object for extra flags
|
|
51
|
+
* @param options.checkOnce boolean to only check for resuming once
|
|
52
|
+
* @param options.meta metafile object containing the torrent data
|
|
53
|
+
*/
|
|
54
|
+
resumeInjection(meta: Metafile, decision: DecisionAnyMatch, options: {
|
|
55
|
+
checkOnce: boolean;
|
|
56
|
+
}): Promise<void>;
|
|
57
|
+
/**
|
|
58
|
+
* generates the label for injection based on searchee and torrentInfo
|
|
59
|
+
* @param searchee Searchee that contains the originating torrent
|
|
60
|
+
* @param torrentInfo TorrentInfo from the searchee
|
|
61
|
+
* @return string with the label for the newTorrent
|
|
62
|
+
*/
|
|
63
|
+
private calculateLabel;
|
|
64
|
+
/**
|
|
65
|
+
* if Label plugin is loaded, adds (if necessary)
|
|
66
|
+
* and sets the label based on torrent hash.
|
|
67
|
+
* @param newTorrent the searchee of the newTorrent
|
|
68
|
+
* @param label the destination label for the newTorrent/searchee
|
|
69
|
+
*/
|
|
70
|
+
private setLabel;
|
|
71
|
+
/**
|
|
72
|
+
* injects a torrent into deluge client
|
|
73
|
+
* @param newTorrent injected candidate torrent
|
|
74
|
+
* @param searchee originating torrent (searchee)
|
|
75
|
+
* @param decision decision by which the newTorrent was matched
|
|
76
|
+
* @param options.onlyCompleted boolean to only inject completed torrents
|
|
77
|
+
* @param options.destinationDir location of the linked files (optional)
|
|
78
|
+
* @return InjectionResult of the newTorrent's injection
|
|
79
|
+
*/
|
|
80
|
+
inject(newTorrent: Metafile, searchee: Searchee, decision: DecisionAnyMatch, options: {
|
|
81
|
+
onlyCompleted: boolean;
|
|
82
|
+
destinationDir?: string;
|
|
83
|
+
}): Promise<InjectionResult>;
|
|
84
|
+
recheckTorrent(infoHash: string): Promise<void>;
|
|
85
|
+
/**
|
|
86
|
+
* formats the json for rpc calls to inject
|
|
87
|
+
* @param filename filename for the injecting torrent file
|
|
88
|
+
* @param filedump string with encoded torrent file
|
|
89
|
+
* @param destinationDir path to the torrent data
|
|
90
|
+
* @param toRecheck boolean to recheck the torrent
|
|
91
|
+
*/
|
|
92
|
+
private formatData;
|
|
93
|
+
/**
|
|
94
|
+
* returns directory of an infohash in deluge as a string
|
|
95
|
+
* @param meta SearcheeWithInfoHash or Metafile for torrent to lookup in client
|
|
96
|
+
* @param options options object for extra flags
|
|
97
|
+
* @param options.onlyCompleted boolean to only return a completed torrent
|
|
98
|
+
* @return Result containing either a string with path or reason it was not provided
|
|
99
|
+
*/
|
|
100
|
+
getDownloadDir(meta: SearcheeWithInfoHash | Metafile, options: {
|
|
101
|
+
onlyCompleted: boolean;
|
|
102
|
+
}): Promise<Result<string, "NOT_FOUND" | "TORRENT_NOT_COMPLETE" | "UNKNOWN_ERROR">>;
|
|
103
|
+
/**
|
|
104
|
+
* returns map of hashes and download directories for all torrents
|
|
105
|
+
* @param options.metas array of SearcheeWithInfoHash or Metafile for torrents to lookup in client
|
|
106
|
+
* @param options.onlyCompleted boolean to only return completed torrents
|
|
107
|
+
* @return Promise of a Map with hashes and download directories
|
|
108
|
+
*/
|
|
109
|
+
getAllDownloadDirs(options: {
|
|
110
|
+
onlyCompleted: boolean;
|
|
111
|
+
}): Promise<Map<string, string>>;
|
|
112
|
+
/**
|
|
113
|
+
* checks if a torrent exists in deluge
|
|
114
|
+
* @param inputHash the infoHash of the torrent to check
|
|
115
|
+
* @return Result containing either a boolean or reason it was not provided
|
|
116
|
+
*/
|
|
117
|
+
isTorrentInClient(inputHash: string): Promise<Result<boolean, Error>>;
|
|
118
|
+
/**
|
|
119
|
+
* checks if a torrent is complete in deluge
|
|
120
|
+
* @param infoHash the infoHash of the torrent to check
|
|
121
|
+
* @return Result containing either a boolean or reason it was not provided
|
|
122
|
+
*/
|
|
123
|
+
isTorrentComplete(infoHash: string): Promise<Result<boolean, "NOT_FOUND">>;
|
|
124
|
+
/**
|
|
125
|
+
* checks if a torrent is checking in deluge
|
|
126
|
+
* @param infoHash the infoHash of the torrent to check
|
|
127
|
+
* @return Result containing either a boolean or reason it was not provided
|
|
128
|
+
*/
|
|
129
|
+
isTorrentChecking(infoHash: string): Promise<Result<boolean, "NOT_FOUND">>;
|
|
130
|
+
/**
|
|
131
|
+
* @return All torrents in the client
|
|
132
|
+
*/
|
|
133
|
+
getAllTorrents(): Promise<TorrentMetadataInClient[]>;
|
|
134
|
+
/**
|
|
135
|
+
* Get all searchees from the client and update the db
|
|
136
|
+
* @param options.newSearcheesOnly only return searchees that are not in the db
|
|
137
|
+
* @param options.refresh undefined uses the cache, [] refreshes all searchees, or a list of infoHashes to refresh
|
|
138
|
+
* @return an object containing all searchees and new searchees (refreshed searchees are considered new)
|
|
139
|
+
*/
|
|
140
|
+
getClientSearchees(options?: {
|
|
141
|
+
newSearcheesOnly?: boolean;
|
|
142
|
+
refresh?: string[];
|
|
143
|
+
}): Promise<ClientSearcheeResult>;
|
|
144
|
+
/**
|
|
145
|
+
* returns information needed to complete/validate injection
|
|
146
|
+
* @return Promise of TorrentInfo type
|
|
147
|
+
* @param infoHash infohash to query for in the client
|
|
148
|
+
* @param options options object for extra flags
|
|
149
|
+
* @param options.useVerbose use verbose instead of error logging
|
|
150
|
+
* @return Promise of TorrentInfo type
|
|
151
|
+
*/
|
|
152
|
+
private getTorrentInfo;
|
|
153
|
+
}
|
package/dist/clients/Deluge.js
CHANGED
|
@@ -224,7 +224,7 @@ export default class Deluge {
|
|
|
224
224
|
}
|
|
225
225
|
}
|
|
226
226
|
}
|
|
227
|
-
catch
|
|
227
|
+
catch {
|
|
228
228
|
sleepTime = resumeErrSleepTime; // Dropping connections or restart
|
|
229
229
|
continue;
|
|
230
230
|
}
|
|
@@ -258,7 +258,7 @@ export default class Deluge {
|
|
|
258
258
|
const shouldSuffixLabel = !ogLabel.endsWith(this.delugeLabelSuffix) && // no .cross-seed
|
|
259
259
|
ogLabel !== linkCategory; // not data
|
|
260
260
|
return !searchee.infoHash
|
|
261
|
-
? linkCategory ?? ""
|
|
261
|
+
? (linkCategory ?? "")
|
|
262
262
|
: shouldSuffixLabel
|
|
263
263
|
? `${ogLabel}${this.delugeLabelSuffix}`
|
|
264
264
|
: ogLabel;
|
|
@@ -422,7 +422,7 @@ export default class Deluge {
|
|
|
422
422
|
try {
|
|
423
423
|
response = await this.call("web.update_ui", params);
|
|
424
424
|
}
|
|
425
|
-
catch
|
|
425
|
+
catch {
|
|
426
426
|
return resultOfErr("UNKNOWN_ERROR");
|
|
427
427
|
}
|
|
428
428
|
if (!response.isOk()) {
|
|
@@ -454,7 +454,7 @@ export default class Deluge {
|
|
|
454
454
|
try {
|
|
455
455
|
response = await this.call("web.update_ui", params);
|
|
456
456
|
}
|
|
457
|
-
catch
|
|
457
|
+
catch {
|
|
458
458
|
return dirs;
|
|
459
459
|
}
|
|
460
460
|
if (!response.isOk()) {
|
|
@@ -509,7 +509,7 @@ export default class Deluge {
|
|
|
509
509
|
});
|
|
510
510
|
return torrentInfo.complete ? resultOf(true) : resultOf(false);
|
|
511
511
|
}
|
|
512
|
-
catch
|
|
512
|
+
catch {
|
|
513
513
|
return resultOfErr("NOT_FOUND");
|
|
514
514
|
}
|
|
515
515
|
}
|
|
@@ -525,7 +525,7 @@ export default class Deluge {
|
|
|
525
525
|
});
|
|
526
526
|
return resultOf(torrentInfo.state === "Checking");
|
|
527
527
|
}
|
|
528
|
-
catch
|
|
528
|
+
catch {
|
|
529
529
|
return resultOfErr("NOT_FOUND");
|
|
530
530
|
}
|
|
531
531
|
}
|
|
@@ -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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"}
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
import { DecisionAnyMatch, InjectionResult } from "../constants.js";
|
|
2
|
+
import { Label } from "../logger.js";
|
|
3
|
+
import { Metafile } from "../parseTorrent.js";
|
|
4
|
+
import { Result } from "../Result.js";
|
|
5
|
+
import { File, Searchee, SearcheeWithInfoHash } from "../searchee.js";
|
|
6
|
+
import { ClientSearcheeResult, TorrentClient, TorrentMetadataInClient } from "./TorrentClient.js";
|
|
7
|
+
interface Preferences {
|
|
8
|
+
resume_data_storage_type?: "Legacy" | "SQLite";
|
|
9
|
+
}
|
|
10
|
+
interface TorrentInfo {
|
|
11
|
+
added_on: number;
|
|
12
|
+
amount_left: number;
|
|
13
|
+
auto_tmm: boolean;
|
|
14
|
+
availability: number;
|
|
15
|
+
category: string;
|
|
16
|
+
comment?: string;
|
|
17
|
+
completed: number;
|
|
18
|
+
completion_on: number;
|
|
19
|
+
connections_count?: number;
|
|
20
|
+
connections_limit?: number;
|
|
21
|
+
content_path: string;
|
|
22
|
+
created_by?: string;
|
|
23
|
+
creation_date?: number;
|
|
24
|
+
dl_limit: number;
|
|
25
|
+
dlspeed: number;
|
|
26
|
+
download_path?: string;
|
|
27
|
+
downloaded: number;
|
|
28
|
+
downloaded_session: number;
|
|
29
|
+
eta: number;
|
|
30
|
+
f_l_piece_prio: boolean;
|
|
31
|
+
files?: TorrentFile[];
|
|
32
|
+
force_start: boolean;
|
|
33
|
+
has_metadata?: boolean;
|
|
34
|
+
hash: string;
|
|
35
|
+
inactive_seeding_time_limit?: number;
|
|
36
|
+
infohash_v1?: string;
|
|
37
|
+
infohash_v2?: string;
|
|
38
|
+
last_activity: number;
|
|
39
|
+
magnet_uri: string;
|
|
40
|
+
max_inactive_seeding_time?: number;
|
|
41
|
+
max_ratio: number;
|
|
42
|
+
max_seeding_time: number;
|
|
43
|
+
name: string;
|
|
44
|
+
num_complete: number;
|
|
45
|
+
num_incomplete: number;
|
|
46
|
+
num_leechs: number;
|
|
47
|
+
num_seeds: number;
|
|
48
|
+
piece_size?: number;
|
|
49
|
+
pieces_have?: number;
|
|
50
|
+
pieces_num?: number;
|
|
51
|
+
popularity?: number;
|
|
52
|
+
priority: number;
|
|
53
|
+
private?: boolean;
|
|
54
|
+
progress: number;
|
|
55
|
+
ratio: number;
|
|
56
|
+
ratio_limit: number;
|
|
57
|
+
reannounce?: number;
|
|
58
|
+
root_path?: string;
|
|
59
|
+
save_path: string;
|
|
60
|
+
seeding_time: number;
|
|
61
|
+
seeding_time_limit: number;
|
|
62
|
+
seen_complete: number;
|
|
63
|
+
seq_dl: boolean;
|
|
64
|
+
size: number;
|
|
65
|
+
state: "error" | "missingFiles" | "uploading" | "pausedUP" | "stoppedUP" | "queuedUP" | "stalledUP" | "checkingUP" | "forcedUP" | "allocating" | "downloading" | "metaDL" | "pausedDL" | "stoppedDL" | "queuedDL" | "stalledDL" | "checkingDL" | "forcedDL" | "checkingResumeData" | "moving" | "unknown";
|
|
66
|
+
super_seeding: boolean;
|
|
67
|
+
tags: string;
|
|
68
|
+
time_active: number;
|
|
69
|
+
total_size: number;
|
|
70
|
+
total_wasted?: number;
|
|
71
|
+
tracker: string;
|
|
72
|
+
trackers?: TorrentTracker[];
|
|
73
|
+
trackers_count?: number;
|
|
74
|
+
up_limit: number;
|
|
75
|
+
uploaded: number;
|
|
76
|
+
uploaded_session: number;
|
|
77
|
+
upspeed: number;
|
|
78
|
+
}
|
|
79
|
+
interface TorrentTracker {
|
|
80
|
+
msg: string;
|
|
81
|
+
num_downloaded: number;
|
|
82
|
+
num_leeches: number;
|
|
83
|
+
num_peers: number;
|
|
84
|
+
num_seeds: number;
|
|
85
|
+
status: 0 | 1 | 2 | 3 | 4;
|
|
86
|
+
tier: number;
|
|
87
|
+
url: string;
|
|
88
|
+
}
|
|
89
|
+
interface TorrentFile {
|
|
90
|
+
availability: number;
|
|
91
|
+
index?: number;
|
|
92
|
+
is_seed: boolean;
|
|
93
|
+
name: string;
|
|
94
|
+
piece_range: [number, number];
|
|
95
|
+
priority: 0 | 1 | 6 | 7;
|
|
96
|
+
progress: number;
|
|
97
|
+
size: number;
|
|
98
|
+
}
|
|
99
|
+
interface CategoryInfo {
|
|
100
|
+
name: string;
|
|
101
|
+
savePath: string;
|
|
102
|
+
}
|
|
103
|
+
export default class QBittorrent implements TorrentClient {
|
|
104
|
+
cookie: string;
|
|
105
|
+
url: {
|
|
106
|
+
username: string;
|
|
107
|
+
password: string;
|
|
108
|
+
href: string;
|
|
109
|
+
};
|
|
110
|
+
version: string;
|
|
111
|
+
versionMajor: number;
|
|
112
|
+
versionMinor: number;
|
|
113
|
+
versionPatch: number;
|
|
114
|
+
readonly clientHost: string;
|
|
115
|
+
readonly clientPriority: number;
|
|
116
|
+
readonly clientType = Label.QBITTORRENT;
|
|
117
|
+
readonly readonly: boolean;
|
|
118
|
+
readonly label: string;
|
|
119
|
+
constructor(url: string, clientHost: string, priority: number, readonly: boolean);
|
|
120
|
+
login(): Promise<void>;
|
|
121
|
+
validateConfig(): Promise<void>;
|
|
122
|
+
private request;
|
|
123
|
+
getPreferences(): Promise<Preferences>;
|
|
124
|
+
/**
|
|
125
|
+
* Always returns "Original" for API searchees due to isSubfolderContentLayout.
|
|
126
|
+
* This is not an issue since it's either a MATCH or we are linking.
|
|
127
|
+
* @param searchee the Searchee the match was sourced from
|
|
128
|
+
* @param searcheeInfo the torrent info from the searchee
|
|
129
|
+
* @param destinationDir the destinationDir for the new torrent
|
|
130
|
+
* @returns the layout to use for the new torrent
|
|
131
|
+
*/
|
|
132
|
+
private getLayoutForNewTorrent;
|
|
133
|
+
private getCategoryForNewTorrent;
|
|
134
|
+
private getTagsForNewTorrent;
|
|
135
|
+
createTag(): Promise<void>;
|
|
136
|
+
createCategory(category: string, savePath: string): Promise<void>;
|
|
137
|
+
editCategory(category: string, savePath: string): Promise<void>;
|
|
138
|
+
getAllCategories(): Promise<CategoryInfo[]>;
|
|
139
|
+
torrentFileToFile(torrentFile: TorrentFile): File;
|
|
140
|
+
getFiles(infoHash: string): Promise<File[] | null>;
|
|
141
|
+
getTrackers(infoHash: string): Promise<string[] | null>;
|
|
142
|
+
addTorrent(formData: FormData): Promise<void>;
|
|
143
|
+
recheckTorrent(infoHash: string): Promise<void>;
|
|
144
|
+
getDownloadDir(meta: SearcheeWithInfoHash | Metafile, options: {
|
|
145
|
+
onlyCompleted: boolean;
|
|
146
|
+
}): Promise<Result<string, "NOT_FOUND" | "TORRENT_NOT_COMPLETE" | "INVALID_DATA" | "UNKNOWN_ERROR">>;
|
|
147
|
+
getAllDownloadDirs(options: {
|
|
148
|
+
metas: SearcheeWithInfoHash[] | Metafile[];
|
|
149
|
+
onlyCompleted: boolean;
|
|
150
|
+
v1HashOnly?: boolean;
|
|
151
|
+
}): Promise<Map<string, string>>;
|
|
152
|
+
getCorrectSavePath(data: Searchee | Metafile, torrentInfo: TorrentInfo): string;
|
|
153
|
+
getAllTorrentInfo(options?: {
|
|
154
|
+
includeFiles?: boolean;
|
|
155
|
+
includeTrackers?: boolean;
|
|
156
|
+
}): Promise<TorrentInfo[]>;
|
|
157
|
+
getTorrentInfo(hash: string | undefined, numRetries?: number): Promise<TorrentInfo | undefined>;
|
|
158
|
+
/**
|
|
159
|
+
* @return array of all torrents in the client
|
|
160
|
+
*/
|
|
161
|
+
getAllTorrents(): Promise<TorrentMetadataInClient[]>;
|
|
162
|
+
/**
|
|
163
|
+
* Get all searchees from the client and update the db
|
|
164
|
+
* @param options.newSearcheesOnly only return searchees that are not in the db
|
|
165
|
+
* @param options.refresh undefined uses the cache, [] refreshes all searchees, or a list of infoHashes to refresh
|
|
166
|
+
* @param options.includeFiles include files in the torrents info request
|
|
167
|
+
* @param options.includeTrackers include trackers in the torrents info request
|
|
168
|
+
* @return an object containing all searchees and new searchees (refreshed searchees are considered new)
|
|
169
|
+
*/
|
|
170
|
+
getClientSearchees(options?: {
|
|
171
|
+
newSearcheesOnly?: boolean;
|
|
172
|
+
refresh?: string[];
|
|
173
|
+
includeFiles?: boolean;
|
|
174
|
+
includeTrackers?: boolean;
|
|
175
|
+
}): Promise<ClientSearcheeResult>;
|
|
176
|
+
/**
|
|
177
|
+
* @param inputHash the infohash of the torrent
|
|
178
|
+
* @returns whether the torrent is in client
|
|
179
|
+
*/
|
|
180
|
+
isTorrentInClient(inputHash: string): Promise<Result<boolean, Error>>;
|
|
181
|
+
/**
|
|
182
|
+
* @param infoHash the infohash of the torrent
|
|
183
|
+
* @returns whether the torrent is complete
|
|
184
|
+
*/
|
|
185
|
+
isTorrentComplete(infoHash: string): Promise<Result<boolean, "NOT_FOUND">>;
|
|
186
|
+
/**
|
|
187
|
+
* @param infoHash the infohash of the torrent
|
|
188
|
+
* @returns whether the torrent is checking
|
|
189
|
+
*/
|
|
190
|
+
isTorrentChecking(infoHash: string): Promise<Result<boolean, "NOT_FOUND">>;
|
|
191
|
+
isTorrentInfoComplete(torrentInfo: TorrentInfo): boolean;
|
|
192
|
+
/**
|
|
193
|
+
* This can only return true if the searchee is from a torrent file, not API.
|
|
194
|
+
* Since we get the file structure from the API, it's already accounted for.
|
|
195
|
+
* This does NOT check if the torrent was added with "Don't Create Subfolder".
|
|
196
|
+
* @param data the Searchee or Metafile
|
|
197
|
+
* @param dataInfo the TorrentInfo
|
|
198
|
+
* @returns whether the torrent was added with "Create Subfolder"
|
|
199
|
+
*/
|
|
200
|
+
isSubfolderContentLayout(data: Searchee | Metafile, dataInfo: TorrentInfo): boolean;
|
|
201
|
+
/**
|
|
202
|
+
* This can only return true if the searchee is from a torrent file, not API.
|
|
203
|
+
* Since we get the file structure from the API, it's already accounted for.
|
|
204
|
+
* This does NOT check if the torrent was added with "Create Subfolder".
|
|
205
|
+
* @param data the Searchee or Metafile
|
|
206
|
+
* @param dataInfo the TorrentInfo
|
|
207
|
+
* @returns whether the torrent was added with "Don't Create Subfolder"
|
|
208
|
+
*/
|
|
209
|
+
isNoSubfolderContentLayout(data: Searchee | Metafile, dataInfo: TorrentInfo): boolean;
|
|
210
|
+
resumeInjection(meta: Metafile, decision: DecisionAnyMatch, options: {
|
|
211
|
+
checkOnce: boolean;
|
|
212
|
+
}): Promise<void>;
|
|
213
|
+
inject(newTorrent: Metafile, searchee: Searchee, decision: DecisionAnyMatch, options: {
|
|
214
|
+
onlyCompleted: boolean;
|
|
215
|
+
destinationDir?: string;
|
|
216
|
+
}): Promise<InjectionResult>;
|
|
217
|
+
}
|
|
218
|
+
export {};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Client } from "xmlrpc";
|
|
2
|
+
import { DecisionAnyMatch, InjectionResult } from "../constants.js";
|
|
3
|
+
import { Label } from "../logger.js";
|
|
4
|
+
import { Metafile } from "../parseTorrent.js";
|
|
5
|
+
import { Result } from "../Result.js";
|
|
6
|
+
import { Searchee, SearcheeWithInfoHash } from "../searchee.js";
|
|
7
|
+
import { ClientSearcheeResult, TorrentClient, TorrentMetadataInClient } from "./TorrentClient.js";
|
|
8
|
+
export default class RTorrent implements TorrentClient {
|
|
9
|
+
client: Client;
|
|
10
|
+
readonly clientHost: string;
|
|
11
|
+
readonly clientPriority: number;
|
|
12
|
+
readonly clientType = Label.RTORRENT;
|
|
13
|
+
readonly readonly: boolean;
|
|
14
|
+
readonly label: string;
|
|
15
|
+
readonly batchSize = 500;
|
|
16
|
+
constructor(url: string, clientHost: string, priority: number, readonly: boolean);
|
|
17
|
+
private methodCallP;
|
|
18
|
+
isTorrentInClient(inputHash: string): Promise<Result<boolean, Error>>;
|
|
19
|
+
private checkOriginalTorrent;
|
|
20
|
+
private getDownloadLocation;
|
|
21
|
+
validateConfig(): Promise<void>;
|
|
22
|
+
getDownloadDir(meta: SearcheeWithInfoHash | Metafile, options: {
|
|
23
|
+
onlyCompleted: boolean;
|
|
24
|
+
}): Promise<Result<string, "NOT_FOUND" | "TORRENT_NOT_COMPLETE" | "UNKNOWN_ERROR">>;
|
|
25
|
+
getAllDownloadDirs(options: {
|
|
26
|
+
onlyCompleted: boolean;
|
|
27
|
+
}): Promise<Map<string, string>>;
|
|
28
|
+
isTorrentComplete(infoHash: string): Promise<Result<boolean, "NOT_FOUND">>;
|
|
29
|
+
isTorrentChecking(infoHash: string): Promise<Result<boolean, "NOT_FOUND">>;
|
|
30
|
+
getAllTorrents(): Promise<TorrentMetadataInClient[]>;
|
|
31
|
+
getClientSearchees(options?: {
|
|
32
|
+
newSearcheesOnly?: boolean;
|
|
33
|
+
refresh?: string[];
|
|
34
|
+
}): Promise<ClientSearcheeResult>;
|
|
35
|
+
recheckTorrent(infoHash: string): Promise<void>;
|
|
36
|
+
resumeInjection(meta: Metafile, decision: DecisionAnyMatch, options: {
|
|
37
|
+
checkOnce: boolean;
|
|
38
|
+
}): Promise<void>;
|
|
39
|
+
inject(meta: Metafile, searchee: Searchee, decision: DecisionAnyMatch, options: {
|
|
40
|
+
onlyCompleted: boolean;
|
|
41
|
+
destinationDir?: string;
|
|
42
|
+
}): Promise<InjectionResult>;
|
|
43
|
+
}
|
package/dist/clients/RTorrent.js
CHANGED
|
@@ -2,7 +2,7 @@ import { readdir, stat } from "fs/promises";
|
|
|
2
2
|
import { basename, dirname, join, resolve, sep } from "path";
|
|
3
3
|
import { inspect } from "util";
|
|
4
4
|
import xmlrpc from "xmlrpc";
|
|
5
|
-
import { InjectionResult, TORRENT_TAG, } from "../constants.js";
|
|
5
|
+
import { InjectionResult, TORRENT_TAG, USER_AGENT, } from "../constants.js";
|
|
6
6
|
import { db } from "../db.js";
|
|
7
7
|
import { CrossSeedError } from "../errors.js";
|
|
8
8
|
import { Label, logger } from "../logger.js";
|
|
@@ -59,6 +59,9 @@ export default class RTorrent {
|
|
|
59
59
|
basic_auth: shouldUseAuth
|
|
60
60
|
? { user: username, pass: password }
|
|
61
61
|
: undefined,
|
|
62
|
+
headers: {
|
|
63
|
+
"User-Agent": USER_AGENT,
|
|
64
|
+
},
|
|
62
65
|
});
|
|
63
66
|
}
|
|
64
67
|
async methodCallP(method, args) {
|
|
@@ -307,7 +310,7 @@ export default class RTorrent {
|
|
|
307
310
|
}
|
|
308
311
|
return resultOf(Boolean(Number(response[0])));
|
|
309
312
|
}
|
|
310
|
-
catch
|
|
313
|
+
catch {
|
|
311
314
|
return resultOfErr("NOT_FOUND");
|
|
312
315
|
}
|
|
313
316
|
}
|
|
@@ -321,7 +324,7 @@ export default class RTorrent {
|
|
|
321
324
|
}
|
|
322
325
|
return resultOf(Boolean(Number(response[0])));
|
|
323
326
|
}
|
|
324
|
-
catch
|
|
327
|
+
catch {
|
|
325
328
|
return resultOfErr("NOT_FOUND");
|
|
326
329
|
}
|
|
327
330
|
}
|