Socket
Socket
Sign inDemoInstall

videojs-contrib-quality-levels

Package Overview
Dependencies
Maintainers
12
Versions
17
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

videojs-contrib-quality-levels - npm Package Compare versions

Comparing version 3.0.0 to 4.0.0

14

CHANGELOG.md

@@ -0,1 +1,15 @@

<a name="4.0.0"></a>
# [4.0.0](https://github.com/videojs/videojs-contrib-quality-levels/compare/v3.0.0...v4.0.0) (2023-03-31)
### Features
* make quality level list iterable (#136) ([c054f8c](https://github.com/videojs/videojs-contrib-quality-levels/commit/c054f8c)), closes [#136](https://github.com/videojs/videojs-contrib-quality-levels/issues/136)
* update to support only Video.js 8 and eliminate deprecation warnings (#138) ([ccab6ca](https://github.com/videojs/videojs-contrib-quality-levels/commit/ccab6ca)), closes [#138](https://github.com/videojs/videojs-contrib-quality-levels/issues/138)
### BREAKING CHANGES
* This breaks compatibility with all versions of Internet Explorer.
* With this change, videojs-contrib-quality-levels supports only Video.js 8 and newer.
<a name="3.0.0"></a>

@@ -2,0 +16,0 @@ # [3.0.0](https://github.com/videojs/videojs-contrib-quality-levels/compare/v2.2.1...v3.0.0) (2022-12-22)

21

dist/videojs-contrib-quality-levels.cjs.js

@@ -1,2 +0,2 @@

/*! @name videojs-contrib-quality-levels @version 3.0.0 @license Apache-2.0 */
/*! @name videojs-contrib-quality-levels @version 4.0.0 @license Apache-2.0 */
'use strict';

@@ -93,2 +93,5 @@

class QualityLevelList extends videojs__default['default'].EventTarget {
/**
* Creates a QualityLevelList.
*/
constructor() {

@@ -126,2 +129,5 @@ super();

});
list[Symbol.iterator] = () => list.levels_.values();
return list;

@@ -173,3 +179,3 @@ }

*
* @param {QualityLevel} remove QualityLevel to remove to the list.
* @param {QualityLevel} qualityLevel The QualityLevel to remove from the list.
* @return {QualityLevel|null} the QualityLevel removed or null if nothing removed

@@ -256,5 +262,4 @@ * @method removeQualityLevel

var version = "3.0.0";
var version = "4.0.0";
const registerPlugin = videojs__default['default'].registerPlugin || videojs__default['default'].plugin;
/**

@@ -266,3 +271,3 @@ * Initialization function for the qualityLevels plugin. Sets up the QualityLevelList and

* @param {Object} options Plugin options object.
* @function initPlugin
* @return {QualityLevelList} a list of QualityLevels
*/

@@ -296,3 +301,3 @@

* @param {Object} options Plugin options object
* @function qualityLevels
* @return {QualityLevelList} a list of QualityLevels
*/

@@ -302,7 +307,7 @@

const qualityLevels = function (options) {
return initPlugin(this, videojs__default['default'].mergeOptions({}, options));
return initPlugin(this, videojs__default['default'].obj.merge({}, options));
}; // Register the plugin with video.js.
registerPlugin('qualityLevels', qualityLevels); // Include the version number.
videojs__default['default'].registerPlugin('qualityLevels', qualityLevels); // Include the version number.

@@ -309,0 +314,0 @@ qualityLevels.VERSION = version;

@@ -1,2 +0,2 @@

/*! @name videojs-contrib-quality-levels @version 3.0.0 @license Apache-2.0 */
/*! @name videojs-contrib-quality-levels @version 4.0.0 @license Apache-2.0 */
import videojs from 'video.js';

@@ -87,2 +87,5 @@

class QualityLevelList extends videojs.EventTarget {
/**
* Creates a QualityLevelList.
*/
constructor() {

@@ -120,2 +123,5 @@ super();

});
list[Symbol.iterator] = () => list.levels_.values();
return list;

@@ -167,3 +173,3 @@ }

