1"use strict";(self.webpackChunkmyapp=self.webpackChunkmyapp||[]).push([[8682],{48682:(Q,I,o)=>{o.r(I),o.d(I,{AuthenticationFeatureModule:()=>Z,AuthenticationFormComponent:()=>nt.y,AuthenticationLayoutComponent:()=>N,ChangePasswordComponent:()=>tt.h,GatewayVneidComponent:()=>ot.GatewayVneidComponent,LoginComponent:()=>et.LoginComponent,ROUTES:()=>Y,RegisterFormComponent:()=>q.RegisterFormComponent});var t=o(98231),n=o(33153),e=o(23135),w=o(545),M=o(51628),v=o(37606),P=o(15385),h=o(28113),x=o(49309),T=o(7505),F=o(62252),A=o(52317),S=o(53856);const m=["*"],O=(l,R,a,r)=>({"background-image":l,"background-position":R,"background-size":a,transform:r}),D=(l,R)=>({"dark-mode":l,"fixed-width-preview-sys-login":R}),U=()=>["50%","100%"],j=l=>({rows:5,width:l}),$=(l,R)=>({"background-image":l,"background-position":R}),B=l=>({"has-download-apps":l});function W(l,R){if(1&l&&e.nrm(0,"vts-skeleton",4),2&l){const a=e.XpG();e.Y8G("vtsRounded",!0)("vtsActive",a.loading())("vtsParagraph",e.eq3(4,j,e.lJ4(3,U)))}}function V(l,R){if(1&l&&(e.nrm(0,"div",15)(1,"div",16),e.nI1(2,"safeHtml")),2&l){const a=e.XpG();e.HbH("logo-img logo-img-theme-"+a.vtsTheme()),e.Y8G("ngStyle",e.l_i(6,$,a.dataResSignal().imageLogo&&a.configLogin().defaultConfig?"url("+a.configLogin().imageLgIcon+")":"url("+a.dataResSignal().imageLogo+")",a.logoBackgroundPosition())),e.R7$(),e.Y8G("innerHTML",e.bMT(2,4,a.configLogin().logoName),e.npT)}}function b(l,R){if(1&l&&e.nrm(0,"vts-skeleton",4),2&l){const a=e.XpG();e.Y8G("vtsRounded",!0)("vtsActive",a.loading())("vtsParagraph",e.eq3(4,j,e.lJ4(3,U)))}}function k(l,R){1&l&&(e.j41(0,"div",19),e.EFF(1),e.nI1(2,"translate"),e.k0s()),2&l&&(e.R7$(),e.JRh(e.bMT(2,1,"authentication.layout.downloadApp")))}function d(l,R){if(1&l&&(e.j41(0,"a",21),e.nrm(1,"img",22),e.k0s()),2&l){const a=e.XpG(2);e.FS9("href",a.configLogin().linkDownloadIOS,e.B4B)}}function _(l,R){if(1&l&&(e.j41(0,"a",21),e.nrm(1,"img",23),e.k0s()),2&l){const a=e.XpG(2);e.FS9("href",a.configLogin().linkDownloadAndroid,e.B4B)}}function u(l,R){if(1&l&&(e.nrm(0,"p",17),e.nI1(1,"safeHtml"),e.j41(2,"div",18),e.DNE(3,k,3,3,"div",19),e.j41(4,"div",20),e.DNE(5,d,2,1,"a",21)(6,_,2,1,"a",21),e.k0s()()),2&l){const a=e.XpG();e.Y8G("innerHTML",e.bMT(1,6,a.dataResSignal().name),e.npT),e.BMQ("data-systemtype",a.systemType()),e.R7$(2),e.Y8G("ngClass",e.eq3(8,B,a.configLogin().isDownloadIOS||a.configLogin().isDownloadGooglePlay)),e.R7$(),e.vxM(a.configLogin().isDownloadIOS||a.configLogin().isDownloadGooglePlay?3:-1),e.R7$(2),e.vxM(a.configLogin().isDownloadIOS?5:-1),e.R7$(),e.vxM(a.configLogin().isDownloadGooglePlay?6:-1)}}function y(l,R){1&l&&e.SdG(0)}function L(l,R){1&l&&e.nrm(0,"router-outlet")}function X(l,R){if(1&l&&(e.j41(0,"div")(1,"a",24),e.EFF(2),e.nI1(3,"translate"),e.k0s()()),2&l){const a=e.XpG();e.R7$(),e.FS9("href",a.configLogin().linkIntroduce,e.B4B),e.R7$(),e.JRh(e.bMT(3,2,"authentication.layout.about"))}}function J(l,R){if(1&l&&(e.j41(0,"div")(1,"a",24),e.EFF(2),e.nI1(3,"translate"),e.k0s()()),2&l){const a=e.XpG();e.R7$(),e.FS9("href",a.configLogin().linkPolicy,e.B4B),e.R7$(),e.JRh(e.bMT(3,2,"authentication.layout.privacypolicy"))}}function z(l,R){if(1&l&&(e.j41(0,"div")(1,"a",24),e.EFF(2),e.nI1(3,"translate"),e.k0s()()),2&l){const a=e.XpG();e.R7$(),e.FS9("href",a.configLogin().linkTermsOfUse,e.B4B),e.R7$(),e.JRh(e.bMT(3,2,"authentication.layout.teams"))}}function K(l,R){if(1&l&&(e.j41(0,"div")(1,"a",24),e.EFF(2),e.nI1(3,"translate"),e.k0s()()),2&l){const a=e.XpG();e.R7$(),e.FS9("href",a.configLogin().linkSupport,e.B4B),e.R7$(),e.JRh(e.bMT(3,2,"authentication.layout.help"))}}let N=(()=>{class l{constructor(){this.serviceSys=(0,e.WQX)(P.yhK),this.sysLoginResolver=(0,e.WQX)(P.XP7),this.serverUrl=(0,e.WQX)(P.UBk),this.themeService=(0,e.WQX)(T.Wu),this.activatedRoute=(0,e.WQX)(w.nX),this.router=(0,e.WQX)(w.Ix),this.loading=(0,e.vPA)(!1),this.imgBackground=(0,e.vPA)(P.Arb),this.isCustomBackground=(0,e.vPA)(!1),this.dataRes=(0,e.hFB)({image:P.Arb}),this.dataResSignal=(0,e.vPA)({image:P.Arb}),this.configLogin=(0,e.vPA)(new P.XkR),this.appColor=(0,e.vPA)(P.AWz.blue),this.vtsTheme=(0,e.vPA)("blue"),this.useDarkMode=(0,e.vPA)(!!localStorage.getItem(P.hfP)),this.backgroundPosition=(0,e.vPA)("left top"),this.logoBackgroun
1dPosition=(0,e.vPA)("left top"),this.systemType=(0,e.vPA)("admin"),this.destroy$=new F.B,this.renderContent=(0,e.hFB)(!1),this.styleFromSysLogin=(0,e.hFB)(),this.fixedWidthPreviewSyslogin=(0,e.hFB)(!1),this.usingDarkMode=()=>"dark-mode"==this.vtsTheme()&&this.useDarkMode(),this.themeService.theme$.pipe((0,A.Q)(this.destroy$)).subscribe(a=>{this.vtsTheme.set(a||"dark-mode"),this.appColor.set(P.AWz[this.vtsTheme()]),this.useDarkMode.set(!!localStorage.getItem(P.hfP)),this.usingDarkMode()&&this.imgBackground.set(P.Cnj)}),this.activatedRoute.data.subscribe(a=>{"client"===(this.systemType.set(a.systemType),this.systemType())?(this.backgroundPosition.set("right top"),this.logoBackgroundPosition.set("right top")):(this.backgroundPosition.set("left top"),this.logoBackgroundPosition.set("left top"))}),(0,e.QZP)(()=>{this.onChangeConfig(this.dataRes())})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}ngOnInit(){this.loading.set(!0),this.serviceSys.getSysLoginHome().pipe((0,A.Q)(this.destroy$)).subscribe({next:a=>{a&&a.languageSysTenant&&(this.onChangeConfig(a),this.sysLoginResolver.setSharedDataLang(this.dataResSignal().languageSysTenant),this.loading.set(!1))},error:()=>{this.loading.set(!1)}})}backToHome(){this.router.navigate(["/"])}onChangeConfig(a){a.imageLogo&&(a.imageLogo=a.imageLogo.startsWith("data")?a.imageLogo:this.serverUrl.file+"/"+a.imageLogo),this.dataResSignal.set(a),a.configLogin&&(this.configLogin.set(JSON.parse(JSON.parse(this.dataResSignal().configLogin))),1==this.configLogin().defaultConfig?(this.isCustomBackground.set(!1),this.imgBackground.set(this.usingDarkMode()?P.Cnj:this.configLogin().imageBg)):(this.isCu
1stomBackground.set(!this.usingDarkMode()),this.imgBackground.set(this.usingDarkMode()?P.Cnj:(a.image||"").startsWith("data")?a.image||"":this.serverUrl.file+"/"+a.image)))}static{this.\u0275fac=function(r){return new(r||l)}}static{this.\u0275cmp=e.VBU({type:l,selectors:[["layout-feature-authentication-layout"]],inputs:{dataRes:[1,"dataRes"],renderContent:[1,"renderContent"],styleFromSysLogin:[1,"styleFromSysLogin"],fixedWidthPreviewSyslogin:[1,"fixedWidthPreviewSyslogin"]},ngContentSelectors:m,decls:26,vars:21,consts:[[3,"ngStyle","ngClass"],["vts-row","",1,"wrapper-logo-lv1"],["vts-col","","vtsXl","14","vtsXs","24","vtsXXXs","0",1,"wrapper-logo-lv2"],[1,"logo-container","cursor-pointer",3,"click"],[3,"vtsRounded","vtsActive","vtsParagraph"],[1,"description",2,"visibility","hidden"],[1,"new-layout-container"],["vts-row","",1,"authentication-layout"],["vts-col","","vtsXl","14","vtsLg","12","vtsXXXs","0",1,"title-login"],["vts-col","",1,"title-login-main"],["vts-col","","vtsXXXs","24","vtsXl","10","vtsLg","12",1,"authentication-layout-panel-container","right-panel"],[1,"authentication-layout-panel"],[1,"authentication-layout-panel-outlet"],[1,"copyright"],[4,"ngIf"],[3,"ngStyle"],[1,"logo-title",3,"innerHTML"],["vts-typography","",1,"text-login",3,"innerHTML"],[1,"download-apps",3,"ngClass"],[1,"text-download-apps"],[1,"list-group"],[1,"",3,"href"],["src","/assets/template/images/app_store.svg","alt","Apple Store","width","120","height","34"],["src","/assets/template/images/google_play.svg","alt","Google Play","width","120","height","34"],["vts-typo","","vtsType","link",3,"href"]],template:function(r,s){1&r&&(e.NAR(),e.j41(0,"div",0)(1,"div",1)(2,"div",2)(3,"div",3),e.bIt("click",function(){return s.backToHome()}),e.DNE(4,W,1,6,"vts-skeleton",4)(5,V,3,9),e.k0s(),e.j41(6,"p",5),e.EFF(7),e.k0s()()(),e.j41(8,"div",6)(9,"div",7)(10,"div",8)(11,"div",9),e.DNE(12,b,1,6,"vts-skeleton",4)(13,u,7,10),e.k0s()(),e.j41(14,"div",10)(15,"div",11)(16,"div",12),e.DNE(17,y,1,0)(18,L,1,0,"router-outlet"),e.k0s()()()()(),e.j41(19,"div",13)(20,"div"),e.EFF(21),e.k0s(),e.DNE(22,X,4,4,"div",14)(23,J,4,4,"div",14)(24,z,4,4,"div",14)(25,K,4,4,"div",14),e.k0s()()),2&r&&(e.HbH("login-container login-vts-theme-"+s.vtsTheme()),e.Y8G("ngStyle",e.ziG(13,O," url("+s.imgBackground()+")",s.backgroundPosition(),s.isCustomBackground()?"cover":void 0,s.styleFromSysLogin()?s.styleFromSysLogin().transform:void 0))("ngClass",e.l_i(18,D,"dark-mode"==s.vtsTheme()&&s.useDarkMode(),s.fixedWidthPreviewSyslogin())),e.R7$(4),e.vxM(s.loading()?4:5),e.R7$(3),e.JRh(s.dataResSignal().description),e.R7$(5),e.vxM(s.loading()?12:13),e.R7$(5),e.vxM(s.renderContent()?17:18),e.R7$(4),e.JRh(s.dataResSignal().copyright),e.R7$(),e.Y8G("ngIf",s.configLogin().isIntroduce),e.R7$(),e.Y8G("ngIf",s.configLogin().isPolicy),e.R7$(),e.Y8G("ngIf",s.configLogin().isTermsOfUse),e.R7$(),e.Y8G("ngIf",s.configLogin().isSupport))},dependencies:[t.MD,t.YU,t.bT,t.B3,n.iI,w.n3,M.h,M.D9,v.N,v.a,h.mi,h.tH,h.BE,x.$n,S.YC],styles:['.login-container[_ngcontent-%COMP%]{background:url(/assets/template/images/background_dats.png) no-repeat;min-height:100vh;background-size:cover}.login-container[_ngcontent-%COMP%]:not(.dark-mode){background-size:auto}@media screen and (min-width: 1920px){.login-container[_ngcontent-%COMP%]:not(.dark-mode){background-size:200% 100%}}.logo-container[_ngcontent-%COMP%]{display:flex;color:#cb002b;align-items:center;padding-top:40px}.logo-container[_ngcontent-%COMP%] .logo-img[_ngcontent-%COMP%]{width:87px;height:100px;background-size:200% 100%;background-position:center;display:none}.logo-container[_ngcontent-%COMP%] .logo-title[_ngcontent-%COMP%]{font-size:20px}.description[_ngcontent-%COMP%]{margin:0;font-size:24px;font-weight:500;width:520px}@media screen and (max-width: 1200px){.description[_ngcontent-%COMP%]{visibility:hidden}} .branch-name-1{color:#5a8ce9;font-weight:600;font-size:18px} .branch-name-2{color:#1875d8;font-weight:900;font-size:22px}.new-layout-container[_ngcontent-%COMP%]{padding:0 0%;margin-top:-160px}@media screen and (min-width: 2400px){.new-layout-container[_ngcontent-%COMP%]{margin-top:5%}}@media screen and (max-width: 1600px){.new-layout-container[_ngcontent-%COMP%]{padding:0 5% 0 0%}}@media screen and (max-width: 1400px){.new-layout-container[_ngcontent-%COMP%]{padding:0 5% 0 0%}}@media screen and (max-width: 1200px){.new-layout-container[_ngcontent-%COMP%]{padding:0 5% 0 0%;margin-top:-100px}}@media screen and (max-width: 820px){.new-layout-container[_ngcontent-%COMP%]{margin-top:100px}}.new-layout-container[_ngcontent-%COMP%] .authentication-layout[_ngcontent-%COMP%]{width:100%;transition:all .3s ease-out;padding-bottom:0;overflow:auto}.new-layout-container[_ngcontent-%COMP%] .authentication-layout-panel[_ngcontent-%COMP%]{display:flex;align-items:center;max-width:560px;height:fit-content}.new-layout-container[_ngcontent-%COMP%] .authentication-layout-panel-introduction[_ngcontent-%COMP%]{position:relative;display:flex;flex:0 0 auto;flex-direction:column;padding:40px}.new-layout-container[_ngcontent-%COMP%] .authentication-layout-panel-introduction[_ngcontent-%COMP%]:after{content:"";position:absolute;right:0;top:40px;bottom:40px;width:1px;background:#e9e9e9}.new-layout-container[_ngcontent-%COMP%] .authentication-layout-panel-introduction[_ngcontent-%COMP%] .site-name[_ng
1content-%COMP%]{margin-bottom:1em}.new-layout-container[_ngcontent-%COMP%] .authentication-layout-panel-introduction[_ngcontent-%COMP%] .illustration[_ngcontent-%COMP%]{background:url(/assets/template/images/illustration.png) no-repeat;height:300px;width:auto}.new-layout-container[_ngcontent-%COMP%] .authentication-layout-panel-introduction[_ngcontent-%COMP%] .copyright[_ngcontent-%COMP%]{margin-top:auto;text-align:center}.new-layout-container[_ngcontent-%COMP%] .authentication-layout-panel-outlet[_ngcontent-%COMP%]{flex:1 1 auto;padding:40px;border-radius:20px;background:#fff;max-width:100%;max-height:750px;height:100%}@media screen and (min-width: 1600px){.new-layout-container[_ngcontent-%COMP%] .authentication-layout-panel-outlet[_ngcontent-%COMP%]{min-width:550px}}.new-layout-container[_ngcontent-%COMP%] .authentication-layout[_ngcontent-%COMP%] .download-apps[_ngcontent-%COMP%]{display:flex;border:.6px dashed #999FBA;padding:14px 28px;border-radius:10px;max-width:800px;flex-wrap:wrap}.new-layout-container[_ngcontent-%COMP%] .authentication-layout[_ngcontent-%COMP%] .download-apps[_ngcontent-%COMP%]:not(.has-download-apps){visibility:hidden;padding:0}.new-layout-container[_ngcontent-%COMP%] .authentication-layout[_ngcontent-%COMP%] .download-apps[_ngcontent-%COMP%] .text-download-apps[_ngcontent-%COMP%]{font-weight:600;text-transform:uppercase;display:flex;align-items:center;flex-grow:1}.new-layout-container[_ngcontent-%COMP%] .authentication-layout[_ngcontent-%COMP%] .title-login[_ngcontent-%COMP%]{padding:60px 25px 0 10%;display:flex;align-items:end}@media screen and (max-width: 1400px){.new-layout-container[_ngcontent-%COMP%] .authentication-layout[_ngcontent-%COMP%] .title-login[_ngcontent-%COMP%]{padding:60px 25px 0 5%}}@media screen and (max-width: 1200px){.new-layout-container[_ngcontent-%COMP%] .authentication-layout[_ngcontent-%COMP%] .title-login[_ngcontent-%COMP%]{padding:0 25px 0 5%}}.new-layout-container[_ngcontent-%COMP%] .authentication-layout[_ngcontent-%COMP%] .title-login[_ngcontent-%COMP%] .text-login[_ngcontent-%COMP%]{font-size:80px;color:#cb002b;font-weight:400;margin-bottom:0;line-height:110px}.new-layout-container[_ngcontent-%COMP%] .authentication-layout[_ngcontent-%COMP%] .title-login[_ngcontent-%COMP%] .text-login[data-systemtype=admin][_ngcontent-%COMP%] img:not([src*=red]){display:none}.new-layout-container[_ngcontent-%COMP%] .authentication-layout[_ngcontent-%COMP%] .title-login[_ngcontent-%COMP%] .text-login[data-systemtype=client][_ngcontent-%COMP%] img[src*=red]{display:none}.new-layout-container[_ngcontent-%COMP%] .authentication-layout[_ngcontent-%COMP%] .title-login-main[_ngcontent-%COMP%]{width:75%;height:fit-content}.copyright[_ngcontent-%COMP%]{display:flex;padding-left:10%}@media screen and (max-width: 1400px){.copyright[_ngcontent-%COMP%]{padding-left:5%}}@media screen and (max-width: 1200px){.copyright[_ngcontent-%COMP%]{padding-left:5%}}.copyright[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{margin:10px;padding:10px}.copyright[_ngcontent-%COMP%] > div[_ngcontent-%COMP%] .vts-typo-type-link[_ngcontent-%COMP%]{color:#000!important}.copyright[_ngcontent-%COMP%] > div[_ngcontent-%COMP%] .vts-typo-type-link[_ngcontent-%COMP%]:hover{text-decoration:none}.copyright[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]:first-child{margin-left:0;padding-left:0}.clone-authentication-layout[_ngcontent-%COMP%]{margin-bottom:-55px;z-index:123;position:relative}@media screen and (min-width: 1200px){.clone-authentication-layout[_ngcontent-%COMP%]{margin-top:-40px}}.clone-authentication-layout[_ngcontent-%COMP%] .top-logo-img-wrapper[_ngcontent-%COMP%]{background-color:inherit;margin-bottom:-50px}.wrapper-logo-lv1[_ngcontent-%COMP%]{padding:0 0%}@media screen and (max-width: 1400px){.wrapper-logo-lv1[_ngcontent-%COMP%]{padding:0 5% 0 0%}}@media screen and (max-width: 1200px){.wrapper-logo-lv1[_ngcontent-%COMP%]{padding:0 5% 0 0%}}.wrapper-logo-lv1[_ngcontent-%COMP%] .wrapper-logo-lv2[_ngcontent-%COMP%]{padding:60px 25px 0 10%}@media screen and (max-width: 820px){.wrapper-logo-lv1[_ngcontent-%COMP%] .wrapper-logo-lv2[_ngcontent-%COMP%]{display:none}}@media screen and (max-width: 1400px){.wrapper-logo-lv1[_ngcontent-%COMP%] .wrapper-logo-lv2[_ngcontent-%COMP%]{padding:60px 25px 0 5%}}@media screen and (max-width: 1200px){.wrapper-logo-lv1[_ngcontent-%COMP%] .wrapper-logo-lv2[_ngcontent-%COMP%]{padding:0 25px 0 5%}}@media screen and (max-width: 1600px) and (min-width: 1200px){.right-panel[_ngcontent-%COMP%] > [_ngcontent-%COMP%]:first-child{margin-left:20%}}@media screen and (max-width: 1200px){.right-panel[_ngcontent-%COMP%] > [_ngcontent-%COMP%]:first-child{margin:auto}.right-panel[_ngcontent-%COMP%] > [_ngcontent-%COMP%]:first-child.top-logo-img-wrapper{display:block;width:fit-content}}@media screen and (max-width: 1200px){[_nghost-%COMP%] .title-login-main{display:none}}[_nghost-%COMP%] .title-login-main .title-login img{max-width:100%}[_nghost-%COMP%] .fixed-width-preview-sys-login{width:1600px;height:900px;min-height:900px;overflow:hidden;transform-origin:top left}[_nghost-%COMP%] .fixed-width-preview-sys-login .text-login img:last-child{display:none}']})}}return l})();const Y=[{path:"sso-callback/vneid",loadComponent:()=>o.e(9819).then(o.bind(o,19819)).then(l=>l.LoginVneidCallbackComponent)},{path:"sso-callback",loadComponent:()=>o.e(613).then(o.bind(o,90613)).then(l=>l.LoginSsoCallbackComponent)},{path:"login",loadComponent:()=>Promise.resolve().then(o.bind(o,81977)).then(l=>l.LoginDvsComponent)},{path:"page/login",loadComponent:()=>Promise.resolve().then(o.bind(o,16713)).then(l=>l.GatewayVneidComponent)},{path:"setup-app-org",loadComponent:()=>o.e(965).then(o.bind(o,30965)).then(l=>l.SetupAppOrgComponent)},{path:"",component:N,children:[{path:"register-form",loadComponent:()=>Promise.resolve().then(o.bind(o,38977)).then(l=>l.RegisterFormComponent)},{path:"login",loadComponent:()=>Promise.resolve().then(o.bind(o,84741)).then(l=>l.LoginComponent)},{path:"**",redirectTo:"login"}]}],E=Y;var G=o(86570),f=o(81977),p=o(46128),C=o(43959),H=o(90695);let Z=(()=>{class l{static{this.\u0275fac=function(r){return new(r||l)}}static{this.\u0275mod=e.$C({type:l})}static{this.\u0275inj=e.G2t({imports:[t.MD,f.LoginDvsComponent,H.X1,H.YN,n.iI.forChild(E),G.dA.forChild([p.Xn5,p.IdF,p.lMJ,p.glU,p.QDu,p.XTI,p.S5m,p.tXn,p.nkM,p.U97,C.$i0,C.Zmy,C.aYp,C.SJn,C.eNq,C.z7U,C.cSP,C.VeP,C.O9N,C.LBb,C.hl9,C.XEL,C.zt9,C.T0I,C.VRC,C.dxK,C.lr0,C.Hcp,C.xjr,C.Qhf,C.H5G])]})}}return l})();var q=o(38977),tt=o(60861),nt=o(96877),et=o(84741),ot=o(16713)},96877:(Q,I,o)=>{o.d(I,{y:()=>V});var t=o(23135),n=o(98231),e=o(65197),w=o(37606),M=o(51628),v=o(62252),P=o(52317),h=o(8077),x=o(28114),T=o(15385),F=o(1578),A=o(52197),S=o(60861),m=o(51700);const O=[[["","content",""]],[["","footer",""]]],D=["[content]","[footer]"],U=()=>({"padding-bottom":"4px"}),j=(b,k)=>k.langCode;
1function $(b,k){if(1&b){const d=t.RV6();t.j41(0,"ul",12),t.bIt("click",function(){const u=t.eBV(d).$implicit,y=t.XpG(2);return t.Njj(y.useLanguage(u))}),t.j41(1,"li",13),t.nrm(2,"img",14),t.EFF(3),t.nI1(4,"translate"),t.k0s()()}if(2&b){const d=k.$implicit,_=k.$index,u=t.XpG(2);t.Y8G("ngClass",0===_?"menu-lang menu-border-top":_===u.langSys().length-1?"menu-lang menu-border-bottom":"menu-lang"),t.R7$(2),t.FS9("src",d.icon,t.B4B),t.Y8G("ngStyle",t.lJ4(6,U)),t.R7$(),t.SpI(" ",t.bMT(4,4,d.label)," ")}}function B(b,k){if(1&b&&(t.j41(0,"div",3)(1,"div",4)(2,"div",5)(3,"span",6),t.EFF(4),t.k0s()(),t.j41(5,"div",7)(6,"a",8),t.nrm(7,"img",9),t.k0s(),t.j41(8,"vts-dropdown-menu",null,0),t.Z7z(10,$,5,7,"ul",10,j),t.k0s()()(),t.j41(12,"div"),t.SdG(13),t.k0s(),t.j41(14,"div",11),t.SdG(15,1),t.k0s()()),2&b){const d=t.sdS(9),_=t.XpG();t.AVh("content-margin",!!_.contentMargin()),t.R7$(4),t.JRh(_.title()),t.R7$(2),t.Y8G("vtsDropdownMenu",d),t.R7$(),t.FS9("src",_.currentIcon(),t.B4B),t.Y8G("ngStyle",t.lJ4(6,U)),t.R7$(3),t.Dyx(_.langSys())}}function W(b,k){if(1&b){const d=t.RV6();t.j41(0,"authentication-feature-change-password",15),t.bIt("backToLogin",function(){t.eBV(d);const u=t.XpG();return t.Njj(u.changePasswordKeptData().backToLogin())}),t.k0s()}if(2&b){const d=t.XpG();t.Y8G("userName",d.changePasswordKeptData().username)("changePassType",d.changePasswordKeptData().changePassType)("finishChangePass",d.changePasswordKeptData().readyToLogin)("changePasswordExpiredCode",d.changePasswordKeptData().changePasswordExpiredCode)}}let V=(()=>{class b{constructor(){this.translateService=(0,t.WQX)(M.c$),this.sysLoginResolver=(0,t.WQX)(T.XP7),this.vtsI18nService=(0,t.WQX)(A.JD),this._authShareService=(0,t.WQX)(T.uRZ),this._sysAuthenService=(0,t.WQX)(T.NIB),this.title=(0,t.hFB)(""),this.contentMargin=(0,t.hFB)(!0),this.currentLangs=(0,t.vPA)(null),this.currentIcon=(0,t.vPA)(null),this.destroy$=new v.B,this.langs=(0,t.vPA)([{langCode:"vi",label:"common.form.language.currentLanguageVi",icon:"assets/template/images/ic_TiengViet.svg"},{langCode:"en",label:"common.form.language.currentLanguageEn",icon:"assets/template/images/ic_TiengAnh.svg"}]),this.vtsUIKitLanguages=(0,t.vPA)(T.Gcb),this.langSys=(0,t.vPA)([]),this.sysAuthenLoginConfig=(0,t.vPA)({}),this.sysAuthenRegistryConfig=(0,t.vPA)({}),this.sysAuthenUsername=(0,t.vPA)({}),this.sysAuthenPassword=(0,t.vPA)({}),this.changePasswordKeptData=(0,t.vPA)(void 0),this.showChangePassword=(0,t.vPA)(!1),this.sysLoginResolver.sharedDataLang.pipe((0,P.Q)(this.destroy$)).subscribe(d=>{if(d)if(d.forEach(_=>{const u=T.DqH.find(y=>y.key===_.langCode);u&&(_.label=u.lable,_.icon=u.icon)}),this.langSys.set(d),localStorage.getItem("lang"))this.useLanguage(this.langs().filter(_=>_.langCode===localStorage.getItem("lang"))[0]);else{const _=this.langSys().find(u=>1===u.defaultLang);this.useLanguage(_||this.langs()[0])}else localStorage.getItem("lang")?this.useLanguage(this.langs().filter(_=>_.langCode===localStorage.getItem("lang"))[0]):this.useLanguage(this.langs()[0])})}ngOnInit(){this._authShareService.sysAuthenLoginSharer$.pipe((0,P.Q)(this.destroy$)).subscribe(d=>{this.sysAuthenLoginConfig.set(d)}),this._authShareService.sysAuthenRegistrySharer$.pipe((0,P.Q)(this.destroy$)).subscribe(d=>{this.sysAuthenRegistryConfig.set(d)}),this._authShareService.sysAuthenUsernameSharer$.pipe((0,P.Q)(this.destroy$)).subscribe(d=>{this.sysAuthenUsername.set(d)}),this._authShareService.sysAuthenPasswordSharer$.pipe((0,P.Q)(this.destroy$)).subscribe(d=>{this.sysAuthenPassword.set(d)}),0==Object.keys(this.sysAuthenLoginConfig()).length&&this._sysAuthenService.getSysLoginConfig().subscribe(d=>{const _=d.data;_&&_[0]&&(this.sysAuthenLoginConfig.set(_[0]),this._authShareService.sysAuthenLoginSharer$.next(_[0]))}),0==Object.keys(this.sysAuthenRegistryConfig()).length&&this._sysAuthenService.getSysRegistryConfig().subscribe(d=>{const _=d.data;_&&_[0]&&(this.sysAuthenRegistryConfig.set(_[0]),this._authShareService.sysAuthenRegistrySharer$.next(_[0]))}),0==Object.keys(this.sysAuthenUsername()).length&&this._sysAuthenService.getSysAccountConfig().subscribe(d=>{const _=d.data;_&&_[0]&&(this.sysAuthenUsername.set(_[0]),this._authShareService.sysAuthenUsernameSharer$.next(_[0]),this._authShareService.setSysUsern
1ameConfig(_[0]))}),0==Object.keys(this.sysAuthenPassword()).length&&this._sysAuthenService.getSysPasswordConfig().subscribe(d=>{const _=d.data;_&&_[0]&&(this.sysAuthenPassword.set(_[0]),this._authShareService.sysAuthenPasswordSharer$.next(_[0]))})}ngOnDestroy(){this.destroy$.next(null),this.destroy$.complete()}useLanguage(d){d&&(this.translateService.use(d.langCode),this.vtsUIKitLanguages()[d.langCode]&&(this.vtsI18nService.setLocale(T.BsM.getVTSLocaleFromCode(d.langCode)),this.vtsI18nService.setDateLocale(T.BsM.getDateLocaleFromCode(d.langCode))),this.currentLangs.set(d.langCode),this.currentIcon.set(d.icon),localStorage.setItem("lang",d.langCode))}static{this.\u0275fac=function(_){return new(_||b)}}static{this.\u0275cmp=t.VBU({type:b,selectors:[["authentication-ui-authentication-form"]],inputs:{title:[1,"title"],contentMargin:[1,"contentMargin"]},ngContentSelectors:D,decls:2,vars:1,consts:[["menu","vtsDropdownMenu"],[1,"authentication-form",3,"content-margin"],[3,"userName","changePassType","finishChangePass","changePasswordExpiredCode"],[1,"authentication-form"],[1,"authentication-form-title"],[1,"site-name"],["vts-typo","","vtsType","h4",1,"title"],[1,"action"],["vts-dropdown","",3,"vtsDropdownMenu"],["alt","icon-lang","width","25px","height","25px",1,"mg-t-4-minus",3,"src","ngStyle"],["vts-menu","",3,"ngClass"],[1,"authentication-form-footer"],["vts-menu","",3,"click","ngClass"],["vts-menu-item",""],["alt","vi-language","width","25px","height","25px",1,"mg-t-4-minus",3,"src","ngStyle"],[3,"backToLogin","userName","changePassType","finishChangePass","changePasswordExpiredCode"]],template:function(_,u){1&_&&(t.NAR(O),t.DNE(0,B,16,7,"div",1)(1,W,1,4,"authentication-feature-change-password",2)),2&_&&t.vxM(u.showChangePassword()?u.changePasswordKeptData()?1:-1:0)},dependencies:[n.MD,n.YU,n.B3,e.mn,w.N,w.a,h.BL,M.h,M.D9,x.rZ,m.cL,m.ZG,x.s8,x.Fy,x.vR,F.SE,S.h],styles:[".authentication-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:100%;height:100%}.authentication-form-title[_ngcontent-%COMP%]{position:relative;margin-bottom:40px}
1.authentication-form-title[_ngcontent-%COMP%] .site-name[_ngcontent-%COMP%]{width:100%;position:absolute;text-align:center}.authentication-form-title[_ngcontent-%COMP%] .action[_ngcontent-%COMP%]{margin-left:auto;margin-top:7px;position:absolute;right:0;width:fit-content}.authentication-form-title[_ngcontent-%COMP%] .action[_ngcontent-%COMP%] .vi[_ngcontent-%COMP%], .authentication-form-title[_ngcontent-%COMP%] .action[_ngcontent-%COMP%] .en[_ngcontent-%COMP%]{display:flex;height:36px;align-items:center;cursor:pointer}.authentication-form-title[_ngcontent-%COMP%] .action[_ngcontent-%COMP%] .vi[_ngcontent-%COMP%] svg[_ngcontent-%COMP%], .authentication-form-title[_ngcontent-%COMP%] .action[_ngcontent-%COMP%] .en[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{line-height:1;padding:1px}.authentication-form-title[_ngcontent-%COMP%] .action[_ngcontent-%COMP%] .vi[_ngcontent-%COMP%]:hover > svg[_ngcontent-%COMP%], .authentication-form-title[_ngcontent-%COMP%] .action[_ngcontent-%COMP%] .vi.active[_ngcontent-%COMP%] > svg[_ngcontent-%COMP%], .authentication-form-title[_ngcontent-%COMP%] .action[_ngcontent-%COMP%] .en[_ngcontent-%COMP%]:hover > svg[_ngcontent-%COMP%], .authentication-form-title[_ngcontent-%COMP%] .action[_ngcontent-%COMP%] .en.active[_ngcontent-%COMP%] > svg[_ngcontent-%COMP%]{border-radius:50%;border:1px solid #ee0033;background:#ffd8e0}.authentication-form[_ngcontent-%COMP%] .authentication-form-content[_ngcontent-%COMP%]{margin-top:16px}.authentication-form.content-margin[_ngcontent-%COMP%] .authentication-form-content[_ngcontent-%COMP%]{margin-top:72px}.authentication-form-footer[_ngcontent-%COMP%]{margin-top:auto;color:#73777a;text-align:center}.menu-lang[_ngcontent-%COMP%]{border-radius:0;box-shadow:none}.menu-border-top[_ngcontent-%COMP%]{border-top-right-radius:5px;border-top-left-radius:5px}.menu-border-bottom[_ngcontent-%COMP%]{border-bottom-right-radius:5px;border-bottom-left-radius:5px} body:has(.authentication-form) .authentication-form .vts-tabs-top>.vts-tabs-nav .vts-tabs-nav-wrap.vts-tabs-nav-wrap-ping-left:before{opacity:0} body:has(.authentication-form) .authentication-form .vts-tabs-nav-list{width:100%} body:has(.authentication-form) .authentication-form .vts-tabs-nav-list .vts-tabs-tab{width:50%;margin-right:0;justify-content:center}.authentication-form[_ngcontent-%COMP%]:has(.register-form) .vts-tabs-nav{display:none}"]})}}return b})()},60861:(Q,I,o)=>{o.d(I,{h:()=>k});var t=o(23135),n=o(98231),e=o(51628),w=o(15799),M=o(44025),v=o(37606),P=o(54504),h=o(90695),x=o(97321),T=o(33153),F=o(34226),A=o(28113),S=o(62794),m=o(15385),O=o(86570),D=o(62252),U=o(98259),j=o(24034),$=o(2765);const B=()=>[20,16];function W(d,_){if(1&d){const u=t.RV6();t.j41(0,"div",1)(1,"div",2)(2,"div",3)(3,"span",4),t.EFF(4),t.nI1(5,"translate"),t.k0s()()(),t.j41(6,"div",5),t.EFF(7),t.nI1(8,"translate"),t.k0s(),t.j41(9,"vts-form-item")(10,"vts-form-label",6),t.EFF(11),t.nI1(12,"translate"),t.k0s(),t.j41(13,"vts-form-control"),t.nrm(14,"authentication-ui-app-input",7),t.nI1(15,"translate"),t.k0s(),t.nrm(16,"authentication-ui-control-messages",8),t.k0s(),t.j41(17,"vts-form-item")(18,"vts-form-label",6),t.EFF(19),t.nI1(20,"translate"),t.k0s(),t.j41(21,"vts-form-control"),t.nrm(22,"authentication-ui-app-input",9),t.nI1(23,"translate"),t.k0s(),t.nrm(24,"authentication-ui-control-messages",8),t.j41(25,"span",10),t.EFF(26),t.k0s()(),t.j41(27,"vts-form-item")(28,"vts-form-label",6),t.EFF(29),t.nI1(30,"translate"),t.k0s(),t.j41(31,"vts-form-control"),t.nrm(32,"authentication-ui-app-input",11),t.nI1(33,"translate"),t.k0s(),t.nrm(34,"authentication-ui-control-messages",8),t.k0s(),t.j41(35,"vts-form-item",12)(36,"vts-form-control")(37,"div",13)(38,"div",14)(39,"button",15),t.bIt("click",function(){t.eBV(u);const L=t.XpG();return t.Njj(L.handleBackToLogin())}),t.EFF(40),t.nI1(41,"translate"),t.k0s()(),t.j41(42,"div",14)(43,"button",16),t.EFF(44),t.nI1(45,"translate"),t.k0s()()()()()()}if(2&d){const u=t.XpG();t.R7$(4),t.JRh(t.bMT(5,15,"user-management.action.changePwd")),t.R7$(3),t.JRh(t.bMT(8,17,"user-management.message."+("change-default-password"==u.changePassType?"change-default-pass":"change-expired-pass"))),t.R7$(4),t.JRh(t.bMT(12,19,"common.form.passwordOld")),t.R7$(3),t.Y8G("placeholder",t.bMT(15,21,"common.form.passwordOld")),t.R7$(2),t.Y8G("control",u.f.currentPassword),t.R7$(3),t.JRh(t.bMT(20,23,"common.form.passwordNew")),t.R7$(3),t.Y8G("placeholder",t.bMT(23,25,"common.form.passwordNew")),t.R7$(2),t.Y8G("control",u.f.newPassword),t.R7$(2),t.JRh(u.passwordRequirementTxt()),t.R7$(3),t.JRh(t.bMT(30,27,"common.form.confirmPasswordAgain")),t.R7$(3),t.Y8G("placeholder",t.bMT(33,29,"common.form.confirmPassword")),t.R7$(2),t.Y8G("control",u.f.confirmPasswordAgain),t.R7$(3),t.Y8G("vtsGutter",t.lJ4(35,B)),t.R7$(3),t.SpI(" ",t.bMT(41,31,"common.action.goBackLogin")," "),t.R7$(4),t.SpI(" ",t.bMT(45,33,"common.action.saveChanges")," ")}}function V(d,_){if(1&d){const u=t.RV6();t.j41(0,"div",17),t.EFF(1),t.nI1(2,"translate"),t.k0s(),t.j41(3,"vts-form-item")(4,"vts-form-control")(5,"div",13)(6,"div",14)(7,"button",18),t.bIt("click",function(){t.eBV(u);const L=t.XpG();return t.Njj(L.handleBackToLogin())}),t.EFF(8),t.nI1(9,"translate"),t.k0s()()()()()}
12&d&&(t.R7$(),t.JRh(t.bMT(2,3,"authentication.title.createdNewPassword")),t.R7$(4),t.Y8G("vtsGutter",t.lJ4(7,B)),t.R7$(3),t.SpI(" ",t.bMT(9,5,"authentication.form.returnAction")," "))}let k=(()=>{class d{constructor(){this.authService=(0,t.WQX)(m.uRZ),this.toastService=(0,t.WQX)(S.Mo),this._translate=(0,t.WQX)(e.c$),this._sysAuthenService=(0,t.WQX)(m.NIB),this.changePassTempService=(0,t.WQX)(j.V),this.sysPasswordConfig=(0,t.vPA)(new m.$X2),this.passwordRequirementTxt=(0,t.vPA)(""),this.userName=(0,t.hFB)(""),this.changePasswordExpiredCode=(0,t.hFB)(""),this.state=(0,t.vPA)("init"),this.backToLogin=(0,t.CGW)(),this.changePassType="change-expired-password",this.formChangePwd=new h.gE({currentPassword:new h.MJ("",[h.k0.required]),newPassword:new h.MJ("",[h.k0.required]),confirmPasswordAgain:new h.MJ("",[h.k0.required,d=>{const _=d.parent;return _&&_.get("newPassword")?.value!==_.get("confirmPasswordAgain")?.value?{matchPassword:!0}:null}]),userName:new h.MJ(""),changePasswordExpiredCode:new h.MJ("")}),this.generatePasswordRequirementText=()=>{this.passwordRequirementTxt.set(m.yR8.generatePasswordRequirementsTxt(this._translate,this.sysPasswordConfig()))},this.destroy$=new D.B}handleBackToLogin(){this.backToLogin.emit()}get f(){return this.formChangePwd.controls}ngOnChanges(u){u.changePassType&&u.changePassType.isFirstChange()&&"change-expired-password"===this.changePassType&&this.formChangePwd.addControl("changePasswordExpiredCode",new h.MJ(this.changePasswordExpiredCode()))}ngOnInit(){0==Object.keys(this.sysPasswordConfig()).length&&this._sysAuthenService.getSysPasswordConfig().subscribe(y=>{const L=y.data;L&&L[0]&&(this.sysPasswordConfig.set(L[0]),this.buildFormWithPasswordConfig(),this.generatePasswordRequirementText(),this.authService.sysAuthenPasswordSharer$.next(L[0]))});const u="0"==this.userName()[0]?this.userName():`0${this.userName()}`;this.formChangePwd.get("userName")?.setValue(u)}submitForm(){if(m.$Db.isValidForm(this.formChangePwd))switch(this.changePassType){case"change-default-password":{const u=this.formChangePwd.value;let y;if(y=m.VGQ.getUserToken()?m.VGQ.getUserToken().userInfo.id:this.changePassTempService.changingDefaultPassUserId,!y){console.error("Cannot find current user id!");break}this.authService.changePassword({confirmPasswordAgain:u.confirmPasswordAgain,newPassword:u.newPassword,currentPassword:u.currentPassword,userId:y}).subscribe(()=>{this.toastService.success("",this._translate.instant("message.successChangPass")),this.changePassTempService.removeUserId(),this.finishChangePass&&this.finishChangePass()});break}case"change-expired-password":this.authService.changeExpiredPassword(this.formChangePwd.value).subscribe(()=>{this.toastService.success("",this._translate.instant("message.successChangPass")),this.state.set("done")});break;default:console.error(`This change password type: ${this.changePassType} is not supported in change-password!`)}}buildFormWithPasswordConfig(){this.sysPasswordConfig().lowerLetter&&(this.formChangePwd.get("newPassword")?.addValidators(m.Bm6.hasAtLeastOneLowercaseCharacter),this.formChangePwd.get("confirmPasswordAgain")?.addValidators(m.Bm6.hasAtLeastOneLowercaseCharacter)),this.sysPasswordConfig().upperLetter&&(this.formChangePwd.get("newPassword")?.addValidators(m.Bm6.hasAtLeastOneUppercaseCharacter),this.formChangePwd.get("confirmPasswordAgain")?.addValidators(m.Bm6.hasAtLeastOneUppercaseCharacter)),this.sysPasswordConfig().number&&(this.formChangePwd.get("newPassword")?.addValidators(m.Bm6.hasAtLeastOneNumber),this.formChangePwd.get("confirmPasswordAgain")?.addValidators(m.Bm6.hasAtLeastOneNumber)),this.sysPasswordConfig().symbol&&(this.formChangePwd.get("newPassword")?.addValidators(m.Bm6.hasAtLeastOneSpecialCharacter),this.formChangePwd.get("confirmPasswordAgain")?.addValidators(m.Bm6.hasAtLeastOneSpecialCharacter)),this.sysPasswordConfig().minLength&&(this.formChangePwd.get("newPassword")?.addValidators(m.Bm6.minLength(this.sysPasswordConfig().minLength)),this.formChangePwd.get("confirmPasswordAgain")?.addValidators(m.Bm6.minLength(this.sysPasswordConfig().minLength))),this.sysPasswordConfig().maxLength&&(this.formChangePwd.get("newPassword")?.addValidators(m.Bm6.maxLength(this.sysPasswordConfig().maxLength)),this.formChangePwd.get("confirmPasswordAgain")?.addValidators(m.Bm6.maxLength(this.sysPasswordConfig().maxLength)))}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static{this.\u0275fac=function(y){return new(y||d)}}static{this.\u0275cmp=t.VBU({type:d,selectors:[["authentication-feature-change-password"]],inputs:{userName:[1,"userName"],changePasswordExpiredCode:[1,"changePasswordExpiredCode"],changePassType:"changePassType",finishChangePass:"finishChangePass"},outputs:{backToLogin:"backToLogin"},features:[t.Jv_([S.Mo]),t.OA$],decls:3,vars:3,consts:[["vts-form","",1,"form-change-password",3,"ngSubmit","vtsLayout","formGroup"],[1,"container"],[1,"authentication-form-title"],[1,"site-name"],["vts-typo","","vtsType","h4",1,"title"],[1,"change-password-description",2,"text-align","center"],["vtsRequired",""],["type","password","formControlName","currentPassword",3,"placeholder"],[3,"control"],["type","password","formControlName","newPassword",3,"placeholder"],[1,"new-password-requirement-box"],["type","password","formControlName","confirmPasswordAgain",3,"placeholder"],[2,"margin-bottom","60px"],["vts-row","","vtsJustify","center",3,"vtsGutter"],["vts-col","","vtsXXs","24","vtsXs","12"],["vtsBlock","","vtsType","default","vts-button","","type","button",3,"click"],["vtsType","primary","vtsBlock","","vts-button",""],[1,"notification_done"],["vtsBlock","","vtsType","primary","vts-button","","type","button",3,"click"]],template:function(y,L){1&y&&(t.j41(0,"form",0),t.bIt("ngSubmit",function(){return L.submitForm(
1)}),t.DNE(1,W,46,36,"div",1)(2,V,10,8),t.k0s()),2&y&&(t.Y8G("vtsLayout","vertical")("formGroup",L.formChangePwd),t.R7$(),t.vxM("init"===L.state()?1:"done"===L.state()?2:-1))},dependencies:[n.MD,e.h,e.D9,x.A,T.iI,w.SX,A.tH,A.BE,w.dF,w.Qp,w.rA,w.Yc,M.G,M.R$,$.T,v.N,v.a,F.VW,h.X1,h.qT,h.BC,h.cb,h.j4,h.JD,A.mi,P.X6,O.dA,U.fX],styles:["[_nghost-%COMP%]{display:block;width:100%}.register[_ngcontent-%COMP%]{text-align:center;margin-top:30px}.reload[_ngcontent-%COMP%]{font-size:22px;margin-left:9px;cursor:pointer}.container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px}.container[_ngcontent-%COMP%] p[_ngcontent-%COMP%], .container[_ngcontent-%COMP%] .vts-form-item[_ngcontent-%COMP%]{margin:0}.notification_done[_ngcontent-%COMP%]{font-size:20px;text-align:center;margin:30px}form.form-change-password[_ngcontent-%COMP%]{padding-top:10px}"]})}}return d})()},16713:(Q,I,o)=>{o.r(I),o.d(I,{GatewayVneidComponent:()=>w});var t=o(23135),n=o(15385),e=o(545);let w=(()=>{class M{constructor(P){this.route=P,this.serverUrl=(0,t.WQX)(n.UBk)}ngOnInit(){const P="vneid_pending_app",h=this.route.snapshot.queryParamMap.get("client_id"),x=this.route.snapshot.queryParamMap.get("redirect_uri"),T=this.route.snapshot.queryParamMap.get("code_challenge"),F=this.route.snapshot.queryParamMap.get("scope")||"openid",A=this.route.snapshot.queryParamMap.get("response_type")||"code";h||x?sessionStorage.setItem(P,JSON.stringify({appCode:h,appUrl:x})):sessionStorage.removeItem(P);const S=this.serverUrl.auth+`/v1.0/be/api/public/login?client_id=${encodeURIComponent(h||"")}&redirect_uri=${encodeURIComponent(x||"")}&code_challenge=${encodeURIComponent(T||"")}&scope=${encodeURIComponent(F)}&response_type=${encodeURIComponent(A)}`;window.location.href=S}static{this.\u0275fac=function(h){return new(h||M)(t.rXU(e.nX))}}static{this.\u0275cmp=t.VBU({type:M,selectors:[["app-sso-login"]],decls:0,vars:0,template:function(h,x){},encapsulation:2})}}return M})()},81977:(Q,I,o)=>{o.r(I),o.d(I,{LoginDvsComponent:()=>a});var t=o(98231),n=o(23135),e=o(90695),w=o(53865),M=o(545),v=o(44025),P=o(34226),h=o(15799),x=o(86570),T=o(44267),F=o(21874),A=o(62794),S=o(37606),m=o(51628),O=o(15385),D=o(24034),U=o(98259),j=o(62252),$=o(52317),B=o(99112),W=o(60425),V=o(50957),b=o(91479),k=o(51996),d=o(89261),_=o(28113),u=o(2765);function y(r,s){if(1&r){const i=n.RV6();n.j41(0,"div",12)(1,"div",13)(2,"div",14)(3,"h2",15),n.EFF(4),n.k0s()(),n.j41(5,"div",16)(6,"div",17),n.bIt("click",function(){n.eBV(i);const g=n.XpG(2);return n.Njj(g.selectSSO())})("keydown.enter",function(){n.eBV(i);const g=n.XpG(2);return n.Njj(g.selectSSO())})("keydown.space",function(){n.eBV(i);const g=n.XpG(2);return n.Njj(g.selectSSO())}),n.j41(7,"div",18)(8,"div",19),n.nrm(9,"img",20),n.k0s(),n.j41(10,"p",21),n.EFF(11," \u0110\u0103ng nh\u1eadp b\u1eb1ng t\xe0i kho\u1ea3n"),n.nrm(12,"br"),n.EFF(13,"\u0111\u1ecbnh danh qua SSO "),n.k0s()()(),n.j41(14,"div",17),n.bIt("click",function(){n.eBV(i);const g=n.XpG(2);return n.Njj(g.selectVNeID())})("keydown.enter",function(){n.eBV(i);const g=n.XpG(2);return n.Njj(g.selectVNeID())})("keydown.space",function(){n.eBV(i);const g=n.XpG(2);return n.Njj(g.selectVNeID())}),n.j41(15,"div",18)(16,"div",22),n.nrm(17,"img",23),n.k0s(),n.j41(18,"p",21),n.EFF(19," \u0110\u0103ng nh\u1eadp b\u1eb1ng t\xe0i kho\u1ea3n"),n.nrm(20,"br"),n.EFF(21,"\u0111\u1ecbnh danh \u0111i\u1ec7n t\u1eed VNeID "),n.k0s()()()(),n.j41(22,"div",24)(23,"div",25)(24,"span"),n.EFF(25,"B\u1eb1ng c\xe1ch \u0111\u0103ng nh\u1eadp, b\u1ea1n \u0111\u1ed3ng \xfd v\u1edbi"),n.k0s(),n.j41(26,"div",26)(27,"a",27),n.EFF(28,"\u0110i\u1ec1u kho\u1ea3n s\u1eed d\u1ee5ng"),n.k0s(),n.EFF(29," v\xe0 "),n.j41(30,"a",27),n.EFF(31,"Ch\xednh s\xe1ch b\u1ea3o m\u1eadt"),n.k0s()()()(),n.j41(32,"div",28)(33,"button",29),n.bIt("click",function(){n.eBV(i);const g=n.XpG(2);return n.Njj(g.backToHome())}),n.nrm(34,"i",30),n.j41(35,"span"),n.EFF(36," Quay l\u1ea1i trang ch\u1ee7 "),n.k0s()()()()()}if(2&r){const i=n.XpG(2);n.R7$(4),n.JRh((null==i.loginConfig?null:i.loginConfig.loginBoxTitle)||"\u0110\u0103ng nh\u1eadp"),n.R7$(23),n.Y8G("href",i.legalUrls.termService,n.B4B),n.R7$(3),n.Y8G("href",i.legalUrls.privacyPolicy,n.B4B)}}function L(r,s){if(1&r&&n.nrm(0,"authentication-ui-control-messages",46),2&r){const i=n.XpG(3);n.Y8G("control",i.f.username)}}function X(r,s){if(1&r){const i=n.RV6();n.j41(0,"i",47),n.bIt("click",function(){n.eBV(i);const g=n.XpG(3);return n.Njj(g.passwordVisible=!g.passwordVisible)}),n.k0s()}if(2&r){const i=n.XpG(3);n.Y8G("vtsType",i.passwordVisible?"UnlockOutline:antd":"LockOutline:antd")}}function J(r,s){if(1&r&&n.nrm(0,"authentication-ui-control-messages",46),2&r){const i=n.XpG(3);n.Y8G("control",i.f.password)}}function z(r,s){if(1&r){const i=n.RV6();n.j41(0,"div",12)(1,"div",31)(2,"form",32)(3,"vts-form-item")(4,"vts-form-label",33),n.EFF(5,"T\xean \u0111\u0103ng nh\u1eadp"),n.k0s(),n.j41(6,"vts-form-control"),n.nrm(7,"input",34),n.k0s(),n.DNE(8,L,1,1,"authentication-ui-control-messages",35),n.k0s(),n.j41(9,"vts-form-item")(10,"vts-form-label",33),n.EFF(11,"M\u1eadt kh\u1ea9u"),n.k0s(),n.j41(12,"vts-form-control")(13,"vts-input-group",36),n.nrm(14,"input",37),n.k0s(),n.DNE(15,X,1,1,"ng-template",null,0,n.C5r),n.k0s(),n.DNE(17,J,1,1,"authentication-ui-control-messages",35),n.j41(18,"div",38)(19,"label",39)(20,"span"),n.EFF(21,"Ghi nh\u1edb m\u1eadt kh\u1ea9u"),n.k0s()(),n.j41(22,"a",40),n.EFF(23,"Qu\xean m\u1eadt kh\u1ea9u"),n.k0s()()(),n.j41(24,"vts-form-item",41)(25,"vts-form-control")(26,"button",42),n.bIt("click",function(){n.eBV(i);const g=n.XpG(2);return n.Njj(g.onSubmit())}),n.EFF(27),n.k0s()()(),n.j41(28,"button",43),n.bIt("click",function(){n.eBV(i);const g=n.XpG(2);return n.Njj(g.backToSelection())}),n.qSk(),n.j41(29,"svg",44),n.nrm(30,"path",45),n.k0s(),n.EFF(31," Quay l\u1ea1i "),n.k0s()()()()}if(2&r){const i=n.sdS(16),c=n.XpG(2);n.R7$(2),n.Y8G("vtsLayout","vertical")("formGroup",c.loginForm),n.R7$(6),n.Y8G("ngIf",!c.showValidation),n.R7$(5),n.Y8G("vtsSuffix",i),n.R7$(),n.Y8G("type",c.passwordVisible?"text":"password"),n.R7$(3),n.Y8G("ngIf",!c.showValidation),n.R7$(9),n.Y8G("disabled",c.isSubmitting)("vtsLoading",c.isSubmitting),n.R7$(),n.Sp
1I(" ",c.isSubmitting?"\u0110ang \u0111\u0103ng nh\u1eadp...":"\u0110\u0103ng nh\u1eadp"," ")}}function K(r,s){1&r&&(n.j41(0,"div",55)(1,"span"),n.EFF(2,"Ch\u01b0a c\xf3 h\xecnh"),n.k0s(),n.j41(3,"span",56),n.EFF(4,"QR"),n.k0s()())}function N(r,s){if(1&r&&n.nrm(0,"img",57),2&r){const i=n.XpG(4);n.Y8G("src",i.qrImageUrl,n.B4B)}}function Y(r,s){if(1&r&&(n.j41(0,"p",58),n.EFF(1),n.k0s()),2&r){const i=n.XpG(4);n.R7$(),n.SpI(" ",i.loginConfig.qrDescription," ")}}function E(r,s){if(1&r&&(n.qex(0),n.j41(1,"div",49)(2,"h3",50),n.EFF(3),n.k0s(),n.j41(4,"div",51),n.DNE(5,K,5,0,"div",52)(6,N,1,1,"img",53),n.k0s(),n.DNE(7,Y,2,1,"p",54),n.k0s(),n.bVm()),2&r){const i=n.XpG(3);n.R7$(3),n.SpI(" ",i.loginConfig.qrTitle||"Qu\xe9t m\xe3 QR \u0111\u1ec3 \u0111\u0103ng nh\u1eadp"," "),n.R7$(2),n.Y8G("ngIf",!i.qrImageUrl),n.R7$(),n.Y8G("ngIf",i.qrImageUrl),n.R7$(),n.Y8G("ngIf",i.loginConfig.qrDescription)}}function G(r,s){if(1&r&&(n.qex(0),n.j41(1,"div",59)(2,"a",60),n.EFF(3),n.k0s()(),n.bVm()),2&r){const i=n.XpG(3);n.R7$(2),n.Y8G("href",i.loginConfig.buttonLink||"#",n.B4B),n.R7$(),n.SpI(" ",i.loginConfig.buttonTitle||"T\u1ea3i \u1ee9ng d\u1ee5ng"," ")}}function f(r,s){if(1&r&&(n.j41(0,"h3",64),n.EFF(1),n.k0s()),2&r){const i=n.XpG(4);n.R7$(),n.SpI(" ",i.loginConfig.textTitle," ")}}function p(r,s){if(1&r&&(n.j41(0,"p",65),n.EFF(1),n.k0s()),2&r){const i=n.XpG(4);n.R7$(),n.SpI(" ",i.loginConfig.textDescription," ")}}function C(r,s){if(1&r&&(n.qex(0),n.j41(1,"div",61),n.DNE(2,f,2,1,"h3",62)(3,p,2,1,"p",63),n.k0s(),n.bVm()),2&r){const i=n.XpG(3);n.R7$(2),n.Y8G("ngIf",i.loginConfig.textTitle),n.R7$(),n.Y8G("ngIf",i.loginConfig.textDescription)}}function H(r,s){if(1&r&&n.nrm(0,"img",71),2&r){const i=n.XpG(5);n.Y8G("src",i.contentImageUrl,n.B4B)("alt",i.loginConfig.imageTitle||"Content Image")}}function Z(r,s){if(1&r&&(n.j41(0,"a",69),n.DNE(1,H,1,2,"img",70),n.k0s()),2&r){const i=n.XpG(4);n.Y8G("href",i.loginConfig.imageOpenLink,n.B4B),n.R7$(),n.Y8G("ngIf",i.contentImageUrl)}}function q(r,s){if(1&r&&(n.j41(0,"div",72),n.EFF(1),n.k0s()),2&r){const i=n.XpG(4);n.R7$(),n.SpI(" ",i.loginConfig.imageTitle," ")}}function tt(r,s){if(1&r&&(n.qex(0),n.j41(1,"div",66),n.DNE(2,Z,2,2,"a",67)(3,q,2,1,"div",68),n.k0s(),n.bVm()),2&r){const i=n.XpG(3);n.R7$(2),n.Y8G("ngIf",i.loginConfig.imageOpenLink),n.R7$(),n.Y8G("ngIf",i.loginConfig.imageTitle)}}function nt(r,s){if(1&r&&(n.qex(0),n.nrm(1,"div",73),n.bVm()),2&r){const i=n.XpG(3);n.R7$(),n.Y8G("innerHTML",i.safeHtmlContent,n.npT)}}function et(r,s){if(1&r&&(n.j41(0,"div",48),n.DNE(1,E,8,4,"ng-container",1)(2,G,4,2,"ng-container",1)(3,C,4,2,"ng-container",1)(4,tt,4,2,"ng-container",1)(5,nt,2,1,"ng-container",1),n.k0s()),2&r){const i=n.XpG(2);n.R7$(),n.Y8G("ngIf","QR"===i.loginConfig.loginAdditionalType),n.R7$(),n.Y8G("ngIf","BUTTON"===i.loginConfig.loginAdditionalType),n.R7$(),n.Y8G("ngIf","TEXT"===i.loginConfig.loginAdditionalType),n.R7$(),n.Y8G("ngIf","IMAGE"===i.loginConfig.loginAdditionalType),n.R7$(),n.Y8G("ngIf","HTML"===i.loginConfig.loginAdditionalType||"html"===i.loginConfig.loginAdditionalType)}}function ot(r,s){if(1&r&&(n.qex(0),n.j41(1,"div",3)(2,"div",4),n.nrm(3,"img",5),n.j41(4,"h1",6),n.EFF(5),n.k0s()(),n.DNE(6,y,37,3,"div",7)(7,z,32,9,"div",7)(8,et,6,5,"div",8),n.j41(9,"div",9)(10,"div",10)(11,"div")(12,"span"),n.EFF(13,"CSKH:"),n.k0s(),n.EFF(14),n.k0s(),n.j41(15,"div")(16,"span"),n.EFF(17,"Email:"),n.k0s(),n.EFF(18),n.k0s(),n.j41(19,"a",11),n.EFF(20," H\u01b0\u1edbng d\u1eabn s\u1eed d\u1ee5ng "),n.k0s()()()(),n.bVm()),2&r){const i=n.XpG();n.R7$(),n.xc7("--background-image",i.loginBackgroundUrl?"url("+i.loginBackgroundUrl+")":"url(/assets/template/images/banner-login-type9.png)"),n.R7$(2),n.Y8G("src",i.loginLogoUrl||"assets/template/images/logo-vptwd.png",n.B4B),n.R7$(2),n.JRh((null==i.loginConfig?null:i.loginConfig.loginTitle)||"C\u1ed4NG TH\xd4NG TIN C\xc1C \u1ee8NG D\u1ee4NG"),n.R7$(),n.Y8G("ngIf","selection"===i.selectedLoginType),n.R7$(),n.Y8G("ngIf","sso"===i.selectedLoginType),n.R7$(),n.Y8G("ngIf",(null==i.loginConfig?null:i.loginConfig.loginAdditional)&&(null==i.loginConfig?null:i.loginConfig.loginAdditionalType)),n.R7$(6),n.SpI(" ",i.contactConfig.hotline,""),n.R7$(4),n.SpI(" ",(null==i.footerConfig?null:i.footerConfig.footerEmail)||i.contactConfig.supp
1ortEmail,""),n.R7$(),n.Y8G("href",i.footerConfig.footerLinks[0]||i.contactConfig.usageLink,n.B4B)}}function l(r,s){1&r&&(n.j41(0,"div",74),n.nrm(1,"vts-spin",75),n.k0s())}function R(r,s){1&r&&(n.j41(0,"div",74),n.nrm(1,"vts-spin",76),n.k0s())}let a=(()=>{class r{constructor(i){this.ccudApp=i,this.authService=(0,n.WQX)(O.uRZ),this.ccudAuthService=(0,n.WQX)(D.T),this.ccudApplicationService=(0,n.WQX)(k.Bn),this.fb=(0,n.WQX)(e.ok),this.toast=(0,n.WQX)(A.Mo),this.router=(0,n.WQX)(M.Ix),this.route=(0,n.WQX)(M.nX),this.translate=(0,n.WQX)(m.c$),this.notifyService=(0,n.WQX)(O.JEu),this.userStatusChangeService=(0,n.WQX)(O.$CI),this.sanitizer=(0,n.WQX)(w.up),this.serverUrl=(0,n.WQX)(O.UBk),this.loginConfig=null,this.qrGeneratedImageUrl=null,this.contactConfig=d.c.contactConfig,this.footerConfig=null,this.destroy$=new j.B,this.selectedLoginType="selection",this.showValidation=!1,this.showPassword=!1,this.isSubmitting=!1,this.isProcessingSSO=!1,this.isLoadingConfig=!0,this.autoVneid="0",this.legalUrls={termService:"https://docs.google.com/document/d/1b30Tduk3roJCQvx2CTg_IEW4th0up4JHz3TaFiuFFLk/edit?usp=sharing",privacyPolicy:"https://docs.google.com/document/d/1q-uyWt1QNCa-uc-sY36VGQ63fmcRphJa8fTsjFZUH8k/edit?usp=sharing"},this.handlePageShow=c=>{c.persisted&&(this.isProcessingSSO=!1)}}ngOnInit(){window.addEventListener("pageshow",this.handlePageShow),O.VGQ.getUserToken()?this.router.navigate(["/"]):(this.loginForm=this.fb.group({username:["",[e.k0.required]],password:["",[e.k0.required]],rememberMe:[!1],captcha:[""],transactionId:[(0,b.A)()]}),this.loadDisplayConfiguration(),this.route.queryParams.pipe((0,$.Q)(this.destroy$)).subscribe(c=>{this.autoVneid=c.auto_vneid}))}loadDisplayConfiguration(){this.ccudApplicationService.getPublicDisplayConfiguration(this.ccudApp.appCode).pipe((0,$.Q)(this.destroy$),(0,B.j)(()=>{"1"==this.autoVneid&&this.selectVNeID()})).subscribe({next:i=>{this.isLoadingConfig=!1,this.footerConfig={...i.footerConfig},this.loginConfig=this.ccudApplicationService.mergeDisplayConfiguration(O.nig,i?.loginConfig||{}),"QR"===this.loginConfig.loginAdditionalType&&"GENERATED_LINK"===this.loginConfig.qrType&&this.loginConfig.qrLink&&this.ccudApplicationService.generateQrCode(this.loginConfig.qrLink).pipe((0,$.Q)(this.destroy$),(0,W.W)(()=>(0,V.of)(null))).subscribe(c=>{c&&(this.qrGeneratedImageUrl=URL.createObjectURL(c))}),console.log(this.loginConfig)},error:i=>{this.isLoadingConfig=!1,console.error("Error loading display configuration:",i)}})}ngOnDestroy(){window.removeEventListener("pageshow",this.handlePageShow),this.destroy$.next(),this.destroy$.complete(),this.qrGeneratedImageUrl?.startsWith("blob:")&&URL.revokeObjectURL(this.qrGeneratedImageUrl)}selectSSO(){this.isProcessingSSO=!0,this.ccudAuthService.ssoLoginRedirect(O.bBV.VPTW)||(this.isProcessingSSO=!1,this.selectedLoginType="sso")}selectVNeID(){this.isProcessingSSO=!0,this.ccudAuthService.ssoLoginRedirect(O.bBV.VNEID)||(this.isProcessingSSO=!1,console.error("No vneid config found"),this.toast.error("","\u0110\xe3 c\xf3 l\u1ed7i x\u1ea3y ra, vui l\xf2ng th\u1eed l\u1ea1i sau!"))}backToSelection(){this.selectedLoginType="selection"}backToHome(){this.router.navigate(["/"])}get f(){return this.loginForm.controls}get safeHtmlContent(){return this.loginConfig?.htmlContent?this.sanitizer.bypassSecurityTrustHtml(this.loginConfig.htmlContent):null}get qrImageUrl(){return"IMAGE"===this.loginConfig?.qrType?O.HgN.buildImageUrl(this.loginConfig.qrLink,this.serverUrl.file):"GENERATED_LINK"===this.loginConfig?.qrType?this.qrGeneratedImageUrl:null}get contentImageUrl(){return O.HgN.buildImageUrl(this.loginConfig?.imageLink,this.serverUrl.file)}get loginLogoUrl(){return O.HgN.buildImageUrl(this.loginConfig?.loginLogo,this.serverUrl.file)}get loginBackgroundUrl(){return O.HgN.buildImageUrl(this.loginConfig?.loginBackground,this.serverUrl.file)}togglePassword(){this.showPassword=!this.showPassword}showSuccess(i,c=""){this.toast.success(c,i,{vtsPlacement:"topRight"})}showError(i,c=""){this.toast.error(c,i,{vtsPlacement:"topRight"})}onSubmit(){if(this.showValidation=!0,!O.$Db.isValidForm(this.loginForm))return void Object.values(this.loginForm.controls).forEac
1h(g=>{g.markAsTouched({onlySelf:!0})});const i=this.loginForm.value,c={username:i.username.trim(),password:i.password};this.isSubmitting=!0,this.ccudAuthService.login(c).pipe((0,$.Q)(this.destroy$)).subscribe({next:g=>{this.isSubmitting=!1,g&&g.id_token?this.handleCcudLoginSuccess(g,i.username):this.showError(this.translate.instant("authentication.message.invalidData"),this.translate.instant("authentication.message.loginFailed"))},error:g=>{this.isSubmitting=!1,this.handleLoginError(g)}})}handleCcudLoginSuccess(i,c){if(i&&i.id_token){const g={};g.accessToken=i.id_token;const st=Date.now(),it=1;g.avatar="",g.position="",g.email="",g.fullName=c,g.loginName=c,g.phoneNumber="",g.userId=it,g.loginTime=st,g.tokenExpiresIn=36e5,g.userInfo={id:it,username:c,userName:c,fullName:c,email:"",phoneNumber:"",imageUrl:"",avatar:"",position:"",roles:[],org:null,orgId:null},g.remindChangePassWord=!1,O.VGQ.setUserToken(g),this.showSuccess("\u0110\u0103ng nh\u1eadp th\xe0nh c\xf4ng"),this.notifyService&&(this.notifyService.setUserAuth(),this.userStatusChangeService.setUserAuth()),setTimeout(()=>{this.router.navigate(["/account-list"])},500)}else this.showError(this.translate.instant("authentication.message.invali
1dAccount"),this.translate.instant("authentication.message.loginFailed"))}handleLoginError(i){console.error("Login error:",i);let c=this.translate.instant("authentication.message.loginFailed"),g="";if(i.error){const it=i.error.message;switch(i.error.code){case 15:g=this.translate.instant("errorLogin");break;case 7:g=this.translate.instant("invalidCaptcha");break;case 16:g=this.translate.instant("authentication.message.passwordExpiredDetail");break;default:g=it||this.translate.instant("common.error.serverError")}}else 0===i.status?g=this.translate.instant("authentication.message.connectionErrorDetail"):401===i.status?g=this.translate.instant("errorLogin"):500===i.status&&(g=this.translate.instant("common.error.serverError"));this.showError(g,c)}static{this.\u0275fac=function(c){return new(c||r)(n.rXU(O.lUk))}}static{this.\u0275cmp=n.VBU({type:r,selectors:[["app-login"]],features:[n.Jv_([A.Mo])],decls:3,vars:3,consts:[["suffixTemplate",""],[4,"ngIf"],["class","sso-loading-overlay",4,"ngIf"],[1,"login-container"],[1,"header"],["alt","Vietnam Flag",1,"flag",3,"src"],["vts-typo","","vtsType","h1",1,"title"],["class","login-box",4,"ngIf"],["class","additional-content",4,"ngIf"],[1,"footer-img"],["aria-label","Th\xf4ng tin h\u1ed7 tr\u1ee3",1,"login-support-info"],["target","_blank",1,"support-guide",3,"href"],[1,"login-box"],[1,"card-container"],[1,"card-header"],[1,"login-title"],[1,"cards-grid"],["tabindex","0",1,"login-card",3,"click","keydown.enter","keydown.space"],[1,"card-content"],[1,"card-icon-wrapper"],["src","assets/template/images/auth/sso.png","alt","SSO",1,"card-icon"],[1,"card-text"],[1,"card-icon-wrapper","vneid-icon"],["src","assets/template/images/auth/vneid.png","alt","VNeID",1,"card-icon","vneid-img"],[1,"terms-wrapper"],[1,"terms-text"],[1,"terms-links"],["target","_blank",1,"terms-link",3,"href"],[1,"back-button-container"],["vts-button","","type","button",1,"back-button",3,"click"],["vts-icon","","vtsType","ArrowLeft:bootstrap"],[1,"sso-login-wrapper"],["vts-form","",3,"vtsLayout","formGroup"],["vtsRequired",""],["vts-input","","placeholder","Nh\u1eadp t\xean \u0111\u0103ng nh\u1eadp","formControlName","username","autocomplete","username"],[3,"control",4,"ngIf"],[3,"vtsSuffix"],["vts-input","","placeholder","Nh\u1eadp m\u1eadt kh\u1ea9u","formControlName","password","autocomplete","password",3,"type"],[1,"password-options"],["vts-checkbox","","formControlName","rememberMe"],["href","#",1,"forgot-password"],[1,"login-button-item"],["vts-button","","vtsType","primary","vtsSize","sm","vtsBlock","","type","button",3,"click","disabled","vtsLoading"],["vts-button","","type","button","vtsBlock","","vtsSize","sm",3,"click"],["viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","1.5",1,"back-icon"],["d","M19 12H5M12 19l-7-7 7-7"],[3,"control"],["vts-icon","",2,"color","#73777A",3,"click","vtsType"],[1,"additional-content"],[1,"qr-widget"],[1,"qr-title"],[1,"qr-code"],["class","qr-placeholder",4,"ngIf"],["alt","QR Code","class","qr-image",3,"src",4,"ngIf"],["class","qr-description",4,"ngIf"],[1,"qr-placeholder"],[1,"qr-hint"],["alt","QR Code",1,"qr-image",3,"src"],[1,"qr-description"],[1,"button-widget"],["target","_blank","vts-button","","vtsType","primary","vtsBlock","",3,"href"],[1,"text-widget"],["class","text-title",4,"ngIf"],["class","text-content",4,"ngIf"],[1,"text-title"],[1,"text-content"],[1,"image-widget"],["target","_blank","class","image-link",3,"href",4,"ngIf"],["class","image-title",4,"ngIf"],["target","_blank",1,"image-link",3,"href"],["class","content-image",3,"src","alt",4,"ngIf"],[1,"content-image",3,"src","alt"],[1,"image-title"],[1,"html-widget",3,"innerHTML"],[1,"sso-loading-overlay"],["vtsSimple","","vtsTip","\u0110ang x\xe1c th\u1ef1c th\xf4ng tin \u0111\u0103ng nh\u1eadp..."],["vtsSimple","","vtsTip","\u0110ang t\u1ea3i..."]],template:function(c,g){1&c&&n.DNE(0,ot,21,10,"ng-container",1)(1,l,2,0,"div",2)(2,R,2,0,"div",2),2&c&&(n.Y8G("ngIf",!g.isProcessingSSO&&!g.isLoadingConfig),n.R7$(),n.Y8G("ngIf",g.isProcessingSSO),n.R7$(),n.Y8G("ngIf",g.isLoadingConfig))},dependencies:[t.MD,t.bT,e.X1,e.qT,e.me,e.BC,e.cb,e.j4,e.JD,m.h,h.SX,_.tH,_.BE,h.dF,h.Qp,h.rA,h.Yc,T.iO,T.fZ,T.eH,T.Ms,v.G,v.R$,u.T,x.dA,x.qb,P.VW,P.Ex,F.m,F.z,S.a,U.fX],styles:['@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700&display=swap";@charset "UTF-8";.login-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:16px;justify-content:center;min-height:100vh;height:100vh;font-family:Inter,sans-serif;color:#333;padding:20px;position:relative;background-image:var(--background-image, url(banner-login-type9.6580cd12c49932d6.png));background-repeat:no-repeat;background-size:cover;background-position:center center;background-color:#fff}.login-container[_ngcontent-%COMP%] .footer-img[_ngcontent-%COMP%]{background:url(back_gr_1.a394e25ee3aa6b0e.png) center bottom/cover no-repeat;position:fixed;bottom:0;left:0;right:0;height:46vh;z-index:0;display:flex;align-items:flex-end}.login-container[_ngcontent-%COMP%] .footer-img[_ngcontent-%COMP%] .login-support-info[_ngcontent-%COMP%]{position:sticky;bottom:5rem;left:5rem;z-index:11;padding:18px 24px;color:#fff;font-size:16px;line-height:1.6;font-weight:500;text-align:left}.login-container[_ngcontent-%COMP%] .footer-img[_ngcontent-%COMP%] .login-support-info[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-weight:700}.login-container[_ngcontent-%COMP%] .footer-img[_ngcontent-%COMP%] .login-support-info[_ngcontent-%COMP%] .support-guide[_ngcontent-%COMP%]{display:inline-block;margin-top:4px;color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:3px}.login-container[_ngcontent-%COMP%] .footer-img[_ngcontent-%COMP%] .login-support-info[_ngcontent-%COMP%] .support-guide[_ngcontent-%COMP%]:hover{color:#fff;text-decoration-thickness:2px}.vts-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px}.vts-form-item[_ngcontent-%COMP%], .vts-form-item[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{transition:none!important;animation:none!important}.header[_ngcontent-%COMP%]{text-align:center;margin-bottom:0}.header[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{color:#b70100;font-size:28px;font-weight:600;letter-spacing:1px;margin-bottom:0!important;min-height:34px}.header[_ngcontent-%COMP%] .subtitle[_ngcontent-%COMP%]{color:#6b7280;min-height:21px;
1display:inline-block}.header[_ngcontent-%COMP%] .flag-placeholder[_ngcontent-%COMP%]{width:auto;height:82.5px;margin:0 auto 10px;display:flex;align-items:center;justify-content:center}.header[_ngcontent-%COMP%] .flag-placeholder[_ngcontent-%COMP%] .flag[_ngcontent-%COMP%]{margin:0}.header.is-loading[_ngcontent-%COMP%] .title[_ngcontent-%COMP%], .header.is-loading[_ngcontent-%COMP%] .subtitle[_ngcontent-%COMP%]{visibility:hidden}.flag[_ngcontent-%COMP%]{width:auto;height:120px;display:block;margin:0 auto}.login-box[_ngcontent-%COMP%]{width:550px;z-index:10;gap:24px;border-radius:16px;background-color:#fff;box-shadow:0 4px 10px #0000001a}.login-box[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{font-size:24px;font-weight:600;font-stretch:normal;font-style:normal;line-height:1.2;letter-spacing:.5px;text-align:center;color:#111827}.login-box[_ngcontent-%COMP%] .subtitle[_ngcontent-%COMP%]{max-width:331px;margin:8px auto 21px;font-family:Inter;font-size:14px;font-weight:500;font-stretch:normal;font-style:normal;line-height:1.5;letter-spacing:normal;text-align:center;color:#06c}.card-container[_ngcontent-%COMP%]{background-color:#fff;padding:1.5rem;border-radius:1rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.card-header[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center}.login-title[_ngcontent-%COMP%]{text-align:center;margin-bottom:.5rem;font-size:24px;letter-spacing:.5px;font-weight:600;margin-top:8px}.login-subtitle[_ngcontent-%COMP%]{text-align:center;font-size:clamp(12px,2vw,14px);color:#06c;font-weight:500;line-height:1.5;margin:0}.cards-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.5rem;margin-bottom:16px}.login-card[_ngcontent-%COMP%]{cursor:pointer;transition:all .3s ease;outline:none!important}.login-card[_ngcontent-%COMP%]:focus{outline:2px solid #1677ff;outline-offset:2px}.login-card[_ngcontent-%COMP%]:hover{transform:translateY(-2px)}.login-card[_ngcontent-%COMP%]:hover .card-content[_ngcontent-%COMP%]{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.card-content[_ngcontent-%COMP%]{background-color:#fff;border:1px solid var(--border, #e5e7eb);border-radius:.75rem;display:flex;flex-direction:column;gap:.75rem;padding:1.25rem;align-items:center;transition:all .3s ease;height:100%}.card-icon-wrapper[_ngcontent-%COMP%]{width:3.5rem;height:3.5rem;border-radius:.75rem;display:flex;align-items:center;justify-content:center}.card-icon[_ngcontent-%COMP%]{width:100%;height:100%;object-fit:contain}.card-text[_ngcontent-%COMP%]{text-align:center;font-size:16px;color:#6b7280;font-weight:500;line-height:1.5;margin:0}.terms-text[_ngcontent-%COMP%]{text-align:center;font-size:16px;color:#000;margin:0;line-height:1.6;display:flex;flex-direction:column}.terms-links[_ngcontent-%COMP%]{display:block}.terms-link[_ngcontent-%COMP%]{color:#1677ff;text-decoration:none}.terms-link[_ngcontent-%COMP%]:hover{text-decoration:underline}.back-button-container[_ngcontent-%COMP%]{margin-top:16px}.back-home-button[_ngcontent-%COMP%], .back-button[_ngcontent-%COMP%]{width:100%;display:flex;align-items:center;justify-content:center;padding:.625rem 1rem;background-color:#fff;color:#dc2626;border:1px solid #dc2626;border-radius:.375rem;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.back-home-button[_ngcontent-%COMP%]:hover, .back-button[_ngcontent-%COMP%]:hover{background-color:#fef2f2;border-color:#b91c1c;color:#b91c1c}.back-icon[_ngcontent-%COMP%]{width:1rem;height:1rem;flex-shrink:0}.sso-login-wrapper[_ngcontent-%COMP%]{width:100%;padding:1.5rem} .vts-typo-type-h1{font-family:sans-serif!important;font-size:30px!important} .vts-typo-type-h2{font-family:sans-serif!important;font-size:36px!important} vts-form-label{font-size:17px!important;font-family:sans-serif!important} .errorMessageDiv{display:flex;justify-content:flex-start!important;align-items:flex-start!important} .vts-checkbox-wrapper{font-size:14px} .vts-checkbox-wrapper span{color:#333} .vts-checkbox-checked .vts-checkbox-inner{background-color:var(--secondary-color-1);border-color:var(--primary-color)} button[vts-button][disabled]{opacity:.6;cursor:not-allowed} button[vts-button] .vts-btn-loading-icon{margin-right:8px}.wrap-input100[_ngcontent-%COMP%]{position:relative}.wrap-input100[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:22px;height:22px;
1cursor:pointer}.password-options[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.forgot-password[_ngcontent-%COMP%]{display:inline-block;text-align:right;font-size:13px;color:#1677ff;text-decoration:none;margin:0}.forgot-password[_ngcontent-%COMP%]:hover{text-decoration:underline}.support-text[_ngcontent-%COMP%]{margin-top:20px;font-size:14px;color:#333}.support-text[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:#1677ff;text-decoration:none;font-weight:600}.support-text[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover{text-decoration:underline}.contact-info[_ngcontent-%COMP%]{margin-top:15px;font-size:13px;color:#666;display:flex;flex-direction:column;gap:5px;text-align:center}.contact-info[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;gap:6px}.login-button-item[_ngcontent-%COMP%]{margin-top:20px!important}.additional-content[_ngcontent-%COMP%]{position:absolute;bottom:.5rem;right:.5rem;z-index:10}.qr-widget[_ngcontent-%COMP%]{background:#fff;backdrop-filter:blur(10px);border-radius:.75rem;padding:.5rem;box-shadow:0 4px 16px #0000001a;border:1px solid rgba(255,255,255,.2);text-align:center;
1min-width:200px}.qr-title[_ngcontent-%COMP%]{font-size:.875rem;font-weight:600;color:#1f2937;margin:0 0 1rem}.qr-code[_ngcontent-%COMP%]{width:120px;height:120px;margin:0 auto 1rem;display:flex;align-items:center;justify-content:center}.qr-placeholder[_ngcontent-%COMP%]{width:100%;height:100%;background:#f3f4f6;border:2px solid #d1d5db;border-radius:.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;padding:.5rem;font-size:.75rem;color:#6b7280}.qr-hint[_ngcontent-%COMP%]{font-size:.625rem;color:#9ca3af}.qr-image[_ngcontent-%COMP%]{width:100%;height:100%;object-fit:contain;border-radius:.5rem}.qr-description[_ngcontent-%COMP%]{font-size:.75rem;color:#6b7280;margin:0;line-height:1.5}.button-widget[_ngcontent-%COMP%]{background:#fff;backdrop-filter:blur(10px);border-radius:.75rem;padding:.5rem;box-shadow:0 4px 16px #0000001a;text-align:center}.button-link[_ngcontent-%COMP%]{display:inline-block;padding:.75rem 1.5rem;background-color:#1677ff;color:#fff;text-decoration:none;border-radius:.5rem;font-weight:500;font-size:14px;transition:background-color .2s}.button-link[_ngcontent-%COMP%]:hover{background-color:#0958d9}.text-widget[_ngcontent-%COMP%]{background:#fff;backdrop-filter:blur(10px);border-radius:.75rem;padding:.5rem;text-align:center;box-shadow:0 4px 16px #0000001a;max-width:300px}.text-title[_ngcontent-%COMP%]{font-size:1rem;font-weight:600;color:#1f2937;margin:0 0 .75rem}.text-content[_ngcontent-%COMP%]{font-size:.875rem;color:#4b5563;line-height:1.6;margin:0}.image-widget[_ngcontent-%COMP%]{background:#fff;backdrop-filter:blur(10px);border-radius:.75rem;padding:.5rem;box-shadow:0 4px 16px #0000001a;text-align:center}.image-link[_ngcontent-%COMP%]{display:block;margin-bottom:.5rem}.content-image[_ngcontent-%COMP%]{max-width:150px;max-height:150px;object-fit:contain;border-radius:.5rem}.image-title[_ngcontent-%COMP%]{font-size:.875rem;font-weight:500;color:#1f2937;margin:0}.html-widget[_ngcontent-%COMP%]{background:#fff;backdrop-filter:blur(10px);box-shadow:0 4px 16px #0000001a;max-width:400px;max-height:300px;overflow:auto}.html-widget[_ngcontent-%COMP%] *{max-width:100%}.sso-loading-overlay[_ngcontent-%COMP%]{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#fff;z-index:9999;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px}.sso-spinner[_ngcontent-%COMP%]{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #1677ff;border-radius:50%;animation:_ngcontent-%COMP%_sso-spin 1s linear infinite}@keyframes _ngcontent-%COMP%_sso-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.login-support-info[_ngcontent-%COMP%]{left:20px;right:20px;bottom:20px;min-width:0;padding:12px 16px;font-size:13px;text-align:center}}']})}}return r})()},84741:(Q,I,o)=>{o.r(I),o.d(I,{LoginComponent:()=>R});var t=o(23135),n=o(98231),e=o(51628),w=o(15799),M=o(44025),v=o(37606),P=o(54504),h=o(90695),x=o(97321),T=o(545),F=o(33153),A=o(34226),S=o(28113),m=o(62794),O=o(12119),D=o(15385),U=o(86570),j=o(91479),$=o(62252),B=o(52317),W=o(262),V=o(9760),b=o(60861),k=o(44267),d=o(15941),_=o(98259),u=o(96877),y=o(24034),L=o(44752),X=o(2765);const J=()=>({standalone:!0}),z=()=>["..","register-form"],K=()=>({"padding-bottom":"4px"}),N=a=>({name:a}),Y=()=>[20,16],E=()=>["..","forgot-password"];function G(a,r){if(1&a&&(t.qex(0),t.j41(1,"vts-option",25),t.nrm(2,"img",26),t.EFF(3),t.k0s(),t.bVm()),2&a){const s=r.$implicit;t.R7$(),t.Y8G("vtsValue",s.value)("vtsLabel",s.label),t.R7$(),t.Y8G("src",s.flagUrl,t.B4B)("ngStyle",t.lJ4(5,K)),t.R7$(),t.SpI(" ",s.label," ")}}function f(a,r){if(1&a&&(t.nrm(0,"img",26),t.EFF(1)),2&a){const s=t.XpG(2);t.Y8G("src",s.selectedCountryFlag,t.B4B)("ngStyle",t.lJ4(3,K)),t.R7$(),t.SpI(" ",s.selectedCountryCode," ")}}function p(a,r){if(1&a){const s=t.RV6();t.j41(0,"i",27),t.bIt("click",function(){t.eBV(s);const c=t.XpG(2);return t.Njj(c.clearValue("username"))}),t.k0s()}}function C(a,r){1&a&&(t.qex(0),t.EFF(1),t.nI1(2,"translate"),t.nI1(3,"translate"),t.bVm()),2&a&&(t.R7$(),t.SpI("",t.i5U(3,3,"common.validation.required",t.eq3(6,N,t.bMT(2,1,"common.form.password")))," "))}function H(a,r){1&a&&t.DNE(0,C,4,8,"ng-container",28),2&a&&t.Y8G("ngIf",r.$implicit.hasError("required"))}function Z(a,r){1&a&&(t.qex(0),t.EFF(1),t.nI1(2,"translate"),t.nI1(3,"translate"),t.bVm()),2&a&&(t.R
17$(),t.SpI(" ",t.i5U(3,3,"common.validation.required",t.eq3(6,N,t.bMT(2,1,"common.form.captchaCode")))," "))}function q(a,r){1&a&&(t.qex(0),t.EFF(1),t.nI1(2,"translate"),t.bVm()),2&a&&(t.R7$(),t.SpI(" ",t.bMT(2,1,"common.validation.captchaValid")," "))}function tt(a,r){if(1&a&&t.DNE(0,Z,4,8,"ng-container",28)(1,q,3,3,"ng-container",28),2&a){const s=r.$implicit;t.Y8G("ngIf",s.hasError("required")),t.R7$(),t.Y8G("ngIf",s.hasError("captcha"))}}function nt(a,r){if(1&a){const s=t.RV6();t.j41(0,"vts-form-item",29)(1,"vts-form-label",8),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"vts-form-control",18)(5,"div",30)(6,"div",31),t.nrm(7,"authentication-ui-app-input",32),t.nI1(8,"translate"),t.DNE(9,tt,2,2,"ng-template",null,3,t.C5r),t.k0s(),t.j41(11,"div",33)(12,"div",34),t.nrm(13,"img",35),t.k0s(),t.j41(14,"div",33)(15,"i",36),t.bIt("click",function(){t.eBV(s);const c=t.XpG(2);return t.Njj(c.refreshCaptcha())}),t.k0s()()()()()()}if(2&a){const s=t.sdS(10),i=t.XpG(2);t.R7$(2),t.JRh(t.bMT(3,6,"common.form.captchaCode")),t.R7$(2),t.Y8G("vtsErrorTip",s),t.R7$(),t.Y8G("vtsGutter",t.lJ4(10,Y)),t.R7$(2),t.Y8G("maxlength",6)("placeholder",t.bMT(8,8,"authentication.title.captcha")),t.R7$(6),t.FS9("src",i.imgCaptcha(),t.B4B)}}function et(a,r){1&a&&(t.j41(0,"vts-form-item")(1,"div",37)(2,"div",14)(3,"label",38),t.EFF(4),t.nI1(5,"translate"),t.k0s()(),t.j41(6,"div",39)(7,"a",40)(8,"b"),t.EFF(9),t.nI1(10,"translate"),t.k0s()()()()()),2&a&&(t.R7$(4),t.JRh(t.bMT(5,3,"common.form.rememberPassword")),t.R7$(3),t.Y8G("routerLink",t.lJ4(7,E)),t.R7$(2),t.JRh(t.bMT(10,5,"common.form.forgotPassword")))}function ot(a,r){if(1&a){const s=t.RV6();t.j41(0,"authentication-ui-authentication-form",4),t.nI1(1,"translate"),t.qex(2,6),t.nrm(3,"vts-divider"),t.j41(4,"form",7),t.bIt("ngSubmit",function(){t.eBV(s);const c=t.XpG();return t.Njj(c.submitForm())}),t.j41(5,"vts-form-item")(6,"vts-form-label",8),t.EFF(7),t.nI1(8,"translate"),t.k0s(),t.j41(9,"vts-form-control",9)(10,"div",10)(11,"div",11)(12,"vts-select",12),t.mxI("ngModelChange",function(c){t.eBV(s);const g=t.XpG();return t.DH7(g.selectedCountryCode,c)||(g.selectedCountryCode=c),t.Njj(c)}),t.bIt("ngModelChange",function(c){t.eBV(s);const g=t.XpG();return t.Njj(g.onChangeCountryCode(c))}),t.DNE(13,G,4,6,"ng-container",13),t.k0s(),t.DNE(14,f,2,4,"ng-template",null,0,t.C5r),t.k0s(),t.j41(16,"div",14)(17,"vts-input-group",15)(18,"input",16),t.bIt("blur",function(){t.eBV(s);const c=t.XpG();return t.Njj(c.trim(c.loginForm,"username",!0))}),t.k0s()(),t.DNE(19,p,1,0,"ng-template",null,1,t.C5r),t.k0s()(),t.nrm(21,"authentication-ui-control-messages",17),t.k0s()(),t.j41(22,"vts-form-item")(23,"vts-form-label",8),t.EFF(24),t.nI1(25,"translate"),t.k0s(),t.j41(26,"vts-form-control",18),t.nrm(27,"authentication-ui-app-input",19),t.nI1(28,"translate"),t.DNE(29,H,1,1,"ng-template",null,2,t.C5r),t.k0s()(),t.DNE(31,nt,16,11,"vts-form-item",20)(32,et,11,8,"vts-form-item"),t.j41(33,"vts-form-item")(34,"vts-form-control")(35,"button",21),t.EFF(36),t.nI1(37,"translate"),t.k0s()()()(),t.nrm(38,"vts-divider"),t.qex(39,22),t.j41(40,"div",23)(41,"span"),t.EFF(42),t.nI1(43,"translate"),t.k0s(),t.j41(44,"a",24),t.bIt("click",function(){t.eBV(s);const c=t.XpG();return t.Njj(c.isLogin.set(!1))}),t.j41(45,"b"),t.EFF(46),t.nI1(47,"translate"),t.k0s()()(),t.bVm()(),t.k0s()}if(2&a){const s=t.sdS(15),i=t.sdS(20),c=t.sdS(30),g=t.XpG();t.Y8G("title",t.bMT(1,24,"authentication.title.signIn")),t.R7$(4),t.Y8G("vtsLayout","vertical")("formGroup",g.loginForm),t.R7$(3),t.JRh(t.bMT(8,26,"common.form.phoneNumber")),t.R7$(5),t.R50("ngModel",g.selectedCountryCode),t.Y8G("ngModelOptions",t.lJ4(38,J))("vtsCustomTemplate",s)("ngClass",g.loginClsConfig().usernameCls),t.R7$(),t.Y8G("ngForOf",g.listCountryCodes),t.R7$(4),t.Y8G("vtsSuffix",i)("ngClass",g.loginClsConfig().usernameCls),t.R7$(),t.Y8G("ngClass",g.loginClsConfig().usernameCls),t.R7$(3),t.Y8G("control",g.f.username),t.R7$(3),t.JRh(t.bMT(25,28,"common.form.password")),t.R7$(2),t.Y8G("vtsErrorTip",c),t.R7$(),t.Y8G("additionalCls",g.loginClsConfig().passwordCls)("placeholder",t.bMT(28,30,"common.form.password")),t.R7$(4),t.Y8G("ngIf",g.enableCaptcha()),t.R7$(),t.vxM(g.sysAuthenLoginConfig().rmbPass?32:-1),t.R7$(3),t.BMQ("disabled",g.isSubmitting()?"":null),t.R7$(),t.SpI(" ",t.bMT(37,32,"authentication.form.signInAction")," "),t.R7$(6),t.SpI("",t.bMT(43,34,"authentication.form.signUpDesc"),"\xa0"),t.R7$(2),t.Y8G("routerLink",t.lJ4(39,z)),t.R7$(2),t.JRh(t.bMT(47,36,"authentication.form.signUpLink"))}}function l(a,r){if(1&a){const s=t.RV6();t.j41(0,"authentication-feature-change-password",41),t.bIt("backToLogin",function(){t.eBV(s);const c=t.XpG();return t.Njj(c.backToLogin())}),t.k0s()}if(2&a){const s=t.XpG();t.Y8G("userName",s.loginForm.get("username").value)("changePassType",s.changePassType())("finishChangePass",s.readyToLogin)("changePasswordExpiredCode",s.changePasswordExpiredCode())}}let R=(()=>{class a{get f(){return this.loginForm.controls}constructor(){this.authService=(0,t.WQX)(D.uRZ),this._authShareService=(0,t.WQX)(D.uRZ),this.router=(0,t.WQX)(T.Ix),this.notifyService=(0,t.WQX)(D.JEu),this.userStatusChangeService=(0,t.WQX)(D.$CI),this._utils=(0,t.WQX)(D.$Db),this.activatedRoute=(0,t.WQX)(T.nX),this.changePassTempService=(0,t.WQX)(y.V),this.localTransactionId=(0,t.vPA)(""),this.enableCaptcha=(0,t.vPA)(!1),this.imgCaptcha=(0,t.vPA)(null),this.strCaptcha=(0,t.vPA)(""),this.countFailed=(0,t.vPA)(0),this.loginForm=new h.gE({username:new h.MJ("",[D.Bm6.customPhoneRequired,h.k0.maxLength(10),D.Bm6.mobileNumber]),password:new h.MJ("",{validators:[h.k0.required]}),captcha:new h.MJ("",{}),rememberMe:new h.hs(!1),transactionId:new h.MJ("",[])}),this.sysAuthenLoginConfig=(0,t.vPA)({}),this.sysAuthenRegistryConfig=(0,t.vPA)({}),this.sysPasswordConfig=(0,t.vPA)({}),this.isSubmitting=(0,t.vPA)(!1),this.selectedCountryCode="+84",this.selectedCountryFlag="assets/template/images/ic_TiengViet.svg",this.listCountryCodes=[{value:"+84",label:"+84",flagUrl:"assets/template/images/ic_TiengViet.svg"}],this.changePassType=(0,t.vPA)(void 0),this.keptAuthenticatedUser=(0,t.vPA)(null),this.loginClsConfig=(0,t.vPA)({}),this.noRedirectHomPage=(0,t.hFB)(!1),this.isLogin=(0,t.vPA)(!0),this.onChangeCountryCode=s=>{this.selectedCountryCode=s,this.selectedCountryFlag=this.listCountryCodes.find(i=>i.value==s)?.flagUrl||""},this.trim=this._utils.trimOnBlur,this.readyToLogin=()=>{D.VGQ.setUserToken(this.keptAuthenticatedUser()),this.notifyService&&(this.notifyService.setUserAuth(),this.userStatusChangeService.setUserAuth()),this.router.navigate(["/"])},this.showChangePassword=(0,t.vPA)(!1),this.changePasswordExpiredCode=(0,t.vPA)(""),this.destroy$=new $.B,this.localTransactionId.set((0,j.A)()),D.VGQ.setLoginTransactionId(this.localTransactionId()),this.activatedRoute.parent&&this.activatedRoute.parent.data.pipe((0,B.Q)(this.destroy$),(0,W.$)()).subscribe(s=>{console.log(s),this.loginClsConfig.set(s.loginClsConfig||{})})}ngOnInit(){this._authShareService.sysAuthenLoginSharer$.pipe((0,B.Q)(this.destroy$)).subscribe(i=>{this.sysAuthenLoginConfig.set(i)}),this._authShareService.sysAuthenRegistrySharer$.pipe((0,B.Q)(this.destroy$)).subscribe(i=>{this.sysAuthenRegistryConfig.set(i)}),this._authShareService.sysAuthenPasswordSharer$.pipe((0,B.Q)(this.destroy$)).subscribe(i=>{this.sysPasswordConfig.set(i)}),this.countFailed.set(0);const s=D.VGQ.getUserToken();this.loginForm.get("transactionId")?.setValue(this.localTransactionId()),this.noRedirectHomPage()||(s?this.router.navigate(["/"]):this.notifyService&&this.notifyService.clearUserAuth()),this.loginForm.get("username")?.valueChanges.pipe((0,B.Q)(this.destroy$),(0,V.p)(()=>!this.noRedirectHomPage())).subscribe(i=>{this.loginForm.get("username")?.value!==i.trim()&&this.loginForm.get("username")?.setValue(i.trim())})}ngAfterViewInit(){const s=document.getElementsByTagName("share-ui-custom-toastr")[0];s&&s.remove()}
1submitForm(){if(this.noRedirectHomPage())return;if(!D.$Db.isValidForm(this.loginForm))return void(this.enableCaptcha()&&this.sysAuthenLoginConfig().recaptcha&&this.refreshCaptcha());const s=this.loginForm.value;s&&("0"!=s.username[0]&&(s.username=`0${s.username}`),this.isSubmitting.set(!0),this.authService.login(s).subscribe({next:i=>{this.countFailed.set(0);const c=i.detail;this.isSubmitting.set(!1),this.setStorageUserToken(c)},error:i=>{this.countFailed.update(g=>g+1);const c=i.error.code;if(c)switch(c){case 15:this.isSubmitting.set(!1),this.enableCaptchaForError(i);break;case 7:this.isSubmitting.set(!1),this.refreshCaptcha();break;case 16:this.isSubmitting.set(!1),this.handlePasswordExpired(i);break;default:this.isSubmitting.set(!1)}}}))}setStorageUserToken(s){if(s&&s.user&&s.user.roles){const i={};i.accessToken=s.token,s.user&&(i.avatar=s.user.imageUrl?s.user.imageUrl:"",i.position=s.user.position?s.user.position:"");const c=s.user;if(c&&(i.userInfo=c),i.userInfo&&i.userInfo.org&&D.VGQ.set("userOrgId",`${i.userInfo.org.id}`),i.remindChangePassWord=s.remindChangePassWord,this.keptAuthenticatedUser.set(i),i.remindChangePassWord)return this.showChangePassword.set(!0),this.changePassType.set("change-default-password"),this.changePassTempService.setUserId(c.id),void D.VGQ.setTempToken(i.accessToken);this.readyToLogin()}}refreshCaptcha(){this.authService.getCaptchaCode().subscribe(s=>{s&&"SUCCESS"==s.type&&(this.strCaptcha.set(s.data),this.authService.getCaptchaImg(this.strCaptcha()).subscribe(i=>{this.imgCaptcha.set(i.imgCaptcha)}))})}handlePasswordExpired(s){const c=JSON.parse(s.error.errorInfo);c&&c.changePasswordExpiredCode&&(this.changePasswordExpiredCode.set(c.changePasswordExpiredCode),this.showChangePassword.set(!0),this.changePassType.set("change-expired-password"))}enableCaptchaForError(s){const c=JSON.parse(s.error.errorInfo);(c&&c.enableCaptcha||this.countFailed()==this.sysPasswordConfig().captchaWrongPassCount&&this.sysPasswordConfig().captchaWrongPassStatus)&&(this.enableCaptcha.set(!0),this.loginForm.get("captcha")?.setValidators([h.k0.required])),this.enableCaptcha()&&this.refreshCaptcha()}backToLogin(){this.showChangePassword.set(!1)}clearValue(s){this.loginForm.get(s)?.setValue(""),this.loginForm.get(s)?.markAsDirty(),this.loginForm.get(s)?.markAsTouched(),this.loginForm.get(s)?.updateValueAndValidity()}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static{this.\u0275fac=function(i){return new(i||a)}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["authentication-feature-login"]],inputs:{noRedirectHomPage:[1,"noRedirectHomPage"]},features:[t.Jv_([m.Mo])],decls:2,vars:1,consts:[["customTopRenderTpl",""],["suffixInputTpl",""],["passwordErrorTpl",""],["captchaErrorTpl",""],[3,"title"],[3,"userName","changePassType","finishChangePass","changePasswordExpiredCode"],["content",""],["vts-form","",3,"ngSubmit","vtsLayout","formGroup"],["vtsRequired",""],[1,"login-container"],["vts-row","",2,"flex-wrap","nowrap","gap","4px"],["vts-col","","vtsFlex","100px"],["vtsAllowClear","false",3,"ngModelChange","ngModel","ngModelOptions","vtsCustomTemplate","ngClass"],[4,"ngFor","ngForOf"],["vts-col","","vtsFlex","auto"],[1,"input-phone","bor-6",3,"vtsSuffix","ngClass"],["vts-input","","placeholder","","numbersOnly","","formControlName","username","maxlength","10","autocomplete","off",3,"blur","ngClass"],[3,"control"],[3,"vtsErrorTip"],["type","password","formControlName","password",3,"additionalCls","placeholder"],["style","margin-bottom: 16px;",4,"ngIf"],["vtsType","primary","vtsBlock","","vts-button",""],["footer",""],[1,"register"],["vts-typo","","vtsType","link",1,"register-link",3,"click","routerLink"],["vtsCustomContent","",3,"vtsValue","vtsLabel"],["width","25px","height","25px","alt","",3,"src","ngStyle"],["vts-icon","","vtsType","Close",1,"input-suffix-btn","input-clear-btn",3,"click"],[4,"ngIf"],[2,"margin-bottom","16px"],["vts-row","",3,"vtsGutter"],["vts-col","","vtsSpan","14"],["formControlName","captcha",3,"maxlength","placeholder"],["vts-col","","vts-row","","vtsAlign","middle"],["vts-col",""],["alt","imageCaptcha",2,"border-radius","5px",3,"src"],["vts-icon","","vtsType","Sync:vts",1,"reload",3,"click"],["vts-row",""],["vts-checkbox","","formControlName","rememberMe"],["vts-col","","vtsFlex","1 1 auto",2,"text-align","right"],["vts-typo","","vtsType","link",1,"forgot-password-link",3,"routerLink"],[3,"backToLogin","userName","changePassType","finishChangePass","changePasswordExpiredCode"]],template:function(i,c){1&i&&t.DNE(0,ot,48,40,"authentication-ui-authentication-form",4)(1,l,1,4,"authentication-feature-change-password",5),2&i&&t.vxM(c.showChangePassword()?1:0)},dependencies:[n.MD,n.YU,n.Sq,n.bT,n.B3,x.A,F.iI,F.Wk,w.SX,S.tH,S.BE,w.dF,w.Qp,w.rA,w.Yc,M.G,M.R$,X.T,v.N,v.a,u.y,_.fX,A.VW,A.Ex,h.X1,h.qT,h.me,h.BC,h.cb,h.tU,h.j4,h.JD,S.mi,P.X6,e.h,e.D9,U.dA,U.qb,b.h,k.iO,k.fZ,k.eH,k.Ms,d.u,d.mw,d.B1,h.YN,h.vS,O.v,L.u],styles:["[_nghost-%COMP%]{display:block;width:100%}.register[_ngcontent-%COMP%]{text-align:center}.reload[_ngcontent-%COMP%]{font-size:22px;margin-left:9px;
1cursor:pointer}.bor-6[_ngcontent-%COMP%]{border-radius:6px!important}vts-form-item[_ngcontent-%COMP%] vts-form-control[_ngcontent-%COMP%] div[_ngcontent-%COMP%] div[_ngcontent-%COMP%] div[_ngcontent-%COMP%] div[_ngcontent-%COMP%] .vts-select[_ngcontent-%COMP%] vts-select-top-control.vts-select-selector[_ngcontent-%COMP%]{padding-right:28px!important}.login-container[_ngcontent-%COMP%]:has(.errorMessageDiv>small) .input-phone.vts-input-affix-wrapper[_ngcontent-%COMP%]{border:1px solid #E03}"]})}}return a})()},38977:(Q,I,o)=>{o.r(I),o.d(I,{RegisterFormComponent:()=>Y});var t=o(23135),n=o(98231),e=o(97321),w=o(545),M=o(33153),v=o(90695),P=o(54504),h=o(51628),x=o(15799),T=o(44025),F=o(34226),A=o(37606),S=o(62794),m=o(15385),O=o(62252),D=o(98259),U=o(44752),j=o(86570),$=o(44267),B=o(65197),W=o(8077),V=o(96877),b=o(24034),k=o(60861),d=o(28113),_=o(2765);const u=()=>["..","login"],y=E=>({name:E});function L(E,G){1&E&&(t.qex(0),t.EFF(1),t.nI1(2,"translate"),t.nI1(3,"translate"),t.bVm()),2&E&&(t.R7$(),t.SpI("",t.i5U(3,3,"common.validation.required",t.eq3(6,y,t.bMT(2,1,"common.form.fullname")))," "))}function X(E,G){1&E&&(t.qex(0),t.EFF(1),t.nI1(2,"translate"),t.nI1(3,"translate"),t.bVm()),2&E&&(t.R7$(),t.SpI("",t.i5U(3,3,"common.validation.invalid",t.eq3(6,y,t.bMT(2,1,"common.form.fullname")))," "))}function J(E,G){if(1&E&&t.DNE(0,L,4,8,"ng-container",17)(1,X,4,8,"ng-container",17),2&E){const f=G.$implicit;t.Y8G("ngIf",f.hasError("required")),t.R7$(),t.Y8G("ngIf",f.hasError("pattern")&&f.touched)}}function z(E,G){if(1&E){const f=t.RV6();t.j41(0,"authentication-ui-authentication-form",1),t.nI1(1,"translate"),t.qex(2,3),t.nrm(3,"vts-divider"),t.j41(4,"form",4)(5,"vts-form-item")(6,"vts-form-label",5),t.EFF(7),t.nI1(8,"translate"),t.k0s(),t.j41(9,"vts-form-control",6),t.nrm(10,"authentication-ui-app-input",7),t.nI1(11,"translate"),t.DNE(12,J,2,2,"ng-template",null,0,t.C5r),t.k0s()(),t.j41(14,"vts-form-item")(15,"vts-form-label",5),t.EFF(16),t.nI1(17,"translate"),t.k0s(),t.j41(18,"vts-form-control")(19,"authentication-ui-app-input",8),t.nI1(20,"translate"),t.bIt("ngModelChange",function(){t.eBV(f);const C=t.XpG();return t.Njj(C.comparePassword())}),t.k0s()(),t.nrm(21,"authentication-ui-control-messages",9),t.j41(22,"span",10),t.EFF(23),t.k0s()(),t.j41(24,"vts-form-item")(25,"vts-form-label",5),t.EFF(26),t.nI1(27,"translate"),t.k0s(),t.j41(28,"vts-form-control")(29,"authentication-ui-app-input",11),t.nI1(30,"translate"),t.bIt("ngModelChange",function(){t.eBV(f);const C=t.XpG();return t.Njj(C.comparePassword())}),t.k0s()(),t.nrm(31,"authentication-ui-control-messages",9),t.k0s(),t.j41(32,"vts-form-item",12)(33,"vts-form-control")(34,"button",13),t.bIt("click",function(){t.eBV(f);const C=t.XpG();return t.Njj(C.onClickRegister())}),t.EFF(35),t.nI1(36,"translate"),t.k0s()()()(),t.nrm(37,"vts-divider"),t.bVm(),t.qex(38,14),t.j41(39,"span",15),t.EFF(40),t.nI1(41,"translate"),t.k0s(),t.j41(42,"a",16)(43,"b"),t.EFF(44),t.nI1(45,"translate"),t.k0s()(),t.bVm(),t.k0s()}if(2&E){const f=t.sdS(13),p=t.XpG();t.Y8G("title",t.bMT(1,24,"authentication.title.signUpConfig"))("contentMargin",!1),t.R7$(4),t.Y8G("vtsLayout","vertical")("formGroup",p.registerForm),t.R7$(3),t.JRh(t.bMT(8,26,"common.form.fullname")),t.R7$(2),t.Y8G("vtsErrorTip",f),t.R7$(),t.Y8G("placeholder",t.bMT(11,28,"common.form.fullname"))("maxlength",255)("autoComplete",!1),t.R7$(6),t.JRh(t.bMT(17,30,"common.form.password")),t.R7$(3),t.Y8G("placeholder",t.bMT(20,32,"common.form.passwordNew"))("maxlength",p.sysAuthenPasswordConfig().maxLength)("autoComplete",!1),t.R7$(2),t.Y8G("control",p.f.password),t.R7$(2),t.JRh(p.passwordRequirementTxt()),t.R7$(3),t.JRh(t.bMT(27,34,"common.form.confirmPassword")),t.R7$(3),t.Y8G("placeholder",t.bMT(30,36,"common.form.confirmPassword"))("autoComplete",!1),t.R7$(2),t.Y8G("control",p.f.confirmPassword),t.R7$(3),t.Y8G("disabled",p.loadingToLogin()),t.R7$(),t.SpI("",t.bMT(36,38,"authentication.form.signUpAction")," "),t.R7$(5),t.SpI("",t.bMT(41,40,"authentication.form.signInDesc"),"\xa0"),t.R7$(2),t.Y8G("routerLink",t.lJ4(44,u)),t.R7$(2),t.JRh(t.bMT(45,42,"authentication.form.signInLink"))}}function K(E,G){if(1&E){const f=t.RV6();t.j41(0,"authentication-feature-change-password",18),t.bIt("backToLogin",function(){t.eBV(f);const C=t.XpG();return t.Njj(C.backToLogin())}),t.k0s()}
1if(2&E){const f=t.XpG();t.Y8G("userName",f._authShareService.registerKeptInfos.phoneNumber)("changePassType",f.changePassType())("finishChangePass",f.readyToLogin)}}let Y=(()=>{class E{constructor(){this._authShareService=(0,t.WQX)(m.uRZ),this._toastService=(0,t.WQX)(S.Mo),this._translate=(0,t.WQX)(h.c$),this.router=(0,t.WQX)(w.Ix),this.notifyService=(0,t.WQX)(m.JEu),this.userStatusChangeService=(0,t.WQX)(m.$CI),this._sysAuthenService=(0,t.WQX)(m.NIB),this.changePassTempService=(0,t.WQX)(b.V),this.sysAuthenPasswordConfig=(0,t.vPA)({}),this.loadingToLogin=(0,t.vPA)(!1),this.passwordRequirementTxt=(0,t.vPA)(""),this.showChangePassword=(0,t.vPA)(!1),this.changePassType=(0,t.vPA)(void 0),this.keptAuthenticatedUser=(0,t.vPA)(null),this.registerForm=new v.gE({username:new v.MJ("",{validators:[v.k0.required]}),fullName:new v.MJ("",{validators:[v.k0.required]}),password:new v.MJ("",{validators:[v.k0.required]}),confirmPassword:new v.MJ("",{validators:[v.k0.required,E=>{const G=E.parent;return G&&G.get("password")?.value!==G.get("confirmPassword")?.value?{matchPassword:!0}:null}]})}),this.destroy$=new O.B,this.readyToLogin=()=>{m.VGQ.setUserToken(this.keptAuthenticatedUser()),this.notifyService&&(this.notifyService.setUserAuth(),this.userStatusChangeService.setUserAuth()),this.router.navigate(["/pages"])},this.backToLogin=()=>this.router.navigate(["/auth/login"]),this.generatePasswordRequirementText=()=>{this.passwordRequirementTxt.set(m.yR8.generatePasswordRequirementsTxt(this._translate,this.sysAuthenPasswordConfig()))}}ngOnInit(){this._sysAuthenService.getSysPasswordConfig().subscribe(f=>{const p=f.data;p&&p.length>0&&(this.sysAuthenPasswordConfig.set(p[0]),this.generatePasswordRequirementText(),this.buildForm())})}buildForm(){this.registerForm.get("username")?.setValue(this._authShareService.registerKeptInfos.phoneNumber),this.sysAuthenPasswordConfig().lowerLetter&&(this.registerForm.get("password")?.addValidators(m.Bm6.hasAtLeastOneLowercaseCharacter),this.registerForm.get("confirmPassword")?.addValidators(m.Bm6.hasAtLeastOneLowercaseCharacter)),this.sysAuthenPasswordConfig().upperLetter&&(this.registerForm.get("password")?.addValidators(m.Bm6.hasAtLeastOneUppercaseCharacter),this.registerForm.get("confirmPassword")?.addValidators(m.Bm6.hasAtLeastOneUppercaseCharacter)),this.sysAuthenPasswordConfig().number&&(this.registerForm.get("password")?.addValidators(m.Bm6.hasAtLeastOneNumber),this.registerForm.get("confirmPassword")?.addValidators(m.Bm6.hasAtLeastOneNumber)),this.sysAuthenPasswordConfig().symbol&&(this.registerForm.get("password")?.addValidators(m.Bm6.hasAtLeastOneSpecialCharacter),this.registerForm.get("confirmPassword")?.addValidators(m.Bm6.hasAtLeastOneSpecialCharacter)),this.sysAuthenPasswordConfig().minLength&&(this.registerForm.get("password")?.addValidators(m.Bm6.minLength(this.sysAuthenPasswordConfig().minLength)),this.registerForm.get("confirmPassword")?.addValidators(m.Bm6.minLength(this.sysAuthenPasswordConfig().minLength))),this.sysAuthenPasswordConfig().maxLength&&(this.registerForm.get("password")?.addValidators(m.Bm6.maxLength(this.sysAuthenPasswordConfig().maxLength)),this.registerForm.get("confirmPassword")?.addValidators(m.Bm6.maxLength(this.sysAuthenPasswordConfig().maxLength)))}ngOnDestroy(){this.destroy$.next(!1),this.destroy$.complete()}
1onClickRegister(){if(this.registerForm.invalid)return;const f={userName:this._authShareService.registerKeptInfos.phoneNumber,phoneNumber:this._authShareService.registerKeptInfos.phoneNumber,fullName:this.registerForm.get("fullName")?.value,password:this.registerForm.get("password")?.value,registerSecretKey:this._authShareService.registerKeptInfos.registerSecretKey};this.loadingToLogin.set(!0),this._authShareService.registryNewPhoneNumber(f).subscribe(p=>{p&&(this._toastService.success("",this._translate.instant("authentication.title.createAccountSucceed")),this.setStorageUserToken(p))},()=>{this.loadingToLogin.set(!1)})}setStorageUserToken(f){if(f&&f.user&&f.user.roles){const p={};p.accessToken=f.token,f.user&&(p.avatar=f.user.imageUrl?f.user.imageUrl:"",p.position=f.user.position?f.user.position:"");const C=f.user;if(C&&(p.userInfo=C),p.userInfo&&p.userInfo.org&&m.VGQ.set("userOrgId",`${p.userInfo.org.id}`),p.remindChangePassWord=f.remindChangePassWord,this.keptAuthenticatedUser.set(p),p.remindChangePassWord)return this.showChangePassword.set(!0),this.changePassType.set("change-default-password"),this.changePassTempService.setUserId(C.id),void m.VGQ.setTempToken(p.accessToken);this.loadingToLogin.set(!1),this.readyToLogin()}}get f(){return this.registerForm.controls}comparePassword(){const f=this.registerForm.get("password")?.value,p=this.registerForm.get("confirmPassword")?.value;f&&p&&(f===p?(this.registerForm.get("password")?.setErrors(null),this.registerForm.get("confirmPassword")?.setErrors(null)):this.registerForm.get("confirmPassword")?.setValidators([v.k0.required,E=>{const G=E.parent;return G&&G.get("password")?.value!==G.get("confirmPassword")?.value?{matchPassword:!0}:null}]),this.registerForm.get("password")?.updateValueAndValidity(),this.registerForm.get("confirmPassword")?.updateValueAndValidity())}static{this.\u0275fac=function(p){return new(p||E)}}static{this.\u0275cmp=t.VBU({type:E,selectors:[["authentication-feature-register-form"]],features:[t.Jv_([S.Mo])],decls:2,vars:1,consts:[["fullnameErrorTpl",""],[3,"title","contentMargin"],[3,"userName","changePassType","finishChangePass"],["content",""],["vts-form","",1,"register-form",3,"vtsLayout","formGroup"],["vtsRequired",""],[3,"vtsErrorTip"],["formControlName","fullName",3,"placeholder","maxlength","autoComplete"],["type","password","formControlName","password",3,"ngModelChange","placeholder","maxlength","autoComplete"],[3,"control"],[1,"new-password-requirement-box"],["type","password","formControlName","confirmPassword",3,"ngModelChange","placeholder","autoComplete"],[2,"padding-top","12px"],["vtsType","primary","vtsBlock","","vts-button","",3,"click","disabled"],["footer",""],[2,"padding-top","24px"],["vts-typo","","vtsType","link",3,"routerLink"],[4,"ngIf"],[3,"backToLogin","userName","changePassType","finishChangePass"]],template:function(p,C){1&p&&t.DNE(0,z,46,45,"authentication-ui-authentication-form",1)(1,K,1,3,"authentication-feature-change-password",2),2&p&&t.vxM(C.showChangePassword()?1:0)},dependencies:[n.MD,n.bT,e.A,M.iI,M.Wk,v.X1,v.qT,v.BC,v.cb,v.tU,v.j4,v.JD,V.y,h.h,h.D9,x.SX,d.tH,d.BE,x.dF,x.Qp,x.rA,x.Yc,T.G,T.R$,_.T,F.VW,A.N,A.a,P.X6,D.fX,W.BL,j.dA,$.iO,v.YN,U.L,U.u,B.mn,S.Li,k.h],styles:["[_nghost-%COMP%]{display:block;width:100%}.available-time-label[_ngcontent-%COMP%]{color:#e03;font-style:italic}"]})}}return E})()},12119:(Q,I,o)=>{o.d(I,{v:()=>n});var t=o(23135);let n=(()=>{class e{constructor(M){this._el=M,this.trimZeroFirst=!1}onInputChange(M){const v=this._el.nativeElement.value;this._el.nativeElement.value=""!=v.replace(/[^0-9]*/g,"")?this.trimZeroFirst?parseInt(v.replace(/[^0-9]*/g,""),10).toString():v.replace(/[^0-9]*/g,""):"",v!==this._el.nativeElement.value&&(this.control&&this.control.setValue(this._el.nativeElement.value),M.stopPropagation())}static{this.\u0275fac=function(v){return new(v||e)(t.rXU(t.aKT))}}static{this.\u0275dir=t.FsC({type:e,selectors:[["input","numbersOnly",""]],hostBindings:function(v,P){1&v&&t.bIt("input",function(x){return P.onInputChange(x)})},inputs:{control:"control",trimZeroFirst:"trimZeroFirst"}})}}return e})()}}]);
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.