1import{c as e}from"./chunk-SRTXE2HR.js";import{Fa as c,Z as d,da as l}from"./chunk-NTTV6FWH.js";var h=class n{platformId=l(c);get ua(){return e(this.platformId)&&navigator.userAgent||""}isIOS(){let i=this.ua,t=/Macintosh/.test(i)&&typeof navigator<"u"&&(navigator.maxTouchPoints??0)>1;return/iPad|iPhone|iPod/.test(i)||t}isAndroid(){return/Android/.test(this.ua)}isMobile(){return this.isIOS()||this.isAndroid()}isInAppBrowser(){return/Instagram|FBAN|FBAV|FB_IAB|Messenger|TikTok|musical_ly|Snapchat|Line\/|Twitter|Pinterest/i.test(this.ua)}openAppOrStore(i,t,u){if(!e(this.platformId))return;let o=this.isIOS()?t:u;if(!this.isMobile()){window.open(o,"_blank","noopener");return}let s=!1,r=()=>{s=!0},a=()=>{document.hidden&&r()};document.addEventListener("visibilitychange",a,{once:!0}),window.addEventListener("pagehide",r,{once:!0}),window.setTimeout(()=>{document.removeEventListener("visibilitychange",a),window.removeEventListener("pagehide",r),!s&&!document.hidden&&(window.location.href=o)},1200),this.isAndroid()?window.location.href=this.androidIntentUrl(i,o):window.location.href=`houla://${i}`}tryOpenApp(i){if(!(!e(this.platformId)||!this.isMobile())){if(this.isAndroid()){window.location.href=this.androidIntentUrl(i,window.location.href);return}this.isInAppBrowser()&&(window.location.href=`houla://${i}`)}}androidIntentUrl(i,t){return`intent://${i}#Intent;scheme=houla;package=la.hou.live;S.browser_fallback_url=${encodeURIComponent(t)};end`}static \u0275fac=function(t){return new(t||n)};static \u0275prov=d({token:n,factory:n.\u0275fac,providedIn:"root"})};export{h as a};
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.