!function(){"use strict";const n="KH",t="kh_sdk_onload";if(window[n])return;const e=function(){let n=null;const t=[],e={},i=[];let o={"type":"configuration","data":{"channels":[{"id":1,"title":"kronehit digital","subtitle":null,"imageUrl":"https://media.kronehit.at/images/kronehit_gelb.original.jpg","streamUrl":"https://secureonair.krone.at/kronehit-hp.mp3","hasPlaylist":true},{"id":4,"title":"kronehit ukw","subtitle":null,"imageUrl":"https://media.kronehit.at/images/ukw-shutterstock-Meranna-274x274.original.jpg","streamUrl":"https://secureonair.krone.at/kronehit1058.mp3","hasPlaylist":true},{"id":7,"title":"most wanted","subtitle":null,"imageUrl":"https://media.kronehit.at/images/most-wanted-shutterstock-LightField-Studios-274.original.jpg","streamUrl":"https://secureonair.krone.at/kronehit02.mp3","hasPlaylist":true},{"id":25,"title":"One World Radio","subtitle":null,"imageUrl":"https://media.kronehit.at/images/TML-ONE-WORLD-RADIO-2023-274x274px-cTomorrowlan.original.jpg","streamUrl":"https://secureonair.krone.at/kronehit_owr.mp3","hasPlaylist":false},{"id":45,"title":"Radio Super 80s","subtitle":null,"imageUrl":"https://media.kronehit.at/images/Super80s-RGB-274x274px.original.jpg","streamUrl":"https://secureonair.krone.at/super80s.aac","hasPlaylist":true},{"id":46,"title":"Radio Rot Weiss Rot","subtitle":null,"imageUrl":"https://media.kronehit.at/images/RWR-RGB-274x274px.original.jpg","streamUrl":"https://secureonair.krone.at/rwr.aac","hasPlaylist":true},{"id":47,"title":"Radio Eurodance X-Press","subtitle":null,"imageUrl":"https://media.kronehit.at/images/Eurodance-X-Press-RGB-274x274px.original.png","streamUrl":"https://secureonair.krone.at/eurodance.aac","hasPlaylist":true},{"id":48,"title":"Pirate Radio","subtitle":null,"imageUrl":"https://media.kronehit.at/images/Pirate-Radio-RGB-274x274px.original.jpg","streamUrl":"https://secureonair.krone.at/pirate.aac","hasPlaylist":true}]}};const c={},s=0,u=1,r=2,f=3;let l=s;const a=3;let h=null,d=0;function p(){d=0,g()}function g(){l!==u&&l!==s||(l===s&&window.addEventListener("online",p,!1),window.navigator.onLine?(l===u&&clearTimeout(h),n=new WebSocket("wss://www.kronehit.at/api/v1/socket/"),n.onopen=function(t){if(t.currentTarget===n){d=0,l=f;let n=[];for(let t in e)e.hasOwnProperty(t)&&e[t].length>0&&n.push(parseInt(t));n.length>0&&w({type:"select_channels",channelIds:n})}},n.onmessage=function(i){if(i.currentTarget===n&&l===f){const n=JSON.parse(i.data);if("configuration"===n.type){if(o&&JSON.stringify(n)===JSON.stringify(o))return;o=n,t.forEach((function(t){N(t,n)}))}else if("playlist_update"===n.type){const t=parseInt(n.channelId);if(isNaN(t))return;const i=c[t];if(i&&JSON.stringify(n)===JSON.stringify(i))return;c[t]=n,void 0!==e[t]&&e[t].forEach((function(t){N(t,n)}))}}},n.onclose=function(t){if(t.currentTarget===n){d++;const n=(e=1e3*a,i=1e3*Math.pow(a,d)+1e3*a,Math.floor(Math.random()*(i-e+1)+e));h=setTimeout((function(){h=null,g()}),n),l=u}var e,i},l=r):l=u)}function w(t){if(l===f){const e=JSON.stringify(t);n.send(e)}}function O(n,t){const e=t.indexOf(n);return-1!==e&&(t.splice(e,1),!0)}function N(n,t){let e=JSON.parse(JSON.stringify(t));"configuration"===e.type?e=e.data:delete e.type,n(e)}return{watch:function(r){let f=!1;const a=[],y=(r=r||{}).onConfiguration,E=r.onPlaylistUpdate;function T(n){if(f||!E)return;l===s&&g();const t=[];n.forEach((function(n){function i(){c[n]&&setTimeout((function(){N(E,c[n])}),0)}-1===a.indexOf(n)?(a.push(n),void 0===e[n]&&(e[n]=[]),e[n].push(E),1===e[n].length&&t.push(n),i()):i()})),t.length>0&&w({type:"select_channels",channelIds:t})}function S(n){if(f||!E)return;const t=[];n.forEach((function(n){O(n,a)&&(O(E,e[n]),0===e[n].length&&t.push(n))})),t.length>0&&w({type:"unselect_channels",channelIds:t})}const _={selectChannel:function(n){n&&-1!==a.indexOf(n)||(S(a.slice()),n&&T([n]))},selectChannels:T,unselectChannels:S,unwatch:function(){O(_,i)&&(S(a.slice()),f=!0,y&&O(y,t),i.length||function(){if(l!==s){if(l===u)clearTimeout(h);else{const t=n;n=null,t.close()}window.removeEventListener("online",p,!1),l=s,d=0}}())}};return i.push(_),y&&(t.push(y),o&&setTimeout((function(){N(y,o)}),0)),_}}}();window[n]={watch:e.watch},window[t]&&window[t]()}();