* bit of tidying up

* bbc back to old m3u8
* updated EuroNews link
This commit is contained in:
Martin Donnelly 2020-06-10 12:36:24 +01:00
parent 821f8d0ddd
commit 1c51c2165c
12 changed files with 406 additions and 306 deletions

13
.editorconfig Normal file
View File

@ -0,0 +1,13 @@
root = true
[*]
end_of_line = lf
insert_final_newline = true
indent_style = space
indent_size = 2
charset = utf-8
trim_trailing_whitespace = true
[{package.json,.travis.yml,.eslintrc.json}]
indent_style = space
indent_size = 2

331
package-lock.json generated
View File

@ -10,27 +10,27 @@
"integrity": "sha512-UQFQ6SgyJ6LX42W8rHCs8KVc0JS0tzVL9ct4XYedJukskYVWTo49tNiMEK9C2HTyarbNiT/RVIRSY82vH+6sTg==" "integrity": "sha512-UQFQ6SgyJ6LX42W8rHCs8KVc0JS0tzVL9ct4XYedJukskYVWTo49tNiMEK9C2HTyarbNiT/RVIRSY82vH+6sTg=="
}, },
"@babel/code-frame": { "@babel/code-frame": {
"version": "7.8.3", "version": "7.10.1",
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.1.tgz",
"integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", "integrity": "sha512-IGhtTmpjGbYzcEDOw7DcQtbQSXcG9ftmAXtWTu9V936vDye4xjjekktFAtgZsWpzTj/X01jocB46mTywm/4SZw==",
"dev": true, "dev": true,
"requires": { "requires": {
"@babel/highlight": "^7.8.3" "@babel/highlight": "^7.10.1"
} }
}, },
"@babel/helper-validator-identifier": { "@babel/helper-validator-identifier": {
"version": "7.9.5", "version": "7.10.1",
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.1.tgz",
"integrity": "sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g==", "integrity": "sha512-5vW/JXLALhczRCWP0PnFDMCJAchlBvM7f4uk/jXritBnIa6E1KmqmtrS3yn1LAnxFBypQ3eneLuXjsnfQsgILw==",
"dev": true "dev": true
}, },
"@babel/highlight": { "@babel/highlight": {
"version": "7.9.0", "version": "7.10.1",
"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.1.tgz",
"integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", "integrity": "sha512-8rMof+gVP8mxYZApLF/JgNDAkdKa+aJt3ZYxF8z6+j/hpeXL7iMsKCPHa2jNMHu/qqBwzQF4OHNoYi8dMA/rYg==",
"dev": true, "dev": true,
"requires": { "requires": {
"@babel/helper-validator-identifier": "^7.9.0", "@babel/helper-validator-identifier": "^7.10.1",
"chalk": "^2.0.0", "chalk": "^2.0.0",
"js-tokens": "^4.0.0" "js-tokens": "^4.0.0"
} }
@ -49,9 +49,9 @@
"integrity": "sha512-oZLYFEAzUKyi3SKnXvj32ZCEGH6RDnao7COuCVhDydMS9NrCSVXhM79VaKyP5+Zc33m0QXEd2DN3UkU7OsHcfw==" "integrity": "sha512-oZLYFEAzUKyi3SKnXvj32ZCEGH6RDnao7COuCVhDydMS9NrCSVXhM79VaKyP5+Zc33m0QXEd2DN3UkU7OsHcfw=="
}, },
"@rollup/plugin-commonjs": { "@rollup/plugin-commonjs": {
"version": "11.1.0", "version": "12.0.0",
"resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-11.1.0.tgz", "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-12.0.0.tgz",
"integrity": "sha512-Ycr12N3ZPN96Fw2STurD21jMqzKwL9QuFhms3SD7KKRK7oaXUsBU9Zt0jL/rOPHiPYisI21/rXGO3jr9BnLHUA==", "integrity": "sha512-8+mDQt1QUmN+4Y9D3yCG8AJNewuTSLYPJVzKKUZ+lGeQrI+bV12Tc5HCyt2WdlnG6ihIL/DPbKRJlB40DX40mw==",
"dev": true, "dev": true,
"requires": { "requires": {
"@rollup/pluginutils": "^3.0.8", "@rollup/pluginutils": "^3.0.8",
@ -72,14 +72,16 @@
} }
}, },
"@rollup/plugin-node-resolve": { "@rollup/plugin-node-resolve": {
"version": "7.1.3", "version": "8.0.0",
"resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-7.1.3.tgz", "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-8.0.0.tgz",
"integrity": "sha512-RxtSL3XmdTAE2byxekYLnx+98kEUOrPHF/KRVjLH+DEIHy6kjIw7YINQzn+NXiH/NTrQLAwYs0GWB+csWygA9Q==", "integrity": "sha512-5poJCChrkVggXXND/sQ7yNqwjUNT4fP31gpRWCnSNnlXuUXTCMHT33xZrTGxgjm5Rl18MHj7iEzlCT8rYWwQSA==",
"dev": true, "dev": true,
"requires": { "requires": {
"@rollup/pluginutils": "^3.0.8", "@rollup/pluginutils": "^3.0.8",
"@types/resolve": "0.0.8", "@types/resolve": "0.0.8",
"builtin-modules": "^3.1.0", "builtin-modules": "^3.1.0",
"deep-freeze": "^0.0.1",
"deepmerge": "^4.2.2",
"is-module": "^1.0.0", "is-module": "^1.0.0",
"resolve": "^1.14.2" "resolve": "^1.14.2"
} }
@ -926,23 +928,24 @@
} }
}, },
"cross-spawn": { "cross-spawn": {
"version": "6.0.5", "version": "7.0.3",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
"integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
"dev": true, "dev": true,
"requires": { "requires": {
"nice-try": "^1.0.4", "path-key": "^3.1.0",
"path-key": "^2.0.1", "shebang-command": "^2.0.0",
"semver": "^5.5.0", "which": "^2.0.1"
"shebang-command": "^1.2.0",
"which": "^1.2.9"
}, },
"dependencies": { "dependencies": {
"semver": { "which": {
"version": "5.7.1", "version": "2.0.2",
"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
"integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
"dev": true "dev": true,
"requires": {
"isexe": "^2.0.0"
}
} }
} }
}, },
@ -995,12 +998,24 @@
"resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
"integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA="
}, },
"deep-freeze": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/deep-freeze/-/deep-freeze-0.0.1.tgz",
"integrity": "sha1-OgsABd4YZygZ39OM0x+RF5yJPoQ=",
"dev": true
},
"deep-is": { "deep-is": {
"version": "0.1.3", "version": "0.1.3",
"resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
"integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
"dev": true "dev": true
}, },
"deepmerge": {
"version": "4.2.2",
"resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz",
"integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==",
"dev": true
},
"deferred-leveldown": { "deferred-leveldown": {
"version": "0.2.0", "version": "0.2.0",
"resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-0.2.0.tgz", "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-0.2.0.tgz",
@ -1136,22 +1151,22 @@
"integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ="
}, },
"eslint": { "eslint": {
"version": "6.8.0", "version": "7.1.0",
"resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.1.0.tgz",
"integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", "integrity": "sha512-DfS3b8iHMK5z/YLSme8K5cge168I8j8o1uiVmFCgnnjxZQbCGyraF8bMl7Ju4yfBmCuxD7shOF7eqGkcuIHfsA==",
"dev": true, "dev": true,
"requires": { "requires": {
"@babel/code-frame": "^7.0.0", "@babel/code-frame": "^7.0.0",
"ajv": "^6.10.0", "ajv": "^6.10.0",
"chalk": "^2.1.0", "chalk": "^4.0.0",
"cross-spawn": "^6.0.5", "cross-spawn": "^7.0.2",
"debug": "^4.0.1", "debug": "^4.0.1",
"doctrine": "^3.0.0", "doctrine": "^3.0.0",
"eslint-scope": "^5.0.0", "eslint-scope": "^5.0.0",
"eslint-utils": "^1.4.3", "eslint-utils": "^2.0.0",
"eslint-visitor-keys": "^1.1.0", "eslint-visitor-keys": "^1.1.0",
"espree": "^6.1.2", "espree": "^7.0.0",
"esquery": "^1.0.1", "esquery": "^1.2.0",
"esutils": "^2.0.2", "esutils": "^2.0.2",
"file-entry-cache": "^5.0.1", "file-entry-cache": "^5.0.1",
"functional-red-black-tree": "^1.0.1", "functional-red-black-tree": "^1.0.1",
@ -1164,20 +1179,80 @@
"is-glob": "^4.0.0", "is-glob": "^4.0.0",
"js-yaml": "^3.13.1", "js-yaml": "^3.13.1",
"json-stable-stringify-without-jsonify": "^1.0.1", "json-stable-stringify-without-jsonify": "^1.0.1",
"levn": "^0.3.0", "levn": "^0.4.1",
"lodash": "^4.17.14", "lodash": "^4.17.14",
"minimatch": "^3.0.4", "minimatch": "^3.0.4",
"mkdirp": "^0.5.1",
"natural-compare": "^1.4.0", "natural-compare": "^1.4.0",
"optionator": "^0.8.3", "optionator": "^0.9.1",
"progress": "^2.0.0", "progress": "^2.0.0",
"regexpp": "^2.0.1", "regexpp": "^3.1.0",
"semver": "^6.1.2", "semver": "^7.2.1",
"strip-ansi": "^5.2.0", "strip-ansi": "^6.0.0",
"strip-json-comments": "^3.0.1", "strip-json-comments": "^3.1.0",
"table": "^5.2.3", "table": "^5.2.3",
"text-table": "^0.2.0", "text-table": "^0.2.0",
"v8-compile-cache": "^2.0.3" "v8-compile-cache": "^2.0.3"
},
"dependencies": {
"ansi-styles": {
"version": "4.2.1",
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz",
"integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==",
"dev": true,
"requires": {
"@types/color-name": "^1.1.1",
"color-convert": "^2.0.1"
}
},
"chalk": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.0.0.tgz",
"integrity": "sha512-N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A==",
"dev": true,
"requires": {
"ansi-styles": "^4.1.0",
"supports-color": "^7.1.0"
}
},
"color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
"dev": true,
"requires": {
"color-name": "~1.1.4"
}
},
"color-name": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true
},
"has-flag": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
"dev": true
},
"strip-ansi": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
"integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
"dev": true,
"requires": {
"ansi-regex": "^5.0.0"
}
},
"supports-color": {
"version": "7.1.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz",
"integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==",
"dev": true,
"requires": {
"has-flag": "^4.0.0"
}
}
} }
}, },
"eslint-plugin-svelte3": { "eslint-plugin-svelte3": {
@ -1197,9 +1272,9 @@
} }
}, },
"eslint-utils": { "eslint-utils": {
"version": "1.4.3", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.0.0.tgz",
"integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", "integrity": "sha512-0HCPuJv+7Wv1bACm8y5/ECVfYdfsAm9xmVb7saeFlxjPYALefjhbYoCkBjPdPzGH8wWyTpAez82Fh3VKYEZ8OA==",
"dev": true, "dev": true,
"requires": { "requires": {
"eslint-visitor-keys": "^1.1.0" "eslint-visitor-keys": "^1.1.0"
@ -1212,9 +1287,9 @@
"dev": true "dev": true
}, },
"espree": { "espree": {
"version": "6.2.1", "version": "7.0.0",
"resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", "resolved": "https://registry.npmjs.org/espree/-/espree-7.0.0.tgz",
"integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", "integrity": "sha512-/r2XEx5Mw4pgKdyb7GNLQNsu++asx/dltf/CI8RFi9oGHxmQFgvLbc5Op4U6i8Oaj+kdslhJtVlEZeAqH5qOTw==",
"dev": true, "dev": true,
"requires": { "requires": {
"acorn": "^7.1.1", "acorn": "^7.1.1",
@ -1923,12 +1998,20 @@
"dev": true "dev": true
}, },
"is-reference": { "is-reference": {
"version": "1.1.4", "version": "1.2.0",
"resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.1.4.tgz", "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.0.tgz",
"integrity": "sha512-uJA/CDPO3Tao3GTrxYn6AwkM4nUPJiGGYu5+cB8qbC7WGFlrKZbiRo7SFKxUAEpFUfiHofWCXBUNhvYJMh+6zw==", "integrity": "sha512-ZVxq+5TkOx6GQdnoMm2aRdCKADdcrOWXLGzGT+vIA8DMpqEJaRk5AL1bS80zJ2bjHunVmjdzfCt0e4BymIEqKQ==",
"dev": true, "dev": true,
"requires": { "requires": {
"@types/estree": "0.0.39" "@types/estree": "0.0.44"
},
"dependencies": {
"@types/estree": {
"version": "0.0.44",
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.44.tgz",
"integrity": "sha512-iaIVzr+w2ZJ5HkidlZ3EJM8VTZb2MJLCjw3V+505yVts0gRC4UMvjw0d1HPtGqI/HQC/KdsYtayfzl+AXY2R8g==",
"dev": true
}
} }
}, },
"is-typedarray": { "is-typedarray": {
@ -1963,22 +2046,28 @@
"integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo="
}, },
"jest-worker": { "jest-worker": {
"version": "24.9.0", "version": "26.0.0",
"resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-24.9.0.tgz", "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.0.0.tgz",
"integrity": "sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==", "integrity": "sha512-pPaYa2+JnwmiZjK9x7p9BoZht+47ecFCDFA/CJxspHzeDvQcfVBLWzCiWyo+EGrSiQMWZtCFo9iSvMZnAAo8vw==",
"dev": true, "dev": true,
"requires": { "requires": {
"merge-stream": "^2.0.0", "merge-stream": "^2.0.0",
"supports-color": "^6.1.0" "supports-color": "^7.0.0"
}, },
"dependencies": { "dependencies": {
"has-flag": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
"dev": true
},
"supports-color": { "supports-color": {
"version": "6.1.0", "version": "7.1.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz",
"integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==",
"dev": true, "dev": true,
"requires": { "requires": {
"has-flag": "^3.0.0" "has-flag": "^4.0.0"
} }
} }
} }
@ -2253,13 +2342,13 @@
} }
}, },
"levn": { "levn": {
"version": "0.3.0", "version": "0.4.1",
"resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
"integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
"dev": true, "dev": true,
"requires": { "requires": {
"prelude-ls": "~1.1.2", "prelude-ls": "^1.2.1",
"type-check": "~0.3.2" "type-check": "~0.4.0"
} }
}, },
"livereload": { "livereload": {
@ -2543,12 +2632,6 @@
"resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz",
"integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw=="
}, },
"nice-try": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
"integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
"dev": true
},
"node-gyp": { "node-gyp": {
"version": "3.8.0", "version": "3.8.0",
"resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz", "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz",
@ -2761,17 +2844,17 @@
} }
}, },
"optionator": { "optionator": {
"version": "0.8.3", "version": "0.9.1",
"resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz",
"integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==",
"dev": true, "dev": true,
"requires": { "requires": {
"deep-is": "~0.1.3", "deep-is": "^0.1.3",
"fast-levenshtein": "~2.0.6", "fast-levenshtein": "^2.0.6",
"levn": "~0.3.0", "levn": "^0.4.1",
"prelude-ls": "~1.1.2", "prelude-ls": "^1.2.1",
"type-check": "~0.3.2", "type-check": "^0.4.0",
"word-wrap": "~1.2.3" "word-wrap": "^1.2.3"
} }
}, },
"opts": { "opts": {
@ -2865,9 +2948,9 @@
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
}, },
"path-key": { "path-key": {
"version": "2.0.1", "version": "3.1.1",
"resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
"integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
"dev": true "dev": true
}, },
"path-parse": { "path-parse": {
@ -3030,9 +3113,9 @@
"dev": true "dev": true
}, },
"prelude-ls": { "prelude-ls": {
"version": "1.1.2", "version": "1.2.1",
"resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
"integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
"dev": true "dev": true
}, },
"process": { "process": {
@ -3191,9 +3274,9 @@
"integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==" "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA=="
}, },
"regexpp": { "regexpp": {
"version": "2.0.1", "version": "3.1.0",
"resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz",
"integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==",
"dev": true "dev": true
}, },
"repeating": { "repeating": {
@ -3290,14 +3373,12 @@
} }
}, },
"rollup": { "rollup": {
"version": "1.32.1", "version": "2.11.2",
"resolved": "https://registry.npmjs.org/rollup/-/rollup-1.32.1.tgz", "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.11.2.tgz",
"integrity": "sha512-/2HA0Ec70TvQnXdzynFffkjA6XN+1e2pEv/uKS5Ulca40g2L7KuOE3riasHoNVHOsFD5KKZgDsMk1CP3Tw9s+A==", "integrity": "sha512-pJT6mfH+/gh1sOWyNMAWxjbYGL5x2AfsaR0SWLRwq2e7vxOKt/0mBjtYDTVYF8JXxVzmnuDzA+EpsPLWt/oyrg==",
"dev": true, "dev": true,
"requires": { "requires": {
"@types/estree": "*", "fsevents": "~2.1.2"
"@types/node": "*",
"acorn": "^7.1.0"
} }
}, },
"rollup-plugin-livereload": { "rollup-plugin-livereload": {
@ -3379,16 +3460,15 @@
} }
}, },
"rollup-plugin-terser": { "rollup-plugin-terser": {
"version": "5.3.0", "version": "6.1.0",
"resolved": "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-5.3.0.tgz", "resolved": "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-6.1.0.tgz",
"integrity": "sha512-XGMJihTIO3eIBsVGq7jiNYOdDMb3pVxuzY0uhOE/FM4x/u9nQgr3+McsjzqBn3QfHIpNSZmFnpoKAwHBEcsT7g==", "integrity": "sha512-4fB3M9nuoWxrwm39habpd4hvrbrde2W2GG4zEGPQg1YITNkM3Tqur5jSuXlWNzbv/2aMLJ+dZJaySc3GCD8oDw==",
"dev": true, "dev": true,
"requires": { "requires": {
"@babel/code-frame": "^7.5.5", "@babel/code-frame": "^7.8.3",
"jest-worker": "^24.9.0", "jest-worker": "^26.0.0",
"rollup-pluginutils": "^2.8.2", "serialize-javascript": "^3.0.0",
"serialize-javascript": "^2.1.2", "terser": "^4.7.0"
"terser": "^4.6.2"
} }
}, },
"rollup-pluginutils": { "rollup-pluginutils": {
@ -3479,16 +3559,19 @@
} }
}, },
"semver": { "semver": {
"version": "6.3.0", "version": "7.3.2",
"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz",
"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==",
"dev": true "dev": true
}, },
"serialize-javascript": { "serialize-javascript": {
"version": "2.1.2", "version": "3.1.0",
"resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-2.1.2.tgz", "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-3.1.0.tgz",
"integrity": "sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ==", "integrity": "sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg==",
"dev": true "dev": true,
"requires": {
"randombytes": "^2.1.0"
}
}, },
"set-blocking": { "set-blocking": {
"version": "2.0.0", "version": "2.0.0",
@ -3506,18 +3589,18 @@
} }
}, },
"shebang-command": { "shebang-command": {
"version": "1.2.0", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
"integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
"dev": true, "dev": true,
"requires": { "requires": {
"shebang-regex": "^1.0.0" "shebang-regex": "^3.0.0"
} }
}, },
"shebang-regex": { "shebang-regex": {
"version": "1.0.0", "version": "3.0.0",
"resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
"integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
"dev": true "dev": true
}, },
"signal-exit": { "signal-exit": {
@ -3890,12 +3973,12 @@
"integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q="
}, },
"type-check": { "type-check": {
"version": "0.3.2", "version": "0.4.0",
"resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
"integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
"dev": true, "dev": true,
"requires": { "requires": {
"prelude-ls": "~1.1.2" "prelude-ls": "^1.2.1"
} }
}, },
"type-fest": { "type-fest": {

View File

@ -7,17 +7,17 @@
"start": "sirv public" "start": "sirv public"
}, },
"devDependencies": { "devDependencies": {
"@rollup/plugin-commonjs": "^11.0.0", "@rollup/plugin-commonjs": "^12.0.0",
"@rollup/plugin-node-resolve": "^7.0.0", "@rollup/plugin-node-resolve": "^8.0.0",
"autoprefixer": "^9.8.0", "autoprefixer": "^9.8.0",
"eslint": "^6.8.0", "eslint": "^7.1.0",
"eslint-plugin-svelte3": "^2.7.3", "eslint-plugin-svelte3": "^2.7.3",
"rollup": "^1.20.0", "rollup": "^2.11.2",
"rollup-plugin-livereload": "^1.0.0", "rollup-plugin-livereload": "^1.0.0",
"rollup-plugin-node-builtins": "^2.1.2", "rollup-plugin-node-builtins": "^2.1.2",
"rollup-plugin-node-globals": "^1.4.0", "rollup-plugin-node-globals": "^1.4.0",
"rollup-plugin-svelte": "^5.0.3", "rollup-plugin-svelte": "^5.0.3",
"rollup-plugin-terser": "^5.1.2", "rollup-plugin-terser": "^6.1.0",
"svelte": "^3.0.0", "svelte": "^3.0.0",
"svelte-preprocess": "^3.7.1" "svelte-preprocess": "^3.7.1"
}, },

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -18,15 +18,15 @@
<meta name="msapplication-TileColor" content="#da532c"> <meta name="msapplication-TileColor" content="#da532c">
<meta name="msapplication-config" content="/img/browserconfig.xml"> <meta name="msapplication-config" content="/img/browserconfig.xml">
<meta name="theme-color" content="#ffffff"> <meta name="theme-color" content="#ffffff">
<!--<link href="//vjs.zencdn.net/7.3.0/video-js.min.css" rel="stylesheet">--> <link href="//vjs.zencdn.net/7.3.0/video-js.min.css" rel="stylesheet">
<script src="//vjs.zencdn.net/7.3.0/video.min.js"></script> <script src="//vjs.zencdn.net/7.3.0/video.min.js"></script>
<script src="//www.youtube.com/iframe_api"></script>
<link href="https://fonts.googleapis.com/css?family=Muli" rel="stylesheet"> <script src= "//player.twitch.tv/js/embed/v1.js"></script>
<link href="//fonts.googleapis.com/css?family=Muli" rel="stylesheet">
<link rel='stylesheet' href='/global.css'> <link rel='stylesheet' href='/global.css'>
<link rel='stylesheet' href='/build/bundle.css'> <link rel='stylesheet' href='/build/bundle.css'>
<script src="//www.youtube.com/iframe_api"></script>
<script src= "//player.twitch.tv/js/embed/v1.js"></script>
<script defer src='/build/bundle.js'></script> <script defer src='/build/bundle.js'></script>
</head> </head>

