cross-seed 6.0.0-3 → 6.0.0-31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Result.js +17 -11
- package/dist/Result.js.map +1 -1
- package/dist/action.js +188 -74
- package/dist/action.js.map +1 -1
- package/dist/arr.js +197 -0
- package/dist/arr.js.map +1 -0
- package/dist/clients/Deluge.js +153 -81
- package/dist/clients/Deluge.js.map +1 -1
- package/dist/clients/QBittorrent.js +95 -64
- package/dist/clients/QBittorrent.js.map +1 -1
- package/dist/clients/RTorrent.js +31 -10
- package/dist/clients/RTorrent.js.map +1 -1
- package/dist/clients/TorrentClient.js.map +1 -1
- package/dist/clients/Transmission.js +30 -10
- package/dist/clients/Transmission.js.map +1 -1
- package/dist/cmd.js +32 -16
- package/dist/cmd.js.map +1 -1
- package/dist/config.template.cjs +83 -46
- package/dist/config.template.cjs.map +1 -1
- package/dist/configSchema.js +98 -13
- package/dist/configSchema.js.map +1 -1
- package/dist/configuration.js +3 -0
- package/dist/configuration.js.map +1 -1
- package/dist/constants.js +113 -6
- package/dist/constants.js.map +1 -1
- package/dist/dataFiles.js +4 -5
- package/dist/dataFiles.js.map +1 -1
- package/dist/decide.js +276 -160
- package/dist/decide.js.map +1 -1
- package/dist/diff.js +12 -2
- package/dist/diff.js.map +1 -1
- package/dist/errors.js +5 -2
- package/dist/errors.js.map +1 -1
- package/dist/indexers.js +31 -4
- package/dist/indexers.js.map +1 -1
- package/dist/inject.js +409 -0
- package/dist/inject.js.map +1 -0
- package/dist/jobs.js +8 -1
- package/dist/jobs.js.map +1 -1
- package/dist/logger.js +20 -5
- package/dist/logger.js.map +1 -1
- package/dist/migrations/05-caps.js +16 -0
- package/dist/migrations/05-caps.js.map +1 -0
- package/dist/migrations/06-uniqueDecisions.js +29 -0
- package/dist/migrations/06-uniqueDecisions.js.map +1 -0
- package/dist/migrations/migrations.js +11 -1
- package/dist/migrations/migrations.js.map +1 -1
- package/dist/parseTorrent.js +6 -0
- package/dist/parseTorrent.js.map +1 -1
- package/dist/pipeline.js +202 -95
- package/dist/pipeline.js.map +1 -1
- package/dist/preFilter.js +130 -52
- package/dist/preFilter.js.map +1 -1
- package/dist/pushNotifier.js +6 -4
- package/dist/pushNotifier.js.map +1 -1
- package/dist/runtimeConfig.js.map +1 -1
- package/dist/searchee.js +190 -19
- package/dist/searchee.js.map +1 -1
- package/dist/server.js +70 -32
- package/dist/server.js.map +1 -1
- package/dist/startup.js +12 -1
- package/dist/startup.js.map +1 -1
- package/dist/torrent.js +103 -40
- package/dist/torrent.js.map +1 -1
- package/dist/torznab.js +304 -90
- package/dist/torznab.js.map +1 -1
- package/dist/utils.js +215 -33
- package/dist/utils.js.map +1 -1
- package/package.json +3 -1
package/dist/pipeline.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../src/pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAChC,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAEN,QAAQ,EACR,eAAe,GAEf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACN,wBAAwB,EACxB,4BAA4B,GAC5B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,eAAe,EAAoB,MAAM,aAAa,CAAC;AAChE,OAAO,EACN,aAAa,EACb,mBAAmB,EACnB,sBAAsB,GACtB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EACN,0BAA0B,EAC1B,sBAAsB,EACtB,6BAA6B,GAE7B,MAAM,eAAe,CAAC;AACvB,OAAO,EACN,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,GAEnB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAsBnE,KAAK,UAAU,gBAAgB,CAC9B,UAAuB,EACvB,QAAkB,EAClB,eAAyB;IAEzB,MAAM,WAAW,GAA4B,EAAE,CAAC;IAChD,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE,CAAC;QACjC,MAAM,UAAU,GAAG,MAAM,eAAe,CACvC,MAAM,EACN,QAAQ,EACR,eAAe,CACf,CAAC;QACF,WAAW,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO,WAAW,CAAC;AACpB,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC9B,QAAkB,EAClB,eAAyB;IAEzB,oCAAoC;IACpC,MAAM,EAAE,CAAC,UAAU,CAAC;SAClB,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;SAC/B,UAAU,CAAC,MAAM,CAAC;SAClB,MAAM,EAAE,CAAC;IAEX,IAAI,QAA0D,CAAC;IAC/D,IAAI,CAAC;QACJ,QAAQ,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,MAAM,CAAC,KAAK,CAAC,uBAAuB,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QACrD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO,EAAE,gBAAgB,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IAC5C,CAAC;IAED,MAAM,OAAO,GAAgB,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CACnD,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAChC,GAAG,SAAS;QACZ,SAAS,EAAE,CAAC,CAAC,SAAS;KACtB,CAAC,CAAC,CACH,CAAC;IAEF,MAAM,WAAW,GAAG,MAAM,gBAAgB,CACzC,OAAO,EACP,QAAQ,EACR,eAAe,CACf,CAAC;IAEF,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,WAAW,CAAC,MAAM,CACzD,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QACjB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,GAAG,CAAC,UAAU,CAAC,QAAQ,KAAK,QAAQ,CAAC,YAAY,EAAE,CAAC;YACvD,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,SAAU,CAAC,CAAC;YAC1C,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,SAAU,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,GAAG,CAAC;IACZ,CAAC,EACD;QACC,WAAW,EAAE,IAAI,GAAG,EAAU;QAC9B,cAAc,EAAE,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;KACzD,CACD,CAAC;IAEF,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CACjC,CAAC,CAAC,EAAE,EAAE,CACL,CAAC,CAAC,UAAU,CAAC,QAAQ,KAAK,QAAQ,CAAC,KAAK;QACxC,CAAC,CAAC,UAAU,CAAC,QAAQ,KAAK,QAAQ,CAAC,eAAe;QAClD,CAAC,CAAC,UAAU,CAAC,QAAQ,KAAK,QAAQ,CAAC,aAAa,CACjD,CAAC;IACF,MAAM,aAAa,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9D,IAAI,aAAa,CAAC,QAAQ,CAAC,eAAe,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAClE,sDAAsD;QACtD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,CAAC;IAC5C,CAAC;IAED,MAAM,sBAAsB,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;IAExE,MAAM,mBAAmB,CACxB,aAAa,CAAC,YAAY,EAC1B,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,EACzB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CACvB,CAAC;IAEF,MAAM,MAAM,GAA+C,GAAG,CAC7D,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,EAChC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAC7B,aAAa,CACb,CAAC;IACF,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAExD,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,gBAAgB,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;AACvE,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC9B,OAAmB,EACnB,eAAyB;IAEzB,MAAM,EAAE,KAAK,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAErC,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,KAAK,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;QAC7C,IAAI,CAAC;YACJ,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC;YAE9D,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;YAC5D,MAAM,IAAI,GAAG,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,IAAI,CAAC,CAAC;YAEpE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,MAAM,gBAAgB,CAC3D,MAAM,EACN,eAAe,CACf,CAAC;YACF,UAAU,IAAI,OAAO,CAAC;YAEtB,iDAAiD;YACjD,IAAI,gBAAgB,KAAK,CAAC;gBAAE,SAAS;YACrC,MAAM,KAAK,CAAC;QACb,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,MAAM,CAAC,KAAK,CAAC,uBAAuB,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YACnD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;IACF,CAAC;IACD,OAAO,UAAU,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACpD,QAAwB;IAExB,MAAM,EAAE,YAAY,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAE5C,IAAI,SAAqB,CAAC;IAC1B,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnB,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,GAAG,CACxC,wBAAwB,CAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,GAAG,CACxD,sBAAsB,CACtB,CACD,CAAC;QACF,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;IAC3D,CAAC;SAAM,CAAC;QACP,SAAS,GAAG,CAAC,MAAM,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC;IACpD,CAAC;IACD,MAAM,eAAe,GAAG,MAAM,sBAAsB,EAAE,CAAC;IACvD,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QAChD,MAAM,iBAAiB,GAAG,MAAM,gBAAgB,CAC/C,SAAS,CAAC,CAAC,CAAC,EACZ,eAAe,CACf,CAAC;QACF,OAAO,IAAI,iBAAiB,CAAC,OAAO,CAAC;IACtC,CAAC;IACD,OAAO,OAAO,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC3C,SAAoB;IAEpB,MAAM,IAAI,GAAG,MAAM,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACzD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QACnB,MAAM,CAAC,OAAO,CAAC;YACd,KAAK,EAAE,KAAK,CAAC,cAAc;YAC3B,OAAO,EAAE,sCAAsC,SAAS,CAAC,IAAI,EAAE;SAC/D,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACb,CAAC;IAED,MAAM,eAAe,GAAG,MAAM,sBAAsB,EAAE,CAAC;IACvD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACxC,MAAM,QAAQ,GAAG,0BAA0B,CAAC,IAAI,CAAC,CAAC;IAElD,oCAAoC;IACpC,MAAM,EAAE,CAAC,UAAU,CAAC;SAClB,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;SAC/B,UAAU,CAAC,MAAM,CAAC;SAClB,MAAM,EAAE,CAAC;IAEX,MAAM,UAAU,GAAqB,MAAM,eAAe,CACzD,SAAS,EACT,QAAQ,EACR,eAAe,CACf,CAAC;IAEF,IACC,UAAU,CAAC,QAAQ,KAAK,QAAQ,CAAC,KAAK;QACtC,UAAU,CAAC,QAAQ,KAAK,QAAQ,CAAC,eAAe;QAChD,UAAU,CAAC,QAAQ,KAAK,QAAQ,CAAC,aAAa,EAC7C,CAAC;QACF,OAAO,IAAI,CAAC;IACb,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,aAAa,CACjC,UAAU,CAAC,QAAS,EACpB,UAAU,CAAC,QAAQ,EACnB,QAAQ,EACR,SAAS,CAAC,OAAO,CACjB,CAAC;IACF,MAAM,uBAAuB,CAC5B,QAAQ,EACR,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,EACzC,KAAK,CAAC,cAAc,CACpB,CAAC;IACF,OAAO,MAAM,CAAC;AACf,CAAC;AAED,KAAK,UAAU,sBAAsB;IACpC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAC3E,IAAI,YAAY,GAAe,EAAE,CAAC;IAClC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,GAAG,CACxC,QAAQ,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAC3C,CAAC;QACF,YAAY,GAAG,eAAe;aAC5B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aACvB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;IACjC,CAAC;SAAM,CAAC;QACP,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACpC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,GAAG,CACxC,4BAA4B,EAAE,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAC1D,CAAC;YACF,YAAY,CAAC,IAAI,CAChB,GAAG,eAAe;iBAChB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;iBACvB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAC/B,CAAC;QACH,CAAC;IACF,CAAC;IAED,MAAM,eAAe,GAAG,YAAY;SAClC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;SACtB,MAAM,CAAC,QAAQ,CAAC,CAAC;IACnB,IAAI,gBAAgB,GAAG,MAAM,WAAW,CACvC,WAAW,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,EACjD,gBAAgB,CAChB,CAAC;IAEF,MAAM,CAAC,IAAI,CAAC;QACX,KAAK,EAAE,KAAK,CAAC,MAAM;QACnB,OAAO,EAAE,SAAS,YAAY,CAAC,MAAM,cAAc,gBAAgB,CAAC,MAAM,iCAAiC;KAC3G,CAAC,CAAC;IAEH,IAAI,WAAW,IAAI,gBAAgB,CAAC,MAAM,GAAG,WAAW,EAAE,CAAC;QAC1D,MAAM,CAAC,IAAI,CAAC;YACX,KAAK,EAAE,KAAK,CAAC,MAAM;YACnB,OAAO,EAAE,cAAc,WAAW,WAAW;SAC7C,CAAC,CAAC;QAEH,gBAAgB,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;IAC3D,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC;AACvD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAClD,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAEpE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACxC,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IAEpE,MAAM,CAAC,IAAI,CAAC;QACX,KAAK,EAAE,KAAK,CAAC,MAAM;QACnB,OAAO,EAAE,KAAK,CAAC,IAAI,CAClB,SAAS,KAAK,CAAC,IAAI,CAAC,KAAK,CACxB,UAAU,CACV,qBAAqB,KAAK,CAAC,IAAI,CAAC,KAAK,CACrC,OAAO,CAAC,MAAM,CACd,oBAAoB,CACrB;KACD,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY;IACjC,MAAM,EAAE,OAAO,EAAE,GAAG,gBAAgB,EAAE,CAAC;IACvC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,UAAU,GAAG,MAAM,aAAa,EAAE,CAAC;QACzC,MAAM,OAAO,GACZ,CACC,MAAM,EAAE,CAAC,SAAS,CAAC;aACjB,MAAM,CAAC,UAAU,CAAC;aAClB,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;aACtB,KAAK,EAAE,CACT,EAAE,QAAQ,IAAI,CAAC,CAAC;QAClB,MAAM,uBAAuB,GAAG,UAAU,CAAC,MAAM,CAChD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,OAAO,CAC1B,CAAC;QACF,MAAM,CAAC,OAAO,CAAC;YACd,KAAK,EAAE,KAAK,CAAC,GAAG;YAChB,OAAO,EAAE,iBACR,uBAAuB,CAAC,MACzB,0BACC,UAAU,CAAC,MAAM,GAAG,uBAAuB,CAAC,MAC7C,eAAe;SACf,CAAC,CAAC;QACH,MAAM,CAAC,OAAO,CAAC;YACd,KAAK,EAAE,KAAK,CAAC,GAAG;YAChB,OAAO,EAAE,0BAA0B;SACnC,CAAC,CAAC;QACH,MAAM,gBAAgB,EAAE,CAAC;QACzB,KAAK,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,IAAI,uBAAuB,CAAC,OAAO,EAAE,EAAE,CAAC;YAChE,MAAM,CAAC,OAAO,CAAC;gBACd,KAAK,EAAE,KAAK,CAAC,GAAG;gBAChB,OAAO,EAAE,sBAAsB,CAAC,GAAG,CAAC,IACnC,uBAAuB,CAAC,MACzB,EAAE;aACF,CAAC,CAAC;YACH,MAAM,sBAAsB,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;IAC7D,CAAC;AACF,CAAC"}
|
1
|
+
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../src/pipeline.ts"],"names":[],"mappings":"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"}
|
package/dist/preFilter.js
CHANGED
@@ -1,61 +1,105 @@
|
|
1
1
|
import ms from "ms";
|
2
|
-
import {
|
3
|
-
import {
|
2
|
+
import { basename, dirname } from "path";
|
3
|
+
import { statSync } from "fs";
|
4
|
+
import { ARR_DIR_REGEX, SONARR_SUBFOLDERS_REGEX, SEASON_REGEX, VIDEO_EXTENSIONS, VIDEO_DISC_EXTENSIONS, } from "./constants.js";
|
4
5
|
import { db } from "./db.js";
|
5
6
|
import { getEnabledIndexers } from "./indexers.js";
|
6
7
|
import { Label, logger } from "./logger.js";
|
7
8
|
import { getRuntimeConfig } from "./runtimeConfig.js";
|
8
|
-
import {
|
9
|
-
import
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
9
|
+
import { indexerDoesSupportMediaType } from "./torznab.js";
|
10
|
+
import { filesWithExt, getLogString, getMediaType, hasExt, humanReadableDate, MediaType, nMsAgo, } from "./utils.js";
|
11
|
+
const MAX_INT = Number.MAX_SAFE_INTEGER;
|
12
|
+
function logReason(reason, searchee, mediaType) {
|
13
|
+
logger.verbose({
|
14
|
+
label: Label.PREFILTER,
|
15
|
+
message: `${getLogString(searchee)} | MediaType: ${mediaType.toUpperCase()} - was not selected for searching because ${reason}`,
|
16
|
+
});
|
17
|
+
}
|
18
|
+
export function isSingleEpisode(searchee, mediaType) {
|
19
|
+
if (mediaType === MediaType.EPISODE)
|
20
|
+
return true;
|
21
|
+
if (mediaType !== MediaType.ANIME)
|
22
|
+
return false;
|
23
|
+
return filesWithExt(searchee.files, VIDEO_EXTENSIONS).length === 1;
|
24
|
+
// if (m === MediaType.EPISODE) return true;
|
25
|
+
// if (!(m === MediaType.ANIME || m === MediaType.VIDEO)) return false;
|
26
|
+
// if (searchee.files.length === 1 && m === MediaType.ANIME) return true;
|
27
|
+
// if (searchee.files.length > 5) return false; // Probably a pack, allow extra files
|
28
|
+
// To check arrs use: return parsedMedia?.episodes?.length === 1, uncomment above
|
29
|
+
}
|
30
|
+
export function filterByContent(searchee, includeEpisodes) {
|
31
|
+
const { fuzzySizeThreshold, includeNonVideos, includeSingleEpisodes, blockList, } = getRuntimeConfig();
|
32
|
+
const mediaType = getMediaType(searchee);
|
18
33
|
const blockedNote = findBlockedStringInReleaseMaybe(searchee, blockList);
|
19
34
|
if (blockedNote) {
|
20
|
-
logReason(`it matched the blocklist - ("${blockedNote}")
|
35
|
+
logReason(`it matched the blocklist - ("${blockedNote}")`, searchee, mediaType);
|
21
36
|
return false;
|
22
37
|
}
|
23
|
-
|
24
|
-
|
38
|
+
if ((!includeEpisodes || !includeSingleEpisodes) &&
|
39
|
+
searchee.path &&
|
25
40
|
searchee.files.length === 1 &&
|
26
|
-
SEASON_REGEX.test(
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
41
|
+
(SEASON_REGEX.test(basename(dirname(searchee.path))) ||
|
42
|
+
SONARR_SUBFOLDERS_REGEX.test(basename(dirname(searchee.path))))) {
|
43
|
+
logReason("it is a season pack episode", searchee, mediaType);
|
44
|
+
return false;
|
45
|
+
}
|
46
|
+
if (!includeSingleEpisodes &&
|
47
|
+
searchee.label !== Label.ANNOUNCE &&
|
48
|
+
isSingleEpisode(searchee, mediaType)) {
|
49
|
+
logReason("it is a single episode", searchee, mediaType);
|
32
50
|
return false;
|
33
51
|
}
|
34
|
-
|
35
|
-
|
52
|
+
const nonVideoSizeRatio = searchee.files.reduce((acc, cur) => {
|
53
|
+
if (!hasExt([cur], [...VIDEO_EXTENSIONS, ...VIDEO_DISC_EXTENSIONS])) {
|
54
|
+
return acc + cur.length;
|
55
|
+
}
|
56
|
+
return acc;
|
57
|
+
}, 0) / searchee.length;
|
58
|
+
if (!includeNonVideos && nonVideoSizeRatio > fuzzySizeThreshold) {
|
59
|
+
logReason(`nonVideoSizeRatio ${nonVideoSizeRatio} > ${fuzzySizeThreshold} fuzzySizeThreshold`, searchee, mediaType);
|
36
60
|
return false;
|
37
61
|
}
|
38
|
-
|
39
|
-
|
40
|
-
|
62
|
+
if (searchee.path &&
|
63
|
+
statSync(searchee.path).isDirectory() &&
|
64
|
+
ARR_DIR_REGEX.test(basename(searchee.path)) &&
|
65
|
+
nonVideoSizeRatio < 0.02 &&
|
66
|
+
!(searchee.files.length > 1 &&
|
67
|
+
SONARR_SUBFOLDERS_REGEX.test(basename(searchee.path)))) {
|
68
|
+
logReason("it looks like an arr movie/series directory", searchee, mediaType);
|
41
69
|
return false;
|
42
70
|
}
|
43
71
|
return true;
|
44
72
|
}
|
45
73
|
export function findBlockedStringInReleaseMaybe(searchee, blockList) {
|
46
74
|
return blockList.find((blockedStr) => {
|
47
|
-
return (searchee.
|
75
|
+
return (searchee.title.includes(blockedStr) ||
|
76
|
+
(searchee.path &&
|
77
|
+
basename(dirname(searchee.path)).includes(blockedStr)) ||
|
48
78
|
blockedStr === searchee.infoHash);
|
49
79
|
});
|
50
80
|
}
|
51
|
-
|
81
|
+
/**
|
82
|
+
* Filters duplicates from searchees that should be for different candidates,
|
83
|
+
* e.g. all searchees created by cross-seed.
|
84
|
+
* @param searchees - An array of searchees to filter duplicates from.
|
85
|
+
* @returns An array of searchees with duplicates removed, preferring infoHash.
|
86
|
+
*/
|
87
|
+
export function filterDupesByName(searchees) {
|
52
88
|
const duplicateMap = searchees.reduce((acc, cur) => {
|
53
|
-
const entry = acc.get(cur.
|
89
|
+
const entry = acc.get(cur.title);
|
54
90
|
if (entry === undefined) {
|
55
|
-
acc.set(cur.
|
91
|
+
acc.set(cur.title, cur);
|
92
|
+
return acc;
|
93
|
+
}
|
94
|
+
if (cur.files.length > entry.files.length) {
|
95
|
+
acc.set(cur.title, cur);
|
96
|
+
return acc;
|
56
97
|
}
|
57
|
-
|
58
|
-
acc
|
98
|
+
if (cur.files.length < entry.files.length) {
|
99
|
+
return acc;
|
100
|
+
}
|
101
|
+
if (cur.infoHash && !entry.infoHash) {
|
102
|
+
acc.set(cur.title, cur);
|
59
103
|
}
|
60
104
|
return acc;
|
61
105
|
}, new Map());
|
@@ -69,9 +113,39 @@ export function filterDupes(searchees) {
|
|
69
113
|
}
|
70
114
|
return filtered;
|
71
115
|
}
|
116
|
+
/**
|
117
|
+
* Filters duplicates from searchees that are for the same candidates,
|
118
|
+
* e.g. searchees for the same media but different resolutions.
|
119
|
+
* @param searchees - An array of searchees for a specific media.
|
120
|
+
* @returns An array of searchees that are unique from a matching perspective.
|
121
|
+
*/
|
122
|
+
export function filterDupesFromSimilar(searchees) {
|
123
|
+
const filteredSearchees = [];
|
124
|
+
for (const searchee of searchees) {
|
125
|
+
const isDupe = filteredSearchees.some((s) => {
|
126
|
+
if (searchee.length !== s.length)
|
127
|
+
return false;
|
128
|
+
if (searchee.files.length !== s.files.length)
|
129
|
+
return false;
|
130
|
+
const potentialFiles = s.files.map((f) => f.length);
|
131
|
+
return searchee.files.every((file) => {
|
132
|
+
const index = potentialFiles.indexOf(file.length);
|
133
|
+
if (index === -1)
|
134
|
+
return false;
|
135
|
+
potentialFiles.splice(index, 1);
|
136
|
+
return true;
|
137
|
+
});
|
138
|
+
});
|
139
|
+
if (!isDupe) {
|
140
|
+
filteredSearchees.push(searchee);
|
141
|
+
}
|
142
|
+
}
|
143
|
+
return filteredSearchees;
|
144
|
+
}
|
72
145
|
export async function filterTimestamps(searchee) {
|
73
146
|
const { excludeOlder, excludeRecentSearch } = getRuntimeConfig();
|
74
147
|
const enabledIndexers = await getEnabledIndexers();
|
148
|
+
const mediaType = getMediaType(searchee);
|
75
149
|
const timestampDataSql = (await db("searchee")
|
76
150
|
// @ts-expect-error crossJoin supports string
|
77
151
|
.crossJoin("indexer")
|
@@ -79,32 +153,36 @@ export async function filterTimestamps(searchee) {
|
|
79
153
|
"timestamp.indexer_id": "indexer.id",
|
80
154
|
"timestamp.searchee_id": "searchee.id",
|
81
155
|
})
|
82
|
-
.where("searchee.name", searchee.
|
83
|
-
.whereIn("indexer.id", enabledIndexers
|
156
|
+
.where("searchee.name", searchee.title)
|
157
|
+
.whereIn("indexer.id", enabledIndexers
|
158
|
+
.filter((indexer) => indexerDoesSupportMediaType(mediaType, JSON.parse(indexer.categories)))
|
159
|
+
.map((indexer) => indexer.id))
|
84
160
|
.min({
|
85
|
-
|
161
|
+
earliest_first_search: db.raw(`coalesce(timestamp.first_searched, ${MAX_INT})`),
|
162
|
+
})
|
163
|
+
.max({
|
164
|
+
latest_first_search: db.raw(`coalesce(timestamp.first_searched, ${MAX_INT})`),
|
86
165
|
})
|
87
166
|
.min({
|
88
|
-
|
167
|
+
earliest_last_search: db.raw("coalesce(timestamp.last_searched, 0)"),
|
89
168
|
})
|
90
169
|
.first());
|
91
|
-
const {
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
logReason(`its first search timestamp ${humanReadableDate(first_searched_any)} is older than ${ms(excludeOlder, { long: true })} ago`);
|
102
|
-
return false;
|
170
|
+
const { earliest_first_search, latest_first_search, earliest_last_search } = timestampDataSql;
|
171
|
+
const skipBefore = excludeOlder
|
172
|
+
? nMsAgo(excludeOlder)
|
173
|
+
: Number.NEGATIVE_INFINITY;
|
174
|
+
// Don't exclude if new indexer was added
|
175
|
+
if (!latest_first_search || latest_first_search !== MAX_INT) {
|
176
|
+
if (earliest_first_search && earliest_first_search < skipBefore) {
|
177
|
+
logReason(`its first search timestamp ${humanReadableDate(earliest_first_search)} is older than ${ms(excludeOlder, { long: true })} ago`, searchee, mediaType);
|
178
|
+
return false;
|
179
|
+
}
|
103
180
|
}
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
181
|
+
const skipAfter = excludeRecentSearch
|
182
|
+
? nMsAgo(excludeRecentSearch)
|
183
|
+
: Number.POSITIVE_INFINITY;
|
184
|
+
if (earliest_last_search && earliest_last_search > skipAfter) {
|
185
|
+
logReason(`its last search timestamp ${humanReadableDate(earliest_last_search)} is newer than ${ms(excludeRecentSearch, { long: true })} ago`, searchee, mediaType);
|
108
186
|
return false;
|
109
187
|
}
|
110
188
|
return true;
|
package/dist/preFilter.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"preFilter.js","sourceRoot":"","sources":["../src/preFilter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;
|
1
|
+
{"version":3,"file":"preFilter.js","sourceRoot":"","sources":["../src/preFilter.ts"],"names":[],"mappings":"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"}
|
package/dist/pushNotifier.js
CHANGED
@@ -43,16 +43,17 @@ export class PushNotifier {
|
|
43
43
|
}
|
44
44
|
}
|
45
45
|
}
|
46
|
-
export function sendResultsNotification(searchee, results
|
47
|
-
const
|
46
|
+
export function sendResultsNotification(searchee, results) {
|
47
|
+
const source = searchee.label;
|
48
48
|
const notableSuccesses = results.filter(([, , actionResult]) => actionResult === InjectionResult.SUCCESS ||
|
49
49
|
actionResult === SaveResult.SAVED);
|
50
50
|
const failures = results.filter(([, , actionResult]) => actionResult === InjectionResult.FAILURE);
|
51
51
|
if (notableSuccesses.length) {
|
52
|
+
const name = notableSuccesses[0][0].metafile.name;
|
52
53
|
const numTrackers = notableSuccesses.length;
|
53
54
|
const infoHashes = notableSuccesses.map(([assessment]) => assessment.metafile.infoHash);
|
54
55
|
const trackers = notableSuccesses.map(([, tracker]) => tracker);
|
55
|
-
const trackersListStr = formatAsList(trackers);
|
56
|
+
const trackersListStr = formatAsList(trackers, { sort: true });
|
56
57
|
const performedAction = notableSuccesses[0][2] === InjectionResult.SUCCESS
|
57
58
|
? "Injected"
|
58
59
|
: "Saved";
|
@@ -69,10 +70,11 @@ export function sendResultsNotification(searchee, results, source) {
|
|
69
70
|
});
|
70
71
|
}
|
71
72
|
if (failures.length) {
|
73
|
+
const name = failures[0][0].metafile.name;
|
72
74
|
const numTrackers = failures.length;
|
73
75
|
const infoHashes = failures.map(([assessment]) => assessment.metafile.infoHash);
|
74
76
|
const trackers = failures.map(([, tracker]) => tracker);
|
75
|
-
const trackersListStr = formatAsList(trackers);
|
77
|
+
const trackersListStr = formatAsList(trackers, { sort: true });
|
76
78
|
pushNotifier.notify({
|
77
79
|
body: `Failed to inject ${name} from ${numTrackers} trackers: ${trackersListStr}`,
|
78
80
|
extra: {
|
package/dist/pushNotifier.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"pushNotifier.js","sourceRoot":"","sources":["../src/pushNotifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,eAAe,EACf,UAAU,EACV,YAAY,EACZ,UAAU,GACV,MAAM,gBAAgB,CAAC;AAExB,OAAO,
|
1
|
+
{"version":3,"file":"pushNotifier.js","sourceRoot":"","sources":["../src/pushNotifier.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"runtimeConfig.js","sourceRoot":"","sources":["../src/runtimeConfig.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"runtimeConfig.js","sourceRoot":"","sources":["../src/runtimeConfig.ts"],"names":[],"mappings":"AAyCA,IAAI,aAA4B,CAAC;AAEjC,MAAM,UAAU,gBAAgB,CAAC,SAAwB;IACxD,aAAa,GAAG,SAAS,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC/B,OAAO,aAAa,CAAC;AACtB,CAAC"}
|
package/dist/searchee.js
CHANGED
@@ -1,14 +1,29 @@
|
|
1
1
|
import { readdirSync, statSync } from "fs";
|
2
|
-
import { basename,
|
3
|
-
import { VIDEO_EXTENSIONS } from "./constants.js";
|
4
|
-
import { logger } from "./logger.js";
|
2
|
+
import { basename, dirname, join, relative } from "path";
|
3
|
+
import { ANIME_REGEX, ANIME_GROUP_REGEX, ARR_DIR_REGEX, EP_REGEX, RELEASE_GROUP_REGEX, SEASON_REGEX, RES_STRICT_REGEX, parseSource, SONARR_SUBFOLDERS_REGEX, MOVIE_REGEX, VIDEO_EXTENSIONS, } from "./constants.js";
|
4
|
+
import { Label, logger } from "./logger.js";
|
5
5
|
import { resultOf, resultOfErr } from "./Result.js";
|
6
6
|
import { parseTorrentFromFilename } from "./torrent.js";
|
7
|
+
import { createKeyTitle, extractInt, filesWithExt, getLogString, hasExt, isBadTitle, } from "./utils.js";
|
7
8
|
export function hasInfoHash(searchee) {
|
8
9
|
return searchee.infoHash != null;
|
9
10
|
}
|
10
|
-
|
11
|
-
|
11
|
+
var SearcheeSource;
|
12
|
+
(function (SearcheeSource) {
|
13
|
+
SearcheeSource["TORRENT"] = "torrentDir";
|
14
|
+
SearcheeSource["DATA"] = "dataDir";
|
15
|
+
SearcheeSource["VIRTUAL"] = "virtual";
|
16
|
+
})(SearcheeSource || (SearcheeSource = {}));
|
17
|
+
export function getSearcheeSource(searchee) {
|
18
|
+
if (searchee.infoHash) {
|
19
|
+
return SearcheeSource.TORRENT;
|
20
|
+
}
|
21
|
+
else if (searchee.path) {
|
22
|
+
return SearcheeSource.DATA;
|
23
|
+
}
|
24
|
+
else {
|
25
|
+
return SearcheeSource.VIRTUAL;
|
26
|
+
}
|
12
27
|
}
|
13
28
|
function getFileNamesFromRootRec(root, isDirHint) {
|
14
29
|
const isDir = isDirHint !== undefined ? isDirHint : statSync(root).isDirectory();
|
@@ -27,18 +42,75 @@ function getFilesFromDataRoot(rootPath) {
|
|
27
42
|
length: statSync(file).size,
|
28
43
|
}));
|
29
44
|
}
|
45
|
+
/**
|
46
|
+
* Parse title from SXX or Season XX. Return null if no title found.
|
47
|
+
* Also tries to parse titles that are just `Show`, returns `Show` if better not found.
|
48
|
+
* @param name Original name of the searchee/metafile
|
49
|
+
* @param files files in the searchee
|
50
|
+
* @param path if data based, the path to the searchee
|
51
|
+
*/
|
52
|
+
export function parseTitle(name, files, path) {
|
53
|
+
const seasonMatch = name.length < 12 ? name.match(SONARR_SUBFOLDERS_REGEX) : null;
|
54
|
+
if (!seasonMatch &&
|
55
|
+
(name.match(/\d/) || !hasExt(files, VIDEO_EXTENSIONS))) {
|
56
|
+
return name;
|
57
|
+
}
|
58
|
+
const videoFiles = filesWithExt(files, VIDEO_EXTENSIONS);
|
59
|
+
for (const videoFile of videoFiles) {
|
60
|
+
const ep = videoFile.name.match(EP_REGEX);
|
61
|
+
if (ep) {
|
62
|
+
const seasonVal = ep.groups.season ??
|
63
|
+
ep.groups.year ??
|
64
|
+
seasonMatch?.groups.seasonNum;
|
65
|
+
const season = seasonVal ? `S${extractInt(seasonVal)}` : "";
|
66
|
+
const episode = videoFiles.length === 1
|
67
|
+
? `E${ep.groups.episode ? extractInt(ep.groups.episode) : `${ep.groups.month}.${ep.groups.day}`}`
|
68
|
+
: "";
|
69
|
+
if (season.length || episode.length || !seasonMatch) {
|
70
|
+
return `${ep.groups.title} ${season}${episode}`.trim();
|
71
|
+
}
|
72
|
+
}
|
73
|
+
if (path && seasonMatch) {
|
74
|
+
const title = basename(dirname(path)).match(ARR_DIR_REGEX)?.groups
|
75
|
+
?.title;
|
76
|
+
if (title?.length) {
|
77
|
+
return `${title} S${seasonMatch.groups.seasonNum}`;
|
78
|
+
}
|
79
|
+
}
|
80
|
+
const anime = videoFile.name.match(ANIME_REGEX);
|
81
|
+
if (anime) {
|
82
|
+
const season = seasonMatch
|
83
|
+
? `S${seasonMatch.groups.seasonNum}`
|
84
|
+
: "";
|
85
|
+
if (season.length || !seasonMatch) {
|
86
|
+
return `${anime.groups.title} ${season}`.trim();
|
87
|
+
}
|
88
|
+
}
|
89
|
+
}
|
90
|
+
return !seasonMatch ? name : null;
|
91
|
+
}
|
30
92
|
export function createSearcheeFromMetafile(meta) {
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
93
|
+
const title = parseTitle(meta.name, meta.files);
|
94
|
+
if (title) {
|
95
|
+
return resultOf({
|
96
|
+
files: meta.files,
|
97
|
+
infoHash: meta.infoHash,
|
98
|
+
name: meta.name,
|
99
|
+
title,
|
100
|
+
length: meta.length,
|
101
|
+
});
|
102
|
+
}
|
103
|
+
const msg = `Could not find title for ${getLogString(meta)} from child files`;
|
104
|
+
logger.verbose({
|
105
|
+
label: Label.PREFILTER,
|
106
|
+
message: msg,
|
107
|
+
});
|
108
|
+
return resultOfErr(new Error(msg));
|
37
109
|
}
|
38
110
|
export async function createSearcheeFromTorrentFile(filepath) {
|
39
111
|
try {
|
40
112
|
const meta = await parseTorrentFromFilename(filepath);
|
41
|
-
return
|
113
|
+
return createSearcheeFromMetafile(meta);
|
42
114
|
}
|
43
115
|
catch (e) {
|
44
116
|
logger.error(`Failed to parse ${basename(filepath)}`);
|
@@ -46,13 +118,112 @@ export async function createSearcheeFromTorrentFile(filepath) {
|
|
46
118
|
return resultOfErr(e);
|
47
119
|
}
|
48
120
|
}
|
49
|
-
export async function createSearcheeFromPath(
|
50
|
-
const
|
51
|
-
|
52
|
-
files
|
53
|
-
|
54
|
-
|
55
|
-
|
121
|
+
export async function createSearcheeFromPath(root) {
|
122
|
+
const files = getFilesFromDataRoot(root);
|
123
|
+
if (files.length === 0) {
|
124
|
+
const msg = `No files found in ${root}`;
|
125
|
+
logger.verbose({
|
126
|
+
label: Label.PREFILTER,
|
127
|
+
message: msg,
|
128
|
+
});
|
129
|
+
return resultOfErr(new Error(msg));
|
130
|
+
}
|
131
|
+
const totalLength = files.reduce((runningTotal, file) => runningTotal + file.length, 0);
|
132
|
+
const name = basename(root);
|
133
|
+
const title = parseTitle(name, files, root);
|
134
|
+
if (title) {
|
135
|
+
return resultOf({
|
136
|
+
files: files,
|
137
|
+
path: root,
|
138
|
+
name,
|
139
|
+
title,
|
140
|
+
length: totalLength,
|
141
|
+
});
|
142
|
+
}
|
143
|
+
const msg = `Could not find title for ${root} in parent directory or child files`;
|
144
|
+
logger.verbose({
|
145
|
+
label: Label.PREFILTER,
|
146
|
+
message: msg,
|
56
147
|
});
|
148
|
+
return resultOfErr(new Error(msg));
|
149
|
+
}
|
150
|
+
export function getKeyMetaInfo(stem) {
|
151
|
+
const resM = stem.match(RES_STRICT_REGEX)?.groups?.res;
|
152
|
+
const res = resM ? `.${resM}` : "";
|
153
|
+
const sourceM = parseSource(stem);
|
154
|
+
const source = sourceM ? `.${sourceM}` : "";
|
155
|
+
const groupM = stem.match(RELEASE_GROUP_REGEX)?.groups?.group;
|
156
|
+
if (groupM) {
|
157
|
+
return `${res}${source}-${groupM}`.toLowerCase();
|
158
|
+
}
|
159
|
+
const groupAnimeM = stem.match(ANIME_GROUP_REGEX)?.groups?.group;
|
160
|
+
if (groupAnimeM) {
|
161
|
+
return `${res}${source}-${groupAnimeM}`.toLowerCase();
|
162
|
+
}
|
163
|
+
return `${res}${source}`.toLowerCase();
|
164
|
+
}
|
165
|
+
export function getMovieKey(stem) {
|
166
|
+
const match = stem.match(MOVIE_REGEX);
|
167
|
+
if (!match)
|
168
|
+
return null;
|
169
|
+
const keyTitle = createKeyTitle(match.groups.title);
|
170
|
+
if (!keyTitle)
|
171
|
+
return null;
|
172
|
+
const year = extractInt(match.groups.year);
|
173
|
+
const ensembleTitle = `${match.groups.title}.${year}`;
|
174
|
+
return { ensembleTitle, keyTitle, year };
|
175
|
+
}
|
176
|
+
export function getSeasonKey(stem) {
|
177
|
+
const match = stem.match(SEASON_REGEX);
|
178
|
+
if (!match)
|
179
|
+
return null;
|
180
|
+
const keyTitle = createKeyTitle(match.groups.title);
|
181
|
+
if (!keyTitle)
|
182
|
+
return null;
|
183
|
+
const season = `S${extractInt(match.groups.season)}`;
|
184
|
+
const ensembleTitle = `${match.groups.title}.${season}`;
|
185
|
+
return { ensembleTitle, keyTitle, season };
|
186
|
+
}
|
187
|
+
export function getEpisodeKey(stem) {
|
188
|
+
const match = stem.match(EP_REGEX);
|
189
|
+
if (!match)
|
190
|
+
return null;
|
191
|
+
const keyTitle = createKeyTitle(match.groups.title);
|
192
|
+
if (!keyTitle)
|
193
|
+
return null;
|
194
|
+
const season = match.groups.season
|
195
|
+
? `S${extractInt(match.groups.season)}`
|
196
|
+
: match.groups.year
|
197
|
+
? `S${match.groups.year}`
|
198
|
+
: undefined;
|
199
|
+
const ensembleTitle = `${match.groups.title}${season ? `.${season}` : ""}`;
|
200
|
+
const episode = match.groups.episode
|
201
|
+
? extractInt(match.groups.episode)
|
202
|
+
: `${match.groups.month}.${match.groups.day}`;
|
203
|
+
return { ensembleTitle, keyTitle, season, episode };
|
204
|
+
}
|
205
|
+
export function getAnimeKeys(stem) {
|
206
|
+
const match = stem.match(ANIME_REGEX);
|
207
|
+
if (!match)
|
208
|
+
return null;
|
209
|
+
const firstTitle = match.groups.title;
|
210
|
+
const altTitle = match.groups.altTitle;
|
211
|
+
const keyTitles = [];
|
212
|
+
const ensembleTitles = [];
|
213
|
+
for (const title of [firstTitle, altTitle]) {
|
214
|
+
if (!title)
|
215
|
+
continue;
|
216
|
+
if (isBadTitle(title))
|
217
|
+
continue;
|
218
|
+
const keyTitle = createKeyTitle(title);
|
219
|
+
if (!keyTitle)
|
220
|
+
continue;
|
221
|
+
keyTitles.push(keyTitle);
|
222
|
+
ensembleTitles.push(title);
|
223
|
+
}
|
224
|
+
if (keyTitles.length === 0)
|
225
|
+
return null;
|
226
|
+
const release = extractInt(match.groups.release);
|
227
|
+
return { ensembleTitles, keyTitles, release };
|
57
228
|
}
|
58
229
|
//# sourceMappingURL=searchee.js.map
|