oblecto 0.2.9 → 0.3.1

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 (273) hide show
  1. package/Oblecto-Web/dist/web/index.html +24 -3
  2. package/Oblecto-Web/dist/web/static/index-C-JsqHHk.css +1 -0
  3. package/Oblecto-Web/dist/web/static/index-DSZgpOOu.js +576 -0
  4. package/README.md +43 -7
  5. package/dist/bin/oblecto.js +12468 -61
  6. package/dist/index.js +10676 -6
  7. package/package.json +67 -39
  8. package/res/AGENTS.md +8 -0
  9. package/res/config.json +29 -7
  10. package/Oblecto-Web/dist/web/static/css/app.ef5965dbd50e69a7544e200a3f21fbaf.css +0 -1
  11. package/Oblecto-Web/dist/web/static/css/app.ef5965dbd50e69a7544e200a3f21fbaf.css.map +0 -1
  12. package/Oblecto-Web/dist/web/static/js/app.1352bf3c311f0e7ab716.js +0 -7150
  13. package/Oblecto-Web/dist/web/static/js/app.1352bf3c311f0e7ab716.js.map +0 -1
  14. package/Oblecto-Web/dist/web/static/js/manifest.b8404c3e329d75bb51fd.js +0 -154
  15. package/Oblecto-Web/dist/web/static/js/manifest.b8404c3e329d75bb51fd.js.map +0 -1
  16. package/Oblecto-Web/dist/web/static/js/vendor.521641a02e42750ba5a7.js +0 -32455
  17. package/Oblecto-Web/dist/web/static/js/vendor.521641a02e42750ba5a7.js.map +0 -1
  18. package/dist/bin/oblecto.d.ts +0 -2
  19. package/dist/bin/scripts/adduser.d.ts +0 -2
  20. package/dist/bin/scripts/adduser.js +0 -50
  21. package/dist/bin/scripts/changepassword.d.ts +0 -2
  22. package/dist/bin/scripts/changepassword.js +0 -48
  23. package/dist/bin/scripts/deluser.d.ts +0 -2
  24. package/dist/bin/scripts/deluser.js +0 -34
  25. package/dist/bin/scripts/helpers/argumentError.d.ts +0 -2
  26. package/dist/bin/scripts/helpers/argumentError.js +0 -12
  27. package/dist/bin/scripts/helpers/generateAssetDirectories.d.ts +0 -1
  28. package/dist/bin/scripts/helpers/generateAssetDirectories.js +0 -37
  29. package/dist/bin/scripts/init/assets.d.ts +0 -2
  30. package/dist/bin/scripts/init/assets.js +0 -24
  31. package/dist/bin/scripts/init/database.d.ts +0 -2
  32. package/dist/bin/scripts/init/database.js +0 -21
  33. package/dist/bin/scripts/init/general.d.ts +0 -2
  34. package/dist/bin/scripts/init/general.js +0 -54
  35. package/dist/bin/scripts/init/index.d.ts +0 -2
  36. package/dist/bin/scripts/init/index.js +0 -26
  37. package/dist/bin/scripts/removepassword.d.ts +0 -2
  38. package/dist/bin/scripts/removepassword.js +0 -42
  39. package/dist/config.d.ts +0 -7
  40. package/dist/config.js +0 -45
  41. package/dist/core/graphical.d.ts +0 -17
  42. package/dist/core/graphical.js +0 -179
  43. package/dist/core/index.d.ts +0 -9
  44. package/dist/core/index.js +0 -24
  45. package/dist/index.d.ts +0 -1
  46. package/dist/lib/artwork/ArtworkScaler.d.ts +0 -5
  47. package/dist/lib/artwork/ArtworkScaler.js +0 -31
  48. package/dist/lib/artwork/ArtworkUtils.d.ts +0 -8
  49. package/dist/lib/artwork/ArtworkUtils.js +0 -35
  50. package/dist/lib/artwork/movies/AggregateMovieArtworkRetriever.d.ts +0 -8
  51. package/dist/lib/artwork/movies/AggregateMovieArtworkRetriever.js +0 -58
  52. package/dist/lib/artwork/movies/MovieArtworkCollector.d.ts +0 -35
  53. package/dist/lib/artwork/movies/MovieArtworkCollector.js +0 -93
  54. package/dist/lib/artwork/movies/MovieArtworkDownloader.d.ts +0 -8
  55. package/dist/lib/artwork/movies/MovieArtworkDownloader.js +0 -65
  56. package/dist/lib/artwork/movies/artworkRetrievers/FanarttvMovieArtworkRetriever.d.ts +0 -6
  57. package/dist/lib/artwork/movies/artworkRetrievers/FanarttvMovieArtworkRetriever.js +0 -57
  58. package/dist/lib/artwork/movies/artworkRetrievers/TmdbMovieArtworkRetriever.d.ts +0 -6
  59. package/dist/lib/artwork/movies/artworkRetrievers/TmdbMovieArtworkRetriever.js +0 -47
  60. package/dist/lib/artwork/series/AggregateSeriesArtworkRetriever.d.ts +0 -8
  61. package/dist/lib/artwork/series/AggregateSeriesArtworkRetriever.js +0 -58
  62. package/dist/lib/artwork/series/SeriesArtworkCollector.d.ts +0 -37
  63. package/dist/lib/artwork/series/SeriesArtworkCollector.js +0 -95
  64. package/dist/lib/artwork/series/SeriesArtworkDownloader.d.ts +0 -8
  65. package/dist/lib/artwork/series/SeriesArtworkDownloader.js +0 -62
  66. package/dist/lib/artwork/series/artworkRetrievers/FanarttvSeriesArtworkRetriever.d.ts +0 -6
  67. package/dist/lib/artwork/series/artworkRetrievers/FanarttvSeriesArtworkRetriever.js +0 -44
  68. package/dist/lib/artwork/series/artworkRetrievers/TmdbSeriesArtworkRetriever.d.ts +0 -16
  69. package/dist/lib/artwork/series/artworkRetrievers/TmdbSeriesArtworkRetriever.js +0 -64
  70. package/dist/lib/artwork/series/artworkRetrievers/TvdbSeriesArtworkRetriever.d.ts +0 -16
  71. package/dist/lib/artwork/series/artworkRetrievers/TvdbSeriesArtworkRetriever.js +0 -51
  72. package/dist/lib/cleaners/FileCleaner.d.ts +0 -6
  73. package/dist/lib/cleaners/FileCleaner.js +0 -68
  74. package/dist/lib/cleaners/MovieCleaner.d.ts +0 -8
  75. package/dist/lib/cleaners/MovieCleaner.js +0 -48
  76. package/dist/lib/cleaners/SeriesCleaner.d.ts +0 -10
  77. package/dist/lib/cleaners/SeriesCleaner.js +0 -88
  78. package/dist/lib/common/AggregateIdentifier.d.ts +0 -9
  79. package/dist/lib/common/AggregateIdentifier.js +0 -57
  80. package/dist/lib/common/AggregateUpdateRetriever.d.ts +0 -5
  81. package/dist/lib/common/AggregateUpdateRetriever.js +0 -46
  82. package/dist/lib/downloader/index.d.ts +0 -6
  83. package/dist/lib/downloader/index.js +0 -83
  84. package/dist/lib/errors/DebugExtendableError.d.ts +0 -5
  85. package/dist/lib/errors/DebugExtendableError.js +0 -20
  86. package/dist/lib/errors/ExtendableError.d.ts +0 -3
  87. package/dist/lib/errors/ExtendableError.js +0 -22
  88. package/dist/lib/errors/FileExistsError.d.ts +0 -4
  89. package/dist/lib/errors/FileExistsError.js +0 -14
  90. package/dist/lib/errors/IdentificationError.d.ts +0 -4
  91. package/dist/lib/errors/IdentificationError.js +0 -14
  92. package/dist/lib/errors/InfoExtendableError.d.ts +0 -5
  93. package/dist/lib/errors/InfoExtendableError.js +0 -20
  94. package/dist/lib/errors/VideoAnalysisError.d.ts +0 -4
  95. package/dist/lib/errors/VideoAnalysisError.js +0 -14
  96. package/dist/lib/errors/VideoIdentificationError.d.ts +0 -4
  97. package/dist/lib/errors/VideoIdentificationError.js +0 -9
  98. package/dist/lib/errors/WarnExtendableError.d.ts +0 -5
  99. package/dist/lib/errors/WarnExtendableError.js +0 -20
  100. package/dist/lib/federation/client/FederationClient.d.ts +0 -31
  101. package/dist/lib/federation/client/FederationClient.js +0 -127
  102. package/dist/lib/federation/client/FederationClientController.d.ts +0 -9
  103. package/dist/lib/federation/client/FederationClientController.js +0 -45
  104. package/dist/lib/federation/client/FederationDataClient.d.ts +0 -11
  105. package/dist/lib/federation/client/FederationDataClient.js +0 -56
  106. package/dist/lib/federation/client/FederationMediaClient.d.ts +0 -12
  107. package/dist/lib/federation/client/FederationMediaClient.js +0 -70
  108. package/dist/lib/federation/server/FederationController.d.ts +0 -10
  109. package/dist/lib/federation/server/FederationController.js +0 -32
  110. package/dist/lib/federation/server/FederationDataServer.d.ts +0 -4
  111. package/dist/lib/federation/server/FederationDataServer.js +0 -22
  112. package/dist/lib/federation/server/FederationDataServerConnection.d.ts +0 -8
  113. package/dist/lib/federation/server/FederationDataServerConnection.js +0 -96
  114. package/dist/lib/federation/server/FederationMediaServer.d.ts +0 -4
  115. package/dist/lib/federation/server/FederationMediaServer.js +0 -22
  116. package/dist/lib/federation/server/FederationMediaServerConnection.d.ts +0 -11
  117. package/dist/lib/federation/server/FederationMediaServerConnection.js +0 -83
  118. package/dist/lib/federation/server/FederationServer.d.ts +0 -11
  119. package/dist/lib/federation/server/FederationServer.js +0 -40
  120. package/dist/lib/federation/server/FederationServerConnection.d.ts +0 -18
  121. package/dist/lib/federation/server/FederationServerConnection.js +0 -97
  122. package/dist/lib/federationindexer/FederationEpisodeIndexer.d.ts +0 -5
  123. package/dist/lib/federationindexer/FederationEpisodeIndexer.js +0 -65
  124. package/dist/lib/federationindexer/FederationMovieIndexer.d.ts +0 -5
  125. package/dist/lib/federationindexer/FederationMovieIndexer.js +0 -48
  126. package/dist/lib/federationv2/federationController/index.js +0 -13
  127. package/dist/lib/indexers/MediaIdentifier.d.ts +0 -5
  128. package/dist/lib/indexers/MediaIdentifier.js +0 -15
  129. package/dist/lib/indexers/files/FileIndexer.d.ts +0 -10
  130. package/dist/lib/indexers/files/FileIndexer.js +0 -103
  131. package/dist/lib/indexers/movies/MovieCollector.d.ts +0 -25
  132. package/dist/lib/indexers/movies/MovieCollector.js +0 -65
  133. package/dist/lib/indexers/movies/MovieIdentifier.d.ts +0 -10
  134. package/dist/lib/indexers/movies/MovieIdentifier.js +0 -22
  135. package/dist/lib/indexers/movies/MovieIndexer.d.ts +0 -11
  136. package/dist/lib/indexers/movies/MovieIndexer.js +0 -64
  137. package/dist/lib/indexers/movies/identifiers/TmdbMovieidentifier.d.ts +0 -4
  138. package/dist/lib/indexers/movies/identifiers/TmdbMovieidentifier.js +0 -52
  139. package/dist/lib/indexers/series/EpisodeIdentifier.d.ts +0 -12
  140. package/dist/lib/indexers/series/EpisodeIdentifier.js +0 -25
  141. package/dist/lib/indexers/series/SeriesCollector.d.ts +0 -25
  142. package/dist/lib/indexers/series/SeriesCollector.js +0 -69
  143. package/dist/lib/indexers/series/SeriesIdentifer.d.ts +0 -11
  144. package/dist/lib/indexers/series/SeriesIdentifer.js +0 -24
  145. package/dist/lib/indexers/series/SeriesIndexer.d.ts +0 -11
  146. package/dist/lib/indexers/series/SeriesIndexer.js +0 -140
  147. package/dist/lib/indexers/series/identifiers/TmdbEpisodeIdentifier.d.ts +0 -4
  148. package/dist/lib/indexers/series/identifiers/TmdbEpisodeIdentifier.js +0 -48
  149. package/dist/lib/indexers/series/identifiers/TmdbSeriesIdentifier.d.ts +0 -6
  150. package/dist/lib/indexers/series/identifiers/TmdbSeriesIdentifier.js +0 -90
  151. package/dist/lib/indexers/series/identifiers/TvdbEpisodeIdentifier.d.ts +0 -7
  152. package/dist/lib/indexers/series/identifiers/TvdbEpisodeIdentifier.js +0 -87
  153. package/dist/lib/indexers/series/identifiers/TvdbSeriesIdentifier.d.ts +0 -10
  154. package/dist/lib/indexers/series/identifiers/TvdbSeriesIdentifier.js +0 -82
  155. package/dist/lib/oblecto/index.d.ts +0 -68
  156. package/dist/lib/oblecto/index.js +0 -125
  157. package/dist/lib/queue/index.d.ts +0 -32
  158. package/dist/lib/queue/index.js +0 -96
  159. package/dist/lib/realtime/RealtimeClient.d.ts +0 -27
  160. package/dist/lib/realtime/RealtimeClient.js +0 -137
  161. package/dist/lib/realtime/RealtimeController.d.ts +0 -12
  162. package/dist/lib/realtime/RealtimeController.js +0 -50
  163. package/dist/lib/redisQueue/index.js +0 -109
  164. package/dist/lib/sets/tv/MovieSetCollector.d.ts +0 -6
  165. package/dist/lib/sets/tv/MovieSetCollector.js +0 -49
  166. package/dist/lib/streamSessions/StreamSession.d.ts +0 -41
  167. package/dist/lib/streamSessions/StreamSession.js +0 -146
  168. package/dist/lib/streamSessions/StreamSessionController.d.ts +0 -19
  169. package/dist/lib/streamSessions/StreamSessionController.js +0 -78
  170. package/dist/lib/streamSessions/StreamSessionTypes/DirectHttpStreamSession.d.ts +0 -5
  171. package/dist/lib/streamSessions/StreamSessionTypes/DirectHttpStreamSession.js +0 -116
  172. package/dist/lib/streamSessions/StreamSessionTypes/DirectStreamSession.d.ts +0 -5
  173. package/dist/lib/streamSessions/StreamSessionTypes/DirectStreamSession.js +0 -41
  174. package/dist/lib/streamSessions/StreamSessionTypes/HLSStreamer.d.ts +0 -15
  175. package/dist/lib/streamSessions/StreamSessionTypes/HLSStreamer.js +0 -148
  176. package/dist/lib/streamSessions/StreamSessionTypes/RecodeFederationStreamSession.d.ts +0 -9
  177. package/dist/lib/streamSessions/StreamSessionTypes/RecodeFederationStreamSession.js +0 -72
  178. package/dist/lib/streamSessions/StreamSessionTypes/RecodeStreamSession.d.ts +0 -6
  179. package/dist/lib/streamSessions/StreamSessionTypes/RecodeStreamSession.js +0 -96
  180. package/dist/lib/updaters/files/FileUpdateCollector.d.ts +0 -20
  181. package/dist/lib/updaters/files/FileUpdateCollector.js +0 -44
  182. package/dist/lib/updaters/files/FileUpdater.d.ts +0 -49
  183. package/dist/lib/updaters/files/FileUpdater.js +0 -194
  184. package/dist/lib/updaters/movies/MovieUpdateCollector.d.ts +0 -20
  185. package/dist/lib/updaters/movies/MovieUpdateCollector.js +0 -48
  186. package/dist/lib/updaters/movies/MovieUpdater.d.ts +0 -12
  187. package/dist/lib/updaters/movies/MovieUpdater.js +0 -49
  188. package/dist/lib/updaters/movies/informationRetrievers/TmdbMovieRetriever.d.ts +0 -20
  189. package/dist/lib/updaters/movies/informationRetrievers/TmdbMovieRetriever.js +0 -45
  190. package/dist/lib/updaters/series/SeriesUpdateCollector.d.ts +0 -37
  191. package/dist/lib/updaters/series/SeriesUpdateCollector.js +0 -79
  192. package/dist/lib/updaters/series/SeriesUpdater.d.ts +0 -22
  193. package/dist/lib/updaters/series/SeriesUpdater.js +0 -84
  194. package/dist/lib/updaters/series/informationRetrievers/TmdbEpisodeRetriever.d.ts +0 -11
  195. package/dist/lib/updaters/series/informationRetrievers/TmdbEpisodeRetriever.js +0 -70
  196. package/dist/lib/updaters/series/informationRetrievers/TmdbSeriesRetriever.d.ts +0 -21
  197. package/dist/lib/updaters/series/informationRetrievers/TmdbSeriesRetriever.js +0 -68
  198. package/dist/lib/updaters/series/informationRetrievers/TvdbEpisodeRetriever.d.ts +0 -5
  199. package/dist/lib/updaters/series/informationRetrievers/TvdbEpisodeRetriever.js +0 -38
  200. package/dist/lib/updaters/series/informationRetrievers/TvdbSeriesRetriever.d.ts +0 -21
  201. package/dist/lib/updaters/series/informationRetrievers/TvdbSeriesRetriever.js +0 -50
  202. package/dist/models/episode.d.ts +0 -76
  203. package/dist/models/episode.js +0 -62
  204. package/dist/models/episodeFiles.d.ts +0 -5
  205. package/dist/models/episodeFiles.js +0 -14
  206. package/dist/models/file.d.ts +0 -26
  207. package/dist/models/file.js +0 -32
  208. package/dist/models/movie.d.ts +0 -30
  209. package/dist/models/movie.js +0 -36
  210. package/dist/models/movieFiles.d.ts +0 -5
  211. package/dist/models/movieFiles.js +0 -14
  212. package/dist/models/movieSet.d.ts +0 -20
  213. package/dist/models/movieSet.js +0 -26
  214. package/dist/models/series.d.ts +0 -59
  215. package/dist/models/series.js +0 -50
  216. package/dist/models/seriesSet.d.ts +0 -9
  217. package/dist/models/seriesSet.js +0 -17
  218. package/dist/models/stream.d.ts +0 -73
  219. package/dist/models/stream.js +0 -81
  220. package/dist/models/trackEpisode.d.ts +0 -9
  221. package/dist/models/trackEpisode.js +0 -17
  222. package/dist/models/trackMovie.d.ts +0 -9
  223. package/dist/models/trackMovie.js +0 -17
  224. package/dist/models/user.d.ts +0 -19
  225. package/dist/models/user.js +0 -26
  226. package/dist/submodules/REST/index.d.ts +0 -9
  227. package/dist/submodules/REST/index.js +0 -59
  228. package/dist/submodules/REST/middleware/auth.d.ts +0 -5
  229. package/dist/submodules/REST/middleware/auth.js +0 -28
  230. package/dist/submodules/REST/routes/auth.d.ts +0 -2
  231. package/dist/submodules/REST/routes/auth.js +0 -48
  232. package/dist/submodules/REST/routes/clients.d.ts +0 -2
  233. package/dist/submodules/REST/routes/clients.js +0 -54
  234. package/dist/submodules/REST/routes/episodes.d.ts +0 -2
  235. package/dist/submodules/REST/routes/episodes.js +0 -275
  236. package/dist/submodules/REST/routes/files.d.ts +0 -2
  237. package/dist/submodules/REST/routes/files.js +0 -53
  238. package/dist/submodules/REST/routes/index.d.ts +0 -2
  239. package/dist/submodules/REST/routes/index.js +0 -49
  240. package/dist/submodules/REST/routes/movies.d.ts +0 -2
  241. package/dist/submodules/REST/routes/movies.js +0 -303
  242. package/dist/submodules/REST/routes/sets.d.ts +0 -2
  243. package/dist/submodules/REST/routes/sets.js +0 -35
  244. package/dist/submodules/REST/routes/settings/index.d.ts +0 -2
  245. package/dist/submodules/REST/routes/settings/index.js +0 -22
  246. package/dist/submodules/REST/routes/settings/maintenance.d.ts +0 -2
  247. package/dist/submodules/REST/routes/settings/maintenance.js +0 -87
  248. package/dist/submodules/REST/routes/settings/misc.d.ts +0 -2
  249. package/dist/submodules/REST/routes/settings/misc.js +0 -38
  250. package/dist/submodules/REST/routes/settings/sources.d.ts +0 -2
  251. package/dist/submodules/REST/routes/settings/sources.js +0 -61
  252. package/dist/submodules/REST/routes/streaming.js +0 -91
  253. package/dist/submodules/REST/routes/tvshows.d.ts +0 -2
  254. package/dist/submodules/REST/routes/tvshows.js +0 -137
  255. package/dist/submodules/REST/routes/users.d.ts +0 -2
  256. package/dist/submodules/REST/routes/users.js +0 -107
  257. package/dist/submodules/REST/routes/web.d.ts +0 -2
  258. package/dist/submodules/REST/routes/web.js +0 -43
  259. package/dist/submodules/axiosTimeout.d.ts +0 -1
  260. package/dist/submodules/axiosTimeout.js +0 -31
  261. package/dist/submodules/database.d.ts +0 -1
  262. package/dist/submodules/database.js +0 -180
  263. package/dist/submodules/ffmpeg.d.ts +0 -1
  264. package/dist/submodules/ffmpeg.js +0 -23
  265. package/dist/submodules/ffprobe.d.ts +0 -1
  266. package/dist/submodules/ffprobe.js +0 -22
  267. package/dist/submodules/guessit.d.ts +0 -5
  268. package/dist/submodules/guessit.js +0 -48
  269. package/dist/submodules/logger/index.d.ts +0 -7
  270. package/dist/submodules/logger/index.js +0 -43
  271. package/dist/submodules/promiseTimeout.d.ts +0 -1
  272. package/dist/submodules/promiseTimeout.js +0 -28
  273. package/dist/submodules/zeroconf.js +0 -19
