cross-seed 6.8.9 → 6.9.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.
Files changed (52) hide show
  1. package/dist/action.js +65 -38
  2. package/dist/action.js.map +1 -1
  3. package/dist/clients/Deluge.js +87 -7
  4. package/dist/clients/Deluge.js.map +1 -1
  5. package/dist/clients/QBittorrent.js +124 -10
  6. package/dist/clients/QBittorrent.js.map +1 -1
  7. package/dist/clients/RTorrent.js +200 -74
  8. package/dist/clients/RTorrent.js.map +1 -1
  9. package/dist/clients/TorrentClient.js +6 -2
  10. package/dist/clients/TorrentClient.js.map +1 -1
  11. package/dist/clients/Transmission.js +93 -7
  12. package/dist/clients/Transmission.js.map +1 -1
  13. package/dist/cmd.js +24 -19
  14. package/dist/cmd.js.map +1 -1
  15. package/dist/config.template.cjs +14 -8
  16. package/dist/config.template.cjs.map +1 -1
  17. package/dist/configSchema.js +50 -31
  18. package/dist/configSchema.js.map +1 -1
  19. package/dist/configuration.js.map +1 -1
  20. package/dist/constants.js +1 -0
  21. package/dist/constants.js.map +1 -1
  22. package/dist/dataFiles.js +50 -48
  23. package/dist/dataFiles.js.map +1 -1
  24. package/dist/db.js +12 -0
  25. package/dist/db.js.map +1 -1
  26. package/dist/decide.js +9 -9
  27. package/dist/decide.js.map +1 -1
  28. package/dist/inject.js +8 -5
  29. package/dist/inject.js.map +1 -1
  30. package/dist/parseTorrent.js +18 -16
  31. package/dist/parseTorrent.js.map +1 -1
  32. package/dist/pipeline.js +45 -41
  33. package/dist/pipeline.js.map +1 -1
  34. package/dist/preFilter.js +37 -9
  35. package/dist/preFilter.js.map +1 -1
  36. package/dist/pushNotifier.js +15 -21
  37. package/dist/pushNotifier.js.map +1 -1
  38. package/dist/runtimeConfig.js +5 -2
  39. package/dist/runtimeConfig.js.map +1 -1
  40. package/dist/searchee.js +54 -9
  41. package/dist/searchee.js.map +1 -1
  42. package/dist/server.js +67 -47
  43. package/dist/server.js.map +1 -1
  44. package/dist/startup.js +34 -13
  45. package/dist/startup.js.map +1 -1
  46. package/dist/torrent.js +144 -119
  47. package/dist/torrent.js.map +1 -1
  48. package/dist/torznab.js +6 -6
  49. package/dist/torznab.js.map +1 -1
  50. package/dist/utils.js +55 -0
  51. package/dist/utils.js.map +1 -1
  52. package/package.json +1 -1
