oblecto 0.2.8 → 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.
- package/Oblecto-Web/dist/web/index.html +24 -3
- package/Oblecto-Web/dist/web/static/index-C-JsqHHk.css +1 -0
- package/Oblecto-Web/dist/web/static/index-DSZgpOOu.js +576 -0
- package/README.md +43 -7
- package/dist/bin/oblecto.js +12468 -61
- package/dist/index.js +10676 -6
- package/package.json +68 -36
- package/res/AGENTS.md +8 -0
- package/res/config.json +34 -7
- package/Oblecto-Web/LICENSE +0 -674
- package/Oblecto-Web/README.md +0 -20
- package/Oblecto-Web/dist/web/static/css/app.921835f8c2878caee6d1085d9982fa86.css +0 -1
- package/Oblecto-Web/dist/web/static/css/app.921835f8c2878caee6d1085d9982fa86.css.map +0 -1
- package/Oblecto-Web/dist/web/static/js/app.758b833f6395444695b6.js +0 -6896
- package/Oblecto-Web/dist/web/static/js/app.758b833f6395444695b6.js.map +0 -1
- package/Oblecto-Web/dist/web/static/js/manifest.d327d604ee57c29a75d0.js +0 -154
- package/Oblecto-Web/dist/web/static/js/manifest.d327d604ee57c29a75d0.js.map +0 -1
- package/Oblecto-Web/dist/web/static/js/vendor.84f1e8002f100f63d6ef.js +0 -32455
- package/Oblecto-Web/dist/web/static/js/vendor.84f1e8002f100f63d6ef.js.map +0 -1
- package/Oblecto-Web/package.json +0 -118
- package/dist/bin/cliManager.js +0 -102
- package/dist/bin/scripts/adduser.js +0 -50
- package/dist/bin/scripts/changepassword.js +0 -48
- package/dist/bin/scripts/deluser.js +0 -34
- package/dist/bin/scripts/helpers/argumentError.js +0 -12
- package/dist/bin/scripts/helpers/generateAssetDirectories.js +0 -37
- package/dist/bin/scripts/init/assets.js +0 -24
- package/dist/bin/scripts/init/database.js +0 -21
- package/dist/bin/scripts/init/general.js +0 -54
- package/dist/bin/scripts/init/index.js +0 -26
- package/dist/bin/scripts/removepassword.js +0 -42
- package/dist/config.js +0 -45
- package/dist/core/graphical.js +0 -179
- package/dist/core/index.js +0 -24
- package/dist/lib/artwork/ArtworkScaler.js +0 -31
- package/dist/lib/artwork/ArtworkUtils.js +0 -35
- package/dist/lib/artwork/movies/AggregateMovieArtworkRetriever.js +0 -58
- package/dist/lib/artwork/movies/MovieArtworkCollector.js +0 -93
- package/dist/lib/artwork/movies/MovieArtworkDownloader.js +0 -65
- package/dist/lib/artwork/movies/artworkRetrievers/FanarttvMovieArtworkRetriever.js +0 -57
- package/dist/lib/artwork/movies/artworkRetrievers/TmdbMovieArtworkRetriever.js +0 -47
- package/dist/lib/artwork/series/AggregateSeriesArtworkRetriever.js +0 -58
- package/dist/lib/artwork/series/SeriesArtworkCollector.js +0 -95
- package/dist/lib/artwork/series/SeriesArtworkDownloader.js +0 -62
- package/dist/lib/artwork/series/artworkRetrievers/FanarttvSeriesArtworkRetriever.js +0 -44
- package/dist/lib/artwork/series/artworkRetrievers/TmdbSeriesArtworkRetriever.js +0 -64
- package/dist/lib/artwork/series/artworkRetrievers/TvdbSeriesArtworkRetriever.js +0 -51
- package/dist/lib/cleaners/FileCleaner.js +0 -56
- package/dist/lib/cleaners/MovieCleaner.js +0 -42
- package/dist/lib/cleaners/SeriesCleaner.js +0 -70
- package/dist/lib/common/AggregateIdentifier.js +0 -53
- package/dist/lib/common/AggregateUpdateRetriever.js +0 -43
- package/dist/lib/downloader/index.js +0 -59
- package/dist/lib/errors/DebugExtendableError.js +0 -20
- package/dist/lib/errors/ExtendableError.js +0 -22
- package/dist/lib/errors/FileExistsError.js +0 -14
- package/dist/lib/errors/IdentificationError.js +0 -14
- package/dist/lib/errors/InfoExtendableError.js +0 -20
- package/dist/lib/errors/VideoAnalysisError.js +0 -14
- package/dist/lib/errors/VideoIdentificationError.js +0 -14
- package/dist/lib/errors/WarnExtendableError.js +0 -20
- package/dist/lib/federation/client/FederationClient.js +0 -127
- package/dist/lib/federation/client/FederationClientController.js +0 -45
- package/dist/lib/federation/client/FederationDataClient.js +0 -56
- package/dist/lib/federation/client/FederationMediaClient.js +0 -70
- package/dist/lib/federation/server/FederationController.js +0 -32
- package/dist/lib/federation/server/FederationDataServer.js +0 -22
- package/dist/lib/federation/server/FederationDataServerConnection.js +0 -96
- package/dist/lib/federation/server/FederationMediaServer.js +0 -22
- package/dist/lib/federation/server/FederationMediaServerConnection.js +0 -83
- package/dist/lib/federation/server/FederationServer.js +0 -40
- package/dist/lib/federation/server/FederationServerConnection.js +0 -97
- package/dist/lib/federationindexer/FederationEpisodeIndexer.js +0 -65
- package/dist/lib/federationindexer/FederationMovieIndexer.js +0 -48
- package/dist/lib/indexers/MediaIdentifier.js +0 -15
- package/dist/lib/indexers/files/FileIndexer.js +0 -103
- package/dist/lib/indexers/files/cleaner.js +0 -43
- package/dist/lib/indexers/movies/AggregateMovieIdentifier.js +0 -45
- package/dist/lib/indexers/movies/MovieCollector.js +0 -65
- package/dist/lib/indexers/movies/MovieIdentifier.js +0 -22
- package/dist/lib/indexers/movies/MovieIndexer.js +0 -47
- package/dist/lib/indexers/movies/identifiers/TmdbMovieidentifier.js +0 -50
- package/dist/lib/indexers/series/AggregateEpisodeIdentifier.js +0 -46
- package/dist/lib/indexers/series/AggregateSeriesIdentifier.js +0 -46
- package/dist/lib/indexers/series/EpisodeIdentifier.js +0 -24
- package/dist/lib/indexers/series/SeriesCollector.js +0 -65
- package/dist/lib/indexers/series/SeriesIdentifer.js +0 -23
- package/dist/lib/indexers/series/SeriesIndexer.js +0 -134
- package/dist/lib/indexers/series/identifiers/TmdbEpisodeIdentifier.js +0 -38
- package/dist/lib/indexers/series/identifiers/TmdbSeriesIdentifier.js +0 -66
- package/dist/lib/indexers/series/identifiers/TvdbEpisodeIdentifier.js +0 -71
- package/dist/lib/indexers/series/identifiers/TvdbSeriesIdentifier.js +0 -82
- package/dist/lib/oblecto/index.js +0 -125
- package/dist/lib/queue/index.js +0 -82
- package/dist/lib/realtime/RealtimeClient.js +0 -137
- package/dist/lib/realtime/RealtimeController.js +0 -50
- package/dist/lib/sets/tv/MovieSetCollector.js +0 -49
- package/dist/lib/streamSessions/StreamSession.js +0 -148
- package/dist/lib/streamSessions/StreamSessionController.js +0 -78
- package/dist/lib/streamSessions/StreamSessionTypes/DirectHttpStreamSession.js +0 -105
- package/dist/lib/streamSessions/StreamSessionTypes/DirectStreamSession.js +0 -47
- package/dist/lib/streamSessions/StreamSessionTypes/HLSStreamer.js +0 -126
- package/dist/lib/streamSessions/StreamSessionTypes/RecodeFederationStreamSession.js +0 -72
- package/dist/lib/streamSessions/StreamSessionTypes/RecodeStreamSession.js +0 -65
- package/dist/lib/updaters/files/FileUpdateCollector.js +0 -44
- package/dist/lib/updaters/files/FileUpdater.js +0 -194
- package/dist/lib/updaters/movies/AggregateMovieUpdateRetriever.js +0 -44
- package/dist/lib/updaters/movies/MovieUpdateCollector.js +0 -48
- package/dist/lib/updaters/movies/MovieUpdater.js +0 -38
- package/dist/lib/updaters/movies/informationRetrievers/TmdbMovieRetriever.js +0 -42
- package/dist/lib/updaters/series/AggregateEpisodeUpdateRetriever.js +0 -41
- package/dist/lib/updaters/series/AggregateSeriesUpdateRetriever.js +0 -44
- package/dist/lib/updaters/series/SeriesUpdateCollector.js +0 -79
- package/dist/lib/updaters/series/SeriesUpdater.js +0 -84
- package/dist/lib/updaters/series/informationRetrievers/TmdbEpisodeRetriever.js +0 -66
- package/dist/lib/updaters/series/informationRetrievers/TmdbSeriesRetriever.js +0 -63
- package/dist/lib/updaters/series/informationRetrievers/TvdbEpisodeRetriever.js +0 -38
- package/dist/lib/updaters/series/informationRetrievers/TvdbSeriesRetriever.js +0 -50
- package/dist/models/episode.js +0 -62
- package/dist/models/episodeFiles.js +0 -14
- package/dist/models/file.js +0 -32
- package/dist/models/movie.js +0 -35
- package/dist/models/movieFiles.js +0 -14
- package/dist/models/movieSet.js +0 -26
- package/dist/models/series.js +0 -55
- package/dist/models/seriesSet.js +0 -17
- package/dist/models/stream.js +0 -81
- package/dist/models/trackEpisode.js +0 -17
- package/dist/models/trackEpisodes.js +0 -8
- package/dist/models/trackMovie.js +0 -17
- package/dist/models/trackMovies.js +0 -8
- package/dist/models/tvshow.js +0 -46
- package/dist/models/tvshowSet.js +0 -8
- package/dist/models/user.js +0 -26
- package/dist/submodules/REST/index.js +0 -59
- package/dist/submodules/REST/middleware/auth.js +0 -28
- package/dist/submodules/REST/routes/auth.js +0 -48
- package/dist/submodules/REST/routes/clients.js +0 -54
- package/dist/submodules/REST/routes/episodes.js +0 -275
- package/dist/submodules/REST/routes/files.js +0 -92
- package/dist/submodules/REST/routes/index.js +0 -48
- package/dist/submodules/REST/routes/movies.js +0 -305
- package/dist/submodules/REST/routes/sets.js +0 -35
- package/dist/submodules/REST/routes/settings/index.js +0 -22
- package/dist/submodules/REST/routes/settings/maintenance.js +0 -87
- package/dist/submodules/REST/routes/settings/misc.js +0 -38
- package/dist/submodules/REST/routes/settings/sources.js +0 -61
- package/dist/submodules/REST/routes/tvshows.js +0 -140
- package/dist/submodules/REST/routes/users.js +0 -107
- package/dist/submodules/REST/routes/web.js +0 -43
- package/dist/submodules/axiosTimeout.js +0 -30
- package/dist/submodules/database.js +0 -180
- package/dist/submodules/ffmpeg.js +0 -23
- package/dist/submodules/ffprobe.js +0 -22
- package/dist/submodules/guessit.js +0 -48
- package/dist/submodules/handlers/DirectStreamer.js +0 -68
- package/dist/submodules/handlers/FFMPEGHandlers/DvdStreamer.js +0 -52
- package/dist/submodules/handlers/FFMPEGHandlers/RemuxStreamer.js +0 -33
- package/dist/submodules/handlers/FFMPEGHandlers/TranscodeStreamer.js +0 -33
- package/dist/submodules/handlers/FFMPEGStreamer.js +0 -56
- package/dist/submodules/handlers/FederationStreamer.js +0 -23
- package/dist/submodules/handlers/HLSSessionHandler.js +0 -141
- package/dist/submodules/logger/index.js +0 -43
- package/dist/submodules/promiseTimeout.js +0 -28
- package/dist/submodules/zeroconf.js +0 -19
- package/dist/transcoders/dvd.js +0 -26
- package/dist/transcoders/index.js +0 -42
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
class AggregateEpisodeUpdateRetriever {
|
|
9
|
-
constructor() {
|
|
10
|
-
this.retrievers = [];
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
loadRetriever(retriever) {
|
|
14
|
-
this.retrievers.push(retriever);
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
async retrieveEpisodeInformation(episode) {
|
|
18
|
-
let information = {};
|
|
19
|
-
|
|
20
|
-
for (let retriever of this.retrievers) {
|
|
21
|
-
let currentInformation;
|
|
22
|
-
|
|
23
|
-
try {
|
|
24
|
-
currentInformation = await retriever.retrieveEpisodeInformation(episode);
|
|
25
|
-
} catch (e) {
|
|
26
|
-
console.log(e);
|
|
27
|
-
continue;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
information = { ...information,
|
|
31
|
-
...currentInformation
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
if (Object.keys(information).length === 0) throw new Error();
|
|
36
|
-
return information;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
exports.default = AggregateEpisodeUpdateRetriever;
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _IdentificationError = _interopRequireDefault(require("../../errors/IdentificationError"));
|
|
9
|
-
|
|
10
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
-
|
|
12
|
-
class AggregateSeriesUpdateRetriever {
|
|
13
|
-
constructor() {
|
|
14
|
-
this.retrievers = [];
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
loadRetriever(retriever) {
|
|
18
|
-
this.retrievers.push(retriever);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
async retrieveSeriesInformation(series) {
|
|
22
|
-
let information = {};
|
|
23
|
-
|
|
24
|
-
for (let retriever of this.retrievers) {
|
|
25
|
-
let currentInformation;
|
|
26
|
-
|
|
27
|
-
try {
|
|
28
|
-
currentInformation = await retriever.retrieveSeriesInformation(series);
|
|
29
|
-
} catch (e) {
|
|
30
|
-
continue;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
information = { ...information,
|
|
34
|
-
...currentInformation
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
if (Object.keys(information).length === 0) throw new Error();
|
|
39
|
-
return information;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
exports.default = AggregateSeriesUpdateRetriever;
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _series = require("../../../models/series");
|
|
9
|
-
|
|
10
|
-
var _episode = require("../../../models/episode");
|
|
11
|
-
|
|
12
|
-
class SeriesUpdateCollector {
|
|
13
|
-
/**
|
|
14
|
-
*
|
|
15
|
-
* @param {Oblecto} oblecto
|
|
16
|
-
*/
|
|
17
|
-
constructor(oblecto) {
|
|
18
|
-
this.oblecto = oblecto;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
*
|
|
22
|
-
* @param {Episode} episode - Episode for which to download the episode banner for
|
|
23
|
-
* @returns {Promise<void>}
|
|
24
|
-
*/
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
async collectEpisode(episode) {
|
|
28
|
-
this.oblecto.queue.queueJob('updateEpisode', episode);
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
*
|
|
32
|
-
* @param {Series} series - Series for which to download the series poster for
|
|
33
|
-
* @returns {Promise<void>}
|
|
34
|
-
*/
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
async collectSeries(series) {
|
|
38
|
-
this.oblecto.queue.queueJob('updateSeries', series);
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
*
|
|
42
|
-
* @returns {Promise<void>}
|
|
43
|
-
*/
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
async collectAllEpisodes() {
|
|
47
|
-
let episodes = await _episode.Episode.findAll();
|
|
48
|
-
|
|
49
|
-
for (let episode of episodes) {
|
|
50
|
-
await this.collectEpisode(episode);
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
*
|
|
55
|
-
* @returns {Promise<void>}
|
|
56
|
-
*/
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
async collectAllSeries() {
|
|
60
|
-
let all = await _series.Series.findAll();
|
|
61
|
-
|
|
62
|
-
for (let series of all) {
|
|
63
|
-
await this.collectSeries(series);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
*
|
|
68
|
-
* @returns {Promise<void>}
|
|
69
|
-
*/
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
async collectAll() {
|
|
73
|
-
await this.collectAllEpisodes();
|
|
74
|
-
await this.collectAllSeries();
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
exports.default = SeriesUpdateCollector;
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _AggregateUpdateRetriever = _interopRequireDefault(require("../../common/AggregateUpdateRetriever"));
|
|
9
|
-
|
|
10
|
-
var _TmdbSeriesRetriever = _interopRequireDefault(require("./informationRetrievers/TmdbSeriesRetriever"));
|
|
11
|
-
|
|
12
|
-
var _TmdbEpisodeRetriever = _interopRequireDefault(require("./informationRetrievers/TmdbEpisodeRetriever"));
|
|
13
|
-
|
|
14
|
-
var _TvdbEpisodeRetriever = _interopRequireDefault(require("./informationRetrievers/TvdbEpisodeRetriever"));
|
|
15
|
-
|
|
16
|
-
var _logger = _interopRequireDefault(require("../../../submodules/logger"));
|
|
17
|
-
|
|
18
|
-
var _TvdbSeriesRetriever = _interopRequireDefault(require("./informationRetrievers/TvdbSeriesRetriever"));
|
|
19
|
-
|
|
20
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
|
-
|
|
22
|
-
class SeriesUpdater {
|
|
23
|
-
/**
|
|
24
|
-
* @param {Oblecto} oblecto
|
|
25
|
-
*/
|
|
26
|
-
constructor(oblecto) {
|
|
27
|
-
this.oblecto = oblecto;
|
|
28
|
-
this.aggregateSeriesUpdateRetriever = new _AggregateUpdateRetriever.default();
|
|
29
|
-
this.aggregateEpisodeUpdaterRetriever = new _AggregateUpdateRetriever.default();
|
|
30
|
-
const seriesUpdateRetrievers = {
|
|
31
|
-
'tmdb': _TmdbSeriesRetriever.default,
|
|
32
|
-
'tvdb': _TvdbSeriesRetriever.default
|
|
33
|
-
};
|
|
34
|
-
const episodeUpdateRetrievers = {
|
|
35
|
-
'tmdb': _TmdbEpisodeRetriever.default,
|
|
36
|
-
'tvdb': _TvdbEpisodeRetriever.default
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
for (let updater of this.oblecto.config.tvshows.seriesUpdaters) {
|
|
40
|
-
_logger.default.log('DEBUG', `Loading ${updater} series updater`);
|
|
41
|
-
|
|
42
|
-
this.aggregateSeriesUpdateRetriever.loadRetriever(new seriesUpdateRetrievers[updater](this.oblecto));
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
for (let updater of this.oblecto.config.tvshows.episodeUpdaters) {
|
|
46
|
-
_logger.default.log('DEBUG', `Loading ${updater} episode updater`);
|
|
47
|
-
|
|
48
|
-
this.aggregateEpisodeUpdaterRetriever.loadRetriever(new episodeUpdateRetrievers[updater](this.oblecto));
|
|
49
|
-
} // Register task availability to Oblecto queue
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
this.oblecto.queue.addJob('updateEpisode', async job => {
|
|
53
|
-
await this.updateEpisode(job);
|
|
54
|
-
});
|
|
55
|
-
this.oblecto.queue.addJob('updateSeries', async job => {
|
|
56
|
-
await this.updateSeries(job);
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
*
|
|
61
|
-
* @param {Series} series
|
|
62
|
-
* @returns {Promise<void>}
|
|
63
|
-
*/
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
async updateSeries(series) {
|
|
67
|
-
let data = await this.aggregateSeriesUpdateRetriever.retrieveInformation(series);
|
|
68
|
-
await series.update(data);
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
*
|
|
72
|
-
* @param {Episode} episode
|
|
73
|
-
* @returns {Promise<void>}
|
|
74
|
-
*/
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
async updateEpisode(episode) {
|
|
78
|
-
let data = await this.aggregateEpisodeUpdaterRetriever.retrieveInformation(episode);
|
|
79
|
-
await episode.update(data);
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
exports.default = SeriesUpdater;
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _logger = _interopRequireDefault(require("../../../../submodules/logger"));
|
|
9
|
-
|
|
10
|
-
var _promiseTimeout = _interopRequireDefault(require("../../../../submodules/promiseTimeout"));
|
|
11
|
-
|
|
12
|
-
var _DebugExtendableError = _interopRequireDefault(require("../../../errors/DebugExtendableError"));
|
|
13
|
-
|
|
14
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
-
|
|
16
|
-
class TmdbEpisodeRetriever {
|
|
17
|
-
constructor(oblecto) {
|
|
18
|
-
this.oblecto = oblecto;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
async retrieveInformation(episode) {
|
|
22
|
-
let series = await episode.getSeries();
|
|
23
|
-
if (!series.tmdbid) throw new _DebugExtendableError.default('No tmdbid attached to series');
|
|
24
|
-
let episodeInfo = await (0, _promiseTimeout.default)(this.oblecto.tmdb.episodeInfo({
|
|
25
|
-
id: series.tmdbid,
|
|
26
|
-
season_number: episode.airedSeason,
|
|
27
|
-
episode_number: episode.airedEpisodeNumber
|
|
28
|
-
}));
|
|
29
|
-
|
|
30
|
-
_logger.default.log('DEBUG', `Episode information for ${episode.episodeName} retrieved from tmdb`);
|
|
31
|
-
|
|
32
|
-
let data = {
|
|
33
|
-
episodeName: episodeInfo.name,
|
|
34
|
-
airedEpisodeNumber: episodeInfo.episode_number,
|
|
35
|
-
airedSeason: episodeInfo.season_number,
|
|
36
|
-
overview: episodeInfo.overview,
|
|
37
|
-
firstAired: episodeInfo.air_date
|
|
38
|
-
};
|
|
39
|
-
let externalIds = {};
|
|
40
|
-
|
|
41
|
-
if (!(episode.tvdbid && episode.imdbid)) {
|
|
42
|
-
_logger.default.log('DEBUG', `External ids for ${episode.episodeName} missing`);
|
|
43
|
-
|
|
44
|
-
externalIds = await (0, _promiseTimeout.default)(this.oblecto.tmdb.episodeExternalIds({
|
|
45
|
-
id: series.tmdbid,
|
|
46
|
-
season_number: episode.airedSeason,
|
|
47
|
-
episode_number: episode.airedEpisodeNumber
|
|
48
|
-
}));
|
|
49
|
-
|
|
50
|
-
_logger.default.log('DEBUG', `External ids for ${episode.episodeName} retrieved`);
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
if (!episode.tvdbid && externalIds.tvdb_id) {
|
|
54
|
-
data.tvdbid = externalIds.tvdb_id;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
if (!episode.imdbid && externalIds.imdb_id) {
|
|
58
|
-
data.imdbid = externalIds.imdb_id;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
return data;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
exports.default = TmdbEpisodeRetriever;
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _promiseTimeout = _interopRequireDefault(require("../../../../submodules/promiseTimeout"));
|
|
9
|
-
|
|
10
|
-
var _DebugExtendableError = _interopRequireDefault(require("../../../errors/DebugExtendableError"));
|
|
11
|
-
|
|
12
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
|
|
14
|
-
class TmdbSeriesRetriever {
|
|
15
|
-
/**
|
|
16
|
-
* @param {Oblecto} oblecto
|
|
17
|
-
*/
|
|
18
|
-
constructor(oblecto) {
|
|
19
|
-
this.oblecto = oblecto;
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
*
|
|
23
|
-
* @param {Series} series
|
|
24
|
-
* @returns {Promise<{overview: *, siteRating: *, seriesName: *, firstAired: *, popularity: *, siteRatingCount: *, status: *}>}
|
|
25
|
-
*/
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
async retrieveInformation(series) {
|
|
29
|
-
if (!series.tmdbid) throw new _DebugExtendableError.default('No tmdbid attached to series');
|
|
30
|
-
let seriesInfo = await (0, _promiseTimeout.default)(this.oblecto.tmdb.tvInfo({
|
|
31
|
-
id: series.tmdbid
|
|
32
|
-
}));
|
|
33
|
-
let data = {
|
|
34
|
-
seriesName: seriesInfo.name,
|
|
35
|
-
status: seriesInfo.status,
|
|
36
|
-
firstAired: seriesInfo.first_air_date,
|
|
37
|
-
overview: seriesInfo.overview,
|
|
38
|
-
popularity: seriesInfo.popularity,
|
|
39
|
-
siteRating: seriesInfo.vote_average,
|
|
40
|
-
siteRatingCount: seriesInfo.vote_count
|
|
41
|
-
};
|
|
42
|
-
let externalIds = {};
|
|
43
|
-
|
|
44
|
-
if (!(series.tvdbid && series.imdbid)) {
|
|
45
|
-
externalIds = await (0, _promiseTimeout.default)(this.oblecto.tmdb.tvExternalIds({
|
|
46
|
-
id: series.tmdbid
|
|
47
|
-
}));
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
if (!series.tvdbid) {
|
|
51
|
-
data.tvdbid = externalIds.tvdb_id;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
if (!series.imdbid) {
|
|
55
|
-
data.imdbid = externalIds.imdb_id;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
return data;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
exports.default = TmdbSeriesRetriever;
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _promiseTimeout = _interopRequireDefault(require("../../../../submodules/promiseTimeout"));
|
|
9
|
-
|
|
10
|
-
var _DebugExtendableError = _interopRequireDefault(require("../../../errors/DebugExtendableError"));
|
|
11
|
-
|
|
12
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
|
|
14
|
-
class TvdbEpisodeRetriever {
|
|
15
|
-
constructor(oblecto) {
|
|
16
|
-
this.oblecto = oblecto;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
async retrieveInformation(episode) {
|
|
20
|
-
if (!episode.tvdbid) throw new _DebugExtendableError.default('No tvdbid attached to episode');
|
|
21
|
-
let episodeInfo = await (0, _promiseTimeout.default)(this.oblecto.tvdb.getEpisodeById(episode.tvdbid));
|
|
22
|
-
let data = {
|
|
23
|
-
episodeName: episodeInfo.episodeName,
|
|
24
|
-
airedEpisodeNumber: episodeInfo.airedEpisodeNumber,
|
|
25
|
-
airedSeason: episodeInfo.airedSeason,
|
|
26
|
-
overview: episodeInfo.overview,
|
|
27
|
-
firstAired: episodeInfo.firstAired,
|
|
28
|
-
dvdEpisodeNumber: episodeInfo.dvdEpisodeNumber,
|
|
29
|
-
dvdSeason: episodeInfo.dvdSeason,
|
|
30
|
-
absoluteNumber: episodeInfo.absoluteNumber
|
|
31
|
-
};
|
|
32
|
-
if (episodeInfo.imdbId) data.imdbid = episodeInfo.imdbId;
|
|
33
|
-
return episodeInfo;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
exports.default = TvdbEpisodeRetriever;
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _promiseTimeout = _interopRequireDefault(require("../../../../submodules/promiseTimeout"));
|
|
9
|
-
|
|
10
|
-
var _DebugExtendableError = _interopRequireDefault(require("../../../errors/DebugExtendableError"));
|
|
11
|
-
|
|
12
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
|
|
14
|
-
class TvdbSeriesRetriever {
|
|
15
|
-
/**
|
|
16
|
-
* @param {Oblecto} oblecto
|
|
17
|
-
*/
|
|
18
|
-
constructor(oblecto) {
|
|
19
|
-
this.oblecto = oblecto;
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
*
|
|
23
|
-
* @param {Series} series
|
|
24
|
-
* @returns {Promise<{overview: *, siteRating: *, seriesName: *, firstAired: *, popularity: *, siteRatingCount: *, status: *}>}
|
|
25
|
-
*/
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
async retrieveInformation(series) {
|
|
29
|
-
if (!series.tvdbid) throw new _DebugExtendableError.default('No tvdbid attached to series');
|
|
30
|
-
let seriesInfo = await (0, _promiseTimeout.default)(this.oblecto.tvdb.getSeriesById(series.tvdbid)); //TODO: TMDB Voting should be separated from TVDB voting
|
|
31
|
-
|
|
32
|
-
return {
|
|
33
|
-
seriesName: seriesInfo.seriesName,
|
|
34
|
-
status: seriesInfo.status,
|
|
35
|
-
firstAired: seriesInfo.firstAired,
|
|
36
|
-
overview: seriesInfo.overview,
|
|
37
|
-
siteRating: seriesInfo.siteRating,
|
|
38
|
-
siteRatingCount: seriesInfo.siteRatingCount,
|
|
39
|
-
rating: seriesInfo.rating,
|
|
40
|
-
airsDayOfWeek: seriesInfo.airsDayOfWeek,
|
|
41
|
-
airsTime: seriesInfo.airsTime,
|
|
42
|
-
network: seriesInfo.network,
|
|
43
|
-
imdbid: seriesInfo.imdbId || null,
|
|
44
|
-
zap2itId: seriesInfo.zap2itId || null
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
exports.default = TvdbSeriesRetriever;
|
package/dist/models/episode.js
DELETED
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.episodeColumns = exports.Episode = void 0;
|
|
7
|
-
|
|
8
|
-
var _sequelize = require("sequelize");
|
|
9
|
-
|
|
10
|
-
class Episode extends _sequelize.Model {}
|
|
11
|
-
|
|
12
|
-
exports.Episode = Episode;
|
|
13
|
-
const episodeColumns = {
|
|
14
|
-
tvdbid: {
|
|
15
|
-
type: _sequelize.DataTypes.INTEGER,
|
|
16
|
-
allowNull: true,
|
|
17
|
-
unique: true
|
|
18
|
-
},
|
|
19
|
-
tmdbid: {
|
|
20
|
-
type: _sequelize.DataTypes.INTEGER,
|
|
21
|
-
allowNull: true,
|
|
22
|
-
unique: true
|
|
23
|
-
},
|
|
24
|
-
imdbid: {
|
|
25
|
-
type: _sequelize.DataTypes.STRING,
|
|
26
|
-
allowNull: true,
|
|
27
|
-
unique: true
|
|
28
|
-
},
|
|
29
|
-
episodeName: {
|
|
30
|
-
type: _sequelize.DataTypes.STRING,
|
|
31
|
-
allowNull: true
|
|
32
|
-
},
|
|
33
|
-
absoluteNumber: {
|
|
34
|
-
type: _sequelize.DataTypes.INTEGER,
|
|
35
|
-
allowNull: true
|
|
36
|
-
},
|
|
37
|
-
airedEpisodeNumber: {
|
|
38
|
-
type: _sequelize.DataTypes.STRING,
|
|
39
|
-
allowNull: false
|
|
40
|
-
},
|
|
41
|
-
airedSeason: {
|
|
42
|
-
type: _sequelize.DataTypes.STRING,
|
|
43
|
-
allowNull: false
|
|
44
|
-
},
|
|
45
|
-
dvdEpisodeNumber: {
|
|
46
|
-
type: _sequelize.DataTypes.STRING,
|
|
47
|
-
allowNull: true
|
|
48
|
-
},
|
|
49
|
-
dvdSeason: {
|
|
50
|
-
type: _sequelize.DataTypes.STRING,
|
|
51
|
-
allowNull: true
|
|
52
|
-
},
|
|
53
|
-
firstAired: {
|
|
54
|
-
type: _sequelize.DataTypes.DATEONLY,
|
|
55
|
-
allowNull: true
|
|
56
|
-
},
|
|
57
|
-
overview: {
|
|
58
|
-
type: _sequelize.DataTypes.STRING,
|
|
59
|
-
allowNull: true
|
|
60
|
-
}
|
|
61
|
-
};
|
|
62
|
-
exports.episodeColumns = episodeColumns;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.episodeFilesColumns = exports.EpisodeFiles = void 0;
|
|
7
|
-
|
|
8
|
-
var _sequelize = require("sequelize");
|
|
9
|
-
|
|
10
|
-
class EpisodeFiles extends _sequelize.Model {}
|
|
11
|
-
|
|
12
|
-
exports.EpisodeFiles = EpisodeFiles;
|
|
13
|
-
const episodeFilesColumns = {};
|
|
14
|
-
exports.episodeFilesColumns = episodeFilesColumns;
|
package/dist/models/file.js
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.fileColumns = exports.File = void 0;
|
|
7
|
-
|
|
8
|
-
var _sequelize = require("sequelize");
|
|
9
|
-
|
|
10
|
-
class File extends _sequelize.Model {}
|
|
11
|
-
|
|
12
|
-
exports.File = File;
|
|
13
|
-
const fileColumns = {
|
|
14
|
-
host: _sequelize.DataTypes.STRING,
|
|
15
|
-
path: _sequelize.DataTypes.STRING,
|
|
16
|
-
name: _sequelize.DataTypes.STRING,
|
|
17
|
-
directory: _sequelize.DataTypes.STRING,
|
|
18
|
-
extension: _sequelize.DataTypes.STRING,
|
|
19
|
-
container: _sequelize.DataTypes.STRING,
|
|
20
|
-
videoCodec: _sequelize.DataTypes.STRING,
|
|
21
|
-
audioCodec: _sequelize.DataTypes.STRING,
|
|
22
|
-
duration: _sequelize.DataTypes.DOUBLE,
|
|
23
|
-
hash: {
|
|
24
|
-
type: _sequelize.DataTypes.STRING,
|
|
25
|
-
allowNull: true
|
|
26
|
-
},
|
|
27
|
-
size: {
|
|
28
|
-
type: _sequelize.DataTypes.BIGINT,
|
|
29
|
-
allowNull: true
|
|
30
|
-
}
|
|
31
|
-
};
|
|
32
|
-
exports.fileColumns = fileColumns;
|
package/dist/models/movie.js
DELETED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.movieColumns = exports.Movie = void 0;
|
|
7
|
-
|
|
8
|
-
var _sequelize = require("sequelize");
|
|
9
|
-
|
|
10
|
-
class Movie extends _sequelize.Model {}
|
|
11
|
-
|
|
12
|
-
exports.Movie = Movie;
|
|
13
|
-
const movieColumns = {
|
|
14
|
-
tmdbid: {
|
|
15
|
-
type: _sequelize.DataTypes.INTEGER,
|
|
16
|
-
allowNull: true,
|
|
17
|
-
unique: true
|
|
18
|
-
},
|
|
19
|
-
imdbid: {
|
|
20
|
-
type: _sequelize.DataTypes.STRING,
|
|
21
|
-
allowNull: true,
|
|
22
|
-
unique: true
|
|
23
|
-
},
|
|
24
|
-
movieName: _sequelize.DataTypes.STRING,
|
|
25
|
-
originalName: _sequelize.DataTypes.STRING,
|
|
26
|
-
tagline: _sequelize.DataTypes.STRING,
|
|
27
|
-
originalLanguage: _sequelize.DataTypes.STRING,
|
|
28
|
-
budget: _sequelize.DataTypes.INTEGER,
|
|
29
|
-
revenue: _sequelize.DataTypes.INTEGER,
|
|
30
|
-
runtime: _sequelize.DataTypes.INTEGER,
|
|
31
|
-
popularity: _sequelize.DataTypes.FLOAT,
|
|
32
|
-
releaseDate: _sequelize.DataTypes.DATEONLY,
|
|
33
|
-
overview: _sequelize.DataTypes.TEXT
|
|
34
|
-
};
|
|
35
|
-
exports.movieColumns = movieColumns;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.movieFileColumns = exports.MovieFiles = void 0;
|
|
7
|
-
|
|
8
|
-
var _sequelize = require("sequelize");
|
|
9
|
-
|
|
10
|
-
class MovieFiles extends _sequelize.Model {}
|
|
11
|
-
|
|
12
|
-
exports.MovieFiles = MovieFiles;
|
|
13
|
-
const movieFileColumns = {};
|
|
14
|
-
exports.movieFileColumns = movieFileColumns;
|
package/dist/models/movieSet.js
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.movieSetColumns = exports.MovieSet = void 0;
|
|
7
|
-
|
|
8
|
-
var _sequelize = require("sequelize");
|
|
9
|
-
|
|
10
|
-
class MovieSet extends _sequelize.Model {}
|
|
11
|
-
|
|
12
|
-
exports.MovieSet = MovieSet;
|
|
13
|
-
const movieSetColumns = {
|
|
14
|
-
setName: _sequelize.DataTypes.STRING,
|
|
15
|
-
overview: _sequelize.DataTypes.TEXT,
|
|
16
|
-
tmdbid: {
|
|
17
|
-
type: _sequelize.DataTypes.INTEGER,
|
|
18
|
-
allowNull: true,
|
|
19
|
-
unique: true
|
|
20
|
-
},
|
|
21
|
-
public: {
|
|
22
|
-
type: _sequelize.DataTypes.BOOLEAN,
|
|
23
|
-
defaultValue: true
|
|
24
|
-
}
|
|
25
|
-
};
|
|
26
|
-
exports.movieSetColumns = movieSetColumns;
|