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
package/Oblecto-Web/package.json
DELETED
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "Oblecto-Web",
|
|
3
|
-
"version": "1.0.0",
|
|
4
|
-
"description": "The default PWA SPA frontend for Oblecto",
|
|
5
|
-
"author": "Robin <robin@decker.cx>",
|
|
6
|
-
"private": true,
|
|
7
|
-
"scripts": {
|
|
8
|
-
"dev": "node build/dev-server.js",
|
|
9
|
-
"start": "node build/dev-server.js",
|
|
10
|
-
"build": "node build/build.js",
|
|
11
|
-
"unit": "cross-env BABEL_ENV=test karma start test/unit/karma.conf.js --single-run",
|
|
12
|
-
"e2e": "node test/e2e/runner.js",
|
|
13
|
-
"test": "npm run unit && npm run e2e",
|
|
14
|
-
"lint": "eslint --ext .js,.vue src test/unit/specs test/e2e/specs"
|
|
15
|
-
},
|
|
16
|
-
"files": [
|
|
17
|
-
"dist/"
|
|
18
|
-
],
|
|
19
|
-
"dependencies": {
|
|
20
|
-
"@fortawesome/fontawesome": "^1.1.8",
|
|
21
|
-
"@fortawesome/fontawesome-free-solid": "^5.0.13",
|
|
22
|
-
"@fortawesome/vue-fontawesome": "0.0.23",
|
|
23
|
-
"acorn": "^7.4.1",
|
|
24
|
-
"acorn-dynamic-import": "^4.0.0",
|
|
25
|
-
"ajv": "^6.12.6",
|
|
26
|
-
"axios": "^0.18.1",
|
|
27
|
-
"oblectoclient": "0.0.5",
|
|
28
|
-
"velocity-animate": "^1.5.2",
|
|
29
|
-
"vue": "^2.6.12",
|
|
30
|
-
"vue-axios": "^2.1.4",
|
|
31
|
-
"vue-js-modal": "^1.3.31",
|
|
32
|
-
"vue-notification": "^1.3.16",
|
|
33
|
-
"vue-router": "^2.8.1",
|
|
34
|
-
"vue-socket.io": "^2.1.1",
|
|
35
|
-
"vue-tabs-component": "^1.5.0",
|
|
36
|
-
"vuex": "^2.5.0"
|
|
37
|
-
},
|
|
38
|
-
"devDependencies": {
|
|
39
|
-
"autoprefixer": "^7.2.4",
|
|
40
|
-
"babel-core": "^6.22.1",
|
|
41
|
-
"babel-eslint": "^7.1.1",
|
|
42
|
-
"babel-loader": "^7.1.5",
|
|
43
|
-
"babel-plugin-istanbul": "^4.1.1",
|
|
44
|
-
"babel-plugin-transform-runtime": "^6.22.0",
|
|
45
|
-
"babel-preset-env": "^1.6.1",
|
|
46
|
-
"babel-preset-stage-2": "^6.22.0",
|
|
47
|
-
"babel-register": "^6.22.0",
|
|
48
|
-
"chai": "^3.5.0",
|
|
49
|
-
"chalk": "^2.4.2",
|
|
50
|
-
"chromedriver": "^2.46.0",
|
|
51
|
-
"connect-history-api-fallback": "^1.6.0",
|
|
52
|
-
"copy-webpack-plugin": "^4.6.0",
|
|
53
|
-
"cross-env": "^5.2.0",
|
|
54
|
-
"cross-spawn": "^5.0.1",
|
|
55
|
-
"css-loader": "^0.28.8",
|
|
56
|
-
"cssnano": "^3.10.0",
|
|
57
|
-
"eslint": "^5.16.0",
|
|
58
|
-
"eslint-config-standard": "^12.0.0",
|
|
59
|
-
"eslint-friendly-formatter": "^3.0.0",
|
|
60
|
-
"eslint-loader": "^1.7.1",
|
|
61
|
-
"eslint-plugin-html": "^3.0.0",
|
|
62
|
-
"eslint-plugin-import": "^2.22.1",
|
|
63
|
-
"eslint-plugin-node": "^8.0.1",
|
|
64
|
-
"eslint-plugin-promise": "^4.2.1",
|
|
65
|
-
"eslint-plugin-standard": "^4.0.2",
|
|
66
|
-
"eventsource-polyfill": "^0.9.6",
|
|
67
|
-
"express": "^4.17.1",
|
|
68
|
-
"extract-text-webpack-plugin": "^2.1.2",
|
|
69
|
-
"file-loader": "^0.11.1",
|
|
70
|
-
"friendly-errors-webpack-plugin": "^1.1.3",
|
|
71
|
-
"html-webpack-plugin": "^2.28.0",
|
|
72
|
-
"http-proxy-middleware": "^0.19.1",
|
|
73
|
-
"inject-loader": "^3.0.0",
|
|
74
|
-
"karma": "^1.4.1",
|
|
75
|
-
"karma-coverage": "^1.1.1",
|
|
76
|
-
"karma-mocha": "^1.3.0",
|
|
77
|
-
"karma-phantomjs-launcher": "^1.0.2",
|
|
78
|
-
"karma-phantomjs-shim": "^1.4.0",
|
|
79
|
-
"karma-sinon-chai": "^1.3.3",
|
|
80
|
-
"karma-sourcemap-loader": "^0.3.8",
|
|
81
|
-
"karma-spec-reporter": "0.0.31",
|
|
82
|
-
"karma-webpack": "^2.0.9",
|
|
83
|
-
"mocha": "^3.2.0",
|
|
84
|
-
"nightwatch": "^0.9.19",
|
|
85
|
-
"node-sass": "^4.12.0",
|
|
86
|
-
"opn": "^5.5.0",
|
|
87
|
-
"optimize-css-assets-webpack-plugin": "^2.0.0",
|
|
88
|
-
"ora": "^1.2.0",
|
|
89
|
-
"phantomjs-prebuilt": "^2.1.16",
|
|
90
|
-
"rimraf": "^2.7.1",
|
|
91
|
-
"sass-loader": "^6.0.6",
|
|
92
|
-
"selenium-server": "^3.141.59",
|
|
93
|
-
"semver": "^5.7.1",
|
|
94
|
-
"shelljs": "^0.7.8",
|
|
95
|
-
"sinon": "^2.1.0",
|
|
96
|
-
"sinon-chai": "^2.8.0",
|
|
97
|
-
"style-loader": "^0.18.2",
|
|
98
|
-
"terser-webpack-plugin": "^4.2.3",
|
|
99
|
-
"url-loader": "^0.5.8",
|
|
100
|
-
"vue-loader": "^13.7.3",
|
|
101
|
-
"vue-style-loader": "^3.0.1",
|
|
102
|
-
"vue-template-compiler": "^2.6.12",
|
|
103
|
-
"webpack": "^2.7.0",
|
|
104
|
-
"webpack-bundle-analyzer": "^3.9.0",
|
|
105
|
-
"webpack-dev-middleware": "^1.12.2",
|
|
106
|
-
"webpack-hot-middleware": "^2.25.0",
|
|
107
|
-
"webpack-merge": "^4.2.1"
|
|
108
|
-
},
|
|
109
|
-
"engines": {
|
|
110
|
-
"node": ">= 4.0.0",
|
|
111
|
-
"npm": ">= 3.0.0"
|
|
112
|
-
},
|
|
113
|
-
"browserslist": [
|
|
114
|
-
"> 1%",
|
|
115
|
-
"last 2 versions",
|
|
116
|
-
"not ie <= 8"
|
|
117
|
-
]
|
|
118
|
-
}
|
package/dist/bin/cliManager.js
DELETED
|
@@ -1,102 +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
|
-
class cliManager {
|
|
11
|
-
constructor() {
|
|
12
|
-
this.commands = {};
|
|
13
|
-
this.commandCategories = {};
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
registerCommand(command) {
|
|
17
|
-
let currentPath = this.commands;
|
|
18
|
-
|
|
19
|
-
for (let part of command.args) {
|
|
20
|
-
if (part.includes('[')) {
|
|
21
|
-
break;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
if (!currentPath[part]) {
|
|
25
|
-
currentPath[part] = {};
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
currentPath = currentPath[part];
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
if (command.category) {
|
|
32
|
-
if (!this.commandCategories[command.category]) {
|
|
33
|
-
this.commandCategories[command.category] = [];
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
this.commandCategories[command.category].push(command);
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
currentPath['_default'] = command;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
execute(args) {
|
|
43
|
-
let currentCommandPath = this.commands;
|
|
44
|
-
|
|
45
|
-
for (let part of args) {
|
|
46
|
-
if (currentCommandPath[part]) {
|
|
47
|
-
currentCommandPath = currentCommandPath[part];
|
|
48
|
-
} else {
|
|
49
|
-
// This is where it gets spicy
|
|
50
|
-
if (currentCommandPath['_default']) {
|
|
51
|
-
if (currentCommandPath['_default'].args.length == args.length) {
|
|
52
|
-
break;
|
|
53
|
-
} else {
|
|
54
|
-
console.log(`The ${args[0]} command was expecting ${currentCommandPath['_default'].args.length - 1} arguments like so: oblecto ${currentCommandPath['_default'].args.join(" ")}`);
|
|
55
|
-
return;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
if (currentCommandPath['_default']) {
|
|
62
|
-
currentCommandPath = currentCommandPath['_default'];
|
|
63
|
-
|
|
64
|
-
switch (currentCommandPath.runType) {
|
|
65
|
-
case 'start':
|
|
66
|
-
require(currentCommandPath.executePath).default.start();
|
|
67
|
-
|
|
68
|
-
break;
|
|
69
|
-
|
|
70
|
-
case 'default':
|
|
71
|
-
require(currentCommandPath.executePath).default(args);
|
|
72
|
-
|
|
73
|
-
break;
|
|
74
|
-
|
|
75
|
-
case 'help':
|
|
76
|
-
this.help();
|
|
77
|
-
break;
|
|
78
|
-
}
|
|
79
|
-
} else {
|
|
80
|
-
this.help();
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
async help() {
|
|
85
|
-
let packageInfo = JSON.parse(await _fs.promises.readFile(__dirname + '/../../package.json'));
|
|
86
|
-
console.log(`Oblecto ${packageInfo.version}`);
|
|
87
|
-
console.log();
|
|
88
|
-
|
|
89
|
-
for (const [categoryName, commands] of Object.entries(this.commandCategories)) {
|
|
90
|
-
console.log(`${categoryName}:`);
|
|
91
|
-
|
|
92
|
-
for (let command of commands) {
|
|
93
|
-
console.log(`"oblecto ${command.args.join(" ")}" - ${command.description}`);
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
console.log();
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
exports.default = cliManager;
|
|
@@ -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 _fs = require("fs");
|
|
9
|
-
|
|
10
|
-
var _bcrypt = _interopRequireDefault(require("bcrypt"));
|
|
11
|
-
|
|
12
|
-
var _user = require("../../models/user");
|
|
13
|
-
|
|
14
|
-
var _database = require("../../submodules/database");
|
|
15
|
-
|
|
16
|
-
var _argumentError = _interopRequireDefault(require("./helpers/argumentError"));
|
|
17
|
-
|
|
18
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
-
|
|
20
|
-
var _default = async args => {
|
|
21
|
-
const sequelize = (0, _database.initDatabase)();
|
|
22
|
-
let config = JSON.parse(await _fs.promises.readFile('/etc/oblecto/config.json'));
|
|
23
|
-
|
|
24
|
-
if (args.length < 5) {
|
|
25
|
-
(0, _argumentError.default)('adduser', ['username', 'password', 'realname', 'email']);
|
|
26
|
-
return;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
let hash = await _bcrypt.default.hash(args[2], config.authentication.saltRounds);
|
|
30
|
-
let [user, inserted] = await _user.User.findOrCreate({
|
|
31
|
-
where: {
|
|
32
|
-
username: args[1]
|
|
33
|
-
},
|
|
34
|
-
defaults: {
|
|
35
|
-
name: args[3],
|
|
36
|
-
email: args[4],
|
|
37
|
-
password: hash
|
|
38
|
-
}
|
|
39
|
-
});
|
|
40
|
-
|
|
41
|
-
if (inserted) {
|
|
42
|
-
console.log('User has been created');
|
|
43
|
-
} else {
|
|
44
|
-
console.log('A user that with username already exists!');
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
sequelize.close();
|
|
48
|
-
};
|
|
49
|
-
|
|
50
|
-
exports.default = _default;
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _user = require("../../models/user");
|
|
9
|
-
|
|
10
|
-
var _database = require("../../submodules/database");
|
|
11
|
-
|
|
12
|
-
var _argumentError = _interopRequireDefault(require("./helpers/argumentError"));
|
|
13
|
-
|
|
14
|
-
var _bcrypt = _interopRequireDefault(require("bcrypt"));
|
|
15
|
-
|
|
16
|
-
var _fs = require("fs");
|
|
17
|
-
|
|
18
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
-
|
|
20
|
-
var _default = async args => {
|
|
21
|
-
const sequelize = (0, _database.initDatabase)();
|
|
22
|
-
let config = JSON.parse(await _fs.promises.readFile('/etc/oblecto/config.json'));
|
|
23
|
-
|
|
24
|
-
if (args.length < 3) {
|
|
25
|
-
(0, _argumentError.default)('changepassword', ['username', 'password']);
|
|
26
|
-
return;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
let user = await _user.User.findOne({
|
|
30
|
-
where: {
|
|
31
|
-
username: args[1]
|
|
32
|
-
}
|
|
33
|
-
});
|
|
34
|
-
|
|
35
|
-
if (user == null) {
|
|
36
|
-
console.log(`User ${args[1]} was not found, please check your spelling`);
|
|
37
|
-
} else {
|
|
38
|
-
let hash = await _bcrypt.default.hash(args[2], config.authentication.saltRounds);
|
|
39
|
-
await user.update({
|
|
40
|
-
password: hash
|
|
41
|
-
});
|
|
42
|
-
console.log(`User ${args[1]}'s password has been changed`);
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
sequelize.close();
|
|
46
|
-
};
|
|
47
|
-
|
|
48
|
-
exports.default = _default;
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _user = require("../../models/user");
|
|
9
|
-
|
|
10
|
-
var _database = require("../../submodules/database");
|
|
11
|
-
|
|
12
|
-
var _argumentError = _interopRequireDefault(require("./helpers/argumentError"));
|
|
13
|
-
|
|
14
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
-
|
|
16
|
-
var _default = async args => {
|
|
17
|
-
const sequelize = (0, _database.initDatabase)();
|
|
18
|
-
|
|
19
|
-
if (args.length < 2) {
|
|
20
|
-
(0, _argumentError.default)('deluser', ['username']);
|
|
21
|
-
return;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
let user = await _user.User.findOne({
|
|
25
|
-
where: {
|
|
26
|
-
username: args[1]
|
|
27
|
-
}
|
|
28
|
-
});
|
|
29
|
-
await user.destroy();
|
|
30
|
-
console.log('User has been deleted');
|
|
31
|
-
sequelize.close();
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
exports.default = _default;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _default = (command, args) => {
|
|
9
|
-
console.log(`Invalid number of arguments: please use "oblecto ${command} ${args.map(a => `[${a}]`).join(' ')}"`);
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
exports.default = _default;
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = _default;
|
|
7
|
-
|
|
8
|
-
var _mkdirp = _interopRequireDefault(require("mkdirp"));
|
|
9
|
-
|
|
10
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
-
|
|
12
|
-
let createDirectory = function (dir) {
|
|
13
|
-
console.log(`Creating directory ${dir}`);
|
|
14
|
-
(0, _mkdirp.default)(dir);
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
function _default(config) {
|
|
18
|
-
// Create directories for image assets
|
|
19
|
-
for (let size in config.artwork.fanart) {
|
|
20
|
-
createDirectory(`${config.assets.movieFanartLocation}/${size}`);
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
for (let size in config.artwork.poster) {
|
|
24
|
-
createDirectory(`${config.assets.moviePosterLocation}/${size}`);
|
|
25
|
-
createDirectory(`${config.assets.showPosterLocation}/${size}`);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
for (let size in config.artwork.banner) {
|
|
29
|
-
createDirectory(`${config.assets.episodeBannerLocation}/${size}`);
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
let size = 'original';
|
|
33
|
-
createDirectory(`${config.assets.movieFanartLocation}/${size}`);
|
|
34
|
-
createDirectory(`${config.assets.moviePosterLocation}/${size}`);
|
|
35
|
-
createDirectory(`${config.assets.showPosterLocation}/${size}`);
|
|
36
|
-
createDirectory(`${config.assets.episodeBannerLocation}/${size}`);
|
|
37
|
-
}
|
|
@@ -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 _fs = require("fs");
|
|
9
|
-
|
|
10
|
-
var _generateAssetDirectories = _interopRequireDefault(require("../helpers/generateAssetDirectories"));
|
|
11
|
-
|
|
12
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
|
|
14
|
-
var _default = async args => {
|
|
15
|
-
try {
|
|
16
|
-
let config = JSON.parse(await _fs.promises.readFile('/etc/oblecto/config.json'));
|
|
17
|
-
(0, _generateAssetDirectories.default)(config);
|
|
18
|
-
} catch (e) {
|
|
19
|
-
console.log('Could not find config file');
|
|
20
|
-
console.log('Make sure oblecto has been initialized before regenerating asset directories');
|
|
21
|
-
}
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
exports.default = _default;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _database = require("../../../submodules/database");
|
|
9
|
-
|
|
10
|
-
var _default = async args => {
|
|
11
|
-
const sequelize = (0, _database.initDatabase)();
|
|
12
|
-
let options = {};
|
|
13
|
-
if ('--alter' in args) options = {
|
|
14
|
-
alter: true
|
|
15
|
-
};
|
|
16
|
-
await sequelize.authenticate();
|
|
17
|
-
await sequelize.sync(options);
|
|
18
|
-
await sequelize.close();
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
exports.default = _default;
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _uuid = require("uuid");
|
|
9
|
-
|
|
10
|
-
var _fs = require("fs");
|
|
11
|
-
|
|
12
|
-
var _nodeRsa = _interopRequireDefault(require("node-rsa"));
|
|
13
|
-
|
|
14
|
-
var _generateAssetDirectories = _interopRequireDefault(require("../helpers/generateAssetDirectories"));
|
|
15
|
-
|
|
16
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
-
|
|
18
|
-
var _default = async args => {
|
|
19
|
-
let config = JSON.parse(await _fs.promises.readFile(__dirname + '/../../../../res/config.json'));
|
|
20
|
-
|
|
21
|
-
try {
|
|
22
|
-
await _fs.promises.mkdir('/etc/oblecto');
|
|
23
|
-
} catch (e) {
|
|
24
|
-
if (e.code !== 'EEXIST') {
|
|
25
|
-
console.log('Unable to create Oblecto data directory. Aborting');
|
|
26
|
-
console.log('Please create the directory "/etc/oblecto" and give current user read/write permissions');
|
|
27
|
-
return;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
(0, _generateAssetDirectories.default)(config);
|
|
32
|
-
config.authentication.secret = (0, _uuid.v4)();
|
|
33
|
-
console.log('Generating federation UUID');
|
|
34
|
-
config.federation.uuid = (0, _uuid.v4)();
|
|
35
|
-
console.log('Creating config file');
|
|
36
|
-
|
|
37
|
-
try {
|
|
38
|
-
await _fs.promises.writeFile('/etc/oblecto/config.json', JSON.stringify(config, null, 4));
|
|
39
|
-
} catch (e) {
|
|
40
|
-
console.log(e);
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
console.log('Generating federation authentication keys');
|
|
44
|
-
const key = new _nodeRsa.default({
|
|
45
|
-
b: 2048
|
|
46
|
-
});
|
|
47
|
-
await _fs.promises.writeFile('/etc/oblecto/id_rsa', key.exportKey('pkcs1-private-pem'));
|
|
48
|
-
await _fs.promises.writeFile('/etc/oblecto/id_rsa.pub', key.exportKey('pkcs1-public-pem'));
|
|
49
|
-
console.log('Federation TLS keys will need to be generated manually');
|
|
50
|
-
console.log('Please refer to the Oblecto wiki for instructions');
|
|
51
|
-
console.log('https://github.com/robinp7720/Oblecto/wiki/Federation');
|
|
52
|
-
};
|
|
53
|
-
|
|
54
|
-
exports.default = _default;
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _default = async args => {
|
|
9
|
-
if (args.length === 1) args[1] = 'oblecto';
|
|
10
|
-
|
|
11
|
-
switch (args[1]) {
|
|
12
|
-
case 'oblecto':
|
|
13
|
-
await require('./general').default(args);
|
|
14
|
-
break;
|
|
15
|
-
|
|
16
|
-
case 'database':
|
|
17
|
-
await require('./database').default(args);
|
|
18
|
-
break;
|
|
19
|
-
|
|
20
|
-
case 'assets':
|
|
21
|
-
await require('./assets').default(args);
|
|
22
|
-
break;
|
|
23
|
-
}
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
exports.default = _default;
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _user = require("../../models/user");
|
|
9
|
-
|
|
10
|
-
var _database = require("../../submodules/database");
|
|
11
|
-
|
|
12
|
-
var _argumentError = _interopRequireDefault(require("./helpers/argumentError"));
|
|
13
|
-
|
|
14
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
-
|
|
16
|
-
var _default = async args => {
|
|
17
|
-
const sequelize = (0, _database.initDatabase)();
|
|
18
|
-
|
|
19
|
-
if (args.length < 2) {
|
|
20
|
-
(0, _argumentError.default)('removepassword', ['username']);
|
|
21
|
-
return;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
let user = await _user.User.findOne({
|
|
25
|
-
where: {
|
|
26
|
-
username: args[1]
|
|
27
|
-
}
|
|
28
|
-
});
|
|
29
|
-
|
|
30
|
-
if (user == null) {
|
|
31
|
-
console.log(`User ${args[1]} was not found, please check your spelling`);
|
|
32
|
-
} else {
|
|
33
|
-
await user.update({
|
|
34
|
-
password: ''
|
|
35
|
-
});
|
|
36
|
-
console.log(`User ${args[1]}'s password has been removed`);
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
sequelize.close();
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
exports.default = _default;
|
package/dist/config.js
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.ConfigManager = exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _os = _interopRequireDefault(require("os"));
|
|
9
|
-
|
|
10
|
-
var _fs = _interopRequireDefault(require("fs"));
|
|
11
|
-
|
|
12
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
|
|
14
|
-
let config = {};
|
|
15
|
-
const ConfigManager = {
|
|
16
|
-
loadFile: function loadFile(file) {
|
|
17
|
-
try {
|
|
18
|
-
return JSON.parse(_fs.default.readFileSync(file, 'utf8'));
|
|
19
|
-
} catch (ex) {
|
|
20
|
-
if (ex.code === 'ENOENT') {
|
|
21
|
-
console.log(`No config file at ${file}, continuing to next file`);
|
|
22
|
-
return {};
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
console.log(`There is an error with the config file located at ${file}:`);
|
|
26
|
-
console.log(ex.message);
|
|
27
|
-
return {};
|
|
28
|
-
}
|
|
29
|
-
},
|
|
30
|
-
loadConfigFiles: function loadConfigs() {
|
|
31
|
-
config = { ...this.loadFile('/etc/oblecto/config.json')
|
|
32
|
-
};
|
|
33
|
-
},
|
|
34
|
-
saveConfig: function saveConfig() {
|
|
35
|
-
_fs.default.writeFile('/etc/oblecto/config.json', JSON.stringify(config, null, 4), (stat, err) => {
|
|
36
|
-
if (err) {
|
|
37
|
-
console.log('An error has occurred while writing the config file: ', err);
|
|
38
|
-
}
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
};
|
|
42
|
-
exports.ConfigManager = ConfigManager;
|
|
43
|
-
ConfigManager.loadConfigFiles();
|
|
44
|
-
var _default = config;
|
|
45
|
-
exports.default = _default;
|