@@ -16,7 +16,7 @@ const ZodErrorMessages = {
16
16
  blocklistTracker: `Blocklist tracker is not a valid URL host. If URL is https://user:pass@tracker.example.com:8080/announce/key, you must use "tracker:tracker.example.com:8080"`,
17
17
  blocklistHash: `Blocklist hash must be 40 characters and alphanumeric`,
18
18
  blocklistSize: `Blocklist size must be an integer for the number of bytes. You can only have one sizeBelow, one sizeAbove, and sizeBelow <= sizeAbove.`,
19
- blocklistNeedsClient: `Blocklist ${BlocklistType.CATEGORY}:, ${BlocklistType.TAG}:, and ${BlocklistType.TRACKER}: requires torrentDir and a torrent client to connect to.`,
19
+ blocklistNeedsClient: `Blocklist ${BlocklistType.CATEGORY}:, ${BlocklistType.TAG}:, and ${BlocklistType.TRACKER}: requires torrentDir or useClientTorrents.`,
20
20
  blocklistNeedsDataDirs: `Blocklist ${BlocklistType.FOLDER}: and ${BlocklistType.FOLDER_REGEX}: only applies to searchees from dataDirs.`,
21
21
  vercel: "format does not follow vercel's `ms` style ( https://github.com/vercel/ms#examples )",
22
22
  emptyString: "cannot have an empty string. If you want to unset it, use null or undefined.",
@@ -35,9 +35,11 @@ const ZodErrorMessages = {
35
35
  qBitAutoTMM: "If using Automatic Torrent Management in qBittorrent, please read: https://www.cross-seed.org/docs/v6-migration#new-folder-structure-for-links",
36
36
  includeSingleEpisodes: "includeSingleEpisodes is not recommended when using announce, please read: https://www.cross-seed.org/docs/v6-migration#updated-includesingleepisodes-behavior",
37
37
  invalidOutputDir: "outputDir should only contain .torrent files, cross-seed will populate and manage (https://www.cross-seed.org/docs/basics/options#outputdir)",
38
- needsInputDir: "You need to set at least one of torrentDir (recommended) or dataDirs for search/rss/announce matching to work.",
38
+ torrentDirAndUseClientTorrents: "You cannot have both torrentDir and useClientTorrents.",
39
+ needsClient: "You need to have a client configured for useClientTorrents.",
40
+ needSearchees: "You need to have torrentDir, useClientTorrents or dataDirs for search/rss/announce matching to work.",
39
41
  matchModeNeedsLinkDirs: "When using action 'inject', you need to set linkDirs (and have your data accessible) for risky and partial matchMode.",
40
- ensembleNeedsClient: "seasonFromEpisodes requires a torrent client to connect to when using torrentDir.",
42
+ ensembleNeedsClient: "seasonFromEpisodes requires a torrent client to connect to when using torrentDir or useClientTorrents.",
41
43
  ensembleNeedsLinkDirs: "When using action 'inject', you need to set linkDirs (and have your data accessible) for seasonFromEpisodes. Set seasonFromEpisodes to null to disable.",
42
44
  ensembleNeedsPartial: "seasonFromEpisodes requires matchMode partial if enabled and value is below 1.",
43
45
  linkDirsInOtherDirs: "You cannot have your linkDirs inside of your torrentDir/dataDirs/outputDir. Please adjust your paths to correct this.",
@@ -220,7 +222,11 @@ export const VALIDATION_SCHEMA = z
220
222
  .gte(process.env.DEV ? 0 : 30, ZodErrorMessages.delayUnsupported)
221
223
  .lte(3600, ZodErrorMessages.delayUnsupported),
222
224
  torznab: z.array(z.string().url()),
223
- dataDirs: z.array(z.string()).nullish(),
225
+ useClientTorrents: z.boolean().optional().default(false),
226
+ dataDirs: z
227
+ .array(z.string())
228
+ .nullish()
229
+ .transform((v) => v ?? []),
224
230
  matchMode: z.nativeEnum(MatchMode),
225
231
  skipRecheck: z.boolean().optional().default(true),
226
232
  autoResumeMaxDownload: z
@@ -284,6 +290,10 @@ export const VALIDATION_SCHEMA = z
284
290
  transmissionRpcUrl: z.string().url().nullish(),
285
291
  delugeRpcUrl: z.string().url().nullish(),
286
292
  duplicateCategories: z.boolean(),
293
+ notificationWebhookUrls: z
294
+ .array(z.string().url())
295
+ .optional()
296
+ .default([]),
287
297
  notificationWebhookUrl: z.string().url().nullish(),
288
298
  port: z
289
299
  .number()
@@ -332,14 +342,30 @@ export const VALIDATION_SCHEMA = z
332
342
  })
333
343
  .strict()
334
344
  .refine((config) => {
335
- if (config.linkDir && config.linkDirs.length)
345
+ if (!config.linkDir)
346
+ return true;
347
+ if (config.linkDirs.length)
336
348
  return false;
337
- if (config.linkDir) {
338
- logger.warn("linkDir is deprecated, use linkDirs instead.");
339
- config.linkDirs = [config.linkDir];
340
- }
349
+ logger.warn("linkDir is deprecated, use linkDirs instead.");
350
+ config.linkDirs = [config.linkDir];
341
351
  return true;
342
352
  }, "You cannot have both linkDir and linkDirs, use linkDirs only.")
353
+ .refine((config) => {
354
+ if (!config.notificationWebhookUrl)
355
+ return true;
356
+ if (config.notificationWebhookUrls.length)
357
+ return false;
358
+ logger.warn("notificationWebhookUrl is deprecated, use notificationWebhookUrls instead.");
359
+ config.notificationWebhookUrls = [config.notificationWebhookUrl];
360
+ return true;
361
+ }, "You cannot have both notificationWebhookUrl and notificationWebhookUrls, use notificationWebhookUrls only.")
362
+ .refine((config) => !config.torrentDir || !config.useClientTorrents, ZodErrorMessages.torrentDirAndUseClientTorrents)
363
+ .refine((config) => !config.useClientTorrents ||
364
+ config.qbittorrentUrl ||
365
+ config.delugeRpcUrl ||
366
+ config.transmissionRpcUrl ||
367
+ config.rtorrentRpcUrl, ZodErrorMessages.needsClient)
368
+ .refine((config) => !config.useClientTorrents || !config.delugeRpcUrl, "Deluge does not currently support useClientTorrents, use torrentDir instead.")
343
369
  .refine((config) => !config.searchCadence ||
344
370
  !config.excludeRecentSearch ||
345
371
  3 * config.searchCadence <= config.excludeRecentSearch, ZodErrorMessages.searchCadenceExcludeRecent)
