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
package/package.json CHANGED
@@ -1,9 +1,10 @@
1
1
  {
2
2
  "name": "oblecto",
3
- "version": "v0.2.9",
3
+ "version": "v0.3.1",
4
4
  "description": "Oblecto is a frontend agnostic media butler bringing high performance high quality media streaming to the home ",
5
5
  "author": "Robin <robin@mysunland.org>",
6
6
  "repository": "robinp7720/Oblecto",
7
+ "license": "AGPL-3.0-or-later",
7
8
  "private": false,
8
9
  "bin": {
9
10
  "oblecto": "./dist/bin/oblecto.js"
@@ -14,53 +15,80 @@
14
15
  "Oblecto-Web/dist/",
15
16
  "images/"
16
17
  ],
18
+ "type": "module",
17
19
  "scripts": {
18
- "build:web": "cd Oblecto-Web; npm install --unsafe-perms; npm run build; cd ..;",
19
- "build": "./node_modules/@babel/cli/bin/babel.js src -d dist",
20
- "prepare": "npm run build && npm run build:web",
21
- "start": "./node_modules/@babel/node/bin/babel-node.js src",
22
- "debug": "./node_modules/@babel/node/bin/babel-node.js src --inspect=0.0.0.0",
23
- "nodemon": "nodemon src --exec './node_modules/@babel/node/bin/babel-node.js src --inspect=0.0.0.0'",
24
- "test": "scripts/test.sh"
20
+ "build:web": "cd Oblecto-Web; npm install --unsafe-perms --legacy-peer-deps; npm run build; cd ..;",
21
+ "build": "npm run clean && npm run build:web && npx esbuild src/index.ts --bundle --platform=node --format=esm --outfile=dist/index.js --packages=external && npx esbuild src/bin/oblecto.ts --bundle --platform=node --format=esm --outfile=dist/bin/oblecto.js --packages=external && chmod +x ./dist/bin/oblecto.js",
22
+ "clean": "rm -rf dist/",
23
+ "prepare": "npm run build",
24
+ "start": "node dist/index.js",
25
+ "dev": "tsx src/index.ts",
26
+ "oblecto": "node dist/bin/oblecto.js",
27
+ "oblecto:dev": "tsx src/bin/oblecto.ts",
28
+ "debug": "node --inspect=0.0.0.0 --loader tsx src/index.ts",
29
+ "test:mocha": "mocha --extension ts --require tsx tests/mocha",
30
+ "test:startup": "scripts/test.sh",
31
+ "test": "npm run test:mocha",
32
+ "lint": "eslint .",
33
+ "lint:fix": "eslint . --fix"
25
34
  },
26
35
  "dependencies": {
27
- "async": "^3.2.0",
28
- "axios": "^0.21.1",
29
- "bcrypt": "^5.0.0",
30
- "fastest-levenshtein": "^1.0.12",
31
- "fluent-ffmpeg": "^2.1.2",
32
- "guessit-exec": "0.0.1",
36
+ "async": "^3.2.6",
37
+ "axios": "^1.13.2",
38
+ "basic-ftp": "^5.0.5",
39
+ "bcrypt": "^6.0.0",
40
+ "cors": "^2.8.5",
41
+ "express": "^5.2.1",
42
+ "express-fileupload": "^1.5.2",
43
+ "fastest-levenshtein": "^1.0.16",
44
+ "fluent-ffmpeg": "^2.1.3",
45
+ "guessit-exec": "^0.0.1",
33
46
  "guessit-wrapper": "^1.0.1",
34
- "jsonwebtoken": "^8.5.1",
35
- "mime-types": "^2.1.27",
36
- "mkdirp": "^1.0.4",
37
- "moviedb-promise": "^3.1.2",
38
- "mysql2": "^2.2.5",
47
+ "jsonwebtoken": "^9.0.3",
48
+ "mime-types": "^3.0.2",
49
+ "mkdirp": "^3.0.1",
50
+ "moviedb-promise": "^4.0.7",
51
+ "mysql2": "^3.16.0",
39
52
  "neo-blessed": "^0.2.0",
40
53
  "node-rsa": "^1.1.1",
41
54
  "node-tvdb": "^4.1.0",
42
- "recursive-readdir": "^2.2.2",
43
- "restify": "^8.5.1",
44
- "restify-cors-middleware": "^1.1.1",
45
- "restify-errors": "^8.0.2",
46
- "sequelize": "^6.3.5",
47
- "sharp": "^0.25.0",
48
- "socket.io": "^2.3.0",
49
- "sqlite3": "5.0.0",
50
- "uuid": "^8.3.1",
51
- "which": "^1.3.1"
55
+ "primus": "^8.0.9",
56
+ "recursive-readdir": "^2.2.3",
57
+ "sequelize": "^6.37.7",
58
+ "sharp": "^0.34.5",
59
+ "socket.io": "^4.8.1",
60
+ "sqlite3": "^5.1.7",
61
+ "ssh2-sftp-client": "^12.0.1",
62
+ "uuid": "^13.0.0",
63
+ "which": "^6.0.0",
64
+ "winston": "^3.19.0"
52
65
  },
53
66
  "devDependencies": {
54
- "@babel/cli": "^7.11.6",
55
- "@babel/core": "^7.11.6",
56
- "@babel/node": "^7.10.5",
57
- "@babel/preset-env": "^7.11.5",
58
- "@types/bcrypt": "^3.0.0",
59
- "@types/restify-errors": "^4.3.3",
60
- "eslint": "^7.11.0",
67
+ "@types/async": "^3.2.25",
68
+ "@types/bcrypt": "^5.0.1",
69
+ "@types/cors": "^2.8.19",
70
+ "@types/express": "^5.0.6",
71
+ "@types/express-fileupload": "^1.5.1",
72
+ "@types/fluent-ffmpeg": "^2.1.28",
73
+ "@types/jsonwebtoken": "^9.0.10",
74
+ "@types/mime-types": "^3.0.1",
75
+ "@types/mocha": "^10.0.10",
76
+ "@types/primus": "^7.3.9",
77
+ "@types/socket.io": "^3.0.2",
78
+ "@types/which": "^3.0.4",
79
+ "@typescript-eslint/eslint-plugin": "^8.50.0",
80
+ "@typescript-eslint/parser": "^8.50.0",
81
+ "chai": "^6.2.1",
82
+ "esbuild": "^0.27.2",
83
+ "eslint": "^9.39.2",
84
+ "eslint-plugin-jsdoc": "^61.5.0",
61
85
  "expect.js": "^0.3.1",
62
- "jshint": "^2.12.0",
63
- "mocha": "^8.3.1",
64
- "nodemon": "^2.0.5"
86
+ "globals": "^16.5.0",
87
+ "mocha": "^11.7.5",
88
+ "nodemon": "^3.1.11",
89
+ "ts-node": "^10.9.2",
90
+ "tsx": "^4.21.0",
91
+ "typescript": "^5.9.3",
92
+ "typescript-eslint": "^8.50.0"
65
93
  }
66
94
  }
package/res/AGENTS.md ADDED
@@ -0,0 +1,8 @@
1
+ # Resources (res/)
2
+
3
+ What lives here
4
+ - `config.json` is the default configuration template used by `oblecto init`.
5
+
6
+ Notes
7
+ - Update this file only when changing default config values or schema.
8
+ - Keep keys aligned with `src/interfaces/config.ts`.
package/res/config.json CHANGED
@@ -81,12 +81,12 @@
81
81
  },
82
82
  "fileExtensions": {
83
83
  "video": [
84
- ".mp4",
85
- ".avi",
86
- ".iso",
87
- ".m4v",
88
- ".mkv",
89
- ".mk3d"
84
+ "mp4",
85
+ "avi",
86
+ "iso",
87
+ "m4v",
88
+ "mkv",
89
+ "mk3d"
90
90
  ]
91
91
  },
92
92
  "authentication": {
@@ -126,5 +126,27 @@
126
126
  "key": "/etc/oblecto/keys/tria.pub"
127
127
  }
128
128
  }
129
- }
129
+ },
130
+ "seedboxImport": {
131
+ "concurrency": 1
132
+ },
133
+ "seedboxes": [
134
+ {
135
+ "name": "Main seedbox",
136
+ "storageDriver": "ftp",
137
+ "storageDriverOptions": {
138
+ "host": "",
139
+ "port": 21,
140
+ "username": "username",
141
+ "password": "password"
142
+ },
143
+ "mediaImport": {
144
+ "movieDirectory": "/downloads/finished/movie/",
145
+ "seriesDirectory": "/downloads/finished/series/"
146
+ },
147
+ "automaticImport": true,
148
+ "deleteOnImport": false,
149
+ "enabled": false
150
+ }
151
+ ]
130
152
  }
