1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("Clappr")):"function"==typeof define&&define.amd?define(["Clappr"],t):"object"==typeof exports?exports.AudioSelector=t(require("Clappr")):e.AudioSelector=t(e.Clappr)}(this,function(e){return function(e){function t(o){if(n[o])return n[o].exports;var i=n[o]={exports:{},id:o,loaded:!1};return e[o].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}var n={};return t.m=e,t.c=n,t.p="<%=baseUrl%>/",t(0)}([/*!******************!*\
!*** ./index.js ***!
\******************/
function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=n(/*! ./src/main.js */1),e.exports=t.default},/*!*********************!*\
!*** ./src/main.js ***!
\*********************/
function(e,t,n){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}return function(t,n,o){return n&&e(t.prototype,n),o&&e(t,o),t}}(),l=function(e,t,n){for(var o=!0;o;){var i=e,a=t,r=n;o=!1,null===i&&(i=Function.prototype);var l=Object.getOwnPropertyDescriptor(i,a);if(void 0!==l){if("value"in l)return l.value;var s=l.get;if(void 0===s)return;return s.call(r)}var u=Object.getPrototypeOf(i);if(null===u)return;e=u,t=a,n=r,o=!0,l=u=void 0}},s=n(/*! Clappr */2),u=n(/*! ./public/audio-selector.html */3),c=o(u),d=n(/*! ./public/style.scss */4),h=o(d),g=function(e){function t(){i(this,t),l(Object.getPrototypeOf(t.prototype),"constructor",this).apply(this,arguments)}return a(t,e),r(t,[{key:"bindEvents",value:function(){this.listenTo(this.core,s.Events.CORE_READY,this.bindPlaybackEvents),this.listenTo(this.core.mediaControl,s.Events.MEDIACONTROL_CONTAINERCHANGED,this.reload),this.listenTo(this.core.mediaControl,s.Events.MEDIACONTROL_RENDERED,this.render),this.listenTo(this.core.mediaControl,s.Events.MEDIACONTROL_HIDE,this._hideSelectLevelMenu)}},{key:"unBindEvents",value:function(){this.stopListening(this.core,s.Events.CORE_READY),this.stopListening(this.core.mediaControl,s.Events.MEDIACONTROL_CONTAINERCHANGED),this.stopListening(this.core.mediaControl,s.Events.MEDIACONTROL_RENDERED),this.stopListening(this.core.mediaControl,s.Events.MEDIACONTROL_HIDE),this.stopListening(this.core.getCurrentPlayback(),s.Events.PLAYBACK_BITRATE),this.stopListening(this.core.getCurrentPlayback(),s.Events.PLAYBACK_LEVELS_AVAILABLE),this.stopListening(this.core.getCurrentPlayback(),s.Events.PLAYBACK_LEVEL_SWITCH_START),this.stopListening(this.core.getCurrentPlayback(),s.Events.PLAYBACK_LEVEL_SWITCH_END)}},{key:"bindPlaybackEvents",value:function(){var e=this.core.getCurrentPlayback();this.listenTo(e,s.Events.PLAYBACK_LEVELS_AVAILABLE,this.fillLevels),this.listenTo(e,s.Events.PLAYBACK_LEVEL_SWITCH_START,this.startLevelSwitch),this.listenTo(e,s.Events.PLAYBACK_LEVEL_SWITCH_END,this.stopLevelSwitch),this.listenTo(e,s.Events.PLAYBACK_BITRATE,this.handleAdaptation)}},{key:"reload",value:function(){this.unBindEvents(),this.bindEvents(),this.bindPlaybackEvents()}},{key:"shouldRender",value:function(){if(!this.core.getCurrentContainer())return!1;var e=this.core.getCurrentPlayback();if(!e)return!1;var t=!!(this.languages&&this.languages.length>1);return t}},{key:"render",value:function(){if(this.shouldRender()){var e=s.Styler.getStyleFor(h.default,{baseUrl:this.core.options.baseUrl});this.$el.html(this.template({title:this._getTitle(),languages:this.languages})),this.$el.append(e),this.core.mediaControl.$(".media-control-right-panel").append(this.el),this._highlightCurrentElement()}return this}},{key:"_setLanguage",value:function(e){var t=this.core.getCurrentPlayback();this._startTrackSwitch(),t.selectAudioLanguage(e)}},{key:"_getAudioTrack",value:function(e){for(var t=0;t<this.languages.length;t++){var n=this.languages[t];if(n.id==e)return n}return null}},{key:"fillLevels",value:function(){var e=this.core.getCurrentPlayback();this.languages=e.audioLanguages,this.render()}},{key:"handleLanguageSelect",value:function(e){e.preventDefault(),e.stopPropagation();var t=e.target.dataset.audioSelectorLang;return this.activeLanguage!=t&&(this._setLanguage(t),this._toggleContextMenu(),!1)}},{key:"handleAdaptation",value:function(e){this.fillLevels(),this.activeLanguage=e.language,this._stopTrackSwitch(),this._highlightCurrentElement()}},{key:"handleAudioSelectorClick",value:function(e){this._toggleContextMenu()}},{key:"_toggleContextMenu",value:function(){this.$(".audio_selector ul").toggle()}},{key:"_hideSelectLevelMenu",value:function(){this.$(".audio_selector ul").hide()}},{key:"_getLanguageElement",value:function(){var e=arguments.length<=0||void 0===arguments[0]?null:arguments[0];return e?this.$('.audio_selector a[data-audio-selector-lang="'+e+'"]'):this.$(".audio_selector a")}},{key:"_getButtonElement",value:function(){return this.$(".audio_selector button")}},{key:"_getTitle",value:function(){return(this.core.options.levelSelectorConfig||{}).title}},{key:"_startTrackSwitch",value:function(){this._getButtonElement().addClass("changing")}},{key:"_stopTrackSwitch",value:function(){this._getButtonElement().removeClass("changing")}},{key:"_highlightCurrentElement",value:function(){this.activeLanguage&&(this._getLanguageElement().removeClass("current"),this._getLanguageElement(this.activeLanguage).addClass("current"),this._getButtonElement().text(this.activeLanguage))}},{key:"name",get:function(){return"audio_selector"}},{key:"template",get:function(){return(0,s.template)(c.default)}},{key:"attributes",get:function(){return{class:this.name,"data-audio-selector":""}}},{key:"events",get:function(){return{"click [data-audio-selector-lang]":"handleLanguageSelect","click [data-audio-selector-button]":"handleAudioSelectorClick"}}}],[{key:"version",get:function(){return VERSION}}]),t}(s.UICorePlugin);t.default=g,e.exports=t.default},/*!*************************!*\
!*** external "Clappr" ***!
\*************************/
function(t,n){t.exports=e},/*!****************************************!*\
!*** ./src/public/audio-selector.html ***!
\****************************************/
function(e,t){e.exports='<button data-audio-selector-button>\n Language\n</button>\n<ul>\n <% if (title) { %>\n <li data-title><%= title %></li>\n <% }; %>\n <% for (var i = 0; i < languages.length; i++) { %>\n <li><a href="#" data-audio-selector-lang="<%= languages[i] %>"><%= languages[i] %></a></li>\n <% }; %>\n</ul>\n'},/*!*******************************!*\
!*** ./src/public/style.scss ***!
\*******************************/
function(e,t,n){t=e.exports=n(/*! ./../../~/css-loader/lib/css-base.js */5)(),t.push([e.id,".audio_selector[data-audio-selector]{float:right;margin-top:7px;position:relative}.audio_selector[data-audio-selector] button{background-color:transparent;color:#fff;font-family:Roboto,Open Sans,Arial,sans-serif;-webkit-font-smoothing:antialiased;border:none;font-size:12px}.audio_selector[data-audio-selector] button:hover{color:#c9c9c9}.audio_selector[data-audio-selector] button.changing{-webkit-animation:pulse .5s infinite alternate}.audio_selector[data-audio-selector]>ul{list-style-type:none;position:absolute;bottom:25px;border:1px solid #000;display:none;background-color:#e6e6e6}.audio_selector[data-audio-selector] li{font-size:12px}.audio_selector[data-audio-selector] li[data-title]{background-color:#c3c2c2;padding:5px}.audio_selector[data-audio-selector] li a{color:#444;padding:2px 12px;display:block;text-decoration:none}.audio_selector[data-audio-selector] li a:hover{background-color:#555;color:#fff}.audio_selector[data-audio-selector] li a:hover a{color:#fff;text-decoration:none}.audio_selector[data-audio-selector] li.current a{color:red}@-webkit-keyframes pulse{0%{color:#fff}50%{color:#ff0101}to{color:#b80000}}",""])},/*!**************************************!*\
!*** ./~/css-loader/lib/css-base.js ***!
\**************************************/
function(e,t){"use strict";e.exports=function(){var e=[];return e.toString=function(){for(var e=[],t=0;t<this.length;t++){var n=this[t];n[2]?e.push("@media "+n[2]+"{"+n[1]+"}"):e.push(n[1])}return e.join("")},e.i=function(t,n){"string"==typeof t&&(t=[[null,t,""]]);for(var o={},i=0;i<this.length;i++){var a=this[i][0];"number"==typeof a&&(o[a]=!0)}for(i=0;i<t.length;i++){var r=t[i];"number"==typeof r[0]&&o[r[0]]||(n&&!r[2]?r[2]=n:n&&(r[2]="("+r[2]+") and ("+n+")"),e.push(r))}},e}}])});
|