@@ -398,7 +424,7 @@ export const VALIDATION_SCHEMA = z
398
424
  b.startsWith(`${BlocklistType.TRACKER}:`))) {
399
425
  return true;
400
426
  }
401
- if (!(config.torrentDir &&
427
+ if (!((config.useClientTorrents || config.torrentDir) &&
402
428
  (config.qbittorrentUrl ||
403
429
  config.delugeRpcUrl ||
404
430
  config.transmissionRpcUrl ||
@@ -412,19 +438,20 @@ export const VALIDATION_SCHEMA = z
412
438
  b.startsWith(`${BlocklistType.FOLDER_REGEX}:`))) {
413
439
  return true;
414
440
  }
415
- if (!config.dataDirs?.length) {
441
+ if (!config.dataDirs.length) {
416
442
  logger.error(ZodErrorMessages.blocklistNeedsDataDirs);
417
443
  }
418
444
  return true;
419
445
  }, ZodErrorMessages.blocklistNeedsDataDirs)
420
- .refine((config) => config.torrentDir ||
421
- config.dataDirs?.length ||
422
- (!config.rssCadence && !config.searchCadence), ZodErrorMessages.needsInputDir)
446
+ .refine((config) => config.useClientTorrents ||
447
+ config.torrentDir ||
448
+ config.dataDirs.length ||
449
+ (!config.rssCadence && !config.searchCadence), ZodErrorMessages.needSearchees)
423
450
  .refine((config) => config.linkDirs.length ||
424
451
  config.matchMode === MatchMode.SAFE ||
425
452
  config.action === Action.SAVE, ZodErrorMessages.matchModeNeedsLinkDirs)
426
453
  .refine((config) => !config.seasonFromEpisodes ||
427
- !config.torrentDir ||
454
+ (!config.torrentDir && !config.useClientTorrents) ||
428
455
  config.qbittorrentUrl ||
429
456
  config.delugeRpcUrl ||
430
457
  config.transmissionRpcUrl ||
@@ -445,7 +472,7 @@ export const VALIDATION_SCHEMA = z
445
472
  return true;
446
473
  }, ZodErrorMessages.ensembleNeedsPartial)
447
474
  .refine((config) => {
448
- if (!config.dataDirs?.length)
475
+ if (!config.dataDirs.length)
449
476
  return true;
450
477
  if (!config.seasonFromEpisodes && !config.includeSingleEpisodes) {
451
478
  return true;
@@ -454,12 +481,10 @@ export const VALIDATION_SCHEMA = z
454
481
  return true;
455
482
  })
456
483
  .refine((config) => {
457
- if (!config.linkDirs.length)
458
- return true;
459
484
  for (const linkDir of config.linkDirs) {
460
485
  if (isChildPath(linkDir, [config.outputDir]))
461
486
  return false;
462
- if (config.dataDirs && isChildPath(linkDir, config.dataDirs)) {
487
+ if (isChildPath(linkDir, config.dataDirs)) {
463
488
  return false;
464
489
  }
465
490
  if (config.torrentDir &&
@@ -470,8 +495,6 @@ export const VALIDATION_SCHEMA = z
470
495
  return true;
471
496
  }, ZodErrorMessages.linkDirsInOtherDirs)
472
497
  .refine((config) => {
473
- if (!config.dataDirs)
474
- return true;
475
498
  for (const dataDir of config.dataDirs) {
476
499
  if (isChildPath(dataDir, [config.outputDir]))
477
500
  return false;
@@ -479,8 +502,7 @@ export const VALIDATION_SCHEMA = z
479
502
  isChildPath(dataDir, [config.torrentDir])) {
480
503
  return false;
481
504
  }
482
- if (config.linkDirs.length &&
483
- isChildPath(dataDir, config.linkDirs)) {
505
+ if (isChildPath(dataDir, config.linkDirs)) {
484
506
  return false;
485
507
  }
486
508
  }
@@ -491,12 +513,10 @@ export const VALIDATION_SCHEMA = z
491
513
  return true;
492
514
  if (isChildPath(config.torrentDir, [config.outputDir]))
493
515
  return false;
494
- if (config.dataDirs &&
495
- isChildPath(config.torrentDir, config.dataDirs)) {
516
+ if (isChildPath(config.torrentDir, config.dataDirs)) {
496
517
  return false;
497
518
  }
498
- if (config.linkDirs.length &&
499
- isChildPath(config.torrentDir, config.linkDirs)) {
519
+ if (isChildPath(config.torrentDir, config.linkDirs)) {
500
520
  return false;
501
521
  }
502
522
  return true;
@@ -506,11 +526,10 @@ export const VALIDATION_SCHEMA = z
506
526
  isChildPath(config.outputDir, [config.torrentDir])) {
507
527
  return false;
508
528
  }
509
- if (config.dataDirs && isChildPath(config.outputDir, config.dataDirs)) {
529
+ if (isChildPath(config.outputDir, config.dataDirs)) {
510
530
  return false;
511
531
  }
512
- if (config.linkDirs.length &&
513
- isChildPath(config.outputDir, config.linkDirs)) {
532
+ if (isChildPath(config.outputDir, config.linkDirs)) {
514
533
  return false;
515
534
  }
516
535
  return true;
@@ -519,7 +538,7 @@ export const VALIDATION_SCHEMA = z
519
538
  if (!isAbsolute(config.outputDir) ||
520
539
  !config.linkDirs.every(isAbsolute) ||
521
540
  (config.torrentDir && !isAbsolute(config.torrentDir)) ||
522
- (config.dataDirs && !config.dataDirs.every(isAbsolute))) {
541
+ !config.dataDirs.every(isAbsolute)) {
523
542
  logger.warn(ZodErrorMessages.relativePaths);
524
543
  }
525
544
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../src/configSchema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../src/configSchema.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"configuration.js","sourceRoot":"","sources":["../src/configuration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configuration.js","sourceRoot":"","sources":["../src/configuration.ts"],"names":[],"mappings":"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"}
package/dist/constants.js CHANGED
@@ -177,6 +177,7 @@ export var LinkType;
177
177
  (function (LinkType) {
178
178
  LinkType["SYMLINK"] = "symlink";
179
179
  LinkType["HARDLINK"] = "hardlink";
180
+ LinkType["REFLINK"] = "reflink";
180
181
  })(LinkType || (LinkType = {}));
181
182
  export var BlocklistType;
182
183
  (function (BlocklistType) {
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
package/dist/dataFiles.js CHANGED
@@ -1,4 +1,4 @@
1
- import { existsSync, readdirSync, statSync, watch } from "fs";
1
+ import { existsSync, readdirSync, readFileSync, statSync, watch, } from "fs";
2
2
  import Fuse from "fuse.js";
3
3
  import { basename, dirname, extname, join, resolve, sep } from "path";
4
4
  import { IGNORED_FOLDERS_SUBSTRINGS, VIDEO_EXTENSIONS } from "./constants.js";
@@ -7,37 +7,38 @@ import { logger } from "./logger.js";
7
7
  import { getRuntimeConfig } from "./runtimeConfig.js";
8
8
  import { createSearcheeFromPath, getFilesFromDataRoot, parseTitle, } from "./searchee.js";
9
9
  import { createEnsemblePieces } from "./torrent.js";
10
- import { createKeyTitle, isTruthy } from "./utils.js";
10
+ import { createKeyTitle, inBatches, isTruthy } from "./utils.js";
11
11
  import { isOk } from "./Result.js";
12
12
  const watchers = new Map();
13
13
  const modifiedPaths = new Map();
14
- /**
15
- * Only call this function once at the start of the program.
16
- */
17
- export async function initializeDataDirs() {
18
- const { dataDirs } = getRuntimeConfig();
19
- if (!dataDirs?.length)
14
+ export async function indexDataDirs(options) {
15
+ const { dataDirs, maxDataDepth } = getRuntimeConfig();
16
+ if (!dataDirs.length)
20
17
  return;
21
- for (const dataDir of dataDirs) {
22
- modifiedPaths.set(dataDir, new Set());
23
- watchers.set(dataDir, watch(dataDir, { recursive: true, persistent: false }, (_, f) => {
24
- if (!f)
25
- return;
26
- const fullPath = resolve(join(dataDir, f));
27
- if (fullPath === resolve(dataDir))
28
- return;
29
- modifiedPaths.get(dataDir).add(fullPath);
30
- }));
18
+ if (options.startup) {
19
+ logger.info("Indexing dataDirs for reverse lookup...");
20
+ for (const dataDir of dataDirs) {
21
+ modifiedPaths.set(dataDir, new Set());
22
+ watchers.set(dataDir, watch(dataDir, { recursive: true, persistent: false }, (_, f) => {
23
+ if (!f)
24
+ return;
25
+ const fullPath = resolve(join(dataDir, f));
26
+ if (fullPath === resolve(dataDir))
27
+ return;
28
+ modifiedPaths.get(dataDir).add(fullPath);
29
+ }));
30
+ }
31
+ const searcheePaths = findSearcheesFromAllDataDirs();
32
+ const maxUserWatchesPath = "/proc/sys/fs/inotify/max_user_watches";
33
+ if (existsSync(maxUserWatchesPath)) {
34
+ const limit = parseInt(readFileSync(maxUserWatchesPath, "utf8"));
35
+ if (limit < searcheePaths.length * 10) {
36
+ logger.error(`max_user_watches too low for proper indexing of dataDirs. It is recommended to set fs.inotify.max_user_watches=1048576 in /etc/sysctl.conf (only on the host system if using docker) - current: ${limit}`);
37
+ }
38
+ }
39
+ return await indexDataPaths(searcheePaths);
31
40
  }
32
- logger.info("Indexing dataDirs for reverse lookup...");
33
- await indexDataPaths(findSearcheesFromAllDataDirs());
34
- }
35
- /**
36
- * This gets called on each rss/webhook/announce event.
37
- */
38
- export async function indexDataDirs() {
39
- const { maxDataDepth } = getRuntimeConfig();
40
- await Promise.all(Array.from(watchers.keys()).map((dataDir) => {
41
+ await Promise.all(dataDirs.map(async (dataDir) => {
41
42
  const modified = modifiedPaths.get(dataDir);
42
43
  const eventPaths = [];
43
44
  while (modified.size) {
@@ -53,8 +54,8 @@ export async function indexDataDirs() {
53
54
  logger.verbose(`Indexing dataDir ${dataDir} due to recent changes...`);
54
55
  eventPaths.sort((a, b) => b.split(sep).filter(isTruthy).length -
55
56
  a.split(sep).filter(isTruthy).length);
56
- const seenPaths = new Set();
57
- const paths = eventPaths.reduce((acc, path) => {
57
+ const deletedPaths = [];
58
+ const paths = Array.from(eventPaths.reduce((acc, path) => {
58
59
  const affectedPaths = [path];
59
60
  let parentPath = dirname(path);
60
61
  while (resolve(parentPath) !== resolve(dataDir)) {
@@ -62,13 +63,19 @@ export async function indexDataDirs() {
62
63
  parentPath = dirname(parentPath);
63
64
  }
64
65
  for (const affectedPath of affectedPaths.slice(-maxDataDepth)) {
65
- if (seenPaths.has(affectedPath))
66
- continue;
67
- seenPaths.add(affectedPath);
68
- acc.push(affectedPath);
66
+ acc.add(affectedPath);
69
67
  }
70
68
  return acc;
71
- }, []);
69
+ }, new Set())).filter((path) => {
70
+ if (existsSync(path))
71
+ return true;
72
+ deletedPaths.push(path);
73
+ return false;
74
+ });
75
+ await inBatches(deletedPaths, async (batch) => {
76
+ await memDB("data").whereIn("path", batch).del();
77
+ await memDB("ensemble").whereIn("path", batch).del();
78
+ });
72
79
  return indexDataPaths(paths);
73
80
  }));
74
81
  }
@@ -96,19 +103,12 @@ async function indexDataPaths(paths) {
96
103
  ensembleRows.push(ensembleEntry);
97
104
  }
98
105
  }
99
- const batchSize = 100;
100
- for (let i = 0; i < dataRows.length; i += batchSize) {
101
- const batch = dataRows.slice(i, i + batchSize);
102
- if (!batch.length)
103
- break;
106
+ await inBatches(dataRows, async (batch) => {
104
107
  await memDB("data").insert(batch).onConflict("path").merge();
105
- }
106
- for (let i = 0; i < ensembleRows.length; i += batchSize) {
107
- const batch = ensembleRows.slice(i, i + batchSize);
108
- if (!batch.length)
109
- break;
108
+ });
109
+ await inBatches(ensembleRows, async (batch) => {
110
110
  await memDB("ensemble").insert(batch).onConflict("path").merge();
111
- }
111
+ });
112
112
  }
113
113
  async function indexEnsembleDataEntry(title, path, files) {
114
114
  const ensemblePieces = await createEnsemblePieces(title, files);
@@ -117,6 +117,7 @@ async function indexEnsembleDataEntry(title, path, files) {
117
117
  const { key, element, largestFile } = ensemblePieces;
118
118
  return {
119
119
  path: join(dirname(path), largestFile.path),
120
+ info_hash: null,
120
121
  ensemble: key,
121
122
  element,
122
123
  };
@@ -149,9 +150,10 @@ export async function getDataByFuzzyName(name) {
149
150
  entriesToDelete.push(path);
150
151
  return false;
151
152
  });
152
- if (entriesToDelete.length > 0) {
153
- await memDB("data").whereIn("path", entriesToDelete).del();
154
- }
153
+ await inBatches(entriesToDelete, async (batch) => {
154
+ await memDB("data").whereIn("path", batch).del();
155
+ await memDB("ensemble").whereIn("path", batch).del();
156
+ });
155
157
  if (potentialMatches.length === 0)
156
158
  return [];
157
159
  return [await createSearcheeFromPath(potentialMatches[0].item.path)]
@@ -1 +1 @@
1
- {"version":3,"file":"dataFiles.js","sourceRoot":"","sources":["../src/dataFiles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC;AACzE,OAAO,IAAI,MAAM,SAAS,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EACN,sBAAsB,EAEtB,oBAAoB,EACpB,UAAU,GAEV,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,oBAAoB,EAAiB,MAAM,cAAc,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAOnC,MAAM,QAAQ,GAA2B,IAAI,GAAG,EAAE,CAAC;AACnD,MAAM,aAAa,GAA6B,IAAI,GAAG,EAAE,CAAC;AAE1D;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACvC,MAAM,EAAE,QAAQ,EAAE,GAAG,gBAAgB,EAAE,CAAC;IACxC,IAAI,CAAC,QAAQ,EAAE,MAAM;QAAE,OAAO;IAC9B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAChC,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QACtC,QAAQ,CAAC,GAAG,CACX,OAAO,EACP,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC/D,IAAI,CAAC,CAAC;gBAAE,OAAO;YACf,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;YAC3C,IAAI,QAAQ,KAAK,OAAO,CAAC,OAAO,CAAC;gBAAE,OAAO;YAC1C,aAAa,CAAC,GAAG,CAAC,OAAO,CAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC3C,CAAC,CAAC,CACF,CAAC;IACH,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;IACvD,MAAM,cAAc,CAAC,4BAA4B,EAAE,CAAC,CAAC;AACtD,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa;IAClC,MAAM,EAAE,YAAY,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAC5C,MAAM,OAAO,CAAC,GAAG,CAChB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QAC3C,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAE,CAAC;QAC7C,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;YACtB,MAAM,IAAI,GAAuB,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YAChE,IAAI,CAAC,IAAI;gBAAE,SAAS;YACpB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;gBAAE,SAAS;YACrC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,MAAM;YAAE,OAAO;QAC/B,MAAM,CAAC,OAAO,CACb,oBAAoB,OAAO,2BAA2B,CACtD,CAAC;QACF,UAAU,CAAC,IAAI,CACd,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACR,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM;YACpC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CACrC,CAAC;QACF,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;QACpC,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAW,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YACvD,MAAM,aAAa,GAAa,CAAC,IAAI,CAAC,CAAC;YACvC,IAAI,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YAC/B,OAAO,OAAO,CAAC,UAAU,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBACjD,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC/B,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;YAClC,CAAC;YACD,KAAK,MAAM,YAAY,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC/D,IAAI,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC;oBAAE,SAAS;gBAC1C,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBAC5B,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACxB,CAAC;YACD,OAAO,GAAG,CAAC;QACZ,CAAC,EAAE,EAAE,CAAC,CAAC;QACP,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC,CAAC,CACF,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,cAAc,CAAC,KAAe;IAC5C,MAAM,EAAE,kBAAkB,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAClD,MAAM,aAAa,GAAG,IAAI,GAAG,EAAoB,CAAC;IAClD,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;IAClD,MAAM,QAAQ,GAAgB,EAAE,CAAC;IACjC,MAAM,YAAY,GAAoB,EAAE,CAAC;IACzC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,oBAAoB,CACjC,IAAI,EACJ,aAAa,EACb,eAAe,CACf,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,SAAS;QAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QACtD,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/B,IAAI,kBAAkB,EAAE,CAAC;YACxB,MAAM,aAAa,GAAG,MAAM,sBAAsB,CACjD,KAAK,EACL,IAAI,EACJ,KAAK,CACL,CAAC;YACF,IAAI,aAAa;gBAAE,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACrD,CAAC;IACF,CAAC;IACD,MAAM,SAAS,GAAG,GAAG,CAAC;IACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC;QACrD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,MAAM;QACzB,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC;IAC9D,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC;QACzD,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,MAAM;QACzB,MAAM,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC;IAClE,CAAC;AACF,CAAC;AAED,KAAK,UAAU,sBAAsB,CACpC,KAAa,EACb,IAAY,EACZ,KAAa;IAEb,MAAM,cAAc,GAAG,MAAM,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAChE,IAAI,CAAC,cAAc;QAAE,OAAO,IAAI,CAAC;IACjC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,cAAc,CAAC;IACrD,OAAO;QACN,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC;QAC3C,QAAQ,EAAE,GAAG;QACb,OAAO;KACP,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACvC,IAAY;IAEZ,MAAM,cAAc,GACnB,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC;IACrB,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IAEvC,6EAA6E;IAC7E,IAAI,aAAa,GAA0B,EAAE,CAAC;IAC9C,IAAI,SAAS,EAAE,CAAC;QACf,aAAa,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;YAChD,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC7C,OAAO,SAAS,KAAK,OAAO,CAAC;QAC9B,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,6DAA6D;IAC7D,aAAa,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC;IAE1E,MAAM,eAAe,GAAa,EAAE,CAAC;IACrC,2CAA2C;IAC3C,MAAM,gBAAgB,GAAG,IAAI,IAAI,CAAC,aAAa,EAAE;QAChD,IAAI,EAAE,CAAC,OAAO,CAAC;QACf,QAAQ,EAAE,CAAC;QACX,SAAS,EAAE,IAAI;KACf,CAAC;SACA,MAAM,CAAC,IAAI,CAAC;SACZ,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;QACjB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;QAC7B,IAAI,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAClC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,OAAO,KAAK,CAAC;IACd,CAAC,CAAC,CAAC;IACJ,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,GAAG,EAAE,CAAC;IAC5D,CAAC;IACD,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAC7C,OAAO,CAAC,MAAM,sBAAsB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAClE,MAAM,CAAC,IAAI,CAAC;SACZ,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,IAAY,EAAE,KAAc;IACzE,MAAM,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,KAAK,EAAE,CAAC;QACX,OAAO,0BAA0B,CAAC,QAAQ,CACzC,cAAc,CAAC,WAAW,EAAE,CAC5B,CAAC;IACH,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;IAC5D,CAAC;AACF,CAAC;AAED,MAAM,UAAU,wBAAwB,CACvC,IAAY,EACZ,KAAa,EACb,SAAmB;IAEnB,IAAI,CAAC;QACJ,MAAM,KAAK,GACV,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;QACpE,IAAI,KAAK,IAAI,CAAC,IAAI,6BAA6B,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;YAC9D,OAAO,EAAE,CAAC;QACX,CAAC;aAAM,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,EAAE,CAAC;YAC/B,MAAM,cAAc,GAAG,WAAW,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;YAClE,MAAM,cAAc,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CACxD,wBAAwB,CACvB,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,EACvB,KAAK,GAAG,CAAC,EACT,MAAM,CAAC,WAAW,EAAE,CACpB,CACD,CAAC;YACF,OAAO,CAAC,GAAG,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC,sCAAsC;QACzE,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,IAAI,CAAC,CAAC;QACf,CAAC;IACF,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,MAAM,CAAC,OAAO,CAAC,2BAA2B,IAAI,EAAE,CAAC,CAAC;QAClD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO,EAAE,CAAC;IACX,CAAC;AACF,CAAC;AAED,MAAM,UAAU,4BAA4B;IAC3C,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,gBAAgB,EAAE,CAAC;IACtD,OAAO,QAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CACpC,WAAW,CAAC,OAAO,CAAC;SAClB,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;SACtC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,wBAAwB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CACjE,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"dataFiles.js","sourceRoot":"","sources":["../src/dataFiles.ts"],"names":[],"mappings":"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"}
package/dist/db.js CHANGED
@@ -19,12 +19,24 @@ export const memDB = Knex.knex({
19
19
  connection: ":memory:",
20
20
  useNullAsDefault: true,
21
21
  });
22
+ await memDB.schema.createTable("torrent", (table) => {
23
+ table.string("info_hash").primary();
24
+ table.string("name");
25
+ table.string("title");
26
+ table.json("files");
27
+ table.integer("length");
28
+ table.string("save_path");
29
+ table.string("category");
30
+ table.json("tags");
31
+ table.json("trackers");
32
+ });
22
33
  await memDB.schema.createTable("data", (table) => {
23
34
  table.string("path").primary();
24
35
  table.string("title");
25
36
  });
26
37
  await memDB.schema.createTable("ensemble", (table) => {
27
38
  table.string("path").primary();
39
+ table.string("info_hash").unique();
28
40
  table.string("ensemble");
29
41
  table.string("element");
30
42
  });
package/dist/db.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,OAAO,MAAM,MAAM,gBAAgB,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,eAAe,CAAC,CAAC;AACjD,MAAM,eAAe,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC7C,eAAe,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAC7C,eAAe,CAAC,KAAK,EAAE,CAAC;AAExB,MAAM,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC;IAC3B,MAAM,EAAE,gBAAgB;IACxB,UAAU,EAAE,EAAE,QAAQ,EAAE;IACxB,UAAU,EAAE,EAAE,eAAe,EAAE,UAAU,EAAE;IAC3C,gBAAgB,EAAE,IAAI;CACtB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC;IAC9B,MAAM,EAAE,gBAAgB;IACxB,UAAU,EAAE,UAAU;IACtB,gBAAgB,EAAE,IAAI;CACtB,CAAC,CAAC;AACH,MAAM,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;IAChD,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;IAC/B,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC;AACH,MAAM,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE;IACpD,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;IAC/B,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACzB,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AACzB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,OAAO,MAAM,MAAM,gBAAgB,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,eAAe,CAAC,CAAC;AACjD,MAAM,eAAe,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC7C,eAAe,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAC7C,eAAe,CAAC,KAAK,EAAE,CAAC;AAExB,MAAM,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC;IAC3B,MAAM,EAAE,gBAAgB;IACxB,UAAU,EAAE,EAAE,QAAQ,EAAE;IACxB,UAAU,EAAE,EAAE,eAAe,EAAE,UAAU,EAAE;IAC3C,gBAAgB,EAAE,IAAI;CACtB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC;IAC9B,MAAM,EAAE,gBAAgB;IACxB,UAAU,EAAE,UAAU;IACtB,gBAAgB,EAAE,IAAI;CACtB,CAAC,CAAC;AACH,MAAM,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;IACnD,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAC;IACpC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACrB,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACtB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACxB,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC1B,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACzB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnB,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AACxB,CAAC,CAAC,CAAC;AACH,MAAM,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;IAChD,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;IAC/B,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC;AACH,MAAM,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE;IACpD,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;IAC/B,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,EAAE,CAAC;IACnC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACzB,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AACzB,CAAC,CAAC,CAAC"}
package/dist/decide.js CHANGED
@@ -12,8 +12,8 @@ import { getRuntimeConfig } from "./runtimeConfig.js";
12
12
  import { getReleaseGroup, } from "./searchee.js";
13
13
  import { parseTorrentFromFilename, snatch, SnatchError } from "./torrent.js";
14
14
  import { extractInt, getFuzzySizeFactor, getLogString, getMediaType, getMinSizeRatio, sanitizeInfoHash, stripExtension, wait, } from "./utils.js";
15
- function logDecision(searchee, candidate, decision, metafile, tracker) {
16
- const { blockList, matchMode } = getRuntimeConfig();
15
+ function logDecision(searchee, candidate, decision, metafile, tracker, options) {
16
+ const { blockList, matchMode } = getRuntimeConfig(options?.configOverride);
17
17
  let reason;
18
18
  switch (decision) {
19
19
  case Decision.MATCH_PARTIAL:
@@ -212,8 +212,8 @@ function releaseVersionDoesMatch(searcheeName, candidateName) {
212
212
  ?.toLowerCase();
213
213
  return searcheeVersionType === candidateVersionType;
214
214
  }
215
- export async function assessCandidate(metaOrCandidate, searchee, infoHashesToExclude) {
216
- const { blockList, includeSingleEpisodes, matchMode } = getRuntimeConfig();
215
+ export async function assessCandidate(metaOrCandidate, searchee, infoHashesToExclude, options) {
216
+ const { blockList, includeSingleEpisodes, matchMode } = getRuntimeConfig(options?.configOverride);
217
217
  // When metaOrCandidate is a Metafile, skip straight to the
218
218
  // main matching algorithms as we don't need pre-download filtering.
219
219
  const isCandidate = !(metaOrCandidate instanceof Metafile);
@@ -364,8 +364,8 @@ export async function cleanupTorrentCache() {
364
364
  }
365
365
  }
366
366
  }
367
- async function assessAndSaveResults(metaOrCandidate, searchee, guid, infoHashesToExclude, firstSeen, guidInfoHashMap) {
368
- const assessment = await assessCandidate(metaOrCandidate, searchee, infoHashesToExclude);
367
+ async function assessAndSaveResults(metaOrCandidate, searchee, guid, infoHashesToExclude, firstSeen, guidInfoHashMap, options) {
368
+ const assessment = await assessCandidate(metaOrCandidate, searchee, infoHashesToExclude, options);
369
369
  if (assessment.metaCached && assessment.metafile) {
370
370
  guidInfoHashMap.set(guid, assessment.metafile.infoHash);
371
371
  await db.transaction(async (trx) => {
@@ -419,7 +419,7 @@ async function guidLookup(guid, link, guidInfoHashMap) {
419
419
  }
420
420
  }
421
421
  }
422
- export async function assessCandidateCaching(candidate, searchee, infoHashesToExclude, guidInfoHashMap) {
422
+ export async function assessCandidateCaching(candidate, searchee, infoHashesToExclude, guidInfoHashMap, options) {
423
423
  const { name, guid, link, tracker } = candidate;
424
424
  const cacheEntry = await db("decision")
425
425
  .select({
@@ -459,9 +459,9 @@ export async function assessCandidateCaching(candidate, searchee, infoHashesToEx
459
459
  });
460
460
  }
461
461
  else {
462
- assessment = await assessAndSaveResults(metaOrCandidate, searchee, guid, infoHashesToExclude, cacheEntry?.firstSeen ?? Date.now(), guidInfoHashMap);
462
+ assessment = await assessAndSaveResults(metaOrCandidate, searchee, guid, infoHashesToExclude, cacheEntry?.firstSeen ?? Date.now(), guidInfoHashMap, options);
463
463
  }
464
- logDecision(searchee, candidate, assessment.decision, assessment.metafile, tracker);
464
+ logDecision(searchee, candidate, assessment.decision, assessment.metafile, tracker, options);
465
465
  return assessment;
466
466
  }
467
467
  //# sourceMappingURL=decide.js.map