@@ -1 +0,0 @@
1
- .system-notification{background:#272222!important;padding:7px 10px;border:1px solid #423a3a;margin-bottom:4px}.system-notification .notification-title{font-size:.8em}.system-notification .notification-content{font-size:.9em}#app{background:#696060;background:linear-gradient(180deg,#696060,#55535b 36%,#28343b);background-position:top;background-attachment:fixed;background-repeat:round;background-size:cover;padding-top:415px;padding-bottom:70px;min-height:100vh;color:#eee}@media screen and (max-width:700px){#app{padding-top:375px}}.v--modal{background:#696060;background:linear-gradient(180deg,#696060,#55535b 36%,#28343b)}@media screen and (max-height:1200px){#app{padding-top:0}}ul{margin:0;padding:0}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease}.long-fade-enter-active,.long-fade-leave-active{transition:opacity .7s ease}.fade-enter,.fade-leave-active,.long-fade-enter,.long-fade-leave-active{opacity:0}.child-view{position:absolute;transition:all .2s cubic-bezier(.55,0,.1,1)}.slide-left-enter,.slide-right-leave-active{opacity:0;transform:translate(30px)}.slide-left-leave-active,.slide-right-enter{opacity:0;transform:translate(-30px)}.nav-bar[data-v-18359e53]{top:0;height:50px;width:100%;position:fixed;z-index:3;background-color:#342f2f;box-shadow:0 0 5px 2px rgba(52,47,47,.75)}.nav-bar .search[data-v-18359e53]{display:inline-block;width:100%;position:relative}@media screen and (max-width:800px){.nav-bar .search[data-v-18359e53]{display:none}}.nav-bar .search button[data-v-18359e53]{background:none;outline:none;border:none;padding:0;position:absolute;color:hsla(0,0%,100%,.8);top:17px;right:8px}.nav-bar .search .input-text[data-v-18359e53]{margin:10px 0;height:30px;padding:5px;border-radius:3px;width:100%;background-color:hsla(0,0%,100%,.3);border:none}.nav-bar .container[data-v-18359e53]{column-count:3;height:100%}@media screen and (max-width:800px){.nav-bar .container[data-v-18359e53]{column-count:2}}.nav-bar .nav-link[data-v-18359e53]{display:inline-block;height:100%;line-height:50px;padding:0 15px;font-family:Roboto;font-size:14px;text-decoration:none;color:#eee}.nav-right[data-v-18359e53]{text-align:right}.nav-left[data-v-18359e53]{height:50px;vertical-align:center}.nav-left .brand[data-v-18359e53]{font-weight:700;padding:15px 5px;height:100%;display:inline-block;float:left;margin:0 15px}.nav-left .brand img[data-v-18359e53]{height:100%}.watching[data-v-5ca41f6d]{position:relative;margin-top:50px;margin-bottom:20px;width:100%;padding:20px 0;background:#4c4545;box-shadow:0 0 5px 2px rgba(35,34,38,.75);z-index:2;height:356px}@media screen and (min-height:1200px){.watching[data-v-5ca41f6d]{position:fixed;top:50px;margin:0}}@media screen and (max-width:700px){.watching[data-v-5ca41f6d]{height:316px}}.tabs-component-tabs{list-style:none;margin-top:0;margin-bottom:15px;position:relative;overflow-x:auto;white-space:nowrap}.tabs-component-tabs .tabs-component-tab{display:inline-block}.tabs-component-tabs .tabs-component-tab a{color:#999;display:block;text-decoration:none;padding:10px 20px;font-family:Roboto;font-size:20px;text-transform:capitalize;font-weight:700}.tabs-component-tabs .is-active a{color:#eee}.badge{display:inline-block;margin-left:10px;background-color:rgba(0,0,0,.5);padding:0 5px;border-radius:3px;color:#999}.slide-fade-enter-active[data-v-b0a052f6],.slide-fade-leave-active[data-v-b0a052f6]{transition:all .5s}.slide-fade-enter[data-v-b0a052f6],.slide-fade-leave-to[data-v-b0a052f6]{transform:translateX(10px);opacity:0}.episode[data-v-b0a052f6]{display:inline-block;margin:0 10px;width:357px}.title[data-v-b0a052f6]{font-size:13px;color:#eee}.subtitle[data-v-b0a052f6],.title[data-v-b0a052f6]{font-family:Roboto,sans-serif;margin-top:5px;padding:0;text-overflow:ellipsis;overflow:hidden}.subtitle[data-v-b0a052f6]{font-size:12px;color:#aaa}.episode-poster[data-v-b0a052f6]{box-shadow:0 0 5px 0 rgba(0,0,0,.75);background-color:rgba(0,0,0,.8);background-size:cover;background-position:50%;border-radius:3px;height:200px;width:357px;border:0 solid #ae6600;transition:box-shadow .1s,opacity .1s;position:relative;overflow:hidden;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}@media screen and (max-width:700px){.episode[data-v-b0a052f6]{width:285.6px;margin:0 5px}.episode-poster[data-v-b0a052f6]{height:160px;width:285.6px}}.actions[data-v-b0a052f6]{position:absolute;bottom:-50px;text-align:right;transition:bottom .2s;width:100%;padding:5px;background-color:rgba(0,0,0,.5)}a[data-v-b0a052f6]{color:#fff;margin:0 5px;cursor:pointer}.episode-poster[data-v-b0a052f6]:hover{box-shadow:0 0 0 2px rgba(174,102,0,.75);opacity:1}.episode-poster:hover .actions[data-v-b0a052f6]{bottom:0}a.play[data-v-b0a052f6]{opacity:0;display:block;font-size:4em;margin:0;width:100px;height:100px;background-color:rgba(0,0,0,.5);border:2px solid #fff;border-radius:100%;text-align:center;line-height:100px;transition:opacity .2s}.fa[data-v-b0a052f6]{margin-left:10px}.episode-poster:hover a.play[data-v-b0a052f6]{opacity:.4}a.play[data-v-b0a052f6]:hover{opacity:1!important}.episode-poster .title[data-v-b0a052f6]{position:absolute;bottom:0;left:0;font-size:1.4em;padding:10px}.progress[data-v-b0a052f6]{height:5px;background-color:#ae6600;position:absolute;bottom:0;left:0}.titlebar[data-v-6b043254]{overflow:hidden;padding:30px 20px 15px}.titlebar .title[data-v-6b043254]{padding:0;margin:0;float:left;font-family:roboto;font-size:20px}.titlebar .scroll-buttons[data-v-6b043254]{float:right;font-size:20px}.titlebar .scroll-buttons .scroll-button[data-v-6b043254]{margin:0 10px}.scroller[data-v-80d36168]{overflow:hidden;overflow-x:visible;white-space:nowrap;padding:5px 0}.staggered-fade-move[data-v-80d36168]{transition:transform 1s}.show[data-v-59eed500]{display:inline-block;margin:0 10px;width:136px;position:relative}.title[data-v-59eed500]{font-size:13px;color:#eee}.subtitle[data-v-59eed500],.title[data-v-59eed500]{font-family:Roboto,sans-serif;width:136px;margin-top:5px;padding:0;text-overflow:ellipsis;overflow:hidden}.subtitle[data-v-59eed500]{font-size:12px;color:#aaa}.show-poster[data-v-59eed500]{box-sizing:border-box;box-shadow:0 0 5px 0 rgba(0,0,0,.75);background-color:rgba(0,0,0,.8);background-size:cover;background-position:50%;height:200px;width:136px;border-radius:3px;border:0 solid #ae6600;transition:box-shadow .1s,opacity .1s;position:relative;overflow:hidden;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}@media screen and (max-width:700px){.show[data-v-59eed500]{width:108.8px;margin:0 5px}.show-poster[data-v-59eed500]{height:160px;width:108.8px}}.actions[data-v-59eed500]{position:absolute;bottom:-28px;text-align:right;transition:bottom .2s;width:100%;padding:5px;background-color:rgba(0,0,0,.5);overflow:visible}a[data-v-59eed500]{color:#fff;margin:0 5px;cursor:pointer}.show-poster[data-v-59eed500]:hover{box-shadow:0 0 0 2px rgba(174,102,0,.75)}.actions[data-v-59eed500]:hover,.show-poster:hover .actions[data-v-59eed500]{bottom:0}a.play[data-v-59eed500]{opacity:0;display:block;font-size:4em;margin:0;width:100px;height:100px;background-color:rgba(0,0,0,.5);border:2px solid #fff;border-radius:100%;text-align:center;line-height:100px;transition:opacity .2s}.show-poster:hover a.play[data-v-59eed500]{opacity:.4}a.play[data-v-59eed500]:hover{opacity:1!important}.slide-fade-enter-active[data-v-383eeac0],.slide-fade-leave-active[data-v-383eeac0]{transition:all .5s}.slide-fade-enter[data-v-383eeac0],.slide-fade-leave-to[data-v-383eeac0]{transform:translateX(10px);opacity:0}.movie-horizontal[data-v-383eeac0]{display:inline-block;margin:0 10px;width:357px}.movie-vertical[data-v-383eeac0]{display:inline-block;margin:0 10px;width:136px;position:relative}.title[data-v-383eeac0]{font-size:13px;color:#eee}.subtitle[data-v-383eeac0],.title[data-v-383eeac0]{font-family:Roboto,sans-serif;margin-top:5px;padding:0;text-overflow:ellipsis;overflow:hidden}.subtitle[data-v-383eeac0]{font-size:12px;color:#aaa}.movie-poster[data-v-383eeac0]{box-shadow:0 0 5px 0 rgba(0,0,0,.75);background-color:rgba(0,0,0,.8);background-size:cover;background-position:50%;border-radius:3px;transition:box-shadow .1s,opacity .1s;position:relative;overflow:hidden;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.movie-horizontal .movie-poster[data-v-383eeac0]{height:200px;width:357px}.movie-vertical .movie-poster[data-v-383eeac0]{height:200px;width:136px}@media screen and (max-width:700px){.movie-horizontal[data-v-383eeac0]{width:285.6px;margin:0 5px}.movie-vertical[data-v-383eeac0]{width:108.8px;margin:0 5px}.movie-horizontal .movie-poster[data-v-383eeac0]{height:160px;width:285.6px}.movie-vertical .movie-poster[data-v-383eeac0]{height:160px;width:108.8px}}.actions[data-v-383eeac0]{position:absolute;bottom:-50px;text-align:right;transition:bottom .2s;width:100%;padding:5px;background-color:rgba(0,0,0,.5)}a[data-v-383eeac0]{color:#fff;margin:0 5px;cursor:pointer}.movie-poster[data-v-383eeac0]:hover{box-shadow:0 0 0 2px rgba(174,102,0,.75);opacity:1}.movie-poster:hover .actions[data-v-383eeac0]{bottom:0}a.play[data-v-383eeac0]{opacity:0;display:block;font-size:4em;margin:0;width:100px;height:100px;background-color:rgba(0,0,0,.5);border:2px solid #fff;border-radius:100%;text-align:center;line-height:100px;transition:opacity .2s}.fa[data-v-383eeac0]{margin-left:10px}.movie-poster:hover a.play[data-v-383eeac0]{opacity:.4}a.play[data-v-383eeac0]:hover{opacity:1!important}.movie-poster .title[data-v-383eeac0]{position:absolute;bottom:0;left:0;font-size:1.4em;padding:10px}.progress[data-v-383eeac0]{height:5px;background-color:#ae6600;position:absolute;bottom:0;left:0}video{width:100%;height:100%}.playBar{height:100%;position:fixed;z-index:10}.playBar .bar{position:fixed;bottom:0;transition:bottom .2s;padding:20px;padding-top:25px;width:100%;color:#eee;z-index:1000;background:linear-gradient(180deg,#645c5c,#5c5454);box-shadow:0 0 5px 2px rgba(44,40,40,.75)}.playBar .bar .seriesid{color:hsla(0,0%,100%,.6)}.playBar .bar .nextepisode{cursor:pointer;background-color:rgba(44,40,40,.6);box-shadow:0 0 1px 2px rgba(44,40,40,.6);transition:background-color .1s,box-shadow .1s;padding:5px 10px;margin-left:10px;border-radius:3px}.playBar .bar .nextepisode:hover{background-color:rgba(44,40,40,.9);box-shadow:0 0 1px 2px rgba(44,40,40,.9)}.playBar .player{position:fixed;bottom:0;height:100%;width:100%;background:#000;z-index:5;transition:top .2s,height .2s,width .2s}.playBar .small{height:200px;width:auto;bottom:74px;right:10px;border-radius:3px;overflow:hidden;box-shadow:0 0 5px 0 rgba(0,0,0,.75)}.playBar .small video{width:auto}@media only screen and (max-width:600px){.playBar .small{height:100px;top:calc(100% - 169px)}}@media only screen and (max-height:600px){.playBar .small{height:100px;top:calc(100% - 169px)}}.playBar .hidden{top:100%}.playBar .right{float:right}.playBar .toggle-button{cursor:pointer}.progressbarContainer{height:10px;position:absolute;top:0;left:0;width:100%;background-color:rgba(0,0,0,.25);box-shadow:inset 0 0 5px 0 rgba(44,40,40,.75);cursor:pointer}.progressbarContainer .progressbar{position:absolute;top:0;left:0;height:100%;background-color:#ae6600;z-index:4;box-shadow:0 0 5px 2px rgba(44,40,40,.75)}.progressbarContainer .progressbarload{position:absolute;top:0;left:0;height:100%;background-color:#ae6600;box-shadow:0 0 5px 2px #421c00;opacity:.2}@keyframes loading{0%{left:-10%}to{left:100%}}.loading{width:10%!important;position:relative;animation-name:loading;animation-timing-function:linear;animation-iteration-count:infinite;animation-duration:4s}.quality-selector{position:fixed;bottom:50px;right:10px;width:auto;background:#696060;box-shadow:0 0 5px 2px rgba(44,40,40,.75)}.quality-selector ul{list-style:none;border-radius:3px}.quality-selector ul li{padding:20px;cursor:pointer}.quality-selector ul li.selected{background-color:rgba(0,0,0,.3)}.quality-selector ul li:hover{background-color:rgba(0,0,0,.5)}.hiddenBar{cursor:none}.hiddenBar .bar{bottom:-70px}@keyframes rotating-data-v-e433c9c8{0%{-transform:rotate(0deg)}to{transform:rotate(1turn)}}.loader[data-v-e433c9c8]{width:128px;height:128px;background-color:transparent;border:10px solid rgba(0,0,0,.2);border-bottom:10px solid #f15a24;border-radius:100%;position:fixed;top:50%;left:50%;margin-top:-64px;margin-left:-64px;animation:scale-width-data-v-e433c9c8 .5s linear,rotating-data-v-e433c9c8 2s linear infinite}.loading-container[data-v-e433c9c8]{position:fixed;top:0;left:0;width:100%;height:100%;z-index:100;background:#696060;background:linear-gradient(180deg,#696060,#55535b 36%,#28343b);background-position:top;background-attachment:fixed;background-repeat:round;background-size:cover}h3[data-v-241cc0af]{width:100%;color:#fff;margin:0;margin-bottom:10px;padding:20px;background-color:rgba(0,0,0,.3);box-shadow:0 0 5px 2px rgba(52,47,47,.75)}ul[data-v-241cc0af]{list-style:none;padding:0;margin:0}ul li a[data-v-241cc0af]{display:inline-block;width:100%;padding:10px 20px;color:#fff;text-decoration:none;transition:background-color .1s}ul li a[data-v-241cc0af]:hover{background-color:rgba(0,0,0,.1);box-shadow:0 0 2px 2px rgba(52,47,47,.2)}h3[data-v-6c4eeb7e]{width:100%;color:#fff;margin:0;margin-bottom:10px;padding:20px;background-color:rgba(0,0,0,.3);box-shadow:0 0 5px 2px rgba(52,47,47,.75)}.wrapper[data-v-6c4eeb7e]{width:100%}.wrapper .half[data-v-6c4eeb7e]{width:50%;float:left;padding:10px}.wrapper .poster img[data-v-6c4eeb7e]{width:100%}.body[data-v-0ee45143]{padding:10px}h3[data-v-0ee45143]{width:100%;color:#fff;margin:0;margin-bottom:10px;padding:20px;background-color:rgba(0,0,0,.3);box-shadow:0 0 5px 2px rgba(52,47,47,.75)}label[data-v-0ee45143]{display:block;margin:5px;margin-left:0}input[data-v-0ee45143]{margin-bottom:10px;border-radius:0;padding:10px;width:100%;border:2px solid #a8cca1}.invalid[data-v-0ee45143]{border-color:#ff9f78}.footer[data-v-0ee45143]{background-color:rgba(0,0,0,.3);box-shadow:0 0 5px 2px rgba(52,47,47,.75);padding:10px;overflow:hidden}.footer button[data-v-0ee45143]{float:right;background-color:rgba(0,0,0,.5);border:1px solid rgba(0,0,0,.8);color:hsla(0,0%,100%,.5);padding:10px;border-radius:3px;cursor:pointer}.container[data-v-10c23def]{padding:10px}h3[data-v-10c23def]{width:100%;color:#fff;margin:0 0 10px;padding:20px;background-color:rgba(0,0,0,.3);box-shadow:0 0 5px 2px rgba(52,47,47,.75)}ul[data-v-10c23def]{list-style:none;padding:0;margin:0}ul li span[data-v-10c23def]{display:inline-block;width:100%;padding:10px 20px;color:#fff;text-decoration:none;transition:background-color .1s}ul li span[data-v-10c23def]:hover{background-color:rgba(0,0,0,.1);box-shadow:0 0 2px 2px rgba(52,47,47,.2)}.container[data-v-512bec04]{padding:10px}h3[data-v-512bec04]{width:100%;color:#fff;margin:0;margin-bottom:10px;padding:20px;background-color:rgba(0,0,0,.3);box-shadow:0 0 5px 2px rgba(52,47,47,.75)}ul[data-v-512bec04]{list-style:none;padding:0;margin:0}ul li span[data-v-512bec04]{display:inline-block;width:100%;padding:10px 20px;color:#fff;text-decoration:none;transition:background-color .1s}ul li span[data-v-512bec04]:hover{background-color:rgba(0,0,0,.1);box-shadow:0 0 2px 2px rgba(52,47,47,.2)}.body[data-v-22b7067a]{padding:10px}h3[data-v-22b7067a]{width:100%;color:#fff;margin:0;margin-bottom:10px;padding:20px;background-color:rgba(0,0,0,.3);box-shadow:0 0 5px 2px rgba(52,47,47,.75)}label[data-v-22b7067a]{display:block;margin:5px;margin-left:0}input[data-v-22b7067a]{margin-bottom:10px;border-radius:0;padding:10px;width:100%;border:2px solid #a8cca1}.invalid[data-v-22b7067a]{border-color:#ff9f78}.footer[data-v-22b7067a]{background-color:rgba(0,0,0,.3);box-shadow:0 0 5px 2px rgba(52,47,47,.75);padding:10px;overflow:hidden}.footer button[data-v-22b7067a]{float:right;background-color:rgba(0,0,0,.5);border:1px solid rgba(0,0,0,.8);color:hsla(0,0%,100%,.5);padding:10px;border-radius:3px;cursor:pointer}.body[data-v-3d8b2d19]{padding:10px}h3[data-v-3d8b2d19]{width:100%;color:#fff;margin:0;margin-bottom:10px;padding:20px;background-color:rgba(0,0,0,.3);box-shadow:0 0 5px 2px rgba(52,47,47,.75)}label[data-v-3d8b2d19]{display:block;margin:5px;margin-left:0}input[data-v-3d8b2d19]{margin-bottom:10px;border-radius:0;padding:10px;width:100%;border:2px solid #a8cca1}.invalid[data-v-3d8b2d19]{border-color:#ff9f78}.footer[data-v-3d8b2d19]{background-color:rgba(0,0,0,.3);box-shadow:0 0 5px 2px rgba(52,47,47,.75);padding:10px;overflow:hidden}.footer button[data-v-3d8b2d19]{float:right;background-color:rgba(0,0,0,.5);border:1px solid rgba(0,0,0,.8);color:hsla(0,0%,100%,.5);padding:10px;border-radius:3px;cursor:pointer}.body[data-v-5051d560]{padding:10px}h3[data-v-5051d560]{width:100%;color:#fff;margin:0;margin-bottom:10px;padding:20px;background-color:rgba(0,0,0,.3);box-shadow:0 0 5px 2px rgba(52,47,47,.75)}label[data-v-5051d560]{display:block;margin:5px;margin-left:0}input[data-v-5051d560]{margin-bottom:10px;border-radius:0;padding:10px;width:100%;border:2px solid #a8cca1}.invalid[data-v-5051d560]{border-color:#ff9f78}.footer[data-v-5051d560]{background-color:rgba(0,0,0,.3);box-shadow:0 0 5px 2px rgba(52,47,47,.75);padding:10px;overflow:hidden}.footer button[data-v-5051d560]{float:right;background-color:rgba(0,0,0,.5);border:1px solid rgba(0,0,0,.8);color:hsla(0,0%,100%,.5);padding:10px;border-radius:3px;cursor:pointer}.body[data-v-452227c4]{padding:10px}h3[data-v-452227c4]{width:100%;color:#fff;margin:0;margin-bottom:10px;padding:20px;background-color:rgba(0,0,0,.3);box-shadow:0 0 5px 2px rgba(52,47,47,.75)}label[data-v-452227c4]{display:block;margin:5px;margin-left:0}input[data-v-452227c4]{margin-bottom:10px;border-radius:0;padding:10px;width:100%;border:2px solid #a8cca1}.invalid[data-v-452227c4]{border-color:#ff9f78}.footer[data-v-452227c4]{background-color:rgba(0,0,0,.3);box-shadow:0 0 5px 2px rgba(52,47,47,.75);padding:10px;overflow:hidden}.footer button[data-v-452227c4]{float:right;background-color:rgba(0,0,0,.5);border:1px solid rgba(0,0,0,.8);color:hsla(0,0%,100%,.5);padding:10px;border-radius:3px;cursor:pointer}.container[data-v-0f0921f6]{padding:10px}h3[data-v-0f0921f6]{width:100%;color:#fff;margin:0;margin-bottom:10px;padding:20px;background-color:rgba(0,0,0,.3);box-shadow:0 0 5px 2px rgba(52,47,47,.75)}ul[data-v-0f0921f6]{list-style:none;padding:0;margin:0}ul li span[data-v-0f0921f6]{display:inline-block;width:100%;padding:10px 20px;color:#fff;text-decoration:none;cursor:pointer;transition:background-color .1s}ul li span[data-v-0f0921f6]:hover{background-color:rgba(0,0,0,.1);box-shadow:0 0 2px 2px rgba(52,47,47,.2)}.info-container[data-v-0dad31d7]{padding:50px 10px 0}.info[data-v-0dad31d7]{font-size:1em;background:#696060;padding-bottom:40px;min-height:270px}.info .poster[data-v-0dad31d7],.info[data-v-0dad31d7]{border-radius:3px;box-shadow:0 2px 5px 2px rgba(52,47,47,.75)}.info .poster[data-v-0dad31d7]{height:300px;width:204px;float:left;overflow:hidden;margin:-50px 20px 20px;background:#000}@media screen and (max-width:700px){.info .poster[data-v-0dad31d7]{height:200px;width:133.333px}}.info .poster img[data-v-0dad31d7]{height:100%}.info .right[data-v-0dad31d7]{padding:20px}.info .right h2[data-v-0dad31d7]{padding:0;font-size:1.2em;margin:0 0 5px}.info .right .genres[data-v-0dad31d7],.info .right .year[data-v-0dad31d7]{color:hsla(0,50%,96%,.6);margin-bottom:10px;padding:0;font-weight:400}.info .right p[data-v-0dad31d7]{color:hsla(0,50%,96%,.9);padding:0;margin:20px 0 0;max-width:900px}.info .right .genres[data-v-0dad31d7]{float:right;margin-top:20px}.episodes[data-v-0dad31d7]{width:100%}.genres[data-v-0dad31d7]{list-style:none}.genres li[data-v-0dad31d7]{display:inline-block;margin-right:3px;font-style:italic}.genres li[data-v-0dad31d7]:after{content:","}.genres li[data-v-0dad31d7]:last-child:after{content:""}.info-container[data-v-44012810]{margin-top:-20px;padding:400px 10px 10px;background-size:cover;background-position:center 0;position:relative;z-index:0}.info[data-v-44012810]{font-size:1em;background:#696060;padding-bottom:40px;min-height:270px}.info .poster[data-v-44012810],.info[data-v-44012810]{border-radius:3px;box-shadow:0 2px 5px 2px rgba(52,47,47,.75)}.info .poster[data-v-44012810]{position:relative;height:300px;float:left;overflow:hidden;margin:-50px 20px 20px}@media screen and (max-width:700px){.info .poster[data-v-44012810]{height:200px}}.info .poster img[data-v-44012810]{height:100%}.info .right[data-v-44012810]{padding:20px}.info .right h2[data-v-44012810]{padding:0;font-size:1.2em;margin:0 0 5px}.info .right .genres[data-v-44012810],.info .right .year[data-v-44012810]{color:hsla(0,50%,96%,.6);margin-bottom:10px;padding:0;font-weight:400}.info .right p[data-v-44012810]{color:hsla(0,50%,96%,.9);padding:0;margin:20px 0 0;max-width:900px}.info .right .genres[data-v-44012810]{float:right;margin-top:20px}.genres[data-v-44012810]{list-style:none}.genres li[data-v-44012810]{display:inline-block;margin-right:3px;font-style:italic}.genres li[data-v-44012810]:after{content:","}.genres li[data-v-44012810]:last-child:after{content:""}a[data-v-44012810]{color:#fff;margin:0 5px;cursor:pointer}.fa[data-v-44012810]{margin-left:10px}a.play[data-v-44012810]{opacity:0;display:block;font-size:4em;margin:0;width:100px;height:100px;position:absolute;top:calc(50% - 50px);left:calc(50% - 50px);background-color:rgba(0,0,0,.5);border:2px solid #fff;border-radius:100%;text-align:center;line-height:100px;transition:opacity .2s}.poster:hover a.play[data-v-44012810]{opacity:.4}a.play[data-v-44012810]:hover{opacity:1!important}.error[data-v-44012810]{background:#694040;box-shadow:0 0 2px 2px rgba(42,25,25,.75);padding:10px;border-spacing:0;list-style:none;width:100%;border-radius:3px;overflow:hidden;text-align:center}.file-list-container[data-v-5cf9c07e]{padding:0 10px}.file-list[data-v-5cf9c07e]{background:#696060;box-shadow:0 0 2px 2px rgba(52,47,47,.75);border-spacing:0;list-style:none;width:100%;border-radius:3px;overflow:hidden}.file-list-item[data-v-5cf9c07e]{padding:10px 30px}.file-list-item[data-v-5cf9c07e]:nth-child(2n){background-color:#645b5b}.file-item-right[data-v-5cf9c07e]{float:right}.container[data-v-a4849834]{position:fixed;top:0;left:0;width:100%;height:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.container .form[data-v-a4849834]{box-shadow:0 0 5px 2px rgba(52,47,47,.75);width:100%;max-width:500px;background-color:rgba(0,0,0,.3);border-radius:6px;padding:20px 30px}.container .form label[data-v-a4849834]{display:block;color:#f2f2f2;padding:5px;font-family:Roboto;font-size:1.2em}.container .form input[data-v-a4849834]{display:block;width:100%;padding:10px;border-radius:6px;border:1px solid #ccc;outline:none}.container .form button[data-v-a4849834]{border-radius:6px;background:#ccc;padding:10px 30px;border:none;margin-top:20px;float:right}.server-indicator[data-v-a4849834]{float:left;padding:10px 0;border:none;margin-top:20px}.logo img[data-v-a4849834]{display:block;width:50%;margin:20px auto}.container[data-v-b095acca]{padding:10px}.settings-nav[data-v-b095acca]{list-style:none;margin-top:0;margin-bottom:15px;position:relative;overflow-x:auto;white-space:nowrap}.settings-nav .settings-nav-item[data-v-b095acca]{display:inline-block}.settings-nav .settings-nav-item a[data-v-b095acca]{color:#999;display:block;text-decoration:none;padding:10px 20px;font-family:Roboto;font-size:20px;text-transform:capitalize;font-weight:700}.settings-nav .settings-nav-item a.router-link-active[data-v-b095acca]{color:#eee}hr[data-v-db18dd10]{border-color:rgba(0,0,0,.5);width:100%;display:block;float:left}button[data-v-db18dd10]{background-color:rgba(0,0,0,.5);border:1px solid rgba(0,0,0,.8);color:hsla(0,0%,100%,.5);display:block;float:left;padding:10px;margin:2px;border-radius:3px;cursor:pointer}button[data-v-db18dd10]:hover{background-color:rgba(0,0,0,.9)}table[data-v-a0a4b11c]{background:#696060;border-spacing:0;width:100%}table[data-v-a0a4b11c],thead[data-v-a0a4b11c]{box-shadow:0 0 5px 2px rgba(52,47,47,.75)}thead[data-v-a0a4b11c]{background-color:#444042}thead th[data-v-a0a4b11c]{padding:10px;margin:0;border:0;outline:0}.button[data-v-a0a4b11c]{background-color:rgba(0,0,0,.5);border:1px solid rgba(0,0,0,.8);color:hsla(0,0%,100%,.5);padding:10px;border-radius:3px;cursor:pointer;display:block;width:100%;max-width:200px;margin:5px 0;text-align:center}tr[data-v-56154beb]:nth-child(2n){background-color:#645b5b}td[data-v-56154beb]{padding:10px}.id[data-v-56154beb]{text-align:right}.button[data-v-4e139448]{background-color:rgba(0,0,0,.5);border:1px solid rgba(0,0,0,.8);color:hsla(0,0%,100%,.5);padding:10px;border-radius:3px;cursor:pointer;display:block;width:100%;max-width:200px;margin:5px 0;text-align:center}h2[data-v-4e139448]{padding-left:40px}table[data-v-4e139448]{background:#696060;border-spacing:0;width:100%}table[data-v-4e139448],table thead[data-v-4e139448]{box-shadow:0 0 5px 2px rgba(52,47,47,.75)}table thead[data-v-4e139448]{background-color:#444042}table thead th[data-v-4e139448]{padding:10px;margin:0;border:0;outline:0}table tr[data-v-4e139448]:nth-child(2n){background-color:#645b5b}table td[data-v-4e139448]{padding:10px}table .id[data-v-4e139448]{text-align:right}table .actions[data-v-4e139448]{text-align:center}table .button[data-v-4e139448]{background-color:rgba(0,0,0,.5);border:1px solid rgba(0,0,0,.8);color:hsla(0,0%,100%,.5);padding:10px;border-radius:3px;cursor:pointer;display:block;width:100%;max-width:200px;margin:5px 0;text-align:center}hr[data-v-7688ec90]{border-color:rgba(0,0,0,.5);width:100%;display:block;float:left}button[data-v-7688ec90]{background-color:rgba(0,0,0,.5);border:1px solid rgba(0,0,0,.8);color:hsla(0,0%,100%,.5);display:block;float:left;padding:10px;margin:2px;border-radius:3px;cursor:pointer}button[data-v-7688ec90]:hover{background-color:rgba(0,0,0,.9)}.button[data-v-268ee30d]{background-color:rgba(0,0,0,.5);border:1px solid rgba(0,0,0,.8);color:hsla(0,0%,100%,.5);padding:10px;border-radius:3px;cursor:pointer;display:block;width:100%;max-width:200px;margin:5px 0;text-align:center}h2[data-v-268ee30d]{padding-left:40px}table[data-v-268ee30d]{background:#696060;border-spacing:0;width:100%}table[data-v-268ee30d],table thead[data-v-268ee30d]{box-shadow:0 0 5px 2px rgba(52,47,47,.75)}table thead[data-v-268ee30d]{background-color:#444042}table thead th[data-v-268ee30d]{padding:10px;margin:0;border:0;outline:0}table tr[data-v-268ee30d]:nth-child(2n){background-color:#645b5b}table td[data-v-268ee30d]{padding:10px}table .id[data-v-268ee30d]{text-align:right}table .actions[data-v-268ee30d]{text-align:center}table .button[data-v-268ee30d]{background-color:rgba(0,0,0,.5);border:1px solid rgba(0,0,0,.8);color:hsla(0,0%,100%,.5);padding:10px;border-radius:3px;cursor:pointer;display:block;width:100%;max-width:200px;margin:5px 0;text-align:center}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["webpack:///./src/App.vue","webpack:///./src/components/NavBar.vue","webpack:///./src/components/WatchPanel.vue","webpack:///./src/components/itemTypes/Episode.vue","webpack:///./src/components/ListContainer.vue","webpack:///./src/components/Scroller.vue","webpack:///./src/components/itemTypes/Series.vue","webpack:///./src/components/itemTypes/Movie.vue","webpack:///./src/components/playBar.vue","webpack:///./src/components/LoadingPage.vue","webpack:///./src/components/modals/ShowDialog.vue","webpack:///./src/components/modals/ShowModify.vue","webpack:///./src/components/modals/UserAdd.vue","webpack:///./src/components/modals/MovieDialog.vue","webpack:///./src/components/modals/EpisodeDialog.vue","webpack:///./src/components/modals/LibraryAdd.vue","webpack:///./src/components/modals/NewMovieSet.vue","webpack:///./src/components/modals/PasswordChange.vue","webpack:///./src/components/modals/CopyText.vue","webpack:///./src/components/modals/ChangeRemoteDialog.vue","webpack:///./src/components/pages/SeriesView.vue","webpack:///./src/components/pages/MovieInfo.vue","webpack:///./src/components/files/FileList.vue","webpack:///./src/components/pages/Login.vue","webpack:///./src/components/pages/Settings.vue","webpack:///./src/components/settings/Maintenance.vue","webpack:///./src/components/settings/UserManager.vue","webpack:///./src/components/settings/UserManagement/userEntry.vue","webpack:///./src/components/settings/Libraries.vue","webpack:///./src/components/settings/Sets.vue","webpack:///./src/components/settings/IndexerSettings.vue"],"names":[],"mappings":"AACA,qBACE,6BACA,iBACA,yBACA,iBAAmB,CAErB,yCACI,cAAiB,CAErB,2CACI,cAAiB,CAErB,KACE,mBACA,2GACA,iEACA,wBACA,4BACA,wBACA,sBACA,kBACA,oBACA,iBACA,UAAY,CAEd,oCACA,KACM,iBAAmB,CACxB,CAED,UACE,mBACA,2GACA,gEAA8E,CAEhF,sCACA,KACI,aAAe,CAClB,CAED,GACE,SACA,SAAW,CAEb,sCACE,oCACA,2BAA6B,CAE/B,gDACE,oCACA,2BAA6B,CAK/B,wEACE,SAAW,CAEb,YACE,kBACA,oDACA,2CAAmD,CAErD,4CACE,UACA,kCACA,yBAA8B,CAEhC,4CACE,UACA,mCACA,0BAA+B,CCvEjC,0BACE,MACA,YACA,WACA,eACA,UACA,yBACA,kDACQ,yCAA+C,CAEzD,kCACI,qBACA,WACA,iBAAmB,CAEvB,oCACA,kCACQ,YAAc,CACrB,CAED,yCACM,gBACA,aACA,YACA,UACA,kBACA,yBACA,SACA,SAAW,CAEjB,8CACM,cACA,YACA,YACA,kBACA,WACA,oCACA,WAAa,CAEnB,qCACI,uBACQ,eACR,WAAa,CAEjB,oCACA,qCACQ,uBACQ,cAAgB,CAC/B,CAED,oCACI,qBACA,YACA,iBACA,eACA,mBACA,eACA,qBACA,UAAY,CAEhB,4BACE,gBAAkB,CAEpB,2BACE,YACA,qBAAuB,CAEzB,kCACI,gBACA,iBACA,YACA,qBACA,WACA,aAAe,CAEnB,sCACM,WAAa,CC5EnB,2BACE,kBACA,gBACA,mBACA,WACA,eACA,mBACA,kDACQ,0CACR,UACA,YAAc,CAEhB,sCACA,2BACM,eACA,SACA,QAAU,CACf,CAED,oCACA,2BACM,YAAc,CACnB,CAtBD,qBACE,gBACA,aACA,mBACA,kBACA,gBACA,kBAAoB,CAEtB,yCACI,oBAAsB,CAE1B,2CACM,WACA,cACA,qBACA,kBACA,mBACA,eACA,0BACA,eAAkB,CAExB,kCACI,UAAY,CAEhB,OACE,qBACA,iBACA,gCACA,cACA,kBACA,UAAY,CCxBd,oFACE,2BACA,kBAAoB,CAEtB,yEAGE,mCACQ,2BACR,SAAW,CAEb,0BACE,qBACA,cAEA,WAAa,CAEf,wBAEE,eAOA,UAAW,CAEb,mDAVE,8BAGA,eACA,UACA,uBAEA,eAAiB,CAalB,2BARC,eAKA,UAAY,CAId,iCACE,6CACQ,qCAER,gCACA,sBACA,wBACA,kBAEA,aACA,YAEA,uBAEA,8CACA,sDACA,8CACA,sCACA,6DAEA,kBACA,gBAEA,oBAEA,oBAEA,aACA,yBACI,sBACI,mBACR,wBACI,qBACI,sBAAwB,CAElC,oCACA,0BACI,cACA,YAAc,CAElB,iCACI,aACA,aAAc,CACjB,CAED,0BACE,kBACA,aACA,iBACA,8BACA,sBACA,WACA,YACA,+BAAqC,CAEvC,mBACE,WACA,aACA,cAAgB,CAElB,uCACE,iDACQ,yCACR,SAAW,CAEb,gDACE,QAAU,CAEZ,wBACE,UACA,cACA,cACA,SACA,YACA,aACA,gCACA,sBACA,mBACA,kBACA,kBACA,+BACA,sBAAyB,CAE3B,qBACE,gBAAkB,CAEpB,8CACE,UAAa,CAEf,8BACE,mBAAsB,CAExB,wCACE,kBACA,SACA,OACA,gBACA,YAAc,CAEhB,2BACE,WACA,yBACA,kBACA,SACA,MAAQ,CCrJV,2BACE,gBACA,sBAAwB,CAE1B,kCACI,UACA,SACA,WACA,mBACA,cAAgB,CAEpB,2CACI,YACA,cAAgB,CAEpB,0DACM,aAAe,CChBrB,2BACE,gBACA,mBACA,mBACA,aAAe,CAEjB,sCACE,wCACA,gCACA,wBACA,4CAA+C,CCVjD,uBACE,qBACA,cAEA,YACA,iBAAmB,CAErB,wBAEE,eASA,UAAW,CAEb,mDAZE,8BAGA,YAEA,eACA,UACA,uBAEA,eAAiB,CAelB,2BAVC,eAOA,UAAY,CAId,8BACE,8BACA,sBAEA,6CAEQ,qCAER,gCACA,sBACA,wBAEA,aACA,YACA,kBAEA,uBAEA,8CACA,sDACA,8CACA,sCACA,6DAEA,kBACA,gBAEA,oBAEA,oBAEA,aACA,yBACI,sBACI,mBACR,wBACI,qBACI,sBAAwB,CAElC,oCACA,uBACI,cACA,YAAc,CAElB,8BACI,aACA,aAAe,CAClB,CAED,0BACE,kBACA,aACA,iBACA,8BACA,sBACA,WACA,YACA,gCACA,gBAAiB,CAEnB,mBACE,WACA,aACA,cAAgB,CAElB,oCACE,iDACQ,wCAA8C,CAKxD,6EACE,QAAU,CAEZ,wBACE,UACA,cACA,cACA,SACA,YACA,aACA,gCACA,sBACA,mBACA,kBACA,kBACA,+BACA,sBAAyB,CAE3B,2CACE,UAAa,CAEf,8BACE,mBAAqB,CC3HvB,oFACE,2BACA,kBAAoB,CAEtB,yEAEE,mCACQ,2BACR,SAAW,CAEb,mCACE,qBACA,cAEA,WAAa,CAEf,iCACE,qBACA,cAEA,YACA,iBAAmB,CAErB,wBAEE,eAOA,UAAW,CAEb,mDAVE,8BAGA,eACA,UACA,uBAEA,eAAiB,CAalB,2BARC,eAKA,UAAY,CAId,+BACE,6CACQ,qCAER,gCACA,sBACA,wBACA,kBAEA,8CACA,sDACA,8CACA,sCACA,6DAEA,kBACA,gBAEA,oBAEA,oBAEA,aACA,yBACI,sBACI,mBACR,wBACI,qBACI,sBAAwB,CAElC,iDACE,aACA,WAAa,CAEf,+CACE,aACA,WAAa,CAEf,oCACA,mCACI,cACA,YAAc,CAElB,iCACI,cACA,YAAc,CAElB,iDACI,aACA,aAAe,CAEnB,+CACI,aACA,aAAe,CAClB,CAED,0BACE,kBACA,aACA,iBACA,8BACA,sBACA,WACA,YACA,+BAAqC,CAEvC,mBACE,WACA,aACA,cAAgB,CAElB,qCACE,iDACQ,yCACR,SAAW,CAEb,8CACE,QAAU,CAEZ,wBACE,UACA,cACA,cACA,SACA,YACA,aACA,gCACA,sBACA,mBACA,kBACA,kBACA,+BACA,sBAAyB,CAE3B,qBACE,gBAAkB,CAEpB,4CACE,UAAa,CAEf,8BACE,mBAAqB,CAEvB,sCACE,kBACA,SACA,OACA,gBACA,YAAc,CAEhB,2BACE,WACA,yBACA,kBACA,SACA,MAAQ,CCpKV,MACE,WACA,WAAa,CAEf,SACE,YACA,eACA,UAAY,CAEd,cACI,eACA,SACA,8BACA,sBACA,aACA,iBACA,WACA,WACA,aACA,mFACA,qDACA,kDACQ,yCAA+C,CAE3D,wBACM,wBAAgC,CAEtC,2BACM,eACA,mCACA,iDACQ,yCACR,+DACA,uDACA,+CACA,sEACA,iBACA,iBACA,iBAAmB,CAEzB,iCACM,mCACA,iDACQ,wCAA8C,CAE5D,iBACI,eACA,SACA,YACA,WACA,gBACA,UACA,gDACA,uCAA8C,CAElD,gBACI,aACA,WACA,YACA,WACA,kBACA,gBACA,6CACQ,oCAA0C,CAEtD,sBACM,UAAY,CAElB,yCACA,gBACQ,aACA,sBAAwB,CAC/B,CAED,0CACA,gBACQ,aACA,sBAAwB,CAC/B,CAED,iBACI,QAAU,CAEd,gBACI,WAAa,CAEjB,wBACI,cAAgB,CAEpB,sBACE,YACA,kBACA,MACA,OACA,WACA,iCACA,sDACQ,8CACR,cAAgB,CAElB,mCACI,kBACA,MACA,OACA,YACA,yBACA,UACA,kDACQ,yCAA+C,CAE3D,uCACI,kBACA,MACA,OACA,YACA,yBACA,uCACQ,+BACR,UAAa,CAEjB,2BACA,GACI,SAAW,CAEf,GACI,SAAW,CACd,CAED,mBACA,GACI,SAAW,CAEf,GACI,SAAW,CACd,CAED,SACE,oBACA,kBACA,+BACQ,uBACR,yCACQ,iCACR,2CACQ,mCACR,8BACQ,qBAAuB,CAEjC,kBACE,eACA,YACA,WACA,WACA,mBACA,kDACQ,yCAA+C,CAEzD,qBACI,gBACA,iBAAmB,CAEvB,wBACM,aACA,cAAgB,CAEtB,iCACM,+BAAqC,CAE3C,8BACM,+BAAqC,CAE3C,WACE,WAAa,CAEf,gBACI,YAAc,CC/KlB,4CACA,GACI,uBAAyB,CAE7B,GACI,gCACQ,uBAA0B,CACrC,CAED,oCACA,GACI,uBAAyB,CAE7B,GACI,gCACQ,uBAA0B,CACrC,CAED,+CACA,GACI,QACA,SACA,aACA,aAAe,CAEnB,GACI,YACA,aACA,iBACA,iBAAmB,CACtB,CAED,yBACE,YACA,aACA,6BACA,iCACA,iCACA,mBACA,eACA,QACA,SACA,iBACA,kBACA,qGACQ,4FAA+F,CAEzG,oCACE,eACA,MACA,OACA,WACA,YACA,YACA,mBACA,2GACA,iEACA,wBACA,4BACA,wBACA,qBAAuB,CC5DzB,oBACE,WACA,WACA,SACA,mBACA,aACA,gCACA,kDACQ,yCAA+C,CAEzD,oBACE,gBACA,UACA,QAAU,CAEZ,yBACI,qBACA,WACA,kBACA,WACA,qBACA,wCACA,+BAAkC,CAEtC,+BACI,gCACA,iDACQ,wCAA8C,CC3B1D,oBACE,WACA,WACA,SACA,mBACA,aACA,gCACA,kDACQ,yCAA+C,CAEzD,0BACE,UAAY,CAEd,gCACI,UACA,WACA,YAAc,CAElB,sCACI,UAAY,CCnBhB,uBACE,YAAc,CAEhB,oBACE,WACA,WACA,SACA,mBACA,aACA,gCACA,kDACQ,yCAA+C,CAEzD,uBACE,cACA,WACA,aAAe,CAEjB,uBACE,mBACA,gBACA,aACA,WACA,wBAA0B,CAE5B,0BACE,oBAAsB,CAExB,yBACE,gCACA,kDACQ,0CACR,aACA,eAAiB,CAEnB,gCACI,YACA,gCACA,gCACA,yBACA,aACA,kBACA,cAAgB,CC1CpB,4BACE,YAAc,CAEhB,oBACE,WACA,WACA,gBACA,aACA,gCACA,kDACQ,yCAA+C,CAEzD,oBACE,gBACA,UACA,QAAU,CAEZ,4BACI,qBACA,WACA,kBACA,WACA,qBACA,wCACA,+BAAkC,CAEtC,kCACI,gCACA,iDACQ,wCAA8C,CC7B1D,4BACE,YAAc,CAEhB,oBACE,WACA,WACA,SACA,mBACA,aACA,gCACA,kDACQ,yCAA+C,CAEzD,oBACE,gBACA,UACA,QAAU,CAEZ,4BACI,qBACA,WACA,kBACA,WACA,qBACA,wCACA,+BAAkC,CAEtC,kCACI,gCACA,iDACQ,wCAA8C,CC9B1D,uBACE,YAAc,CAEhB,oBACE,WACA,WACA,SACA,mBACA,aACA,gCACA,kDACQ,yCAA+C,CAEzD,uBACE,cACA,WACA,aAAe,CAEjB,uBACE,mBACA,gBACA,aACA,WACA,wBAA0B,CAE5B,0BACE,oBAAsB,CAExB,yBACE,gCACA,kDACQ,0CACR,aACA,eAAiB,CAEnB,gCACI,YACA,gCACA,gCACA,yBACA,aACA,kBACA,cAAgB,CC1CpB,uBACE,YAAc,CAEhB,oBACE,WACA,WACA,SACA,mBACA,aACA,gCACA,kDACQ,yCAA+C,CAEzD,uBACE,cACA,WACA,aAAe,CAEjB,uBACE,mBACA,gBACA,aACA,WACA,wBAA0B,CAE5B,0BACE,oBAAsB,CAExB,yBACE,gCACA,kDACQ,0CACR,aACA,eAAiB,CAEnB,gCACI,YACA,gCACA,gCACA,yBACA,aACA,kBACA,cAAgB,CC1CpB,uBACE,YAAc,CAEhB,oBACE,WACA,WACA,SACA,mBACA,aACA,gCACA,kDACQ,yCAA+C,CAEzD,uBACE,cACA,WACA,aAAe,CAEjB,uBACE,mBACA,gBACA,aACA,WACA,wBAA0B,CAE5B,0BACE,oBAAsB,CAExB,yBACE,gCACA,kDACQ,0CACR,aACA,eAAiB,CAEnB,gCACI,YACA,gCACA,gCACA,yBACA,aACA,kBACA,cAAgB,CC1CpB,uBACE,YAAc,CAEhB,oBACE,WACA,WACA,SACA,mBACA,aACA,gCACA,kDACQ,yCAA+C,CAEzD,uBACE,cACA,WACA,aAAe,CAEjB,uBACE,mBACA,gBACA,aACA,WACA,wBAA0B,CAE5B,0BACE,oBAAsB,CAExB,yBACE,gCACA,kDACQ,0CACR,aACA,eAAiB,CAEnB,gCACI,YACA,gCACA,gCACA,yBACA,aACA,kBACA,cAAgB,CC1CpB,4BACE,YAAc,CAEhB,oBACE,WACA,WACA,SACA,mBACA,aACA,gCACA,kDACQ,yCAA+C,CAEzD,oBACE,gBACA,UACA,QAAU,CAEZ,4BACI,qBACA,WACA,kBACA,WACA,qBACA,eACA,wCACA,+BAAkC,CAEtC,kCACI,gCACA,iDACQ,wCAA8C,CC/B1D,iCACE,mBAAqB,CAEvB,uBACE,cAEA,mBAGA,oBACA,gBAAkB,CAEpB,sDAPE,kBAEA,oDACQ,2CAAiD,CAc1D,+BATG,aACA,YACA,WAIA,gBACA,uBACA,eAAkB,CAEtB,oCACA,+BACQ,aACA,eAAiB,CACxB,CAED,mCACM,WAAa,CAEnB,8BACI,YAAc,CAElB,iCACM,UACA,gBACA,cAAgB,CAEtB,0EACM,yBACA,mBACA,UACA,eAAoB,CAE1B,gCACM,yBACA,UACA,gBACA,eAAiB,CAEvB,sCACM,YACA,eAAiB,CAEvB,2BACE,UAAY,CAEd,yBACE,eAAiB,CAEnB,4BACI,qBACA,iBACA,iBAAmB,CAEvB,kCACI,WAAa,CAEjB,6CACI,UAAY,CCvEhB,iCACE,iBACA,wBACA,sBACA,6BACA,kBACA,SAAW,CAEb,uBACE,cAEA,mBAGA,oBACA,gBAAkB,CAEpB,sDAPE,kBAEA,oDACQ,2CAAiD,CAa1D,+BARG,kBACA,aACA,WAIA,gBACA,sBAAwB,CAE5B,oCACA,+BACQ,YAAc,CACrB,CAED,mCACM,WAAa,CAEnB,8BACI,YAAc,CAElB,iCACM,UACA,gBACA,cAAgB,CAEtB,0EACM,yBACA,mBACA,UACA,eAAoB,CAE1B,gCACM,yBACA,UACA,gBACA,eAAiB,CAEvB,sCACM,YACA,eAAiB,CAEvB,yBACE,eAAiB,CAEnB,4BACI,qBACA,iBACA,iBAAmB,CAEvB,kCACI,WAAa,CAEjB,6CACI,UAAY,CAEhB,mBACE,WACA,aACA,cAAgB,CAElB,qBACE,gBAAkB,CAEpB,wBACE,UACA,cACA,cACA,SACA,YACA,aACA,kBACA,qBACA,sBACA,gCACA,sBACA,mBACA,kBACA,kBACA,+BACA,sBAAyB,CAE3B,sCACE,UAAa,CAEf,8BACE,mBAAsB,CAExB,wBACE,mBACA,kDACQ,0CACR,aACA,iBACA,gBACA,WACA,kBACA,gBACA,iBAAmB,CCnHrB,sCACE,cAAgB,CAElB,4BACE,mBACA,kDACQ,0CACR,iBACA,gBACA,WACA,kBACA,eAAiB,CAEnB,iCACE,iBAAmB,CAErB,+CACE,wBAA0B,CAE5B,kCACE,WAAa,CCpBf,4BACE,eACA,MACA,OACA,WACA,YACA,oBACA,oBACA,aACA,yBACI,sBACI,mBACR,wBACI,qBACI,sBAAwB,CAElC,kCACI,kDACQ,0CACR,WACA,gBACA,gCACA,kBACA,iBAAmB,CAEvB,wCACM,cACA,cACA,YACA,mBACA,eAAiB,CAEvB,wCACM,cACA,WACA,aACA,kBACA,sBACA,YAAc,CAEpB,yCACM,kBACA,gBACA,kBACA,YACA,gBACA,WAAa,CAEnB,mCACE,WACA,eACA,YACA,eAAiB,CAEnB,2BACE,cACA,UACA,gBAAkB,CCzDpB,4BACE,YAAc,CAEhB,+BACE,gBACA,aACA,mBACA,kBACA,gBACA,kBAAoB,CAEtB,kDACI,oBAAsB,CAE1B,oDACM,WACA,cACA,qBACA,kBACA,mBACA,eACA,0BACA,eAAkB,CAExB,uEACM,UAAY,CCzBlB,oBACE,4BACA,WACA,cACA,UAAY,CAEd,wBACE,gCACA,gCACA,yBACA,cACA,WACA,aACA,WACA,kBACA,cAAgB,CAElB,8BACE,+BAAqC,CClBvC,uBACE,mBAGA,iBACA,UAAY,CAEd,8CALE,kDACQ,yCAA+C,CAQxD,uBAHC,wBAA0B,CAI5B,0BACI,aACA,SACA,SACA,SAAW,CAEf,yBACE,gCACA,gCACA,yBACA,aACA,kBACA,eACA,cACA,WACA,gBACA,aACA,iBAAmB,CC7BrB,kCACE,wBAA0B,CAE5B,oBACE,YAAc,CAEhB,qBACE,gBAAkB,CCPpB,yBACE,gCACA,gCACA,yBACA,aACA,kBACA,eACA,cACA,WACA,gBACA,aACA,iBAAmB,CAErB,oBACE,iBAAmB,CAErB,uBACE,mBAGA,iBACA,UAAY,CAEd,oDALE,kDACQ,yCAA+C,CAQxD,6BAHG,wBAA0B,CAI9B,gCACM,aACA,SACA,SACA,SAAW,CAEjB,wCACI,wBAA0B,CAE9B,0BACI,YAAc,CAElB,2BACI,gBAAkB,CAEtB,gCACI,iBAAmB,CAEvB,+BACI,gCACA,gCACA,yBACA,aACA,kBACA,eACA,cACA,WACA,gBACA,aACA,iBAAmB,CCzDvB,oBACE,4BACA,WACA,cACA,UAAY,CAEd,wBACE,gCACA,gCACA,yBACA,cACA,WACA,aACA,WACA,kBACA,cAAgB,CAElB,8BACE,+BAAqC,CClBvC,yBACE,gCACA,gCACA,yBACA,aACA,kBACA,eACA,cACA,WACA,gBACA,aACA,iBAAmB,CAErB,oBACE,iBAAmB,CAErB,uBACE,mBAGA,iBACA,UAAY,CAEd,oDALE,kDACQ,yCAA+C,CAQxD,6BAHG,wBAA0B,CAI9B,gCACM,aACA,SACA,SACA,SAAW,CAEjB,wCACI,wBAA0B,CAE9B,0BACI,YAAc,CAElB,2BACI,gBAAkB,CAEtB,gCACI,iBAAmB,CAEvB,+BACI,gCACA,gCACA,yBACA,aACA,kBACA,eACA,cACA,WACA,gBACA,aACA,iBAAmB","file":"static/css/app.ef5965dbd50e69a7544e200a3f21fbaf.css","sourcesContent":["\n.system-notification {\n background: #272222 !important;\n padding: 7px 10px;\n border: 1px solid #423a3a;\n margin-bottom: 4px;\n}\n.system-notification .notification-title {\n font-size: 0.8em;\n}\n.system-notification .notification-content {\n font-size: 0.9em;\n}\n#app {\n background: #696060;\n background: -webkit-gradient(linear, left top, left bottom, from(#696060), color-stop(36%, #55535b), to(#28343b));\n background: linear-gradient(to bottom, #696060 0%, #55535b 36%, #28343b 100%);\n background-position: top;\n background-attachment: fixed;\n background-repeat: round;\n background-size: cover;\n padding-top: 415px;\n padding-bottom: 70px;\n min-height: 100vh;\n color: #eee;\n}\n@media screen and (max-width: 700px) {\n#app {\n padding-top: 375px;\n}\n}\n.v--modal {\n background: #696060;\n background: -webkit-gradient(linear, left top, left bottom, from(#696060), color-stop(36%, #55535b), to(#28343b));\n background: linear-gradient(to bottom, #696060 0%, #55535b 36%, #28343b 100%);\n}\n@media screen and (max-height: 1200px) {\n#app {\n padding-top: 0;\n}\n}\nul {\n margin: 0;\n padding: 0;\n}\n.fade-enter-active, .fade-leave-active {\n -webkit-transition: opacity .2s ease;\n transition: opacity .2s ease;\n}\n.long-fade-enter-active, .long-fade-leave-active {\n -webkit-transition: opacity .7s ease;\n transition: opacity .7s ease;\n}\n.fade-enter, .fade-leave-active {\n opacity: 0;\n}\n.long-fade-enter, .long-fade-leave-active {\n opacity: 0;\n}\n.child-view {\n position: absolute;\n -webkit-transition: all 0.2s cubic-bezier(0.55, 0, 0.1, 1);\n transition: all 0.2s cubic-bezier(0.55, 0, 0.1, 1);\n}\n.slide-left-enter, .slide-right-leave-active {\n opacity: 0;\n -webkit-transform: translate(30px, 0);\n transform: translate(30px, 0);\n}\n.slide-left-leave-active, .slide-right-enter {\n opacity: 0;\n -webkit-transform: translate(-30px, 0);\n transform: translate(-30px, 0);\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/App.vue","\n.nav-bar[data-v-18359e53] {\n top: 0;\n height: 50px;\n width: 100%;\n position: fixed;\n z-index: 3;\n background-color: #342f2f;\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n}\n.nav-bar .search[data-v-18359e53] {\n display: inline-block;\n width: 100%;\n position: relative;\n}\n@media screen and (max-width: 800px) {\n.nav-bar .search[data-v-18359e53] {\n display: none;\n}\n}\n.nav-bar .search button[data-v-18359e53] {\n background: none;\n outline: none;\n border: none;\n padding: 0;\n position: absolute;\n color: rgba(255, 255, 255, 0.8);\n top: 17px;\n right: 8px;\n}\n.nav-bar .search .input-text[data-v-18359e53] {\n margin: 10px 0;\n height: 30px;\n padding: 5px;\n border-radius: 3px;\n width: 100%;\n background-color: rgba(255, 255, 255, 0.3);\n border: none;\n}\n.nav-bar .container[data-v-18359e53] {\n -webkit-column-count: 3;\n column-count: 3;\n height: 100%;\n}\n@media screen and (max-width: 800px) {\n.nav-bar .container[data-v-18359e53] {\n -webkit-column-count: 2;\n column-count: 2;\n}\n}\n.nav-bar .nav-link[data-v-18359e53] {\n display: inline-block;\n height: 100%;\n line-height: 50px;\n padding: 0 15px;\n font-family: Roboto;\n font-size: 14px;\n text-decoration: none;\n color: #eee;\n}\n.nav-right[data-v-18359e53] {\n text-align: right;\n}\n.nav-left[data-v-18359e53] {\n height: 50px;\n vertical-align: center;\n}\n.nav-left .brand[data-v-18359e53] {\n font-weight: bold;\n padding: 15px 5px;\n height: 100%;\n display: inline-block;\n float: left;\n margin: 0 15px;\n}\n.nav-left .brand img[data-v-18359e53] {\n height: 100%;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/NavBar.vue","\n.tabs-component-tabs {\n list-style: none;\n margin-top: 0;\n margin-bottom: 15px;\n position: relative;\n overflow-x: auto;\n white-space: nowrap;\n}\n.tabs-component-tabs .tabs-component-tab {\n display: inline-block;\n}\n.tabs-component-tabs .tabs-component-tab a {\n color: #999;\n display: block;\n text-decoration: none;\n padding: 10px 20px;\n font-family: Roboto;\n font-size: 20px;\n text-transform: capitalize;\n font-weight: bold;\n}\n.tabs-component-tabs .is-active a {\n color: #eee;\n}\n.badge {\n display: inline-block;\n margin-left: 10px;\n background-color: rgba(0, 0, 0, 0.5);\n padding: 0 5px;\n border-radius: 3px;\n color: #999;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/WatchPanel.vue","\n.load-detector[data-v-b0a052f6] {\n}\n.slide-fade-enter-active[data-v-b0a052f6] {\n -webkit-transition: all .5s;\n transition: all .5s;\n}\n.slide-fade-leave-active[data-v-b0a052f6] {\n -webkit-transition: all .5s;\n transition: all .5s;\n}\n.slide-fade-enter[data-v-b0a052f6], .slide-fade-leave-to[data-v-b0a052f6]\n /* .slide-fade-leave-active below version 2.1.8 */\n{\n -webkit-transform: translateX(10px);\n transform: translateX(10px);\n opacity: 0;\n}\n.episode[data-v-b0a052f6] {\n display: inline-block;\n margin: 0 10px;\n\n width: 357px;\n}\n.title[data-v-b0a052f6] {\n font-family: Roboto, sans-serif;\n font-size: 13px;\n\n margin-top: 5px;\n padding: 0;\n text-overflow: ellipsis;\n\n overflow: hidden;\n color: #eee\n}\n.subtitle[data-v-b0a052f6] {\n font-family: Roboto, sans-serif;\n font-size: 12px;\n\n margin-top: 5px;\n padding: 0;\n text-overflow: ellipsis;\n color: #aaa;\n\n overflow: hidden;\n}\n.episode-poster[data-v-b0a052f6] {\n -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.75);\n box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.75);\n\n background-color: rgba(0, 0, 0, 0.8);\n background-size: cover;\n background-position: center;\n border-radius: 3px;\n\n height: 200px;\n width: 357px;\n\n border: 0 solid #ae6600;\n\n -webkit-transition: box-shadow 0.1s, opacity 0.1s;\n -webkit-transition: opacity 0.1s, -webkit-box-shadow 0.1s;\n transition: opacity 0.1s, -webkit-box-shadow 0.1s;\n transition: box-shadow 0.1s, opacity 0.1s;\n transition: box-shadow 0.1s, opacity 0.1s, -webkit-box-shadow 0.1s;\n\n position: relative;\n overflow: hidden;\n\n display: -webkit-box;\n\n display: -ms-flexbox;\n\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n}\n@media screen and (max-width: 700px) {\n.episode[data-v-b0a052f6] {\n width: 285.6px;\n margin: 0 5px;\n}\n.episode-poster[data-v-b0a052f6] {\n height: 160px;\n width: 285.6px\n}\n}\n.actions[data-v-b0a052f6] {\n position: absolute;\n bottom: -50px;\n text-align: right;\n -webkit-transition: bottom 0.2s;\n transition: bottom 0.2s;\n width: 100%;\n padding: 5px;\n background-color: rgba(0, 0, 0, 0.5);\n}\na[data-v-b0a052f6] {\n color: white;\n margin: 0 5px;\n cursor: pointer;\n}\n.episode-poster[data-v-b0a052f6]:hover {\n -webkit-box-shadow: 0 0 0 2px rgba(174, 102, 0, 0.75);\n box-shadow: 0 0 0 2px rgba(174, 102, 0, 0.75);\n opacity: 1;\n}\n.episode-poster:hover .actions[data-v-b0a052f6] {\n bottom: 0;\n}\na.play[data-v-b0a052f6] {\n opacity: 0;\n display: block;\n font-size: 4em;\n margin: 0;\n width: 100px;\n height: 100px;\n background-color: rgba(0, 0, 0, 0.5);\n border: 2px solid white;\n border-radius: 100%;\n text-align: center;\n line-height: 100px;\n -webkit-transition: opacity 0.2s;\n transition: opacity 0.2s;\n}\n.fa[data-v-b0a052f6] {\n margin-left: 10px;\n}\n.episode-poster:hover a.play[data-v-b0a052f6] {\n opacity: 0.4;\n}\na.play[data-v-b0a052f6]:hover {\n opacity: 1 !important;\n}\n.episode-poster .title[data-v-b0a052f6] {\n position: absolute;\n bottom: 0;\n left: 0;\n font-size: 1.4em;\n padding: 10px;\n}\n.progress[data-v-b0a052f6] {\n height: 5px;\n background-color: #ae6600;\n position: absolute;\n bottom: 0;\n left: 0;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/itemTypes/Episode.vue","\n.titlebar[data-v-6b043254] {\n overflow: hidden;\n padding: 30px 20px 15px;\n}\n.titlebar .title[data-v-6b043254] {\n padding: 0;\n margin: 0;\n float: left;\n font-family: roboto;\n font-size: 20px;\n}\n.titlebar .scroll-buttons[data-v-6b043254] {\n float: right;\n font-size: 20px;\n}\n.titlebar .scroll-buttons .scroll-button[data-v-6b043254] {\n margin: 0 10px;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/ListContainer.vue","\n.scroller[data-v-80d36168] {\n overflow: hidden;\n overflow-x: visible;\n white-space: nowrap;\n padding: 5px 0;\n}\n.staggered-fade-move[data-v-80d36168] {\n -webkit-transition: -webkit-transform 1s;\n transition: -webkit-transform 1s;\n transition: transform 1s;\n transition: transform 1s, -webkit-transform 1s;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/Scroller.vue","\n.show[data-v-59eed500] {\n display: inline-block;\n margin: 0 10px;\n\n width: 136px;\n position: relative;\n}\n.title[data-v-59eed500] {\n font-family: Roboto, sans-serif;\n font-size: 13px;\n\n width: 136px;\n\n margin-top: 5px;\n padding: 0;\n text-overflow: ellipsis;\n\n overflow: hidden;\n color: #eee\n}\n.subtitle[data-v-59eed500] {\n font-family: Roboto, sans-serif;\n font-size: 12px;\n\n width: 136px;\n\n margin-top: 5px;\n padding: 0;\n text-overflow: ellipsis;\n color: #aaa;\n\n overflow: hidden;\n}\n.show-poster[data-v-59eed500] {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n\n -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.75);\n\n box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.75);\n\n background-color: rgba(0, 0, 0, 0.8);\n background-size: cover;\n background-position: center;\n\n height: 200px;\n width: 136px;\n border-radius: 3px;\n\n border: 0 solid #ae6600;\n\n -webkit-transition: box-shadow 0.1s, opacity 0.1s;\n -webkit-transition: opacity 0.1s, -webkit-box-shadow 0.1s;\n transition: opacity 0.1s, -webkit-box-shadow 0.1s;\n transition: box-shadow 0.1s, opacity 0.1s;\n transition: box-shadow 0.1s, opacity 0.1s, -webkit-box-shadow 0.1s;\n\n position: relative;\n overflow: hidden;\n\n display: -webkit-box;\n\n display: -ms-flexbox;\n\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n}\n@media screen and (max-width: 700px) {\n.show[data-v-59eed500] {\n width: 108.8px;\n margin: 0 5px;\n}\n.show-poster[data-v-59eed500] {\n height: 160px;\n width: 108.8px;\n}\n}\n.actions[data-v-59eed500] {\n position: absolute;\n bottom: -28px;\n text-align: right;\n -webkit-transition: bottom 0.2s;\n transition: bottom 0.2s;\n width: 100%;\n padding: 5px;\n background-color: rgba(0, 0, 0, 0.5);\n overflow: visible\n}\na[data-v-59eed500] {\n color: white;\n margin: 0 5px;\n cursor: pointer;\n}\n.show-poster[data-v-59eed500]:hover {\n -webkit-box-shadow: 0 0 0 2px rgba(174, 102, 0, 0.75);\n box-shadow: 0 0 0 2px rgba(174, 102, 0, 0.75);\n}\n.show-poster:hover .actions[data-v-59eed500] {\n bottom: 0;\n}\n.actions[data-v-59eed500]:hover {\n bottom: 0;\n}\na.play[data-v-59eed500] {\n opacity: 0;\n display: block;\n font-size: 4em;\n margin: 0;\n width: 100px;\n height: 100px;\n background-color: rgba(0,0,0,0.5);\n border: 2px solid white;\n border-radius: 100%;\n text-align: center;\n line-height: 100px;\n -webkit-transition: opacity 0.2s;\n transition: opacity 0.2s;\n}\n.show-poster:hover a.play[data-v-59eed500]{\n opacity: 0.4;\n}\na.play[data-v-59eed500]:hover {\n opacity: 1!important;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/itemTypes/Series.vue","\n.slide-fade-enter-active[data-v-383eeac0] {\n -webkit-transition: all .5s;\n transition: all .5s;\n}\n.slide-fade-leave-active[data-v-383eeac0] {\n -webkit-transition: all .5s;\n transition: all .5s;\n}\n.slide-fade-enter[data-v-383eeac0], .slide-fade-leave-to[data-v-383eeac0]\n /* .slide-fade-leave-active below version 2.1.8 */ {\n -webkit-transform: translateX(10px);\n transform: translateX(10px);\n opacity: 0;\n}\n.movie-horizontal[data-v-383eeac0] {\n display: inline-block;\n margin: 0 10px;\n\n width: 357px;\n}\n.movie-vertical[data-v-383eeac0] {\n display: inline-block;\n margin: 0 10px;\n\n width: 136px;\n position: relative;\n}\n.title[data-v-383eeac0] {\n font-family: Roboto, sans-serif;\n font-size: 13px;\n\n margin-top: 5px;\n padding: 0;\n text-overflow: ellipsis;\n\n overflow: hidden;\n color: #eee\n}\n.subtitle[data-v-383eeac0] {\n font-family: Roboto, sans-serif;\n font-size: 12px;\n\n margin-top: 5px;\n padding: 0;\n text-overflow: ellipsis;\n color: #aaa;\n\n overflow: hidden;\n}\n.movie-poster[data-v-383eeac0] {\n -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.75);\n box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.75);\n\n background-color: rgba(0, 0, 0, 0.8);\n background-size: cover;\n background-position: center;\n border-radius: 3px;\n\n -webkit-transition: box-shadow 0.1s, opacity 0.1s;\n -webkit-transition: opacity 0.1s, -webkit-box-shadow 0.1s;\n transition: opacity 0.1s, -webkit-box-shadow 0.1s;\n transition: box-shadow 0.1s, opacity 0.1s;\n transition: box-shadow 0.1s, opacity 0.1s, -webkit-box-shadow 0.1s;\n\n position: relative;\n overflow: hidden;\n\n display: -webkit-box;\n\n display: -ms-flexbox;\n\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n}\n.movie-horizontal .movie-poster[data-v-383eeac0] {\n height: 200px;\n width: 357px;\n}\n.movie-vertical .movie-poster[data-v-383eeac0] {\n height: 200px;\n width: 136px;\n}\n@media screen and (max-width: 700px) {\n.movie-horizontal[data-v-383eeac0] {\n width: 285.6px;\n margin: 0 5px;\n}\n.movie-vertical[data-v-383eeac0] {\n width: 108.8px;\n margin: 0 5px;\n}\n.movie-horizontal .movie-poster[data-v-383eeac0] {\n height: 160px;\n width: 285.6px;\n}\n.movie-vertical .movie-poster[data-v-383eeac0] {\n height: 160px;\n width: 108.8px;\n}\n}\n.actions[data-v-383eeac0] {\n position: absolute;\n bottom: -50px;\n text-align: right;\n -webkit-transition: bottom 0.2s;\n transition: bottom 0.2s;\n width: 100%;\n padding: 5px;\n background-color: rgba(0, 0, 0, 0.5);\n}\na[data-v-383eeac0] {\n color: white;\n margin: 0 5px;\n cursor: pointer;\n}\n.movie-poster[data-v-383eeac0]:hover {\n -webkit-box-shadow: 0 0 0 2px rgba(174, 102, 0, 0.75);\n box-shadow: 0 0 0 2px rgba(174, 102, 0, 0.75);\n opacity: 1;\n}\n.movie-poster:hover .actions[data-v-383eeac0] {\n bottom: 0;\n}\na.play[data-v-383eeac0] {\n opacity: 0;\n display: block;\n font-size: 4em;\n margin: 0;\n width: 100px;\n height: 100px;\n background-color: rgba(0,0,0,0.5);\n border: 2px solid white;\n border-radius: 100%;\n text-align: center;\n line-height: 100px;\n -webkit-transition: opacity 0.2s;\n transition: opacity 0.2s;\n}\n.fa[data-v-383eeac0] {\n margin-left: 10px;\n}\n.movie-poster:hover a.play[data-v-383eeac0]{\n opacity: 0.4;\n}\na.play[data-v-383eeac0]:hover {\n opacity: 1!important;\n}\n.movie-poster .title[data-v-383eeac0] {\n position: absolute;\n bottom: 0;\n left: 0;\n font-size: 1.4em;\n padding: 10px;\n}\n.progress[data-v-383eeac0] {\n height: 5px;\n background-color: #ae6600;\n position: absolute;\n bottom: 0;\n left: 0;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/itemTypes/Movie.vue","\nvideo {\n width: 100%;\n height: 100%;\n}\n.playBar {\n height: 100%;\n position: fixed;\n z-index: 10;\n}\n.playBar .bar {\n position: fixed;\n bottom: 0;\n -webkit-transition: bottom 0.2s;\n transition: bottom 0.2s;\n padding: 20px;\n padding-top: 25px;\n width: 100%;\n color: #eee;\n z-index: 1000;\n background: -webkit-gradient(linear, left top, left bottom, from(#645c5c), to(#5c5454));\n background: linear-gradient(to bottom, #645c5c 0%, #5c5454 100%);\n -webkit-box-shadow: 0 0 5px 2px rgba(44, 40, 40, 0.75);\n box-shadow: 0 0 5px 2px rgba(44, 40, 40, 0.75);\n}\n.playBar .bar .seriesid {\n color: rgba(255, 255, 255, 0.6);\n}\n.playBar .bar .nextepisode {\n cursor: pointer;\n background-color: rgba(44, 40, 40, 0.6);\n -webkit-box-shadow: 0 0 1px 2px rgba(44, 40, 40, 0.6);\n box-shadow: 0 0 1px 2px rgba(44, 40, 40, 0.6);\n -webkit-transition: background-color 0.1s, -webkit-box-shadow 0.1s;\n transition: background-color 0.1s, -webkit-box-shadow 0.1s;\n transition: background-color 0.1s, box-shadow 0.1s;\n transition: background-color 0.1s, box-shadow 0.1s, -webkit-box-shadow 0.1s;\n padding: 5px 10px;\n margin-left: 10px;\n border-radius: 3px;\n}\n.playBar .bar .nextepisode:hover {\n background-color: rgba(44, 40, 40, 0.9);\n -webkit-box-shadow: 0 0 1px 2px rgba(44, 40, 40, 0.9);\n box-shadow: 0 0 1px 2px rgba(44, 40, 40, 0.9);\n}\n.playBar .player {\n position: fixed;\n bottom: 0;\n height: 100%;\n width: 100%;\n background: black;\n z-index: 5;\n -webkit-transition: top 0.2s, height 0.2s, width 0.2s;\n transition: top 0.2s, height 0.2s, width 0.2s;\n}\n.playBar .small {\n height: 200px;\n width: auto;\n bottom: 74px;\n right: 10px;\n border-radius: 3px;\n overflow: hidden;\n -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.75);\n box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.75);\n}\n.playBar .small video {\n width: auto;\n}\n@media only screen and (max-width: 600px) {\n.playBar .small {\n height: 100px;\n top: calc(100% - 169px);\n}\n}\n@media only screen and (max-height: 600px) {\n.playBar .small {\n height: 100px;\n top: calc(100% - 169px);\n}\n}\n.playBar .hidden {\n top: 100%;\n}\n.playBar .right {\n float: right;\n}\n.playBar .toggle-button {\n cursor: pointer;\n}\n.progressbarContainer {\n height: 10px;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n background-color: rgba(0, 0, 0, 0.25);\n -webkit-box-shadow: inset 0 0 5px 0 rgba(44, 40, 40, 0.75);\n box-shadow: inset 0 0 5px 0 rgba(44, 40, 40, 0.75);\n cursor: pointer;\n}\n.progressbarContainer .progressbar {\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n background-color: #ae6600;\n z-index: 4;\n -webkit-box-shadow: 0 0 5px 2px rgba(44, 40, 40, 0.75);\n box-shadow: 0 0 5px 2px rgba(44, 40, 40, 0.75);\n}\n.progressbarContainer .progressbarload {\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n background-color: #ae6600;\n -webkit-box-shadow: 0 0 5px 2px #421c00;\n box-shadow: 0 0 5px 2px #421c00;\n opacity: 0.2;\n}\n@-webkit-keyframes loading {\nfrom {\n left: -10%;\n}\nto {\n left: 100%;\n}\n}\n@keyframes loading {\nfrom {\n left: -10%;\n}\nto {\n left: 100%;\n}\n}\n.loading {\n width: 10% !important;\n position: relative;\n -webkit-animation-name: loading;\n animation-name: loading;\n -webkit-animation-timing-function: linear;\n animation-timing-function: linear;\n -webkit-animation-iteration-count: infinite;\n animation-iteration-count: infinite;\n -webkit-animation-duration: 4s;\n animation-duration: 4s;\n}\n.quality-selector {\n position: fixed;\n bottom: 50px;\n right: 10px;\n width: auto;\n background: #696060;\n -webkit-box-shadow: 0 0 5px 2px rgba(44, 40, 40, 0.75);\n box-shadow: 0 0 5px 2px rgba(44, 40, 40, 0.75);\n}\n.quality-selector ul {\n list-style: none;\n border-radius: 3px;\n}\n.quality-selector ul li {\n padding: 20px;\n cursor: pointer;\n}\n.quality-selector ul li.selected {\n background-color: rgba(0, 0, 0, 0.3);\n}\n.quality-selector ul li:hover {\n background-color: rgba(0, 0, 0, 0.5);\n}\n.hiddenBar {\n cursor: none;\n}\n.hiddenBar .bar {\n bottom: -70px;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/playBar.vue","\n@-webkit-keyframes rotating-data-v-e433c9c8 {\nfrom {\n -transform: rotate(0deg);\n}\nto {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n}\n}\n@keyframes rotating-data-v-e433c9c8 {\nfrom {\n -transform: rotate(0deg);\n}\nto {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n}\n}\n@-webkit-keyframes scale-width-data-v-e433c9c8 {\nfrom {\n width: 0;\n height: 0;\n margin-top: 0;\n margin-left: 0;\n}\nto {\n width: 128px;\n height: 128px;\n margin-top: -64px;\n margin-left: -64px;\n}\n}\n.loader[data-v-e433c9c8] {\n width: 128px;\n height: 128px;\n background-color: transparent;\n border: solid rgba(0, 0, 0, 0.2) 10px;\n border-bottom: solid #F15A24 10px;\n border-radius: 100%;\n position: fixed;\n top: 50%;\n left: 50%;\n margin-top: -64px;\n margin-left: -64px;\n -webkit-animation: scale-width-data-v-e433c9c8 0.5s linear,rotating-data-v-e433c9c8 2s linear infinite;\n animation: scale-width-data-v-e433c9c8 0.5s linear,rotating-data-v-e433c9c8 2s linear infinite;\n}\n.loading-container[data-v-e433c9c8] {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 100;\n background: #696060;\n background: -webkit-gradient(linear, left top, left bottom, from(#696060), color-stop(36%, #55535b), to(#28343b));\n background: linear-gradient(to bottom, #696060 0%, #55535b 36%, #28343b 100%);\n background-position: top;\n background-attachment: fixed;\n background-repeat: round;\n background-size: cover;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/LoadingPage.vue","\nh3[data-v-241cc0af] {\n width: 100%;\n color: white;\n margin: 0;\n margin-bottom: 10px;\n padding: 20px;\n background-color: rgba(0, 0, 0, 0.3);\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n}\nul[data-v-241cc0af] {\n list-style: none;\n padding: 0;\n margin: 0;\n}\nul li a[data-v-241cc0af] {\n display: inline-block;\n width: 100%;\n padding: 10px 20px;\n color: white;\n text-decoration: none;\n -webkit-transition: background-color 0.1s;\n transition: background-color 0.1s;\n}\nul li a[data-v-241cc0af]:hover {\n background-color: rgba(0, 0, 0, 0.1);\n -webkit-box-shadow: 0 0 2px 2px rgba(52, 47, 47, 0.2);\n box-shadow: 0 0 2px 2px rgba(52, 47, 47, 0.2);\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/modals/ShowDialog.vue","\nh3[data-v-6c4eeb7e] {\n width: 100%;\n color: white;\n margin: 0;\n margin-bottom: 10px;\n padding: 20px;\n background-color: rgba(0, 0, 0, 0.3);\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n}\n.wrapper[data-v-6c4eeb7e] {\n width: 100%;\n}\n.wrapper .half[data-v-6c4eeb7e] {\n width: 50%;\n float: left;\n padding: 10px;\n}\n.wrapper .poster img[data-v-6c4eeb7e] {\n width: 100%;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/modals/ShowModify.vue","\n.body[data-v-0ee45143] {\n padding: 10px;\n}\nh3[data-v-0ee45143] {\n width: 100%;\n color: white;\n margin: 0;\n margin-bottom: 10px;\n padding: 20px;\n background-color: rgba(0, 0, 0, 0.3);\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n}\nlabel[data-v-0ee45143] {\n display: block;\n margin: 5px;\n margin-left: 0;\n}\ninput[data-v-0ee45143] {\n margin-bottom: 10px;\n border-radius: 0;\n padding: 10px;\n width: 100%;\n border: 2px #a8cca1 solid;\n}\n.invalid[data-v-0ee45143] {\n border-color: #ff9f78;\n}\n.footer[data-v-0ee45143] {\n background-color: rgba(0, 0, 0, 0.3);\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n padding: 10px;\n overflow: hidden;\n}\n.footer button[data-v-0ee45143] {\n float: right;\n background-color: rgba(0, 0, 0, 0.5);\n border: rgba(0, 0, 0, 0.8) 1px solid;\n color: rgba(255, 255, 255, 0.5);\n padding: 10px;\n border-radius: 3px;\n cursor: pointer;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/modals/UserAdd.vue","\n.container[data-v-10c23def] {\n padding: 10px;\n}\nh3[data-v-10c23def] {\n width: 100%;\n color: white;\n margin: 0 0 10px;\n padding: 20px;\n background-color: rgba(0, 0, 0, 0.3);\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n}\nul[data-v-10c23def] {\n list-style: none;\n padding: 0;\n margin: 0;\n}\nul li span[data-v-10c23def] {\n display: inline-block;\n width: 100%;\n padding: 10px 20px;\n color: white;\n text-decoration: none;\n -webkit-transition: background-color 0.1s;\n transition: background-color 0.1s;\n}\nul li span[data-v-10c23def]:hover {\n background-color: rgba(0, 0, 0, 0.1);\n -webkit-box-shadow: 0 0 2px 2px rgba(52, 47, 47, 0.2);\n box-shadow: 0 0 2px 2px rgba(52, 47, 47, 0.2);\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/modals/MovieDialog.vue","\n.container[data-v-512bec04] {\n padding: 10px;\n}\nh3[data-v-512bec04] {\n width: 100%;\n color: white;\n margin: 0;\n margin-bottom: 10px;\n padding: 20px;\n background-color: rgba(0, 0, 0, 0.3);\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n}\nul[data-v-512bec04] {\n list-style: none;\n padding: 0;\n margin: 0;\n}\nul li span[data-v-512bec04] {\n display: inline-block;\n width: 100%;\n padding: 10px 20px;\n color: white;\n text-decoration: none;\n -webkit-transition: background-color 0.1s;\n transition: background-color 0.1s;\n}\nul li span[data-v-512bec04]:hover {\n background-color: rgba(0, 0, 0, 0.1);\n -webkit-box-shadow: 0 0 2px 2px rgba(52, 47, 47, 0.2);\n box-shadow: 0 0 2px 2px rgba(52, 47, 47, 0.2);\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/modals/EpisodeDialog.vue","\n.body[data-v-22b7067a] {\n padding: 10px;\n}\nh3[data-v-22b7067a] {\n width: 100%;\n color: white;\n margin: 0;\n margin-bottom: 10px;\n padding: 20px;\n background-color: rgba(0, 0, 0, 0.3);\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n}\nlabel[data-v-22b7067a] {\n display: block;\n margin: 5px;\n margin-left: 0;\n}\ninput[data-v-22b7067a] {\n margin-bottom: 10px;\n border-radius: 0;\n padding: 10px;\n width: 100%;\n border: 2px #a8cca1 solid;\n}\n.invalid[data-v-22b7067a] {\n border-color: #ff9f78;\n}\n.footer[data-v-22b7067a] {\n background-color: rgba(0, 0, 0, 0.3);\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n padding: 10px;\n overflow: hidden;\n}\n.footer button[data-v-22b7067a] {\n float: right;\n background-color: rgba(0, 0, 0, 0.5);\n border: rgba(0, 0, 0, 0.8) 1px solid;\n color: rgba(255, 255, 255, 0.5);\n padding: 10px;\n border-radius: 3px;\n cursor: pointer;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/modals/LibraryAdd.vue","\n.body[data-v-3d8b2d19] {\n padding: 10px;\n}\nh3[data-v-3d8b2d19] {\n width: 100%;\n color: white;\n margin: 0;\n margin-bottom: 10px;\n padding: 20px;\n background-color: rgba(0, 0, 0, 0.3);\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n}\nlabel[data-v-3d8b2d19] {\n display: block;\n margin: 5px;\n margin-left: 0;\n}\ninput[data-v-3d8b2d19] {\n margin-bottom: 10px;\n border-radius: 0;\n padding: 10px;\n width: 100%;\n border: 2px #a8cca1 solid;\n}\n.invalid[data-v-3d8b2d19] {\n border-color: #ff9f78;\n}\n.footer[data-v-3d8b2d19] {\n background-color: rgba(0, 0, 0, 0.3);\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n padding: 10px;\n overflow: hidden;\n}\n.footer button[data-v-3d8b2d19] {\n float: right;\n background-color: rgba(0, 0, 0, 0.5);\n border: rgba(0, 0, 0, 0.8) 1px solid;\n color: rgba(255, 255, 255, 0.5);\n padding: 10px;\n border-radius: 3px;\n cursor: pointer;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/modals/NewMovieSet.vue","\n.body[data-v-5051d560] {\n padding: 10px;\n}\nh3[data-v-5051d560] {\n width: 100%;\n color: white;\n margin: 0;\n margin-bottom: 10px;\n padding: 20px;\n background-color: rgba(0, 0, 0, 0.3);\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n}\nlabel[data-v-5051d560] {\n display: block;\n margin: 5px;\n margin-left: 0;\n}\ninput[data-v-5051d560] {\n margin-bottom: 10px;\n border-radius: 0;\n padding: 10px;\n width: 100%;\n border: 2px #a8cca1 solid;\n}\n.invalid[data-v-5051d560] {\n border-color: #ff9f78;\n}\n.footer[data-v-5051d560] {\n background-color: rgba(0, 0, 0, 0.3);\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n padding: 10px;\n overflow: hidden;\n}\n.footer button[data-v-5051d560] {\n float: right;\n background-color: rgba(0, 0, 0, 0.5);\n border: rgba(0, 0, 0, 0.8) 1px solid;\n color: rgba(255, 255, 255, 0.5);\n padding: 10px;\n border-radius: 3px;\n cursor: pointer;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/modals/PasswordChange.vue","\n.body[data-v-452227c4] {\n padding: 10px;\n}\nh3[data-v-452227c4] {\n width: 100%;\n color: white;\n margin: 0;\n margin-bottom: 10px;\n padding: 20px;\n background-color: rgba(0, 0, 0, 0.3);\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n}\nlabel[data-v-452227c4] {\n display: block;\n margin: 5px;\n margin-left: 0;\n}\ninput[data-v-452227c4] {\n margin-bottom: 10px;\n border-radius: 0;\n padding: 10px;\n width: 100%;\n border: 2px #a8cca1 solid;\n}\n.invalid[data-v-452227c4] {\n border-color: #ff9f78;\n}\n.footer[data-v-452227c4] {\n background-color: rgba(0, 0, 0, 0.3);\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n padding: 10px;\n overflow: hidden;\n}\n.footer button[data-v-452227c4] {\n float: right;\n background-color: rgba(0, 0, 0, 0.5);\n border: rgba(0, 0, 0, 0.8) 1px solid;\n color: rgba(255, 255, 255, 0.5);\n padding: 10px;\n border-radius: 3px;\n cursor: pointer;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/modals/CopyText.vue","\n.container[data-v-0f0921f6] {\n padding: 10px;\n}\nh3[data-v-0f0921f6] {\n width: 100%;\n color: white;\n margin: 0;\n margin-bottom: 10px;\n padding: 20px;\n background-color: rgba(0, 0, 0, 0.3);\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n}\nul[data-v-0f0921f6] {\n list-style: none;\n padding: 0;\n margin: 0;\n}\nul li span[data-v-0f0921f6] {\n display: inline-block;\n width: 100%;\n padding: 10px 20px;\n color: white;\n text-decoration: none;\n cursor: pointer;\n -webkit-transition: background-color 0.1s;\n transition: background-color 0.1s;\n}\nul li span[data-v-0f0921f6]:hover {\n background-color: rgba(0, 0, 0, 0.1);\n -webkit-box-shadow: 0 0 2px 2px rgba(52, 47, 47, 0.2);\n box-shadow: 0 0 2px 2px rgba(52, 47, 47, 0.2);\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/modals/ChangeRemoteDialog.vue","\n.info-container[data-v-0dad31d7] {\n padding: 50px 10px 0;\n}\n.info[data-v-0dad31d7] {\n font-size: 1em;\n border-radius: 3px;\n background: #696060;\n -webkit-box-shadow: 0 2px 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 2px 5px 2px rgba(52, 47, 47, 0.75);\n padding-bottom: 40px;\n min-height: 270px;\n}\n.info .poster[data-v-0dad31d7] {\n height: 300px;\n width: 204px;\n float: left;\n -webkit-box-shadow: 0 2px 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 2px 5px 2px rgba(52, 47, 47, 0.75);\n border-radius: 3px;\n overflow: hidden;\n margin: -50px 20px 20px;\n background: black;\n}\n@media screen and (max-width: 700px) {\n.info .poster[data-v-0dad31d7] {\n height: 200px;\n width: 133.333px;\n}\n}\n.info .poster img[data-v-0dad31d7] {\n height: 100%;\n}\n.info .right[data-v-0dad31d7] {\n padding: 20px;\n}\n.info .right h2[data-v-0dad31d7] {\n padding: 0;\n font-size: 1.2em;\n margin: 0 0 5px;\n}\n.info .right .year[data-v-0dad31d7], .info .right .genres[data-v-0dad31d7] {\n color: rgba(250, 240, 240, 0.6);\n margin-bottom: 10px;\n padding: 0;\n font-weight: normal;\n}\n.info .right p[data-v-0dad31d7] {\n color: rgba(250, 240, 240, 0.9);\n padding: 0;\n margin: 20px 0 0;\n max-width: 900px;\n}\n.info .right .genres[data-v-0dad31d7] {\n float: right;\n margin-top: 20px;\n}\n.episodes[data-v-0dad31d7] {\n width: 100%;\n}\n.genres[data-v-0dad31d7] {\n list-style: none;\n}\n.genres li[data-v-0dad31d7] {\n display: inline-block;\n margin-right: 3px;\n font-style: italic;\n}\n.genres li[data-v-0dad31d7]:after {\n content: \",\";\n}\n.genres li[data-v-0dad31d7]:last-child:after {\n content: '';\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/pages/SeriesView.vue","\n.info-container[data-v-44012810] {\n margin-top: -20px;\n padding: 400px 10px 10px;\n background-size: cover;\n background-position: center 0;\n position: relative;\n z-index: 0;\n}\n.info[data-v-44012810] {\n font-size: 1em;\n border-radius: 3px;\n background: #696060;\n -webkit-box-shadow: 0 2px 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 2px 5px 2px rgba(52, 47, 47, 0.75);\n padding-bottom: 40px;\n min-height: 270px;\n}\n.info .poster[data-v-44012810] {\n position: relative;\n height: 300px;\n float: left;\n -webkit-box-shadow: 0 2px 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 2px 5px 2px rgba(52, 47, 47, 0.75);\n border-radius: 3px;\n overflow: hidden;\n margin: -50px 20px 20px;\n}\n@media screen and (max-width: 700px) {\n.info .poster[data-v-44012810] {\n height: 200px;\n}\n}\n.info .poster img[data-v-44012810] {\n height: 100%;\n}\n.info .right[data-v-44012810] {\n padding: 20px;\n}\n.info .right h2[data-v-44012810] {\n padding: 0;\n font-size: 1.2em;\n margin: 0 0 5px;\n}\n.info .right .year[data-v-44012810], .info .right .genres[data-v-44012810] {\n color: rgba(250, 240, 240, 0.6);\n margin-bottom: 10px;\n padding: 0;\n font-weight: normal;\n}\n.info .right p[data-v-44012810] {\n color: rgba(250, 240, 240, 0.9);\n padding: 0;\n margin: 20px 0 0;\n max-width: 900px;\n}\n.info .right .genres[data-v-44012810] {\n float: right;\n margin-top: 20px;\n}\n.genres[data-v-44012810] {\n list-style: none;\n}\n.genres li[data-v-44012810] {\n display: inline-block;\n margin-right: 3px;\n font-style: italic;\n}\n.genres li[data-v-44012810]:after {\n content: \",\";\n}\n.genres li[data-v-44012810]:last-child:after {\n content: '';\n}\na[data-v-44012810] {\n color: white;\n margin: 0 5px;\n cursor: pointer;\n}\n.fa[data-v-44012810] {\n margin-left: 10px;\n}\na.play[data-v-44012810] {\n opacity: 0;\n display: block;\n font-size: 4em;\n margin: 0;\n width: 100px;\n height: 100px;\n position: absolute;\n top: calc(50% - 50px);\n left: calc(50% - 50px);\n background-color: rgba(0, 0, 0, 0.5);\n border: 2px solid white;\n border-radius: 100%;\n text-align: center;\n line-height: 100px;\n -webkit-transition: opacity 0.2s;\n transition: opacity 0.2s;\n}\n.poster:hover a.play[data-v-44012810] {\n opacity: 0.4;\n}\na.play[data-v-44012810]:hover {\n opacity: 1 !important;\n}\n.error[data-v-44012810] {\n background: #694040;\n -webkit-box-shadow: 0 0 2px 2px rgba(42, 25, 25, 0.75);\n box-shadow: 0 0 2px 2px rgba(42, 25, 25, 0.75);\n padding: 10px;\n border-spacing: 0;\n list-style: none;\n width: 100%;\n border-radius: 3px;\n overflow: hidden;\n text-align: center;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/pages/MovieInfo.vue","\n.file-list-container[data-v-5cf9c07e] {\n padding: 0 10px;\n}\n.file-list[data-v-5cf9c07e] {\n background: #696060;\n -webkit-box-shadow: 0 0 2px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 2px 2px rgba(52, 47, 47, 0.75);\n border-spacing: 0;\n list-style: none;\n width: 100%;\n border-radius: 3px;\n overflow: hidden;\n}\n.file-list-item[data-v-5cf9c07e] {\n padding: 10px 30px;\n}\n.file-list-item[data-v-5cf9c07e]:nth-child(even) {\n background-color: #645b5b;\n}\n.file-item-right[data-v-5cf9c07e] {\n float: right;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/files/FileList.vue","\n.container[data-v-a4849834] {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n}\n.container .form[data-v-a4849834] {\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n width: 100%;\n max-width: 500px;\n background-color: rgba(0, 0, 0, 0.3);\n border-radius: 6px;\n padding: 20px 30px;\n}\n.container .form label[data-v-a4849834] {\n display: block;\n color: #f2f2f2;\n padding: 5px;\n font-family: Roboto;\n font-size: 1.2em;\n}\n.container .form input[data-v-a4849834] {\n display: block;\n width: 100%;\n padding: 10px;\n border-radius: 6px;\n border: #ccc solid 1px;\n outline: none;\n}\n.container .form button[data-v-a4849834] {\n border-radius: 6px;\n background: #ccc;\n padding: 10px 30px;\n border: none;\n margin-top: 20px;\n float: right;\n}\n.server-indicator[data-v-a4849834] {\n float: left;\n padding: 10px 0;\n border: none;\n margin-top: 20px;\n}\n.logo img[data-v-a4849834] {\n display: block;\n width: 50%;\n margin: 20px auto;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/pages/Login.vue","\n.container[data-v-b095acca] {\n padding: 10px;\n}\n.settings-nav[data-v-b095acca] {\n list-style: none;\n margin-top: 0;\n margin-bottom: 15px;\n position: relative;\n overflow-x: auto;\n white-space: nowrap;\n}\n.settings-nav .settings-nav-item[data-v-b095acca] {\n display: inline-block;\n}\n.settings-nav .settings-nav-item a[data-v-b095acca] {\n color: #999;\n display: block;\n text-decoration: none;\n padding: 10px 20px;\n font-family: Roboto;\n font-size: 20px;\n text-transform: capitalize;\n font-weight: bold;\n}\n.settings-nav .settings-nav-item a.router-link-active[data-v-b095acca] {\n color: #eee;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/pages/Settings.vue","\nhr[data-v-db18dd10] {\n border-color: rgba(0, 0, 0, 0.5);\n width: 100%;\n display: block;\n float: left;\n}\nbutton[data-v-db18dd10] {\n background-color: rgba(0, 0, 0, 0.5);\n border: rgba(0, 0, 0, 0.8) 1px solid;\n color: rgba(255, 255, 255, 0.5);\n display: block;\n float: left;\n padding: 10px;\n margin: 2px;\n border-radius: 3px;\n cursor: pointer;\n}\nbutton[data-v-db18dd10]:hover {\n background-color: rgba(0, 0, 0, 0.9);\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/settings/Maintenance.vue","\ntable[data-v-a0a4b11c] {\n background: #696060;\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n border-spacing: 0;\n width: 100%;\n}\nthead[data-v-a0a4b11c] {\n background-color: #444042;\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n}\nthead th[data-v-a0a4b11c] {\n padding: 10px;\n margin: 0;\n border: 0;\n outline: 0;\n}\n.button[data-v-a0a4b11c] {\n background-color: rgba(0, 0, 0, 0.5);\n border: rgba(0, 0, 0, 0.8) 1px solid;\n color: rgba(255, 255, 255, 0.5);\n padding: 10px;\n border-radius: 3px;\n cursor: pointer;\n display: block;\n width: 100%;\n max-width: 200px;\n margin: 5px 0;\n text-align: center;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/settings/UserManager.vue","\ntr[data-v-56154beb]:nth-child(even) {\n background-color: #645b5b;\n}\ntd[data-v-56154beb] {\n padding: 10px;\n}\n.id[data-v-56154beb] {\n text-align: right;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/settings/UserManagement/userEntry.vue","\n.button[data-v-4e139448] {\n background-color: rgba(0, 0, 0, 0.5);\n border: rgba(0, 0, 0, 0.8) 1px solid;\n color: rgba(255, 255, 255, 0.5);\n padding: 10px;\n border-radius: 3px;\n cursor: pointer;\n display: block;\n width: 100%;\n max-width: 200px;\n margin: 5px 0;\n text-align: center;\n}\nh2[data-v-4e139448] {\n padding-left: 40px;\n}\ntable[data-v-4e139448] {\n background: #696060;\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n border-spacing: 0;\n width: 100%;\n}\ntable thead[data-v-4e139448] {\n background-color: #444042;\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n}\ntable thead th[data-v-4e139448] {\n padding: 10px;\n margin: 0;\n border: 0;\n outline: 0;\n}\ntable tr[data-v-4e139448]:nth-child(even) {\n background-color: #645b5b;\n}\ntable td[data-v-4e139448] {\n padding: 10px;\n}\ntable .id[data-v-4e139448] {\n text-align: right;\n}\ntable .actions[data-v-4e139448] {\n text-align: center;\n}\ntable .button[data-v-4e139448] {\n background-color: rgba(0, 0, 0, 0.5);\n border: rgba(0, 0, 0, 0.8) 1px solid;\n color: rgba(255, 255, 255, 0.5);\n padding: 10px;\n border-radius: 3px;\n cursor: pointer;\n display: block;\n width: 100%;\n max-width: 200px;\n margin: 5px 0;\n text-align: center;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/settings/Libraries.vue","\nhr[data-v-7688ec90] {\n border-color: rgba(0, 0, 0, 0.5);\n width: 100%;\n display: block;\n float: left;\n}\nbutton[data-v-7688ec90] {\n background-color: rgba(0, 0, 0, 0.5);\n border: rgba(0, 0, 0, 0.8) 1px solid;\n color: rgba(255, 255, 255, 0.5);\n display: block;\n float: left;\n padding: 10px;\n margin: 2px;\n border-radius: 3px;\n cursor: pointer;\n}\nbutton[data-v-7688ec90]:hover {\n background-color: rgba(0, 0, 0, 0.9);\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/settings/Sets.vue","\n.button[data-v-268ee30d] {\n background-color: rgba(0, 0, 0, 0.5);\n border: rgba(0, 0, 0, 0.8) 1px solid;\n color: rgba(255, 255, 255, 0.5);\n padding: 10px;\n border-radius: 3px;\n cursor: pointer;\n display: block;\n width: 100%;\n max-width: 200px;\n margin: 5px 0;\n text-align: center;\n}\nh2[data-v-268ee30d] {\n padding-left: 40px;\n}\ntable[data-v-268ee30d] {\n background: #696060;\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n border-spacing: 0;\n width: 100%;\n}\ntable thead[data-v-268ee30d] {\n background-color: #444042;\n -webkit-box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n box-shadow: 0 0 5px 2px rgba(52, 47, 47, 0.75);\n}\ntable thead th[data-v-268ee30d] {\n padding: 10px;\n margin: 0;\n border: 0;\n outline: 0;\n}\ntable tr[data-v-268ee30d]:nth-child(even) {\n background-color: #645b5b;\n}\ntable td[data-v-268ee30d] {\n padding: 10px;\n}\ntable .id[data-v-268ee30d] {\n text-align: right;\n}\ntable .actions[data-v-268ee30d] {\n text-align: center;\n}\ntable .button[data-v-268ee30d] {\n background-color: rgba(0, 0, 0, 0.5);\n border: rgba(0, 0, 0, 0.8) 1px solid;\n color: rgba(255, 255, 255, 0.5);\n padding: 10px;\n border-radius: 3px;\n cursor: pointer;\n display: block;\n width: 100%;\n max-width: 200px;\n margin: 5px 0;\n text-align: center;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/settings/IndexerSettings.vue"],"sourceRoot":""}