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.
Files changed (247) hide show
  1. package/README.md +12 -13
  2. package/dist/Result.d.ts +27 -0
  3. package/dist/action.d.ts +34 -0
  4. package/dist/action.js +2 -1
  5. package/dist/action.js.map +1 -1
  6. package/dist/arr.d.ts +31 -0
  7. package/dist/arr.js +107 -39
  8. package/dist/arr.js.map +1 -1
  9. package/dist/auth.d.ts +3 -0
  10. package/dist/auth.js +9 -6
  11. package/dist/auth.js.map +1 -1
  12. package/dist/clients/Deluge.d.ts +153 -0
  13. package/dist/clients/Deluge.js +6 -6
  14. package/dist/clients/Deluge.js.map +1 -1
  15. package/dist/clients/QBittorrent.d.ts +218 -0
  16. package/dist/clients/RTorrent.d.ts +43 -0
  17. package/dist/clients/RTorrent.js +6 -3
  18. package/dist/clients/RTorrent.js.map +1 -1
  19. package/dist/clients/TorrentClient.d.ts +108 -0
  20. package/dist/clients/TorrentClient.js +136 -67
  21. package/dist/clients/TorrentClient.js.map +1 -1
  22. package/dist/clients/Transmission.d.ts +43 -0
  23. package/dist/clients/Transmission.js +2 -2
  24. package/dist/clients/Transmission.js.map +1 -1
  25. package/dist/cmd.d.ts +2 -0
  26. package/dist/cmd.js +42 -110
  27. package/dist/cmd.js.map +1 -1
  28. package/dist/configSchema.d.ts +1 -0
  29. package/dist/configSchema.js +1 -666
  30. package/dist/configSchema.js.map +1 -1
  31. package/dist/configuration.d.ts +63 -0
  32. package/dist/configuration.js +263 -24
  33. package/dist/configuration.js.map +1 -1
  34. package/dist/constants.d.ts +108 -0
  35. package/dist/constants.js +2 -32
  36. package/dist/constants.js.map +1 -1
  37. package/dist/dataFiles.d.ts +8 -0
  38. package/dist/dataFiles.js +21 -6
  39. package/dist/dataFiles.js.map +1 -1
  40. package/dist/db.d.ts +3 -0
  41. package/dist/dbConfig.d.ts +4 -0
  42. package/dist/dbConfig.js +67 -0
  43. package/dist/dbConfig.js.map +1 -0
  44. package/dist/decide.d.ts +25 -0
  45. package/dist/decide.js +4 -4
  46. package/dist/decide.js.map +1 -1
  47. package/dist/diff.d.ts +1 -0
  48. package/dist/errors.d.ts +3 -0
  49. package/dist/errors.js +0 -9
  50. package/dist/errors.js.map +1 -1
  51. package/dist/indexers.d.ts +105 -0
  52. package/dist/indexers.js +82 -14
  53. package/dist/indexers.js.map +1 -1
  54. package/dist/inject.d.ts +2 -0
  55. package/dist/jobs.d.ts +29 -0
  56. package/dist/jobs.js +14 -9
  57. package/dist/jobs.js.map +1 -1
  58. package/dist/logger.d.ts +29 -0
  59. package/dist/logger.js +18 -4
  60. package/dist/logger.js.map +1 -1
  61. package/dist/migrations/00-initialSchema.d.ts +9 -0
  62. package/dist/migrations/01-jobs.d.ts +9 -0
  63. package/dist/migrations/02-timestamps.d.ts +9 -0
  64. package/dist/migrations/03-rateLimits.d.ts +9 -0
  65. package/dist/migrations/04-auth.d.ts +9 -0
  66. package/dist/migrations/04-auth.js +1 -1
  67. package/dist/migrations/04-auth.js.map +1 -1
  68. package/dist/migrations/05-caps.d.ts +9 -0
  69. package/dist/migrations/06-uniqueDecisions.d.ts +9 -0
  70. package/dist/migrations/07-limits.d.ts +9 -0
  71. package/dist/migrations/08-rss.d.ts +9 -0
  72. package/dist/migrations/09-clientAndDataSearchees.d.ts +9 -0
  73. package/dist/migrations/10-indexerNameAudioBookCaps.d.ts +9 -0
  74. package/dist/migrations/11-trackers.d.ts +9 -0
  75. package/dist/migrations/12-user-auth.d.ts +9 -0
  76. package/dist/migrations/12-user-auth.js +22 -0
  77. package/dist/migrations/12-user-auth.js.map +1 -0
  78. package/dist/migrations/13-settings.d.ts +9 -0
  79. package/dist/migrations/13-settings.js +23 -0
  80. package/dist/migrations/13-settings.js.map +1 -0
  81. package/dist/migrations/14-indexer-enabled-flag.d.ts +9 -0
  82. package/dist/migrations/14-indexer-enabled-flag.js +12 -0
  83. package/dist/migrations/14-indexer-enabled-flag.js.map +1 -0
  84. package/dist/migrations/15-remove-url-unique-constraint.d.ts +9 -0
  85. package/dist/migrations/15-remove-url-unique-constraint.js +14 -0
  86. package/dist/migrations/15-remove-url-unique-constraint.js.map +1 -0
  87. package/dist/migrations/16-prune-inactive-indexers.d.ts +9 -0
  88. package/dist/migrations/16-prune-inactive-indexers.js +17 -0
  89. package/dist/migrations/16-prune-inactive-indexers.js.map +1 -0
  90. package/dist/migrations/migrations.d.ts +13 -0
  91. package/dist/migrations/migrations.js +10 -0
  92. package/dist/migrations/migrations.js.map +1 -1
  93. package/dist/parseTorrent.d.ts +53 -0
  94. package/dist/pipeline.d.ts +41 -0
  95. package/dist/pipeline.js +57 -10
  96. package/dist/pipeline.js.map +1 -1
  97. package/dist/preFilter.d.ts +25 -0
  98. package/dist/preFilter.js +15 -15
  99. package/dist/preFilter.js.map +1 -1
  100. package/dist/problems/linking.d.ts +2 -0
  101. package/dist/problems/linking.js +80 -0
  102. package/dist/problems/linking.js.map +1 -0
  103. package/dist/problems/path.d.ts +22 -0
  104. package/dist/problems/path.js +96 -0
  105. package/dist/problems/path.js.map +1 -0
  106. package/dist/problems.d.ts +13 -0
  107. package/dist/problems.js +48 -0
  108. package/dist/problems.js.map +1 -0
  109. package/dist/pushNotifier.d.ts +19 -0
  110. package/dist/routes/baseApi.d.ts +2 -0
  111. package/dist/routes/baseApi.js +354 -0
  112. package/dist/routes/baseApi.js.map +1 -0
  113. package/dist/routes/indexerApi.d.ts +6 -0
  114. package/dist/routes/indexerApi.js +165 -0
  115. package/dist/routes/indexerApi.js.map +1 -0
  116. package/dist/routes/staticFrontendPlugin.d.ts +4 -0
  117. package/dist/routes/staticFrontendPlugin.js +61 -0
  118. package/dist/routes/staticFrontendPlugin.js.map +1 -0
  119. package/dist/runtimeConfig.d.ts +6 -0
  120. package/dist/runtimeConfig.js +17 -1
  121. package/dist/runtimeConfig.js.map +1 -1
  122. package/dist/searchee.d.ts +108 -0
  123. package/dist/searchee.js +36 -5
  124. package/dist/searchee.js.map +1 -1
  125. package/dist/server.d.ts +4 -0
  126. package/dist/server.js +38 -429
  127. package/dist/server.js.map +1 -1
  128. package/dist/services/indexerService.d.ts +96 -0
  129. package/dist/services/indexerService.js +287 -0
  130. package/dist/services/indexerService.js.map +1 -0
  131. package/dist/sessionCookies.d.ts +5 -0
  132. package/dist/sessionCookies.js +27 -0
  133. package/dist/sessionCookies.js.map +1 -0
  134. package/dist/startup.d.ts +25 -0
  135. package/dist/startup.js +105 -151
  136. package/dist/startup.js.map +1 -1
  137. package/dist/torrent.d.ts +69 -0
  138. package/dist/torrent.js +17 -13
  139. package/dist/torrent.js.map +1 -1
  140. package/dist/torznab.d.ts +60 -0
  141. package/dist/torznab.js +14 -89
  142. package/dist/torznab.js.map +1 -1
  143. package/dist/trpc/fastifyAdapter.d.ts +2 -0
  144. package/dist/trpc/fastifyAdapter.js +9 -0
  145. package/dist/trpc/fastifyAdapter.js.map +1 -0
  146. package/dist/trpc/index.d.ts +49 -0
  147. package/dist/trpc/index.js +53 -0
  148. package/dist/trpc/index.js.map +1 -0
  149. package/dist/trpc/routers/auth.d.ts +43 -0
  150. package/dist/trpc/routers/auth.js +116 -0
  151. package/dist/trpc/routers/auth.js.map +1 -0
  152. package/dist/trpc/routers/clients.d.ts +21 -0
  153. package/dist/trpc/routers/clients.js +65 -0
  154. package/dist/trpc/routers/clients.js.map +1 -0
  155. package/dist/trpc/routers/health.d.ts +14 -0
  156. package/dist/trpc/routers/health.js +20 -0
  157. package/dist/trpc/routers/health.js.map +1 -0
  158. package/dist/trpc/routers/index.d.ts +391 -0
  159. package/dist/trpc/routers/index.js +23 -0
  160. package/dist/trpc/routers/index.js.map +1 -0
  161. package/dist/trpc/routers/indexers.d.ts +75 -0
  162. package/dist/trpc/routers/indexers.js +79 -0
  163. package/dist/trpc/routers/indexers.js.map +1 -0
  164. package/dist/trpc/routers/jobs.d.ts +33 -0
  165. package/dist/trpc/routers/jobs.js +84 -0
  166. package/dist/trpc/routers/jobs.js.map +1 -0
  167. package/dist/trpc/routers/logs.d.ts +27 -0
  168. package/dist/trpc/routers/logs.js +91 -0
  169. package/dist/trpc/routers/logs.js.map +1 -0
  170. package/dist/trpc/routers/searchees.d.ts +51 -0
  171. package/dist/trpc/routers/searchees.js +156 -0
  172. package/dist/trpc/routers/searchees.js.map +1 -0
  173. package/dist/trpc/routers/settings.d.ts +83 -0
  174. package/dist/trpc/routers/settings.js +92 -0
  175. package/dist/trpc/routers/settings.js.map +1 -0
  176. package/dist/trpc/routers/stats.d.ts +42 -0
  177. package/dist/trpc/routers/stats.js +102 -0
  178. package/dist/trpc/routers/stats.js.map +1 -0
  179. package/dist/userAuth.d.ts +21 -0
  180. package/dist/userAuth.js +86 -0
  181. package/dist/userAuth.js.map +1 -0
  182. package/dist/utils/authUtils.d.ts +10 -0
  183. package/dist/utils/authUtils.js +24 -0
  184. package/dist/utils/authUtils.js.map +1 -0
  185. package/dist/utils/logWatcher.d.ts +28 -0
  186. package/dist/utils/logWatcher.js +218 -0
  187. package/dist/utils/logWatcher.js.map +1 -0
  188. package/dist/utils/object.d.ts +1 -0
  189. package/dist/utils/object.js +4 -0
  190. package/dist/utils/object.js.map +1 -0
  191. package/dist/utils.d.ts +175 -0
  192. package/dist/utils.js +61 -38
  193. package/dist/utils.js.map +1 -1
  194. package/dist/webui/assets/FieldInfo-Bxj_j8SJ.js +1 -0
  195. package/dist/webui/assets/Page-C3rteCZt.js +1 -0
  196. package/dist/webui/assets/array-field-DVSC6nHP.js +1 -0
  197. package/dist/webui/assets/badge-DTZMtS0e.js +1 -0
  198. package/dist/webui/assets/check-Bu3ldi63.js +1 -0
  199. package/dist/webui/assets/chevron-down-CRy8M0kJ.js +1 -0
  200. package/dist/webui/assets/clients-CW8oEZoQ.js +1 -0
  201. package/dist/webui/assets/connect-YBNsnjWT.js +1 -0
  202. package/dist/webui/assets/debug-mz8-WYZj.js +1 -0
  203. package/dist/webui/assets/directories-BSK28RgR.js +1 -0
  204. package/dist/webui/assets/duration-field-C6xoSlJg.js +1 -0
  205. package/dist/webui/assets/general-lJJxZhH7.js +1 -0
  206. package/dist/webui/assets/health-CXbsVrie.js +1 -0
  207. package/dist/webui/assets/index-Bi48hI2z.js +54 -0
  208. package/dist/webui/assets/index-C-Ul7GNg.css +1 -0
  209. package/dist/webui/assets/index-C2cH1Gst.js +1 -0
  210. package/dist/webui/assets/index-Cc5bDmJr.js +1 -0
  211. package/dist/webui/assets/jobs-CxmNab9w.js +1 -0
  212. package/dist/webui/assets/library-vaj2W8sE.js +1 -0
  213. package/dist/webui/assets/loader-circle-M0gu1gZ-.js +1 -0
  214. package/dist/webui/assets/logs-Cu9RyKS0.js +1 -0
  215. package/dist/webui/assets/search-2R5sIdT8.js +1 -0
  216. package/dist/webui/assets/select-field-BCqNLDrJ.js +1 -0
  217. package/dist/webui/assets/select-zHgqMzLj.js +1 -0
  218. package/dist/webui/assets/settings-CMYjpTbZ.js +1 -0
  219. package/dist/webui/assets/submit-button-BtcnyggQ.js +1 -0
  220. package/dist/webui/assets/switch-G0W3uJVN.js +1 -0
  221. package/dist/webui/assets/switch-field-IBd9ORNq.js +1 -0
  222. package/dist/webui/assets/table-DvgJU7Gh.js +1 -0
  223. package/dist/webui/assets/test-tube-BIwmoM45.js +1 -0
  224. package/dist/webui/assets/text-field-DruSbGhy.js +1 -0
  225. package/dist/webui/assets/time-BSMZjmyW.js +1 -0
  226. package/dist/webui/assets/trackers-D-OpAe63.js +7 -0
  227. package/dist/webui/assets/use-form-validation-context-BkAfWAh0.js +1 -0
  228. package/dist/webui/assets/use-settings-form-submit-CDRh-E9U.js +2 -0
  229. package/dist/webui/assets/useQuery-A4Hv_4uX.js +1 -0
  230. package/dist/webui/index.html +13 -0
  231. package/node_modules/@cross-seed/shared/dist/configSchema.d.ts +261 -0
  232. package/node_modules/@cross-seed/shared/dist/configSchema.d.ts.map +1 -0
  233. package/node_modules/@cross-seed/shared/dist/configSchema.js +53 -0
  234. package/node_modules/@cross-seed/shared/dist/configSchema.js.map +1 -0
  235. package/node_modules/@cross-seed/shared/dist/constants.d.ts +122 -0
  236. package/node_modules/@cross-seed/shared/dist/constants.d.ts.map +1 -0
  237. package/node_modules/@cross-seed/shared/dist/constants.js +127 -0
  238. package/node_modules/@cross-seed/shared/dist/constants.js.map +1 -0
  239. package/node_modules/@cross-seed/shared/dist/tsconfig.tsbuildinfo +1 -0
  240. package/node_modules/@cross-seed/shared/dist/utils.d.ts +6 -0
  241. package/node_modules/@cross-seed/shared/dist/utils.d.ts.map +1 -0
  242. package/node_modules/@cross-seed/shared/dist/utils.js +9 -0
  243. package/node_modules/@cross-seed/shared/dist/utils.js.map +1 -0
  244. package/node_modules/@cross-seed/shared/package.json +22 -0
  245. package/package.json +35 -11
  246. package/dist/config.template.cjs +0 -353
  247. 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
+ }
@@ -224,7 +224,7 @@ export default class Deluge {
224
224
  }
225
225
  }
226
226
  }
227
- catch (e) {
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 (e) {
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 (e) {
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 (e) {
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 (e) {
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
+ }
@@ -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 (e) {
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 (e) {
327
+ catch {
325
328
  return resultOfErr("NOT_FOUND");
326
329
  }
327
330
  }