1import{a as E}from"./chunk-NF6WQ3JT.js";import{a as he}from"./chunk-KTZALXTN.js";import{v as ge}from"./chunk-7DQ5IDYD.js";import"./chunk-OHK4JWWL.js";import"./chunk-GAWBVHDV.js";import"./chunk-466IXCVS.js";import"./chunk-I4SNZ2Q5.js";import"./chunk-6FG4KXI6.js";import"./chunk-XCS72FDQ.js";import"./chunk-WLL3BAAB.js";import"./chunk-EDF3FQZZ.js";import"./chunk-ZGSLCXHW.js";import"./chunk-O474YC64.js";import"./chunk-PNPW23CE.js";import"./chunk-DIEYCNP2.js";import"./chunk-TQPKTQAL.js";import"./chunk-D7VEHFH6.js";import"./chunk-BJEDNTAC.js";import"./chunk-OSUWHDPV.js";import"./chunk-7365YTCK.js";import"./chunk-6TQOBFCS.js";import"./chunk-PPMQE2JW.js";import"./chunk-FUUHAJX4.js";import"./chunk-2UQAVQ45.js";import"./chunk-JKUHAAK3.js";import"./chunk-ZEOBUA47.js";import"./chunk-Z5XG4XOC.js";import"./chunk-5SRAOHH7.js";import"./chunk-S2WGG3O5.js";import"./chunk-2VXHONUW.js";import"./chunk-BTWHZXKR.js";import"./chunk-NQRRLVFI.js";import"./chunk-HTF3JALH.js";import"./chunk-RJGQFZWE.js";import"./chunk-RYGMUVZO.js";import"./chunk-6LHHOJ67.js";import"./chunk-YDRZG5W4.js";import"./chunk-C2K24JJO.js";import"./chunk-SKLK4QB7.js";import"./chunk-FOX6PFLG.js";import"./chunk-4BJWPEWV.js";import"./chunk-IHXXJ3FS.js";import"./chunk-XIR7RIPN.js";import"./chunk-EQEHDPN2.js";import"./chunk-KQNKCWSB.js";import"./chunk-7GS6EP74.js";import"./chunk-W3NQXQOX.js";import"./chunk-FN5PQSEI.js";import"./chunk-DORVKHI7.js";import"./chunk-TN75OO2P.js";import"./chunk-YR7EQSKE.js";import"./chunk-7A4O647I.js";import"./chunk-LO6CADJZ.js";import"./chunk-BE6I22JN.js";import"./chunk-4Z5RL6QO.js";import"./chunk-C5N2ULTJ.js";import"./chunk-HQANNBNX.js";import"./chunk-AE6ER5EQ.js";import"./chunk-VCDKFT4V.js";import"./chunk-U7DEF5TX.js";import"./chunk-PFMUUSHO.js";import"./chunk-2TFAGBRS.js";import"./chunk-BUYGALCV.js";import{D as _e,E as G,F as S,b as se,c as le,e as T,g as U,h as de,m as z,n as pe,o as ue,r as fe,t as Ce,u as ve}from"./chunk-2QYSD5RO.js";import{a as me}from"./chunk-5PO4QCCX.js";import"./chunk-DMHJZRXD.js";import"./chunk-K4QTA3A5.js";import"./chunk-54W4P7NA.js";import"./chunk-XYUM3QGQ.js";import{L as ce}from"./chunk-AJRHK7D2.js";import"./chunk-QGTBO2LV.js";import"./chunk-BPCMKL7S.js";import"./chunk-PCGUCIEY.js";import"./chunk-TBVUQWMS.js";import{f as R,g as re,h as A,n as Y}from"./chunk-FAGCLODN.js";import"./chunk-ROUGUONR.js";import"./chunk-SVLM2ECX.js";import"./chunk-MY5YK5O5.js";import{c as j}from"./chunk-4NGQH4V6.js";import"./chunk-PWQXPZVK.js";import"./chunk-UKHQPMQZ.js";import"./chunk-Y4AYZAWK.js";import"./chunk-7WAXKT5I.js";import"./chunk-MHLI7EB3.js";import{a as ae}from"./chunk-KIBC2ZGT.js";import"./chunk-6K3X73CK.js";import"./chunk-DLTOIL4G.js";import"./chunk-334MXCTX.js";import"./chunk-U5TOGEJX.js";import{H as oe}from"./chunk-OD4FXCMW.js";import{Ac as _,D as H,Fa as C,Fc as g,Ga as v,Hc as l,Ib as p,Ja as X,M as J,Na as D,Ob as h,Pb as N,V as K,Wa as Z,Wc as c,Xc as f,Zc as ee,dd as te,ed as ne,fd as ie,hc as m,jc as s,jd as b,la as B,mc as P,na as Q,nc as V,oc as u,pc as r,qc as o,rc as x,ua as O,y as $,zb as a}from"./chunk-T2TVCV7P.js";import"./chunk-BBHHUGUF.js";var Se=(n,t)=>t.value;function Ee(n,t){n&1&&(r(0,"span"),c(1,"First name is required"),o())}function Ie(n,t){if(n&1&&(r(0,"div",4),m(1,Ee,2,0,"span"),o()),n&2){let e=l();a(),s(e.f.firstName.errors.required?1:-1)}}
1function Me(n,t){n&1&&(r(0,"span"),c(1,"Last name is required"),o())}function ke(n,t){if(n&1&&(r(0,"div",4),m(1,Me,2,0,"span"),o()),n&2){let e=l();a(),s(e.f.lastName.errors.required?1:-1)}}function Fe(n,t){n&1&&(r(0,"span"),c(1,"Email is required"),o())}function we(n,t){n&1&&(r(0,"span"),c(1,'A valid email address has letters, numbers, "@" and "."'),o())}function Te(n,t){if(n&1&&(r(0,"div",4),m(1,Fe,2,0,"span"),m(2,we,2,0,"span"),o()),n&2){let e=l();a(),s(e.f.email.errors.required?1:-1),a(),s(e.f.email.errors.email?2:-1)}}function Oe(n,t){if(n&1){let e=_();r(0,"div",9)(1,"div",12)(2,"input",13),g("change",function(d){C(e);let y=l();return v(y.onCheckChange(d))}),o(),r(3,"div",14)(4,"div")(5,"label",15)(6,"h6",16),c(7),o()()(),r(8,"div")(9,"label",15),c(10),o()()()()()}if(n&2){let e=t.$implicit,i=t.$index;a(2),u("id",b(e+i))("value",e.value)("checked",e.checked),a(3),u("for",b(e+i)),a(2),f(e.title),a(2),u("for",b(e+i)),a(),f(e.desc)}}var I=class n{constructor(t){this.formBuilder=t;this.submitted=!1;this.formSubmit=new D}ngOnInit(){this.contactEmailForm=this.formBuilder.group({firstName:["",T.required],lastName:["",T.required],email:["",[T.email,T.required]],preferences:new fe(this.preferenceOptions.map(t=>new z(t.value)))})}
1submit(){this.submitted=!0,!this.contactEmailForm.invalid&&this.formSubmit.emit(this.contactEmailForm)}get f(){return this.contactEmailForm.controls}onCheckChange(t){let e=this.contactEmailForm.get("preferences");if(t.target.checked)e.push(new z(t.target.value));else{let i=0;e.controls.forEach(d=>{if(d.value===t.target.value){e.removeAt(i);return}i++})}}static{this.\u0275fac=function(e){return new(e||n)(p(_e))}}static{this.\u0275cmp=h({type:n,selectors:[["app-contact-email-form"]],inputs:{preferenceOptions:"preferenceOptions"},outputs:{formSubmit:"formSubmit"},decls:23,vars:4,consts:[["name","form",3,"ngSubmit","formGroup"],[1,"form-group","mx-4"],["for","firstName"],["id","firstName","type","text","name","firstName","placeholder","First Name *","formControlName","firstName",1,"form-control","form-control-sm"],[1,"invalid-feedback","animated","fade-in"],["for","lastName"],["id","lastName","type","text","name","lastName","placeholder","Last Name *","formControlName","lastName",1,"form-control","form-control-sm"],["for","email"],["id","email","type","email","name","email","placeholder","Email *","formControlName","email",1,"form-control","form-control-sm"],[1,"mx-4"],[1,"card-headerl"],["type","submit","aria-label","submit form",1,"btn","btn-dark"],[1,"form-check"],["type","checkbox",1,"form-check-input",3,"change","id","value","checked"],[1,"d-flex","flex-column","ml-3"],[3,"for"],[1,"mb-0"]],template:function(e,i){e&1&&(r(0,"form",0),g("ngSubmit",function(){return i.submit()}),r(1,"div",1)(2,"label",2),c(3,"First Name"),o(),x(4,"input",3),m(5,Ie,2,1,"div",4),o(),r(6,"div",1)(7,"label",5),c(8,"Last Name"),o(),x(9,"input",6),m(10,ke,2,1,"div",4),o(),r(11,"div",1)(12,"label",7),c(13,"Email"),o(),x(14,"input",8),m(15,Te,3,2,"div",4),o(),r(16,"div",9)(17,"h5",10),c(18,"Which emails would you like to receive"),o(),P(19,Oe,11,10,"div",9,Se),o(),r(21,"button",11),c(22," Subscribe "),o()()),e&2&&(u("formGroup",i.contactEmailForm),a(5),s((i.submitted||!i.f.firstName.pristine)&&i.f.firstName.invalid?5:-1),a(5),s((i.submitted||!i.f.lastName.pristine)&&i.f.lastName.invalid?10:-1),a(5),s((i.submitted||!i.f.email.pristine)&&i.f.email.invalid?15:-1),a(4),V(i.preferenceOptions))},dependencies:[S,ue,le,U,de,ve,Ce],encapsulation:2})}};function Ne(n,t){if(n&1){let e=_();r(0,"app-contact-email-form",10),g("formSubmit",function(d){C(e);let y=l(2);return v(y.handleForm(d))}),o()}if(n&2){let e=l(2);u("preferenceOptions",e.preferenceOptions)}}function Pe(n,t){if(n&1&&(r(0,"div",9),c(1),o()),n&2){let e=l(2);a(),f(e.errorMsg)}}function Ve(n,t){if(n&1&&(r(0,"h3",4),c(1,"Sign Up for Email Updates"),o(),r(2,"div",5)(3,"h5",6),c(4,"Enter your contact details below"),o(),r(5,"div",7),m(6,Ne,1,1,"app-contact-email-form",8),m(7,Pe,2,1,"div",9),o()()),n&2){let e=l();a(6),s(!e.submitted||e.submitted&&!e.errorMsg?6:-1),a(),s(e.errorMsg?7:-1)}}function Re(n,t){n&1&&(r(0,"div",3)(1,"h3",6),c(2,"Success!"),o(),r(3,"div",7)(4,"h5"),c(5,"You have successfully signed up to Ausmed updates."),o(),r(6,"p"),c(7,"Please check your email inbox to validate your email."),o()()())}var k=class n{constructor(t,e){this.contactService=t;this.analyticsService=e;this.submitted=!1;this.errorMsg="";this.userID="";this.preferenceOptions=[];this.preferenceOptions=this.contactService.getPreferenceOptions().map(i=>(i.checked=!0,i))}ngOnInit(){}handleForm(t){let e=t.getRawValue();this.contactService.createContact(e).subscribe(i=>{this.submitted=!0,this.analyticsService.identify(i.userID,{})},i=>{i.error.message?this.errorMsg=i.error.message:this.errorMsg="We're sorry, something's not right at our end. Please try again later."})}static{this.\u0275fac=function(e){return new(e||n)(p(E),p(j))}}static{this.\u0275cmp=h({type:n,selectors:[["app-contact-management"]],decls:5,vars:2,consts:[[1,"page-section"],[1,"row","justify-content-center"],[1,"col-lg-6","col-12"],[1,"card"],[1,"mt-7","mb-4"],[1,"card","p-4"],[1,"secondary-header","mx-4"],[1,"card-body"],[3,"preferenceOptions"],[1,"invalid-feedback"],[3,"formSubmit","preferenceOptions"]],template:function(e,i){e&1&&(r(0,"section",0)(1,"div",1)(2,"div",2),m(3,Ve,8,2),m(4,Re,8,0,"div",3),o()()()),e&2&&(a(3),s(i.submitted?-1:3),a(),s(i.submitted?4:-1))},dependencies:[I],styles:[".secondary-header[_ngcontent-%COMP%]{padding:1rem 0rem;border-bottom:1px solid #EDEFF2}"]})}};var W=class n{constructor(){}ngOnInit(){}static{this.\u0275fac=function(e){return new(e||n)}}static{this.\u0275cmp=h({type:n,selectors:[["app-contact-management"]],decls:3,vars:0,consts:[[1,"landing-box"],[1,"container"]],template:function(e,i){e&1&&(r(0,"div",0)(1,"div",1),x(2,"router-outlet"),o()())},dependencies:[re],encapsulation:2})}};var je=(n,t)=>t.value;function Ue(n,t){if(n&1){let e=_();r(0,"div",6)(1,"div",9)(2,"input",10),ie("ngModelChange",function(d){let y=C(e).$implicit;return ne(y.checked,d)||(y.checked=d),v(d)}),o(),r(3,"div")(4,"label",11)(5,"h6"),c(6),o()()(),r(7,"div")(8,"label",11),c(9),o()()()()}if(n&2){let e=t.$implicit,i=t.$index;a(2),u("id",b(e+i))("name",b(e+i)),te("ngModel",e.checked),a(2),u("for",b(e+i)),a(2),f(e.title),a(2),u("for",b(e+i)),a(),f(e.desc)}}function Ge(n,t){if(n&1){let e=_();r(0,"p"),c(1),o(),r(2,"div",0)(3,"h5",5),c(4,"Select which emails you would like to receive"),o(),P(5,Ue,10,11,"div",6,je),r(7,"div",7)(8,"a",8),g("click",function(){C(e);let d=l();
1return v(d.toggleContactStatus(!1))}),c(9,"Unsubscribe from all email communications"),o()()()}if(n&2){let e=l();a(),ee("",e.contact.justVerified?"We just verified your":"Your"," email: ",e.contact.email),a(4),V(e.preferenceOptions)}}function Le(n,t){if(n&1){let e=_();r(0,"div",0)(1,"div",6)(2,"h5"),c(3,"You have successfully unsubscribed from all email communications."),o(),r(4,"p"),c(5,"If this was a mistake, you can click below to re-subscribe."),o(),r(6,"a",12),g("click",function(){C(e);let d=l();return v(d.toggleContactStatus(!0))}),c(7,"Re-subscribe to email"),o()()()}}function We(n,t){if(n&1&&(r(0,"div",2),c(1),o()),n&2){let e=l();a(),f(e.successMsg)}}function qe(n,t){if(n&1&&(r(0,"div",3),c(1),o()),n&2){let e=l();a(),f(e.errorMsg)}}function $e(n,t){if(n&1){let e=_();r(0,"button",13),g("click",function(){C(e);let d=l();return v(d.savePreferences())}),c(1,"Save preferences"),o()}}var F=class n{constructor(t,e,i){this.route=t;this.router=e;this.contactService=i;this.contactUpdated=new D;this.successMsg="";this.errorMsg="";this.preferenceOptions=[];this.preferenceOptions=this.contactService.getPreferenceOptions()}ngOnInit(){}ngOnChanges(t){this.contact&&this._processOptions()}savePreferences(){this.successMsg="",this.errorMsg="";let t=Object.assign({},this.contact);t.preferences=this.preferenceOptions.filter(e=>e.checked).map(e=>e.value),t.emailToken=localStorage.getItem("emailToken"),this.contactService.updateContact(t).subscribe(e=>{this.successMsg="Update Successful!",this.contact.preferences=e.preferences},e=>{e.error.message?this.errorMsg=e.error.message:this.errorMsg="We're sorry, something's not right at our end. Please try again later."})}toggleContactStatus(t){this.errorMsg="";let e=Object.assign({},this.contact);e.isActive=t,e.emailToken=localStorage.getItem("emailToken"),this.contactService.updateContact(e).subscribe(i=>{this.contact=i,this._processOptions()},i=>{i.error.message?this.errorMsg=i.error.message:this.errorMsg="We're sorry, something's not right at our end. Please try again later."})}_processOptions(){this.contact.preferences&&this.preferenceOptions.forEach(t=>{t.checked=this.contact.preferences.includes(t.value)})}static{this.\u0275fac=function(e){return new(e||n)(p(R),p(A),p(E))}}static{this.\u0275cmp=h({type:n,selectors:[["app-contact-preference-detail"]],inputs:{contact:"contact"},outputs:{contactUpdated:"contactUpdated"},features:[Z],decls:6,vars:5,consts:[[1,"card"],[1,"my-1"],[1,"text-success","animated","fadeIn"],[1,"invalid-feedback","animated","fadeIn"],["type","button",1,"btn","btn-dark","my-1"],[1,"card-header"],[1,"p-4"],[1,"underline-button","p-4"],["href","javascript:void(0)",3,"click"],[1,"form-check"],["type","checkbox",1,"form-check-input",3,"ngModelChange","id","name","ngModel"],[3,"for"],["href","javascript:void(0)",1,"underline-button",3,"click"],["type","button",1,"btn","btn-dark","my-1",3,"click"]],template:function(e,i){e&1&&(m(0,Ge,10,2),m(1,Le,8,0,"div",0),r(2,"div",1),m(3,We,2,1,"div",2),m(4,qe,2,1,"div",3),m(5,$e,2,0,"button",4),o()),e&2&&(s(i.contact.isActive?0:-1),a(),s(i.contact!=null&&i.contact.isActive?-1:1),a(2),s(i.successMsg?3:-1),a(),s(i.errorMsg?4:-1),a(),s(i.contact!=null&&i.contact.isActive?5:-1))},dependencies:[S,se,U,G,pe],styles:[".underline-button[_ngcontent-%COMP%]{text-decoration:underline}"]})}};function Be(n,t){if(n&1){let e=_();r(0,"app-contact-preference-detail",4),g("contactUpdated",function(d){C(e);let y=l();return v(y.fetchNewContact(d))}),o()}if(n&2){let e=l();u("contact",e.contact)}}function Ye(n,t){if(n&1&&(r(0,"div",8),c(1),o()),n&2){let e=l(2);a(),f(e.successMsg)}}function ze(n,t){if(n&1&&(r(0,"div",9),c(1),o()),n&2){let e=l(2);a(),f(e.errorMsg)}}function He(n,t){if(n&1){let e=_();r(0,"div",3)(1,"div",5)(2,"h4"),c(3,"We couldn't verify your identity."),o(),r(4,"p"),c(5,"To solve this problem, we can re-send a verification link to your email account."),o(),r(6,"div",6)(7,"button",7),g("click",function(){C(e);let d=l();return v(d.sendVerificationEmail())}),c(8," Re-send verification email "),o(),m(9,Ye,2,1,"div",8),m(10,ze,2,1,"div",9),o()()()}if(n&2){let e=l();a(7),u("disabled",e.counting),a(2),s(e.successMsg?9:-1),a(),s(e.errorMsg?10:-1)}}var w=class n{constructor(t,e,i,d,y,Ke,Qe){this.route=t;this.router=e;this.auth=i;this.analyticsService=d;this.userService=y;this.contactService=Ke;this.injector=Qe;this.contactVerified=!1;this.successMsg="";this.errorMsg="";this.isInvalid=!1;this.counting=!1;this.count=10}ngOnInit(){this.contactVerified=!1,this.errorMsg="",this.route.queryParams.pipe(B(t=>t.userID&&t.emailToken?(this.userID=t.userID,this.emailToken=t.emailToken,this.contactService.verifyContactEmail(this.userID,this.emailToken)):$(null)),B(t=>{if(t&&t.isVerified)return this.contact=t,this.contactVerified=!0,localStorage.setItem("emailToken",this.emailToken),this.auth.isAuthenticated()?this.userService.fetchCachedUser():(this.analyticsService.identify(this.userID,{}),$(null))})).subscribe({next:t=>{t&&t.userID===this.userID&&this.router.navigate(["profile-setting/email-preference"])},error:t=>{t.error&&(t.error.errorCode==="contact.email.token.not.match"||t.error.errorCode==="contact.email.token.invalid"||t.error.errorCode==="contact.email.update.not.existed.contact")?this.isInvalid=!0:ae(this.injector)&&(alert("We're sorry, something's not right at our end. Please try again later."),this.router.navigate(["contact-management/registration"]))}})}sendVerificationEmail(){this.userID&&(this.successMsg="",this.errorMsg="",this.contactService.sendContactEmailTokenEmail(this.userID).subscribe(t=>{this.successMsg="Email successfully sent, please check your inbox.",this.startCountDown()},t=>{t.error.message?this.errorMsg=t.error.message:this.errorMsg="We're sorry, something's not right at our end. Please try again later."}))}startCountDown(){this.counting=!0,this.counter$=J(0,1e3).pipe(K(this.count),H(()=>--this.count),Q(()=>{this.count===0&&(this.counting=!1,this.count=10)})),this.counter$.subscribe()}fetchNewContact(t){}static{this.\u0275fac=function(e){return new(e||n)(p(R),p(A),p(ce),p(j),p(me),p(E),p(X))}}static{this.\u0275cmp=h({type:n,selectors:[["app-contact-preference"]],decls:5,vars:2,consts:[[1,"mt-7"],[1,"page-header-title"],[3,"contact"],[1,"card"],[3,"contactUpdated","contact"],[1,"card-body","text-center"],[1,"mt-6"],["type","button",1,"btn","btn-outline-primary",3,"click","disabled"],[1,"text-success","animated","fadeIn","py-4"],[1,"invalid-feedback","animated","fadeIn","py-4"]],template:function(e,i){e&1&&(r(0,"div",0)(1,"h1",1),c(2,"Preference Centre"),o()(),m(3,Be,1,1,"app-contact-preference-detail",2),m(4,He,11,3,"div",3)),e&2&&(a(3),s(i.contactVerified?3:-1),a(),s(i.isInvalid?4:-1))},dependencies:[F],encapsulation:2})}};var Je=[{path:"",component:W,children:[{path:"registration",component:k,canActivate:[he],runGuardsAndResolvers:"always"},{path:"preference",component:w}]}],q=class n{static{this.\u0275fac=function(e){return new(e||n)}}static{this.\u0275mod=N({type:n})}static{this.\u0275inj=O({imports:[Y.forChild(Je),Y]})}};var be=class n{static{this.\u0275fac=function(e){return new(e||n)}}static{this.\u0275mod=N({type:n})}static{this.\u0275inj=O({imports:[oe,q,ge,S,G,I,F,k,w]})}};export{be as ContactManagementModule};
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.