Skip to content
Open
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10,963 changes: 7,001 additions & 3,962 deletions package-lock.json

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -60,11 +60,11 @@
"@babel/runtime": "^7.12.5",
"@videojs/vhs-utils": "^4.1.1",
"aes-decrypter": "^4.0.2",
"global": "^4.4.0",
"m3u8-parser": "^7.2.0",
"mpd-parser": "^1.3.1",
"mux.js": "7.1.0",
"video.js": "^7 || ^8"
"video.js": "^7 || ^8",
"videojs-global-compat": "^1.0.1"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The repo and package probably ought to be in the video.js GitHub and NPM orgs.

},
"peerDependencies": {
"video.js": "^8.19.0"
Expand Down
2 changes: 1 addition & 1 deletion src/ad-cue-tags.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/**
* @file ad-cue-tags.js
*/
import window from 'global/window';
import window from 'videojs-global-compat/window';

/**
* Searches for an ad cue that overlaps with the given mediaTime
Expand Down
2 changes: 1 addition & 1 deletion src/content-steering-controller.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import resolveUrl from './resolve-url';
import window from 'global/window';
import window from 'videojs-global-compat/window';
import logger from './util/logger';
import videojs from 'video.js';

Expand Down
2 changes: 1 addition & 1 deletion src/dash-playlist-loader.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import {
import { resolveUrl, resolveManifestRedirect } from './resolve-url';
import parseSidx from 'mux.js/lib/tools/parse-sidx';
import { segmentXhrHeaders } from './xhr';
import window from 'global/window';
import window from 'videojs-global-compat/window';
import {
forEachMediaGroup,
addPropertiesToMain
Expand Down
2 changes: 1 addition & 1 deletion src/manifest.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import videojs from 'video.js';
import window from 'global/window';
import window from 'videojs-global-compat/window';
import { Parser as M3u8Parser } from 'm3u8-parser';
import { resolveUrl } from './resolve-url';
import { getLastParts, isAudioOnly } from './playlist.js';
Expand Down
2 changes: 1 addition & 1 deletion src/playback-watcher.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
* my life and honor to the Playback Watch, for this Player and all the Players to come.
*/

import window from 'global/window';
import window from 'videojs-global-compat/window';
import * as Ranges from './ranges';
import logger from './util/logger';
import { createTimeRanges } from './util/vjs-compat';
Expand Down
2 changes: 1 addition & 1 deletion src/playlist-controller.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/**
* @file playlist-controller.js
*/
import window from 'global/window';
import window from 'videojs-global-compat/window';
import PlaylistLoader from './playlist-loader';
import DashPlaylistLoader from './dash-playlist-loader';
import { isEnabled, isLowestEnabledRendition } from './playlist.js';
Expand Down
2 changes: 1 addition & 1 deletion src/playlist-loader.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
*/
import { resolveUrl, resolveManifestRedirect } from './resolve-url';
import videojs from 'video.js';
import window from 'global/window';
import window from 'videojs-global-compat/window';
import logger from './util/logger';
import {
parseManifest,
Expand Down
2 changes: 1 addition & 1 deletion src/playlist-selectors.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import window from 'global/window';
import window from 'videojs-global-compat/window';
import Config from './config';
import Playlist from './playlist';
import { codecsForPlaylist } from './util/codecs.js';
Expand Down
2 changes: 1 addition & 1 deletion src/playlist.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
*
* Playlist related utilities.
*/
import window from 'global/window';
import window from 'videojs-global-compat/window';
import {isAudioCodec} from '@videojs/vhs-utils/es/codecs.js';
import {TIME_FUDGE_FACTOR} from './ranges.js';
import {createTimeRanges} from './util/vjs-compat';
Expand Down
2 changes: 1 addition & 1 deletion src/segment-loader.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import Playlist from './playlist';
import videojs from 'video.js';
import Config from './config';
import window from 'global/window';
import window from 'videojs-global-compat/window';
import { initSegmentId, segmentKeyId } from './bin-utils';
import { mediaSegmentRequest, REQUEST_ERRORS } from './media-segment-request';
import segmentTransmuxer from './segment-transmuxer';
Expand Down
2 changes: 1 addition & 1 deletion src/source-updater.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import logger from './util/logger';
import noop from './util/noop';
import { bufferIntersection } from './ranges.js';
import {getMimeForCodec} from '@videojs/vhs-utils/es/codecs.js';
import window from 'global/window';
import window from 'videojs-global-compat/window';
import toTitleCase from './util/to-title-case.js';
import { QUOTA_EXCEEDED_ERR } from './error-codes';
import {createTimeRanges, bufferedRangesToString} from './util/vjs-compat';
Expand Down
2 changes: 1 addition & 1 deletion src/util/text-tracks.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/**
* @file text-tracks.js
*/
import window from 'global/window';
import window from 'videojs-global-compat/window';
import videojs from 'video.js';

/**
Expand Down
4 changes: 2 additions & 2 deletions src/videojs-http-streaming.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
* The main file for the VHS project.
* License: https://github.com/videojs/videojs-http-streaming/blob/main/LICENSE
*/
import document from 'global/document';
import window from 'global/window';
import document from 'videojs-global-compat/document';
import window from 'videojs-global-compat/window';
import PlaylistLoader from './playlist-loader';
import Playlist from './playlist';
import xhrFactory from './xhr';
Expand Down
2 changes: 1 addition & 1 deletion src/vtt-segment-loader.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
*/
import SegmentLoader from './segment-loader';
import videojs from 'video.js';
import window from 'global/window';
import window from 'videojs-global-compat/window';
import { removeCuesFromTrack, removeDuplicateCuesFromTrack } from './util/text-tracks';
import { initSegmentId } from './bin-utils';
import { uint8ToUtf8 } from './util/string';
Expand Down
2 changes: 1 addition & 1 deletion src/xhr.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
* @return {Request} the xhr request that is going to be made
*/
import videojs from 'video.js';
import window from 'global/window';
import window from 'videojs-global-compat/window';
import {merge} from './util/vjs-compat';

const callbackWrapper = function(request, error, response, callback) {
Expand Down
2 changes: 1 addition & 1 deletion test/ad-cue-tags.test.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import QUnit from 'qunit';
import { updateAdCues, findAdCue } from '../src/ad-cue-tags';
import window from 'global/window';
import window from 'videojs-global-compat/window';

QUnit.module('AdCueTags', {
beforeEach() {
Expand Down
2 changes: 1 addition & 1 deletion test/dash-playlist-loader.test.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import QUnit from 'qunit';
import sinon from 'sinon';
import window from 'global/window';
import window from 'videojs-global-compat/window';
import {
default as DashPlaylistLoader,
updateMain,
Expand Down
4 changes: 2 additions & 2 deletions test/loader-common.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import QUnit from 'qunit';
import xhrFactory from '../src/xhr';
import Config from '../src/config';
import document from 'global/document';
import document from 'videojs-global-compat/document';
import {
playlistWithDuration,
useFakeEnvironment,
Expand All @@ -14,7 +14,7 @@ import SourceUpdater from '../src/source-updater';
import SyncController from '../src/sync-controller';
import TimelineChangeController from '../src/timeline-change-controller';
import Decrypter from 'worker!../src/decrypter-worker.js';
import window from 'global/window';
import window from 'videojs-global-compat/window';
/* eslint-disable no-unused-vars */
// we need this so that it can register VHS with videojs
import { Vhs } from '../src/videojs-http-streaming';
Expand Down
2 changes: 1 addition & 1 deletion test/manifest.test.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import QUnit from 'qunit';
import window from 'global/window';
import window from 'videojs-global-compat/window';
import {
setupMediaPlaylists,
resolveMediaGroupUris,
Expand Down
4 changes: 2 additions & 2 deletions test/playback.test.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import QUnit from 'qunit';
import videojs from 'video.js';
import window from 'global/window';
import document from 'global/document';
import window from 'videojs-global-compat/window';
import document from 'videojs-global-compat/document';
import '../src/videojs-http-streaming';
import 'videojs-contrib-eme';
import dashManifestObject from '../scripts/dash-manifest-object.json';
Expand Down
2 changes: 1 addition & 1 deletion test/playlist-controller.test.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import QUnit from 'qunit';
import sinon from 'sinon';
import videojs from 'video.js';
import window from 'global/window';
import window from 'videojs-global-compat/window';
import {
useFakeEnvironment,
useFakeMediaSource,
Expand Down
2 changes: 1 addition & 1 deletion test/playlist-loader.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import {
} from '../src/playlist-loader';
import xhrFactory from '../src/xhr';
import { useFakeEnvironment, urlTo } from './test-helpers';
import window from 'global/window';
import window from 'videojs-global-compat/window';
// needed for plugin registration
import '../src/videojs-http-streaming';
import {
Expand Down
4 changes: 2 additions & 2 deletions test/playlist-selectors.test.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { module, test } from 'qunit';
import document from 'global/document';
import window from 'global/window';
import document from 'videojs-global-compat/document';
import window from 'videojs-global-compat/window';
import {
TEST_ONLY_SIMPLE_SELECTOR,
simpleSelector,
Expand Down
2 changes: 1 addition & 1 deletion test/resolve-url.test.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import QUnit from 'qunit';
import window from 'global/window';
import window from 'videojs-global-compat/window';
import resolveUrl from '../src/resolve-url';

// A modified subset of tests from https://github.com/tjenkinson/url-toolkit
Expand Down
2 changes: 1 addition & 1 deletion test/sanity.test.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import QUnit from 'qunit';
import videojs from 'video.js';
import window from 'global/window';
import window from 'videojs-global-compat/window';
// needed for plugin registration
import '../src/videojs-http-streaming';

Expand Down
4 changes: 2 additions & 2 deletions test/segment-loader.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,8 @@ import {
import sinon from 'sinon';
import { timeRangesEqual } from './custom-assertions.js';
import { QUOTA_EXCEEDED_ERR } from '../src/error-codes';
import window from 'global/window';
import document from 'global/document';
import window from 'videojs-global-compat/window';
import document from 'videojs-global-compat/document';
import {merge, createTimeRanges} from '../src/util/vjs-compat';

const newEvent = function(name) {
Expand Down
4 changes: 2 additions & 2 deletions test/source-updater.test.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import document from 'global/document';
import window from 'global/window';
import document from 'videojs-global-compat/document';
import window from 'videojs-global-compat/window';
import QUnit from 'qunit';
import videojs from 'video.js';
import SourceUpdater from '../src/source-updater';
Expand Down
4 changes: 2 additions & 2 deletions test/test-helpers.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import document from 'global/document';
import document from 'videojs-global-compat/document';
import sinon from 'sinon';
import videojs from 'video.js';
import URLToolkit from 'url-toolkit';
import testDataManifests from 'create-test-data!manifests';
import xhrFactory from '../src/xhr';
import window from 'global/window';
import window from 'videojs-global-compat/window';
import { muxed as muxedSegment } from 'create-test-data!segments';
import {bytesToString, isTypedArray} from '@videojs/vhs-utils/es/byte-helpers';
import {createTimeRanges} from '../src/util/vjs-compat';
Expand Down
2 changes: 1 addition & 1 deletion test/util/date-ranges.test.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import QUnit from 'qunit';
// import sinon from 'sinon';
// import window from 'global/window';
// import window from 'videojs-global-compat/window';
import DateRangesStorage from '../../src/util/date-ranges';
import xhrFactory from '../../src/xhr';
import { useFakeEnvironment } from '../test-helpers';
Expand Down
8 changes: 4 additions & 4 deletions test/videojs-http-streaming.test.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import document from 'global/document';
import document from 'videojs-global-compat/document';
import videojs from 'video.js';
import Events from 'video.js';
import QUnit from 'qunit';
Expand Down Expand Up @@ -41,7 +41,7 @@ import {
getAllPsshKeySystemsOptions,
waitForKeySessionCreation
} from '../src/videojs-http-streaming';
import window from 'global/window';
import window from 'videojs-global-compat/window';
// we need this so the plugin registers itself
import 'videojs-contrib-quality-levels';
import 'videojs-contrib-eme';
Expand Down Expand Up @@ -4163,7 +4163,7 @@ QUnit.test('Allows overriding the global beforeRequest function', function(asser

assert.equal(beforeLocalRequestCalled, 2, 'local beforeRequest was called twice ' +
'for the media playlist and media');
assert.equal(beforeGlobalRequestCalled, 1, 'global beforeRequest was called once ' +
assert.equal(beforeGlobalRequestCalled, 1, 'videojs-global-compat beforeRequest was called once ' +
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
assert.equal(beforeGlobalRequestCalled, 1, 'videojs-global-compat beforeRequest was called once ' +
assert.equal(beforeGlobalRequestCalled, 1, 'global beforeRequest was called once ' +

'for the main playlist');
assert.equal(this.env.log.warn.calls, 3, 'warning logged for deprecation');

Expand Down Expand Up @@ -4305,7 +4305,7 @@ QUnit.test('Allows setting onRequest hooks globally and overriding with player h
this.player.tech_.vhs.xhr.offRequest(playerRequestHook2);

assert.equal(onRequestHookCallCountGlobal, 0, 'no onRequest global hooks called');
assert.equal(actualRequestUrlGlobal, undefined, 'global request url undefined');
assert.equal(actualRequestUrlGlobal, undefined, 'videojs-global-compat request url undefined');
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
assert.equal(actualRequestUrlGlobal, undefined, 'videojs-global-compat request url undefined');
assert.equal(actualRequestUrlGlobal, undefined, 'globalrequest url undefined');

assert.equal(onRequestHookCallCountPlayer, 2, '2 onRequest player hooks called');
assert.equal(actualRequestUrlPlayer, 'http://localhost:9999/test/media2.m3u8?bar=foo', 'request url modified by player onRequest hook');

Expand Down
2 changes: 1 addition & 1 deletion test/vtt-segment-loader.test.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import QUnit from 'qunit';
import window from 'global/window';
import window from 'videojs-global-compat/window';
import VTTSegmentLoader from '../src/vtt-segment-loader';
import {
playlistWithDuration as oldPlaylistWithDuration,
Expand Down
18 changes: 9 additions & 9 deletions test/xhr.test.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import window from 'global/window';
import window from 'videojs-global-compat/window';
import QUnit from 'qunit';
import {default as xhrFactory, byterangeStr} from '../src/xhr';
import { useFakeEnvironment } from './test-helpers.js';
Expand Down Expand Up @@ -36,7 +36,7 @@ QUnit.test('xhr respects beforeRequest', function(assert) {
assert.equal(this.env.log.warn.calls, 1, 'warning logged for deprecation');

videojs.Vhs.xhr.beforeRequest = (options) => {
options.url = 'global';
options.url = 'videojs-global-compat';
return options;
};

Expand All @@ -47,7 +47,7 @@ QUnit.test('xhr respects beforeRequest', function(assert) {
delete this.xhr.beforeRequest;

this.xhr(defaultOptions);
assert.equal(this.requests.shift().url, 'global', 'url changed with global override');
assert.equal(this.requests.shift().url, 'videojs-global-compat', 'url changed with global override');
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
assert.equal(this.requests.shift().url, 'videojs-global-compat', 'url changed with global override');
assert.equal(this.requests.shift().url, 'global', 'url changed with global override');

assert.equal(this.env.log.warn.calls, 1, 'warning logged for deprecation');

delete videojs.Vhs.xhr.beforeRequest;
Expand All @@ -62,11 +62,11 @@ QUnit.test('beforeRequest can return a new options object', function(assert) {
assert.equal(this.requests.shift().url, 'default', 'url the same without override');

videojs.Vhs.xhr.beforeRequest = () => {
return { uri: 'global-newOptions'};
return { uri: 'videojs-global-compat-newOptions'};
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
return { uri: 'videojs-global-compat-newOptions'};
return { uri: 'global-newOptions'};

};

this.xhr(defaultOptions);
assert.equal(this.requests.shift().url, 'global-newOptions', 'url changed with global override');
assert.equal(this.requests.shift().url, 'videojs-global-compat-newOptions', 'url changed with global override');
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
assert.equal(this.requests.shift().url, 'videojs-global-compat-newOptions', 'url changed with global override');
assert.equal(this.requests.shift().url, 'global-newOptions', 'url changed with global override');

assert.equal(this.env.log.warn.calls, 1, 'warning logged for deprecation');

this.xhr.beforeRequest = () => {
Expand Down Expand Up @@ -95,7 +95,7 @@ QUnit.test('calls global and player onRequest hooks respectively', function(asse
// create the global onRequest set and 2 hooks
videojs.Vhs.xhr._requestCallbackSet = new Set();
const globalRequestHook1 = (options) => {
options.url = 'global';
options.url = 'videojs-global-compat';
return options;
};
const globalRequestHook2 = (options) => {
Expand All @@ -112,7 +112,7 @@ QUnit.test('calls global and player onRequest hooks respectively', function(asse
this.xhr(defaultOptions);
xhrRequest = this.requests.shift();

assert.equal(xhrRequest.url, 'global', 'url changed with global onRequest hooks');
assert.equal(xhrRequest.url, 'videojs-global-compat', 'url changed with global onRequest hooks');
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
assert.equal(xhrRequest.url, 'videojs-global-compat', 'url changed with global onRequest hooks');
assert.equal(xhrRequest.url, 'global', 'url changed with global onRequest hooks');

assert.equal(xhrRequest.headers.foo, 'bar', 'headers changed with global onRequest hooks');

// create the player onRequest set and 2 hooks
Expand Down Expand Up @@ -143,7 +143,7 @@ QUnit.test('calls global and player onRequest hooks respectively', function(asse
delete this.xhr._requestCallbackSet;
this.xhr(defaultOptions);
xhrRequest = this.requests.shift();
assert.equal(xhrRequest.url, 'global', 'url changed with player onRequest hooks');
assert.equal(xhrRequest.url, 'videojs-global-compat', 'url changed with player onRequest hooks');
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
assert.equal(xhrRequest.url, 'videojs-global-compat', 'url changed with player onRequest hooks');
assert.equal(xhrRequest.url, 'global', 'url changed with player onRequest hooks');

assert.equal(xhrRequest.headers.foo, 'bar', 'headers changed with player onRequest hooks');

delete videojs.Vhs.xhr._requestCallbackSet;
Expand Down Expand Up @@ -180,7 +180,7 @@ QUnit.test('xhr calls global and player onResponse hooks respectively', function
const playerOnResponseHook2 = (request, error, response) => {
assert.equal(response.headers.foo, 'bar', 'expected headers');
assert.equal(response.statusCode, 200, 'expected statusCode');
assert.equal(globalHookCallCount, 0, 'global response hooks not called yet');
assert.equal(globalHookCallCount, 0, 'videojs-global-compat response hooks not called yet');
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
assert.equal(globalHookCallCount, 0, 'videojs-global-compat response hooks not called yet');
assert.equal(globalHookCallCount, 0, 'globalresponse hooks not called yet');

done();
};

Expand Down