PageSourceSearch

https://musaffa.com/chunk-IPOWWP77.js

js musaffa.com collected 2026-10-01 10:43:41 UTC 7,570 bytes, 1 lines download raw bytes

1import{a as F}from"./chunk-NZNRICSD.js";import{a as W}from"./chunk-UIRCIZA3.js";import{d as z,g as B,h as H}from"./chunk-I335Z6VX.js";import"./chunk-YYKWFEMG.js";import{e as A}from"./chunk-LLSQBFJI.js";import{c as O}from"./chunk-RH7YKMCI.js";import"./chunk-2P2IIG2U.js";import"./chunk-J3TYBNDU.js";import"./chunk-4QCSDQDN.js";import"./chunk-W3MH5BOT.js";import{D as L}from"./chunk-GUQT3FOM.js";import{Eb as r,G as x,Jc as T,La as s,Nd as u,Oa as S,Qc as I,Sc as a,Ub as M,Wc as P,Xc as N,Yc as U,bd as D,cd as p,e as y,fa as d,fd as m,hd as C,mc as R,pc as h,ra as o,rc as g,sb as _,wc as f,xc as l,ya as v,yc as c,za as k,zc as E}from"./chunk-H5RMQNTW.js";import"./chunk-EU2KAMEK.js";import"./chunk-YNC7RVHT.js";var $=["stickyCta"];function j(i,w){if(i&1&&(l(0,"p",3),m(1),c()),i&2){let t=a(2);r(),C(" ",t.ctaContent().message," ")}}function G(i,w){if(i&1&&(l(0,"a",4),m(1),c()),i&2){let t=a(2);f("href",t.ctaContent().url,_),R("aria-label",t.ctaContent().buttonText+" (opens in a new tab)"),r(),C(" ",t.ctaContent().buttonText," ")}}function Q(i,w){if(i&1){let t=T();l(0,"a",6),I("click",function(){v(t);let n=a(2);return k(n.onStickySignupClick())}),m(1),c()}if(i&2){let t=a(2);p("tw-w-full",!t.ctaContent().message),f("routerLink",t.ctaContent().url),r(),C(" ",t.ctaContent().buttonText," ")}}function q(i,w){if(i&1&&(h(0,j,2,1,"p",3),h(1,G,2,3,"a",4)(2,Q,2,4,"a",5)),i&2){let t=a();g(t.ctaContent().message?0:-1),r(),g(t.isInvestingAccountCta()?1:2)}}var Y="https://invest.musaffa.com/",V="/authentication/registration",J="Invest in 1,300+ Halal US Stocks & ETFs",lt=(()=>{class i{constructor(){this.router=o(B),this.auth=o(A),this.platformId=o(S),this.breakpointObserver=o(O),this.userCountryContext=o(W),this.tradingPlatformCountry=o(F),this.destroy$=new y,this.isBrowser=L(this.platformId),this.initialCountryCode=this.userCountryContext.getKnownCountryCode(),this.isHandset=s(!1),this.isUserLoggedIn=s(!1),this.isCurrentRouteExcluded=s(!1),this.currentRoute=s(this.router.url),this.userCountryCode=s(this.initialCountryCode),this.isCountryResolutionComplete=s(!!this.initialCountryCode),this.stickyCtaHeight=s(0),this.personalizedPage=u(()=>this.getPersonalizedPage(this.currentRoute())),this.isTradingEligible=u(()=>this.tradingPlatformCountry.isAllowedCountry(this.userCountryCode())),this.isInvestingAccountCta=u(()=>!!this.personalizedPage()&&this.isTradingEligible()),this.ctaContent=u(()=>{let t=this.personalizedPage();return t?this.isTradingEligible()?{message:t==="news"?"Explore US Stocks & Start Halal Investing":J,buttonText:t==="home"?"Open Account":"Open Your Account",url:Y}:{message:this.getNonTradingMessage(t),buttonText:"Sign Up Free",url:V}:{message:"",buttonText:"Signup For Free",url:V}}),this.isStickySignupBannerVisible=u(()=>{if(!this.isBrowser)return!1;let t=!this.isUserLoggedIn()||!!this.personalizedPage()&&this.isTradingEligible();return(!this.personalizedPage()||this.isCountryResolutionComplete())&&t&&!this.isCurrentRouteExcluded()&&this.isMobile()}),this.excludedPages=["/authentication/","/supported-countries","/supported-brokerages","/investing-coverage","/managed-halal-portfolios/us-core","/managed-halal-portfolios/us-growth","/managed-halal-portfolios/us-income","/managed-halal-portfolios/us-innovation"]}ngOnInit(){this.isBrowser&&(this.breakpointObserver.observe(["(max-width: 767px)"]).pipe(d(this.destroy$)).subscribe(t=>{this.isHandset.set(t.matches)}),this.router.events.pipe(x(t=>t instanceof z),d(this.destroy$)).subscribe(()=>{this.evaluateRoute()}),this.auth.roleUpdatedEvent.pipe(d(this.destroy$)).subscribe(()=>{this.isUserLoggedIn.set(this.auth.isLoggedIn())}),this.evaluateRoute(),this.isUserLoggedIn.set(this.auth.isLoggedIn()),this.resolveUserCountryCode())}ngOnDestroy(){this.ctaResizeObserver?.disconnect(),this.destroy$.next(),this.destroy$.complete()}ngAfterViewInit(){if(!this.isBrowser||!this.stickyCta)return;let t=()=>{let e=Math.ceil(this.stickyCta?.nativeElement.getBoundingClientRect().height??0);this.stickyCtaHeight.set(e)};t(),this.ctaResizeObserver=new ResizeObserver(t),this.ctaResizeObserver.observe(this.stickyCta.nativeElement)}isMobile(){return this.isBrowser?window.innerWidth<768||this.isHandset():this.isHandset()}evaluateRoute(){let t=this.excludedPages.some(e=>this.router.url.includes(e));this.currentRoute.set(this.router.url),this.isCurrentRouteExcluded.set(t)}onStickySignupClick(){this.auth.setSignupSource("Signup Bottom Sticky CTA")}async resolveUserCountryCode(){this.userCountryCode()||(this.userCountryCode.set(await this.userCountryContext.resolve
1CountryCode()),this.isCountryResolutionComplete.set(!0))}getPersonalizedPage(t){let e=t.split(/[?#]/,1)[0].replace(/\/$/,"")||"/";return e==="/"||e==="/home"?"home":e.startsWith("/stock/")?"stock":e.startsWith("/etf/")||e.startsWith("/etf-details/")?"etf":e==="/stock-screener"||e.startsWith("/stock-screener/")||e==="/etf-screener"?"screener":e==="/halal-collection"||e.startsWith("/halal-collection/")?"collection":e==="/news"||e.startsWith("/news/")||e==="/week-ahead"||e.startsWith("/week-ahead/")||e==="/trending"||e.startsWith("/trending/")||e==="/quarterly-results"||e.startsWith("/quarterly-results/")||e==="/barakah-brief"||e.startsWith("/barakah-brief/")?"news":e==="/pricing"?"pricing":null}getNonTradingMessage(t){switch(t){case"home":return"Start Your Halal Investing Journey";case"stock":return"Research This Stock\u2019s Shariah Compliance";case"etf":return"Research This ETF's Shariah Compliance";case"screener":return"Find More Halal Stocks";case"collection":return"Explore More Halal Stocks";case"news":return"Research Stocks Behind the News";case"pricing":return"Explore Musaffa Free"}}static{this.\u0275fac=function(e){return new(e||i)}}static{this.\u0275cmp=M({type:i,selectors:[["app-mobile-signup-cta"]],viewQuery:function(e,n){if(e&1&&P($,5),e&2){let b;N(b=U())&&(n.stickyCta=b.first)}},decls:4,vars:7,consts:[["stickyCta",""],["role","region","aria-label","Musaffa account promotion",1,"sticky-mobile-cta","tw-fixed","tw-z-[1000]","tw-left-0","tw-right-0","tw-flex","tw-items-center","tw-justify-between","tw-gap-3","tw-px-4","tw-pt-3","tw-bg-brand-blue","md:tw-hidden"],["aria-hidden","true",1,"sticky-mobile-cta-spacer","tw-w-full","md:tw-hidden"],[1,"tw-m-0","tw-self-center","tw-text-start","tw-text-sm","tw-font-medium","tw-leading-5","tw-text-white"],["target","_blank","rel","noopener noreferrer",1,"tw-flex","tw-shrink-0","tw-items-center","tw-justify-center","tw-bg-brand-green","tw-text-white","tw-text-xs","tw-font-medium","tw-text-center","tw-no-underline","tw-rounded-base","tw-py-2.5","tw-px-4",3,"href"],[1,"tw-flex","tw-shrink-0","tw-items-center","tw-justify-center","tw-bg-brand-green","tw-text-white","tw-text-xs","tw-font-medium","tw-text-center","tw-no-underline","tw-rounded-base","tw-py-2.5","tw-px-4",3,"routerLink","tw-w-full"],[1,"tw-flex","tw-shrink-0","tw-items-center","tw-justify-center","tw-bg-brand-green","tw-text-white","tw-text-xs","tw-font-medium","tw-text-center","tw-no-underline","tw-rounded-base","tw-py-2.5","tw-px-4",3,"click","routerLink"]],template:function(e,n){e&1&&(l(0,"div",1,0),h(2,q,3,2),c(),E(3,"div",2)),e&2&&(p("tw-hidden",!n.isStickySignupBannerVisible()),r(2),g(!n.personalizedPage()||n.isCountryResolutionComplete()?2:-1),r(),D("height",n.stickyCtaHeight(),"px"),p("tw-hidden",!n.isStickySignupBannerVisible()))},dependencies:[H],styles:["[_nghost-%COMP%]{display:block}.sticky-mobile-cta[_ngcontent-%COMP%]{bottom:0;padding-bottom:calc(.75rem + env(safe-area-inset-bottom,0px))}"]})}}return i})();export{lt as MobileSignupCtaComponent};

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.