@@ -1,24 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _oblecto = _interopRequireDefault(require("../lib/oblecto"));
9
-
10
- var _config = _interopRequireDefault(require("../config"));
11
-
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
-
14
- var _default = {
15
- oblecto: new _oblecto.default(_config.default),
16
-
17
- start() {},
18
-
19
- close() {
20
- this.oblecto.close();
21
- }
22
-
23
- };
24
- exports.default = _default;
package/dist/index.d.ts DELETED
@@ -1 +0,0 @@
1
- export {};
@@ -1,5 +0,0 @@
1
- export default class ImageScaler {
2
- static rescaleImage(from: any, to: any, size: any): Promise<void>;
3
- constructor(oblecto: any);
4
- oblecto: any;
5
- }
@@ -1,31 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _sharp = _interopRequireDefault(require("sharp"));
9
-
10
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
-
12
- _sharp.default.cache(false);
13
-
14
- class ImageScaler {
15
- constructor(oblecto) {
16
- this.oblecto = oblecto;
17
- this.oblecto.queue.registerJob('rescaleImage', async job => {
18
- await ImageScaler.rescaleImage(job.from, job.to, {
19
- width: job.width,
20
- height: job.height
21
- });
22
- });
23
- }
24
-
25
- static async rescaleImage(from, to, size) {
26
- await (0, _sharp.default)(from).resize(size.width, size.height).toFile(to);
27
- }
28
-
29
- }
30
-
31
- exports.default = ImageScaler;
@@ -1,8 +0,0 @@
1
- export default class ArtworkUtils {
2
- constructor(oblecto: any);
3
- oblecto: any;
4
- episodeBannerPath(episode: any, size: any): string;
5
- seriesPosterPath(series: any, size: any): string;
6
- moviePosterPath(movie: any, size: any): string;
7
- movieFanartPath(movie: any, size: any): string;
8
- }
@@ -1,35 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- class ArtworkUtils {
9
- constructor(oblecto) {
10
- this.oblecto = oblecto;
11
- }
12
-
13
- episodeBannerPath(episode, size) {
14
- if (size && this.oblecto.config.artwork.banner[size]) return `${this.oblecto.config.assets.episodeBannerLocation}/${size}/${episode.id}.jpg`;
15
- return `${this.oblecto.config.assets.episodeBannerLocation}/original/${episode.id}.jpg`;
16
- }
17
-
18
- seriesPosterPath(series, size) {
19
- if (size && this.oblecto.config.artwork.poster[size]) return `${this.oblecto.config.assets.showPosterLocation}/${size}/${series.id}.jpg`;
20
- return `${this.oblecto.config.assets.showPosterLocation}/original/${series.id}.jpg`;
21
- }
22
-
23
- moviePosterPath(movie, size) {
24
- if (size && this.oblecto.config.artwork.poster[size]) return `${this.oblecto.config.assets.moviePosterLocation}/${size}/${movie.id}.jpg`;
25
- return `${this.oblecto.config.assets.moviePosterLocation}/original/${movie.id}.jpg`;
26
- }
27
-
28
- movieFanartPath(movie, size) {
29
- if (size && this.oblecto.config.artwork.fanart[size]) return `${this.oblecto.config.assets.movieFanartLocation}/${size}/${movie.id}.jpg`;
30
- return `${this.oblecto.config.assets.movieFanartLocation}/original/${movie.id}.jpg`;
31
- }
32
-
33
- }
34
-
35
- exports.default = ArtworkUtils;
@@ -1,8 +0,0 @@
1
- export default class AggregateMovieArtworkRetriever {
2
- constructor(oblecto: any);
3
- oblecto: any;
4
- retrievers: any[];
5
- loadRetriever(retriever: any): void;
6
- retrieveFanart(movie: any): Promise<void>;
7
- retrievePoster(movie: any): Promise<void>;
8
- }
@@ -1,58 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _WarnExtendableError = _interopRequireDefault(require("../../errors/WarnExtendableError"));
9
-
10
- var _logger = _interopRequireDefault(require("../../../submodules/logger"));
11
-
12
- var _downloader = _interopRequireDefault(require("../../downloader"));
13
-
14
- var _DebugExtendableError = _interopRequireDefault(require("../../errors/DebugExtendableError"));
15
-
16
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
-
18
- class AggregateMovieArtworkRetriever {
19
- constructor(oblecto) {
20
- this.oblecto = oblecto;
21
- this.retrievers = [];
22
- }
23
-
24
- loadRetriever(retriever) {
25
- this.retrievers.push(retriever);
26
- }
27
-
28
- async retrieveFanart(movie) {
29
- for (let retriever of this.retrievers) {
30
- try {
31
- let urls = await retriever.retrieveFanart(movie);
32
- if (urls.length === 0) throw new _DebugExtendableError.default('No URLs found');
33
- return _downloader.default.attemptDownload(urls, this.oblecto.artworkUtils.movieFanartPath(movie));
34
- } catch (e) {
35
- _logger.default.log(e);
36
- }
37
- }
38
-
39
- throw new _WarnExtendableError.default(`No fanart found for movie ${movie.movieName}`);
40
- }
41
-
42
- async retrievePoster(movie) {
43
- for (let retriever of this.retrievers) {
44
- try {
45
- let urls = await retriever.retrievePoster(movie);
46
- if (urls.length === 0) throw new _DebugExtendableError.default('No URLs found');
47
- return _downloader.default.attemptDownload(urls, this.oblecto.artworkUtils.moviePosterPath(movie));
48
- } catch (e) {
49
- _logger.default.log(e);
50
- }
51
- }
52
-
53
- throw new _WarnExtendableError.default(`No poster found for movie ${movie.movieName}`);
54
- }
55
-
56
- }
57
-
58
- exports.default = AggregateMovieArtworkRetriever;
@@ -1,35 +0,0 @@
1
- export default class MovieArtworkCollector {
2
- /**
3
- *
4
- * @param {Oblecto} oblecto
5
- */
6
- constructor(oblecto: any);
7
- oblecto: any;
8
- /**
9
- *
10
- * @param movie - Movie for which to download fanart for
11
- * @returns {Promise<void>}
12
- */
13
- collectArtworkMovieFanart(movie: any): Promise<void>;
14
- /**
15
- *
16
- * @param movie - Movie for which to download poster for
17
- * @returns {Promise<void>}
18
- */
19
- collectArtworkMoviePoster(movie: any): Promise<void>;
20
- /**
21
- *
22
- * @returns {Promise<void>}
23
- */
24
- collectAllMovieFanart(): Promise<void>;
25
- /**
26
- *
27
- * @returns {Promise<void>}
28
- */
29
- collectAllMoviePosters(): Promise<void>;
30
- /**
31
- *
32
- * @returns {Promise<void>}
33
- */
34
- collectAll(): Promise<void>;
35
- }
@@ -1,93 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _fs = require("fs");
9
-
10
- var _movie = require("../../../models/movie");
11
-
12
- class MovieArtworkCollector {
13
- /**
14
- *
15
- * @param {Oblecto} oblecto
16
- */
17
- constructor(oblecto) {
18
- this.oblecto = oblecto;
19
- }
20
- /**
21
- *
22
- * @param movie - Movie for which to download fanart for
23
- * @returns {Promise<void>}
24
- */
25
-
26
-
27
- async collectArtworkMovieFanart(movie) {
28
- let stat;
29
-
30
- try {
31
- stat = await _fs.promises.stat(this.oblecto.artworkUtils.movieFanartPath(movie));
32
- } catch (e) {}
33
-
34
- if (stat) return;
35
- this.oblecto.queue.queueJob('downloadMovieFanart', movie);
36
- }
37
- /**
38
- *
39
- * @param movie - Movie for which to download poster for
40
- * @returns {Promise<void>}
41
- */
42
-
43
-
44
- async collectArtworkMoviePoster(movie) {
45
- let stat;
46
-
47
- try {
48
- stat = await _fs.promises.stat(this.oblecto.artworkUtils.moviePosterPath(movie));
49
- } catch (e) {}
50
-
51
- if (stat) return;
52
- this.oblecto.queue.queueJob('downloadMoviePoster', movie);
53
- }
54
- /**
55
- *
56
- * @returns {Promise<void>}
57
- */
58
-
59
-
60
- async collectAllMovieFanart() {
61
- let movies = await _movie.Movie.findAll();
62
-
63
- for (let movie of movies) {
64
- await this.collectArtworkMovieFanart(movie);
65
- }
66
- }
67
- /**
68
- *
69
- * @returns {Promise<void>}
70
- */
71
-
72
-
73
- async collectAllMoviePosters() {
74
- let movies = await _movie.Movie.findAll();
75
-
76
- for (let movie of movies) {
77
- await this.collectArtworkMoviePoster(movie);
78
- }
79
- }
80
- /**
81
- *
82
- * @returns {Promise<void>}
83
- */
84
-
85
-
86
- async collectAll() {
87
- await this.collectAllMoviePosters();
88
- await this.collectAllMovieFanart();
89
- }
90
-
91
- }
92
-
93
- exports.default = MovieArtworkCollector;
@@ -1,8 +0,0 @@
1
- export default class MovieArtworkDownloader {
2
- constructor(oblecto: any);
3
- oblecto: any;
4
- movieArtworkRetriever: AggregateMovieArtworkRetriever;
5
- downloadMoviePoster(movie: any): Promise<void>;
6
- downloadMovieFanart(movie: any): Promise<void>;
7
- }
8
- import AggregateMovieArtworkRetriever from "./AggregateMovieArtworkRetriever";
@@ -1,65 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _downloader = _interopRequireDefault(require("../../downloader"));
9
-
10
- var _TmdbMovieArtworkRetriever = _interopRequireDefault(require("./artworkRetrievers/TmdbMovieArtworkRetriever"));
11
-
12
- var _FanarttvMovieArtworkRetriever = _interopRequireDefault(require("./artworkRetrievers/FanarttvMovieArtworkRetriever"));
13
-
14
- var _AggregateMovieArtworkRetriever = _interopRequireDefault(require("./AggregateMovieArtworkRetriever"));
15
-
16
- var _logger = _interopRequireDefault(require("../../../submodules/logger"));
17
-
18
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
-
20
- class MovieArtworkDownloader {
21
- constructor(oblecto) {
22
- this.oblecto = oblecto;
23
- this.movieArtworkRetriever = new _AggregateMovieArtworkRetriever.default(this.oblecto);
24
- this.movieArtworkRetriever.loadRetriever(new _FanarttvMovieArtworkRetriever.default(this.oblecto));
25
- this.movieArtworkRetriever.loadRetriever(new _TmdbMovieArtworkRetriever.default(this.oblecto)); // Register task availability to Oblecto queue
26
-
27
- this.oblecto.queue.registerJob('downloadMoviePoster', async job => {
28
- await this.downloadMoviePoster(job);
29
- });
30
- this.oblecto.queue.registerJob('downloadMovieFanart', async job => {
31
- await this.downloadMovieFanart(job);
32
- });
33
- }
34
-
35
- async downloadMoviePoster(movie) {
36
- await this.movieArtworkRetriever.retrievePoster(movie);
37
-
38
- _logger.default.log('DEBUG', `Poster for ${movie.movieName} downloaded`);
39
-
40
- for (let size of Object.keys(this.oblecto.config.artwork.poster)) {
41
- this.oblecto.queue.pushJob('rescaleImage', {
42
- from: this.oblecto.artworkUtils.moviePosterPath(movie),
43
- to: this.oblecto.artworkUtils.moviePosterPath(movie, size),
44
- width: this.oblecto.config.artwork.poster[size]
45
- });
46
- }
47
- }
48
-
49
- async downloadMovieFanart(movie) {
50
- await this.movieArtworkRetriever.retrieveFanart(movie);
51
-
52
- _logger.default.log('DEBUG', `Fanart for ${movie.movieName} downloaded`);
53
-
54
- for (let size of Object.keys(this.oblecto.config.artwork.fanart)) {
55
- this.oblecto.queue.pushJob('rescaleImage', {
56
- from: this.oblecto.artworkUtils.movieFanartPath(movie),
57
- to: this.oblecto.artworkUtils.movieFanartPath(movie, size),
58
- width: this.oblecto.config.artwork.fanart[size]
59
- });
60
- }
61
- }
62
-
63
- }
64
-
65
- exports.default = MovieArtworkDownloader;
@@ -1,6 +0,0 @@
1
- export default class FanarttvMovieArtworkRetriever {
2
- constructor(oblecto: any);
3
- oblecto: any;
4
- retrieveFanart(movie: any): Promise<any[]>;
5
- retrievePoster(movie: any): Promise<any[]>;
6
- }
@@ -1,57 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _DebugExtendableError = _interopRequireDefault(require("../../../errors/DebugExtendableError"));
9
-
10
- var _axiosTimeout = _interopRequireDefault(require("../../../../submodules/axiosTimeout"));
11
-
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
-
14
- class FanarttvMovieArtworkRetriever {
15
- constructor(oblecto) {
16
- this.oblecto = oblecto;
17
- }
18
-
19
- async retrieveFanart(movie) {
20
- if (!(movie.tmdbid || movie.imdbid)) throw new _DebugExtendableError.default(`No tmdbid or imdb id found for movie ${movie.movieName}`);
21
- let {
22
- data
23
- } = await (0, _axiosTimeout.default)({
24
- method: 'get',
25
- url: `http://webservice.fanart.tv/v3/movies/${movie.tmdbid || movie.imdbid}?api_key=${this.oblecto.config['fanart.tv'].key}`
26
- });
27
- if (!data.moviebackground) return [];
28
- let urls = [];
29
-
30
- for (let image of data.moviebackground) {
31
- urls.push(image.url);
32
- }
33
-
34
- return urls;
35
- }
36
-
37
- async retrievePoster(movie) {
38
- if (!(movie.tmdbid || movie.imdbid)) throw new _DebugExtendableError.default(`No tmdbid or imdb id found for movie ${movie.movieName}`);
39
- let {
40
- data
41
- } = await (0, _axiosTimeout.default)({
42
- method: 'get',
43
- url: `http://webservice.fanart.tv/v3/movies/${movie.tmdbid || movie.imdbid}?api_key=${this.oblecto.config['fanart.tv'].key}`
44
- });
45
- if (!data.movieposter) return [];
46
- let urls = [];
47
-
48
- for (let image of data.movieposter) {
49
- urls.push(image.url);
50
- }
51
-
52
- return urls;
53
- }
54
-
55
- }
56
-
57
- exports.default = FanarttvMovieArtworkRetriever;
@@ -1,6 +0,0 @@
1
- export default class TmdbMovieArtworkRetriever {
2
- constructor(oblecto: any);
3
- oblecto: any;
4
- retrieveFanart(movie: any): Promise<string[]>;
5
- retrievePoster(movie: any): Promise<string[]>;
6
- }
@@ -1,47 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _DebugExtendableError = _interopRequireDefault(require("../../../errors/DebugExtendableError"));
9
-
10
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
-
12
- class TmdbMovieArtworkRetriever {
13
- constructor(oblecto) {
14
- this.oblecto = oblecto;
15
- }
16
-
17
- async retrieveFanart(movie) {
18
- if (!movie.tmdbid) throw new _DebugExtendableError.default(`No tmdbid id found for movie ${movie.movieName}`);
19
- let data = await this.oblecto.tmdb.movieImages({
20
- id: movie.tmdbid
21
- });
22
- let urls = [];
23
-
24
- for (let image of data.backdrops) {
25
- urls.push(`https://image.tmdb.org/t/p/original${image['file_path']}`);
26
- }
27
-
28
- return urls;
29
- }
30
-
31
- async retrievePoster(movie) {
32
- if (!movie.tmdbid) throw new _DebugExtendableError.default(`No tmdbid id found for movie ${movie.movieName}`);
33
- let data = await this.oblecto.tmdb.movieImages({
34
- id: movie.tmdbid
35
- });
36
- let urls = [];
37
-
38
- for (let image of data.posters) {
39
- urls.push(`https://image.tmdb.org/t/p/original${image['file_path']}`);
40
- }
41
-
42
- return urls;
43
- }
44
-
45
- }
46
-
47
- exports.default = TmdbMovieArtworkRetriever;
@@ -1,8 +0,0 @@
1
- export default class AggregateSeriesArtworkRetriever {
2
- constructor(oblecto: any);
3
- oblecto: any;
4
- retrievers: any[];
5
- loadRetriever(retriever: any): void;
6
- retrieveEpisodeBanner(episode: any): Promise<void>;
7
- retrieveSeriesPoster(series: any): Promise<void>;
8
- }
@@ -1,58 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _WarnExtendableError = _interopRequireDefault(require("../../errors/WarnExtendableError"));
9
-
10
- var _logger = _interopRequireDefault(require("../../../submodules/logger"));
11
-
12
- var _DebugExtendableError = _interopRequireDefault(require("../../errors/DebugExtendableError"));
13
-
14
- var _downloader = _interopRequireDefault(require("../../downloader"));
15
-
16
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
-
18
- class AggregateSeriesArtworkRetriever {
19
- constructor(oblecto) {
20
- this.oblecto = oblecto;
21
- this.retrievers = [];
22
- }
23
-
24
- loadRetriever(retriever) {
25
- this.retrievers.push(retriever);
26
- }
27
-
28
- async retrieveEpisodeBanner(episode) {
29
- for (let retriever of this.retrievers) {
30
- try {
31
- let urls = await retriever.retrieveEpisodeBanner(episode);
32
- if (urls.length === 0) throw new _DebugExtendableError.default('No URLs found');
33
- return _downloader.default.attemptDownload(urls, this.oblecto.artworkUtils.episodeBannerPath(episode));
34
- } catch (e) {
35
- _logger.default.log(e);
36
- }
37
- }
38
-
39
- throw new _WarnExtendableError.default(`No banner found for episode ${episode.episodeName}`);
40
- }
41
-
42
- async retrieveSeriesPoster(series) {
43
- for (let retriever of this.retrievers) {
44
- try {
45
- let urls = await retriever.retrieveSeriesPoster(series);
46
- if (urls.length === 0) throw new _DebugExtendableError.default('No URLs found');
47
- return _downloader.default.attemptDownload(urls, this.oblecto.artworkUtils.seriesPosterPath(series));
48
- } catch (e) {
49
- _logger.default.log(e);
50
- }
51
- }
52
-
53
- throw new _WarnExtendableError.default(`No poster found for ${series.seriesName}`);
54
- }
55
-
56
- }
57
-
58
- exports.default = AggregateSeriesArtworkRetriever;
@@ -1,37 +0,0 @@
1
- export default class SeriesArtworkCollector {
2
- /**
3
- *
4
- * @param {Oblecto} oblecto
5
- */
6
- constructor(oblecto: any);
7
- oblecto: any;
8
- /**
9
- *
10
- * @param {Episode} episode - Episode for which to download the episode banner for
11
- * @returns {Promise<void>}
12
- */
13
- collectArtworkEpisodeBanner(episode: Episode): Promise<void>;
14
- /**
15
- *
16
- * @param {Series} series - Series for which to download the series poster for
17
- * @returns {Promise<void>}
18
- */
19
- collectArtworkSeriesPoster(series: Series): Promise<void>;
20
- /**
21
- *
22
- * @returns {Promise<void>}
23
- */
24
- collectAllEpisodeBanners(): Promise<void>;
25
- /**
26
- *
27
- * @returns {Promise<void>}
28
- */
29
- collectAllSeriesPosters(): Promise<void>;
30
- /**
31
- *
32
- * @returns {Promise<void>}
33
- */
34
- collectAll(): Promise<void>;
35
- }
36
- import { Episode } from "../../../models/episode";
37
- import { Series } from "../../../models/series";