*
* @param {QualityLevel} remove QualityLevel to remove to the list.
* @param {QualityLevel} qualityLevel The QualityLevel to remove from the list.
* @return {QualityLevel|null} the QualityLevel removed or null if nothing removed

@@ -250,5 +256,4 @@ * @method removeQualityLevel

var version = "3.0.0";
var version = "4.0.0";
const registerPlugin = videojs.registerPlugin || videojs.plugin;
/**

@@ -260,3 +265,3 @@ * Initialization function for the qualityLevels plugin. Sets up the QualityLevelList and

* @param {Object} options Plugin options object.
* @function initPlugin
* @return {QualityLevelList} a list of QualityLevels
*/

@@ -290,3 +295,3 @@

* @param {Object} options Plugin options object
* @function qualityLevels
* @return {QualityLevelList} a list of QualityLevels
*/

@@ -296,7 +301,7 @@

const qualityLevels = function (options) {
return initPlugin(this, videojs.mergeOptions({}, options));
return initPlugin(this, videojs.obj.merge({}, options));
}; // Register the plugin with video.js.
registerPlugin('qualityLevels', qualityLevels); // Include the version number.
videojs.registerPlugin('qualityLevels', qualityLevels); // Include the version number.

@@ -303,0 +308,0 @@ qualityLevels.VERSION = version;

@@ -1,2 +0,2 @@

/*! @name videojs-contrib-quality-levels @version 3.0.0 @license Apache-2.0 */
/*! @name videojs-contrib-quality-levels @version 4.0.0 @license Apache-2.0 */
(function (global, factory) {

@@ -95,2 +95,5 @@ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('video.js')) :

class QualityLevelList extends videojs__default['default'].EventTarget {
/**
* Creates a QualityLevelList.
*/
constructor() {

@@ -128,2 +131,5 @@ super();

});
list[Symbol.iterator] = () => list.levels_.values();
return list;

@@ -175,3 +181,3 @@ }

*
* @param {QualityLevel} remove QualityLevel to remove to the list.
* @param {QualityLevel} qualityLevel The QualityLevel to remove from the list.
* @return {QualityLevel|null} the QualityLevel removed or null if nothing removed

@@ -258,5 +264,4 @@ * @method removeQualityLevel

var version = "3.0.0";
var version = "4.0.0";
const registerPlugin = videojs__default['default'].registerPlugin || videojs__default['default'].plugin;
/**

@@ -268,3 +273,3 @@ * Initialization function for the qualityLevels plugin. Sets up the QualityLevelList and

* @param {Object} options Plugin options object.
* @function initPlugin
* @return {QualityLevelList} a list of QualityLevels
*/

@@ -298,3 +303,3 @@

* @param {Object} options Plugin options object
* @function qualityLevels
* @return {QualityLevelList} a list of QualityLevels
*/

@@ -304,7 +309,7 @@

const qualityLevels = function (options) {
return initPlugin(this, videojs__default['default'].mergeOptions({}, options));
return initPlugin(this, videojs__default['default'].obj.merge({}, options));
}; // Register the plugin with video.js.
registerPlugin('qualityLevels', qualityLevels); // Include the version number.
videojs__default['default'].registerPlugin('qualityLevels', qualityLevels); // Include the version number.

@@ -311,0 +316,0 @@ qualityLevels.VERSION = version;

@@ -1,2 +0,2 @@

