text: /*!
  betajs-media-components - v0.0.304 - 2022-06-08
  Copyright (c) Ziggeo,Oliver Friedmann,Rashad Aliyev
  Apache-2.0 Software License.
  */
  
  (function(){var t=this.subScope();t.binding("browser","global:BetaJS.Browser"),t.binding("dynamics","global:BetaJS.Dynamics"),t.binding("module","global:BetaJS.MediaComponents"),t.extend("module:Assets.playerthemes",["browser:Info","dynamics:Parser"],function(t,n){var e=t.isInternetExplorer()&&t.internetExplorerVersion()<=8;return n.registerFunctions({csstheme:function(t){return t.csstheme},"activitydelta > hidebarafter && hideoninactivity ? (cssplayer + '-dashboard-hidden') : ''":function(t){return t.activitydelta>t.hidebarafter&&t.hideoninactivity?t.cssplayer+"-dashboard-hidden":""},"toggle_fullscreen()":function(t){return t.toggle_fullscreen()},"tab_index_move(domEvent)":function(t){return t.tab_index_move(t.domEvent)},fullscreen:function(t){return t.fullscreen},"fullscreened ? string('exit-fullscreen-video') : string('fullscreen-video')":function(t){return t.fullscreened?t.string("exit-fullscreen-video"):t.string("fullscreen-video")},csscommon:function(t){return t.csscommon},"fullscreened ? 'small' : 'full'":function(t){return t.fullscreened?"small":"full"},"toggle_volume()":function(t){return t.toggle_volume()},"string(volume > 0 ? 'volume-mute' : 'volume-unmute')":function(t){return t.string(0<t.volume?"volume-mute":"volume-unmute")},"csscommon + '-icon-volume-' + (volume >= 0.5 ? 'up' : (volume > 0 ? 'down' : 'off'))":function(t){return t.csscommon+"-icon-volume-"+(.5<=t.volume?"up":0<t.volume?"down":"off")},"!hidevolumebar":function(t){return!t.hidevolumebar},"set_volume(volume + 0.1)":function(t){return t.set_volume(t.volume+.1)},"set_volume(volume - 0.1)":function(t){return t.set_volume(t.volume-.1)},"startUpdateVolume(domEvent)":function(t){return t.startUpdateVolume(t.domEvent)},"progressUpdateVolume(domEvent)":function(t){return t.progressUpdateVolume(t.domEvent)},"stopUpdateVolume(domEvent); this.blur()":function(t){return t.stopUpdateVolume(t.domEvent)},"stopUpdateVolume(domEvent)":function(t){return t.stopUpdateVolume(t.domEvent)},"{width: Math.ceil(1+Math.min(99, Math.round(volume * 100))) + '%'}":function(t){return{width:Math.ceil(1+Math.min(99,Math.round(100*t.volume)))+"%"}},"string('volume-button')":function(t){return t.string("volume-button")},title:function(t){return t.title},"submit()":function(t){return t.submit()},submittable:function(t){return t.submittable},"string('submit-video')":function(t){return t.string("submit-video")},"skipinitial ? 0 : -1":function(t){return t.skipinitial?0:-1},"play()":function(t){return t.play()},"tab_index_move(domEvent, null, 'button-icon-pause')":function(t){return t.tab_index_move(t.domEvent,null,"button-icon-pause")},"!playing":function(t){return!t.playing},"string('play-video')":function(t){return t.string("play-video")},"pause()":function(t){return t.pause()},"tab_index_move(domEvent, null, 'button-icon-play')":function(t){return t.tab_index_move(t.domEvent,null,"button-icon-play")},"disablepause ? cssplayer + '-disabled' : ''":function(t){return t.disablepause?t.cssplayer+"-disabled":""},playing:function(t){return t.playing},"disablepause ? string('pause-video-disabled') : string('pause-video')":function(t){return t.disablepause?t.string("pause-video-disabled"):t.string("pause-video")},"disableseeking ? cssplayer + '-disabled' : ''":function(t){return t.disableseeking?t.cssplayer+"-disabled":""},"seek(position + skipseconds)":function(t){return t.seek(t.position+t.skipseconds)},"seek(position - skipseconds)":function(t){return t.seek(t.position-t.skipseconds)},"startUpdatePosition(domEvent)":function(t){return t.startUpdatePosition(t.domEvent)},"{width: Math.round(duration ? cached / duration * 100 : 0) + '%'}":function(t){return{width:Math.round(t.duration?t.cached/t.duration*100:0)+"%"}},"{width: Math.round(duration ? position / duration * 100 : 0) + '%'}":function(t){return{width:Math.round(t.duration?t.position/t.duration*100:0)+"%"}},"string('video-progress')":function(t){return t.string("video-progress")},trimmingmode:function(t){return t.trimmingmode},"{left: Math.round(duration && trimstart ? trimstart / duration * 100 : 0) + '%'}":function(t){return{left:Math.round(t.duration&&t.trimstart?t.trimstart/t.duration*100:0)+"%"}},"{left: 'auto', right: 100 - Math.round(duration && trimend ? trimend / duration * 100 : 100) + '%'}":function(t){return{left:"auto",right:100-Math.round(t.duration&&t.trimend?t.trimend/t.duration*100:100)+"%"}},"rerecord()":function(t){return t.rerecord()},rerecordable:function(t){return t.rerecordable},"string('rerecord-video')":function(t){return t.string("rerecord-video")},"toggle_position_info()":function(t){return t.toggle_position_info()},"revertposition ? string('remaining-time') : string('elapsed-time')":function(t){return t.revertposition?t.string("remaining-time"):t.string("elapsed-time")},'(revertposition && duration > 0) ? "-" : ""':function(t){return t.revertposition&&0<t.duration?"-":""},"(revertposition && duration > 0) ? formatTime(duration - position) : formatTime(position)":function(t){return t.revertposition&&0<t.duration?t.formatTime(t.duration-t.position):t.formatTime(t.position)},"string('total-time')":function(t){return t.string("total-time")},"formatTime(duration || position)":function(t){return t.formatTime(t.duration||t.position)},"toggle_stream()":function(t){return t.toggle_stream()},"streams.length > 1 && currentstream":function(t){return 1<t.streams.length&&t.currentstream},"string('change-resolution')":function(t){return t.string("change-resolution")},currentstream_label:function(t){return t.currentstream_label},"show_airplay_devices()":function(t){return t.show_airplay_devices()},cssplayer:function(t){return t.cssplayer},airplaybuttonvisible:function(t){return t.airplaybuttonvisible},castbuttonvisble:function(t){return t.castbuttonvisble},"toggle_settings_menu()":function(t){return t.toggle_settings_menu()},"settingsmenuactive ? 'visible' : 'hidden'":function(t){return t.settingsmenuactive?"visible":"hidden"},settingsmenubutton:function(t){return t.settingsmenubutton},"string('settings')":function(t){return t.string("settings")},"trim()":function(t){return t.trim()},"string('trim-video')":function(t){return t.string("trim-video")},frameselectionmode:function(t){return t.frameselectionmode},"select_frame()":function(t){return t.select_frame()},"string('select-frame')":function(t){return t.string("select-frame")},"toggle_tracks()":function(t){return t.toggle_tracks()},"(tracktags.length > 0 && showsubtitlebutton) || allowtexttrackupload":function(t){return 0<t.tracktags.length&&t.showsubtitlebutton||t.allowtexttrackupload},"tracktextvisible ? 'active' : 'inactive'":function(t){return t.tracktextvisible?"active":"inactive"},"tracktextvisible ? string('close-tracks') : string('show-tracks')":function(t){return t.tracktextvisible?t.string("close-tracks"):t.string("show-tracks")},"hover_cc(true)":function(t){return t.hover_cc(!0)},"hover_cc(false)":function(t){return t.hover_cc(!1)}}),n.registerFunctions({"play()":function(t){return t.play()},"tab_index_move(domEvent, null, 'player-toggle-overlay')":function(t){return t.tab_index_move(t.domEvent,null,"player-toggle-overlay")},cssplayer:function(t){return t.cssplayer},"string('tooltip')":function(t){return t.string("tooltip")},"showduration && (duration != 0 && duration != undefined)":function(t){return t.showduration&&0!=t.duration&&t.duration!=undefined},css:function(t){return t.css},"formatTime(duration)":function(t){return t.formatTime(t.duration)},"rerecordable || submittable":function(t){return t.rerecordable||t.submittable},"submittable && !trimmingmode":function(t){return t.submittable&&!t.trimmingmode},"submit()":function(t){return t.submit()},"string('submit-video')":function(t){return t.string("submit-video")},"rerecordable && !trimmingmode":function(t){return t.rerecordable&&!t.trimmingmode},"rerecord()":function(t){return t.rerecord()},"string('rerecord')":function(t){return t.string("rerecord")},trimmingmode:function(t){return t.trimmingmode},"string('trim')":function(t){return t.string("trim")},"skip()":function(t){return t.skip()},"string('skip')":function(t){return t.string("skip")}}),{minimalist:{css:"ba-videoplayer",csstheme:"ba-player-minimalist-theme",cssplayer:"ba-player",tmplcontrolbar:'<div class="{{csstheme}}-dashboard {{activitydelta > hidebarafter && hideoninactivity ? (cssplayer + \'-dashboard-hidden\') : \'\'}}">\n\n    <div class=\'{{csstheme}}-controlbar-header\'>\n        <div class="{{csstheme}}-controlbar-header-icons-block">\n\n            <div class="{{csstheme}}-right-block">\n\n                <div tabindex="1" data-selector="button-icon-resize-full"\n                     ba-hotkey:space^enter="{{toggle_fullscreen()}}" onmouseout="this.blur()"\n                     onkeydown="{{tab_index_move(domEvent)}}"\n                     class="{{csstheme}}-button-container"\n                     ba-if="{{fullscreen}}" ba-click="{{toggle_fullscreen()}}" title="{{ fullscreened ? string(\'exit-fullscreen-video\') : string(\'fullscreen-video\') }}"\n                >\n                    <div class="{{csstheme}}-button-inner {{csstheme}}-full-screen-btn-inner">\n                        <i class="{{csscommon}}-icon-resize-{{fullscreened ? \'small\' : \'full\'}}"></i>\n                    </div>\n                </div>\n\n                <div tabindex="2" data-selector="button-icon-volume"\n                     ba-hotkey:space^enter="{{toggle_volume()}}" onmouseout="this.blur()"\n                     class="{{csstheme}}-button-container" ba-click="{{toggle_volume()}}" title="{{string(volume > 0 ? \'volume-mute\' : \'volume-unmute\')}}"\n                >\n                    <div class="{{csstheme}}-button-inner">\n                        <i class="{{csscommon + \'-icon-volume-\' + (volume >= 0.5 ? \'up\' : (volume > 0 ? \'down\' : \'off\')) }}"></i>\n                    </div>\n                </div>\n\n                <div class="{{csstheme}}-volumebar" ba-show="{{!hidevolumebar}}">\n                    <div tabindex="3" data-selector="button-volume-bar"\n                         ba-hotkey:right="{{set_volume(volume + 0.1)}}"\n                         ba-hotkey:left="{{set_volume(volume - 0.1)}}"\n                         onmouseout="this.blur()"\n                         class="{{csstheme}}-volumebar-inner"\n                         ontouchstart="{{startUpdateVolume(domEvent)}}"\n                         ontouchmove="{{progressUpdateVolume(domEvent)}}"\n                         ontouchend="{{stopUpdateVolume(domEvent); this.blur()}};"\n                         onmousedown="{{startUpdateVolume(domEvent)}}"\n                         onmouseup="{{stopUpdateVolume(domEvent)}}"\n                         onmouseleave="{{stopUpdateVolume(domEvent)}}"\n                         onmousemove="{{progressUpdateVolume(domEvent)}}"\n                    >\n                        <div class="{{csstheme}}-volumebar-position" ba-styles="{{{width: Math.ceil(1+Math.min(99, Math.round(volume * 100))) + \'%\'}}}" title="{{string(\'volume-button\')}}"></div>\n                    </div>\n                </div>\n\n            </div>\n\n        </div>\n\n\n        <div class="{{csstheme}}-controlbar-header-title-block" ba-if="{{title}}">\n            <div class="{{csstheme}}-title"><p>{{title}}</p></div>\n        </div>\n    </div>\n\n    <div class="{{csstheme}}-controlbar-footer">\n\n        <div class="{{csstheme}}-controlbar-top-block">\n\n            <div tabindex="0" data-selector="submit-video-button"\n                 ba-hotkey:space^enter="{{submit()}}" onmouseout="this.blur()"\n                 class="{{csstheme}}-button-container" ba-if="{{submittable}}"  ba-click="{{submit()}}"\n            >\n                <div class="{{csstheme}}-button-inner">\n                    {{string(\'submit-video\')}}\n                </div>\n            </div>\n\n            <div tabindex="{{skipinitial ? 0 : -1}}" data-selector="button-icon-play"\n                 ba-hotkey:space^enter="{{play()}}" onmouseout="this.blur()"\n                 onkeydown="{{tab_index_move(domEvent, null, \'button-icon-pause\')}}"\n                 class="{{csstheme}}-button-container" ba-if="{{!playing}}" ba-click="{{play()}}" title="{{string(\'play-video\')}}"\n            >\n                <div class="{{csstheme}}-button-inner">\n                    <i class="{{csscommon}}-icon-play"></i>\n                </div>\n            </div>\n\n            <div tabindex="{{skipinitial ? 0 : -1}}" data-selector="button-icon-pause"\n                 ba-hotkey:space^enter="{{pause()}}" onmouseout="this.blur()"\n                 onkeydown="{{tab_index_move(domEvent, null, \'button-icon-play\')}}"\n                 class="{{csstheme}}-button-container {{disablepause ? cssplayer + \'-disabled\' : \'\'}}"\n                 ba-if="{{playing}}" ba-click="{{pause()}}" title="{{disablepause ? string(\'pause-video-disabled\') : string(\'pause-video\')}}"\n            >\n                <div class="{{csstheme}}-button-inner">\n                    <i tabindex="0" class="{{csscommon}}-icon-pause"></i>\n                </div>\n            </div>\n\n        </div>\n        <div class="{{csstheme}}-controlbar-middle-block">\n\n            <div class="{{csstheme}}-progressbar {{disableseeking ? cssplayer + \'-disabled\' : \'\'}}">\n                <div tabindex="4" data-selector="progress-bar-inner"\n                     ba-hotkey:right="{{seek(position + skipseconds)}}"\n                     ba-hotkey:left="{{seek(position - skipseconds)}}"\n                     onmouseout="this.blur()"\n                     class="{{csstheme}}-progressbar-inner"\n                     ontouchstart="{{startUpdatePosition(domEvent)}}"\n                     onmousedown="{{startUpdatePosition(domEvent)}}"\n                >\n\n                    <div class="{{csstheme}}-progressbar-cache" ba-styles="{{{width: Math.round(duration ? cached / duration * 100 : 0) + \'%\'}}}"></div>\n                    <div class="{{csstheme}}-progressbar-position" ba-styles="{{{width: Math.round(duration ? position / duration * 100 : 0) + \'%\'}}}" title="{{string(\'video-progress\')}}">\n                        <div class="{{csstheme}}-progressbar-button"></div>\n                    </div>\n                    <div class="{{csstheme}}-progressbar-marker"\n                        data-selector="trim-start-marker"\n                        ba-if="{{trimmingmode}}"\n                        ba-styles="{{{left: Math.round(duration && trimstart ? trimstart / duration * 100 : 0) + \'%\'}}}"\n                    ></div>\n                    <div class="{{csstheme}}-progressbar-marker"\n                        data-selector="trim-end-marker"\n                        ba-if="{{trimmingmode}}"\n                        ba-styles="{{{left: \'auto\', right: 100 - Math.round(duration && trimend ? trimend / duration * 100 : 100) + \'%\'}}}"\n                    ></div>\n                </div>\n            </div>\n\n        </div>\n        <div class="{{csstheme}}-controlbar-bottom-block">\n            <div tabindex="0" data-selector="button-icon-ccw"\n                 ba-hotkey:space^enter="{{rerecord()}}" onmouseout="this.blur()"\n                 class="{{csstheme}}-button-container {{csstheme}}-player-rerecord"\n                 ba-if="{{rerecordable}}" ba-click="{{rerecord()}}" title="{{string(\'rerecord-video\')}}"\n            >\n                <div class="{{csstheme}}-button-inner">\n                    <i class="{{csscommon}}-icon-ccw"></i>\n                </div>\n            </div>\n\n            <div class="{{csstheme}}-button-container {{csstheme}}-time-container {{csscommon}}-clickable"\n                 ba-click="{{toggle_position_info()}}"\n            >\n                <div class="{{csstheme}}-time-value"\n                     title="{{revertposition ? string(\'remaining-time\') : string(\'elapsed-time\')}}"\n                >\n                    {{(revertposition && duration > 0) ? "-" : ""}}\n                    {{(revertposition && duration > 0) ? formatTime(duration - position) : formatTime(position)}}\n                </div>\n                <p> / </p>\n                <div class="{{csstheme}}-time-value" title="{{string(\'total-time\')}}">{{formatTime(duration || position)}}</div>\n            </div>\n\n            <div tabindex="5" data-selector="button-stream-label"\n                 ba-hotkey:space^enter="{{toggle_stream()}}" onmouseout="this.blur()"\n                 class="{{csstheme}}-button-container" ba-if="{{streams.length > 1 && currentstream}}"\n                 ba-click="{{toggle_stream()}}" title="{{string(\'change-resolution\')}}"\n            >\n                <div class="{{csstheme}}-button-inner {{csstheme}}-stream-label-container">\n                    <span class="{{csstheme}}-button-text {{csstheme}}-stream-label">{{currentstream_label}}</span>\n                </div>\n            </div>\n            <div tabindex="6" data-selector="button-airplay"\n                 ba-hotkey:space^enter="{{show_airplay_devices()}}" onmouseout="this.blur()"\n                 class="{{csstheme}}-button-container {{cssplayer}}-airplay-container"\n                 ba-show="{{airplaybuttonvisible}}" ba-click="{{show_airplay_devices()}}"\n            >\n                <svg width="16px" height="11px" viewBox="0 0 16 11" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">\n                    \n                    <title>Airplay</title>\n                    <desc>Airplay icon.</desc>\n                    <defs></defs>\n                    <g stroke="none" stroke-width="1" fill-rule="evenodd" sketch:type="MSPage">\n                        <path d="M4,11 L12,11 L8,7 L4,11 Z M14.5454545,0 L1.45454545,0 C0.654545455,0 0,0.5625 0,1.25 L0,8.75 C0,9.4375 0.654545455,10 1.45454545,10 L4.36363636,10 L4.36363636,8.75 L1.45454545,8.75 L1.45454545,1.25 L14.5454545,1.25 L14.5454545,8.75 L11.6363636,8.75 L11.6363636,10 L14.5454545,10 C15.3454545,10 16,9.4375 16,8.75 L16,1.25 C16,0.5625 15.3454545,0 14.5454545,0 L14.5454545,0 Z" sketch:type="MSShapeGroup"></path>\n                    </g>\n                </svg>\n            </div>\n\n            <div tabindex="7" data-selector="button-chromecast" onmouseout="this.blur()" class="{{csstheme}}-button-container {{csstheme}}-cast-button-container" ba-show="{{castbuttonvisble}}">\n                <button class="{{csstheme}}-gcast-button" is="google-cast-button"></button>\n            </div>\n\n            <div tabindex="10" data-selector="button-icon-settings"\n                 ba-hotkey:space^enter="{{toggle_settings_menu()}}" onmouseout="this.blur()"\n                 class="{{csstheme}}-right-button-container {{cssplayer}}-settings-{{settingsmenuactive ? \'visible\' : \'hidden\'}}"\n                 ba-if="{{settingsmenubutton}}" ba-click="{{toggle_settings_menu()}}"\n                 title="{{string(\'settings\')}}"\n                 onkeydown="{{tab_index_move(domEvent)}}"\n            >\n                <div class="{{csstheme}}-settings-button">\n                    <i class="{{csscommon}}-icon-cog"></i>\n                </div>\n            </div>\n\n            <div tabindex="9" class="{{csstheme}}-primary-button-container {{csstheme}}-right-button-container" ba-if="{{trimmingmode}}">\n                <div data-selector="trim-button"\n                     onmouseout="this.blur()"\n                     ba-click="{{trim()}}"\n                     class="{{csstheme}}-primary-button {{csstheme}}-button-inner">\n                     {{string(\'trim-video\')}}\n                </div>\n            </div>\n\n            <div tabindex="9" class="{{csstheme}}-primary-button-container {{csstheme}}-right-button-container" ba-if="{{frameselectionmode}}">\n                <div data-selector="select-frame-button"\n                     onmouseout="this.blur()"\n                     ba-click="{{select_frame()}}"\n                     class="{{csstheme}}-primary-button {{csstheme}}-button-inner">\n                     {{string(\'select-frame\')}}\n                </div>\n            </div>\n\n            <div tabindex="8" data-selector="cc-button-container"\n                 ba-hotkey:space^enter="{{toggle_tracks()}}" onmouseout="this.blur()"\n                 ba-if="{{(tracktags.length > 0 && showsubtitlebutton) || allowtexttrackupload}}"\n                 ba-click="{{toggle_tracks()}}"\n                 class="{{csstheme}}-right-button-container {{cssplayer}}-button-{{tracktextvisible ? \'active\' : \'inactive\'}}"\n                 title="{{ tracktextvisible ? string(\'close-tracks\') : string(\'show-tracks\')}}"\n                 onmouseover="{{hover_cc(true)}}" onmouseleave="{{hover_cc(false)}}"\n            >\n                <div class="{{csstheme}}-subtitle-button-inner">\n                    <i class="{{csscommon}}-icon-subtitle"></i>\n                </div>\n            </div>\n\n\n        </div>\n    </div>\n\n</div>\n',tmplplaybutton:'\n<div tabindex="0" data-selector="play-button"\n     ba-hotkey:space^enter="{{play()}}" onmouseout="this.blur()"\n     onkeydown="{{tab_index_move(domEvent, null, \'player-toggle-overlay\')}}"\n     class="{{cssplayer}}-playbutton-container" ba-click="{{play()}}" title="{{string(\'tooltip\')}}"\n>\n\t<div class="{{cssplayer}}-playbutton-button"></div>\n</div>\n<div ba-show="{{showduration && (duration != 0 && duration != undefined)}}" class="{{css}}-playbutton-duration">\n    {{formatTime(duration)}}\n</div>\n\n<div class="{{cssplayer}}-rerecord-bar" ba-if="{{rerecordable || submittable}}">\n\t<div class="{{cssplayer}}-rerecord-backbar"></div>\n\t<div class="{{cssplayer}}-rerecord-frontbar">\n        <div class="{{cssplayer}}-rerecord-button-container" ba-if="{{submittable && !trimmingmode}}">\n            <div tabindex="0" data-selector="player-submit-button"\n                 ba-hotkey:space^enter="{{submit()}}" onmouseout="this.blur()"\n                 class="{{cssplayer}}-rerecord-button" onclick="{{submit()}}">\n                {{string(\'submit-video\')}}\n            </div>\n        </div>\n        <div class="{{cssplayer}}-rerecord-button-container" ba-if="{{rerecordable && !trimmingmode}}">\n        \t<div tabindex="0" data-selector="player-rerecord-button"\n                 ba-hotkey:space^enter="{{rerecord()}}" onmouseout="this.blur()"\n                 class="{{cssplayer}}-rerecord-button" onclick="{{rerecord()}}">\n        \t\t{{string(\'rerecord\')}}\n        \t</div>\n        </div>\n        <div class="{{cssplayer}}-rerecord-button-container" ba-if="{{trimmingmode}}">\n        \t<div tabindex="0" data-selector="player-trim-button"\n                 ba-hotkey:space^enter="{{play()}}" onmouseout="this.blur()"\n                 class="{{cssplayer}}-rerecord-button" onclick="{{play()}}">\n        \t\t{{string(\'trim\')}}\n        \t</div>\n        </div>\n        <div class="{{cssplayer}}-rerecord-button-container" ba-if="{{trimmingmode}}">\n        \t<div tabindex="0" data-selector="player-skip-button"\n                 ba-hotkey:space^enter="{{skip()}}" onmouseout="this.blur()"\n                 class="{{cssplayer}}-rerecord-button" onclick="{{skip()}}">\n        \t\t{{string(\'skip\')}}\n        \t</div>\n        </div>\n\t</div>\n</div>\n',cssloader:e?"ba-videoplayer":"",cssmessage:"ba-videoplayer",cssplaybutton:e?"ba-videoplayer":""}}}),t.extend("module:Assets.recorderthemes",["dynamics:Parser"],function(t){return t.registerFunctions({css:function(t){return t.css},topmessage:function(t){return t.topmessage}}),t.registerFunctions({csstheme:function(t){return t.csstheme},css:function(t){return t.css},"stopvisible && recordingindication":function(t){return t.stopvisible&&t.recordingindication},settingsvisible:function(t){return t.settingsvisible},ismobile:function(t){return t.ismobile},"toggleFaceMode()":function(t){return t.toggleFaceMode()},"hover(string('switch-camera'))":function(t){return t.hover(t.string("switch-camera"))},csscommon:function(t){return t.csscommon},settingsopen:function(t){return t.settingsopen},videoselectnotification:function(t){return t.videoselectnotification},"string('add-stream')":function(t){return t.string("add-stream")},"showaddstreambutton && firefox && allowscreen":function(t){return t.showaddstreambutton&&t.firefox&&t.allowscreen},"addNewStream()":function(t){return t.addNewStream()},"hover(string('add-stream'))":function(t){return t.hover(t.string("add-stream"))},"showaddstreambutton && !firefox":function(t){return t.showaddstreambutton&&!t.firefox},cameras:function(t){return t.cameras},"(camera.id !== selectedcamera) || allowscreen":function(t){return t.camera.id!==t.selectedcamera||t.allowscreen},"addNewStream(camera.id)":function(t){return t.addNewStream(t.camera.id)},"camera.label":function(t){return t.camera.label},"(showaddstreambutton && !firefox) || (firefox && allowscreen)":function(t){return t.showaddstreambutton&&!t.firefox||t.firefox&&t.allowscreen},"!novideo && !allowscreen && !ismobile":function(t){return!t.novideo&&!t.allowscreen&&!t.ismobile},"hover(string('select-camera'))":function(t){return t.hover(t.string("select-camera"))},"selectedcamera == camera.id":function(t){return t.selectedcamera==t.camera.id},"selectCamera(camera.id)":function(t){return t.selectCamera(t.camera.id)},"(!noaudio && !novideo) || !allowscreen":function(t){return!t.noaudio&&!t.novideo||!t.allowscreen},microphones:function(t){return t.microphones},"!noaudio && !allowscreen":function(t){return!t.noaudio&&!t.allowscreen},"selectMicrophone(microphone.id)":function(t){return t.selectMicrophone(t.microphone.id)},"hover(string('select-audio-input'))":function(t){return t.hover(t.string("select-audio-input"))},"selectedmicrophone == microphone.id":function(t){return t.selectedmicrophone==t.microphone.id},"microphone.label":function(t){return t.microphone.label},"settingsopen=!settingsopen":function(t){return t.settingsopen=!t.settingsopen},"settingsopen ? 'selected' : 'unselected'":function(t){return t.settingsopen?"selected":"unselected"},"hover(string('settings'))":function(t){return t.hover(t.string("settings"))},"unhover()":function(t){return t.unhover()},"hover(string(microphonehealthy ? 'microphonehealthy' : 'microphoneunhealthy'))":function(t){return t.hover(t.string(t.microphonehealthy?"microphonehealthy":"microphoneunhealthy"))},"microphonehealthy ? 'good' : 'bad'":function(t){return t.microphonehealthy?"good":"bad"},"!novideo && !allowscreen":function(t){return!t.novideo&&!t.allowscreen},"hover(string(camerahealthy ? 'camerahealthy' : 'cameraunhealthy'))":function(t){return t.hover(t.string(t.camerahealthy?"camerahealthy":"cameraunhealthy"))},"camerahealthy ? 'good' : 'bad'":function(t){return t.camerahealthy?"good":"bad"},stopvisible:function(t){return t.stopvisible},controlbarlabel:function(t){return t.controlbarlabel},rerecordvisible:function(t){return t.rerecordvisible},"rerecord()":function(t){return t.rerecord()},"hover(string('rerecord-tooltip'))":function(t){return t.hover(t.string("rerecord-tooltip"))},"string('rerecord')":function(t){return t.string("rerecord")},cancelvisible:function(t){return t.cancelvisible},"cancel()":function(t){return t.cancel()},"hover(string('cancel-tooltip'))":function(t){return t.hover(t.string("cancel-tooltip"))},"string('cancel')":function(t){return t.string("cancel")},recordvisible:function(t){return t.recordvisible},"record()":function(t){return t.record()},"hover(string('record-tooltip'))":function(t){return t.hover(t.string("record-tooltip"))},"string('record')":function(t){return t.string("record")},"stop()":function(t){return t.stop()},"mintimeindicator ? css + '-disabled': ''":function(t){return t.mintimeindicator?t.css+"-disabled":""},"mintimeindicator ? string('stop-available-after').replace('%d', timeminlimit) : string('stop-tooltip')":function(t){return t.mintimeindicator?t.string("stop-available-after").replace("%d",t.timeminlimit):t.string("stop-tooltip")},"hover(mintimeindicator ? string('stop-available-after').replace('%d', timeminlimit) : string('stop-tooltip'))":function(t){return t.hover(t.mintimeindicator?t.string("stop-available-after").replace("%d",t.timeminlimit):t.string("stop-tooltip"))},"string('stop')":function(t){return t.string("stop")},"pausable && !resumevisible":function(t){return t.pausable&&!t.resumevisible},"string('pause-recorder')":function(t){return t.string("pause-recorder")},"pause()":function(t){return t.pause()},"hover(string('pause-recorder'))":function(t){return t.hover(t.string("pause-recorder"))},"pausable && resumevisible":function(t){return t.pausable&&t.resumevisible},"resume()":function(t){return t.resume()},"string('resume-recorder')":function(t){return t.string("resume-recorder")},"hover(string('resume-recorder'))":function(t){return t.hover(t.string("resume-recorder"))},skipvisible:function(t){return t.skipvisible},"skip()":function(t){return t.skip()},"hover(string('skip-tooltip'))":function(t){return t.hover(t.string("skip-tooltip"))},"string('skip')":function(t){return t.string("skip")},uploadcovershotvisible:function(t){return t.uploadcovershotvisible},"hover(string('upload-covershot-tooltip'))":function(t){return t.hover(t.string("upload-covershot-tooltip"))},"uploadCovershot(domEvent)":function(t){return t.uploadCovershot(t.domEvent)},covershot_accept_string:function(t){return t.covershot_accept_string},"string('upload-covershot')":function(t){return t.string("upload-covershot")}}),t.registerFunctions({showslidercontainer:function(t){return t.showslidercontainer},css:function(t){return t.css},"left()":function(t){return t.left()},csscommon:function(t){return t.csscommon},images:function(t){return t.images},"select(image)":function(t){return t.select(t.image)},"{left: image.left + 'px', top: image.top + 'px', width: image.width + 'px', height: image.height + 'px'}":function(t){return{left:t.image.left+"px",top:t.image.top+"px",width:t.image.width+"px",height:t.image.height+"px"}},"right()":function(t){return t.right()},"!showslidercontainer":function(t){return!t.showslidercontainer},covershot_accept_string:function(t){return t.covershot_accept_string},"uploadCovershot(domEvent)":function(t){return t.uploadCovershot(t.domEvent)},"string('upload-covershot')":function(t){return t.string("upload-covershot")}}),t.registerFunctions({css:function(t){return t.css},"initialmessages.length > 0":function(t){return 0<t.initialmessages.length},csscommon:function(t){return t.csscommon},initialmessages:function(t){return t.initialmessages},"initialmessage.message":function(t){return t.initialmessage.message},"initialmessage.type ? initialmessage.type : 'default'":function(t){return t.initialmessage.type?t.initialmessage.type:"default"},"initialmessage.id":function(t){return t.initialmessage.id},actions:function(t){return t.actions},"click_action(action)":function(t){return t.click_action(t.action)},"action.index":function(t){return t.action.index},"action.select && action.capture":function(t){return t.action.select&&t.action.capture},"select_file_action(action, domEvent)":function(t){return t.select_file_action(t.action,t.domEvent)},"action.accept":function(t){return t.action.accept},"action.switchcamera":function(t){return t.action.switchcamera},"action.select && !action.capture":function(t){return t.action.select&&!t.action.capture},"action.label":function(t){return t.action.label},"action.icon":function(t){return t.action.icon}}),t.registerFunctions({cssrecorder:function(t){return t.cssrecorder},"click()":function(t){return t.click()},"shortMessage ? 'short-message' : 'long-message'":function(t){return t.shortMessage?"short-message":"long-message"},'message || ""':function(t){return t.message||""},"links && links.length > 0":function(t){return t.links&&0<t.links.length},links:function(t){return t.links},"linkClick(link)":function(t){return t.linkClick(t.link)},"link.title":function(t){return t.link.title}}),{minimalist:{css:"ba-videorecorder",csstheme:"ba-recorder-theme-minimalist",cssrecorder:"ba-recorder",cssmessage:"ba-videorecorder",cssloader:"ba-videorecorder",tmpltopmessage:'<div data-selector="recorder-topmessage-block" class="{{css}}-topmessage-container">\n    <div class=\'{{css}}-topmessage-message\'>\n        {{topmessage}}\n    </div>\n</div>',tmplcontrolbar:'<div class="{{csstheme}}-dashboard">\n\n\t\n\t<div class="{{css}}-settings-left-sidebar">\n\n\t\t<div class="{{css}}-controlbar-left-section">\n\n\t\t\t<div class="{{css}}-indicator-container" ba-show="{{stopvisible && recordingindication}}">\n\t\t\t\t<div data-selector="recording-indicator" class="{{css}}-recording-indication"></div>\n\t\t\t</div>\n\n            <div ba-show="{{settingsvisible}}">\n\n\t\t\t\t\n\t\t\t\t<div data-selector="recorder-settings" class="{{css}}-settings {{css}}-settings-button-container">\n\n\t\t\t\t\t<div class="{{css}}-circle-button" ba-show="{{ismobile}}">\n\t\t\t\t\t\t<div data-selector="face-mode-toggle-icon"\n\t\t\t\t\t\t\t class="{{css}}-mobile-camera-switcher {{css}}-button-inner {{css}}-button-circle-unselected"\n\t\t\t\t\t\t\t onclick="{{toggleFaceMode()}}"\n\t\t\t\t\t\t\t onmouseenter="{{hover(string(\'switch-camera\'))}}"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<i class="{{csscommon}}-icon-arrows-cw"></i>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div data-selector="settings-list-front" class="{{css}}-circle-button" ba-show="{{settingsvisible}}">\n\n\t\t\t\t\t\t<div class="{{css}}-bubble-info-container" ba-show="{{settingsopen}}">\n\t\t\t\t\t\t\t<div class="{{css}}-bubble-info">\n\t\t\t\t\t\t\t\t<ul data-selector="add-new-stream" ba-if="{{videoselectnotification}}">\n\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t\t<div data-selector="single-camera-stream">\n\t\t\t\t\t\t\t\t\t\t\t<i class="ba-commoncss-icon-plus"></i> {{string(\'add-stream\')}}\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t\t<div data-selector="single-camera-stream" class="{{csscommon}}-text-error">\n\t\t\t\t\t\t\t\t\t\t\t{{videoselectnotification}}\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t</ul>\n\n\t\t\t\t\t\t\t\t<ul data-selector="add-new-stream" ba-show="{{showaddstreambutton && firefox && allowscreen}}">\n\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t\t<div data-selector="single-camera-stream"\n\t\t\t\t\t\t\t\t\t\t\t class="{{css}}-add-stream"\n\t\t\t\t\t\t\t\t\t\t\t onclick="{{addNewStream()}}"\n\t\t\t\t\t\t\t\t\t\t\t onmouseenter="{{hover(string(\'add-stream\'))}}"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<i class="{{csscommon}}-icon-plus"></i> {{string(\'add-stream\')}}\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t</ul>\n\n\t\t\t\t\t\t\t\t<ul data-selector="add-new-stream" ba-show="{{showaddstreambutton && !firefox}}" ba-repeat="{{camera :: cameras}}">\n\t\t\t\t\t\t\t\t\t<li ba-show="{{(camera.id !== selectedcamera) || allowscreen}}">\n\t\t\t\t\t\t\t\t\t\t<div data-selector="single-camera-stream"\n\t\t\t\t\t\t\t\t\t\t\t class="{{css}}-add-stream"\n\t\t\t\t\t\t\t\t\t\t\t onclick="{{addNewStream(camera.id)}}"\n\t\t\t\t\t\t\t\t\t\t\t onmouseenter="{{hover(string(\'add-stream\'))}}"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<i class="{{csscommon}}-icon-plus"></i> {{camera.label}}\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</li>\n\n\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t<hr ba-show="{{(showaddstreambutton && !firefox) || (firefox && allowscreen)}}"/>\n\n\t\t\t\t\t\t\t\t<ul data-selector="camera-settings" ba-repeat="{{camera :: cameras}}" ba-show="{{!novideo && !allowscreen && !ismobile}}">\n\t\t\t\t\t\t\t\t\t<li onmouseenter="{{hover(string(\'select-camera\'))}}">\n\t\t\t\t\t\t\t\t\t\t<input tabindex="0" onmouseout="this.blur()"\n\t\t\t\t\t\t\t\t\t\t\t   type=\'radio\' name=\'camera\' value="{{selectedcamera == camera.id}}" onclick="{{selectCamera(camera.id)}}"\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t<span></span>\n\t\t\t\t\t\t\t\t\t\t<label tabindex="0" onmouseout="this.blur()" onclick="{{selectCamera(camera.id)}}">\n\t\t\t\t\t\t\t\t\t\t\t{{camera.label}}\n\t\t\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t<hr ba-show="{{(!noaudio && !novideo) || !allowscreen}}"/>\n\t\t\t\t\t\t\t\t<ul data-selector="microphone-settings" ba-repeat="{{microphone :: microphones}}" ba-show="{{!noaudio && !allowscreen}}">\n\t\t\t\t\t\t\t\t\t<li tabindex="0"\n\t\t\t\t\t\t\t\t\t\tba-hotkey:space^enter="{{selectMicrophone(microphone.id)}}" onmouseout="this.blur()"\n\t\t\t\t\t\t\t\t\t\tonmouseenter="{{hover(string(\'select-audio-input\'))}}"\n\t\t\t\t\t\t\t\t\t\tonclick="{{selectMicrophone(microphone.id)}}"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<input type=\'radio\' name=\'microphone\' value="{{selectedmicrophone == microphone.id}}" />\n\t\t\t\t\t\t\t\t\t\t<span></span>\n\t\t\t\t\t\t\t\t\t\t<label>\n\t\t\t\t\t\t\t\t\t\t\t{{microphone.label}}\n\t\t\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div tabindex="0"\n\t\t\t\t\t\t\t ba-hotkey:space^enter="{{settingsopen=!settingsopen}}" onmouseout="this.blur()"\n\t\t\t\t\t\t\t data-selector="record-button-icon-cog"\n\t\t\t\t\t\t\t class="{{css}}-button-inner {{css}}-button-circle-{{settingsopen ? \'selected\' : \'unselected\' }}"\n\t\t\t\t\t\t\t onclick="{{settingsopen=!settingsopen}}"\n\t\t\t\t\t\t\t onmouseenter="{{hover(string(\'settings\'))}}"\n\t\t\t\t\t\t\t onmouseleave="{{unhover()}}"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<i class="{{csscommon}}-icon-cog"></i>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div class="{{css}}-circle-button" ba-show="{{!noaudio && !allowscreen}}">\n\t\t\t\t\t\t<div data-selector="record-button-icon-mic" class="{{css}}-button-inner"\n\t\t\t\t\t\t\t onmouseenter="{{hover(string(microphonehealthy ? \'microphonehealthy\' : \'microphoneunhealthy\'))}}"\n\t\t\t\t\t\t\t onmouseleave="{{unhover()}}">\n\t\t\t\t\t\t\t<i class="{{csscommon}}-icon-mic {{csscommon}}-icon-state-{{microphonehealthy ? \'good\' : \'bad\' }}"></i>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div class="{{css}}-circle-button" ba-show="{{!novideo && !allowscreen}}">\n\t\t\t\t\t\t<div data-selector="record-button-icon-videocam" class="{{css}}-button-inner"\n\t\t\t\t\t\t\t onmouseenter="{{hover(string(camerahealthy ? \'camerahealthy\' : \'cameraunhealthy\'))}}"\n\t\t\t\t\t\t\t onmouseleave="{{unhover()}}">\n\t\t\t\t\t\t\t<i class="{{csscommon}}-icon-videocam {{csscommon}}-icon-state-{{ camerahealthy ? \'good\' : \'bad\' }}"></i>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\n\t\t\t\t</div>\n\n\t\t\t</div>\n\t\t</div>\n\n\t</div>\n\n\t<div class="{{css}}-controlbar-middle-section">\n\n\t\t<div class="{{css}}-timer-container" ba-show="{{stopvisible}}">\n\t\t\t<div class="{{css}}-label-container" ba-show="{{controlbarlabel}}">\n\t\t\t\t<div data-selector="record-label-block" class="{{css}}-label {{css}}-button-primary">\n\t\t\t\t\t{{controlbarlabel}}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\n\t</div>\n\n\t\n\t<div data-selector="controlbar" class="{{css}}-controlbar">\n\n\t\t<div class="{{css}}-controlbar-center-section">\n\n\t\t\t<div class="{{css}}-button-container" ba-show="{{rerecordvisible}}">\n\t\t\t\t<div tabindex="0"\n\t\t\t\t\t ba-hotkey:space^enter="{{rerecord()}}" onmouseout="this.blur()"\n\t\t\t\t\t data-selector="rerecord-primary-button" class="{{css}}-button-primary"\n\t\t\t\t\t onclick="{{rerecord()}}"\n\t\t\t\t\t onmouseenter="{{hover(string(\'rerecord-tooltip\'))}}"\n\t\t\t\t\t onmouseleave="{{unhover()}}"\n\t\t\t\t>\n\t\t\t\t\t{{string(\'rerecord\')}}\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class="{{css}}-button-container" ba-show="{{cancelvisible}}">\n\t\t\t\t<div tabindex="0"\n\t\t\t\t\t ba-hotkey:space^enter="{{cancel()}}" onmouseout="this.blur()"\n\t\t\t\t\t data-selector="cancel-primary-button" class="{{css}}-button-primary"\n\t\t\t\t\t onclick="{{cancel()}}"\n\t\t\t\t\t onmouseenter="{{hover(string(\'cancel-tooltip\'))}}"\n\t\t\t\t\t onmouseleave="{{unhover()}}"\n\t\t\t\t>\n\t\t\t\t\t{{string(\'cancel\')}}\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class="{{css}}-primary-button-container" ba-show="{{recordvisible}}">\n\t\t\t\t<div tabindex="0"\n\t\t\t\t\t ba-hotkey:space^enter="{{record()}}" onmouseout="this.blur()"\n\t\t\t\t\t data-selector="record-primary-button" class="{{css}}-button-primary"\n\t\t\t\t\t onclick="{{record()}}"\n\t\t\t\t\t onmouseenter="{{hover(string(\'record-tooltip\'))}}"\n\t\t\t\t\t onmouseleave="{{unhover()}}"\n\t\t\t\t>\n\t\t\t\t\t{{string(\'record\')}}\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t</div>\n\n\t\t<div class="{{css}}-stop-container" ba-show="{{stopvisible}}">\n\n\t\t\t<div class="{{css}}-stop-button-container">\n\t\t\t\t<div tabindex="0"\n\t\t\t\t\t ba-hotkey:space^enter="{{stop()}}" onmouseout="this.blur()"\n\t\t\t\t\t data-selector="stop-primary-button" class="{{css}}-button-primary {{mintimeindicator ? css + \'-disabled\': \'\'}}"\n\t\t\t\t\t title="{{mintimeindicator ? string(\'stop-available-after\').replace(\'%d\', timeminlimit) : string(\'stop-tooltip\')}}"\n\t\t\t\t\t onclick="{{stop()}}"\n\t\t\t\t\t onmouseenter="{{hover(mintimeindicator ? string(\'stop-available-after\').replace(\'%d\', timeminlimit) : string(\'stop-tooltip\'))}}"\n\t\t\t\t\t onmouseleave="{{unhover()}}"\n\t\t\t\t>\n\t\t\t\t\t{{string(\'stop\')}}\n\t\t\t\t</div>\n\t\t\t\t<div tabindex="0" data-selector="pause-primary-button"  ba-show="{{pausable && !resumevisible}}"\n\t\t\t\t\t ba-hotkey:space^enter="{{stop()}}" onmouseout="this.blur()"\n\t\t\t\t\t data-selector="pause-primary-button" class="{{css}}-button-primary"\n\t\t\t\t\t title="{{string(\'pause-recorder\')}}"\n\t\t\t\t\t onclick="{{pause()}}"\n\t\t\t\t\t onmouseenter="{{hover(string(\'pause-recorder\'))}}"\n\t\t\t\t\t onmouseleave="{{unhover()}}"\n\t\t\t\t>\n\t\t\t\t\t<i class="{{csscommon}}-icon-pause"></i>\n\t\t\t\t</div>\n\n\t\t\t\t<div tabindex="0" data-selector="resume-primary-button"  ba-show="{{pausable && resumevisible}}"\n\t\t\t\t\t ba-hotkey:space^enter="{{resume()}}" onmouseout="this.blur()"\n\t\t\t\t\t data-selector="resume-primary-button" class="{{css}}-button-primary"\n\t\t\t\t\t title="{{string(\'resume-recorder\')}}"\n\t\t\t\t\t onclick="{{resume()}}"\n\t\t\t\t\t onmouseenter="{{hover(string(\'resume-recorder\'))}}"\n\t\t\t\t\t onmouseleave="{{unhover()}}"\n\t\t\t\t>\n\t\t\t\t\t<i class="{{csscommon}}-icon-ccw"></i>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\n        <div class="{{css}}-centerbutton-container" ba-show="{{skipvisible}}">\n            <div tabindex="0"\n\t\t\t\t ba-hotkey:space^enter="{{skip()}}" onmouseout="this.blur()"\n\t\t\t\t data-selector="skip-primary-button" class="{{css}}-button-primary"\n                 onclick="{{skip()}}"\n                 onmouseenter="{{hover(string(\'skip-tooltip\'))}}"\n                 onmouseleave="{{unhover()}}"\n\t\t\t>\n                {{string(\'skip\')}}\n            </div>\n        </div>\n\n\n        <div class="{{css}}-rightbutton-container" ba-if="{{uploadcovershotvisible}}">\n            <div data-selector="covershot-primary-button" class="{{css}}-button-primary"\n                 onmouseenter="{{hover(string(\'upload-covershot-tooltip\'))}}"\n                 onmouseleave="{{unhover()}}">\n                <input type="file"\n                       class="{{css}}-chooser-file"\n                       style="height:100px"\n                       onchange="{{uploadCovershot(domEvent)}}"\n                       accept="{{covershot_accept_string}}" />\n                <span>\n                    {{string(\'upload-covershot\')}}\n                </span>\n            </div>\n        </div>\n\n\t</div>\n\n</div>\n',tmplimagegallery:'<div ba-if="{{showslidercontainer}}" data-selector="image-gallery" class="{{css}}-image-gallery-container">\n\t<div data-selector="slider-left-button" class="{{css}}-imagegallery-leftbutton">\n\t\t<div tabindex="0" data-selector="slider-left-inner-button"\n\t\t\t ba-hotkey:space^enter^left="{{left()}}" onmouseout="this.blur()"\n\t\t\t class="{{css}}-imagegallery-button-inner" onclick="{{left()}}"\n\t\t>\n\t\t\t<i class="{{csscommon}}-icon-left-open"></i>\n\t\t</div>\n\t</div>\n\n\t<div data-selector="images-imagegallery-container" ba-repeat="{{image::images}}" class="{{css}}-imagegallery-container" data-gallery-container>\n\t\t<div tabindex="0" data-selector="imagegallery-selected-image"\n\t\t\t ba-hotkey:space^enter="{{select(image)}}" onmouseout="this.blur()"\n\t\t\t class="{{css}}-imagegallery-image"\n\t\t\t ba-styles="{{{left: image.left + \'px\', top: image.top + \'px\', width: image.width + \'px\', height: image.height + \'px\'}}}"\n\t\t\t onclick="{{select(image)}}"\n\t\t>\n\t\t</div>\n\t</div>\n\n\t<div data-selector="slider-right-button" class="{{css}}-imagegallery-rightbutton">\n\t\t<div tabindex="0" data-selector="slider-right-inner-button"\n\t\t\t ba-hotkey:space^enter^right="{{right()}}" onmouseout="this.blur()"\n\t\t\t class="{{css}}-imagegallery-button-inner"\n\t\t\t onclick="{{right()}}"\n\t\t>\n\t\t\t<i class="{{csscommon}}-icon-right-open"></i>\n\t\t</div>\n\t</div>\n</div>\n\n<div ba-if="{{!showslidercontainer}}" class="{{css}}-chooser-container">\n\t<div data-selector="covershot-primary-button" class="{{css}}-chooser-button-container">\n\t\t<div class="{{css}}-chooser-button-0">\n\t\t\t<input type="file"\n\t\t\t\t   tabindex="0"\n\t\t\t\t   class="{{css}}-chooser-file"\n\t\t\t\t   accept="{{covershot_accept_string}}"\n\t\t\t\t   onchange="{{uploadCovershot(domEvent)}}"\n\t\t\t/>\n\t\t\t<i class="{{csscommon}}-icon-picture"></i>\n\t\t\t<span>\n\t\t\t{{string(\'upload-covershot\')}}\n\t\t</span>\n\t\t</div>\n\t</div>\n</div>\n',tmplchooser:'<div class="{{css}}-chooser-container">\n\t<div ba-if="{{initialmessages.length > 0}}" class="{{csscommon}}-message-container">\n\t\t<ul ba-repeat="{{initialmessage :: initialmessages}}">\n\t\t\t<li ba-if="{{initialmessage.message}}"\n\t\t\t\tclass="{{csscommon}}-message-text {{csscommon}}-message-{{initialmessage.type ? initialmessage.type : \'default\'}}"\n\t\t\t>\n\t\t\t\t{{ initialmessage.message }}\n\t\t\t\t<span ba-if="{{initialmessage.id}}"\n\t\t\t\t\t  class="{{csscommon}}-action-button"\n\t\t\t\t\t  ba-click="close_message(initialmessage.id)"\n\t\t\t\t>\n\t\t\t\t\t<i class="{{csscommon}}-icon-cancel"></i>\n\t\t\t\t</span>\n\t\t\t</li>\n\t\t</ul>\n\t</div>\n\n\t<div class="{{css}}-chooser-button-container">\n\n\t\t<div ba-repeat="{{action :: actions}}">\n\t\t\t<div tabindex="0"\n\t\t\t\t ba-hotkey:space^enter="{{click_action(action)}}" onmouseout="this.blur()"\n\t\t\t\t class="{{css}}-chooser-button-{{action.index}}"\n\t\t\t\t ba-click="{{click_action(action)}}">\n\t\t\t\t<input ba-if="{{action.select && action.capture}}"\n\t\t\t\t\t   type="file"\n\t\t\t\t\t   class="{{css}}-chooser-file"\n\t\t\t\t\t   onchange="{{select_file_action(action, domEvent)}}"\n\t\t\t\t\t   accept="{{action.accept}}"\n\t\t\t\t\t   capture="{{action.switchcamera}}" />\n\t\t\t\t<input ba-if="{{action.select && !action.capture}}"\n\t\t\t\t\t   type="file"\n\t\t\t\t\t   class="{{css}}-chooser-file"\n\t\t\t\t\t   onchange="{{select_file_action(action, domEvent)}}"\n\t\t\t\t\t   accept="{{action.accept}}"\n\t\t\t\t/>\n\t\t\t\t<span>\n\t\t\t\t\t{{action.label}}\n\t\t\t\t</span>\n\t\t\t\t<i class="{{csscommon}}-icon-{{action.icon}}"\n\t\t\t\t   ba-if="{{action.icon}}"></i>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n',tmplmessage:'<div data-selector="recorder-message-container" class="{{cssrecorder}}-message-container" ba-click="{{click()}}">\n    <div class="{{cssrecorder}}-top-inner-message-container {{cssrecorder}}-{{shortMessage ? \'short-message\' : \'long-message\'}}">\n        <div class="{{cssrecorder}}-first-inner-message-container">\n            <div class="{{cssrecorder}}-second-inner-message-container">\n                <div class="{{cssrecorder}}-third-inner-message-container">\n                    <div class="{{cssrecorder}}-fourth-inner-message-container">\n                        <div data-selector="recorder-message-block" class=\'{{cssrecorder}}-message-message\'>\n                            <p>\n                                {{message || ""}}\n                            </p>\n                            <ul ba-if="{{links && links.length > 0}}" ba-repeat="{{link :: links}}">\n                                <li>\n                                    <a href="javascript:;" ba-click="{{linkClick(link)}}">\n                                        {{link.title}}\n                                    </a>\n                                </li>\n                            </ul>\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </div>\n    </div>\n</div>\n'}}}),t.extend("module:Assets.imageviewerthemes",["browser:Info","dynamics:Parser"],function(t,n){var e=t.isInternetExplorer()&&t.internetExplorerVersion()<=8;return n.registerFunctions({css:function(t){return t.css},"activitydelta > 5000 && hideoninactivity ? (css + '-dashboard-hidden') : ''":function(t){return 5e3<t.activitydelta&&t.hideoninactivity?t.css+"-dashboard-hidden":""},"toggle_fullscreen()":function(t){return t.toggle_fullscreen()},"tab_index_move(domEvent)":function(t){return t.tab_index_move(t.domEvent)},fullscreen:function(t){return t.fullscreen},"fullscreened ? string('exit-fullscreen-image') : string('fullscreen-image')":function(t){return t.fullscreened?t.string("exit-fullscreen-image"):t.string("fullscreen-image")},csscommon:function(t){return t.csscommon},"fullscreened ? 'small' : 'full'":function(t){return t.fullscreened?"small":"full"},title:function(t){return t.title},"submit()":function(t){return t.submit()},submittable:function(t){return t.submittable},"string('submit-image')":function(t){return t.string("submit-image")},"rerecord()":function(t){return t.rerecord()},rerecordable:function(t){return t.rerecordable},"string('rerecord-image')":function(t){return t.string("rerecord-image")}}),{minimalist:{css:"ba-imageviewer",csstheme:"ba-imageviewer-minimalist-theme",tmplcontrolbar:'<div class="{{css}}-dashboard {{activitydelta > 5000 && hideoninactivity ? (css + \'-dashboard-hidden\') : \'\'}}">\n\n    <div class=\'{{css}}-controlbar-header\'>\n        <div class="{{css}}-controlbar-header-icons-block">\n\n            <div class="{{css}}-right-block">\n\n                <div tabindex="1" data-selector="button-icon-resize-full"\n                     ba-hotkey:space^enter="{{toggle_fullscreen()}}" onmouseout="this.blur()"\n                     onkeydown="{{tab_index_move(domEvent)}}"\n                     class="{{css}}-button-container"\n                     ba-if="{{fullscreen}}" ba-click="{{toggle_fullscreen()}}" title="{{ fullscreened ? string(\'exit-fullscreen-image\') : string(\'fullscreen-image\') }}"\n                >\n                    <div class="{{css}}-button-inner {{css}}-full-screen-btn-inner">\n                        <i class="{{csscommon}}-icon-resize-{{fullscreened ? \'small\' : \'full\'}}"></i>\n                    </div>\n                </div>\n\n            </div>\n\n        </div>\n\n\n        <div class="{{css}}-controlbar-header-title-block" ba-if="{{title}}">\n            <div class="{{css}}-title"><p>{{title}}</p></div>\n        </div>\n    </div>\n\n    <div class="{{css}}-controlbar-footer">\n\n        <div class="{{css}}-controlbar-top-block">\n\n            <div tabindex="0" data-selector="submit-image-button"\n                 ba-hotkey:space^enter="{{submit()}}" onmouseout="this.blur()"\n                 class="{{css}}-button-container" ba-if="{{submittable}}"  ba-click="{{submit()}}"\n            >\n                <div class="{{css}}-button-inner">\n                    {{string(\'submit-image\')}}\n                </div>\n            </div>\n\n        </div>\n        <div class="{{css}}-controlbar-bottom-block">\n            <div tabindex="0" data-selector="button-icon-ccw"\n                 ba-hotkey:space^enter="{{rerecord()}}" onmouseout="this.blur()"\n                 class="{{css}}-button-container {{css}}-player-rerecord"\n                 ba-if="{{rerecordable}}" ba-click="{{rerecord()}}" title="{{string(\'rerecord-image\')}}"\n            >\n                <div class="{{css}}-button-inner">\n                    <i class="{{csscommon}}-icon-ccw"></i>\n                </div>\n            </div>\n\n        </div>\n    </div>\n\n</div>\n',cssloader:e?"ba-imageviewer":"",cssmessage:"ba-imageviewer"}}}),t.extend("module:Assets.audioplayerthemes",["browser:Info","dynamics:Parser"],function(t,n){var e=t.isInternetExplorer()&&t.internetExplorerVersion()<=8;return n.registerFunctions({csstheme:function(t){return t.csstheme},"toggle_volume()":function(t){return t.toggle_volume()},"string(volume > 0 ? 'volume-mute' : 'volume-unmute')":function(t){return t.string(0<t.volume?"volume-mute":"volume-unmute")},"csscommon + '-icon-volume-' + (volume >= 0.5 ? 'up' : (volume > 0 ? 'down' : 'off'))":function(t){return t.csscommon+"-icon-volume-"+(.5<=t.volume?"up":0<t.volume?"down":"off")},"set_volume(volume + 0.1)":function(t){return t.set_volume(t.volume+.1)},"set_volume(volume - 0.1)":function(t){return t.set_volume(t.volume-.1)},"startUpdateVolume(domEvent)":function(t){return t.startUpdateVolume(t.domEvent)},"stopUpdateVolume(domEvent)":function(t){return t.stopUpdateVolume(t.domEvent)},"progressUpdateVolume(domEvent)":function(t){return t.progressUpdateVolume(t.domEvent)},"{width: Math.ceil(1+Math.min(99, Math.round(volume * 100))) + '%'}":function(t){return{width:Math.ceil(1+Math.min(99,Math.round(100*t.volume)))+"%"}},"string('volume-button')":function(t){return t.string("volume-button")},title:function(t){return t.title},"submit()":function(t){return t.submit()},submittable:function(t){return t.submittable},"string('submit-audio')":function(t){return t.string("submit-audio")},"play()":function(t){return t.play()},"tab_index_move(domEvent, null, 'button-icon-pause')":function(t){return t.tab_index_move(t.domEvent,null,"button-icon-pause")},"!playing":function(t){return!t.playing},"string('play-audio')":function(t){return t.string("play-audio")},csscommon:function(t){return t.csscommon},"pause()":function(t){return t.pause()},"tab_index_move(domEvent, null, 'button-icon-play')":function(t){return t.tab_index_move(t.domEvent,null,"button-icon-play")},"disablepause ? cssplayer + '-disabled' : ''":function(t){return t.disablepause?t.cssplayer+"-disabled":""},playing:function(t){return t.playing},"disablepause ? string('pause-audio-disabled') : string('pause-audio')":function(t){return t.disablepause?t.string("pause-audio-disabled"):t.string("pause-audio")},"disableseeking ? cssplayer + '-disabled' : ''":function(t){return t.disableseeking?t.cssplayer+"-disabled":""},"seek(position + skipseconds)":function(t){return t.seek(t.position+t.skipseconds)},"seek(position - skipseconds)":function(t){return t.seek(t.position-t.skipseconds)},"startUpdatePosition(domEvent)":function(t){return t.startUpdatePosition(t.domEvent)},"stopUpdatePosition(domEvent)":function(t){return t.stopUpdatePosition(t.domEvent)},"progressUpdatePosition(domEvent)":function(t){return t.progressUpdatePosition(t.domEvent)},"{width: Math.round(duration ? cached / duration * 100 : 0) + '%'}":function(t){return{width:Math.round(t.duration?t.cached/t.duration*100:0)+"%"}},"{width: Math.round(duration ? position / duration * 100 : 0) + '%'}":function(t){return{width:Math.round(t.duration?t.position/t.duration*100:0)+"%"}},"string('audio-progress')":function(t){return t.string("audio-progress")},"rerecord()":function(t){return t.rerecord()},rerecordable:function(t){return t.rerecordable},"string('rerecord-audio')":function(t){return t.string("rerecord-audio")},"string('elapsed-time')":function(t){return t.string("elapsed-time")},"formatTime(position)":function(t){return t.formatTime(t.position)},"string('total-time')":function(t){return t.string("total-time")},"formatTime(duration || position)":function(t){return t.formatTime(t.duration||t.position)}}),{minimalist:{css:"ba-audioplayer",csstheme:"ba-player-minimalist-theme",tmplcontrolbar:'<div class="{{csstheme}}-dashboard ">\n\n    <div class=\'{{csstheme}}-controlbar-header\'>\n        <div class="{{csstheme}}-controlbar-header-icons-block">\n\n            <div class="{{csstheme}}-right-block">\n\n                <div tabindex="2" data-selector="button-icon-volume"\n                     ba-hotkey:space^enter="{{toggle_volume()}}" onmouseout="this.blur()"\n                     class="{{csstheme}}-button-container" ba-click="{{toggle_volume()}}" title="{{string(volume > 0 ? \'volume-mute\' : \'volume-unmute\')}}"\n                >\n                    <div class="{{csstheme}}-button-inner">\n                        <i class="{{csscommon + \'-icon-volume-\' + (volume >= 0.5 ? \'up\' : (volume > 0 ? \'down\' : \'off\')) }}"></i>\n                    </div>\n                </div>\n\n                <div class="{{csstheme}}-volumebar">\n                    <div tabindex="3" data-selector="button-volume-bar"\n                         ba-hotkey:right="{{set_volume(volume + 0.1)}}"\n                         ba-hotkey:left="{{set_volume(volume - 0.1)}}"\n                         onmouseout="this.blur()"\n                         class="{{csstheme}}-volumebar-inner"\n                         onmousedown="{{startUpdateVolume(domEvent)}}"\n                         onmouseup="{{stopUpdateVolume(domEvent)}}"\n                         onmouseleave="{{stopUpdateVolume(domEvent)}}"\n                         onmousemove="{{progressUpdateVolume(domEvent)}}"\n                    >\n                        <div class="{{csstheme}}-volumebar-position" ba-styles="{{{width: Math.ceil(1+Math.min(99, Math.round(volume * 100))) + \'%\'}}}" title="{{string(\'volume-button\')}}"></div>\n                    </div>\n                </div>\n\n            </div>\n\n        </div>\n\n\n        <div class="{{csstheme}}-controlbar-header-title-block" ba-if="{{title}}">\n            <div class="{{csstheme}}-title"><p>{{title}}</p></div>\n        </div>\n    </div>\n\n    <div class="{{csstheme}}-controlbar-footer">\n\n        <div class="{{csstheme}}-controlbar-top-block">\n\n            <div tabindex="0" data-selector="submit-audio-button"\n                 ba-hotkey:space^enter="{{submit()}}" onmouseout="this.blur()"\n                 class="{{csstheme}}-button-container" ba-if="{{submittable}}"  ba-click="{{submit()}}"\n            >\n                <div class="{{csstheme}}-button-inner">\n                    {{string(\'submit-audio\')}}\n                </div>\n            </div>\n\n            <div tabindex="0" data-selector="button-icon-play"\n                 ba-hotkey:space^enter="{{play()}}" onmouseout="this.blur()"\n                 onkeydown="{{tab_index_move(domEvent, null, \'button-icon-pause\')}}"\n                 class="{{csstheme}}-button-container" ba-if="{{!playing}}" ba-click="{{play()}}" title="{{string(\'play-audio\')}}"\n            >\n                <div class="{{csstheme}}-button-inner">\n                    <i class="{{csscommon}}-icon-play"></i>\n                </div>\n            </div>\n\n            <div tabindex="0" data-selector="button-icon-pause"\n                 ba-hotkey:space^enter="{{pause()}}" onmouseout="this.blur()"\n                 onkeydown="{{tab_index_move(domEvent, null, \'button-icon-play\')}}"\n                 class="{{csstheme}}-button-container {{disablepause ? cssplayer + \'-disabled\' : \'\'}}"\n                 ba-if="{{playing}}" ba-click="{{pause()}}" title="{{disablepause ? string(\'pause-audio-disabled\') : string(\'pause-audio\')}}"\n            >\n                <div class="{{csstheme}}-button-inner">\n                    <i tabindex="0" class="{{csscommon}}-icon-pause"></i>\n                </div>\n            </div>\n\n        </div>\n        <div class="{{csstheme}}-controlbar-middle-block">\n\n            <div class="{{csstheme}}-progressbar {{disableseeking ? cssplayer + \'-disabled\' : \'\'}}">\n                <div tabindex="4" data-selector="progress-bar-inner"\n                     ba-hotkey:right="{{seek(position + skipseconds)}}"\n                     ba-hotkey:left="{{seek(position - skipseconds)}}"\n                     onmouseout="this.blur()"\n                     class="{{csstheme}}-progressbar-inner"\n                     onmousedown="{{startUpdatePosition(domEvent)}}"\n                     onmouseup="{{stopUpdatePosition(domEvent)}}"\n                     onmouseleave="{{stopUpdatePosition(domEvent)}}"\n                     onmousemove="{{progressUpdatePosition(domEvent)}}"\n                >\n\n                    <div class="{{csstheme}}-progressbar-cache" ba-styles="{{{width: Math.round(duration ? cached / duration * 100 : 0) + \'%\'}}}"></div>\n                    <div class="{{csstheme}}-progressbar-position" ba-styles="{{{width: Math.round(duration ? position / duration * 100 : 0) + \'%\'}}}" title="{{string(\'audio-progress\')}}">\n                        <div class="{{csstheme}}-progressbar-button"></div>\n                    </div>\n                </div>\n            </div>\n\n        </div>\n        <div class="{{csstheme}}-controlbar-bottom-block">\n            <div tabindex="0" data-selector="button-icon-ccw"\n                 ba-hotkey:space^enter="{{rerecord()}}" onmouseout="this.blur()"\n                 class="{{csstheme}}-button-container {{csstheme}}-player-rerecord"\n                 ba-if="{{rerecordable}}" ba-click="{{rerecord()}}" title="{{string(\'rerecord-audio\')}}"\n            >\n                <div class="{{csstheme}}-button-inner">\n                    <i class="{{csscommon}}-icon-ccw"></i>\n                </div>\n            </div>\n\n            <div class="{{csstheme}}-button-container {{csstheme}}-time-container">\n                <div class="{{csstheme}}-time-value" title="{{string(\'elapsed-time\')}}">{{formatTime(position)}}</div>\n                <p> / </p>\n                <div class="{{csstheme}}-time-value" title="{{string(\'total-time\')}}">{{formatTime(duration || position)}}</div>\n            </div>\n\n        </div>\n    </div>\n\n</div>\n',cssloader:e?"ba-audioplayer":"",cssmessage:"ba-audioplayer",cssplaybutton:e?"ba-audioplayer":""}}}),t.extend("module:Assets.audiorecorderthemes",["dynamics:Parser"],function(t){return t.registerFunctions({css:function(t){return t.css},topmessage:function(t){return t.topmessage}}),t.registerFunctions({csstheme:function(t){return t.csstheme},css:function(t){return t.css},settingsvisible:function(t){return t.settingsvisible},settingsopen:function(t){return t.settingsopen},cameras:function(t){return t.cameras},"selectedcamera == camera.id":function(t){return t.selectedcamera==t.camera.id},"selectCamera(camera.id)":function(t){return t.selectCamera(t.camera.id)},"camera.label":function(t){return t.camera.label},"settingsopen=!settingsopen":function(t){return t.settingsopen=!t.settingsopen},"settingsopen ? 'selected' : 'unselected'":function(t){return t.settingsopen?"selected":"unselected"},"hover(string('settings'))":function(t){return t.hover(t.string("settings"))},"unhover()":function(t){return t.unhover()},csscommon:function(t){return t.csscommon},"!noaudio && !allowscreen":function(t){return!t.noaudio&&!t.allowscreen},"settingsvisible && settingsopen && audio":function(t){return t.settingsvisible&&t.settingsopen&&t.audio},microphones:function(t){return t.microphones},audio:function(t){return t.audio},"selectMicrophone(microphone.id)":function(t){return t.selectMicrophone(t.microphone.id)},"selectedmicrophone == microphone.id":function(t){return t.selectedmicrophone==t.microphone.id},"microphone.label":function(t){return t.microphone.label},"hover(string(microphonehealthy ? 'microphonehealthy' : 'microphoneunhealthy'))":function(t){return t.hover(t.string(t.microphonehealthy?"microphonehealthy":"microphoneunhealthy"))},"microphonehealthy ? 'good' : 'bad'":function(t){return t.microphonehealthy?"good":"bad"},"hover(string(camerahealthy ? 'camerahealthy' : 'cameraunhealthy'))":function(t){return t.hover(t.string(t.camerahealthy?"camerahealthy":"cameraunhealthy"))},"camerahealthy ? 'good' : 'bad'":function(t){return t.camerahealthy?"good":"bad"},stopvisible:function(t){return t.stopvisible},controlbarlabel:function(t){return t.controlbarlabel},rerecordvisible:function(t){return t.rerecordvisible},"rerecord()":function(t){return t.rerecord()},"hover(string('rerecord-tooltip'))":function(t){return t.hover(t.string("rerecord-tooltip"))},"string('rerecord')":function(t){return t.string("rerecord")},cancelvisible:function(t){return t.cancelvisible},"cancel()":function(t){return t.cancel()},"hover(string('cancel-tooltip'))":function(t){return t.hover(t.string("cancel-tooltip"))},"string('cancel')":function(t){return t.string("cancel")},recordvisible:function(t){return t.recordvisible},"record()":function(t){return t.record()},"hover(string('record-tooltip'))":function(t){return t.hover(t.string("record-tooltip"))},"string('record')":function(t){return t.string("record")},"stop()":function(t){return t.stop()},"mintimeindicator ? css + '-disabled': ''":function(t){return t.mintimeindicator?t.css+"-disabled":""},"mintimeindicator ? string('stop-available-after').replace('%d', timeminlimit) : string('stop-tooltip')":function(t){return t.mintimeindicator?t.string("stop-available-after").replace("%d",t.timeminlimit):t.string("stop-tooltip")},"hover(mintimeindicator ? string('stop-available-after').replace('%d', timeminlimit) : string('stop-tooltip'))":function(t){return t.hover(t.mintimeindicator?t.string("stop-available-after").replace("%d",t.timeminlimit):t.string("stop-tooltip"))},"string('stop')":function(t){return t.string("stop")},skipvisible:function(t){return t.skipvisible},"skip()":function(t){return t.skip()},"hover(string('skip-tooltip'))":function(t){return t.hover(t.string("skip-tooltip"))},"string('skip')":function(t){return t.string("skip")},uploadcovershotvisible:function(t){return t.uploadcovershotvisible},"hover(string('upload-covershot-tooltip'))":function(t){return t.hover(t.string("upload-covershot-tooltip"))},"uploadCovershot(domEvent)":function(t){return t.uploadCovershot(t.domEvent)},covershot_accept_string:function(t){return t.covershot_accept_string},"string('upload-covershot')":function(t){return t.string("upload-covershot")}}),t.registerFunctions({css:function(t){return t.css},actions:function(t){return t.actions},"click_action(action)":function(t){return t.click_action(t.action)},"action.index":function(t){return t.action.index},"action.select && action.capture":function(t){return t.action.select&&t.action.capture},"select_file_action(action, domEvent)":function(t){return t.select_file_action(t.action,t.domEvent)},"action.accept":function(t){return t.action.accept},"action.select && !action.capture":function(t){return t.action.select&&!t.action.capture},"action.label":function(t){return t.action.label},csscommon:function(t){return t.csscommon},"action.icon":function(t){return t.action.icon}}),t.registerFunctions({css:function(t){return t.css},"click()":function(t){return t.click()},"shortMessage ? 'short-message' : 'long-message'":function(t){return t.shortMessage?"short-message":"long-message"},'message || ""':function(t){return t.message||""},"links && links.length > 0":function(t){return t.links&&0<t.links.length},links:function(t){return t.links},"linkClick(link)":function(t){return t.linkClick(t.link)},"link.title":function(t){return t.link.title}}),{minimalist:{css:"ba-audiorecorder",csstheme:"ba-audiorecorder-theme-minimalist",cssrecorder:"ba-recorder",cssmessage:"ba-audiorecorder",cssloader:"ba-audiorecorder",tmpltopmessage:'<div data-selector="recorder-topmessage-block" class="{{css}}-topmessage-container">\n    <div class=\'{{css}}-topmessage-message\'>\n        {{topmessage}}\n    </div>\n</div>',tmplcontrolbar:'<div class="{{csstheme}}-dashboard">\n\n\t\n\t<div class="{{css}}-settings-left-sidebar">\n\n\t\t<div class="{{css}}-controlbar-left-section" ba-show="{{settingsvisible}}">\n\n\t\t\t\n\t\t\t<div data-selector="recorder-settings" class="{{css}}-settings {{css}}-settings-button-container">\n\n\t\t\t\t<div data-selector="settings-list-front" class="{{css}}-circle-button" ba-show="{{settingsvisible}}">\n\n\t\t\t\t\t<div class="{{css}}-bubble-info" ba-show="{{settingsopen}}" >\n\t\t\t\t\t\t<ul data-selector="camera-settings" ba-repeat="{{camera :: cameras}}">\n\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<input tabindex="0" onmouseout="this.blur()"\n\t\t\t\t\t\t\t\t\t   type=\'radio\' name=\'camera\' value="{{selectedcamera == camera.id}}" onclick="{{selectCamera(camera.id)}}"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<span></span>\n\t\t\t\t\t\t\t\t<label tabindex="0" onmouseout="this.blur()" onclick="{{selectCamera(camera.id)}}">\n\t\t\t\t\t\t\t\t\t{{camera.label}}\n\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t</ul>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div tabindex="0"\n\t\t\t\t\t\t ba-hotkey:space^enter="{{settingsopen=!settingsopen}}" onmouseout="this.blur()"\n\t\t\t\t\t\t data-selector="record-button-icon-cog"\n\t\t\t\t\t\t class="{{css}}-button-inner {{css}}-button-circle-{{settingsopen ? \'selected\' : \'unselected\' }}"\n\t\t\t\t\t\t onclick="{{settingsopen=!settingsopen}}"\n\t\t\t\t\t\t onmouseenter="{{hover(string(\'settings\'))}}"\n\t\t\t\t\t\t onmouseleave="{{unhover()}}"\n\t\t\t\t\t>\n\t\t\t\t\t\t<i class="{{csscommon}}-icon-cog"></i>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\n                <div class="{{css}}-circle-button" ba-show="{{!noaudio && !allowscreen}}">\n\n                    <div class="{{css}}-bubble-info" ba-show="{{settingsvisible && settingsopen && audio }}">\n                        <ul data-selector="microphone-settings" ba-repeat="{{microphone :: microphones}}" ba-show="{{audio}}">\n                            <li tabindex="0"\n\t\t\t\t\t\t\t\tba-hotkey:space^enter="{{selectMicrophone(microphone.id)}}" onmouseout="this.blur()"\n\t\t\t\t\t\t\t\tonclick="{{selectMicrophone(microphone.id)}}"\n\t\t\t\t\t\t\t>\n                                <input type=\'radio\' name=\'microphone\' value="{{selectedmicrophone == microphone.id}}" />\n                                <span></span>\n                                <label>\n                                    {{microphone.label}}\n                                </label>\n                            </li>\n                        </ul>\n                    </div>\n\n                    <div data-selector="record-button-icon-mic" class="{{css}}-button-inner"\n                         onmouseenter="{{hover(string(microphonehealthy ? \'microphonehealthy\' : \'microphoneunhealthy\'))}}"\n                         onmouseleave="{{unhover()}}">\n                        <i class="{{csscommon}}-icon-mic {{csscommon}}-icon-state-{{microphonehealthy ? \'good\' : \'bad\' }}"></i>\n                    </div>\n                </div>\n\n                <div class="{{css}}-circle-button" ba-show="{{!noaudio && !allowscreen}}">\n                    <div data-selector="record-button-icon-audiocam" class="{{css}}-button-inner"\n                         onmouseenter="{{hover(string(camerahealthy ? \'camerahealthy\' : \'cameraunhealthy\'))}}"\n                         onmouseleave="{{unhover()}}">\n                        <i class="{{csscommon}}-icon-audiocam {{csscommon}}-icon-state-{{ camerahealthy ? \'good\' : \'bad\' }}"></i>\n                    </div>\n                </div>\n\n\t\t\t</div>\n\t\t</div>\n\n\t</div>\n\n\t<div class="{{css}}-controlbar-middle-section">\n\n\t\t<div class="{{css}}-timer-container" ba-show="{{stopvisible}}">\n\t\t\t<div class="{{css}}-label-container" ba-show="{{controlbarlabel}}">\n\t\t\t\t<div data-selector="record-label-block" class="{{css}}-label {{css}}-button-primary">\n\t\t\t\t\t{{controlbarlabel}}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\n\t</div>\n\n\t\n\t<div data-selector="controlbar" class="{{css}}-controlbar">\n\n\t\t<div class="{{css}}-controlbar-center-section">\n\n\t\t\t<div class="{{css}}-button-container" ba-show="{{rerecordvisible}}">\n\t\t\t\t<div tabindex="0"\n\t\t\t\t\t ba-hotkey:space^enter="{{rerecord()}}" onmouseout="this.blur()"\n\t\t\t\t\t data-selector="rerecord-primary-button" class="{{css}}-button-primary"\n\t\t\t\t\t onclick="{{rerecord()}}"\n\t\t\t\t\t onmouseenter="{{hover(string(\'rerecord-tooltip\'))}}"\n\t\t\t\t\t onmouseleave="{{unhover()}}"\n\t\t\t\t>\n\t\t\t\t\t{{string(\'rerecord\')}}\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class="{{css}}-button-container" ba-show="{{cancelvisible}}">\n\t\t\t\t<div tabindex="0"\n\t\t\t\t\t ba-hotkey:space^enter="{{cancel()}}" onmouseout="this.blur()"\n\t\t\t\t\t data-selector="cancel-primary-button" class="{{css}}-button-primary"\n\t\t\t\t\t onclick="{{cancel()}}"\n\t\t\t\t\t onmouseenter="{{hover(string(\'cancel-tooltip\'))}}"\n\t\t\t\t\t onmouseleave="{{unhover()}}"\n\t\t\t\t>\n\t\t\t\t\t{{string(\'cancel\')}}\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class="{{css}}-primary-button-container" ba-show="{{recordvisible}}">\n\t\t\t\t<div tabindex="0"\n\t\t\t\t\t ba-hotkey:space^enter="{{record()}}" onmouseout="this.blur()"\n\t\t\t\t\t data-selector="record-primary-button" class="{{css}}-button-primary"\n\t\t\t\t\t onclick="{{record()}}"\n\t\t\t\t\t onmouseenter="{{hover(string(\'record-tooltip\'))}}"\n\t\t\t\t\t onmouseleave="{{unhover()}}"\n\t\t\t\t>\n\t\t\t\t\t{{string(\'record\')}}\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t</div>\n\n\t\t<div class="{{css}}-stop-container" ba-show="{{stopvisible}}">\n\n\t\t\t<div class="{{css}}-stop-button-container">\n\t\t\t\t<div tabindex="0"\n\t\t\t\t\t ba-hotkey:space^enter="{{stop()}}" onmouseout="this.blur()"\n\t\t\t\t\t data-selector="stop-primary-button" class="{{css}}-button-primary {{mintimeindicator ? css + \'-disabled\': \'\'}}"\n\t\t\t\t\t title="{{mintimeindicator ? string(\'stop-available-after\').replace(\'%d\', timeminlimit) : string(\'stop-tooltip\')}}"\n\t\t\t\t\t onclick="{{stop()}}"\n\t\t\t\t\t onmouseenter="{{hover(mintimeindicator ? string(\'stop-available-after\').replace(\'%d\', timeminlimit) : string(\'stop-tooltip\'))}}"\n\t\t\t\t\t onmouseleave="{{unhover()}}"\n\t\t\t\t>\n\t\t\t\t\t{{string(\'stop\')}}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\n        <div class="{{css}}-centerbutton-container" ba-show="{{skipvisible}}">\n            <div tabindex="0"\n\t\t\t\t ba-hotkey:space^enter="{{skip()}}" onmouseout="this.blur()"\n\t\t\t\t data-selector="skip-primary-button" class="{{css}}-button-primary"\n                 onclick="{{skip()}}"\n                 onmouseenter="{{hover(string(\'skip-tooltip\'))}}"\n                 onmouseleave="{{unhover()}}"\n\t\t\t>\n                {{string(\'skip\')}}\n            </div>\n        </div>\n\n\n        <div class="{{css}}-rightbutton-container" ba-if="{{uploadcovershotvisible}}">\n            <div data-selector="covershot-primary-button" class="{{css}}-button-primary"\n                 onmouseenter="{{hover(string(\'upload-covershot-tooltip\'))}}"\n                 onmouseleave="{{unhover()}}">\n                <input type="file"\n                       class="{{css}}-chooser-file"\n                       style="height:100px"\n                       onchange="{{uploadCovershot(domEvent)}}"\n                       accept="{{covershot_accept_string}}" />\n                <span>\n                    {{string(\'upload-covershot\')}}\n                </span>\n            </div>\n        </div>\n\n\t</div>\n\n</div>\n',tmplchooser:'<div class="{{css}}-chooser-container">\n\n\t<div class="{{css}}-chooser-button-container">\n\n\t\t<div ba-repeat="{{action :: actions}}">\n\t\t\t<div tabindex="0"\n\t\t\t\t ba-hotkey:space^enter="{{click_action(action)}}" onmouseout="this.blur()"\n\t\t\t\t class="{{css}}-chooser-button-{{action.index}}"\n\t\t\t\t ba-click="{{click_action(action)}}">\n\t\t\t\t<input ba-if="{{action.select && action.capture}}"\n\t\t\t\t\t   type="file"\n\t\t\t\t\t   class="{{css}}-chooser-file"\n\t\t\t\t\t   onchange="{{select_file_action(action, domEvent)}}"\n\t\t\t\t\t   accept="{{action.accept}}"\n\t\t\t\t\t   capture />\n\t\t\t\t<input ba-if="{{action.select && !action.capture}}"\n\t\t\t\t\t   type="file"\n\t\t\t\t\t   class="{{css}}-chooser-file"\n\t\t\t\t\t   onchange="{{select_file_action(action, domEvent)}}"\n\t\t\t\t\t   accept="{{action.accept}}"\n\t\t\t\t/>\n\t\t\t\t<span>\n\t\t\t\t\t{{action.label}}\n\t\t\t\t</span>\n\t\t\t\t<i class="{{csscommon}}-icon-{{action.icon}}"\n\t\t\t\t   ba-if="{{action.icon}}"></i>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>',tmplmessage:'<div data-selector="recorder-message-container" class="{{css}}-message-container" ba-click="{{click()}}">\n    <div class="{{css}}-top-inner-message-container {{css}}-{{shortMessage ? \'short-message\' : \'long-message\'}}">\n        <div class="{{css}}-first-inner-message-container">\n            <div class="{{css}}-second-inner-message-container">\n                <div class="{{css}}-third-inner-message-container">\n                    <div class="{{css}}-fourth-inner-message-container">\n                        <div data-selector="recorder-message-block" class=\'{{css}}-message-message\'>\n                            <p>\n                                {{message || ""}}\n                            </p>\n                            <ul ba-if="{{links && links.length > 0}}" ba-repeat="{{link :: links}}">\n                                <li>\n                                    <a href="javascript:;" ba-click="{{linkClick(link)}}">\n                                        {{link.title}}\n                                    </a>\n                                </li>\n                            </ul>\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </div>\n    </div>\n</div>\n'}}})}).call(Scoped);