View File

@ -28,12 +28,13 @@ export default {
'file': 'public/build/bundle.js' 'file': 'public/build/bundle.js'
}, },
'plugins': [ 'plugins': [
/*globals(),*/ /* globals(),*/
builtins(), builtins(),
svelte({ svelte({
// enable run-time checks when not in production // enable run-time checks when not in production
'dev': !production, 'dev': !production,
preprocess, preprocess,
'hydratable':true,
// we'll extract any component CSS out into // we'll extract any component CSS out into
// a separate file - better for performance // a separate file - better for performance
'css': css => { 'css': css => {

View File

@ -15,10 +15,11 @@
<div> <div>
Playing:{$Playing} Playing:{$Playing}
</div> </div>
<div id="container"> <div id="container">
<Youtube title="Sky News" id="skynews" src="https://www.youtube.com/embed/9Auq9mYxFEE?enablejsapi=1&autoplay=1&mute=1&controls=0&fs=0&modestbranding=1&cc_load_policy=1"/> <Youtube title="Sky News" id="skynews" src="https://www.youtube.com/embed/9Auq9mYxFEE?enablejsapi=1&autoplay=1&mute=1&controls=0&fs=0&modestbranding=1&cc_load_policy=1"/>
<Live title="BBC News" id="bbc" src="https://a.files.bbci.co.uk/media/live/manifesto/audio_video/simulcast/hls/uk/abr_hdtv/ak/bbc_news24.m3u8"/> <Live title="BBC News" id="bbc" src="https://a.files.bbci.co.uk/media/live/manifesto/audio_video/simulcast/hls/uk/abr_hdtv/ak/bbc_news24.m3u8"/>
<Youtube title="EuroNews" id="euronews" src="https://www.youtube.com/embed/6xrJy-1_qS4?enablejsapi=1&autoplay=1&mute=1&controls=0&fs=0&modestbranding=1&cc_load_policy=1"/> <Youtube title="EuroNews" id="euronews" src="https://www.youtube.com/embed/TdYtV6kd_yw?enablejsapi=1&autoplay=1&mute=1&controls=0&fs=0&modestbranding=1&cc_load_policy=1"/>
<Twitch title="twitch.tv/rukpolitics" id="rukpolitics" channel="rukpolitics"/> <Twitch title="twitch.tv/rukpolitics" id="rukpolitics" channel="rukpolitics"/>
<Twitch title="twitch.tv/ukcommons" id="ukcommons" channel="ukcommons"/> <Twitch title="twitch.tv/ukcommons" id="ukcommons" channel="ukcommons"/>
<Twitch title="twitch.tv/democracylive" id="democracylive" channel="democracylive"/> <Twitch title="twitch.tv/democracylive" id="democracylive" channel="democracylive"/>

View File

@ -1,58 +1,58 @@
<script> <script>
import {onMount} from 'svelte'; import {onMount} from 'svelte';
import {Playing, actions} from '../store/state'; import {Playing, actions} from '../store/state';
import videojs from 'video.js'; import videojs from 'video.js';
export let id; export let id;
export let src; export let src;
export let title; export let title;
let fullId = ''; let fullId = '';
let active = ''; let active = '';
const dataSetup = {"youtube": {"ytControls": 0}}; const dataSetup = {"youtube": {"ytControls": 0}};
let player; let player;
$: fullId = `${id}-live`; $: fullId = `${id}-live`;
function mute() { function mute() {
console.log(`${fullId} - mute`); console.log(`${fullId} - mute`);
player.muted(true); player.muted(true);
}
function unMute() {
console.log(`${fullId} - unmute`);
player.muted(false)
}
function handleClick() {
actions.setPlaying(fullId);
}
onMount(() => {
try {
player = videojs(fullId);
} catch (e) {
console.log(e);
} }
function unMute() { Playing.subscribe((v) => {
console.log(`${fullId} - unmute`); active = (fullId !== '' && v === fullId) ? 'active' : '';
player.muted(false)
}
if (player) {
mute();
function handleClick() { if (active) {
actions.setPlaying(fullId); unMute();
}
onMount(() => {
try {
player = videojs(fullId);
} catch (e) {
console.log(e);
} }
}
Playing.subscribe((v) => {
active = (fullId !== '' && v === fullId) ? 'active' : '';
if (player) {
mute();
if (active) {
unMute();
}
}
})
console.log(`mounted ${fullId} player`);
}) })
console.log(`mounted ${fullId} player`);
})
</script> </script>
@ -61,13 +61,13 @@
</style> </style>
<div class="quarter" on:click={handleClick}> <div class="quarter" on:click={handleClick}>
<div class="wrapper"> <div class="wrapper">
<div class="stream live {active}"> <div class="stream live {active}">
<div class="overlay"></div> <div class="overlay"></div>
<div class="title">{title}</div> <div class="title">{title}</div>
<video id="{fullId}" class="video-js vjs-16-9" autoplay muted preload="auto" data-setup='{JSON.stringify(dataSetup)}'> <video id="{fullId}" class="video-js vjs-16-9" autoplay muted preload="auto" data-setup='{JSON.stringify(dataSetup)}'>
<source src="{src}" type="application/x-mpegURL"> <source src="{src}" type="application/x-mpegURL">
</video> </video>
</div>
</div> </div>
</div>
</div> </div>

View File

@ -1,62 +1,62 @@
<script> <script>
import {onMount} from 'svelte'; import {onMount} from 'svelte';
import {Playing, actions} from '../store/state'; import {Playing, actions} from '../store/state';
export let id; export let id;
export let channel; export let channel;
export let title; export let title;
let fullId = ''; let fullId = '';
let active = ''; let active = '';
let player; let player;
$: fullId = `${id}-twitch`; $: fullId = `${id}-twitch`;
function mute() { function mute() {
console.log(`${fullId} - mute`); console.log(`${fullId} - mute`);
player.setMuted(true); player.setMuted(true);
}
function unMute() {
console.log(`${fullId} - unmute`);
player.setMuted(false);
}
function handleClick() {
console.log(`click ${fullId}`);
actions.setPlaying(fullId);
}
onMount(() => {
try {
player = new Twitch.Player(fullId, {
'channel': channel,
'muted': true,
'width': '100%',
'height': '100%'
});
} catch (e) {
console.log(e);
} }
function unMute() { Playing.subscribe((v) => {
console.log(`${fullId} - unmute`); active = (fullId !== '' && v === fullId) ? 'active' : '';
player.setMuted(false);
}
function handleClick() { if (player) {
console.log(`click ${fullId}`); mute();
actions.setPlaying(fullId);
}
onMount(() => { if (active) {
unMute();
try {
player = new Twitch.Player(fullId, {
'channel': channel,
'muted': true,
'width': '100%',
'height': '100%'
});
} catch (e) {
console.log(e);
} }
}
Playing.subscribe((v) => {
active = (fullId !== '' && v === fullId) ? 'active' : '';
if (player) {
mute();
if (active) {
unMute();
}
}
})
console.log(`mounted ${fullId} player`);
}) })
console.log(`mounted ${fullId} player`);
})
</script> </script>
@ -65,10 +65,10 @@
</style> </style>
<div class="quarter" on:click={handleClick}> <div class="quarter" on:click={handleClick}>
<div class="wrapper"> <div class="wrapper">
<div class="stream live twitch {active}" data-video-id="4" id="{fullId}"> <div class="stream live twitch {active}" data-video-id="4" id="{fullId}">
<div class="overlay"></div> <div class="overlay"></div>
<div class="title">{title}</div> <div class="title">{title}</div>
</div>
</div> </div>
</div>
</div> </div>

View File

@ -1,74 +1,74 @@
<script> <script>
import {onMount} from 'svelte'; import {onMount} from 'svelte';
import {Playing, actions} from '../store/state'; import {Playing, actions} from '../store/state';
export let id; export let id;
export let src; export let src;
export let title; export let title;
let fullId; let fullId;
let active = ''; let active = '';
let player; let player;
$: fullId = `${id}-youtube`; $: fullId = `${id}-youtube`;
function mute() { function mute() {
console.log(`${fullId} - mute`); console.log(`${fullId} - mute`);
player.mute(); player.mute();
} }
function unMute() { function unMute() {
console.log(`${fullId} - unmute`); console.log(`${fullId} - unmute`);
player.unMute(); player.unMute();
} }
Playing.subscribe((v) => { Playing.subscribe((v) => {
if (typeof(fullId) !== 'undefined') { if (typeof (fullId) !== 'undefined') {
// console.log(`${fullId} playing`, v); // console.log(`${fullId} playing`, v);
active = (fullId !== '' && v === fullId) ? 'active' : ''; active = (fullId !== '' && v === fullId) ? 'active' : '';
if (player) { if (player) {
mute(); mute();
if (active) { if (active) {
unMute(); unMute();
}
}
} }
}) }
function handleClick() {
actions.setPlaying(fullId);
} }
})
async function createPlayer() { function handleClick() {
console.log(`${fullId} createPlayer`); actions.setPlaying(fullId);
try { }
player = new YT.Player(fullId, {
'events': {
'onReady': function (event) {
console.log('READY!!');
event.target.mute();
// mute();
}
}
});
// console.log(`${fullId} Player`, player); async function createPlayer() {
console.log(`${fullId} createPlayer`);
} catch (e) { try {
console.log(e); player = new YT.Player(fullId, {
'events': {
'onReady': function (event) {
console.log('READY!!');
event.target.mute();
// mute();
}
} }
});
// console.log(`${fullId} Player`, player);
} catch (e) {
console.log(e);
} }
}
onMount(async () => { onMount(async () => {
setTimeout(async ()=> { setTimeout(async () => {
await createPlayer() await createPlayer()
}, 1500); }, 1500);
}) })
</script> </script>
<style> <style>
@ -76,15 +76,15 @@
</style> </style>
<div class="quarter" on:click={handleClick}> <div class="quarter" on:click={handleClick}>
<div class="wrapper"> <div class="wrapper">
<div class="stream live youtube {active}" data-youtube-id={fullId}> <div class="stream live youtube {active}" data-youtube-id={fullId}>
<div class="overlay"></div> <div class="overlay"></div>
<div class="title">Sky News</div> <div class="title">Sky News</div>
<!-- <video id={fullId} class="video-js vjs-default-skin" controls> <!-- <video id={fullId} class="video-js vjs-default-skin" controls>
<source src="{src}" type="video/youtube"> <source src="{src}" type="video/youtube">
</video>--> </video>-->
<iframe allow="autoplay" title="{title}" id={fullId} type="text/html" frameborder="0" width="100%" height="100%" <iframe allow="autoplay" title="{title}" id={fullId} type="text/html" frameborder="0" width="100%" height="100%"
src="{src}"></iframe> src="{src}"></iframe>
</div>
</div> </div>
</div>
</div> </div>

View File

@ -7,6 +7,7 @@ const app = new App({
} }
}); });
/*
if ('serviceWorker' in navigator) { if ('serviceWorker' in navigator) {
// //
navigator.serviceWorker.ready.then(function(reg) { navigator.serviceWorker.ready.then(function(reg) {
@ -28,5 +29,6 @@ if ('serviceWorker' in navigator) {
// //
} }
*/
export default app; export default app;