/*! @name videojs-contrib-quality-levels @version 3.0.0 @license Apache-2.0 */
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("video.js")):"function"==typeof define&&define.amd?define(["video.js"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).videojsContribQualityLevels=t(e.videojs)}(this,(function(e){"use strict";function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var l=t(e);class i{constructor(e){let t=this;return t.id=e.id,t.label=t.id,t.width=e.width,t.height=e.height,t.bitrate=e.bandwidth,t.frameRate=e.frameRate,t.enabled_=e.enabled,Object.defineProperty(t,"enabled",{get:()=>t.enabled_(),set(e){t.enabled_(e)}}),t}}class n extends l.default.EventTarget{constructor(){super();let e=this;return e.levels_=[],e.selectedIndex_=-1,Object.defineProperty(e,"selectedIndex",{get:()=>e.selectedIndex_}),Object.defineProperty(e,"length",{get:()=>e.levels_.length}),e}addQualityLevel(e){let t=this.getQualityLevelById(e.id);if(t)return t;const l=this.levels_.length;return t=new i(e),""+l in this||Object.defineProperty(this,l,{get(){return this.levels_[l]}}),this.levels_.push(t),this.trigger({qualityLevel:t,type:"addqualitylevel"}),t}removeQualityLevel(e){let t=null;for(let l=0,i=this.length;l<i;l++)if(this[l]===e){t=this.levels_.splice(l,1)[0],this.selectedIndex_===l?this.selectedIndex_=-1:this.selectedIndex_>l&&this.selectedIndex_--;break}return t&&this.trigger({qualityLevel:e,type:"removequalitylevel"}),t}getQualityLevelById(e){for(let t=0,l=this.length;t<l;t++){const l=this[t];if(l.id===e)return l}return null}dispose(){this.selectedIndex_=-1,this.levels_.length=0}}n.prototype.allowedEvents_={change:"change",addqualitylevel:"addqualitylevel",removequalitylevel:"removequalitylevel"};for(const e in n.prototype.allowedEvents_)n.prototype["on"+e]=null;var s="3.0.0";const d=l.default.registerPlugin||l.default.plugin,r=function(e){return function(e,t){const l=e.qualityLevels,i=new n,d=function(){i.dispose(),e.qualityLevels=l,e.off("dispose",d)};return e.on("dispose",d),e.qualityLevels=()=>i,e.qualityLevels.VERSION=s,i}(this,l.default.mergeOptions({},e))};return d("qualityLevels",r),r.VERSION=s,r}));
/*! @name videojs-contrib-quality-levels @version 4.0.0 @license Apache-2.0 */
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("video.js")):"function"==typeof define&&define.amd?define(["video.js"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).videojsContribQualityLevels=t(e.videojs)}(this,(function(e){"use strict";function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var l=t(e);class i{constructor(e){let t=this;return t.id=e.id,t.label=t.id,t.width=e.width,t.height=e.height,t.bitrate=e.bandwidth,t.frameRate=e.frameRate,t.enabled_=e.enabled,Object.defineProperty(t,"enabled",{get:()=>t.enabled_(),set(e){t.enabled_(e)}}),t}}class s extends l.default.EventTarget{constructor(){super();let e=this;return e.levels_=[],e.selectedIndex_=-1,Object.defineProperty(e,"selectedIndex",{get:()=>e.selectedIndex_}),Object.defineProperty(e,"length",{get:()=>e.levels_.length}),e[Symbol.iterator]=()=>e.levels_.values(),e}addQualityLevel(e){let t=this.getQualityLevelById(e.id);if(t)return t;const l=this.levels_.length;return t=new i(e),""+l in this||Object.defineProperty(this,l,{get(){return this.levels_[l]}}),this.levels_.push(t),this.trigger({qualityLevel:t,type:"addqualitylevel"}),t}removeQualityLevel(e){let t=null;for(let l=0,i=this.length;l<i;l++)if(this[l]===e){t=this.levels_.splice(l,1)[0],this.selectedIndex_===l?this.selectedIndex_=-1:this.selectedIndex_>l&&this.selectedIndex_--;break}return t&&this.trigger({qualityLevel:e,type:"removequalitylevel"}),t}getQualityLevelById(e){for(let t=0,l=this.length;t<l;t++){const l=this[t];if(l.id===e)return l}return null}dispose(){this.selectedIndex_=-1,this.levels_.length=0}}s.prototype.allowedEvents_={change:"change",addqualitylevel:"addqualitylevel",removequalitylevel:"removequalitylevel"};for(const e in s.prototype.allowedEvents_)s.prototype["on"+e]=null;var n="4.0.0";const d=function(e){return function(e,t){const l=e.qualityLevels,i=new s,d=function(){i.dispose(),e.qualityLevels=l,e.off("dispose",d)};return e.on("dispose",d),e.qualityLevels=()=>i,e.qualityLevels.VERSION=n,i}(this,l.default.obj.merge({},e))};return l.default.registerPlugin("qualityLevels",d),d.VERSION=n,d}));
{
"name": "videojs-contrib-quality-levels",
"version": "3.0.0",
"version": "4.0.0",
"description": "Exposes a list of quality levels available for the source.",

@@ -67,3 +67,3 @@ "main": "dist/videojs-contrib-quality-levels.cjs.js",

"peerDependencies": {
"video.js": "^6 || ^7 || ^8"
"video.js": "^8"
},

@@ -90,3 +90,3 @@ "devDependencies": {

"sinon": "^9.1.0",
"video.js": "^6 || ^7 || ^8",
"video.js": "^8",
"videojs-generate-karma-config": "~8.0.0",

@@ -93,0 +93,0 @@ "videojs-generate-rollup-config": "^7.0.0",

@@ -17,3 +17,2 @@ # videojs-contrib-quality-levels

- [Installation](#installation)
- [Installation](#installation-1)
- [Using](#using)

@@ -90,4 +89,3 @@ - [Supporting Quality Levels for your source](#supporting-quality-levels-for-your-source)

return function() {
for (var i = 0; i < qualityLevels.length; i++) {
let qualityLevel = qualityLevels[i];
for (let qualityLevel of qualityLevels) {
if (qualityLevel.height >= 720) {

@@ -94,0 +92,0 @@ qualityLevel.enabled = enable720;

@@ -5,5 +5,2 @@ import videojs from 'video.js';

// vjs 5/6 support
const registerPlugin = videojs.registerPlugin || videojs.plugin;
/**

@@ -15,3 +12,3 @@ * Initialization function for the qualityLevels plugin. Sets up the QualityLevelList and

* @param {Object} options Plugin options object.
* @function initPlugin
* @return {QualityLevelList} a list of QualityLevels
*/

@@ -46,10 +43,10 @@ const initPlugin = function(player, options) {

* @param {Object} options Plugin options object
* @function qualityLevels
* @return {QualityLevelList} a list of QualityLevels
*/
const qualityLevels = function(options) {
return initPlugin(this, videojs.mergeOptions({}, options));
return initPlugin(this, videojs.obj.merge({}, options));
};
// Register the plugin with video.js.
registerPlugin('qualityLevels', qualityLevels);
videojs.registerPlugin('qualityLevels', qualityLevels);

@@ -56,0 +53,0 @@ // Include the version number.

@@ -25,2 +25,5 @@ import videojs from 'video.js';

class QualityLevelList extends videojs.EventTarget {
/**
* Creates a QualityLevelList.
*/
constructor() {

@@ -58,2 +61,4 @@ super();

list[Symbol.iterator] = () => list.levels_.values();
return list;

@@ -108,3 +113,3 @@ }

*
* @param {QualityLevel} remove QualityLevel to remove to the list.
* @param {QualityLevel} qualityLevel The QualityLevel to remove from the list.
* @return {QualityLevel|null} the QualityLevel removed or null if nothing removed

@@ -111,0 +116,0 @@ * @method removeQualityLevel

@@ -45,1 +45,16 @@ import document from 'global/document';

});
QUnit.test('player qualityLevels method returns the proper object', function(assert) {
const qualityLevels = this.player.qualityLevels();
assert.equal(
qualityLevels.length,
0,
'the returned object contained the length property with the proper value'
);
assert.equal(
qualityLevels.selectedIndex,
-1,
'the returned object contained the selectedIndex property with the proper value'
);
});

@@ -12,2 +12,6 @@ import QUnit from 'qunit';

QUnit.test('the QualityLevelList is iterable', function(assert) {
assert.ok(Symbol.iterator in this.qualityLevels, 'is iterable');
});
QUnit.test('Properly adds QualityLevels to the QualityLevelList', function(assert) {

@@ -14,0 +18,0 @@ let addCount = 0;

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc