diff --git a/package-lock.json b/package-lock.json index 29569211..c4ba5110 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "ogv", - "version": "1.8.8", + "version": "1.8.9", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "ogv", - "version": "1.8.8", + "version": "1.8.9", "license": "MIT", "dependencies": { "@babel/runtime": "^7.16.7" @@ -1928,9 +1928,9 @@ } }, "node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -2557,14 +2557,20 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001298", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001298.tgz", - "integrity": "sha512-AcKqikjMLlvghZL/vfTHorlQsLDhGRalYf1+GmWCf5SCMziSGjRYQW/JEksj14NaYHIR6KIhrFAy0HV5C25UzQ==", + "version": "1.0.30001431", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001431.tgz", + "integrity": "sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==", "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - } + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + } + ] }, "node_modules/chalk": { "version": "2.4.2", @@ -3667,6 +3673,18 @@ "node": "^10.12.0 || >=12.0.0" } }, + "node_modules/espree/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/espree/node_modules/eslint-visitor-keys": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", @@ -8204,18 +8222,6 @@ "node": ">=10.13.0" } }, - "node_modules/webpack/node_modules/acorn": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", - "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/webpack/node_modules/schema-utils": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", @@ -9907,9 +9913,9 @@ } }, "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", "dev": true }, "acorn-import-assertions": { @@ -10404,9 +10410,9 @@ "dev": true }, "caniuse-lite": { - "version": "1.0.30001298", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001298.tgz", - "integrity": "sha512-AcKqikjMLlvghZL/vfTHorlQsLDhGRalYf1+GmWCf5SCMziSGjRYQW/JEksj14NaYHIR6KIhrFAy0HV5C25UzQ==", + "version": "1.0.30001431", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001431.tgz", + "integrity": "sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==", "dev": true }, "chalk": { @@ -11283,6 +11289,12 @@ "eslint-visitor-keys": "^1.3.0" }, "dependencies": { + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true + }, "eslint-visitor-keys": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", @@ -14552,12 +14564,6 @@ "webpack-sources": "^3.2.2" }, "dependencies": { - "acorn": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", - "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==", - "dev": true - }, "schema-utils": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", diff --git a/package.json b/package.json index b0140655..fc908309 100644 --- a/package.json +++ b/package.json @@ -10,12 +10,12 @@ "dist/" ], "scripts": { - "prepublish": "make -j4 dist", - "build": "webpack", + "prepack": "make -j4 dist", + "build": "webpack --mode=production", "lint": "eslint src/js", "test": "make tests && npx static build/tests", - "demo": "webpack serve --open-page=build/demo", - "start": "webpack serve" + "demo": "webpack serve --mode=development --open-page=build/demo", + "start": "webpack serve --mode=development" }, "repository": { "type": "git", diff --git a/src/js/ogv-support.js b/src/js/ogv-support.js index 32c26aca..8652259d 100644 --- a/src/js/ogv-support.js +++ b/src/js/ogv-support.js @@ -7,12 +7,6 @@ import OGVCompat from './OGVCompat.js'; const OGVVersion = __OGV_FULL_VERSION__; -if (typeof window === 'object') { - // 1.0-compat globals - window.OGVCompat = OGVCompat; - window.OGVVersion = OGVVersion; -} - export { OGVCompat, OGVVersion diff --git a/src/js/ogv-version.js b/src/js/ogv-version.js index 92c029c2..aa931d30 100644 --- a/src/js/ogv-version.js +++ b/src/js/ogv-version.js @@ -6,9 +6,4 @@ const OGVVersion = __OGV_FULL_VERSION__; -if (typeof window === 'object') { - // 1.0-compat globals - window.OGVVersion = OGVVersion; -} - export {OGVVersion}; diff --git a/src/js/ogv.js b/src/js/ogv.js index 19c242b4..3a9a05de 100644 --- a/src/js/ogv.js +++ b/src/js/ogv.js @@ -12,17 +12,6 @@ import OGVPlayer from './OGVPlayer.js'; import OGVTimeRanges from './OGVTimeRanges.js'; const OGVVersion = __OGV_FULL_VERSION__; -// Version 1.0's web-facing and test-facing interfaces -if (typeof window === 'object') { - window.OGVCompat = OGVCompat; - window.OGVLoader = OGVLoader; - window.OGVMediaError = OGVMediaError; // exposed for testing, for now - window.OGVMediaType = OGVMediaType; - window.OGVTimeRanges = OGVTimeRanges; // exposed for testing, for now - window.OGVPlayer = OGVPlayer; - window.OGVVersion = OGVVersion; -} - export { OGVCompat, OGVLoader, diff --git a/webpack.config.js b/webpack.config.js index 0e2c1536..f28b6454 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -94,13 +94,14 @@ module.exports = [ { // Main entry point! - ES Module entry: './src/js/ogv.js', - mode: 'production', output: { path: path.resolve(__dirname, BUILD_DIR), publicPath: publicPath(), filename: 'ogv-es2017.js', - libraryTarget: 'umd', - library: 'ogvjs' + library: { + // `library.name` is omitted, since we want exports to be assigned directly to the root object + type: 'umd' + } }, plugins: plugins, module: { @@ -114,13 +115,14 @@ module.exports = [ { // Main entry point! - ES5 entry: './src/js/ogv.js', - mode: 'production', output: { path: path.resolve(__dirname, BUILD_DIR), publicPath: publicPath(), filename: 'ogv.js', - libraryTarget: 'umd', - library: 'ogvjs' + library: { + // `library.name` is omitted, since we want exports to be assigned directly to the root object + type: 'umd' + } }, plugins: plugins, module: { @@ -134,11 +136,14 @@ module.exports = [ { // Alt limited entry point for compat testing before loading entry: './src/js/ogv-support.js', - mode: 'production', output: { path: path.resolve(__dirname, BUILD_DIR), publicPath: publicPath(), - filename: 'ogv-support.js' + filename: 'ogv-support.js', + library: { + // `library.name` is omitted, since we want exports to be assigned directly to the root object + type: 'umd' + } }, plugins: plugins, module: { @@ -151,11 +156,14 @@ module.exports = [ { // Alt limited entry point for just exposting the version marker string entry: './src/js/ogv-version.js', - mode: 'production', output: { path: path.resolve(__dirname, BUILD_DIR), publicPath: publicPath(), - filename: 'ogv-version.js' + filename: 'ogv-version.js', + library: { + // `library.name` is omitted, since we want exports to be assigned directly to the root object + type: 'umd' + } }, plugins: plugins, module: { @@ -168,7 +176,6 @@ module.exports = [ }, { entry: './src/js/workers/ogv-worker-audio.js', - mode: 'production', output: { path: path.resolve(__dirname, BUILD_DIR), publicPath: publicPath(), @@ -185,7 +192,6 @@ module.exports = [ }, { entry: './src/js/workers/ogv-worker-video.js', - mode: 'production', output: { path: path.resolve(__dirname, BUILD_DIR), publicPath: publicPath(),