PageSourceSearch

https://bonosanalyzer.com/cdn/scripts/script_s960_tpl2876_0ba7c023a0_prod.bundle.min.js

js bonosanalyzer.com collected 2026-10-08 03:55:26 UTC 120,060 bytes, 205 lines download raw bytes

1(function(){"use strict";const __modules={"__bridge__:globals":function(exports,__require){if(!(window.__cdnSharedModules&&window.__cdnSharedModules.globals)){throw new Error('CdnScriptBundleService bridge module '+"globals"+" not found on window.__cdnSharedModules — scripts.bundle must load first")}
2Object.assign(exports,window.__cdnSharedModules.globals)},"__bridge__:api":function(exports,__require){if(!(window.__cdnSharedModules&&window.__cdnSharedModules.api)){throw new Error('CdnScriptBundleService bridge module '+"api"+" not found on window.__cdnSharedModules — scripts.bundle must load first")}
3Object.assign(exports,window.__cdnSharedModules.api)},"__bridge__:translate":function(exports,__require){if(!(window.__cdnSharedModules&&window.__cdnSharedModules.translate)){throw new Error('CdnScriptBundleService bridge module '+"translate"+" not found on window.__cdnSharedModules — scripts.bundle must load first")}
4Object.assign(exports,window.__cdnSharedModules.translate)},"__bridge__:CentrifugeManager":function(exports,__require){if(!(window.__cdnSharedModules&&window.__cdnSharedModules.CentrifugeManager)){throw new Error('CdnScriptBundleService bridge module '+"CentrifugeManager"+" not found on window.__cdnSharedModules — scripts.bundle must load first")}
5Object.assign(exports,window.__cdnSharedModules.CentrifugeManager)},"__bridge__:secureApiClient":function(exports,__require){if(!(window.__cdnSharedModules&&window.__cdnSharedModules.secureApiClient)){throw new Error('CdnScriptBundleService bridge module '+"secureApiClient"+" not found on window.__cdnSharedModules — scripts.bundle must load first")}
6Object.assign(exports,window.__cdnSharedModules.secureApiClient)},
6"/var/www/public/build/midori/assets/js/auth/amplitude/authAmplitude.min.js":function(exports,__require){const __dep_628bbe14c0=__require("__bridge__:globals");const buildExternalId=__dep_628bbe14c0.buildExternalId;const utmParams=__dep_628bbe14c0.utmParams;const authEventID=__dep_628bbe14c0.eventID;const getEventRouteInfo=()=>{const e=document.body.dataset.routeBonus,t=authEventID.findIndex(t=>t===e),a=t>-1?t+1:authEventID.length,n=t>-1?authEventID[t]:authEventID[authEventID.length-1];return{ROUTE:e,ROUTE__EXIST:t,EVENT__ID:a,EVENT__CAT:n}},{EVENT__CAT:EVENT__CAT}=getEventRouteInfo(),setAnalyticsUserId=e=>{"undefined"!=typeof amplitude&&amplitude.setUserId?amplitude.setUserId(e?.toString()??null):window.location.hostname.includes("casinosanalyzer.co.uk")&&"undefined"!=typeof zaraz&&"function"==typeof zaraz.track&&null!==e&&zaraz.set("user_id",e.toString().length<=4?`000${e}`:e)},registrationNewUserAmplitude=(e,t)=>{"undefined"!=typeof dataLayer&&dataLayer&&(setAnalyticsUserId(e),dataLayer.push(Object.assign({event_id:`${JSON.stringify(e)}_${(new Date).getDate()}_registration`,event:"addEvents_registration",event_cat:"w_website",event_name:"new_user",page_current_path:JSON.stringify(document.location.pathname),page_url:JSON.stringify(document.location.href),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),registration_via:JSON.stringify(t),reg_placement:JSON.stringify(storage.getRegPlacement()),user_id:JSON.stringify(e),website_domain:JSON.stringify(document.location.hostname)},utmParams())))},loginExistingUserAmplitude=e=>{"undefined"!=typeof dataLayer&&dataLayer&&(setAnalyticsUserId(e),dataLayer.push(Object.assign({event_id:`${JSON.stringify(e)}_${(new Date).getDate()}_login`,event:"addEvents_login",event_cat:"w_website",event_name:"existing_user",page_current_path:JSON.stringify(document.location.pathname),page_url:JSON.stringify(document.location.href),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),user_id:JSON.stringify(e)},utmParams())))},showBlockSignUpPopupAmplitude=()=>{"undefined"!=typeof dataLayer&&dataLayer&&dataLayer.push(Object.assign({event:"addEvents_showBlock",event_cat:"w_website_regtypes",event_name:"signup_popup",page_current_path:JSON.stringify(document.location.pathname),page_url:JSON.stringify(document.location.href),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),registration_via:JSON.stringify(storage.getRegistrationViaAmplitude()??"reg"),website_domain:JSON.stringify(document.location.hostname),reg_placement:JSON.stringify(storage.getRegPlacement()??"")},utmParams()))},showBlockSignUpPopupMailAmplitude=()=>{"undefined"!=typeof dataLayer&&dataLayer&&dataLayer.push(Object.assign({event:"addEvents_showBlock",event_cat:"w_website_email",event_name:"signup_popup",page_url:JSON.stringify(document.location.href),page_current_path:JSON.stringify(document.location.pathname),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),website_domain:JSON.stringify(document.location.hostname)},utmParams()))},showBlockLoginPopupPasswordAmplitude=()=>{"undefined"!=typeof dataLayer&&dataLayer&&dataLayer.push(Object.assign({event:"addEvents_showBlock",event_cat:"w_website_password",event_name:"login_popup",page_url:JSON.stringify(document.location.href),page_current_path:JSON.stringify(document.location.pathname),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),website_domain:JSON.stringify(document.location.hostname)},utmParams()))},showBlockSignUpPopupPasswordAmplitude=()=>{"undefined"!=typeof dataLayer&&dataLayer&&dataLayer.push(Object.assign({event:"addEvents_showBlock",event_cat:"w_website_password",event_name:"signup_popup",page_url:JSON.stringify(document.location.href),page_current_path:JSON.stringify(document.location.pathname),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),website_domain:JSON.stringify(document.location.hostname)}
6,utmParams()))},showBlockWheelBannerFeedOpenAmplitude=()=>{"undefined"!=typeof dataLayer&&dataLayer&&dataLayer.push(Object.assign({event:"addEvents_showBlock",event_cat:"w_website_wheel_banner_feed",event_name:"open",page_current_path:JSON.stringify(document.location.pathname),page_url:JSON.stringify(document.location.href),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),website_domain:JSON.stringify(document.location.hostname),reg_placement:JSON.stringify(storage.getRegPlacement()??"")},utmParams()))},clickWheelBannerSpinAmplitude=()=>{"undefined"!=typeof dataLayer&&dataLayer&&dataLayer.push(Object.assign({event:"addEvents_click",event_cat:"w_website_wheel_banner_feed",event_name:"spin",page_current_path:JSON.stringify(document.location.pathname),page_url:JSON.stringify(document.location.href),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),website_domain:JSON.stringify(document.location.hostname)},utmParams()))},clickWheelBannerGoogleSignUpAmplitude=()=>{"undefined"!=typeof dataLayer&&dataLayer&&dataLayer.push(Object.assign({event:"addEvents_click",event_cat:"w_website_wheel_banner_feed",event_name:"signupGoogle",page_current_path:JSON.stringify(document.location.pathname),page_url:JSON.stringify(document.location.href),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),website_domain:JSON.stringify(document.location.hostname)},utmParams()))},clickWheelBannerEmailSignUpAmplitude=()=>{"undefined"!=typeof dataLayer&&dataLayer&&dataLayer.push(Object.assign({event:"addEvents_click",event_cat:"w_website_wheel_banner_feed",event_name:"signupEmail",page_current_path:JSON.stringify(document.location.pathname),page_url:JSON.stringify(document.location.href),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),website_domain:JSON.stringify(document.location.hostname)},utmParams()))},clickAffLinkWheelBannerCasinoVisitAmplitude=async(e=null)=>{const t=await buildExternalId(e);"undefined"!=typeof dataLayer&&dataLayer&&dataLayer.push(Object.assign({event:"addEvents_clickAffLink",event_cat:"w_website_wheel_popup",event_name:"casino_visit",...t?{external_id:JSON.stringify(t)}:{},page_current_path:JSON.stringify(document.location.pathname),page_url:JSON.stringify(document.location.href),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),website_domain:JSON.stringify(document.location.hostname)},utmParams()))},clickGoUpSignUpPopupAmplitude=()=>{"undefined"!=typeof dataLayer&&dataLayer&&dataLayer.push(Object.assign({event:"addEvents_click",event_cat:"w_website_signup",event_name:"scrollup",page_current_path:JSON.stringify(document.location.pathname),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),website_domain:JSON.stringify(document.location.hostname)},utmParams()))},clickResetPasswordAmplitude=()=>{"undefined"!=typeof dataLayer&&dataLayer&&dataLayer.push(Object.assign({event:"addEvents_click",event_cat:"w_website_check_email",event_name:"reset_password",page_current_path:JSON.stringify(document.location.pathname),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),website_domain:JSON.stringify(document.location.hostname)},utmParams()))},showBlockEmailConfirmPopupAmplitude=()=>{"undefined"!=typeof dataLayer&&dataLayer&&dataLayer.push(Object.assign({event:"addEvents_showBlock",event_cat:"w_website_email_confirm",event_name:"signup_popup",page_current_path:JSON.stringify(document.location.pathname),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),website_domain:JSON.stringify(document.location.hostname)}
6,utmParams()))},clickSendEmailConfirmPopupAmplitude=()=>{"undefined"!=typeof dataLayer&&dataLayer&&dataLayer.push(Object.assign({event:"addEvents_click",event_cat:"w_website_check_email",event_name:"resend_confirm",page_current_path:JSON.stringify(document.location.pathname),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),website_domain:JSON.stringify(document.location.hostname)},utmParams()))},clickGoogleLoginAmplitude=()=>{"undefined"!=typeof dataLayer&&dataLayer&&dataLayer.push(Object.assign({event:"addEvents_click",event_cat:"w_website_google",event_name:"login",page_current_path:JSON.stringify(document.location.pathname),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),website_domain:JSON.stringify(document.location.hostname)},utmParams()))},clickGoogleSignupAmplitude=()=>{"undefined"!=typeof dataLayer&&dataLayer&&dataLayer.push(Object.assign({event:"addEvents_click",event_cat:"w_website_google",event_name:"signup",page_current_path:JSON.stringify(document.location.pathname),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),website_domain:JSON.stringify(document.location.hostname)},utmParams()))},clickEmailLoginAmplitude=()=>{"undefined"!=typeof dataLayer&&dataLayer&&dataLayer.push(Object.assign({event:"addEvents_click",event_cat:"w_website_email",event_name:"login",page_current_path:JSON.stringify(document.location.pathname),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),website_domain:JSON.stringify(document.location.hostname)},utmParams()))},clickEmailSignupAmplitude=()=>{"undefined"!=typeof dataLayer&&dataLayer&&dataLayer.push(Object.assign({event:"addEvents_click",event_cat:"w_website_email",event_name:"signup",page_current_path:JSON.stringify(document.location.pathname),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),website_domain:JSON.stringify(document.location.hostname)},utmParams()))},showBlockGoogleOneTapSignInAmplitude=()=>{"undefined"!=typeof dataLayer&&dataLayer&&dataLayer.push(Object.assign({event:"addEvents_showBlock",event_cat:"w_website_google_oneTap",event_name:"signIn",page_current_path:JSON.stringify(document.location.pathname),page_url:JSON.stringify(document.location.href),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),website_domain:JSON.stringify(document.location.hostname)},utmParams()))},loginGoogleOneTapExistingUserAmplitude=()=>{if("undefined"!=typeof dataLayer&&dataLayer){let e=document.body.dataset.userId??null;setAnalyticsUserId(e),dataLayer.push(Object.assign({event_id:`${JSON.stringify(e)}_${(new Date).getDate()}_login`,event:"addEvents_login",event_cat:"w_website_google_oneTap",event_name:"existing_user",page_current_path:JSON.stringify(document.location.pathname),page_url:JSON.stringify(document.location.href),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),user_id:JSON.stringify(e),website_domain:JSON.stringify(document.location.hostname)},utmParams()))}},registrationGoogleOneTapNewUserAmplitude=()=>{if("undefined"!=typeof dataLayer&&dataLayer){let e=(document.body.dataset.userId||storage.getAuthId())??null;setAnalyticsUserId(e),dataLayer.push(Object.assign({event:"addEvents_registration",event_id:`d-v1-e31-${(new Date).getDate()}`,event_cat:"w_website_google_oneTap",event_name:"new_user",page_current_path:JSON.stringify(document.location.pathname),page_url:JSON.stringify(document.location.href),page_url_full:JSON.stringify(document.location.href),page_group:JSON.stringify(EVENT__CAT),page_route_id:JSON.stringify(document.body.dataset.routeId),user_id:JSON.stringify(e),registration_via:JSON.stringify("one_tap"),website_domain:JSON.stringify(document.location.hostname)}
6,utmParams()))}};exports.setAnalyticsUserId=setAnalyticsUserId;exports.registrationNewUserAmplitude=registrationNewUserAmplitude;exports.loginExistingUserAmplitude=loginExistingUserAmplitude;exports.clickEmailSignupAmplitude=clickEmailSignupAmplitude;exports.clickGoUpSignUpPopupAmplitude=clickGoUpSignUpPopupAmplitude;exports.clickResetPasswordAmplitude=clickResetPasswordAmplitude;exports.clickSendEmailConfirmPopupAmplitude=clickSendEmailConfirmPopupAmplitude;exports.clickGoogleLoginAmplitude=clickGoogleLoginAmplitude;exports.clickGoogleSignupAmplitude=clickGoogleSignupAmplitude;exports.clickEmailLoginAmplitude=clickEmailLoginAmplitude;exports.showBlockSignUpPopupAmplitude=showBlockSignUpPopupAmplitude;exports.showBlockLoginPopupPasswordAmplitude=showBlockLoginPopupPasswordAmplitude;exports.showBlockEmailConfirmPopupAmplitude=showBlockEmailConfirmPopupAmplitude;exports.showBlockSignUpPopupPasswordAmplitude=showBlockSignUpPopupPasswordAmplitude;exports.showBlockSignUpPopupMailAmplitude=showBlockSignUpPopupMailAmplitude;exports.showBlockGoogleOneTapSignInAmplitude=showBlockGoogleOneTapSignInAmplitude;exports.loginGoogleOneTapExistingUserAmplitude=loginGoogleOneTapExistingUserAmplitude;exports.showBlockWheelBannerFeedOpenAmplitude=showBlockWheelBannerFeedOpenAmplitude;exports.clickWheelBannerSpinAmplitude=clickWheelBannerSpinAmplitude;exports.clickWheelBannerGoogleSignUpAmplitude=clickWheelBannerGoogleSignUpAmplitude;exports.clickWheelBannerEmailSignUpAmplitude=clickWheelBannerEmailSignUpAmplitude;exports.clickAffLinkWheelBannerCasinoVisitAmplitude=clickAffLinkWheelBannerCasinoVisitAmplitude;exports.registrationGoogleOneTapNewUserAmplitude=registrationGoogleOneTapNewUserAmplitude},"__bridge__:authApi":function(exports,__require){if(!(window.__cdnSharedModules&&window.__cdnSharedModules.authApi)){throw new Error('CdnScriptBundleService bridge module '+"authApi"+" not found on window.__cdnSharedModules — scripts.bundle must load first")}
7Object.assign(exports,window.__cdnSharedModules.authApi)},
7"/var/www/public/build/midori/assets/js/auth/popups/authPopup.min.js":function(exports,__require){const __dep_5b742d6eb9=__require("__bridge__:authApi");const checkEmailExists=__dep_5b742d6eb9.checkEmailExists;const sendResetPasswordLink=__dep_5b742d6eb9.sendResetPasswordLink;const signIn=__dep_5b742d6eb9.signIn;const signUp=__dep_5b742d6eb9.signUp;const sendConfirmEmailLink=__dep_5b742d6eb9.sendConfirmEmailLink;const __dep_14c3a25b5c=__require("__bridge__:globals");const __auth_popup_localeCountry=__dep_14c3a25b5c.getLocaleCountry;const __dep_405f152345=__require("__bridge__:translate");const __auth_popup_translate=__dep_405f152345.__translate;class AuthPopup{constructor(){this.clickEmailLoginAmplitude=()=>{},this.clickEmailSignupAmplitude=()=>{},this.clickGoogleLoginAmplitude=()=>{},this.clickGoogleSignupAmplitude=()=>{},this.clickGoUpSignUpPopupAmplitude=()=>{},this.clickResetPasswordAmplitude=()=>{},this.clickSendEmailConfirmPopupAmplitude=()=>{},this.loginExistingUserAmplitude=()=>{},this.registrationNewUserAmplitude=()=>{},this.showBlockEmailConfirmPopupAmplitude=()=>{},this.showBlockLoginPopupPasswordAmplitude=()=>{},this.showBlockSignUpPopupAmplitude=()=>{},this.showBlockSignUpPopupMailAmplitude=()=>{},this.showBlockSignUpPopupPasswordAmplitude=()=>{},this.noAmplitudeParam=new URLSearchParams(document.location.search).get("no-amplitude"),this.noAmplitudeParam||(async()=>{const{clickEmailLoginAmplitude:t,clickEmailSignupAmplitude:e,clickGoogleLoginAmplitude:i,clickGoogleSignupAmplitude:n,clickGoUpSignUpPopupAmplitude:s,clickResetPasswordAmplitude:a,clickSendEmailConfirmPopupAmplitude:l,loginExistingUserAmplitude:o,registrationNewUserAmplitude:r,showBlockEmailConfirmPopupAmplitude:h,showBlockLoginPopupPasswordAmplitude:c,showBlockSignUpPopupAmplitude:p,showBlockSignUpPopupMailAmplitude:d,showBlockSignUpPopupPasswordAmplitude:u}=await Promise.resolve(__require("/var/www/public/build/midori/assets/js/auth/amplitude/authAmplitude.min.js"));this.clickEmailLoginAmplitude=t,this.clickEmailSignupAmplitude=e,this.clickGoogleLoginAmplitude=i,this.clickGoogleSignupAmplitude=n,this.clickGoUpSignUpPopupAmplitude=s,this.clickResetPasswordAmplitude=a,this.clickSendEmailConfirmPopupAmplitude=l,this.loginExistingUserAmplitude=o,this.registrationNewUserAmplitude=r,this.showBlockEmailConfirmPopupAmplitude=h,this.showBlockLoginPopupPasswordAmplitude=c,this.showBlockSignUpPopupAmplitude=p,this.showBlockSignUpPopupMailAmplitude=d,this.showBlockSignUpPopupPasswordAmplitude=u})()}translate(t,e=!1){return __auth_popup_translate(t,__auth_popup_localeCountry()||"en",e)||t}translateErrorMessage(t){return t?this.translate(t):""}getTermsUrl(){return document.body?.dataset?.termsPath||"/terms"}getPolicyUrl(){return document.body?.dataset?.privacyPath||"/privacy"}getCheckEmailText(){return`${this.translate("Click on the link we sent to %%email%% to finish your account setup. Wrong email?").replace("%%email%%",this.credentials.email)} <a class="update" id="authEmailUpdateEmail">${this.translate("Click here to update it")}</a>`}credentials={email:"",password:""};userLoginOneTime=storage.getLoginOneTime();showAuthBannerOneTime=storage.getShowAuthBanner();checkRegistrationVia=storage.getCheckRegistrationVia();async generateMainHTML(t="main"){let e=`\n            <div class="auth_popup" id="authPopup">\n                <div id="authPopupBox" class="auth_popup-box">\n                <div class="auth_popup-side">\n\t\t\t\t\t<button class="auth_popup-close" id="authClose">\n\t\t\t\t\t\t<svg width="50" height="50" viewBox="0 0 50 50" fill="none" xmlns="http://www.w3.org/2000/svg">\n\t\t\t\t\t\t\t<g clip-path="url(#clip0_7547_133184)">\n\t\t\t\t\t\t\t<path d="M25.0028 23.3504L30.7778 17.5754L32.4275 19.2251L26.6525 25.0001L32.4275 30.7751L30.7778 32.4248L25.0028 26.6498L19.2278 32.4248L17.5781 30.7751L23.3531 25.0001L17.5781 19.2251L19.2278 17.5754L25.0028 23.3504Z" fill="white"/>\n\t\t\t\t\t\t\t</g>\n\t\t\t\t\t\t\t<rect x="0.5" y="0.5" width="49" height="49" rx="11.5" stroke="white" stroke-opacity="0.4"/>\n\t\t\t\t\t\t\t<defs>\n\t\t\t\t\t\t\t<clipPath id="clip0_7547_133184">\n\t\t\t\t\t\t\t<rect width="28" height="28" fill="white" transform="translate(11 11)"/>\n\t\t\t\t\t\t\t</clipPath>\n\t\t\t\t\t\t\t</defs>\n\t\t\t\t\t\t</svg>\n\t\t\t\t\t</button>\n                    <h3 class="title">\n                    \t${"review"===t?this.translate("Join Our Community of Reviewers!"):this.translate("Get No-Deposit Bonus for Sign-Up!")}\n                    </h3>\n                                     \n                    <div class="condition_options-box">\n                    \t<div class="option">\n                    \t\t<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">\n\t\t\t\t\t\t\t\t<rect width="24" height="24" rx="12" fill="white" fill-opacity="0.08"/>\n\t\t\t\t\t\t\t\t<g clip-path="url(#clip0_16099_65765)">\n\t\t\t\t\t\t\t\t<path d="M10.3334 14.6433L17.9934 6.98242L19.1725 8.16076L10.3334 16.9999L5.03003 11.6966L6.20836 10.5183L10.3334 14.6433Z" fill="#05E98F"/>\n\t\t\t\t\t\t\t\t</g>\n\t\t\t\t\t\t\t\t<defs>\n\t\t\t\t\t\t\t\t<clipPath id="clip0_16099_65765">\n\t\t\t\t\t\t\t\t<rect width="20" height="20" fill="white" transform="translate(2 2)"/>\n\t\t\t\t\t\t\t\t</clipPath>\n\t\t\t\t\t\t\t\t</defs>\n\t\t\t\t\t\t\t</svg>\n\t\t\t\t\t\t\t<p class="text">${"review"===t?this.translate("Leave your honest feedback"):this.translate("Up to 100 FS weekly")}</p>  \t\n\t\t\t\t\t\t</div>\n                    \t<div class="option">\n                    \t\t<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">\n\t\t\t\t\t\t\t\t<rect width="24" height="24" rx="12" fill="white" fill-opacity="0.08"/>\n\t\t\t\t\t\t\t\t<g clip-path="url(#clip0_16099_65765)">\n\t\t\t\t\t\t\t\t<path d="M10.3334 14.6433L17.9934 6.98242L19.1725 8.16076L10.3334 16.9999L5.03003 11.6966L6.20836 10.5183L10.3334 14.6433Z" fill="#05E98F"/>\n\t\t\t\t\t\t\t\t</g>\n\t\t\t\t\t\t\t\t<defs>\n\t\t\t\t\t\t\t\t<clipPath id="clip0_16099_65765">\n\t\t\t\t\t\t\t\t<rect width="20" height="20" fill="white" transform="translate(2 2)"/>\n\t\t\t\t\t\t\t\t</clipPath>\n\t\t\t\t\t\t\t\t</defs>\n\t\t\t\t\t\t\t</svg>   \n\t\t\t\t\t\t\t<p class="text">${"review"===t?this.translate("Receive casino responses"):this.translate("No wager, no deposit")}</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\n                    <a id="authGoogle" class="social_btn" href="/connect/google">\n                        <svg class="auth_popup_social-icon" width="36" height="36" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg">\n                            <rect x="0.5" y="0.5" width="35" height="35" rx="17.5" fill="white"/>\n                            <path d="M29.2517 18.275C29.2517 17.5 29.1767 16.7 29.0517 15.95H18.2266V20.375H24.4266C24.1766 21.8 23.3516 23.05 22.1266 23.85L25.8266 26.7251C28.0017 24.7 29.2517 21.75 29.2517 18.275Z" fill="#4280EF"/>\n                            <path d="M18.2267 29.4752C21.3267 29.4752 23.9267 28.4502 25.8268 26.7002L22.1267 23.8501C21.1017 24.5501 19.7767 24.9501 18.2267 24.9501C15.2266 24.9501 12.7016 22.9251 11.7766 20.2251L7.97656 23.1501C9.92658 27.0252 13.8766 29.4752 18.2267 29.4752Z" fill="#34A353"/>\n                            <path d="M11.7766 20.1999C11.3016 18.7749 11.3016 17.2249 11.7766 15.7999L7.97658 12.8499C6.35156 16.0999 6.35156 19.9249 7.97658 23.15L11.7766 20.1999Z" fill="#F6B704"/>\n                            <path d="M18.2267 11.0749C19.8517 11.0499 21.4517 11.6749 22.6267 12.7999L25.9018 9.49988C23.8267 7.54986 21.0767 6.49985 18.2267 6.52485C13.8766 6.52485 9.92658 8.97488 7.97656 12.8499L11.7766 15.8C12.7016 13.0749 15.2266 11.0749 18.2267 11.0749Z" fill="#E54335"/>\n                            <rect x="0.5" y="0.5" width="35" height="35" rx="17.5" stroke="#DCDCDC"/>\n                        </svg>
7\n                        <span class="text_button">${this.translate("Continue with Google")}</span>\n                    </a>\n                    <button id="authEmailButton" class="email_btn">\n                        <svg class="auth_popup_social-icon" width="36" height="36" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg">\n                            <rect width="36" height="36" rx="18" fill="white" fill-opacity="0.08"/>\n                            <g clip-path="url(#clip0_7547_131655)">\n                            <path d="M9.7526 9.75H26.2526C26.4957 9.75 26.7289 9.84658 26.9008 10.0185C27.0727 10.1904 27.1693 10.4236 27.1693 10.6667V25.3333C27.1693 25.5764 27.0727 25.8096 26.9008 25.9815C26.7289 26.1534 26.4957 26.25 26.2526 26.25H9.7526C9.50949 26.25 9.27633 26.1534 9.10442 25.9815C8.93251 25.8096 8.83594 25.5764 8.83594 25.3333V10.6667C8.83594 10.4236 8.93251 10.1904 9.10442 10.0185C9.27633 9.84658 9.50949 9.75 9.7526 9.75ZM25.3359 13.6348L18.0686 20.1432L10.6693 13.6147V24.4167H25.3359V13.6348ZM11.1377 11.5833L18.0585 17.6902L24.8794 11.5833H11.1377Z" fill="white"/>\n                            </g>\n                            <defs>\n                            <clipPath id="clip0_7547_131655">\n                            <rect width="22" height="22" fill="white" transform="translate(7 7)"/>\n                            </clipPath>\n                            </defs>\n                        </svg>\n                        <span class="text_button">${this.translate("Continue with E-mail")}</span>\n                    </button> \n                    <button class="auth_popup-close-text" id="authCloseText">${"review"===t?this.translate("No, thanks. I'm not interested."):this.translate("No, thanks. I'm not interested in any offers right now")}</button>\n                    <p class="accepts">\n                    ${this.translate('By subscribing, you consent to receiving marketing letters and having your opens and clicks tracked, and confirm you\'ve read and accepted our <a class="link" target="_blank" href="%%termsUrl%%">Terms</a> and <a class="link" target="_blank" href="%%policyUrl%%">Policy</a>').replace("%%termsUrl%%",this.getTermsUrl()).replace("%%policyUrl%%",this.getPolicyUrl())}\n                    </p>\n                    <div class="absolute_image-box">\n                    \t<img class="image" alt="CasinosAnalyzer" src="/build/midori/img/auth/personal_account_bonuses.webp" />\n                    \t<img class="image" alt="CasinosAnalyzer" src="/build/midori/img/auth/personal_account_prize.webp" />\n\t\t\t\t\t</div>\n                </div>\n               </div> \n            </div>\n        `;document.body.insertAdjacentHTML("beforeend",e),this.emailStepClick(),this.closeClick(),this.scrollUpClick(),this.showBlockSignUpPopupAmplitude(),this.googleSignupTrackClick(document.getElementById("authGoogle")),this.emailSignupTrackClick(document.getElementById("authEmailButton")),this.loadRecaptchaScript()}generateEmailStepHTML(){let t=`\n            <div class="auth_popup" id="authPopup">\n              <div class="auth_popup-box-full">\n                   <button class="auth_popup-return" id="authReturnTo">\n                        <svg width="50" height="50" viewBox="0 0 50 50" fill="none" xmlns="http://www.w3.org/2000/svg">\n                            <g clip-path="url(#clip0_7597_135674)">\n                            <path d="M20.1301 23.8334H34.3307V26.1668H20.1301L26.3881 32.4248L24.7384 34.0744L15.6641 25.0001L24.7384 15.9258L26.3881 17.5754L20.1301 23.8334Z" fill="white"/>\n                            </g>\n                            <rect x="0.5" y="0.5" width="49" height="49" rx="11.5" stroke="white" stroke-opacity="0.4"/>\n                            <defs>\n                            <clipPath id="clip0_7597_135674">\n                            <rect width="28" height="28" fill="white" transform="translate(11 11)"/>\n                            </clipPath>\n                            </defs>\n                        </svg>\n                   </button>\n                   <button class="auth_popup-close" id="authClose">
7\n                        <svg width="50" height="50" viewBox="0 0 50 50" fill="none" xmlns="http://www.w3.org/2000/svg">\n                            <g clip-path="url(#clip0_7547_133184)">\n                            <path d="M25.0028 23.3504L30.7778 17.5754L32.4275 19.2251L26.6525 25.0001L32.4275 30.7751L30.7778 32.4248L25.0028 26.6498L19.2278 32.4248L17.5781 30.7751L23.3531 25.0001L17.5781 19.2251L19.2278 17.5754L25.0028 23.3504Z" fill="white"/>\n                            </g>\n                            <rect x="0.5" y="0.5" width="49" height="49" rx="11.5" stroke="white" stroke-opacity="0.4"/>\n                            <defs>\n                            <clipPath id="clip0_7547_133184">\n                            <rect width="28" height="28" fill="white" transform="translate(11 11)"/>\n                            </clipPath>\n                            </defs>\n                        </svg>\n                   </button>\n                    \n                   <div class="form">\n                        <h2 class="title">${this.translate("What’s your e-mail?")}</h2>  \n                    \n                        <input id="authEmailInput" class="input" type="email" placeholder="${this.translate("E-mail")}" />\n                        <span id="authEmailError" class="error"></span>\n                        \n                        ${this.userLoginOneTime?"":'<div id="authRecaptcha" class="recaptcha"></div>'}\n                       \n                        <button id="authEmailContinueButton" class="continue_button">${this.translate("Continue")}</button>\n                        \n                        <div class="separate">\n                            <svg class="left_line" width="175" height="1" viewBox="0 0 175 1" fill="none" xmlns="http://www.w3.org/2000/svg">\n                                <line y1="0.5" x2="174.161" y2="0.5" stroke="white" stroke-opacity="0.2"/>\n                            </svg>\n                            ${this.translate("or")}\n                            <svg class="right_line" width="175" height="1" viewBox="0 0 175 1" fill="none" xmlns="http://www.w3.org/2000/svg">\n                                <line x1="0.835938" y1="0.5" x2="174.997" y2="0.5" stroke="white" stroke-opacity="0.2"/>\n                            </svg>\n                        </div>       \n                   <div class="socials"> \n                       <a id="authGoogle" class="social_button" href="/connect/google">\n                           <svg width="52" height="52" viewBox="0 0 52 52" fill="none" xmlns="http://www.w3.org/2000/svg">\n                               <rect width="52" height="52" rx="26" fill="white" fill-opacity="0.06"/>\n                               <rect x="6" y="6" width="40" height="40" rx="20" fill="white"/>\n                               <path d="M38.5001 26.3058C38.5001 25.4447 38.4168 24.5558 38.2779 23.7224H26.25V28.6391H33.139C32.8612 30.2225 31.9445 31.6114 30.5834 32.5003L34.6945 35.6948C37.1112 33.4447 38.5001 30.1669 38.5001 26.3058Z" fill="#4280EF"/>\n                               <path d="M26.2484 38.7503C29.6929 38.7503 32.5818 37.6114 34.6929 35.6669L30.5818 32.5002C29.4429 33.278 27.9706 33.7225 26.2484 33.7225C22.915 33.7225 20.1094 31.4724 19.0816 28.4724L14.8594 31.7224C17.0261 36.028 21.415 38.7503 26.2484 38.7503Z" fill="#34A353"/>\n                               <path d="M19.0843 28.4446C18.5565 26.8612 18.5565 25.139 19.0843 23.5556L14.862 20.2778C13.0564 23.889 13.0564 28.139 14.862 31.7224L19.0843 28.4446Z" fill="#F6B704"/>\n                               <path d="M26.2484 18.3056C28.054 18.2778 29.8318 18.9723 31.1373 20.2223L34.7763 16.5556C32.4707 14.3889 29.4151 13.2222 26.2484 13.25C21.415 13.25 17.0261 15.9722 14.8594 20.2779L19.0816 23.5557C20.1094 20.5279 22.915 18.3056 26.2484 18.3056Z" fill="#E54335"/>\n                               <rect x="0.5" y="0.5" width="51" height="51" rx="25.5" stroke="white" stroke-opacity="0.12"/>\n                           </svg>\n                       </a>\n                   </div>         \n                </div>\n              </div> \n            </div>\n        `;document.body.insertAdjacentHTML("beforeend",t),!this.userLoginOneTime&&this.callRecaptcha(),this.emailContinueClick(),this.closeClick(),this.returnToClick(document.getElementById("authReturnTo"),"mainHTML"),this.showBlockSignUpPopupMailAmplitude(),this.googleSignupTrackClick(document.getElementById("authGoogle"))}generateCreatePasswordStepHTML(){let t=`\n            <div class="auth_popup" id="authPopup">\n              <div class="auth_popup-box-full">\n                   <button class="auth_popup-return" id="authReturnTo">
7\n                        <svg width="50" height="50" viewBox="0 0 50 50" fill="none" xmlns="http://www.w3.org/2000/svg">\n                            <g clip-path="url(#clip0_7597_135674)">\n                            <path d="M20.1301 23.8334H34.3307V26.1668H20.1301L26.3881 32.4248L24.7384 34.0744L15.6641 25.0001L24.7384 15.9258L26.3881 17.5754L20.1301 23.8334Z" fill="white"/>\n                            </g>\n                            <rect x="0.5" y="0.5" width="49" height="49" rx="11.5" stroke="white" stroke-opacity="0.4"/>\n                            <defs>\n                            <clipPath id="clip0_7597_135674">\n                            <rect width="28" height="28" fill="white" transform="translate(11 11)"/>\n                            </clipPath>\n                            </defs>\n                        </svg>\n                   </button>\n                   <button class="auth_popup-close" id="authClose">\n                        <svg width="50" height="50" viewBox="0 0 50 50" fill="none" xmlns="http://www.w3.org/2000/svg">\n                            <g clip-path="url(#clip0_7547_133184)">\n                            <path d="M25.0028 23.3504L30.7778 17.5754L32.4275 19.2251L26.6525 25.0001L32.4275 30.7751L30.7778 32.4248L25.0028 26.6498L19.2278 32.4248L17.5781 30.7751L23.3531 25.0001L17.5781 19.2251L19.2278 17.5754L25.0028 23.3504Z" fill="white"/>\n                            </g>\n                            <rect x="0.5" y="0.5" width="49" height="49" rx="11.5" stroke="white" stroke-opacity="0.4"/>\n                            <defs>\n                            <clipPath id="clip0_7547_133184">\n                            <rect width="28" height="28" fill="white" transform="translate(11 11)"/>\n                            </clipPath>\n                            </defs>\n                        </svg>\n                   </button>\n                    \n                   <div class="form">\n                        <h2 class="title">${this.translate("Create password")}</h2>  \n                        <p class="text">${this.translate("Make sure it contains 8+ characters")}</p>\n                        <div class="input_box">\n                            <input id="authPasswordCreateInput" class="input" type="password" placeholder="${this.translate("Password")}" />\n                            <svg id="authPasswordShow" class="icon_eye" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">\n                                <g clip-path="url(#clip0_7675_1859)">\n                                <path d="M4.51869 5.93407L1.39169 2.80807L2.80669 1.39307L22.6057 21.1931L21.1907 22.6071L17.8807 19.2971C16.1219 20.4126 14.0814 21.0034 11.9987 21.0001C6.60669 21.0001 2.12069 17.1201 1.17969 12.0001C1.60972 9.67078 2.78132 7.54296 4.51969 5.93407H4.51869ZM14.7557 16.1721L13.2917 14.7081C12.7317 14.976 12.1025 15.0636 11.4906 14.9589C10.8788 14.8541 10.3145 14.5621 9.87556 14.1232C9.43662 13.6843 9.14466 13.12 9.0399 12.5081C8.93515 11.8963 9.02277 11.267 9.29069 10.7071L7.82669 9.24307C7.1904 10.2046 6.90596 11.3564 7.02152 12.5036C7.13708 13.6507 7.64554 14.7227 8.46081 15.5379C9.27607 16.3532 10.348 16.8617 11.4952 16.9772C12.6424 17.0928 13.7942 16.8084 14.7557 16.1721ZM7.97269 3.76007C9.21969 3.27007 10.5787 3.00007 11.9987 3.00007C17.3907 3.00007 21.8767 6.88007 22.8177 12.0001C22.5113 13.6658 21.8225 15.2376 20.8057 16.5921L16.9457 12.7321C17.0603 11.9597 16.9925 11.1712 16.7476 10.4297C16.5027 9.68827 16.0876 9.01448 15.5354 8.46233C14.9833 7.91019 14.3095 7.49504 13.568 7.25014C12.8266 7.00524 12.0381 6.93741 11.2657 7.05207L7.97269 3.76107V3.76007Z" fill="#B5B5B5"/>\n                                </g>\n                                <defs>\n                                <clipPath id="clip0_7675_1859">\n                                <rect width="24" height="24" fill="white"/>\n                                </clipPath>\n                                </defs>\n                            </svg>\n                        </div>
7\n                        <span id="authPasswordCreateError" class="error"></span>\n                        <button id="authPasswordCreateContinueButton" class="continue_button">${this.translate("Continue")}</button>\n                </div>\n              </div> \n            </div>\n        `;document.body.insertAdjacentHTML("beforeend",t),this.closeClick(),this.passwordCreateContinueClick(),this.passwordShowClick(document.getElementById("authPasswordCreateInput")),this.returnToClick(document.getElementById("authReturnTo"),"emailStepHTML"),this.showBlockSignUpPopupPasswordAmplitude()}generateEnterPasswordStepHTML(){let t=`\n            <div class="auth_popup" id="authPopup">\n              <div class="auth_popup-box-full">\n                   <button class="auth_popup-return" id="authReturnTo">\n                        <svg width="50" height="50" viewBox="0 0 50 50" fill="none" xmlns="http://www.w3.org/2000/svg">\n                            <g clip-path="url(#clip0_7597_135674)">\n                            <path d="M20.1301 23.8334H34.3307V26.1668H20.1301L26.3881 32.4248L24.7384 34.0744L15.6641 25.0001L24.7384 15.9258L26.3881 17.5754L20.1301 23.8334Z" fill="white"/>\n                            </g>\n                            <rect x="0.5" y="0.5" width="49" height="49" rx="11.5" stroke="white" stroke-opacity="0.4"/>\n                            <defs>\n                            <clipPath id="clip0_7597_135674">\n                            <rect width="28" height="28" fill="white" transform="translate(11 11)"/>\n                            </clipPath>\n                            </defs>\n                        </svg>\n                   </button>\n                   <button class="auth_popup-close" id="authClose">\n                        <svg width="50" height="50" viewBox="0 0 50 50" fill="none" xmlns="http://www.w3.org/2000/svg">\n                            <g clip-path="url(#clip0_7547_133184)">\n                            <path d="M25.0028 23.3504L30.7778 17.5754L32.4275 19.2251L26.6525 25.0001L32.4275 30.7751L30.7778 32.4248L25.0028 26.6498L19.2278 32.4248L17.5781 30.7751L23.3531 25.0001L17.5781 19.2251L19.2278 17.5754L25.0028 23.3504Z" fill="white"/>\n                            </g>\n                            <rect x="0.5" y="0.5" width="49" height="49" rx="11.5" stroke="white" stroke-opacity="0.4"/>\n                            <defs>\n                            <clipPath id="clip0_7547_133184">\n                            <rect width="28" height="28" fill="white" transform="translate(11 11)"/>\n                            </clipPath>\n                            </defs>\n                        </svg>\n                   </button>\n                    \n                   <div class="form">\n                        <h2 class="title">${this.translate("Enter your password")}</h2>  \n                        <div class="input_box">\n                            <input id="authPasswordEnterInput" class="input" type="password" placeholder="${this.translate("Password")}" />\n                            <svg id="authPasswordShow" class="icon_eye" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">\n                                <g clip-path="url(#clip0_7675_1859)">\n                                <path d="M4.51869 5.93407L1.39169 2.80807L2.80669 1.39307L22.6057 21.1931L21.1907 22.6071L17.8807 19.2971C16.1219 20.4126 14.0814 21.0034 11.9987 21.0001C6.60669 21.0001 2.12069 17.1201 1.17969 12.0001C1.60972 9.67078 2.78132 7.54296 4.51969 5.93407H4.51869ZM14.7557 16.1721L13.2917 14.7081C12.7317 14.976 12.1025 15.0636 11.4906 14.9589C10.8788 14.8541 10.3145 14.5621 9.87556 14.1232C9.43662 13.6843 9.14466 13.12 9.0399 12.5081C8.93515 11.8963 9.02277 11.267 9.29069 10.7071L7.82669 9.24307C7.1904 10.2046 6.90596 11.3564 7.02152 12.5036C7.13708 13.6507 7.64554 14.7227 8.46081 15.5379C9.27607 16.3532 10.348 16.8617 11.4952 16.9772C12.6424 17.0928 13.7942 16.8084 14.7557 16.1721ZM7.97269 3.76007C9.21969 3.27007 10.5787 3.00007 11.9987 3.00007C17.3907 3.00007 21.8767 6.88007 22.8177 12.0001C22.5113 13.6658 21.8225 15.2376 20.8057 16.5921L16.9457 12.7321C17.0603 11.9597 16.9925 11.1712 16.7476 10.4297C16.5027 9.68827 16.0876 9.01448 15.5354 8.46233C14.9833 7.91019 14.3095 7.49504 13.568 7.25014C12.8266 7.00524 12.0381 6.93741 11.2657 7.05207L7.97269 3.76107V3.76007Z" fill="#B5B5B5"/>\n                                </g>\n                                <defs>\n                                <clipPath id="clip0_7675_1859">\n                                <rect width="24" height="24" fill="white"/>\n                                </clipPath>\n                                </defs>\n                            </svg>\n                        </div>
7\n                        <span id="authPasswordEnterError" class="error"></span>\n                        <button id="authPasswordEnterContinueButton" class="continue_button">${this.translate("Continue")}</button>\n                        \n                        <p class="text_bottom">\n                            ${this.translate("Forgot your password?")} <a class="resend" id="authPasswordResetLink">${this.translate("Send a reset link")}</a>\n                        </p>\n                </div>\n              </div> \n            </div>\n        `;document.body.insertAdjacentHTML("beforeend",t),this.closeClick(),this.passwordEnterContinueClick(),this.passwordShowClick(document.getElementById("authPasswordEnterInput")),this.returnToClick(document.getElementById("authReturnTo"),"emailStepHTML"),this.sendResetPasswordClick(document.getElementById("authPasswordResetLink")),this.showBlockLoginPopupPasswordAmplitude()}generateCheckYourEmailStepHTML(){let t=`\n            <div class="auth_popup" id="authPopup">\n              <div class="auth_popup-box-full">\n                   <button class="auth_popup-close" id="authClose">\n                        <svg width="50" height="50" viewBox="0 0 50 50" fill="none" xmlns="http://www.w3.org/2000/svg">\n                            <g clip-path="url(#clip0_7547_133184)">\n                            <path d="M25.0028 23.3504L30.7778 17.5754L32.4275 19.2251L26.6525 25.0001L32.4275 30.7751L30.7778 32.4248L25.0028 26.6498L19.2278 32.4248L17.5781 30.7751L23.3531 25.0001L17.5781 19.2251L19.2278 17.5754L25.0028 23.3504Z" fill="white"/>\n                            </g>\n                            <rect x="0.5" y="0.5" width="49" height="49" rx="11.5" stroke="white" stroke-opacity="0.4"/>\n                            <defs>\n                            <clipPath id="clip0_7547_133184">\n                            <rect width="28" height="28" fill="white" transform="translate(11 11)"/>\n                            </clipPath>\n                            </defs>\n                        </svg>\n                   </button>\n                    \n                   <div class="form">\n                     <img class="image" alt="Email Send" src="/build/midori/img/auth/auth-email.png" />\n                     <h2 class="title title_email">${this.translate("Check your email")}</h2>  \n                     <p class="text text_email">\n                         ${this.getCheckEmailText()}\n                     </p>\n                     <p class="text_bottom">\n                         ${this.translate("No e-mail in your inbox or spam folder?")} <a class="resend" id="authEmailConfirmLink">${this.translate("Let’s resend it")}</a>\n                     </p>\n                </div>\n              </div> \n            </div>\n        `;document.body.insertAdjacentHTML("beforeend",t),this.closeClick(),this.sendConfirmEmailClick(document.getElementById("authEmailConfirmLink")),this.returnToClick(document.getElementById("authEmailUpdateEmail"),"emailStepHTML"),this.showBlockEmailConfirmPopupAmplitude()}remove(){const t=document.getElementById("authPopup");t&&t.remove()}emailStepClick(){const t=document.getElementById("authEmailButton");t&&t.addEventListener("click",()=>{this.remove(),this.generateEmailStepHTML()})}emailContinueClick(){const t=document.getElementById("authEmailContinueButton"),e=document.getElementById("authEmailInput");t&&t.addEventListener("click",()=>{if(this.emailValidation(e.value).success&&this.verifiedRecaptcha().success)this.credentials.email=e.value,this.selectGeneratedHTMLWindowByEmailExists(e.value).then(t=>t);else{document.getElementById("authEmailError").textContent=this.emailValidation(e.value).success?this.verifiedRecaptcha().error:this.emailValidation(e).error}})}passwordCreateContinueClick(){const t=document.getElementById("authPasswordCreateContinueButton"),e=document.getElementById("authPasswordCreateInput"),i=document.getElementById("authPasswordCreateError");t&&t.addEventListener("click",()=>{this.passwordCreateValidation(e.value).length?i.textContent=this.passwordCreateValidation(e.value):(this.credentials.password=e.value,this.remove(),this.signUpRedirectQuery(i).then(t=>t))})}passwordEnterContinueClick(){const t=document.getElementById("authPasswordEnterContinueButton"),e=document.getElementById("authPasswordEnterInput"),i=document.getElementById("authPasswordEnterError");t&&t.addEventListener("click",()=>{e.value?(this.credentials.password=e.value,this.signInRedirectQuery(i).then(t=>t)):i.textContent=this.passwordCreateValidation(e.value)})}closeClick(){const t=document.getElementById("authPopup"),e=document.querySelectorAll("#authClose, #authCloseText");
7e.length&&e.forEach(e=>{e.addEventListener("click",()=>{t.remove()})}),t&&t.addEventListener("click",e=>{e.target.closest(".auth_popup-box")||e.target.closest(".auth_popup-box-full")||t.remove()})}scrollUpClick(){const t=document.getElementById("authPopupBox"),e=document.getElementById("authScrollTopButton");e&&e.addEventListener("click",()=>{t.scrollTo({top:0,behavior:"smooth"}),this.clickGoUpSignUpPopupAmplitude()})}callPopupByBonusBannerClick(){let t=document.getElementsByClassName("authSignupBonusListButton");Array.from(t).forEach(t=>{t.addEventListener("click",()=>{this.generateMainHTML().then()})})}successMessageGenerateHTML(){let t=`\n            <div class="success" id="successMessage">\n                <div class="success_box">\n                    <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">\n                        <path d="M12 22C6.477 22 2 17.523 2 12C2 6.477 6.477 2 12 2C17.523 2 22 6.477 22 12C22 17.523 17.523 22 12 22ZM12 20C14.1217 20 16.1566 19.1571 17.6569 17.6569C19.1571 16.1566 20 14.1217 20 12C20 9.87827 19.1571 7.84344 17.6569 6.34315C16.1566 4.84286 14.1217 4 12 4C9.87827 4 7.84344 4.84286 6.34315 6.34315C4.84285 7.84344 4 9.87827 4 12C4 14.1217 4.84285 16.1566 6.34314 17.6569C7.84344 19.1571 9.87827 20 12 20ZM11.003 16L6.76 11.757L8.174 10.343L11.003 13.172L16.659 7.515L18.074 8.929L11.003 16Z" fill="white"/>\n                    </svg>\n                    <p class="text">${this.translate("Email has been sent")}</p>\n                </div>\n            </div>\n        `;document.body.insertAdjacentHTML("beforeend",t);const e=document.getElementById("successMessage");e.style.animation="show 0.5s forwards ease-in-out",this.hideSuccessMessage(e)}callRecaptcha(){window.grecaptcha?grecaptcha.ready(function(){grecaptcha.render("authRecaptcha",{sitekey:"6LcLHaYnAAAAAFuDmqE4Tx_LHJNCaFZj3jteQ3de"})}):setTimeout(this.callRecaptcha,100)}googleSignupTrackClick(t){t.addEventListener("click",()=>{this.userLoginOneTime?this.clickGoogleLoginAmplitude():this.clickGoogleSignupAmplitude(),!storage.getScrollPosition()&&storage.setScrollPosition(window.scrollY||window.pageYOffset),this.removeTrackEntryTypeStorage()})}removeTrackEntryTypeStorage(){storage.getTrackEntryType()&&storage.removeTrackEntryType()}emailSignupTrackClick(t){t.addEventListener("click",()=>{this.userLoginOneTime?this.clickEmailLoginAmplitude():this.clickEmailSignupAmplitude()})}verifiedRecaptcha(){if(this.userLoginOneTime)return{success:!0};return 0===grecaptcha.getResponse().length?{error:this.translate("Recaptcha not checked"),success:!1}:{success:!0}}hideSuccessMessage(t){setTimeout(()=>{t.remove()},2e3)}timerToSendAgain(t,e){let i=10;const n=setInterval(function(){const s=Math.floor(i/60),a=i%60;t.textContent=`${String(s).padStart(2,"0")}:${String(a).padStart(2,"0")}`,t.style.pointerEvents="none",i<0&&(clearInterval(n),t.textContent=e,t.style.pointerEvents="all"),i--},1e3)}sendResetPasswordClick(t){t.addEventListener("click",async()=>{(await sendResetPasswordLink(this.credentials.email)).sendReset&&(this.timerToSendAgain(t,this.translate("Let’s resend it")),this.successMessageGenerateHTML(),this.clickResetPasswordAmplitude())})}sendConfirmEmailClick(t){t.addEventListener("click",async()=>{(await sendConfirmEmailLink(this.credentials.email)).sendConfirmEmail&&(this.timerToSendAgain(t,this.translate("Let’s resend it")),this.successMessageGenerateHTML(),this.clickSendEmailConfirmPopupAmplitude())})}returnToClick(t,e){t&&t.addEventListener("click",()=>{this.remove(),this.generateHTMLAdapter(e)})}async signInRedirectQuery(t){storage.getGoogleOneTap()&&storage.removeGoogleOneTap(),!storage.getScrollPosition()&&storage.setScrollPosition(window.scrollY||window.pageYOffset);let e=await signIn(this.credentials.email,this.credentials.password);if(e.signIn){let t=new URL(window.location.href),i=new URLSearchParams(t.search);return i.set("logged_in","true"),t.search=i.toString(),this.loginExistingUserAmplitude(e.userId),window.dispatchEvent(new CustomEvent("caAuthSuccess")),window.location.href=t.toString()}return e&&e.errors&&"false_confirm"===e.errors.email&&(this.remove(),this.generateCheckYourEmailStepHTML()),t.textContent=this.translateErrorMessage(e.error?e.error:e?.errors?.password),!1}async signUpRedirectQuery(t){storage.getGoogleOneTap()&&storage.removeGoogleOneTap(),!storage.getScrollPosition()&&storage.setScrollPosition(window.scrollY||window.pageYOffset);let e=await signUp(this.credentials.email,this.credentials.password);return e.signUp?(this.registrationNewUserAmplitude(e.userId,"email"),this.showBlockSignUpPopupAmplitude(),this.generateCheckYourEmailStepHTML(),!0):(t.textContent=this.translateErrorMessage(e?.errors?.password),!1)}passwordShowClick(t){const e=document.getElementById("authPasswordShow");e&&e.addEventListener("click",()=>{t.type="password"===t.type?"input":"password"})}emailValidation(t){return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t)?{success:!0}:{error:this.translate("Invalid email format. Please try again"),success:!1}}passwordCreateValidation(t){return 0===t.length?this.translate("Password cannot be empty. Please try again"):!!/^.{8,}$/.test(t)||this.translate("Password must be 8 characters or longer. Please try again")}async selectGeneratedHTMLWindowByEmailExists(t){(await checkEmailExists(t)).email?(this.remove(),this.generateEnterPasswordStepHTML()):(this.remove(),this.generateCreatePasswordStepHTML())}generateHTMLAdapter(t){return{mainHTML:this.generateMainHTML,emailStepHTML:this.generateEmailStepHTML,createPasswordStep:this.generateCreatePasswordStepHTML}[t].call(this)}loadRecaptchaScript(){if(!document.querySelector('script[src="https://www.google.com/recaptcha/api.js"]')){const t=document.createElement("script");t.src="https://www.google.com/recaptcha/api.js",t.async=!0,t.defer=!0,document.head.appendChild(t)}}showBannerBySpecialTime(t){const e=(new Date).toISOString();setTimeout(()=>{const t=document.getElementById("authPopup"),i=document.querySelector(".bonusesPopup[data-type=wheelsExitPopup].show");i&&storage.setShowAuthWheels(!0),this.showAuthBannerOneTime||this.checkReg
7istrationVia||null!==t||i||(storage.setRegistrationViaAmplitude("reg_popup"),this.generateMainHTML().then(t=>t),storage.setShowAuthBanner(e))},t),window.addEventListener("beforeunload",()=>{if(this.showAuthBannerOneTime){const t=new Date(this.showAuthBannerOneTime),e=new Date;t.getDate()!==e.getDate()&&storage.removeShowAuthBanner()}})}}const authPopup=new AuthPopup;exports.authPopup=authPopup},
7"/var/www/public/build/midori/assets/js/components/Carousel.js":function(exports,__require){class Carousel{constructor(container,{dotsWrapper=null,prevBtn=null,nextBtn=null,slideSelector='.spTrust__slide',arrows=!0,dots=!0,}={}){this.container=container;if(!this.container)return;this.options={dotsWrapper,prevBtn,nextBtn,slideSelector,arrows,dots};this.init()}
8init(){this.getSlides=()=>Array.from(this.container.querySelectorAll(this.options.slideSelector));this.slides=this.getSlides();this.width=this.container.clientWidth||1;this.currentPage=0;this.dots=Array.from(this.options.dotsWrapper?.querySelectorAll('.dot')||[]);this.activeDotIndex=-1;this.setActiveDot=(i)=>{if(i===this.activeDotIndex)return;if(this.dots[this.activeDotIndex])this.dots[this.activeDotIndex].classList.remove('is-active');if(this.dots[i])this.dots[i].classList.add('is-active');this.activeDotIndex=i};if(this.options.dots&&this.options.dotsWrapper){this.options.dotsWrapper.addEventListener('click',(e)=>{e.stopPropagation();const btn=e.target.closest('.dot');if(!btn)return;const i=Number(btn.dataset.index||0);this.goToReal(i)})}
9this.getNearestIndex=()=>{const cRect=this.container.getBoundingClientRect();const cCenter=cRect.left+cRect.width/2;let best=0;let bestDist=Infinity;this.slides.forEach((slide,i)=>{const r=slide.getBoundingClientRect();const sCenter=r.left+r.width/2;const dist=Math.abs(sCenter-cCenter);if(dist<bestDist){bestDist=dist;best=i}});return best};this.onScroll=()=>{if(this.rafId)return;this.rafId=requestAnimationFrame(()=>{this.rafId=null;this.updateArrows?.()})};this.container.addEventListener('scroll',this.onScroll,{passive:!0});this.snapNow=()=>{const i=this.getNearestIndex();this.goTo(i,'smooth')};this.container.addEventListener?.('scrollend',this.snapNow);this.onScrollDebounced=()=>{clearTimeout(this.scrollDebounce);this.scrollDebounce=setTimeout(this.snapNow,120)};this.container.addEventListener('scroll',this.onScrollDebounced,{passive:!0});if(this.options.arrows){this.options.prevBtn?.addEventListener('click',(e)=>{e.stopPropagation();this.goTo(this.getCurrentPage()-1,'smooth')});this.options.nextBtn?.addEventListener('click',(e)=>{e.stopPropagation();this.goTo(this.getCurrentPage()+1,'smooth')})}
10this.updateArrows=()=>{if(!this.options.arrows)return;const maxPage=Math.max(0,this.slides.length-1);const i=this.getCurrentPage();if(this.options.prevBtn)this.options.prevBtn.disabled=i<=0;if(this.options.nextBtn)this.options.nextBtn.disabled=i>=maxPage};this.onResize=()=>{this.width=this.container.clientWidth||1;this.goTo(this.getCurrentPage(),'auto');this.updateArrows?.()};window.addEventListener('resize',this.onResize);this.setActiveDot(0);this.updateArrows?.()}
11getCurrentPage(){return this.getNearestIndex?this.getNearestIndex():Math.round(this.container.scrollLeft/(this.container.clientWidth||1))}
12goTo(i,behavior='smooth'){const maxPage=Math.max(0,this.slides.length-1);const target=Math.min(maxPage,Math.max(0,i));this.container.scrollTo({left:(this.container.clientWidth||1)*target,behavior});this.setActiveDot(target);this.updateArrows?.()}
13goToReal(realIdx){this.goTo(realIdx,'smooth')}
14destroy(){window.removeEventListener('resize',this.onResize);this.container.removeEventListener('scroll',this.onScroll);this.container.removeEventListener('scroll',this.onScrollDebounced);this.container.removeEventListener?.('scrollend',this.snapNow);if(this.scrollDebounce)clearTimeout(this.scrollDebounce);if(this.rafId)cancelAnimationFrame(this.rafId);}}
15const __default_export__=Carousel;exports.default=__default_export__}
15,"__entry__":function(exports,__require){const __dep_b6e70e73a5=__require("__bridge__:globals");const buildExternalIdSearch=__dep_b6e70e73a5.buildExternalId;const eventIDSearch=__dep_b6e70e73a5.eventID;const utmParamsSearch=__dep_b6e70e73a5.utmParams;const __dep_82b3d6048d=__require("__bridge__:api");const fetchOffersSearchForm=__dep_82b3d6048d.fetchOffers;const geoCloudflareLocationSearchForm=__dep_82b3d6048d.geoCloudflareLocation;const __dep_f37687cd1c=__require("__bridge__:translate");const __sw_translate=__dep_f37687cd1c.__translate;const __dep_a174b289f7=__require("__bridge__:CentrifugeManager");const searchWidgetCentrifugeManager=__dep_a174b289f7.centrifugeManager;const __dep_9c3257994b=__require("__bridge__:secureApiClient");const secureApiFetch=__dep_9c3257994b.secureApiFetch;const __dep_fd07a479f5=__require("/var/www/public/build/midori/assets/js/auth/popups/authPopup.min.js");const registrationWidgetAuthPopup=__dep_fd07a479f5.authPopup;const __dep_877bdae0d6=__require("__bridge__:globals");const socialProofWidgetEventId=__dep_877bdae0d6.eventID;const socialProofUtmParams=__dep_877bdae0d6.utmParams;const __dep_e04828351d=__require("/var/www/public/build/midori/assets/js/auth/popups/authPopup.min.js");const socialProofWidgetAuthPopup=__dep_e04828351d.authPopup;const __dep_46a34949cf=__require("/var/www/public/build/midori/assets/js/components/Carousel.js");const SocialProofCarousel=__dep_46a34949cf.default;const __dep_4b16865d67=__require("__bridge__:globals");const subscribeWidgetBrevoUtmData=__dep_4b16865d67.brevoUtmData;const subscribeWidgetElementInViewport=__dep_4b16865d67.elementInViewport;const subscribeWidgetEventId=__dep_4b16865d67.eventID;
15const subscribeWidgetUtmParams=__dep_4b16865d67.utmParams;const __dep_68977dce3d=__require("__bridge__:globals");const eventIDLockWidget=__dep_68977dce3d.eventID;const SEARCH_FORM_VER='1.0';const searchFormFuncSearchForm=()=>{const searchFormInput=document.querySelector(`.frontSearch__form #form_domain`);const searchFormBtn=document.querySelector(`.frontSearch__form #form_save`);const headerSearchFront=document.querySelector(`.frontSearch`);const headerSearchForm=document.querySelector(`.frontSearch__form form`);const primeBlock=document.querySelector(`.prime-bg`);const frontSearchBtnClose=document.querySelector(`.frontSearch__btn--close`);const frontSearchFormBtn=document.querySelector(`.frontSearch__form__btn`);const LOCALE_COUNTRY=document.querySelector(`body`).dataset.localeCountry.toLowerCase();const COUNTRY_NAME=(searchDropdownSearchForm.dataset.country===`Poland`||searchDropdownSearchForm.dataset.country==='Polska')?`Polsce`:searchDropdownSearchForm.dataset.country;const goToMainDomainUrl=(url)=>{const localePrefix=searchDropdownSearchForm.dataset.localePrefix;document.location.href=localePrefix?`/${localePrefix}${url}`:url};const getLoc=async()=>{let loc=document.body.dataset.geo;if(!loc)loc=await geoCloudflareLocationSearchForm();storage.setGeo(loc);return loc}
16const getOffers=async(limit=6)=>{let widgetId=null;let pageId=null;let loc=await getLoc();headerSearchFront.dataset.widgetId?widgetId=headerSearchFront.dataset.widgetId:widgetId;document.body.dataset.pageId?pageId=document.body.dataset.pageId:pageId;let searchFormPopular=storage.getSearchFormPopular();if(!searchFormPopular){let endpointByOutputType=`/api/offers?country=${loc}&limit=${limit}&sort=true`;if(widgetId){endpointByOutputType+=`&sponsored=true&widget_id=${widgetId}&page_id=${pageId}`}
17searchFormPopular=await fetchOffersSearchForm(endpointByOutputType).then(data=>{storage.setSearchFormPopular(data);return data})}else{searchFormPopular=storage.getSearchFormPopular()}
18return searchFormPopular}
19const getSlots=async(limit=5)=>{let loc=await getLoc();let searchFormSlots=storage.getSearchFormSlots();if(!searchFormSlots){searchFormSlots=await secureApiFetch({url:`/api/slots?country=${loc}&limit=${limit}`,method:'GET',headers:{'Content-Type':'application/json'},security:{requireSecure:!0,scope:'slots'}}).then(data=>data.map(item=>{return item})).then(data=>{storage.setSearchFormSlots(data);return data})}else searchFormSlots=storage.getSearchFormSlots();return searchFormSlots}
20const SEARCH_COUNT_ALL=9;const SEARCH_COUNT=5;const getSearch=async(value,type=`all`)=>await secureApiFetch({url:`/search-hint?search=${value}&limit=${type === `all` ? SEARCH_COUNT_ALL : SEARCH_COUNT}&type=${type}`,method:'GET',headers:{'Content-Type':'application/json'},security:{requireSecure:!0,scope:'search_hint'}});let renderedSearchDropdown=!1;if(searchFormInput){searchFormInput.setAttribute(`autocomplete`,`off`);searchFormInput.addEventListener(`click`,e=>{e.stopPropagation()});searchFormInput.addEventListener(`focus`,e=>{e.stopPropagation();showSearchDropdown()});let debounceTimer;let lastInputValue='';searchFormInput.addEventListener(`input`,e=>{e.stopPropagation();const inputValue=e.target.value;clearTimeout(debounceTimer);if(inputValue!==lastInputValue){lastInputValue=inputValue;debounceTimer=setTimeout(()=>{renderSearchResult(inputValue).then(r=>r)},1000)}});searchFormBtn.addEventListener(`click`,e=>{e.stopPropagation();showSearchDropdown();let searchResult=document.querySelector(`.search__result--container .item`);searchResult&&!headerSearchForm?searchResult.click():showSearchDropdown()});headerSearchForm&&headerSearchForm.addEventListener(`submit`,e=>{e.preventDefault();let searchResult=document.querySelector(`.search__result--container .item`);searchResult&&searchResult.click()});searchDropdownSearchForm.addEventListener(`click`,e=>{e.stopPropagation()})}
21document.body.addEventListener(`click`,()=>{if(document.body.classList.contains(`searchDropdown`)){document.body.classList.remove(`searchDropdown`)}})
22const renderSearchResult=async(value)=>{const searchContainer=document.querySelector(`.search__result--container`);searchContainer.innerHTML=``;if(!value.length)return;const type=document.querySelector(`.search__btns--items button.active`).dataset.name;const createSkeletonBlock=(count=1)=>{const skeletonBlock=document.createElement('div');skeletonBlock.className='search__popular search__popular--skeleton';const blockItems=document.createElement('div');blockItems.className='search__popular--items';for(let i=0;i<count;i++){const skeletonItem=document.createElement('div');skeletonItem.className='item__skeleton';skeletonItem.innerHTML=`
23                <span class="item__skeleton--block skeleton"></span>
24                <span class="item__skeleton--rating skeleton"></span>
25                <span class="item__skeleton--name skeleton"></span>`;blockItems.append(skeletonItem)}
26skeletonBlock.append(blockItems);return skeletonBlock}
27searchContainer.append(createSkeletonBlock());const result=await getSearch(value,type);const casinos=result.filter(item=>item.group==='casino');const bonuses=result.filter(item=>item.group==='bonus');const slots=result.filter(item=>item.group==='slot');searchContainer.innerHTML=``;switch(type){case 'all':searchContainer.append(casinos.length?await renderSearchReviews(casinos,3):``,slots.length?await renderSearchSlots(slots,3):``);break;case 'bonus':bonuses.length&&searchContainer.append(await renderSearchBonuses(bonuses,5));break;case 'slot':slots.length&&searchContainer.append(await renderSearchSlots(slots,5));break}}
28frontSearchFormBtn&&frontSearchFormBtn.addEventListener(`click`,e=>{e.stopPropagation();let searchResult=document.querySelector(`.search__result--container .item`);searchResult?searchResult.click():showSearchDropdown()})
29frontSearchBtnClose&&frontSearchBtnClose.addEventListener(`click`,e=>{e.stopPropagation();headerSearchFront.classList.remove(`show`);frontSearchBtnClose.classList.remove(`active`);if(primeBlock)primeBlock.style.overflow=`hidden`})
30document.body.addEventListener(`click`,e=>{if(headerSearchFront&&headerSearchFront.classList.contains(`show`)){headerSearchFront.classList.remove(`show`);frontSearchBtnClose.classList.remove(`active`);if(primeBlock)primeBlock.style.overflow=`hidden`}})
31const showSearchDropdown=()=>{if(!renderedSearchDropdown)renderSearchDropdown();headerSearchFront.classList.add(`show`);frontSearchBtnClose.classList.add(`active`);if(primeBlock)primeBlock.style.overflow=`inherit`}
32const renderSearchDropdown=()=>{renderedSearchDropdown=!0;const popularContainer=renderSearchPopularContainer();const popular=renderSearchPopular();popularContainer.append(popular,renderSearchNav());const scrollContainer=document.createElement('div');scrollContainer.className='search__scroll--container';scrollContainer.append(renderSearchContainer(),popularContainer);searchDropdownSearchForm.append(renderSearchBtns(),scrollContainer);handleSearchBtns()};const renderSearchContainer=()=>{let div=document.createElement(`div`);div.className=`search__result--container`;return div}
33const handleSearchBtns=()=>{const btns=document.querySelectorAll(`.search__btns--items button`);const popularContainer=document.querySelector(`.search__popular--container`);btns.forEach(btn=>{btn.addEventListener(`click`,e=>{e.stopPropagation();popularContainer.innerHTML=``;const activeBtn=document.querySelector(`.search__btns--items button.active`);if(activeBtn)activeBtn.classList.remove(`active`);btn.classList.add(`active`);switch(btn.dataset.name){case `all`:popularContainer.append(renderSearchPopular(),renderSearchNav());break;case `bonus`:popularContainer.append(renderSearchPopularBonuses());break;case `slot`:const slotsBlock=renderSearchPopularSlots();popularContainer.append(renderSearchPopular(),slotsBlock);break}
34renderSearchResult(searchFormInput.value)})})};const renderSearchBtns=()=>{const bonusPath=searchDropdownSearchForm.dataset.bonus;const slotPath=searchDropdownSearchForm.dataset.slot;const block=document.createElement(`div`);block.className=`search__btns`;block.innerHTML=`<div class="search__btns--items">
35	      <button type="button" data-name="all" class="active">${__sw_translate("All", LOCALE_COUNTRY)}</button>
36	      ${bonusPath && `<button type="button" data-name="bonus">${__sw_translate("Bonuses",LOCALE_COUNTRY)}</button>`}
37	      ${slotPath && `<button type="button" data-name="slot">${__sw_translate("Slots",LOCALE_COUNTRY)}</button>`}
38	  </div>`;return block}
39const renderSearchNav=()=>{const casinoPath=searchDropdownSearchForm.dataset.casino;const bonusPath=searchDropdownSearchForm.dataset.bonus;const slotPath=searchDropdownSearchForm.dataset.slot;const domainName=document.location.host.replace(`loc.`,``).replace(`dev.`,``).replace(`green.`,``).replace(`blue.`,``);let data=[];if(domainName===`casinosanalyzer.com`)data.push({text:__sw_translate("Free spins no deposit",LOCALE_COUNTRY),path:`free-spins-no-deposit`});if(bonusPath)data.push({text:__sw_translate("Casino bonuses",LOCALE_COUNTRY),path:bonusPath});if(domainName===`casinosanalyzer.com`)data.push({text:__sw_translate("New bonuses",LOCALE_COUNTRY),path:`free-spins-no-deposit/new`});if(casinoPath)data.push({text:__sw_translate("Online casinos",LOCALE_COUNTRY),path:casinoPath});if(slotPath)data.push({text:__sw_translate("Free slots",LOCALE_COUNTRY),path:slotPath});const block=document.createElement(`div`);block.className=`search__nav`;block.innerHTML=data.map(item=>`<a href="${`/${item.path}`}">
40      <img src="/build/midori/img/redesign/search.svg" alt="search">
41      <span>${item.text}</span>
42  </a>`).join(``);return block}
43const renderSearchPopularContainer=()=>{const block=document.createElement(`div`);block.className=`search__popular--container`;return block}
44const amplitudeDataset=(block,item,index)=>{block.dataset.score=JSON.stringify(item.score?item.score:item.rate?item.rate:4);block.dataset.titleShort=JSON.stringify(item.titleShort?item.titleShort:null);block.dataset.affiliateUrl=JSON.stringify(item.affiliateUrl?item.affiliateUrl:null);block.dataset.id=JSON.stringify(item.id?item.id:null);block.dataset.amountMax=JSON.stringify(item.amountMax?item.amountMax:0);block.dataset.percent=JSON.stringify(item.percent?item.percent:0);block.dataset.expired=JSON.stringify(item.expiredDate?item.expiredDate:null);block.dataset.wageringRequirements=JSON.stringify(item.wageringRequirements?item.wageringRequirements:0);block.dataset.depositMin=JSON.stringify(item.depositMinValue);block.dataset.code=JSON.stringify(item.code?item.code:null);block.dataset.label=JSON.stringify(item.label?item.label:null);block.dataset.bonusCategories=JSON.stringify(item.bonusCategories?item.bonusCategories:null);block.dataset.bonusTypes=JSON.stringify(item.bonusTypes?item.bonusTypes:null);block.dataset.freeSpins=JSON.stringify(item.freeSpins?item.freeSpins:0);block.dataset.widget_list_index=JSON.stringify(index);block.dataset.currency=JSON.stringify(item.currency&&Array.isArray(item.currency)&&item.currency.length&&!(item.currency).every(item=>item===null)?item.currency:["Not Set"]);block.dataset.slots=JSON.stringify(item.slots&&Array.isArray(item.slots)&&item.slots.length?item.slots.map(item=>item.name):["Not Set"]);block.dataset.casino_bonus_category_display=JSON.stringify(null);block.dataset.casino_geo_rating=JSON.stringify(item.score?+item.score.toFixed(1):0);block.dataset.casino_bonus_exclusive=JSON.stringify(item.exclusive?item.exclusive:!1);block.dataset.casino_bonus_code=JSON.stringify(item.code?item.code:"Not Set");block.dataset.casino_bonus_cashable=JSON.stringify(item.cashable?item.cashable:!1);if(item.casino){block.dataset.casinoId=JSON.stringify(item.casino.casinoId);block.dataset.name=JSON.stringify(item.casino.name);block.dataset.domain=JSON.stringify(item.casino.domain)}else{block.dataset.casinoId=JSON.stringify(null);block.dataset.name=JSON.stringify(item.name?item.name:null);block.dataset.domain=JSON.stringify(item.domain?item.domain:item.slug?item.slug:null)}
45let casino_bonus_days_after_create=0;if(item.created){const createdDate=new Date(item.created.date);const currentDate=new Date();const diffTime=Math.abs(currentDate-createdDate);casino_bonus_days_after_create=Math.floor(diffTime/(1000*60*60*24))}
46block.dataset.casino_bonus_days_after_create=JSON.stringify(+casino_bonus_days_after_create);let casino_bonus_active_days_left=365;if(item.expiredDate){const expiredDate=new Date(item.expiredDate.date);const currentDate=new Date();if(expiredDate<currentDate)casino_bonus_active_days_left=0;else{const diffTime=Math.abs(expiredDate-currentDate);casino_bonus_active_days_left=Math.floor(diffTime/(1000*60*60*24))+1}}
47block.dataset.casino_bonus_active_days_left=JSON.stringify(+casino_bonus_active_days_left);block.dataset.promo=JSON.stringify(item.sponsored?!0:!1);return block}
48const renderSearchPopular=()=>{const block=document.createElement('div');block.className='search__popular';block.innerHTML=headerSearchFront.dataset.promoDisplay==='true'?`<p>${__sw_translate("Featured partners", LOCALE_COUNTRY)}</p>`:`<p>${__sw_translate("Popular search results in", LOCALE_COUNTRY)} <span>${COUNTRY_NAME}</span></p>`;const blockItems=document.createElement('div');blockItems.className='search__popular--items';for(let i=0;i<5;i++){const skeletonItem=document.createElement('div');skeletonItem.className='item__skeleton';skeletonItem.innerHTML=`<span class="item__skeleton--block skeleton"></span><span class="item__skeleton--rating skeleton"></span><span class="item__skeleton--name skeleton"></span>`;blockItems.append(skeletonItem)}
49block.append(blockItems);getOffers(6).then(data=>{const items=data.slice(0,5).map((item,index)=>{const rating=[];for(let i=1;i<=5;i++){rating.push(`<img src="/build/midori/img/redesign/${i <= Math.round(item.sponsored ? 5 : item.casino.score) ? 'star-full' : 'star'}.svg" alt="star">`)}
50let blockItem=document.createElement('a');blockItem.className='item';blockItem.href=`/redirect?domain=${encodeURIComponent(item.casino.domain)}&bonus=${encodeURIComponent(item.id)}&offer_type=${item.offerType}`;blockItem.target=`_blank`;blockItem.rel=`nofollow noopener`;blockItem.dataset.element=`bonus_btn`;blockItem=amplitudeDataset(blockItem,item,++index);blockItem.innerHTML=`
51                <div class="item__logo ${item.sponsored ? 'item__logo--promo' : ''}">
52                    <div class="item__logo--wrapper" style="background-color: #${item.casino.background || 'fff'}">
53                        ${item.sponsored ? `<div class="item__logo--timer"><svg><use href="/build/midori/assets/icons/icons_264.svg#stopwatch"></use></svg>Limited</div>` : ''}
54                        <img src="${item.casino.logo || 'fff'}" alt="${item.casino.name}">
55                    </div>
56                </div>
57                <div class="item__rating">${rating.join('')}</div>
58                <p class="item__title">${item.casino.name}</p>
59            `;blockItem.addEventListener('click',e=>{e.stopPropagation();searchWidgetCentrifugeManager.publishCustomEvent('bonusClicked',{bonusId:item.id,isSponsored:item.sponsored});setTimeout(()=>searchAmplitudeClick(blockItem),0)});return blockItem});blockItems.innerHTML='';
59items.forEach(item=>blockItems.append(item))});return block};const renderSearchPopularBonuses=()=>{const block=document.createElement(`div`);block.className=`search__popular search__popular--bonuses`;block.innerHTML=headerSearchFront.dataset.sponsoredDisplay==='true'?`<p>${__sw_translate("Featured partners", LOCALE_COUNTRY)}</p>`:`<p>${__sw_translate("Popular Bonuses in", LOCALE_COUNTRY)} <span>${COUNTRY_NAME}</span></p>`;const blockItems=document.createElement(`div`);blockItems.className=`search__popular--items`;for(let i=0;i<4;i++){const skeletonItem=document.createElement('div');skeletonItem.className='item__skeleton';skeletonItem.innerHTML=`<span class="item__skeleton--block skeleton"></span><span class="item__skeleton--rating skeleton"></span><span class="item__skeleton--name skeleton"></span>`;blockItems.append(skeletonItem)}
60block.append(blockItems);getOffers(5).then(data=>{blockItems.innerHTML='';data.slice(0,4).forEach((item,index)=>{let blockItem=document.createElement(`a`);blockItem.className=`item`;blockItem.href=`/redirect?domain=${encodeURIComponent(item.casino.domain)}&bonus=${encodeURIComponent(item.id)}&offer_type=${item.offerType}`;blockItem.target=`_blank`;blockItem.rel=`nofollow noopener`;blockItem.dataset.element=`bonus_btn`;blockItem=amplitudeDataset(blockItem,item,++index);blockItem.innerHTML=`<div class="item__logo ${item.sponsored ? 'promo' : ''}" style="background-color: #${item.casino.background}">
61                <img src="${item.casino.logo}" alt="${item.casino.name}">
62            </div>
63            <div class="item__info">
64                <p class="item__title">
65                    <span>${item.title}</span>
66                    <img src="/build/midori/img/redesign/star-full.svg" alt="star">
67                    ${item.score.toFixed(1)}
68                </p>
69                <p class="item__subtitle">${__sw_translate("In Bonuses", LOCALE_COUNTRY)}</p>
70            </div>`;blockItem.addEventListener(`click`,e=>{e.stopPropagation();searchWidgetCentrifugeManager.publishCustomEvent('bonusClicked',{bonusId:item.id,isSponsored:item.sponsored});setTimeout(()=>searchAmplitudeClick(blockItem),0)});blockItems.append(blockItem)})});return block};const renderSearchPopularSlots=()=>{const RANK_DEFAULT=4;const block=document.createElement(`div`);block.className=`search__popular search__popular--slots`;block.innerHTML=`<p>${__sw_translate("Popular Slots in", LOCALE_COUNTRY)} <span>${COUNTRY_NAME}</span></p>`;const blockItems=document.createElement(`div`);blockItems.className=`search__popular--items`;for(let i=0;i<4;i++){const skeletonItem=document.createElement('div');skeletonItem.className='item__skeleton';skeletonItem.innerHTML=`<span class="item__skeleton--block skeleton"></span><span class="item__skeleton--rating skeleton"></span><span class="item__skeleton--name skeleton"></span>`;blockItems.append(skeletonItem)}
71block.append(blockItems);getSlots(5).then(data=>{if(!data.length)return;blockItems.innerHTML='';const slotPath=searchDropdownSearchForm.dataset.slot;data.slice(0,4).forEach((item,index)=>{let blockItem=document.createElement(`div`);blockItem.className=`item`;blockItem=amplitudeDataset(blockItem,item,++index);blockItem.innerHTML=`<div class="item__info">
72                <p class="item__title">
73                    <span>${item.name}</span>
74                    <img src="/build/midori/img/redesign/star-full.svg" alt="star">
75                    ${item.rank ? item.rank.toFixed(1) : RANK_DEFAULT.toFixed(1)}
76                </p>
77                <p class="item__subtitle">${__sw_translate("In Slots", LOCALE_COUNTRY)}</p>
78            </div>`;blockItem.addEventListener(`click`,e=>{e.stopPropagation();goToMainDomainUrl(`/${slotPath}/${item.slug}`);setTimeout(()=>searchAmplitudeClick(blockItem),0)});blockItems.append(blockItem)})});return block};const renderSearchReviews=async(data,limit)=>{const SCORE_DEFAULT=4;const SCORE_MAX=5;let items=data.slice(0,limit).map((item,index)=>{let block=document.createElement(`div`);block.className=`item`;block=amplitudeDataset(block,item,++index);block.innerHTML=`<div class="item__logo" style="background-color: #${item.background}">
79            <img src="${item.logo}" alt="${item.name}">
80        </div>
81				<div class="item__info">
82					<p class="item__title">
83						<span>${item.name}</span>
84						<img src="/build/midori/img/redesign/star-full.svg" alt="star">
85	          ${item.score ? (item.score > SCORE_MAX ? SCORE_DEFAULT.toFixed(1) : item.score.toFixed(1)) : SCORE_DEFAULT.toFixed(1)}
86					</p>
87					<p class="item__subtitle">${__sw_translate("In Bonus reviews", LOCALE_COUNTRY)}</p>
88        </div>`;block.addEventListener(`click`,e=>{e.stopPropagation();const bonusPath=searchDropdownSearchForm.dataset.bonus;goToMainDomainUrl('/'+bonusPath+'/'+item.slug);setTimeout(()=>{searchAmplitudeClick(block)},0)})
89return block});const block=document.createElement(`div`);block.className=`search__popular search__popular--casinos`;block.innerHTML=`<p>${__sw_translate("Found in", LOCALE_COUNTRY)} ${__sw_translate("Bonus reviews", LOCALE_COUNTRY)}</p>`;let blockItems=document.createElement(`div`);blockItems.className=`search__popular--items`;
89items.forEach(item=>blockItems.append(item));block.append(blockItems);return block}
90const renderSearchBonuses=async(data,limit)=>{let items=data.slice(0,limit).map((item,index)=>{let block=document.createElement(`div`);block.className=`item`;block=amplitudeDataset(block,item,++index);block.innerHTML=`<div class="item__logo" style="background-color: #${item.background}">
91            <img src="${item.logo}" alt="${item.name}">
92        </div>
93				<div class="item__info">
94					<p class="item__title">
95						<span>${item.alias}</span>
96						<img src="/build/midori/img/redesign/star-full.svg" alt="star">
97	          ${item.score ? item.score.toFixed(1) : 4.5}
98					</p>
99					<p class="item__subtitle">${__sw_translate("In Bonus reviews", LOCALE_COUNTRY)}</p>
100        </div>`;block.addEventListener(`click`,e=>{e.stopPropagation();goToMainDomainUrl(item.path);setTimeout(()=>{searchAmplitudeClick(block)},0)})
101return block});const block=document.createElement(`div`);block.className=`search__popular search__popular--bonuses`;block.innerHTML=`<p>${__sw_translate("Found in Bonus reviews", LOCALE_COUNTRY)}</p>`;let blockItems=document.createElement(`div`);blockItems.className=`search__popular--items`;items.forEach(item=>blockItems.append(item));block.append(blockItems);return block}
102const renderSearchSlots=async(data,limit)=>{const RANK_DEFAULT=4;const RANK_MAX=4;let items=data.slice(0,limit).map((item,index)=>{let block=document.createElement(`div`);block.className=`item`;block=amplitudeDataset(block,item,++index);block.innerHTML=`<div class="item__info">
103					<p class="item__title">
104						<span>${item.name}</span>
105						<img src="/build/midori/img/redesign/star-full.svg" alt="star">
106	          ${item.rank ? (item.rank > RANK_MAX ? RANK_DEFAULT.toFixed(1) : item.rank.toFixed(1)) : RANK_DEFAULT.toFixed(1)}
107					</p>
108					<p class="item__subtitle">${__sw_translate("In Slots", LOCALE_COUNTRY)}</p>
109        </div>`;block.addEventListener(`click`,e=>{e.stopPropagation();goToMainDomainUrl(item.path);setTimeout(()=>{searchAmplitudeClick(block)},0)});return block});const block=document.createElement(`div`);block.className=`search__popular search__popular--slots`;block.innerHTML=`<p>${__sw_translate("Found in Slots", LOCALE_COUNTRY)}</p>`;let blockItems=document.createElement(`div`);blockItems.className=`search__popular--items`;items.forEach(item=>blockItems.append(item));block.append(blockItems);return block}
110window.addEventListener('pagehide',()=>{storage.getSearchFormPopular()?storage.removeSearchFormPopular():null})}
111let searchAffLinkClickIndex=0;const searchAmplitudeClick=async item=>{const searchForm=document.querySelector('#form_domain');const headerSearch=document.querySelector(`.header__search`);const container=headerSearch?headerSearch:searchForm.closest(`.container-fluid`);const widgetId=container.dataset.widgetId;const widgetHandler=container.dataset.widgetHandler;const widgetPosition=container.dataset.widgetPosition;const casinoScoreGeoText=(value)=>{let casino_score_geo_text="";if(value===5){casino_score_geo_text="A"}else if(value>4.5&&value<=4.9){casino_score_geo_text="B"}else if(value>4&&value<=4.5){casino_score_geo_text="C"}else if(value<=4){casino_score_geo_text="D"}
112return casino_score_geo_text};const PAGE__CURRENT__PATH=document.location.pathname,PAGE__URL=document.location.origin+document.location.pathname,PAGE__URL__FULL=document.location.href,ROUTE=document.body.dataset.routeBonus,ROUTE__ID=document.body.dataset.routeId,ROUTE__EXIST=eventIDSearch.findIndex(item=>item===ROUTE),EVENT__ID=ROUTE__EXIST>-1?ROUTE__EXIST+1:eventIDSearch.length,EVENT__CAT=ROUTE__EXIST>-1?eventIDSearch[ROUTE__EXIST]:eventIDSearch[eventIDSearch.length-1],LOCALE__LANG=document.body.dataset.localeLang,WEBSITE__ENVIRONMENT=document.body.dataset.websiteEnv,LOCALE__COUNTRY=document.body.dataset.localeCountry,COUNTRY__BACKEND=document.body.dataset.geo;let element={widgetTitle:"Search form",widgetId:widgetId,widgetHandler:widgetHandler,widgetPosition:widgetPosition}
113let pageAffLinkClickIndex=storage.getPageAffLinkClickIndex();pageAffLinkClickIndex++;storage.setPageAffLinkClickIndex(pageAffLinkClickIndex);searchAffLinkClickIndex++;let btn=item.querySelector(`.item__link`);let btnName=btn?btn.innerHTML:`Popular search result`;let data={score:JSON.parse(item.dataset.score),titleShort:JSON.parse(item.dataset.titleShort),casino:{casinoId:JSON.parse(item.dataset.casinoId),name:JSON.parse(item.dataset.name),domain:JSON.parse(item.dataset.domain),},affiliateUrl:JSON.parse(item.dataset.affiliateUrl),id:JSON.parse(item.dataset.id),amountMax:JSON.parse(item.dataset.amountMax),percent:JSON.parse(item.dataset.percent),expired:JSON.parse(item.dataset.expired),wageringRequirements:JSON.parse(item.dataset.wageringRequirements),depositMin:JSON.parse(item.dataset.depositMin),code:JSON.parse(item.dataset.code),label:JSON.parse(item.dataset.label),bonusCategories:JSON.parse(item.dataset.bonusCategories),bonusTypes:JSON.parse(item.dataset.bonusTypes),freeSpins:JSON.parse(item.dataset.freeSpins),currency:JSON.parse(item.dataset.currency),slots:JSON.parse(item.dataset.slots),casino_geo_rating:JSON.parse(+item.dataset.casino_geo_rating),
113casino_bonus_active_days_left:JSON.parse(+item.dataset.casino_bonus_active_days_left),casino_bonus_days_after_create:JSON.parse(+item.dataset.casino_bonus_days_after_create),casino_bonus_exclusive:JSON.parse(item.dataset.casino_bonus_exclusive),casino_bonus_code:JSON.parse(item.dataset.casino_bonus_code),casino_bonus_cashable:JSON.parse(item.dataset.casino_bonus_cashable),sponsored:JSON.parse(item.dataset.sponsored?!0:!1)}
114const externalId=await buildExternalIdSearch(data.id);dataLayer.push(Object.assign({'event_id':`d-v1-${item.dataset.widget_list_index}`,'event':'addEvents_clickAffLink','event_cat':'w_website_search_form_widget_new','event_name':'casino_visit',"casino_bonus_button_name":JSON.stringify(btnName),"casino_user_country_allowed":JSON.stringify(!0),"page_afflink_click_index":JSON.stringify(pageAffLinkClickIndex),"widget_afflink_click_index":JSON.stringify(searchAffLinkClickIndex),"widget_list_index":JSON.stringify(item.dataset.widget_list_index),"website_domain":JSON.stringify(document.location.hostname),},{"page_current_path":JSON.stringify(PAGE__CURRENT__PATH),"page_url":JSON.stringify(PAGE__URL),"page_url_full":JSON.stringify(PAGE__URL__FULL),"page_group":JSON.stringify(EVENT__CAT),"widget_title":JSON.stringify(element.widgetTitle),"widget_id":JSON.stringify(element.widgetId),"page_route_id":JSON.stringify(ROUTE__ID),"widget_handler":JSON.stringify(element.widgetHandler),"widget_position":JSON.stringify(element.widgetPosition),"casino_list_user_country":JSON.stringify(COUNTRY__BACKEND),"casino_user_country":JSON.stringify(COUNTRY__BACKEND),"casino_list_for_geo":JSON.stringify(element.widgetBonusCountry?element.widgetBonusCountry:element.widgetCasinoCountry?element.widgetCasinoCountry:!1)},{"casino_bonus_title_short":JSON.stringify(data.titleShort?data.titleShort:''),"casino_bonus_title_short_strlen":JSON.stringify(data.titleShort?data.titleShort.length:0),"casino_id":JSON.stringify(data.casino.casinoId),"casino_name":JSON.stringify(data.casino.name),"casino_domain":JSON.stringify(data.casino.domain),"casino_bonus_amount_max":JSON.stringify(data.amountMax&&!isNaN(parseInt(data.amountMax))?parseInt(data.amountMax):0),"casino_bonus_percent":JSON.stringify(data.percent?data.percent:0),"casino_bonus_expired":JSON.stringify(!!data.expired),"casino_bonus_id":JSON.stringify(data.id),...(externalId?{"external_id":JSON.stringify(externalId)}:{}),"casino_domain_bonus_id":JSON.stringify(`${data.casino.domain}_${data.id}`),"casino_score_geo":JSON.stringify(data.score.toFixed(1)),"casino_afflink_exist":JSON.stringify(!!data.affiliateUrl),"casino_bonus_wagering_requirements":JSON.stringify(data.wageringRequirements&&!isNaN(parseInt(data.wageringRequirements))?parseInt(data.wageringRequirements):0),"casino_bonus_deposit_min":JSON.stringify(parseInt(data.depositMin)),"casino_bonus_code_exist":JSON.stringify(!!data.code),"casino_bonus_label_exist":JSON.stringify(!!data.label),"casino_bonus_category":JSON.stringify(data.bonusCategories&&Array.isArray(data.bonusCategories)?data.bonusCategories.map(item=>item.name):''),"casino_bonus_label":JSON.stringify(data.label?data.label:"Not Set"),"casino_bonus_type":JSON.stringify(data.bonusTypes&&Array.isArray(data.bonusTypes)?data.bonusTypes.map(item=>item.name):''),"casino_bonus_free_spins":JSON.stringify(data.freeSpins?+data.freeSpins:0),"casino_score_geo_text":JSON.stringify(casinoScoreGeoText),"casino_bonus_currency":JSON.stringify(data.currency),"casino_bonus_active":JSON.stringify(!1),"casino_bonus_slots":JSON.stringify(data.slots),"casino_bonus_category_display":JSON.stringify("Not Set"),"casino_geo_rating":JSON.stringify(data.casino_geo_rating?+data.casino_geo_rating:0),"casino_bonus_active_days_left":JSON.stringify(+data.casino_bonus_active_days_left),"casino_bonus_days_after_create":JSON.stringify(+data.casino_bonus_days_after_create),"casino_bonus_exclusive":JSON.stringify(data.casino_bonus_exclusive),"casino_bonus_code":JSON.stringify(data.casino_bonus_code),"casino_bonus_cashable":JSON.stringify(data.casino_bonus_cashable),"sponsored":JSON.stringify(data.sponsored?!0:!1)}
114,utmParamsSearch()))}
115const searchDropdownSearchForm=document.querySelector(`.frontSearch #searchDropdown`);searchDropdownSearchForm&&searchFormFuncSearchForm();class RegistrationWidget{constructor(root=document){this.root=root}
116bindWidget(widget){const button=widget.querySelector('.registrationWidget__button');const buttonText=button?.querySelector('.registrationWidget__buttonText');if(!button){return}
117const userId=document.body?.dataset?.userId;if(userId&&buttonText){buttonText.textContent=button.dataset.profileLabel||'Open profile';button.classList.add('custom_button','bg_green','registrationWidget__button--profile');buttonText.classList.add('custom_button-text')}
118button.addEventListener('click',()=>{if(document.body?.dataset?.userId){window.location.href='/profile';return}
119storage.setRegistrationViaAmplitude('reg');storage.setRegPlacement('RegistrationWidget');registrationWidgetAuthPopup.showBlockSignUpPopupAmplitude();window.location.href='/connect/google'});if(!userId){registrationWidgetAuthPopup.googleSignupTrackClick(button)}}
120init(){this.root.querySelectorAll('.registrationWidget').forEach(widget=>this.bindWidget(widget))}}
121document.addEventListener('DOMContentLoaded',()=>{new RegistrationWidget(document).init()});class SocialProofWidget{constructor(root=document){this.root=root;this.container=this.root.getElementById('spTrustCarousel');this.dotsWrapper=this.root.getElementById('spTrustDots');this.prevBtn=this.root.getElementById('spTrustPrev');this.nextBtn=this.root.getElementById('spTrustNext')}
122redirect(url){window.location.href=url}
123init(){this.bindEvents();if(!this.container)return;this.initRatingUpdater();this.initCarousel()}
124initCarousel(){return new SocialProofCarousel(this.container,{dotsWrapper:this.dotsWrapper,prevBtn:this.prevBtn,nextBtn:this.nextBtn,slideSelector:'.spTrust__slide',})}
125initRatingUpdater(){this.ratingEl=this.root.querySelector('.spRating__rating');this.ratingStarsEl=this.root.querySelector('.spRating__content .spIcon');if(!this.ratingEl)return;this.slides=Array.from(this.container.querySelectorAll('.spTrust__slide'));if(!this.slides.length)return;const initDigitDom=(initial)=>{const current=String(initial||5);const digitWrap=document.createElement('span');digitWrap.className='spRating__digit';const reel=document.createElement('span');reel.className='spRating__digitReel';reel.innerHTML=`<span>${current}</span><span>${current}</span>`;digitWrap.appendChild(reel);const unit=document.createElement('span');unit.className='spRating__unit';unit.textContent='/5';this.ratingEl.textContent='';this.ratingEl.appendChild(digitWrap);this.ratingEl.appendChild(unit);this.digitReel=reel};const updateStars=(rating)=>{if(!this.ratingStarsEl)return;const starsClass=rating===4?'spIcon--stars4':'spIcon--stars5';const starsSrc=rating===4?'/build/midori/img/socialproof-banner/stars4.svg':'/build/midori/img/socialproof-banner/stars5.svg';this.ratingStarsEl.classList.remove('is-animating');void this.ratingStarsEl.offsetWidth;this.ratingStarsEl.classList.remove('spIcon--stars4','spIcon--stars5');this.ratingStarsEl.classList.add(starsClass);this.ratingStarsEl.src=starsSrc;this.ratingStarsEl.classList.add('is-animating')};const getNearestIndex=()=>{const cRect=this.container.getBoundingClientRect();const cCenter=cRect.left+cRect.width/2;let best=0;let bestDist=Infinity;this.slides.forEach((slide,i)=>{const r=slide.getBoundingClientRect();const sCenter=r.left+r.width/2;const dist=Math.abs(sCenter-cCenter);if(dist<bestDist){bestDist=dist;best=i}});return best};let currentIdx=getNearestIndex();let currentVal=Number(this.slides[currentIdx]?.dataset?.rating||5);initDigitDom(currentVal);updateStars(currentVal);const switchTo=(to)=>{if(!this.digitReel)return;const reel=this.digitReel;const top=reel.children[0];const bottom=reel.children[1];if(bottom)bottom.textContent=String(to);reel.style.transform='translateY(-50%)';const onEnd=()=>{reel.removeEventListener('transitionend',onEnd);if(top)top.textContent=String(to);reel.style.transition='none';reel.style.transform='translateY(0)';void reel.offsetWidth;reel.style.transition='';if(bottom)bottom.textContent=String(to);};reel.addEventListener('transitionend',onEnd)};const onScroll=()=>{if(this._rafId)return;this._rafId=requestAnimationFrame(()=>{this._rafId=null;const idx=getNearestIndex();this._ratingPendingIdx=idx;clearTimeout(this._ratingDebounce);this._ratingDebounce=setTimeout(()=>{if(this._ratingPendingIdx!==currentIdx){const nextVal=Number(this.slides[this._ratingPendingIdx]?.dataset?.rating||5);switchTo(nextVal);updateStars(nextVal);
125currentVal=nextVal;currentIdx=this._ratingPendingIdx}},50)})};this.container.addEventListener('scroll',onScroll,{passive:!0});this._cleanupRating=()=>this.container.removeEventListener('scroll',onScroll)}
126pushEvent(eventName,event_cat){try{const PAGE__CURRENT__PATH=document.location.pathname,PAGE__URL=document.location.origin+document.location.pathname,ROUTE=document.body.dataset.routeBonus,ROUTE__ID=document.body.dataset.routeId,ROUTE__EXIST=socialProofWidgetEventId.findIndex(item=>item===ROUTE),EVENT__CAT=ROUTE__EXIST>-1?socialProofWidgetEventId[ROUTE__EXIST]:socialProofWidgetEventId[socialProofWidgetEventId.length-1];setTimeout(()=>{dataLayer&&dataLayer.push(Object.assign({'event':`addEvents_click`,"event_cat":event_cat,"event_name":eventName,"page_current_path":JSON.stringify(PAGE__CURRENT__PATH),"page_url":JSON.stringify(PAGE__URL),"page_group":JSON.stringify(EVENT__CAT),"page_route_id":JSON.stringify(ROUTE__ID),"website_domain":JSON.stringify(document.location.hostname),"widget_id":JSON.stringify(null),},socialProofUtmParams()))},0)}catch(e){console.error(e)}}
127async openRegistrationPopup(){try{localStorage.setItem('reg_placement',JSON.stringify('community_counter'));socialProofWidgetAuthPopup.generateHTMLAdapter('mainHTML')}catch(_){}}
128bindEvents(){const membersCard=document.querySelector('.spCard--members');membersCard?.addEventListener('click',()=>{const userId=document.body?.dataset?.userId;if(!userId){this.pushEvent('register','w_website_communityCounter');window.reg_placement=JSON.stringify('community_counter');this.openRegistrationPopup()}});const bonusesCard=document.querySelector('.spCard--bonuses');bonusesCard?.addEventListener('click',()=>{this.pushEvent('redirect','w_website_bonusesCounter');this.redirect(bonusesCard.dataset.bonusesUrl||'/casino-bonuses')});const casinosCard=document.querySelector('.spCard--casinos');casinosCard?.addEventListener('click',()=>{this.pushEvent('redirect','w_website_casinosCounter');this.redirect(casinosCard.dataset.casinosUrl||'/online-casinos')})}}
129document.addEventListener('DOMContentLoaded',()=>{const widget=new SocialProofWidget(document);widget.init()});class SubscribeWidget{constructor(root=document){this.root=root;this.widgetRoot=this.root.querySelector('.subscribeWidget.widget');this.form=this.widgetRoot?.querySelector('#sib-form')??null;this.input=this.widgetRoot?.querySelector('#EMAIL')??null;this.message=this.widgetRoot?.querySelector('.subscribeWidget__message')??null;this.utmFieldsContainer=this.widgetRoot?.querySelector('.subscribeWidget__utmFields')??null}
130init(){if(!this.widgetRoot||!this.form||!this.input||!this.message)return;this.prepareForm();this.lazyRenderSibLinks();this.bindEvents();this.pushShowEvent()}
131getWidgetId(){return this.widgetRoot?.dataset?.widgetId??null}
132prepareForm(){const clientLocation=document.body.dataset.geo;const locale=(document.body.dataset.localeLang??'en').slice(0,2).toLowerCase();const countryInput=this.widgetRoot.querySelector('#COUNTRY');const domainInput=this.widgetRoot.querySelector('#DOMAIN');const localeInput=this.widgetRoot.querySelector('input[name="locale"]');const utmData=subscribeWidgetBrevoUtmData();let hiddenUtmFields='';if(countryInput){countryInput.value=clientLocation}
133if(domainInput){domainInput.value=document.location.host}
134if(localeInput){localeInput.value=locale||'en'}
135if(utmData){for(const[key,value]of Object.entries(utmData)){hiddenUtmFields+=`<input type="hidden" id="${key.toUpperCase()}" name="${key.toUpperCase()}" autocomplete="off" value="${value}" />\n`}}
136if(this.utmFieldsContainer){this.utmFieldsContainer.innerHTML=hiddenUtmFields}
137window.REQUIRED_CODE_ERROR_MESSAGE='Please choose a country code';window.LOCALE=locale||'en';window.EMAIL_INVALID_MESSAGE=window.SMS_INVALID_MESSAGE='The information provided is invalid. Please review the field format and try again.';window.REQUIRED_ERROR_MESSAGE='This field cannot be left blank. ';window.GENERIC_INVALID_MESSAGE='The information provided is invalid. Please review the field format and try again.';window.translation={common:{selectedList:'{quantity} list selected',selectedLists:'{quantity} lists selected'}};window.BrevoConversationsSetup={onAnalyticEvent:function(){}}}
138lazyRenderSibLinks(){if(!('IntersectionObserver' in window)){this.renderSibLinks();return}
139const observer=new IntersectionObserver((entries)=>
139{entries.forEach((entry)=>{if(entry.isIntersecting){observer.disconnect();this.renderSibLinks()}})},{rootMargin:'400px'});observer.observe(this.widgetRoot)}
140renderSibLinks(){if(!document.querySelector('script[src="https://sibforms.com/forms/end-form/build/main.js"]')){const script=document.createElement('script');script.src='https://sibforms.com/forms/end-form/build/main.js';script.async=!0;script.defer=!0;script.onload=()=>{this.patchBrevoScrollIntoView();this.patchBrevoFocusTargets();this.patchGlobalScroll()};document.head.appendChild(script)}else{this.patchBrevoScrollIntoView();this.patchBrevoFocusTargets();this.patchGlobalScroll()}}
141bindEvents(){this.input.addEventListener('input',()=>{this.setMessage('','')});this.form.addEventListener('submit',()=>{const inputValue=this.input.value;const button=this.widgetRoot.querySelector('.sib-form-block__button-with-loader');const scrollY=window.scrollY;const lock=()=>window.scrollTo(0,scrollY);window.addEventListener('scroll',lock,{passive:!0});setTimeout(()=>{window.removeEventListener('scroll',lock)},2000);if(this.isValidEmail(inputValue)){this.pushEvent('addEvents_click','subscribe','subscribe_block',{'widget_id':JSON.stringify(this.getWidgetId())})}
142this.resetPanels();this.loadingPending(this.input,inputValue,button);this.checkIfSuccess(this.input,inputValue,button)})}
143patchBrevoFocusTargets(){const focusTargets=this.widgetRoot.querySelectorAll('#error-message, #success-message, .entry__error, #sib-form, #sib-container');focusTargets.forEach(target=>{if(!target||target.dataset.preventScrollPatched==='true')return;const nativeFocus=target.focus;target.focus=function patchedFocus(options){if(typeof nativeFocus==='function'){nativeFocus.call(this,Object.assign({},options,{preventScroll:!0}))}};target.scrollIntoView=function patchedScrollIntoView(){};target.dataset.preventScrollPatched='true'})}
144patchBrevoScrollIntoView(){if(Element.prototype.__subscribeWidgetScrollIntoViewPatched)return;const originalScrollIntoView=Element.prototype.scrollIntoView;Element.prototype.scrollIntoView=function patchedScrollIntoView(){if(this.closest&&this.closest('.subscribeWidget .sib-form')){return}
145return originalScrollIntoView.apply(this,arguments)};Element.prototype.__subscribeWidgetScrollIntoViewPatched=!0}
146patchGlobalScroll(){if(window.__subscribeWidgetScrollPatched)return;const originalScrollTo=window.scrollTo;const originalScrollBy=window.scrollBy;
146window.scrollTo=function(...args){const activeForm=document.activeElement?.closest?.('.subscribeWidget');if(activeForm)return;return originalScrollTo.apply(this,args)};window.scrollBy=function(...args){const activeForm=document.activeElement?.closest?.('.subscribeWidget');if(activeForm)return;return originalScrollBy.apply(this,args)};window.__subscribeWidgetScrollPatched=!0}
147resetPanels(){const panels=this.widgetRoot.querySelectorAll('#success-message, #error-message');panels.forEach(panel=>panel.classList.remove('sib-form-message-panel--active'))}
148loadingPending(input,inputValue,button){button.classList.add('loading');button.setAttribute('disabled',!0);input.placeholder=inputValue}
149loadingError(input,button){button.classList.remove('loading');button.removeAttribute('disabled');input.removeAttribute('disabled')}
150loadingSuccess(input,inputValue,button){button&&button.setAttribute('disabled',!0);if(input){input.value=inputValue;input.setAttribute('disabled',!0)}}
151checkIfSuccess(input,inputValue,button,attempt=0){setTimeout(()=>{const successMessage=this.widgetRoot.querySelector('#success-message');const errorMessage=this.widgetRoot.querySelector('#error-message');const errorValidation=this.widgetRoot.querySelector('.entry__error');const errorPanelActive=errorMessage?.classList.contains('sib-form-message-panel--active');if(errorValidation.style.display==='block'){this.loadingError(input,button);this.setMessage(errorValidation.textContent.trim()||this.widgetRoot.dataset.errorMessage,'error')}else if(errorPanelActive){const panelText=errorMessage.querySelector('.sib-form-message-panel__inner-text');this.loadingError(input,button);this.setMessage(panelText?.textContent.trim()||this.widgetRoot.dataset.errorMessage,'error')}else if(successMessage.classList.contains('sib-form-message-panel--active')){this.loadingSuccess(input,inputValue,button);this.setMessage(this.widgetRoot.dataset.successMessage,'success')}else if(attempt<30){this.checkIfSuccess(input,inputValue,button,attempt+1)}else{this.loadingError(input,button);this.setMessage(this.widgetRoot.dataset.errorMessage,'error')}},1000)}
152pushEvent(eventAction,eventName,eventCat,extra={}){try{const PAGE__CURRENT__PATH=document.location.pathname;const PAGE__URL=document.location.origin+document.location.pathname;const ROUTE=document.body.dataset.routeBonus;const ROUTE__ID=document.body.dataset.routeId;const ROUTE__EXIST=subscribeWidgetEventId.findIndex(item=>item===ROUTE);const EVENT__CAT=ROUTE__EXIST>-1?subscribeWidgetEventId[ROUTE__EXIST]:subscribeWidgetEventId[subscribeWidgetEventId.length-1];setTimeout(()=>{dataLayer&&dataLayer.push(Object.assign({'event':eventAction,'event_cat':eventCat,'event_name':eventName,'page_current_path':JSON.stringify(PAGE__CURRENT__PATH),'page_url':JSON.stringify(PAGE__URL),'page_group':JSON.stringify(EVENT__CAT),'page_route_id':JSON.stringify(ROUTE__ID),'website_domain':JSON.stringify(document.location.hostname)},extra,subscribeWidgetUtmParams()))},0)}catch(e){console.error(e)}}
153pushShowEvent(){if(!this.widgetRoot)return;let widgetViewed=!1;const onInView=()=>{if(widgetViewed)return;if(subscribeWidgetElementInViewport(this.widgetRoot)){widgetViewed=!0;setTimeout(()=>{this.pushEvent('addEvents_showBlock','view','subscribe_block',{'widget_id':JSON.stringify(this.getWidgetId()),'page_url_full':JSON.stringify(document.location.href)})},2000);if(window.removeEventListener){removeEventListener('DOMContentLoaded',onInView);removeEventListener('load',onInView);removeEventListener('scroll',onInView);removeEventListener('resize',onInView)}else if(window.detachEvent){detachEvent('onDOMContentLoaded',onInView);detachEvent('onload',onInView);detachEvent('onscroll',onInView);detachEvent('onresize',onInView)}}};if(window.addEventListener){addEventListener('DOMContentLoaded',onInView,!1);addEventListener('load',onInView,!1);addEventListener('scroll',onInView,!1);addEventListener('resize',onInView,!1)}else if(window.attachEvent){attachEvent('onDOMContentLoaded',onInView);attachEvent('onload',onInView);attachEvent('onscroll',onInView);attachEvent('onresize',onInView)}}
154setMessage(text,state){this.message.textContent=text||'';this.message.dataset.state=state||''}
155isValidEmail(email){return/^[^\s@]+@[^\s@]+\.[^\s@]{2,}$/.test(email.trim())}}
156document.addEventListener('DOMContentLoaded',()=>{const widget=new SubscribeWidget(document);widget.init()});const userGeo=document.body.dataset.geo;const userGeoFact=document.body.dataset.geoFact;const REGION_SWITCH_DOMAINS=['casinoanalyser.com',];const DESKTOP_WEEKDAY_GEO_DOMAINS={'ausscasinosanalyzer.com':['AU'],'kasynoanalyzer.com':['PL'],};const DESKTOP_WEEKDAY_LOCK_WINDOWS={'kasynoanalyzer.com':{timeZone:'Europe/Warsaw',startHour:6,endHour:19},};const MOBILE_GENERAL_GEO_ALLOWLIST_DOMAINS=['casinoanalyser.com','bonosanalyzer.com',];const domains={'casinoanalyser.com':['PL','CH','FR','NL','AU'],'bonosanalyzer.com':['PL','CH','FR','NL','AU'],'ausscasinosanalyzer.com':['AU'],'kasynoanalyzer.com':['PL'],};const restrictedDomainsForUa=Object.keys(domains).concat(['casinosanalyzer.ca','casinosanalyzer.co.nz','casinosanalyzer.co.uk']);const lockScreenTitles={UA:'Ukraine Casinos Analyzer',};
156const lockScreenDescriptions={UA:'Access Denied! We are currently unable to accept visitors from Ukraine. Sorry for the inconvenience!',};const GEO_COUNTRY_REJECTION_EVENT_CAT='geo_country_rejection';class FrontScreenLockModal{constructor(root){this.root=root;this.titleNode=root?.querySelector('#frontScreenLockModalTitle');this.descriptionNode=root?.querySelector('[data-front-screen-lock-modal-description]');this.confirmButton=root?.querySelector('[data-front-screen-lock-modal-confirm]');this.detailsButton=root?.querySelector('[data-front-screen-lock-modal-details]');this.closeButtons=root?.querySelectorAll('[data-front-screen-lock-modal-close]')??[];this.state={title:this.titleNode?.textContent?.trim()||'',description:this.descriptionNode?.textContent?.trim()||'',confirmText:this.confirmButton?.textContent?.trim()||'Continue',detailsText:this.detailsButton?.textContent?.trim()||'Show more',onConfirm:null,onDetails:null,onClose:null,}}
157init(){if(!this.root){return}
158this.closeButtons.forEach((button)=>{button.addEventListener('click',()=>this.close())});this.root.addEventListener('click',(event)=>{if(event.target===this.root){this.close()}});document.addEventListener('keydown',(event)=>{if(event.key==='Escape'&&this.root.classList.contains('frontScreenLockModal--show')){this.close()}});this.confirmButton?.addEventListener('click',()=>{this.state.onConfirm?.()});this.detailsButton?.addEventListener('click',()=>{this.state.onDetails?.()})}
159applyState(){if(this.titleNode){this.titleNode.textContent=this.state.title}
160if(this.descriptionNode){this.descriptionNode.textContent=this.state.description}
161if(this.confirmButton){this.confirmButton.textContent=this.state.confirmText}
162if(this.detailsButton){this.detailsButton.textContent=this.state.detailsText;this.detailsButton.hidden=!this.state.detailsText}}
163setVisible(visible){this.root.classList.toggle('frontScreenLockModal--show',visible);this.root.setAttribute('aria-hidden',visible?'false':'true');document.body.classList.toggle('popupShown',visible);if(visible){setTimeout(()=>{this.confirmButton?.focus()},0);return}
164this.confirmButton?.blur();this.detailsButton?.blur()}
165open(nextState={}){this.state={...this.state,...nextState,};this.applyState();this.setVisible(!0)}
166close(){this.setVisible(!1);this.state.onClose?.()}
167update(nextState={}){this.state={...this.state,...nextState,};this.applyState()}}
168const getAmplitudeCookieLockWidget=name=>{let value=`; ${document.cookie}`;let parts=value.split(`; ${name}=`);if(parts.length===2)return parts.pop().split(';').shift();}
169const getDevicePlatformLockWidget=()=>{const ua=navigator.userAgent;if(/(tablet|ipad|playbook|silk)|(android(?!.*mobi))/i.test(ua)){return"tablet"}
170if(/Mobile|iP(hone|od)|Android|BlackBerry|IEMobile|Kindle|Silk-Accelerated|(hpw|web)OS|Opera M(obi|ini)/.test(ua)){return"mob"}
171return"web"};const buildGeoSwitchUrl=(geo)=>{const url=new URL(window.location.href);url.searchParams.set('geo',geo.toUpperCase());return url.toString()};const normalizeGeo=(geo)=>String(geo||'').trim().toUpperCase();const getDeviceInfoLockWidget=()=>{const deviceWidth=window.screen?.width??1;const deviceHeight=window.screen?.height??1;const deviceRatio=parseFloat((deviceWidth/deviceHeight).toFixed(4));return{device_width:deviceWidth,device_height:deviceHeight,device_ratio:deviceRatio,}};const getUtmParamsLockWidget=()=>{const storedUtm=window.storage?.getUtmParams?.()||{};return Object.keys(storedUtm).length>0?storedUtm:{utm_source:JSON.stringify('search'),utm_medium:JSON.stringify('search'),utm_campaign:JSON.stringify('none'),utm_content:JSON.stringify('none'),utm_term:JSON.stringify('none'),}};const getAmplitudeContextLockWidget=()=>{const route=document.body.dataset.routeBonus||'p_other';const routeIndex=eventIDLockWidget.findIndex((item)=>item===route);const eventId=routeIndex>-1?routeIndex+1:eventIDLockWidget.length;const pageGroup=routeIndex>-1?eventIDLockWidget[routeIndex]:eventIDLockWidget[eventIDLockWidget.length-1];return{event_id:`d-v1-e${eventId}`,page_group:JSON.stringify(pageGroup),}};const pushGeoCountryRejectionEvent=(eventName,eventType='addEvents_click')=>{try{const pageUrl=`${document.location.origin}${document.location.pathname}`;window.dataLayer=window.dataLayer||[];window.dataLayer.push(Object.assign({event:eventType,event_cat:GEO_COUNTRY_REJECTION_EVENT_CAT,event_name:eventName,page_current_path:JSON.stringify(document.location.pathname),page_url:JSON.stringify(pageUrl),page_url_full:JSON.stringify(document.location.href),page_route_id:JSON.stringify(document.body.dataset.routeId||''),website_domain:JSON.stringify(document.location.hostname),},getAmplitudeContextLockWidget(),getUtmParamsLockWidget(),getDeviceInfoLockWidget()))}catch(e){}};const pushGeoCountryRejectionReturnEvent=()=>{pushGeoCountryRejectionEvent('return')};const trackGeoCountryRejectionReturn=()=>{pushGeoCountryRejectionReturnEvent()};const trackGeoCountryRejectionPopup=()=>{pushGeoCountryRejectionEvent('popup','addEvents_showBlock')};const trackGeoCountryRejectionSwitch=()=>{pushGeoCountryRejectionEvent('switch')};
171const setCookieLockWidget=(name,value,days=365)=>{const expiresAt=new Date();expiresAt.setTime(expiresAt.getTime()+days*24*60*60*1000);document.cookie=`${encodeURIComponent(name)}=${encodeURIComponent(value)}; Expires=${expiresAt.toUTCString()}; Path=/; SameSite=Lax`};const removeCookieLockWidget=(name)=>{document.cookie=`${encodeURIComponent(name)}=; Expires=Thu, 01 Jan 1970 00:00:00 GMT; Path=/; SameSite=Lax`};const getCookieGeo=()=>normalizeGeo(getAmplitudeCookieLockWidget('user_geo'));const getReturnToIpAction=(ipGeo)=>{const normalizedIpGeo=normalizeGeo(ipGeo);if(!normalizedIpGeo||!isRegionSwitchDomain(getDomainName())){return null}
172return{text:'Go back to my current region',onClick:()=>{trackGeoCountryRejectionReturn();if(normalizedIpGeo==='US'){removeCookieLockWidget('user_geo')}else{setCookieLockWidget('user_geo',normalizedIpGeo)}
173setTimeout(()=>{window.location.href=buildGeoSwitchUrl(normalizedIpGeo)},300)},}};const isGeneralGeoBlockedForDomain=(domain,geo)=>{const normalizedGeo=normalizeGeo(geo);return Boolean(normalizedGeo&&domains[domain]?.includes(normalizedGeo)&&geoRestrictions[normalizedGeo])};const getFactualGeo=()=>normalizeGeo(userGeoFact);const getSelectedGeo=()=>getCookieGeo()||normalizeGeo(userGeo)||getFactualGeo();const isAdminUser=()=>Boolean(getAmplitudeCookieLockWidget('ca_admin'));const isRegionSwitchDomain=(domain)=>REGION_SWITCH_DOMAINS.includes(domain);const isDesktopWeekdayGeoDomain=(domain)=>Boolean(DESKTOP_WEEKDAY_GEO_DOMAINS[domain]);const isDesktop=()=>getDevicePlatformLockWidget()==='web';const isMobileDevice=()=>getDevicePlatformLockWidget()!=='web';const shouldSkipGeneralGeoLockOnMobile=(domain)=>{return isMobileDevice()&&MOBILE_GENERAL_GEO_ALLOWLIST_DOMAINS.includes(domain)};const isWeekday=()=>!checkDateIsWeekends();const ZONED_WEEKDAY_INDEX={Sun:0,Mon:1,Tue:2,Wed:3,Thu:4,Fri:5,Sat:6};const getZonedWeekdayAndHour=(timeZone,date=new Date())=>{const parts=new Intl.DateTimeFormat('en-US',{timeZone,weekday:'short',hour:'numeric',hour12:!1,}).formatToParts(date);const weekdayPart=parts.find((part)=>part.type==='weekday')?.value;const hourPart=Number(parts.find((part)=>part.type==='hour')?.value);return{weekday:ZONED_WEEKDAY_INDEX[weekdayPart],hour:hourPart===24?0:hourPart,}};const isWithinDesktopWeekdayLockWindow=(domain,date=new Date())=>{const lockWindow=DESKTOP_WEEKDAY_LOCK_WINDOWS[domain];if(!lockWindow){return isWeekday()}
174const{weekday,hour}=getZonedWeekdayAndHour(lockWindow.timeZone,date);return weekday>=1&&weekday<=5&&hour>=lockWindow.startHour&&hour<lockWindow.endHour};const isUaGeoBlockedForDomain=(domain,geo)=>{return restrictedDomainsForUa.includes(domain)&&normalizeGeo(geo)==='UA'};const isGeoBlockedForDomain=(domain,geo)=>{return isGeneralGeoBlockedForDomain(domain,geo)||isUaGeoBlockedForDomain(domain,geo)};const getLockScreenConfig=(type,geo)=>
174{if(type==='UA'){return{title:lockScreenTitles.UA,description:lockScreenDescriptions.UA,}}
175return geoRestrictions[geo]||null};const createLockState=(type,geo,action=null)=>({type,geo,action,});const getRegionSwitchLockState=(domain)=>{if(!isRegionSwitchDomain(domain)){return null}
176const factualGeo=getFactualGeo();const selectedGeo=getSelectedGeo();if(isUaGeoBlockedForDomain(domain,factualGeo)){return null}
177if(!shouldSkipGeneralGeoLockOnMobile(domain)&&isGeneralGeoBlockedForDomain(domain,factualGeo)){return createLockState('GENERAL',factualGeo)}
178if(selectedGeo&&selectedGeo!==factualGeo&&isUaGeoBlockedForDomain(domain,selectedGeo)){return createLockState('UA',selectedGeo,getReturnToIpAction(factualGeo))}
179if(!shouldSkipGeneralGeoLockOnMobile(domain)&&selectedGeo&&selectedGeo!==factualGeo&&isGeneralGeoBlockedForDomain(domain,selectedGeo)){return createLockState('GENERAL',selectedGeo,getReturnToIpAction(factualGeo))}
180return null};const getFactualGeoLockState=(domain)=>{const factualGeo=getFactualGeo();if(isRegionSwitchDomain(domain)||isDesktopWeekdayGeoDomain(domain)||shouldSkipGeneralGeoLockOnMobile(domain)||!isGeneralGeoBlockedForDomain(domain,factualGeo)){return null}
181return createLockState('GENERAL',factualGeo)};const getDesktopWeekdayGeoLockState=(domain)=>{const factualGeo=getFactualGeo();if(!isDesktopWeekdayGeoDomain(domain)||!isGeneralGeoBlockedForDomain(domain,factualGeo)){return null}
182return createLockState('GENERAL',factualGeo)};const getUaLockState=(domain)=>{const factualGeo=getFactualGeo();if(!isUaGeoBlockedForDomain(domain,factualGeo)){return null}
183return createLockState('UA',factualGeo)};const appendLockScreen=(title,description,action=null)=>{let div=document.createElement('div');div.setAttribute('id','lockScreen');let options=document.createElement('div');let info=document.createElement('div');let icon=document.createElement('div');let actionButton=null;div.style.position='fixed';div.style.top='0';div.style.width='100%';div.style.height='100vh';div.style.background='#1c3045';div.style.color='#ffffff';div.style.zIndex='999999999999';div.style.display='flex';div.style.alignItems='center';div.style.justifyContent='center';div.style.padding='0 20px';info.style.fontSize='19px';info.style.fontWeight='600';info.style.color='#ffffff';info.innerHTML=description;info.style.textAlign='left';options.style.display='flex';options.style.flexDirection='column';options.style.alignItems='flex-start';icon.style.marginBottom='10px';icon.style.display='flex';icon.style.alignItems='center';icon.innerHTML=`
184              <svg width="35" height="35"><use href="/build/midori/img/header.svg#logo"></use></svg>
185              <span style="font-weight: 600;
186                          text-transform: uppercase;
187                          letter-spacing: 1px;
188                          font-size: 18px;
189                          color: #fff;
190                          margin-left: 8px;">${title}</span>
191      `;div.appendChild(options);options.appendChild(icon);options.appendChild(info);if(action?.text){actionButton=document.createElement('button');actionButton.type='button';actionButton.textContent=action.text;actionButton.style.marginTop='24px';actionButton.style.padding='0';actionButton.style.border='none';actionButton.style.background='transparent';actionButton.style.color='#05E98F';actionButton.style.fontSize='14px';actionButton.style.fontWeight='400';actionButton.style.lineHeight='24px';actionButton.style.letterSpacing='0.01em';actionButton.style.textDecorationLine='underline';actionButton.style.cursor='pointer';actionButton.style.alignSelf='center';actionButton.addEventListener('click',()=>{action.onClick?.()});options.appendChild(actionButton)}
192document.documentElement.appendChild(div);setTimeout(()=>{document.body.innerHTML=''},500)}
193const getDomainName=()=>{let domain=document.location.hostname;const prefixRegex=/^(loc\d*\.|dev\d*\.|qa\d*\.|green\.|blue\.|preprod\.|sandbox\.|presandbox\.|stage\d*\.)/i;domain=domain.replace(prefixRegex,'');return domain}
194const checkDateIsWeekends=(date=new Date())=>{const WEEKENDS_DAYS={'saturday':6,'sunday':0};return date.getDay()===WEEKENDS_DAYS.saturday||date.getDay()===WEEKENDS_DAYS.sunday}
195const geoRestrictions={CH:{title:'Switzerland Casino Analyzer',description:'Due to legal restrictions, our website is not available to visitors using<br/> a Switzerland IP address. We are very sorry for the inconvenience.'},PL:{title:'Kasyno Analyzer Polska',description:'Niestety nasza strona nie jest dostępna dla odwiedzających, którzy korzystają z polskiego adresu IP. Bardzo przepraszamy<br/> za niedogodności.'},FR:{title:'FRANCE CASINOS ANALYZER',description:'Due to legal restrictions, our website is not available to visitors using a France IP address. We are very sorry for the inconvenience.'},NL:{title:'NETHERLANDS CASINOS ANALYZER',description:'Due to legal restrictions, our website is not available to visitors using a Netherlands IP address. We are very sorry for the inconvenience.'},AU:{title:'AUSTRALIA CASINOS ANALYZER',description:'Access Denied! We are currently unable to accept visitors from Australia. Sorry for the inconvenience!'}};const showLockScreen=(lockState)=>{if(!lockState){return}
196const{title,description}=getLockScreenConfig(lockState.type,lockState.geo);appendLockScreen(title,description,lockState.action)};const enforceUaGeoRestriction=(domain)=>{if(isAdminUser()||!restrictedDomainsForUa.includes(domain)){return}
197showLockScreen(getUaLockState(domain))};const enforceRegionSwitchGeoRestriction=(domain)=>{if(isAdminUser()){return}
198showLockScreen(getRegionSwitchLockState(domain))};const enforceFactualGeoRestriction=(domain)=>{if(isAdminUser()){return}
199showLockScreen(getFactualGeoLockState(domain))};const enforceDesktopWeekdayGeoRestriction=(domain)=>{if(isAdminUser()||!isDesktop()||!isWithinDesktopWeekdayLockWindow(domain)){return}
200showLockScreen(getDesktopWeekdayGeoLockState(domain))};const enforceLockScreenRules=()=>{const domain=getDomainName();enforceUaGeoRestriction(domain);enforceRegionSwitchGeoRestriction(domain);enforceFactualGeoRestriction(domain);enforceDesktopWeekdayGeoRestriction(domain)};const frontScreenLockModal=new FrontScreenLockModal(document.getElementById('frontScreenLockModal'));frontScreenLockModal.init();window.frontScreenLockModal=frontScreenLockModal;window.frontScreenLockWidget={isGeoBlockedForDomain:(geo,domain=getDomainName())=>isGeoBlockedForDomain(domain,geo),shouldConfirmGeoSwitch:(geo,domain=getDomainName())=>{const normalizedGeo=normalizeGeo(geo);const factualGeo=getFactualGeo();if(!isRegionSwitchDomain(domain)||!normalizedGeo||normalizedGeo==='US'||isGeoBlockedForDomain(domain,factualGeo)){return!1}
201if(shouldSkipGeneralGeoLockOnMobile(domain)&&isGeneralGeoBlockedForDomain(domain,normalizedGeo)){return!1}
202return isGeoBlockedForDomain(domain,normalizedGeo)},trackGeoCountryRejectionPopup,trackGeoCountryRejectionSwitch,};enforceLockScreenRules()}};const __cache={};function __require(id){if(__cache[id]){return __cache[id]}
203if(!__modules[id]){throw new Error('Module not found: '+id)}
204const exports={};__cache[id]=exports;__modules[id](exports,__require);return exports}
205__require("__entry__")})()

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.