"use strict";(self.webpackChunkinitial_setup_wizard=self.webpackChunkinitial_setup_wizard||[]).push([[330],{8330:(w,f,o)=>{o.r(f),o.d(f,{ServerSetupModule:()=>E});var p=o(177),C=o(6381),u=o(8280),d=o(7410),c=o(949),k=o(980),v=o(9172),M=o(6354);const S=t=>{const{controls:{ns1:i,ns2:n}}=t;if((i.value||n.value)&&(!i.value||!n.value)&&(i.value||n.value))return{both_ns:!0}},h=t=>{if(t.value?.trim())return d.md.fqdn()(t)},P=t=>{if(t.value?.trim())return d.sr.validateEmail()(t)};var x=o(8793),b=o(4572),e=o(3953),g=o(4355),a=o(4341);function y(t,i){if(1&t&&(e.j41(0,"div",19),e.nrm(1,"i",20),e.EFF(2),e.k0s()),2&t){const n=e.XpG();e.R7$(2),e.SpI(" ",n.locale.maketext("The email must contain a username and a domain.")," ")}}function O(t,i){if(1&t&&(e.j41(0,"div",19),e.nrm(1,"i",20)(2,"span",21),e.k0s()),2&t){const n=e.XpG();e.R7$(2),e.Y8G("innerHTML",n.getError(n.form.controls.ns1).message,e.npT)}}function F(t,i){if(1&t&&(e.j41(0,"div",19),e.nrm(1,"i",20)(2,"span",21),e.k0s()),2&t){const n=e.XpG();e.R7$(2),e.Y8G("innerHTML",n.getError(n.form.controls.ns2).message,e.npT)}}function R(t,i){if(1&t&&(e.j41(0,"div",19),e.nrm(1,"i",20)(2,"span",21),e.k0s()),2&t){const n=e.XpG();e.R7$(2),e.Y8G("innerHTML",n.locale.maketext("You must either specify [output,strong,both] nameservers, or specify none to configure your nameservers later."),e.npT)}}function $(t,i){if(1&t&&(e.j41(0,"div",22),e.nrm(1,"i",23),e.j41(2,"div"),e.nrm(3,"span",21)(4,"br"),e.j41(5,"a",24),e.EFF(6),e.k0s()()()),2&t){const n=e.XpG();e.R7$(3),e.Y8G("innerHTML",n.ns_warning,e.npT),e.R7$(3),e.SpI(" ",n.locale.maketext("Learn More")," ")}}let j=(()=>{class t extends u.pn{next(){if(this.loading||this.form.invalid)return;this.loading=!0;var n=this.page.email!==this.form.get("email").value,s=[this.form.get("ns1").value,this.form.get("ns2").value].some(((l,m)=>l!==this.page.nameservers[m]));if(!n&&!s)return void this.exit();const r=[];n&&r.push(this.whmapi.post(new c.m(c.R.JsonApi,{method:"update_contact_email",arguments:[{name:"contact_email",value:this.form.get("email").value}]}))),s&&r.push(this.whmapi.post(new c.m(c.R.JsonApi,{method:"update_nameservers_config",arguments:[{name:"nameserver",value:this.form.get("ns1").value},{name:"nameserver2",value:this.form.get("ns2").value}]}))),(0,x.x)(...r).pipe((0,k.j)((()=>this.loading=!1))).subscribe((()=>this.exit()))}exit(){this.window.location.href=u.GH}getError(n){if(Object.keys(n.errors).length)return n.errors[Object.keys(n.errors)[0]]}cancel(){this.exit()}constructor(n,s,r,l,m){super(n),this.locale=n,this.page=s,this.whmapi=r,this.window=l,this.continueLabel=this.locale.maketext("Finish"),this.cancelLabel=this.locale.maketext("Skip"),this.canContinue=!0,this.loading=!1,d.uv.locale=n,this.form=m.group({ns1:m.control(this.page.nameservers[0],[h]),ns2:m.control(this.page.nameservers[1],[h]),email:m.control(this.page.email,[P])},{validators:[S]}),this.suitable_ns$=(0,b.z)([this.form.controls.ns1.valueChanges.pipe((0,v.Z)(this.form.controls.ns1.value)),this.form.controls.ns2.valueChanges.pipe((0,v.Z)(this.form.controls.ns2.value))]).pipe((0,M.T)((I=>I.every((_=>!new RegExp(`.${this.page.auto_domain_for_host}$`).test(_)))))),this.ns_warning=this.locale.maketext("Default nameservers of the type [asis,_1] are not compatible with [asis,_2] domain registrations.",`<code>.${this.page.auto_domain_for_host}</code>`,"<code>.com</code>")}static#e=this.ɵfac=function(s){return new(s||t)(e.rXU(C.h),e.rXU(u.KL),e.rXU(g.gB),e.rXU(Window),e.rXU(a.ze))};static#t=this.ɵcmp=e.VBU({type:t,selectors:[["isw-server-setup"]],features:[e.Vt3],decls:38,vars:20,consts:[[1,"initial-setup-content-container"],[1,"form","needs-validation",3,"ngSubmit","formGroup"],[1,"form-group","mb-5"],["for","email",1,"form-label"],[1,"optional"],["href","https://go.cpanel.net/datapolicy","target","privacyPolicy","rel","noopener noreferrer","id","privacy-policy-link",1,"external-link","pull-right"],[1,"help-text"],["formControlName","email","id","email","type","email",1,"form-control",3,"placeholder"],["class","invalid-feedback d-flex",4,"ngIf"],["for","ns1",1,"form-label"],["href","https://go.cpanel.net/PrivateNameservers","target","nameserversDocumentation","rel","noopener noreferrer","id","nameservers-documentation-link",1,"external-link","pull-right"],[1,"input-group","flex-nowrap","mb-2"],["formControlName","ns1","type","text","id","ns1",1,"form-control",3,"placeholder"],["id","reset-ns1-button","type","button",1,"btn","btn-outline-primary",3,"click"],["aria-hidden","true",1,"ri-arrow-go-back-line"],["formControlName","ns2","type","text","id","ns2",1,"form-control",3,"placeholder"],["id","reset-ns2-button","type","button",1,"btn","btn-outline-primary",3,"click"],["id","warning-ns","class","alert alert-warning d-flex",4,"ngIf"],["type","submit",1,"visually-hidden"],[1,"invalid-feedback","d-flex"],["aria-hidden","true",1,"ri-error-warning-line"],[3,"innerHTML"],["id","warning-ns",1,"alert","alert-warning","d-flex"],[1,"ri-error-warning-line","alert-icon"],["href","https://go.cpanel.net/PrivateNameservers","target","nameserversDocumentation","rel","noopener noreferrer","id","nameservers-warning-link",1,"external-link"]],template:function(s,r){1&s&&(e.j41(0,"div",0)(1,"form",1),e.bIt("ngSubmit",(function(){return r.next()})),e.j41(2,"div",2)(3,"label",3),e.EFF(4),e.j41(5,"span",4),e.EFF(6,"(optional)"),e.k0s()(),e.j41(7,"a",5),e.EFF(8),e.k0s(),e.j41(9,"span",6),e.EFF(10),e.k0s(),e.nrm(11,"input",7),e.DNE(12,y,3,1,"div",8),e.k0s(),e.j41(13,"div",2)(14,"label",9),e.EFF(15),e.j41(16,"span",4),e.EFF(17,"(optional)"),e.k0s()(),e.j41(18,"a",10),e.EFF(19),e.k0s(),e.j41(20,"span",6),e.EFF(21),e.k0s(),e.j41(22,"div",11),e.nrm(23,"input",12),e.j41(24,"button",13),e.bIt("click",(function(){return r.form.controls.ns1.reset(r.page.nameservers[0])})),e.nrm(25,"i",14),e.EFF(26),e.k0s()(),e.DNE(27,O,3,1,"div",8),e.j41(28,"div",11),e.nrm(29,"input",15),e.j41(30,"button",16),e.bIt("click",(function(){return r.form.controls.ns2.reset(r.page.nameservers[1])})),e.nrm(31,"i",14),e.EFF(32),e.k0s()(),e.DNE(33,F,3,1,"div",8)(34,R,3,1,"div",8)(35,$,7,2,"div",17),e.nI1(36,"async"),e.k0s(),e.nrm(37,"button",18),e.k0s()()),2&s&&(e.R7$(),e.Y8G("formGroup",r.form),e.R7$(3),e.SpI("",r.locale.maketext("Email Address")," "),e.R7$(4),e.SpI(" ",r.locale.maketext("Privacy Policy")," "),e.R7$(2),e.JRh(r.locale.maketext("Your server will send status and error notifications to this address.")),e.R7$(),e.Y8G("placeholder",r.locale.maketext("Your contact email address. For example, [asis,user@example.com].")),e.R7$(),e.Y8G("ngIf",r.form.controls.email.invalid),e.R7$(3),e.SpI("",r.locale.maketext("Nameservers")," "),e.R7$(4),e.SpI(" ",r.locale.maketext("Learn More")," "),e.R7$(2),e.Lme(" ",r.locale.maketext("Your server requires nameservers before you can create [asis,cPanel] or reseller accounts.")," ",r.locale.maketext("Nameservers convert domain names into server IP addresses so that visitors can access your websites.")," "),e.R7$(2),e.Y8G("placeholder",r.locale.maketext("Your primary nameserver. For example, [asis,ns1.example.com].")),e.R7$(3),e.SpI(" ",r.locale.maketext("Reset")," "),e.R7$(),e.Y8G("ngIf",r.form.controls.ns1.invalid),e.R7$(2),e.Y8G("placeholder",r.locale.maketext("Your secondary nameserver. For example, [asis,ns2.example.com].")),e.R7$(3),e.SpI(" ",r.locale.maketext("Reset")," "),e.R7$(),e.Y8G("ngIf",r.form.controls.ns2.invalid),e.R7$(),e.Y8G("ngIf",null==r.form.errors?null:r.form.errors.both_ns),e.R7$(),e.Y8G("ngIf",!e.bMT(36,18,r.suitable_ns$)))},dependencies:[p.bT,a.qT,a.me,a.BC,a.cb,a.j4,a.JD,p.Jj],styles:[".form[_ngcontent-%COMP%]{display:inline-block;width:400px;max-width:100%}html[dir=ltr][_ngcontent-%COMP%] .form[_ngcontent-%COMP%], [dir=ltr][_ngcontent-%COMP%] .form[_ngcontent-%COMP%], [dir=ltr][_nghost-%COMP%] .form[_ngcontent-%COMP%], html[dir=ltr][_nghost-%COMP%] .form[_ngcontent-%COMP%], html[dir=ltr] [_nghost-%COMP%] .form[_ngcontent-%COMP%], [dir=ltr][_nghost-%COMP%] .form[_ngcontent-%COMP%], [dir=ltr] [_nghost-%COMP%] .form[_ngcontent-%COMP%]{text-align:left}html[dir=rtl][_ngcontent-%COMP%] .form[_ngcontent-%COMP%], [dir=rtl][_ngcontent-%COMP%] .form[_ngcontent-%COMP%], [dir=rtl][_nghost-%COMP%] .form[_ngcontent-%COMP%], html[dir=rtl][_nghost-%COMP%] .form[_ngcontent-%COMP%], html[dir=rtl] [_nghost-%COMP%] .form[_ngcontent-%COMP%], [dir=rtl][_nghost-%COMP%] .form[_ngcontent-%COMP%], [dir=rtl] [_nghost-%COMP%] .form[_ngcontent-%COMP%]{text-align:right}.invalid-feedback[_ngcontent-%COMP%]{display:block}"]})}return t})();var T=o(7901);const G=[{path:"",component:j,data:{animation:"ServerSetup"}}];let E=(()=>{class t{static#e=this.ɵfac=function(s){return new(s||t)};static#t=this.ɵmod=e.$C({type:t});static#n=this.ɵinj=e.G2t({providers:[g.gB],imports:[p.MD,a.X1,T.iI.forChild(G)]})}return t})()}}]);