diff -r 02c04d2c8fd8 -r ac1eacb3aa33 src/widgets/AdaptivePlayer.js --- a/src/widgets/AdaptivePlayer.js Sun Nov 12 22:07:33 2017 +0100 +++ b/src/widgets/AdaptivePlayer.js Wed Sep 04 17:32:50 2024 +0200 @@ -1,33 +1,38 @@ -IriSP.Widgets.AdaptivePlayer = function(player, config) { - IriSP.Widgets.Widget.call(this, player, config); -}; - -IriSP.Widgets.AdaptivePlayer.prototype = new IriSP.Widgets.Widget(); - -IriSP.Widgets.AdaptivePlayer.prototype.defaults = { - mime_type: 'video/mp4; codecs="avc1.42E01E"', - normal_player: "HtmlPlayer", - fallback_player: "JwpPlayer" -}; - -IriSP.Widgets.AdaptivePlayer.prototype.draw = function() { - - if (typeof this.video === "undefined") { - this.video = this.media.video; - } - - var _props = [ "autostart", "video", "height", "width", "url_transform" ], - _opts = {}, - _canPlayType = document.createElement('video').canPlayType(this.mime_type); - - _opts.type = (_canPlayType !== "no") ? this.normal_player : this.fallback_player; - - for (var i = 0; i < _props.length; i++) { - if (typeof this[_props[i]] !== "undefined") { - _opts[_props[i]] = this[_props[i]]; - } +// Class AdaptivePlayer +const AdaptivePlayer = function (ns) { + return class extends ns.Widgets.Widget { + constructor(player, config) { + super(player, config); } - this.insertSubwidget(this.$, _opts); - -}; \ No newline at end of file + static defaults = { + mime_type: 'video/mp4; codecs="avc1.42E01E"', + normal_player: "HtmlPlayer", + fallback_player: "HtmlPlayer", + }; + + draw() { + if (typeof this.video === "undefined") { + this.video = this.media.video; + } + + var _props = ["autostart", "video", "height", "width", "url_transform"], + _opts = {}, + _canPlayType = document + .createElement("video") + .canPlayType(this.mime_type); + + _opts.type = + _canPlayType !== "no" ? this.normal_player : this.fallback_player; + + for (var i = 0; i < _props.length; i++) { + if (typeof this[_props[i]] !== "undefined") { + _opts[_props[i]] = this[_props[i]]; + } + } + + this.insertSubwidget(this.$, _opts); + } + }; +}; +export { AdaptivePlayer };