PageSourceSearch

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

js musaffa.com collected 2026-09-24 09:13:30 UTC 18,742 bytes, 1 lines download raw bytes

1import{a as dt}from"./chunk-AIYWUXFN.js";import"./chunk-67HI2W2E.js";import{a as wt}from"./chunk-V2A2LZFO.js";import{a as lt}from"./chunk-G5CX4OXU.js";import{b as st}from"./chunk-HO35IVJ7.js";import"./chunk-FP2NOOPU.js";import{f as at}from"./chunk-RZWUF2WE.js";import"./chunk-UETGTCDH.js";import"./chunk-KCEJCXJZ.js";import"./chunk-5BVZXLFA.js";import"./chunk-RTGIJOJ3.js";import{c as M}from"./chunk-N4VJFAAV.js";import"./chunk-7LORS5UB.js";import"./chunk-OCRPHCVN.js";import"./chunk-WXLVEQ4T.js";import{d as K,e as tt,f as et,g as it,h as nt,l as rt}from"./chunk-I335Z6VX.js";import"./chunk-YYKWFEMG.js";import"./chunk-D2N3WVHQ.js";import"./chunk-OP5LXOJA.js";import"./chunk-ARD6OICO.js";import{e as ct}from"./chunk-BBHJ2D5U.js";import"./chunk-RH7YKMCI.js";import"./chunk-2P2IIG2U.js";import"./chunk-J3TYBNDU.js";import{b as ot}from"./chunk-4QCSDQDN.js";import"./chunk-W3MH5BOT.js";import{D as J,G as k}from"./chunk-GUQT3FOM.js";import{c as E,d as L,f as v,h as A}from"./chunk-GWGWIYPE.js";import{Aa as I,Ba as R,Eb as s,G as V,Ha as z,Hb as F,Id as Z,Jc as f,La as y,Nd as x,O,Oa as P,Qc as u,Sc as d,Ub as _,Wc as G,Xc as Q,Yc as X,ac as H,bb as j,bd as $,cd as Y,fd as a,gd as q,hd as D,mc as B,pc as S,ra as w,rb as N,rc as C,uc as U,v as T,vc as W,wc as h,xc as i,ya as m,yc as n,za as p,zc as c}from"./chunk-H5RMQNTW.js";import"./chunk-EU2KAMEK.js";import"./chunk-YNC7RVHT.js";var pt=(o,g)=>g.id;function gt(o,g){if(o&1){let t=f();i(0,"button",20),u("click",function(){let r=m(t).$index,l=d();return p(l.goToSlide(r))}),c(1,"span",21),n()}if(o&2){let t=g.$index,e=d();Y("tw-w-5",e.currentIndex()===t)("tw-bg-white",e.currentIndex()===t)("tw-w-2",e.currentIndex()!==t)("tw-bg-gray-400",e.currentIndex()!==t),B("aria-label","Go to slide "+(t+1))("aria-current",e.currentIndex()===t?"true":"false")}}var ut=(()=>{class o{constructor(){this.platformId=w(P),this.el=w(j),this.zone=w(z),this.renderer=w(F),this.typesenseService=w(at),this.userCount=y("600,000"),this.countryCount=y("150+"),this.isBrowser=J(this.platformId),this.currentIndex=y(0),this.isDragging=y(!1),this.slides=x(()=>[{id:"slide-1",title:"Halal Investing",description:'Invest in US stocks with confidence in their halal status <br class="tw-hidden xl:tw-block"> Access a curated universe of Shariah-compliant investments',image:"/assets/images/login/slide-2-img.png",alt:"Halal Investing",disclaimer:"For illustration only."},{id:"slide-2",title:"Global Screening",description:'Screen the shariah compliance of <span class="tw-text-brand-green tw-font-semibold">128,000+</span> Global <br class="tw-hidden xl:tw-block"> Stocks & ETFs for <span class="tw-text-brand-green tw-font-semibold">FREE</span>',image:"/assets/images/login/slide-3-img.png",alt:"Global Screening",disclaimer:"For illustration only."},{id:"slide-4",title:"Purification",description:'Automatically purify your investments <br class="tw-hidden xl:tw-block"> Stay compliant with zero manual effort',image:"/assets/images/login/slide-4-img.png",alt:"Purification",disclaimer:"For illustration only."},{id:"slide-3",title:"Academy",description:'Learn before you invest <br class="tw-hidden xl:tw-block"> Structured lessons for shariah-compliant decision-making',image:"/assets/images/login/slide-1-img.png",alt:"Academy",disclaimer:"For illustration only."},{id:"slide-5",title:"Invest in US Markets",description:'Start your halal investing journey today. <br class="tw-hidden xl:tw-block"> Join thousands building wealth the right way \u2014 without compromise.',image:"/assets/images/login/slide-5-img.png",alt:"Invest",disclaimer:"User testimonial. Views may not represent other users' experience."}]),this.activeSlide=x(()=>this.slides()[this.currentIndex()]??this.slides()[0]),this.previewSlides=x(()=>{let t=this.slides(),e=this.currentIndex();return[t[(e+1)%t.length],t[(e+2)%t.length]]}),this.startX=0,this.currentOffset=0,this.SWIPE_THRESHOLD=50,this.preloadedImages=[]}ngOnInit(){this.isBrowser&&(this.preloadSlideImages(),this.startAutoplay(),this.fetchStats())}preloadSlideImages(){this.preloadedImages=this.slides().map(t=>{let e=new Image;return e.src=t.image,e})}fetchStats(){this.typesenseService.getWebsiteCollectionData().pipe(O(1)).subscribe({next:t=>{t.user_count&&this.userCount.set(this.formatWithCommas(t.user_count))},error:t=>console.error("Error fetching website stats:",t)})}formatWithCommas(t){let e=parseInt(t.replace(/[^0-9]/g,""),10);
1return isNaN(e)?t:e.toLocaleString("en-US")}ngOnDestroy(){this.stopAutoplay(),this.cleanupDragListeners()}startAutoplay(){this.stopAutoplay(),this.autoplayInterval=setInterval(()=>{this.nextSlide()},5e3)}stopAutoplay(){this.autoplayInterval&&clearInterval(this.autoplayInterval)}nextSlide(){this.currentIndex.update(t=>(t+1)%this.slides().length)}prevSlide(){this.currentIndex.update(t=>(t-1+this.slides().length)%this.slides().length)}goToSlide(t){this.currentIndex.set(t),this.isBrowser&&this.startAutoplay()}onPointerDown(t){if(!this.isBrowser)return;this.isDragging.set(!0),this.startX=t.clientX,this.currentOffset=0,this.stopAutoplay(),t.target.tagName==="IMG"&&t.preventDefault(),this.setupDragListeners()}setupDragListeners(){this.zone.runOutsideAngular(()=>{let t=r=>{this.currentOffset=r.clientX-this.startX;let l=Math.max(0,1-Math.abs(this.currentOffset)/100);this.renderer.setStyle(this.el.nativeElement,"--drag-offset",`${this.currentOffset}px`),this.renderer.setStyle(this.el.nativeElement,"--drag-opacity",`${l}`)},e=()=>{this.zone.run(()=>{this.handleDragEnd()})};this.dragMoveListener=this.renderer.listen("document","pointermove",t),this.dragEndListener=this.renderer.listen("document","pointerup",e),this.dragCancelListener=this.renderer.listen("document","pointercancel",e)})}handleDragEnd(){Math.abs(this.currentOffset)>this.SWIPE_THRESHOLD&&(this.currentOffset>0?this.prevSlide():this.nextSlide()),this.isDragging.set(!1),this.renderer.removeStyle(this.el.nativeElement,"--drag-offset"),this.renderer.removeStyle(this.el.nativeElement,"--drag-opacity"),this.cleanupDragListeners(),this.startAutoplay()}cleanupDragListeners(){this.dragMoveListener&&(this.dragMoveListener(),this.dragMoveListener=void 0),this.dragEndListener&&(this.dragEndListener(),this.dragEndListener=void 0),this.dragCancelListener&&(this.dragCancelListener(),this.dragCancelListener=void 0)}static{this.\u0275fac=function(e){return new(e||o)}}static{this.\u0275cmp=_({type:o,selectors:[["app-auth-carousel"]],hostAttrs:["role","region","aria-roledescription","carousel","aria-label","Authentication features showcase",1,"tw-block","tw-w-full"],decls:29,vars:17,consts:[[1,"tw-relative","tw-w-full","tw-max-w-sm","xl:tw-max-w-md","2xl:tw-max-w-xl","tw-mx-auto","tw-flex","tw-flex-col","tw-overflow-visible","tw-select-none","tw-touch-none","[contain:layout_style]","[--carousel-peek:14px]","sm:[--carousel-peek:20px]","xl:[--carousel-peek:28px]","[--carousel-scale:0.04]","sm:[--carousel-scale:0.05]","xl:[--carousel-scale:0.06]","[--carousel-z:20px]","sm:[--carousel-z:30px]","xl:[--carousel-z:35px]",3,"pointerdown"],[1,"tw-w-full","tw-text-left","tw-mb-6","text-white"],[1,"tw-text-3xl","xl:tw-text-4xl","tw-font-normal","tw-mb-4"],[1,"tw-text-sm","tw-font-light","tw-max-w-80","sm:tw-max-w-96","xl:tw-max-w-xl","tw-mb-3",3,"innerHTML"],[1,"tw-text-sm","lg:tw-text-base","tw-font-light","tw-max-w-80","sm:tw-max-w-96","xl:tw-max-w-xl","tw-mb-0"],[1,"tw-text-brand-green","tw-font-semibold"],[1,"tw-relative","tw-w-full","tw-max-w-80","sm:tw-max-w-96","xl:tw-max-w-md","2xl:tw-max-w-xl","tw-pr-[calc(var(--carousel-peek)*3)]"],[1,"tw-relative","tw-w-full","tw-overflow-visible"],[1,"tw-absolute","tw-left-0","tw-top-5","tw-z-0","tw-w-full","tw-aspect-[16/10]","tw-translate-x-[calc(var(--carousel-peek)*2.1)]","tw-scale-[0.92]","tw-origin-top-left","tw-rounded-xl","tw-bg-white","tw-border","tw-border-solid","tw-border-white/15","tw-shadow-2xl","tw-overflow-hidden","tw-opacity-45","tw-pointer-events-none"],["width","450","height","253",1,"tw-w-full","tw-h-full","tw-object-cover","tw-object-left-top",3,"ngSrc","alt"],[1,"tw-absolute","tw-inset-0","tw-bg-[#6f7d99]/55"],[1,"tw-absolute","tw-left-0","tw-top-3","tw-z-[1]","tw-w-full","tw-aspect-[16/10]","tw-translate-x-[calc(var(--carousel-peek)*1.05)]","tw-scale-[0.96]","tw-origin-top-left","tw-rounded-xl","tw-bg-white","tw-border","tw-border-solid","tw-border-white/20","tw-shadow-2xl","tw-overflow-hidden","tw-opacity-60","tw-pointer-events-none"],[1,"tw-absolute","tw-inset-0","tw-bg-[#6f7d99]/45"],[1,"tw-relative","tw-z-10","tw-w-full","tw-cursor-grab","active:tw-cursor-grabbing","tw-will-change-transform"],[1,"tw-relative","tw-w-full","tw-aspect-[16/10]","tw-rounded-xl","tw-bg-white","tw-border","t
1w-border-solid","tw-border-white/10","tw-flex","tw-items-center","tw-justify-start","tw-shadow-2xl","tw-overflow-hidden"],["width","450","height","253","priority","",1,"tw-w-full","tw-h-full","tw-object-cover","tw-object-left-top",3,"ngSrc","alt"],[1,"tw-relative","tw-z-10","tw-mt-2","tw-flex","tw-w-full","tw-justify-end"],[1,"tw-text-[6px]","sm:tw-text-xs","tw-text-white/90","tw-bg-[#0B1224]/60","tw-border","tw-border-solid","tw-border-white/20","tw-font-normal","tw-py-0.5","tw-px-2","tw-rounded-md","tw-shadow-sm","tw-pointer-events-none"],[1,"tw-flex","tw-items-center","tw-gap-1.5","tw-mt-6","tw-z-10"],["type","button",1,"tw-group","tw-relative","tw-h-2","tw-rounded-full","tw-shrink-0","tw-border-0","tw-transition-all","tw-duration-300","tw-ease-out",3,"tw-w-5","tw-bg-white","tw-w-2","tw-bg-gray-400"],["type","button",1,"tw-group","tw-relative","tw-h-2","tw-rounded-full","tw-shrink-0","tw-border-0","tw-transition-all","tw-duration-300","tw-ease-out",3,"click"],[1,"tw-absolute","tw-inset-0","tw-rounded-full","tw-bg-white","tw-opacity-0","tw-transition-opacity","tw-duration-300","group-hover:tw-opacity-20"]],template:function(e,r){if(e&1&&(i(0,"div",0),u("pointerdown",function(b){return r.onPointerDown(b)}),i(1,"div",1)(2,"h2",2),a(3),n(),c(4,"p",3),i(5,"p",4)(6,"span",5),a(7),n(),a(8," users \u2022 "),i(9,"span",5),a(10,"148+"),n(),a(11," countries "),n()(),i(12,"div",6)(13,"div",7)(14,"div",8),c(15,"img",9)(16,"span",10),n(),i(17,"div",11),c(18,"img",9)(19,"span",12),n(),i(20,"article",13)(21,"div",14),c(22,"img",15),n()()(),i(23,"div",16)(24,"span",17),a(25),n()()(),i(26,"div",18),U(27,gt,2,10,"button",19,pt),n()()),e&2){let l=r.activeSlide(),b=r.previewSlides();s(),h("@slideTextChange",l.id),s(2),D(" ",l.title," "),s(),h("innerHTML",l.description,N),s(3),q(r.userCount()),s(8),h("ngSrc",b[1].image)("alt",b[1].alt),s(3),h("ngSrc",b[0].image)("alt",b[0].alt),s(2),$("transform","translate3d(var(--drag-offset, 0px), 0, 0)")("opacity","var(--drag-opacity, 1)"),s(),h("@slideImageChange",l.id),s(),h("ngSrc",l.image)("alt",l.alt),s(2),h("@slideCaptionChange",l.id),s(),D(" ",l.disclaimer," "),s(2),W(r.slides())}},dependencies:[k],encapsulation:2,data:{animation:[E("slideTextChange",[A("* => *",[v({opacity:0,transform:"translateY(12px)"}),L("420ms 80ms cubic-bezier(0.22, 1, 0.36, 1)",v({opacity:1,transform:"translateY(0)"}))])]),E("slideImageChange",[A("* => *",[v({opacity:0,transform:"translateX(18px) scale(0.985)"}),L("520ms cubic-bezier(0.22, 1, 0.36, 1)",v({opacity:1,transform:"translateX(0) scale(1)"}))])]),E("slideCaptionChange",[A("* => *",[v({opacity:.45,transform:"translateY(4px)"}),L("280ms cubic-bezier(0.22, 1, 0.36, 1)",v({opacity:1,transform:"translateY(0)"}))])])]}})}}return o})();var ht=["logoutWarningModal"];function ft(o,g){if(o&1){let t=f();i(0,"div",2)(1,"button",13),u("click",function(){m(t);let r=d();return p(r.logout())}),I(),i(2,"svg",14),c(3,"path",15),n(),a(4," Logout "),n()()}}function xt(o,g){o&1&&(i(0,"a",12),a(1," Support "),n())}function vt(o,g){if(o&1){let t=f();i(0,"h3",23),a(1,"Almost there"),n(),i(2,"p",24),a(3," You\u2019re just one step away from accessing halal insights for 120,000+ stocks worldwide. "),n(),i(4,"p",25),a(5," Want to change your number or retry OTP? "),n(),i(6,"div",26)(7,"button",27),u("click",function(){m(t);let r=d(2);return p(r.cancelLogout())}),a(8," Continue with OTP "),n(),i(9,"button",28),u("click",function(){m(t);let r=d(2);return p(r.goBackToUserInfo())}),a(10," Go Back "),n()()}}function bt(o,g){if(o&1){let t=f();i(0,"h3",23),a(1,"Don't miss out on FREE Halal Screening"),n(),i(2,"p",25),a(3," You're seconds away from screening 120,000+ stocks & ETFs for Shariah compliance - completely FREE! Plus Purification and Zakat calculators to keep your investments clean. Takes just 10 seconds. "),n(),i(4,"div",26)(5,"button",27),u("click",function(){m(t);let r=d(2);return p(r.cancelLogout())}),a(6," Finish in 10 Seconds "),n(),i(7,"button",28),u("click",function(){m(t);let r=d(2);return p(r.confirmLogout())}),a(8," Exit & Start Over "),n()()}}function yt(o,g){if(o&1){let t=f();i(0,"div",16)(1,"button",17),u("click",function(){m(t);let r=d();return p(r.cancelLogout())}),I(),i(2,"svg",18),c(3,"path",19),n()(),R(),i(4,"div",20),c(5,"img",21),n(),i(6,"div",22),S(7,vt,11,0)(8,bt,9,0),n()()}if(o&2){let t=d();s(7),C(t.activationStep()==="verify-phone"?7:8)}}var Xt=(()=>{class o{constructor(){this.router=w(it),this.signupState=w(lt),this.logoutService=w(wt),this.route=w(tt),this.returnUrlService=w(st),this.authService=w(ct),this.modalService=w(ot),this.activationStep=this.signupState.activationStep,this.url=M(this.router.events.pipe(V(t=>t instanceof K),T(t=>t.urlAfterRedirects||t.url)),{initialValue:this.router.url}),this.queryParamsSignal=M(this.route.queryParams,{initialValue:{}}),this.authQueryParams=x(()=>{let t=this.queryParamsSignal(),e={},r=t.source;return(r==="trade"||r==="academy")&&(e.source=r),t.return_url&&(e.return_url=t.return_url),t.redirect&&(e.redirect=t.redirect),t.featurebase&&(e.featurebase=t.featurebase),e}),this.isActivateScreen=x(()=>this.url().includes("/activate"))}ngOnInit(){this.returnUrlService.captureReturnUrl()}logout(){this.isActivateScreen()&&(this.activationStep()==="user-info"||this.activationStep()==="verify-phone")?this.modalRef=this.modalService.open(this.logoutWarningModal,{centered:!0,scrollable:!0,backdropClass:"!tw-opacity-75",windowClass:"rounded-border-popup",modalDialogClass:"tw-w-full tw-bg-transparent",backdrop:"static",size:"lg"}):this.logoutService.show()}confirmLogout(){this.modalRef?.close(),this.signupState.clear(),this.authService.logout()}cancelLogout(){this.modalRef?.close()}goBackToUserInfo(){this.modalRef?.close(),this.signupState.setActivationStep("user-info")}skip(){this.router.navigate(["/"],{queryParams:this.authQueryParams()})}static{this.\u0275fac=function(e){return new(e||o)}}static{this.\u0275cmp=_({type:o,selectors:[["app-auth-layout"]],viewQuery:function(e,r){if(e&1&&G(ht,5),e&2){let l;Q(l=X())&&(r.logoutWarningModal=l.first)}},decls:18,vars:2,consts:[["logoutWarningModal",""],[1,"tw-min-h-svh","tw-grid","lg:tw-grid-cols-2"],[1,"tw-fixed","tw-right-4","tw-top-7","lg:tw-right-10","tw-z-10"],[1,"tw-hidden","lg:tw-grid","lg:tw-grid-rows-[6rem_auto]","tw-min-h-screen","tw-bg-[linear-gradient(145deg,#0A122A,#203267)]"],[1,"tw-flex","tw-items-center","tw-justify-start","tw-h-24","tw-px-8"],["routerLink","/",1,"tw-block","tw-max-w-max"],["ngSrc","/assets/images/header/musaffa-logo-white.webp","width","160","height","34","alt","Musaffa Logo",1,"tw-block"],[1,"tw-flex","tw-items-center","tw-justify-center"],[1,"tw-w-full","tw-bg-white","tw-flex","tw-flex-col","lg:tw-flex-row","tw-justify-start","tw-items-start","sm:tw-items-center","lg:tw-justify-center"],[1,"tw-flex","tw-items-center","tw-justify-start","tw-h-24","lg:tw-hidden","tw-px-4"],["ngSrc","/assets/images/header/musaffa-logo-black.webp","width","160","height","32","alt","Musaffa Logo",1,"tw-block"],[1,"tw-w-full"],["href","mailto:[email protected]",1,"tw-text-sm","tw-text-gray-500","hover:tw-text-gray-800","tw-underline","tw-underline-offset-2","tw-fixed","tw-bottom-4","tw-right-4","lg:tw-right-10"],[1,"tw-px-0","tw-py-2","tw-text-sm","tw-font-medium","tw-inline-flex","tw-items-center","tw-gap-1.5","tw-text-gray-600","tw-bg-transparent","tw-border-0","hover:tw-text-gray-500",3,"click"],["xmlns","http://www.w3.org/2000/svg","width","20","height","20","viewBox","0 0 24 24"],["fill","none","stroke","currentColor","stroke-linecap","round","stroke-linejoin","round","stroke-width","1.75","d","M15.5 8.04c-.041-1.16-.178-1.885-.636-2.453-.653-.812-1.77-1.066-4.004-1.576l-1-.228c-3.395-.774-5.092-1.161-6.226-.27C2.5 4.405 2.5 6.126 2.5 9.568v4.864c0 3.442 0 5.164 1.134 6.055s2.83.504 6.225-.27l1.002-.228c2.233-.51 3.35-.764 4.003-1.576.458-.567.595-1.293.636-2.453m3-6.948s3 2.21 3 3-3 3-3 3m2.5-3H8.5"],[1,"tw-relative","tw-grid","lg:tw-grid-cols-2","lg:tw-min-h-[32rem]"],["aria-label","Close",1,"tw-border-0","tw-bg-transparent","tw-p-1.5","tw-absolute","tw-top-3","tw-right-3","tw-z-50","tw-cursor-pointer","hover:tw-opacity-70","tw-transition-opacity","tw-text-gray-400","hover:tw-text-gray-700",3,"click"],["xmlns","http://www.w3.org/2000/svg","width","24","height","24","viewBox","0 0 24 24"],["fill","none","stroke","currentColor","stroke-linecap","round","stroke-linejoin","round","stroke-width","1.5","d","M18 6 6 18m12 0L6 6"],[1,"tw-hidden","lg:tw-block","tw-overflow-hidden","tw-relative","tw-bg-gray-100"],["ngSrc","/assets/images/login/auth-popup-img.png","fill","","alt","Image",1,"tw-block","tw-w-full","tw-object-cover"],[1,"tw-relative","tw-flex","tw-flex-col","tw-justify-center","tw-px-6","tw-pt-10","tw-pb-6","lg:tw-py-12","tw-w-full","tw-h-full"],[1,"tw-text-2xl/tight","md:tw-text-3xl/tight","tw-tracking-tight","tw-font-medium","tw-text-gray-900","tw-mb-4"],[1,"tw-text-gray-600","tw-text-sm","md:tw-text-base","tw-mb-2","tw-leading-relaxed"],[1,"tw-text-gray-600","tw-text-sm","md:tw-text-base","tw-mb-8","tw-leading-relaxed"],[1,"tw-gri
1d","tw-gap-3","md:tw-gap-4"],[1,"tw-px-4","tw-py-3","tw-text-sm","tw-font-medium","tw-text-white","tw-bg-brand-green","tw-border-none","tw-rounded-lg","hover:tw-bg-opacity-80","tw-transition-colors","tw-cursor-pointer",3,"click"],[1,"tw-px-4","tw-py-3","tw-text-sm","tw-font-medium","tw-text-slate-600","tw-bg-gray-100","tw-border-none","tw-rounded-lg","hover:tw-bg-gray-200","tw-transition-colors","tw-cursor-pointer",3,"click"]],template:function(e,r){e&1&&(i(0,"main",1),S(1,ft,5,0,"div",2),i(2,"section",3)(3,"header",4)(4,"a",5),c(5,"img",6),n()(),i(6,"div",7),c(7,"app-auth-carousel"),n()(),i(8,"section",8)(9,"header",9)(10,"a",5),c(11,"img",10),n()(),i(12,"div",11),c(13,"router-outlet"),n()(),S(14,xt,2,0,"a",12),n(),H(15,yt,9,1,"ng-template",null,0,Z),c(17,"app-log-out-modale")),e&2&&(s(),C(r.isActivateScreen()&&r.activationStep()!=="onboarding-options"?1:-1),s(13),C(r.activationStep()==="verify-phone"?14:-1))},dependencies:[rt,et,nt,ut,k,dt],encapsulation:2})}}return o})();export{Xt as AuthLayoutComponent};

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.