diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md
index 819b9a8f5..3d90b70b9 100644
--- a/.github/CONTRIBUTING.md
+++ b/.github/CONTRIBUTING.md
@@ -33,7 +33,7 @@ Some hints:
## Develop
-Don't hesitate to talk about features you want to develop by creating an issue
+Don't hesitate to talk about features you want to develop by creating/commenting an issue
before you start working on them :).
### Prerequisites
diff --git a/client/.angular-cli.json b/client/.angular-cli.json
index 739a4c5a5..3bdc50492 100644
--- a/client/.angular-cli.json
+++ b/client/.angular-cli.json
@@ -7,11 +7,21 @@
{
"root": "src",
"outDir": "dist",
- "deployUrl": "client/",
"assets": [
- { "glob": "**/*", "input": "./assets/images", "output": "./client/assets/images" },
- { "input": "./manifest.json", "output": "./client/manifest.json" }
+ {
+ "glob": "**/*",
+ "input": "./assets/images",
+ "output": "./client/assets/images",
+ "allowOutsideOutDir": false
+ },
+ {
+ "glob": "",
+ "input": "./manifest.json",
+ "output": "./manifest.json",
+ "allowOutsideOutDir": false
+ }
],
+ "deployUrl": "client/",
"index": "index.html",
"main": "main.ts",
"polyfills": "polyfills.ts",
@@ -19,6 +29,7 @@
"tsconfig": "tsconfig.app.json",
"testTsconfig": "tsconfig.spec.json",
"prefix": "app",
+ "serviceWorker": true,
"styles": [
"sass/application.scss"
],
@@ -32,8 +43,7 @@
"environments": {
"dev": "environments/environment.ts",
"prod": "environments/environment.prod.ts"
- },
- "serviceWorker": true
+ }
}
],
"e2e": {
diff --git a/client/package.json b/client/package.json
index 39cd209e6..bddf2ce73 100644
--- a/client/package.json
+++ b/client/package.json
@@ -20,10 +20,12 @@
"webpack-bundle-analyzer": "webpack-bundle-analyzer"
},
"license": "GPLv3",
- "dependencies": {},
+ "resolutions": {
+ "copy-webpack-plugin": "4.3.0"
+ },
"devDependencies": {
"@angular/animations": "~5.2.2",
- "@angular/cli": "^1.6.0",
+ "@angular/cli": "1.6.7",
"@angular/common": "~5.2.2",
"@angular/compiler": "~5.2.2",
"@angular/compiler-cli": "~5.2.2",
@@ -75,7 +77,7 @@
"standard": "^10.0.0",
"tslint": "^5.7.0",
"tslint-config-standard": "^7.0.0",
- "typescript": "^2.6.2",
+ "typescript": "2.6",
"uglifyjs-webpack-plugin": "^1.1.2",
"video.js": "^6.2.0",
"videojs-dock": "^2.0.2",
diff --git a/client/src/app/app.module.ts b/client/src/app/app.module.ts
index 1134d061b..34114b60b 100644
--- a/client/src/app/app.module.ts
+++ b/client/src/app/app.module.ts
@@ -1,9 +1,11 @@
import { NgModule } from '@angular/core'
import { BrowserModule } from '@angular/platform-browser'
+import { ServiceWorkerModule } from '@angular/service-worker'
import { AboutModule } from '@app/about'
import { ResetPasswordModule } from '@app/reset-password'
import { MetaLoader, MetaModule, MetaStaticLoader, PageTitlePositioning } from '@ngx-meta/core'
+import { environment } from '../environments/environment'
import { AccountModule } from './account'
@@ -24,7 +26,8 @@ export function metaFactory (): MetaLoader {
applicationName: 'PeerTube',
defaults: {
title: 'PeerTube',
- description: 'PeerTube, a decentralized video streaming platform using P2P (BitTorrent) directly in the web browser'
+ description: 'PeerTube, a federated (ActivityPub) video streaming platform ' +
+ 'using P2P (BitTorrent) directly in the web browser with WebTorrent and Angular. '
}
})
}
@@ -57,7 +60,9 @@ export function metaFactory (): MetaLoader {
MetaModule.forRoot({
provide: MetaLoader,
useFactory: (metaFactory)
- })
+ }),
+
+ ServiceWorkerModule.register('/ngsw-worker.js', { enabled: environment.production })
],
providers: [ ]
})
diff --git a/client/src/app/shared/video/abstract-video-list.scss b/client/src/app/shared/video/abstract-video-list.scss
index 52797bc6c..0f0ff20f0 100644
--- a/client/src/app/shared/video/abstract-video-list.scss
+++ b/client/src/app/shared/video/abstract-video-list.scss
@@ -5,3 +5,27 @@
text-align: left;
}
}
+
+@media screen and (max-width: 400px) and (min-resolution: 1.5dppx) {
+ .videos {
+ text-align: center;
+
+ /deep/ .video-miniature {
+ padding-right: 0;
+ height: 215px;
+ width: 100%;
+
+ .video-miniature-information {
+ width: 100%;
+ }
+
+ /deep/ .video-thumbnail {
+ width: 100%;
+
+ img {
+ width: 100%;
+ }
+ }
+ }
+ }
+}
diff --git a/client/src/index.html b/client/src/index.html
index 61a8d2ed1..8ff89f6a4 100644
--- a/client/src/index.html
+++ b/client/src/index.html
@@ -8,7 +8,7 @@
-
+
diff --git a/client/src/manifest.json b/client/src/manifest.json
index ac5eac647..a9e885739 100644
--- a/client/src/manifest.json
+++ b/client/src/manifest.json
@@ -42,5 +42,5 @@
],
"name": "PeerTube",
"short_name": "PeerTube",
- "start_url": "/videos/recently-added"
+ "start_url": "."
}
diff --git a/client/src/ngsw-config.json b/client/src/ngsw-config.json
new file mode 100644
index 000000000..47a116bb7
--- /dev/null
+++ b/client/src/ngsw-config.json
@@ -0,0 +1,30 @@
+{
+ "index": "/index.html",
+ "assetGroups": [
+ {
+ "name": "app",
+ "installMode": "prefetch",
+ "resources": {
+ "files": [
+ "/index.html",
+ "/client/assets/images/favicon.png"
+ ],
+ "versionedFiles": [
+ "/client/*.bundle.css",
+ "/client/*.bundle.js",
+ "/client/*.chunk.js"
+ ]
+ }
+ },
+ {
+ "name": "assets",
+ "installMode": "lazy",
+ "updateMode": "prefetch",
+ "resources": {
+ "files": [
+ "/client/assets/**"
+ ]
+ }
+ }
+ ]
+}
diff --git a/client/yarn.lock b/client/yarn.lock
index 289a38502..cd4492150 100644
--- a/client/yarn.lock
+++ b/client/yarn.lock
@@ -2,7 +2,7 @@
# yarn lockfile v1
-"@angular-devkit/build-optimizer@~0.0.42":
+"@angular-devkit/build-optimizer@0.0.42":
version "0.0.42"
resolved "https://registry.yarnpkg.com/@angular-devkit/build-optimizer/-/build-optimizer-0.0.42.tgz#402b0dda4883db91e2381c3ddc55888408a7894e"
dependencies:
@@ -11,7 +11,7 @@
typescript "~2.6.2"
webpack-sources "^1.0.1"
-"@angular-devkit/core@~0.0.29":
+"@angular-devkit/core@0.0.29":
version "0.0.29"
resolved "https://registry.yarnpkg.com/@angular-devkit/core/-/core-0.0.29.tgz#6fb319b45a62eff172318cbe256fdb24ef20af2b"
dependencies:
@@ -20,7 +20,7 @@
rxjs "^5.5.6"
source-map "^0.5.6"
-"@angular-devkit/schematics@~0.0.52":
+"@angular-devkit/schematics@0.0.52":
version "0.0.52"
resolved "https://registry.yarnpkg.com/@angular-devkit/schematics/-/schematics-0.0.52.tgz#cbd2f42778b50d6422a254ffaec05ad4ef3cb6c0"
dependencies:
@@ -28,21 +28,21 @@
rxjs "^5.5.6"
"@angular/animations@~5.2.2":
- version "5.2.2"
- resolved "https://registry.yarnpkg.com/@angular/animations/-/animations-5.2.2.tgz#3364a0c4f355d3313dda9bde526e376c137fa169"
+ version "5.2.4"
+ resolved "https://registry.yarnpkg.com/@angular/animations/-/animations-5.2.4.tgz#c5ec749d84a0434733a28a82c6cb6a4e15246201"
dependencies:
tslib "^1.7.1"
-"@angular/cli@^1.6.0":
- version "1.6.6"
- resolved "https://registry.yarnpkg.com/@angular/cli/-/cli-1.6.6.tgz#002119ab2ed804bbdc86075e0095eadda2a0baa0"
+"@angular/cli@1.6.7":
+ version "1.6.7"
+ resolved "https://registry.yarnpkg.com/@angular/cli/-/cli-1.6.7.tgz#e2323753c144b5de6c699bbebee688105a394641"
dependencies:
- "@angular-devkit/build-optimizer" "~0.0.42"
- "@angular-devkit/core" "~0.0.29"
- "@angular-devkit/schematics" "~0.0.52"
+ "@angular-devkit/build-optimizer" "0.0.42"
+ "@angular-devkit/core" "0.0.29"
+ "@angular-devkit/schematics" "0.0.52"
"@ngtools/json-schema" "1.1.0"
- "@ngtools/webpack" "1.9.6"
- "@schematics/angular" "~0.1.17"
+ "@ngtools/webpack" "1.9.7"
+ "@schematics/angular" "0.1.17"
autoprefixer "^7.2.3"
chalk "~2.2.0"
circular-dependency-plugin "^4.2.1"
@@ -81,7 +81,6 @@
sass-loader "^6.0.6"
semver "^5.1.0"
silent-error "^1.0.0"
- source-map-loader "^0.2.0"
source-map-support "^0.4.1"
style-loader "^0.13.1"
stylus "^0.54.5"
@@ -98,14 +97,14 @@
node-sass "^4.7.2"
"@angular/common@~5.2.2":
- version "5.2.2"
- resolved "https://registry.yarnpkg.com/@angular/common/-/common-5.2.2.tgz#24f0f21dbc29a8b2dbfe93d19ec5a18defca9edf"
+ version "5.2.4"
+ resolved "https://registry.yarnpkg.com/@angular/common/-/common-5.2.4.tgz#a0ee6ef65f731196d3037bce515f7bbec90740d2"
dependencies:
tslib "^1.7.1"
"@angular/compiler-cli@~5.2.2":
- version "5.2.2"
- resolved "https://registry.yarnpkg.com/@angular/compiler-cli/-/compiler-cli-5.2.2.tgz#0929463252adcf3f8094b1689cc5cbdcb6f8ceaa"
+ version "5.2.4"
+ resolved "https://registry.yarnpkg.com/@angular/compiler-cli/-/compiler-cli-5.2.4.tgz#6d236f8433abe6752441e20884e599e8aa13c567"
dependencies:
chokidar "^1.4.2"
minimist "^1.2.0"
@@ -113,48 +112,48 @@
tsickle "^0.26.0"
"@angular/compiler@~5.2.2":
- version "5.2.2"
- resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-5.2.2.tgz#cf6ef310c5ca2fdae9551af62d10ab24d4feb51a"
+ version "5.2.4"
+ resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-5.2.4.tgz#f653176bf6c4e253b2c445a1e50941ffba009fb2"
dependencies:
tslib "^1.7.1"
"@angular/core@~5.2.2":
- version "5.2.2"
- resolved "https://registry.yarnpkg.com/@angular/core/-/core-5.2.2.tgz#54950023b971d9e01f6f6fdbc30d2b68e4d05eb2"
+ version "5.2.4"
+ resolved "https://registry.yarnpkg.com/@angular/core/-/core-5.2.4.tgz#44a59bcea87b3aac9ce8ff2ff674fe9cb60e2041"
dependencies:
tslib "^1.7.1"
"@angular/forms@~5.2.2":
- version "5.2.2"
- resolved "https://registry.yarnpkg.com/@angular/forms/-/forms-5.2.2.tgz#eca24f15d96de285cd0726601db4bffec39c01f3"
+ version "5.2.4"
+ resolved "https://registry.yarnpkg.com/@angular/forms/-/forms-5.2.4.tgz#a731087e147ca61f5051cbe22597a24d937c4852"
dependencies:
tslib "^1.7.1"
"@angular/http@~5.2.2":
- version "5.2.2"
- resolved "https://registry.yarnpkg.com/@angular/http/-/http-5.2.2.tgz#d33c128d5737f8d701bbac3e7e23d831deec3457"
+ version "5.2.4"
+ resolved "https://registry.yarnpkg.com/@angular/http/-/http-5.2.4.tgz#da2764875196c3a2c8412457714057e56a6545e2"
dependencies:
tslib "^1.7.1"
"@angular/language-service@^5.1.0":
- version "5.2.2"
- resolved "https://registry.yarnpkg.com/@angular/language-service/-/language-service-5.2.2.tgz#2829214885096c4168566a9f74364a8fed641a49"
+ version "5.2.4"
+ resolved "https://registry.yarnpkg.com/@angular/language-service/-/language-service-5.2.4.tgz#281631793671844ae8f6f9c0ec80b91d064db2d8"
"@angular/platform-browser-dynamic@~5.2.2":
- version "5.2.2"
- resolved "https://registry.yarnpkg.com/@angular/platform-browser-dynamic/-/platform-browser-dynamic-5.2.2.tgz#2ddd7fa28bb34ae9e181e6f286dfe4c96bde95a6"
+ version "5.2.4"
+ resolved "https://registry.yarnpkg.com/@angular/platform-browser-dynamic/-/platform-browser-dynamic-5.2.4.tgz#708457c9aafb1b812187c95d10365685521314d4"
dependencies:
tslib "^1.7.1"
"@angular/platform-browser@~5.2.2":
- version "5.2.2"
- resolved "https://registry.yarnpkg.com/@angular/platform-browser/-/platform-browser-5.2.2.tgz#3eedcbbcc8c0e6c91eba7ed2b32de7c6679d9b62"
+ version "5.2.4"
+ resolved "https://registry.yarnpkg.com/@angular/platform-browser/-/platform-browser-5.2.4.tgz#dcb2dc6083774dcf2e17c9e9d0653d87057bf732"
dependencies:
tslib "^1.7.1"
"@angular/router@~5.2.2":
- version "5.2.2"
- resolved "https://registry.yarnpkg.com/@angular/router/-/router-5.2.2.tgz#b0ffd7121290e8c01f20862b4a2638ebcebc61cf"
+ version "5.2.4"
+ resolved "https://registry.yarnpkg.com/@angular/router/-/router-5.2.4.tgz#21b81958aaf8335454a55ba28ea37166edbcb042"
dependencies:
tslib "^1.7.1"
@@ -172,9 +171,9 @@
version "1.1.0"
resolved "https://registry.yarnpkg.com/@ngtools/json-schema/-/json-schema-1.1.0.tgz#c3a0c544d62392acc2813a42c8a0dc6f58f86922"
-"@ngtools/webpack@1.9.6":
- version "1.9.6"
- resolved "https://registry.yarnpkg.com/@ngtools/webpack/-/webpack-1.9.6.tgz#102c60ee4b8a84a26ddc1e2b334f327e91821a4d"
+"@ngtools/webpack@1.9.7":
+ version "1.9.7"
+ resolved "https://registry.yarnpkg.com/@ngtools/webpack/-/webpack-1.9.7.tgz#ef15b90142ddf2a2c9072fe3d58c6bf500163fe5"
dependencies:
chalk "~2.2.0"
enhanced-resolve "^3.1.0"
@@ -185,17 +184,17 @@
tree-kill "^1.0.0"
webpack-sources "^1.1.0"
-"@ngx-loading-bar/core@1.1.0":
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/@ngx-loading-bar/core/-/core-1.1.0.tgz#1a3b8df4ae8345192a5d9cc362268e4dbf46e686"
+"@ngx-loading-bar/core@1.1.1":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@ngx-loading-bar/core/-/core-1.1.1.tgz#bcfc8e968f121ca431b4926dfd3465739f7076cd"
dependencies:
tslib "^1.7.1"
"@ngx-loading-bar/http-client@^1.0.0-rc.1":
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/@ngx-loading-bar/http-client/-/http-client-1.1.0.tgz#362f14027a92a407a247abd0236c62f0136652ea"
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@ngx-loading-bar/http-client/-/http-client-1.1.1.tgz#22d4b3b674425087e2c764c4cba110d74593f498"
dependencies:
- "@ngx-loading-bar/core" "1.1.0"
+ "@ngx-loading-bar/core" "1.1.1"
tslib "^1.7.1"
"@ngx-meta/core@^5.0.0":
@@ -204,7 +203,7 @@
dependencies:
tslib "~1.8.1"
-"@schematics/angular@~0.1.17":
+"@schematics/angular@0.1.17":
version "0.1.17"
resolved "https://registry.yarnpkg.com/@schematics/angular/-/angular-0.1.17.tgz#084a7cbe2de6f94a856bd08d95c9d35ef8905e2b"
dependencies:
@@ -227,8 +226,8 @@
"@types/lodash" "*"
"@types/lodash@*":
- version "4.14.98"
- resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.98.tgz#aaf012ae443e657e7885e605a4c1b340db160609"
+ version "4.14.102"
+ resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.102.tgz#586a3e22385fc79b07cef9c5a1c8a5387986fbc8"
"@types/magnet-uri@*":
version "5.1.1"
@@ -241,8 +240,8 @@
resolved "https://registry.yarnpkg.com/@types/markdown-it/-/markdown-it-0.0.4.tgz#c5f67365916044b342dae8d702724788ba0b5b74"
"@types/node@*", "@types/node@^9.3.0":
- version "9.4.0"
- resolved "https://registry.yarnpkg.com/@types/node/-/node-9.4.0.tgz#b85a0bcf1e1cc84eb4901b7e96966aedc6f078d1"
+ version "9.4.2"
+ resolved "https://registry.yarnpkg.com/@types/node/-/node-9.4.2.tgz#b109a6c4f64147ccf9476d9e1a6fbf69a10faeb8"
"@types/parse-torrent-file@*":
version "4.0.1"
@@ -251,8 +250,8 @@
"@types/node" "*"
"@types/parse-torrent@*":
- version "5.8.1"
- resolved "https://registry.yarnpkg.com/@types/parse-torrent/-/parse-torrent-5.8.1.tgz#012fe6f50d12ed23d86f10ea831a4f0e1b0aacb6"
+ version "5.8.2"
+ resolved "https://registry.yarnpkg.com/@types/parse-torrent/-/parse-torrent-5.8.2.tgz#53ab880e38ced2005a79948f0df0c8762539323e"
dependencies:
"@types/magnet-uri" "*"
"@types/node" "*"
@@ -312,9 +311,9 @@ acorn@^4.0.3:
version "4.0.13"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.13.tgz#105495ae5361d697bd195c825192e1ad7f253787"
-acorn@^5.0.0, acorn@^5.1.1, acorn@^5.2.1:
- version "5.3.0"
- resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.3.0.tgz#7446d39459c54fb49a80e6ee6478149b940ec822"
+acorn@^5.0.0, acorn@^5.3.0, acorn@^5.4.0:
+ version "5.4.1"
+ resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.4.1.tgz#fdc58d9d17f4a4e98d102ded826a9b9759125102"
addr-to-ip-port@^1.0.1, addr-to-ip-port@^1.4.2:
version "1.4.2"
@@ -553,7 +552,7 @@ async@^1.5.2:
version "1.5.2"
resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a"
-async@^2.1.2, async@^2.1.4, async@^2.1.5, async@^2.4.1, async@^2.5.0:
+async@^2.1.2, async@^2.1.4, async@^2.1.5, async@^2.4.1:
version "2.6.0"
resolved "https://registry.yarnpkg.com/async/-/async-2.6.0.tgz#61a29abb6fcc026fea77e56d1c6ec53a795951f4"
dependencies:
@@ -627,8 +626,8 @@ babel-code-frame@^6.16.0, babel-code-frame@^6.22.0, babel-code-frame@^6.26.0:
js-tokens "^3.0.2"
babel-generator@^6.18.0:
- version "6.26.0"
- resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.0.tgz#ac1ae20070b79f6e3ca1d3269613053774f20dc5"
+ version "6.26.1"
+ resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90"
dependencies:
babel-messages "^6.23.0"
babel-runtime "^6.26.0"
@@ -636,7 +635,7 @@ babel-generator@^6.18.0:
detect-indent "^4.0.0"
jsesc "^1.3.0"
lodash "^4.17.4"
- source-map "^0.5.6"
+ source-map "^0.5.7"
trim-right "^1.0.1"
babel-messages@^6.23.0:
@@ -729,6 +728,14 @@ bencode@^1.0.0:
dependencies:
safe-buffer "^5.1.1"
+bfj-node4@^5.2.0:
+ version "5.2.0"
+ resolved "https://registry.yarnpkg.com/bfj-node4/-/bfj-node4-5.2.0.tgz#bd08350353f81d808d6a8352a15f5d9fb74ddec6"
+ dependencies:
+ bluebird "^3.5.1"
+ check-types "^7.3.0"
+ tryer "^1.0.0"
+
big.js@^3.1.3:
version "3.2.0"
resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz#a5fc298b81b9e0dca2e458824784b65c52ba588e"
@@ -784,8 +791,8 @@ bittorrent-protocol@^2.1.5:
xtend "^4.0.0"
bittorrent-tracker@^9.0.0:
- version "9.2.4"
- resolved "https://registry.yarnpkg.com/bittorrent-tracker/-/bittorrent-tracker-9.2.4.tgz#737d585e8a6d7f3c5f8786a0855d51abae97d27b"
+ version "9.3.0"
+ resolved "https://registry.yarnpkg.com/bittorrent-tracker/-/bittorrent-tracker-9.3.0.tgz#356915265de4202e54069947e884f10e1942c6d3"
dependencies:
bencode "^1.0.0"
bittorrent-peerid "^1.0.2"
@@ -803,12 +810,12 @@ bittorrent-tracker@^9.0.0:
run-series "^1.0.2"
safe-buffer "^5.0.0"
simple-get "^2.0.0"
- simple-peer "^8.0.0"
- simple-websocket "^5.0.0"
+ simple-peer "^8.3.0"
+ simple-websocket "^6.0.0"
string2compact "^1.1.1"
uniq "^1.0.1"
unordered-array-remove "^1.0.2"
- ws "^3.3.1"
+ ws "^4.0.0"
xtend "^4.0.0"
optionalDependencies:
bufferutil "^3.0.0"
@@ -837,7 +844,7 @@ block-stream@*:
dependencies:
inherits "~2.0.0"
-bluebird@^3.4.7, bluebird@^3.5.0:
+bluebird@^3.4.7, bluebird@^3.5.0, bluebird@^3.5.1:
version "3.5.1"
resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9"
@@ -1128,12 +1135,12 @@ caniuse-api@^1.5.2:
lodash.uniq "^4.5.0"
caniuse-db@^1.0.30000529, caniuse-db@^1.0.30000634, caniuse-db@^1.0.30000639:
- version "1.0.30000800"
- resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000800.tgz#a86e6bc23bd9a707d5df42f33e64d0495cfda218"
+ version "1.0.30000804"
+ resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000804.tgz#84feb42018fc64cf6aff6371e43115f292c00179"
caniuse-lite@^1.0.30000791, caniuse-lite@^1.0.30000792:
- version "1.0.30000792"
- resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000792.tgz#d0cea981f8118f3961471afbb43c9a1e5bbf0332"
+ version "1.0.30000804"
+ resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000804.tgz#8729a143d65378e8936adbb161f550e9c49fc09d"
caseless@~0.11.0:
version "0.11.0"
@@ -1176,6 +1183,10 @@ chalk@~2.2.0:
escape-string-regexp "^1.0.5"
supports-color "^4.0.0"
+check-types@^7.3.0:
+ version "7.3.0"
+ resolved "https://registry.yarnpkg.com/check-types/-/check-types-7.3.0.tgz#468f571a4435c24248f5fd0cb0e8d87c3c341e7d"
+
chokidar@^1.4.2, chokidar@^1.7.0:
version "1.7.0"
resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468"
@@ -1381,7 +1392,11 @@ commander@2.12.x:
version "2.12.2"
resolved "https://registry.yarnpkg.com/commander/-/commander-2.12.2.tgz#0f5946c427ed9ec0d91a46bb9def53e54650e555"
-commander@^2.12.1, commander@^2.9.0, commander@~2.13.0:
+commander@^2.12.1, commander@^2.13.0, commander@^2.9.0:
+ version "2.14.1"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-2.14.1.tgz#2235123e37af8ca3c65df45b026dbd357b01b9aa"
+
+commander@~2.13.0:
version "2.13.0"
resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c"
@@ -1496,9 +1511,9 @@ copy-descriptor@^0.1.0:
version "0.1.1"
resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d"
-copy-webpack-plugin@^4.1.1:
- version "4.3.1"
- resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-4.3.1.tgz#19ba6370bf6f8e263cbd66185a2b79f2321a9302"
+copy-webpack-plugin@4.3.0, copy-webpack-plugin@^4.1.1:
+ version "4.3.0"
+ resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-4.3.0.tgz#cfdf4d131c78d66917a1bb863f86630497aacf42"
dependencies:
cacache "^10.0.1"
find-cache-dir "^1.0.0"
@@ -2022,8 +2037,8 @@ domutils@1.5.1:
domelementtype "1"
domutils@^1.5.1:
- version "1.6.2"
- resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.6.2.tgz#1958cc0b4c9426e9ed367fb1c8e854891b0fa3ff"
+ version "1.7.0"
+ resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a"
dependencies:
dom-serializer "0"
domelementtype "1"
@@ -2051,13 +2066,13 @@ ee-first@1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
-ejs@^2.5.6, ejs@^2.5.7:
+ejs@^2.5.7:
version "2.5.7"
resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.5.7.tgz#cc872c168880ae3c7189762fd5ffc00896c9518a"
electron-to-chromium@^1.2.7, electron-to-chromium@^1.3.30:
- version "1.3.31"
- resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.31.tgz#00d832cba9fe2358652b0c48a8816c8e3a037e9f"
+ version "1.3.33"
+ resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.33.tgz#bf00703d62a7c65238136578c352d6c5c042a545"
elliptic@^6.0.0:
version "6.4.0"
@@ -2321,10 +2336,10 @@ eslint@~3.19.0:
user-home "^2.0.0"
espree@^3.4.0:
- version "3.5.2"
- resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.2.tgz#756ada8b979e9dcfcdb30aad8d1a9304a905e1ca"
+ version "3.5.3"
+ resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.3.tgz#931e0af64e7fbbed26b050a29daad1fc64799fa6"
dependencies:
- acorn "^5.2.1"
+ acorn "^5.4.0"
acorn-jsx "^3.0.0"
esprima@^2.6.0:
@@ -2443,7 +2458,7 @@ exports-loader@^0.6.3:
loader-utils "^1.0.2"
source-map "0.5.x"
-express@^4.15.2, express@^4.16.2:
+express@^4.16.2:
version "4.16.2"
resolved "https://registry.yarnpkg.com/express/-/express-4.16.2.tgz#e35c6dfe2d64b7dca0a5cd4f21781be3299e076c"
dependencies:
@@ -2584,9 +2599,9 @@ filename-regex@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26"
-filesize@^3.5.9:
- version "3.5.11"
- resolved "https://registry.yarnpkg.com/filesize/-/filesize-3.5.11.tgz#1919326749433bb3cf77368bd158caabcc19e9ee"
+filesize@^3.5.11:
+ version "3.6.0"
+ resolved "https://registry.yarnpkg.com/filesize/-/filesize-3.6.0.tgz#22d079615624bb6fd3c04026120628a41b3f4efa"
filestream@^4.0.0:
version "4.1.3"
@@ -2981,11 +2996,12 @@ graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6:
version "4.1.11"
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658"
-gzip-size@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-3.0.0.tgz#546188e9bdc337f673772f81660464b389dce520"
+gzip-size@^4.1.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-4.1.0.tgz#8ae096257eabe7d69c45be2b67c448124ffb517c"
dependencies:
duplexer "^0.1.1"
+ pify "^3.0.0"
handle-thing@^1.2.5:
version "1.2.5"
@@ -3214,8 +3230,8 @@ http-errors@1.6.2, http-errors@~1.6.2:
statuses ">= 1.3.1 < 2"
http-parser-js@>=0.4.0:
- version "0.4.9"
- resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.4.9.tgz#ea1a04fb64adff0242e9974f297dd4c3cad271e1"
+ version "0.4.10"
+ resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.4.10.tgz#92c9c1374c35085f75db359ec56cc257cbb93fa4"
http-proxy-middleware@~0.17.4:
version "0.17.4"
@@ -3392,8 +3408,8 @@ ipaddr.js@1.5.2:
resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.5.2.tgz#d4b505bde9946987ccf0fc58d9010ff9607e3fa0"
"ipaddr.js@>= 0.1.5", ipaddr.js@^1.0.1:
- version "1.5.4"
- resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.5.4.tgz#962263d9d26132956fc5c630b638a30d3cdffc14"
+ version "1.6.0"
+ resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.6.0.tgz#e3fa357b773da619f26e95f049d055c72796f86b"
is-absolute-url@^2.0.0:
version "2.1.0"
@@ -3968,7 +3984,7 @@ loader-utils@1.1.0, loader-utils@^1.0.0, loader-utils@^1.0.1, loader-utils@^1.0.
emojis-list "^2.0.0"
json5 "^0.5.0"
-loader-utils@^0.2.15, loader-utils@^0.2.16, loader-utils@~0.2.2:
+loader-utils@^0.2.15, loader-utils@^0.2.16:
version "0.2.17"
resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348"
dependencies:
@@ -3985,8 +4001,8 @@ locate-path@^2.0.0:
path-exists "^3.0.0"
lodash-es@^4.17.4:
- version "4.17.4"
- resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.4.tgz#dcc1d7552e150a0640073ba9cb31d70f032950e7"
+ version "4.17.5"
+ resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.5.tgz#9fc6e737b1c4d151d8f9cae2247305d552ce748f"
lodash._baseassign@^3.0.0:
version "3.2.0"
@@ -4079,8 +4095,8 @@ lodash.memoize@^4.1.2:
resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe"
lodash.mergewith@^4.6.0:
- version "4.6.0"
- resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.0.tgz#150cf0a16791f5903b8891eab154609274bdea55"
+ version "4.6.1"
+ resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz#639057e726c3afbdb3e7d42741caa8d6e4335927"
lodash.restparam@^3.0.0:
version "3.6.1"
@@ -4095,8 +4111,8 @@ lodash.uniq@^4.5.0:
resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
lodash@^4.0.0, lodash@^4.11.1, lodash@^4.14.0, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.3.0, lodash@~4.17.4:
- version "4.17.4"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae"
+ version "4.17.5"
+ resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.5.tgz#99a92d65c0272debe8c96b6057bc8fbfa3bed511"
loglevel@^1.4.1:
version "1.6.1"
@@ -4322,8 +4338,8 @@ mime@^2.2.0:
resolved "https://registry.yarnpkg.com/mime/-/mime-2.2.0.tgz#161e541965551d3b549fa1114391e3a3d55b923b"
mimic-fn@^1.0.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18"
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022"
mimic-response@^1.0.0:
version "1.0.0"
@@ -4373,8 +4389,8 @@ mississippi@^1.3.0:
through2 "^2.0.0"
mixin-deep@^1.2.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.0.tgz#47a8732ba97799457c8c1eca28f95132d7e8150a"
+ version "1.3.1"
+ resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.1.tgz#a49e7268dce1a0d9698e45326c5626df3543d0fe"
dependencies:
for-in "^1.0.2"
is-extendable "^1.0.1"
@@ -5204,13 +5220,13 @@ postcss-load-plugins@^2.3.0:
object-assign "^4.1.0"
postcss-loader@^2.0.10:
- version "2.0.10"
- resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-2.0.10.tgz#090db0540140bd56a7a7f717c41bc29aeef4c674"
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-2.1.0.tgz#038c2d6d59753fef4667827fd3ae03f5dc5e6a7a"
dependencies:
loader-utils "^1.1.0"
postcss "^6.0.0"
postcss-load-config "^1.2.0"
- schema-utils "^0.3.0"
+ schema-utils "^0.4.0"
postcss-merge-idents@^2.1.5:
version "2.1.7"
@@ -5400,8 +5416,8 @@ postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0
supports-color "^3.2.3"
postcss@^6.0.0, postcss@^6.0.1, postcss@^6.0.14, postcss@^6.0.16:
- version "6.0.16"
- resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.16.tgz#112e2fe2a6d2109be0957687243170ea5589e146"
+ version "6.0.17"
+ resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.17.tgz#e259a051ca513f81e9afd0c21f7f82eda50c65c5"
dependencies:
chalk "^2.3.0"
source-map "^0.6.1"
@@ -5446,8 +5462,8 @@ pretty-error@^2.0.2:
utila "~0.4"
primeng@^5.0.2:
- version "5.0.2"
- resolved "https://registry.yarnpkg.com/primeng/-/primeng-5.0.2.tgz#05c4a4502efd4c3bc5d506aa01ae8eb30f9764db"
+ version "5.2.0"
+ resolved "https://registry.yarnpkg.com/primeng/-/primeng-5.2.0.tgz#f74c062f1c4eeaebf5b724b92395d71fe6954e19"
process-nextick-args@~1.0.6:
version "1.0.7"
@@ -6128,7 +6144,7 @@ schema-utils@^0.3.0:
dependencies:
ajv "^5.0.0"
-schema-utils@^0.4.2:
+schema-utils@^0.4.0, schema-utils@^0.4.2:
version "0.4.3"
resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.3.tgz#e2a594d3395834d5e15da22b48be13517859458e"
dependencies:
@@ -6317,7 +6333,7 @@ simple-get@^2.0.0, simple-get@^2.2.1:
once "^1.3.1"
simple-concat "^1.0.0"
-simple-peer@^8.0.0:
+simple-peer@^8.0.0, simple-peer@^8.3.0:
version "8.3.0"
resolved "https://registry.yarnpkg.com/simple-peer/-/simple-peer-8.3.0.tgz#b0820dbdddbf89257de34071fe9f0bafa5bea44f"
dependencies:
@@ -6333,16 +6349,16 @@ simple-sha1@^2.0.0, simple-sha1@^2.0.8, simple-sha1@^2.1.0:
dependencies:
rusha "^0.8.1"
-simple-websocket@^5.0.0:
- version "5.1.1"
- resolved "https://registry.yarnpkg.com/simple-websocket/-/simple-websocket-5.1.1.tgz#ad46492f95b80405b95dfe2a43d4586e8a571646"
+simple-websocket@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/simple-websocket/-/simple-websocket-6.0.0.tgz#68db98e2bb7aa939428a31b02f9b6cab26f8ec81"
dependencies:
debug "^3.1.0"
inherits "^2.0.1"
randombytes "^2.0.3"
readable-stream "^2.0.5"
safe-buffer "^5.0.1"
- ws "^3.3.1"
+ ws "^4.0.0"
slash@^1.0.0:
version "1.0.0"
@@ -6423,14 +6439,6 @@ source-list-map@~0.1.7:
version "0.1.8"
resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-0.1.8.tgz#c550b2ab5427f6b3f21f5afead88c4f5587b2106"
-source-map-loader@^0.2.0:
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/source-map-loader/-/source-map-loader-0.2.3.tgz#d4b0c8cd47d54edce3e6bfa0f523f452b5b0e521"
- dependencies:
- async "^2.5.0"
- loader-utils "~0.2.2"
- source-map "~0.6.1"
-
source-map-resolve@^0.3.0:
version "0.3.1"
resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.3.1.tgz#610f6122a445b8dd51535a2a71b783dfc1248761"
@@ -6470,7 +6478,7 @@ source-map@0.1.x, source-map@^0.1.38:
dependencies:
amdefine ">=0.0.4"
-source-map@0.5.x, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1, source-map@~0.5.3:
+source-map@0.5.x, source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7, source-map@~0.5.1, source-map@~0.5.3:
version "0.5.7"
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
@@ -6567,10 +6575,10 @@ sshpk@^1.7.0:
tweetnacl "~0.14.0"
ssri@^5.0.0:
- version "5.1.0"
- resolved "https://registry.yarnpkg.com/ssri/-/ssri-5.1.0.tgz#2cbf1df36b74d0fc91fcf89640a4b3e1d10b1899"
+ version "5.2.1"
+ resolved "https://registry.yarnpkg.com/ssri/-/ssri-5.2.1.tgz#8b6eb873688759bd3c75a88dee74593d179bb73c"
dependencies:
- safe-buffer "^5.1.0"
+ safe-buffer "^5.1.1"
standard-engine@~7.0.0:
version "7.0.0"
@@ -6964,6 +6972,10 @@ trim@0.0.1:
dependencies:
glob "^6.0.4"
+tryer@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/tryer/-/tryer-1.0.0.tgz#027b69fa823225e551cace3ef03b11f6ab37c1d7"
+
tsickle@^0.26.0:
version "0.26.0"
resolved "https://registry.yarnpkg.com/tsickle/-/tsickle-0.26.0.tgz#40b30a2dd6abcb33b182e37596674bd1cfe4039c"
@@ -7021,8 +7033,8 @@ tsutils@^1.4.0:
resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-1.9.1.tgz#b9f9ab44e55af9681831d5f28d0aeeaf5c750cb0"
tsutils@^2.12.1:
- version "2.19.1"
- resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-2.19.1.tgz#76d7ebdea9d7a7bf4a05f50ead3701b0168708d7"
+ version "2.21.0"
+ resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-2.21.0.tgz#43466a2283a0abce64e2209bc732ad72f8a04fab"
dependencies:
tslib "^1.8.1"
@@ -7067,7 +7079,7 @@ typedarray@^0.0.6:
version "0.0.6"
resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
-typescript@^2.6.2, typescript@~2.6.2:
+typescript@2.6, typescript@~2.6.2:
version "2.6.2"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.6.2.tgz#3c5b6fd7f6de0914269027f03c0946758f7673a4"
@@ -7413,16 +7425,17 @@ wbuf@^1.1.0, wbuf@^1.7.2:
minimalistic-assert "^1.0.0"
webpack-bundle-analyzer@^2.9.1:
- version "2.9.2"
- resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-2.9.2.tgz#63ed86eb71cc4cda86f68e685a84530ba0126449"
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-2.10.0.tgz#d0646cda342939f6f05eb632a090abbd90317446"
dependencies:
- acorn "^5.1.1"
- chalk "^1.1.3"
- commander "^2.9.0"
- ejs "^2.5.6"
- express "^4.15.2"
- filesize "^3.5.9"
- gzip-size "^3.0.0"
+ acorn "^5.3.0"
+ bfj-node4 "^5.2.0"
+ chalk "^2.3.0"
+ commander "^2.13.0"
+ ejs "^2.5.7"
+ express "^4.16.2"
+ filesize "^3.5.11"
+ gzip-size "^4.1.0"
lodash "^4.17.4"
mkdirp "^0.5.1"
opener "^1.4.3"
@@ -7652,14 +7665,6 @@ write@^0.2.1:
dependencies:
mkdirp "^0.5.1"
-ws@^3.3.1:
- version "3.3.3"
- resolved "https://registry.yarnpkg.com/ws/-/ws-3.3.3.tgz#f1cf84fe2d5e901ebce94efaece785f187a228f2"
- dependencies:
- async-limiter "~1.0.0"
- safe-buffer "~5.1.0"
- ultron "~1.1.0"
-
ws@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/ws/-/ws-4.0.0.tgz#bfe1da4c08eeb9780b986e0e4d10eccd7345999f"
diff --git a/server/controllers/client.ts b/server/controllers/client.ts
index 28b42911a..f07e421b4 100644
--- a/server/controllers/client.ts
+++ b/server/controllers/client.ts
@@ -11,7 +11,7 @@ const clientsRouter = express.Router()
const distPath = join(root(), 'client', 'dist')
const assetsImagesPath = join(root(), 'client', 'dist', 'client', 'assets', 'images')
-const manifestPath = join(root(), 'client', 'dist', 'client', 'manifest.json')
+const manifestPath = join(root(), 'client', 'dist', 'manifest.json')
const embedPath = join(distPath, 'standalone', 'videos', 'embed.html')
const indexPath = join(distPath, 'index.html')
@@ -26,8 +26,8 @@ clientsRouter.use('/videos/embed', (req: express.Request, res: express.Response,
})
// Static HTML/CSS/JS client files
+clientsRouter.use('/manifest.json', express.static(manifestPath, { maxAge: STATIC_MAX_AGE }))
clientsRouter.use('/client', express.static(distPath, { maxAge: STATIC_MAX_AGE }))
-clientsRouter.use('/client/manifest.json', express.static(manifestPath, { maxAge: STATIC_MAX_AGE }))
clientsRouter.use('/client/assets/images', express.static(assetsImagesPath, { maxAge: STATIC_MAX_AGE }))
// 404 for static files not found