UNPKG

p3x-redis-ui-material

Version:

💿 P3X Redis UI triple frontend — Angular + React/MUI + Vue/Vuetify with 54 languages, 7 themes, Socket.IO, desktop notifications, and full feature parity

1 lines • 27.5 kB
import{a as F,d as L,i as E}from"./main-OCJB5534.js";import{Bi as ym,Cn as _T,Di as wf,Dn as _y,Dr as lo,Dt as Qe$1,F as HY,Gn as dT,Gt as UY,In as by,It as Sn,Kr as oT,Lt as Sy,P as HT,Pi as xf,Pn as bm,Qr as qC,Rn as co,T as Ee,Xt as Uy,_ as Cf,ei as qT,er as gT,gt as O,ii as rT,in as Wa,k as G0,mn as YQ,pt as Nf,rn as WC,s as $y,t as $Y,ur as iT,vr as jy,w as Eb,wr as lc}from"./chunk-CHqDEyfr.js";import"./chunk-CPClUPec.js";import"./chunk-BRxf0Wo1.js";import{n as x,t as Q}from"./chunk-CyniViPG.js";import{n as bi,t as _t$1}from"./chunk-DjVJBOYc.js";import"./chunk-CWEwaFv9.js";import{a as jt,i as Vt,o as z,r as Ue,s as zt,t as Bt}from"./chunk-CyaMV1f5.js";import{t as It}from"./chunk-BM0xjj91.js";import{C as xn,a as He,c as Rn,f as an,g as kn,h as jt$1,i as Gn,o as Jt,s as Pt,x as st$1,y as on}from"./chunk-B_FU7ynV.js";import{a as se,n as ae,r as gt$1,t as Qt}from"./chunk-CNSP-oVC.js";import{n as wt$1,r as yt$1}from"./chunk-CGgWGJ3E.js";import{t as Q$1}from"./chunk-D56BNEWf.js";import"./chunk-CFyh5uM7.js";import{d as qe,i as Qt$1,l as gt$2,o as U,p as xt$1}from"./chunk-CLjqwtZV.js";import{i as ze,n as Q$2,r as ye,t as Oe$1}from"./chunk-BYtjyP-K.js";import"./chunk-DxgAwx0L.js";import"./chunk-CaLi_qYn2.js";import{a as di,c as mi,i as bt,l as q}from"./chunk-CMQBeVtl.js";import{r as Pt$1}from"./chunk-BGkKuku6.js";import{n as we,t as te}from"./chunk-C3kuP7Oy.js";import{t as u}from"./chunk-DRjhgUxm2.js";var Oe=[`p3xrConnectionForm`];var Ge=(l,_)=>_.id;function Qe(l,_){if(l&1&&HT(0),l&2)Nf(` `,gT().strings().label?.connectiondView,` `)}function Ze(l,_){if(l&1&&HT(0),l&2)Nf(` `,gT().strings().label?.connectiondAdd,` `)}function Je(l,_){if(l&1&&HT(0),l&2)Nf(` `,gT().strings().label?.connectiondEdit,` `)}function Xe(l,_){if(l&1){let t=dT();Wa(0,`mat-form-field`,24)(1,`mat-label`),HT(2),wf(),Wa(3,`input`,35),$y(`ngModelChange`,function(e){ym(t);let o=gT();return qT(o.model.id,e)||(o.model.id=e),bm(e)}),wf(),WC(),wf(),Wa(4,`div`,36),HT(5),wf()}if(l&2){let t=gT();Sn(2),jy(t.strings().label?.id?.id),Sn(),Uy(`ngModel`,t.model.id),qC(),Sn(2),Nf(` `,t.strings().label?.id?.info,` `)}}function Ye(l,_){if(l&1&&(Wa(0,`mat-error`),HT(1),wf()),l&2){let t=gT();Sn(),jy(t.strings().form?.error?.required)}}function $e(l,_){if(l&1&&(Wa(0,`mat-option`,11),HT(1),wf()),l&2){let t=_.$implicit;by(`value`,t),Sn(),jy(t)}}function et(l,_){if(l&1&&(Wa(0,`mat-error`),HT(1),wf()),l&2){let t=gT(2);Sn(),jy(t.strings().form?.error?.required)}}function tt(l,_){if(l&1&&(Wa(0,`mat-error`),HT(1),wf()),l&2){let t=gT(2);Sn(),jy(t.strings().form?.error?.required)}}function nt(l,_){if(l&1&&(Wa(0,`mat-error`),HT(1),wf()),l&2){let t=gT(2);Sn(),jy(t.strings().form?.error?.required)}}function it(l,_){if(l&1){let t=dT();Wa(0,`button`,43),Sy(`click`,function(){ym(t);let e=gT(2);return bm(e.sshPasswordVisible=!e.sshPasswordVisible)}),Wa(1,`mat-icon`),HT(2),wf()()}if(l&2){let t=gT(2);Sn(2),jy(t.sshPasswordVisible?`visibility_off`:`visibility`)}}function ot(l,_){if(l&1){let t=dT();Wa(0,`fieldset`)(1,`legend`),HT(2,`SSH`),wf(),Wa(3,`mat-form-field`,8)(4,`mat-label`),HT(5),wf(),Wa(6,`input`,37),$y(`ngModelChange`,function(e){ym(t);let o=gT();return qT(o.model.sshHost,e)||(o.model.sshHost=e),bm(e)}),wf(),WC(),co(7,et,2,1,`mat-error`),wf(),Wa(8,`mat-form-field`,8)(9,`mat-label`),HT(10),wf(),Wa(11,`input`,38),$y(`ngModelChange`,function(e){ym(t);let o=gT();return qT(o.model.sshPort,e)||(o.model.sshPort=e),bm(e)}),wf(),WC(),co(12,tt,2,1,`mat-error`),wf(),Wa(13,`mat-form-field`,8)(14,`mat-label`),HT(15),wf(),Wa(16,`input`,39),$y(`ngModelChange`,function(e){ym(t);let o=gT();return qT(o.model.sshUsername,e)||(o.model.sshUsername=e),bm(e)}),wf(),WC(),co(17,nt,2,1,`mat-error`),wf(),Wa(18,`mat-form-field`,24)(19,`mat-label`),HT(20),wf(),Wa(21,`input`,40),$y(`ngModelChange`,function(e){ym(t);let o=gT();return qT(o.model.sshPassword,e)||(o.model.sshPassword=e),bm(e)}),wf(),WC(),co(22,it,3,1,`button`,41),wf(),Wa(23,`div`,36),HT(24),wf(),Wa(25,`mat-form-field`,24)(26,`mat-label`),HT(27),wf(),Wa(28,`textarea`,42),$y(`ngModelChange`,function(e){ym(t);let o=gT();return qT(o.model.sshPrivateKey,e)||(o.model.sshPrivateKey=e),bm(e)}),wf(),WC(),wf(),Wa(29,`div`,36),HT(30),wf(),_y(31,`br`),wf()}if(l&2){let t=gT(),r=_T(1);Sn(5),jy(t.strings().label?.ssh?.sshHost),Sn(),Uy(`ngModel`,t.model.sshHost),by(`disabled`,t.readonlyConnections),qC(),Sn(),lo(r.controls.sshHost?.hasError(`required`)&&r.controls.sshHost?.touched?7:-1),Sn(3),jy(t.strings().label?.ssh?.sshPort),Sn(),Uy(`ngModel`,t.model.sshPort),by(`disabled`,t.readonlyConnections),qC(),Sn(),lo(r.controls.sshPort?.hasError(`required`)&&r.controls.sshPort?.touched?12:-1),Sn(3),jy(t.strings().label?.ssh?.sshUsername),Sn(),Uy(`ngModel`,t.model.sshUsername),by(`disabled`,t.readonlyConnections),qC(),Sn(),lo(r.controls.sshUsername?.hasError(`required`)&&r.controls.sshUsername?.touched?17:-1),Sn(3),jy(t.strings().label?.ssh?.sshPassword),Sn(),by(`type`,t.sshPasswordVisible?`text`:`password`),Uy(`ngModel`,t.model.sshPassword),by(`disabled`,t.readonlyConnections),qC(),Sn(),lo(t.readonlyConnections?-1:22),Sn(2),Nf(` `,t.strings().label?.passwordSecure,` `),Sn(3),jy(t.strings().label?.ssh?.sshPrivateKey),Sn(),Uy(`ngModel`,t.model.sshPrivateKey),by(`disabled`,t.readonlyConnections),qC(),Sn(2),Nf(` `,t.strings().label?.secureFeature,` `)}}function at(l,_){if(l&1&&(Wa(0,`mat-error`),HT(1),wf()),l&2){let t=gT();Sn(),jy(t.strings().form?.error?.port)}}function rt(l,_){if(l&1&&(Wa(0,`div`,16),HT(1),wf()),l&2){let t=gT();Sn(),Nf(` `,t.strings().label?.aclAuthHint,` `)}}function lt(l,_){if(l&1){let t=dT();Wa(0,`button`,43),Sy(`click`,function(){ym(t);let e=gT(2);return bm(e.passwordVisible=!e.passwordVisible)}),Wa(1,`mat-icon`),HT(2),wf()()}if(l&2){let t=gT(2);Sn(2),jy(t.passwordVisible?`visibility_off`:`visibility`)}}function dt(l,_){if(l&1){let t=dT();Wa(0,`span`)(1,`div`,44),HT(2),wf(),Wa(3,`mat-form-field`,8)(4,`mat-label`),HT(5),wf(),Wa(6,`input`,45),$y(`ngModelChange`,function(e){ym(t);let o=gT();return qT(o.model.username,e)||(o.model.username=e),bm(e)}),wf(),WC(),wf(),Wa(7,`mat-form-field`,24)(8,`mat-label`),HT(9),wf(),Wa(10,`input`,46),$y(`ngModelChange`,function(e){ym(t);let o=gT();return qT(o.model.password,e)||(o.model.password=e),bm(e)}),wf(),WC(),co(11,lt,3,1,`button`,41),wf(),Wa(12,`div`,36),HT(13),wf(),_y(14,`br`),wf()}if(l&2){let t=gT();Sn(2),Nf(` `,t.strings().label?.aclAuthHint,` `),Sn(3),jy(t.strings().form?.connection?.label?.username),Sn(),Uy(`ngModel`,t.model.username),by(`disabled`,t.readonlyConnections),qC(),Sn(3),jy(t.strings().form?.connection?.label?.password),Sn(),by(`type`,t.passwordVisible?`text`:`password`),Uy(`ngModel`,t.model.password),by(`disabled`,t.readonlyConnections),qC(),Sn(),lo(t.readonlyConnections?-1:11),Sn(2),Nf(` `,t.strings().label?.passwordSecure,` `)}}function st(l,_){if(l&1){let t=dT();Wa(0,`div`,47),Sy(`click`,function(){ym(t);return bm(gT().addNode())}),HT(1),Wa(2,`button`,48)(3,`mat-icon`),HT(4,`add`),wf()()()}if(l&2){let t=gT();Sn(),Nf(` `,t.strings().label?.addNode,` `)}}function mt(l,_){if(l&1&&(Wa(0,`mat-error`),HT(1),wf()),l&2){let t=gT(2);Sn(),jy(t.strings().form?.error?.required)}}function ct(l,_){if(l&1){let t=dT();Wa(0,`mat-form-field`,24)(1,`mat-label`),HT(2),wf(),Wa(3,`input`,49),$y(`ngModelChange`,function(e){ym(t);let o=gT();return qT(o.model.sentinelName,e)||(o.model.sentinelName=e),bm(e)}),wf(),WC(),co(4,mt,2,1,`mat-error`),wf()}if(l&2){let t=gT(),r=_T(1);Sn(2),jy(t.strings().label?.sentinel?.name),Sn(),Uy(`ngModel`,t.model.sentinelName),by(`disabled`,t.readonlyConnections),qC(),Sn(),lo(r.controls.sentinelName?.hasError(`required`)&&r.controls.sentinelName?.touched?4:-1)}}function pt(l,_){if(l&1){let t=dT();Wa(0,`div`,50)(1,`button`,57),Sy(`click`,function(e){ym(t);let o=gT().$index;return bm(gT(2).removeNode(e,o))}),Wa(2,`mat-icon`),HT(3,`delete`),wf()(),Wa(4,`button`,58),Sy(`click`,function(){ym(t);let e=gT().$index;return bm(gT(2).addNode(e))}),Wa(5,`mat-icon`),HT(6,`add`),wf()()()}if(l&2){let t=gT(3);Sn(),by(`matTooltip`,t.strings().confirm?.deleteConnectionText),Sn(3),by(`matTooltip`,t.strings().label?.addNode)}}function gt(l,_){if(l&1&&(Wa(0,`mat-form-field`,24)(1,`mat-label`),HT(2),wf(),_y(3,`input`,59),WC(),wf(),Wa(4,`div`,36),HT(5),wf()),l&2){let t=gT(),r=t.$implicit,e=t.$index,o=gT(2);Sn(2),jy(o.strings().label?.id?.nodeId),Sn(),by(`ngModel`,r.id)(`name`,`nodeId`+e),qC(),Sn(2),Nf(` `,o.strings().label?.id?.info,` `)}}function _t(l,_){if(l&1&&(Wa(0,`mat-error`),HT(1),wf()),l&2){let t=gT(3);Sn(),jy(t.strings().form?.error?.port)}}function Ct(l,_){if(l&1&&(Wa(0,`mat-error`),HT(1),wf()),l&2){let t=gT(3);Sn(),jy(t.strings().form?.error?.required)}}function ut(l,_){if(l&1){let t=dT();Wa(0,`button`,43),Sy(`click`,function(){ym(t);let e=gT().$index,o=gT(2);return bm(o.nodePasswordVisible[e]=!o.nodePasswordVisible[e])}),Wa(1,`mat-icon`),HT(2),wf()()}if(l&2){let t=gT().$index,r=gT(2);Sn(2),jy(r.nodePasswordVisible[t]?`visibility_off`:`visibility`)}}function ft(l,_){l&1&&(Wa(0,`div`,55),HT(1,`\xA0`),wf())}function ht(l,_){if(l&1){let t=dT();Wa(0,`fieldset`)(1,`legend`),HT(2),wf(),co(3,pt,7,2,`div`,50),_y(4,`br`),co(5,gt,6,4),Wa(6,`mat-form-field`,8)(7,`mat-label`),HT(8),wf(),Wa(9,`input`,51),$y(`ngModelChange`,function(e){let o=ym(t).$implicit;return qT(o.host,e)||(o.host=e),bm(e)}),wf(),WC(),wf(),Wa(10,`mat-form-field`,8)(11,`mat-label`),HT(12),wf(),Wa(13,`input`,52),$y(`ngModelChange`,function(e){let o=ym(t).$implicit;return qT(o.port,e)||(o.port=e),bm(e)}),wf(),WC(),co(14,_t,2,1,`mat-error`),co(15,Ct,2,1,`mat-error`),wf(),Wa(16,`mat-form-field`,8)(17,`mat-label`),HT(18),wf(),Wa(19,`input`,53),$y(`ngModelChange`,function(e){let o=ym(t).$implicit;return qT(o.username,e)||(o.username=e),bm(e)}),wf(),WC(),wf(),Wa(20,`mat-form-field`,24)(21,`mat-label`),HT(22),wf(),Wa(23,`input`,54),$y(`ngModelChange`,function(e){let o=ym(t).$implicit;return qT(o.password,e)||(o.password=e),bm(e)}),wf(),WC(),co(24,ut,3,1,`button`,41),wf(),Wa(25,`div`,36),HT(26),wf()(),co(27,ft,2,0,`div`,55),_y(28,`div`,56)}if(l&2){let t=_.$implicit,r=_.$index,e=_.$count,o=gT(2),u=_T(1);Sn(2),Nf(`Node `,r+2),Sn(),lo(o.readonlyConnections?-1:3),Sn(2),lo(t.id?5:-1),Sn(3),jy(o.strings().form?.connection?.label?.host),Sn(),by(`name`,`nodeHost`+r),Uy(`ngModel`,t.host),by(`disabled`,o.readonlyConnections),qC(),Sn(3),jy(o.strings().form?.connection?.label?.port),Sn(),by(`name`,`nodePort`+r),Uy(`ngModel`,t.port),by(`disabled`,o.readonlyConnections),qC(),Sn(),lo(u.controls[`nodePort`+r]?.hasError(`min`)||u.controls[`nodePort`+r]?.hasError(`max`)?14:-1),Sn(),lo(u.controls[`nodePort`+r]?.hasError(`required`)&&u.controls[`nodePort`+r]?.touched?15:-1),Sn(3),jy(o.strings().form?.connection?.label?.username),Sn(),by(`name`,`nodeUsername`+r),Uy(`ngModel`,t.username),by(`disabled`,o.readonlyConnections),qC(),Sn(3),jy(o.strings().form?.connection?.label?.password),Sn(),by(`name`,`nodePassword`+r)(`type`,o.nodePasswordVisible[r]?`text`:`password`),Uy(`ngModel`,t.password),by(`disabled`,o.readonlyConnections),qC(),Sn(),lo(o.readonlyConnections?-1:24),Sn(2),Nf(` `,o.strings().label?.passwordSecure,` `),Sn(),lo(r!==e-1?27:-1)}}function xt(l,_){if(l&1&&(Wa(0,`div`),oT(1,ht,29,25,null,null,Ge),wf()),l&2){let t=gT();Sn(),iT(t.model.nodes)}}function yt(l,_){if(l&1){let t=dT();Wa(0,`div`,28)(1,`fieldset`)(2,`legend`),HT(3,`TLS`),wf(),Wa(4,`mat-form-field`,24)(5,`mat-label`),HT(6,`TLS (redis.crt)`),wf(),Wa(7,`textarea`,60),$y(`ngModelChange`,function(e){ym(t);let o=gT();return qT(o.model.tlsCrt,e)||(o.model.tlsCrt=e),bm(e)}),wf(),WC(),wf(),Wa(8,`div`,36),HT(9),wf(),_y(10,`br`),Wa(11,`mat-form-field`,24)(12,`mat-label`),HT(13,`TLS (redis.key)`),wf(),Wa(14,`textarea`,61),$y(`ngModelChange`,function(e){ym(t);let o=gT();return qT(o.model.tlsKey,e)||(o.model.tlsKey=e),bm(e)}),wf(),WC(),wf(),Wa(15,`div`,36),HT(16),wf(),_y(17,`br`),Wa(18,`mat-form-field`,24)(19,`mat-label`),HT(20,`TLS (ca.crt)`),wf(),Wa(21,`textarea`,62),$y(`ngModelChange`,function(e){ym(t);let o=gT();return qT(o.model.tlsCa,e)||(o.model.tlsCa=e),bm(e)}),wf(),WC(),wf(),Wa(22,`div`,36),HT(23),wf(),_y(24,`br`),wf()()}if(l&2){let t=gT();Sn(7),Uy(`ngModel`,t.model.tlsCrt),by(`disabled`,t.readonlyConnections),qC(),Sn(2),Nf(` `,t.strings().label?.tlsSecure,` `),Sn(5),Uy(`ngModel`,t.model.tlsKey),by(`disabled`,t.readonlyConnections),qC(),Sn(2),Nf(` `,t.strings().label?.tlsSecure,` `),Sn(5),Uy(`ngModel`,t.model.tlsCa),by(`disabled`,t.readonlyConnections),qC(),Sn(2),Nf(` `,t.strings().label?.tlsSecure,` `)}}function wt(l,_){if(l&1&&(Wa(0,`button`,34)(1,`mat-icon`,63),HT(2),wf(),HT(3),wf()),l&2){let t=gT();Sn(2),jy(t.options.type===`new`?`add`:`save`),Sn(),Nf(` `,t.options.type===`new`?t.strings().intention?.add:t.strings().intention?.save,` `)}}var dn=(()=>{class l{dialogRef;data;i18n;socketService;commonService;askAuthDialogService;ngZone;state;settings;overlay;formRef;autosizeTextareas;options;model;strings;existingGroups=[];groupEnabled=!1;passwordVisible=!1;sshPasswordVisible=!1;nodePasswordVisible={};onAskAuthChange(){this.model.askAuth&&(this.model.username=``,this.model.password=``)}get readonlyConnections(){return!!this.state.cfg()?.readonlyConnections}constructor(t,r,e,o,u,m,Ne,je,He,Ue){this.dialogRef=t,this.data=r,this.i18n=e,this.socketService=o,this.commonService=u,this.askAuthDialogService=m,this.ngZone=Ne,this.state=je,this.settings=He,this.overlay=Ue,this.strings=this.i18n.strings,this.options=r,this.model=this.initModel(r);let Ke=this.state.connections()?.list||[],L=new Set;for(let D of Ke)D.group&&typeof D.group==`string`&&D.group.trim()&&L.add(D.group.trim());this.existingGroups=[...L].sort(),this.groupEnabled=!!this.model.group?.trim()}onGroupToggle(){this.groupEnabled||(this.model.group=void 0)}ngAfterViewInit(){this.scheduleTextareaResize(),this.autosizeTextareas.changes.subscribe(()=>this.scheduleTextareaResize())}scheduleTextareaResize(){this.ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{requestAnimationFrame(()=>{this.autosizeTextareas?.forEach(t=>t.resizeToFitContent(!0))})})})}initModel(t){let r;t.model!==void 0?(r=structuredClone(t.model),r.password=t.model.id,r.tlsCrt=t.model.id,r.tlsKey=t.model.id,r.tlsCa=t.model.id,r.sshPassword=t.model.id,r.sshPrivateKey=t.model.id):r={name:void 0,host:void 0,port:6379,askAuth:!1,password:void 0,username:void 0,id:void 0,group:void 0,readonly:void 0,tlsWithoutCert:!1,tlsRejectUnauthorized:!1,tlsCrt:void 0,tlsKey:void 0,tlsCa:void 0},r.hasOwnProperty(`ssh`)||(r=F(E({},r),{ssh:!1,sshHost:void 0,sshPort:22,sshUsername:void 0,sshPassword:t.model?.id,sshPrivateKey:t.model?.id})),r.hasOwnProperty(`cluster`)||(r.cluster=!1),r.hasOwnProperty(`sentinel`)||(r.sentinel=!1),r.hasOwnProperty(`nodes`)||(r.nodes=[]);for(let e of r.nodes)e.password=e.id;return r}onClusterChange(){this.model.cluster===!0&&(this.model.sentinel=!1)}onSentinelChange(){this.model.sentinel===!0&&(this.model.cluster=!1)}addNode(t){let r={host:void 0,port:void 0,password:void 0,username:void 0,id:this.settings.generateId()};t===void 0?this.model.nodes.push(r):this.model.nodes.splice(t+1,0,r)}removeNode(t,r){return L(this,null,function*(){try{yield this.commonService.confirm({event:t,message:this.strings().confirm?.deleteConnectionText}),this.model.nodes.splice(r,1),this.commonService.toast({message:this.strings().status?.nodeRemoved})}catch(e){if(e===void 0)return;this.commonService.generalHandleError(e)}})}handleInvalidForm(){return this.formRef&&this.formRef.invalid?(this.commonService.toast({message:this.strings().form?.error?.invalid}),!1):!0}testConnection(t){return L(this,null,function*(){if(this.formRef&&Object.keys(this.formRef.controls).forEach(r=>{this.formRef.controls[r].markAsTouched()}),!!this.handleInvalidForm())try{let r=structuredClone(this.model);if(this.model.askAuth===!0){let o=yield this.askAuthDialogService.show({$event:t});r.username=void 0,r.password=void 0,o.username&&(r.username=o.username),o.password&&(r.password=o.password)}this.overlay.show({message:this.strings().title?.connectingRedis});let e=yield this.socketService.request({action:`connection/test`,payload:{model:r}});console.warn(`response`,e),this.commonService.toast({message:this.strings().status?.redisConnected})}catch(r){this.commonService.generalHandleError(r)}finally{this.overlay.hide()}})}submit(){return L(this,null,function*(){if(this.handleInvalidForm()){this.model.host===void 0&&(this.model.host=`localhost`),this.model.port===void 0&&(this.model.port=6379),this.options.type===`new`&&(this.model.id=this.settings.generateId());for(let t of this.model.nodes)t.host===void 0&&(t.host=`localhost`),t.id===void 0&&(t.id=this.settings.generateId());try{let t=structuredClone(this.model);typeof t.group==`string`&&(t.group=t.group.trim()||void 0),yield this.socketService.request({action:`connection/save`,payload:{model:t}}),this.commonService.toast({message:this.options.type===`new`?this.strings().status?.added:this.strings().status?.saved}),this.dialogRef.close(void 0)}catch(t){this.commonService.generalHandleError(t)}}})}cancel(){this.dialogRef.close(void 0)}static ɵfac=function(r){return new(r||l)(Qe$1(z),Qe$1(Ue),Qe$1(YQ),Qe$1(bi),Qe$1(It),Qe$1(u),Qe$1(O),Qe$1(Q),Qe$1(x),Qe$1(_t$1))};static ɵcmp=Ee({type:l,selectors:[[`p3xr-connection-dialog`]],viewQuery:function(r,e){if(r&1&&lc(Oe,5)(ye,5),r&2){let o;Cf(o=xf())&&(e.formRef=o.first),Cf(o=xf())&&(e.autosizeTextareas=o)}},decls:76,vars:47,consts:[[`p3xrConnectionForm`,`ngForm`],[`groupAuto`,`matAutocomplete`],[`novalidate`,``,3,`ngSubmit`],[1,`p3xr-dialog-toolbar`,`p3xr-connection-dialog-toolbar`,`p3xr-mat-layout-strong`],[`mat-dialog-title`,``,1,`p3xr-dialog-title`],[`mat-icon-button`,``,`type`,`button`,3,`click`],[1,`p3xr-dialog-content`,`p3xr-connection-dialog-content`],[1,`p3xr-padding`],[1,`md-block`],[`matInput`,``,`required`,``,`name`,`name`,3,`ngModelChange`,`ngModel`,`disabled`],[`matInput`,``,`name`,`group`,3,`ngModelChange`,`ngModel`,`matAutocomplete`,`disabled`],[3,`value`],[`name`,`ssh`,2,`margin`,`0`,3,`ngModelChange`,`change`,`ngModel`,`disabled`],[`matInput`,``,`name`,`host`,3,`ngModelChange`,`ngModel`,`disabled`],[`matInput`,``,`name`,`port`,`type`,`number`,`min`,`1`,`max`,`65535`,3,`ngModelChange`,`ngModel`,`disabled`],[`name`,`askAuth`,3,`ngModelChange`,`change`,`ngModel`,`disabled`],[1,`p3xr-md-input-container-bottom-info`,2,`margin-top`,`4px`],[`name`,`readonly`,2,`margin`,`0`,3,`ngModelChange`,`ngModel`,`disabled`],[2,`display`,`flex`,`flex-direction`,`row`,`align-items`,`center`],[`name`,`cluster`,2,`margin`,`0`,3,`ngModelChange`,`change`,`ngModel`,`disabled`],[2,`margin-left`,`15px`],[`name`,`sentinel`,2,`margin`,`0`,3,`ngModelChange`,`change`,`ngModel`,`disabled`],[2,`flex`,`1`],[1,`p3xr-connection-node-add`],[1,`md-block`,`p3xr-md-input-container-no-bottom`],[1,`p3xr-connection-inline-toggles`,`p3xr-connection-tls-toggles`],[`name`,`tlsWithoutCert`,3,`ngModelChange`,`change`,`ngModel`,`disabled`],[`name`,`tlsRejectUnauthorized`,3,`ngModelChange`,`ngModel`,`disabled`],[1,`p3xr-connection-tls-fields`],[1,`p3xr-dialog-actions`,`p3xr-dialog-connection-actions`],[3,`cancel`],[1,`p3xr-mat-common`],[`mat-raised-button`,``,`type`,`button`,1,`btn-primary`,3,`click`],[1,`fas`,`fa-plug`],[`mat-raised-button`,``,`type`,`submit`,1,`btn-primary`],[`matInput`,``,`name`,`id`,`disabled`,``,3,`ngModelChange`,`ngModel`],[1,`p3xr-md-input-container-bottom-info`],[`matInput`,``,`required`,``,`name`,`sshHost`,3,`ngModelChange`,`ngModel`,`disabled`],[`matInput`,``,`required`,``,`name`,`sshPort`,`type`,`number`,`min`,`1`,`max`,`65535`,3,`ngModelChange`,`ngModel`,`disabled`],[`matInput`,``,`required`,``,`name`,`sshUsername`,3,`ngModelChange`,`ngModel`,`disabled`],[`matInput`,``,`name`,`sshPassword`,`autocomplete`,`off`,3,`ngModelChange`,`type`,`ngModel`,`disabled`],[`mat-icon-button`,``,`matSuffix`,``,`type`,`button`],[`matInput`,``,`name`,`sshPrivateKey`,`autocomplete`,`off`,`cdkTextareaAutosize`,``,`cdkAutosizeMinRows`,`1`,`rows`,`1`,3,`ngModelChange`,`ngModel`,`disabled`],[`mat-icon-button`,``,`matSuffix`,``,`type`,`button`,3,`click`],[1,`p3xr-md-input-container-bottom-info`,2,`margin-bottom`,`8px`],[`matInput`,``,`name`,`username`,`type`,`text`,`autocomplete`,`off`,3,`ngModelChange`,`ngModel`,`disabled`],[`matInput`,``,`name`,`password`,`autocomplete`,`off`,3,`ngModelChange`,`type`,`ngModel`,`disabled`],[1,`p3xr-connection-node-add`,3,`click`],[`mat-mini-fab`,``,`type`,`button`,1,`btn-primary`],[`matInput`,``,`required`,``,`name`,`sentinelName`,3,`ngModelChange`,`ngModel`,`disabled`],[1,`p3xr-connection-node-actions`,2,`float`,`right`],[`matInput`,``,3,`ngModelChange`,`name`,`ngModel`,`disabled`],[`matInput`,``,`required`,``,`type`,`number`,`min`,`1`,`max`,`65535`,3,`ngModelChange`,`name`,`ngModel`,`disabled`],[`matInput`,``,`type`,`text`,`autocomplete`,`off`,3,`ngModelChange`,`name`,`ngModel`,`disabled`],[`matInput`,``,`autocomplete`,`off`,3,`ngModelChange`,`name`,`type`,`ngModel`,`disabled`],[2,`margin-bottom`,`16px`],[2,`clear`,`both`],[`mat-mini-fab`,``,`type`,`button`,1,`btn-warn`,3,`click`,`matTooltip`],[`mat-mini-fab`,``,`type`,`button`,1,`btn-primary`,3,`click`,`matTooltip`],[`matInput`,``,`disabled`,``,3,`ngModel`,`name`],[`matInput`,``,`name`,`tlsCrt`,`autocomplete`,`off`,`cdkTextareaAutosize`,``,`cdkAutosizeMinRows`,`1`,`rows`,`1`,3,`ngModelChange`,`ngModel`,`disabled`],[`matInput`,``,`name`,`tlsKey`,`autocomplete`,`off`,`cdkTextareaAutosize`,``,`cdkAutosizeMinRows`,`1`,`rows`,`1`,3,`ngModelChange`,`ngModel`,`disabled`],[`matInput`,``,`name`,`tlsCa`,`autocomplete`,`off`,`cdkTextareaAutosize`,``,`cdkAutosizeMinRows`,`1`,`rows`,`1`,3,`ngModelChange`,`ngModel`,`disabled`],[2,`font-size`,`24px`,`width`,`24px`,`height`,`24px`]],template:function(r,e){if(r&1){let o=dT();Wa(0,`form`,2,0),Sy(`ngSubmit`,function(){return e.submit()}),Wa(2,`mat-toolbar`,3)(3,`span`,4),co(4,Qe,1,1)(5,Ze,1,1)(6,Je,1,1),wf(),Wa(7,`button`,5),Sy(`click`,function(){return e.cancel()}),Wa(8,`mat-icon`),HT(9,`close`),wf()()(),Wa(10,`mat-dialog-content`,6)(11,`div`,7),co(12,Xe,6,3),Wa(13,`mat-form-field`,8)(14,`mat-label`),HT(15),wf(),Wa(16,`input`,9),$y(`ngModelChange`,function(m){return ym(o),qT(e.model.name,m)||(e.model.name=m),bm(m)}),wf(),WC(),co(17,Ye,2,1,`mat-error`),wf(),Wa(18,`mat-form-field`,8)(19,`mat-label`),HT(20),wf(),Wa(21,`input`,10),$y(`ngModelChange`,function(m){return ym(o),qT(e.model.group,m)||(e.model.group=m),bm(m)}),wf(),WC(),Wa(22,`mat-autocomplete`,null,1),oT(24,$e,2,2,`mat-option`,11,rT),wf()(),Wa(26,`span`)(27,`mat-slide-toggle`,12),$y(`ngModelChange`,function(m){return ym(o),qT(e.model.ssh,m)||(e.model.ssh=m),bm(m)}),Sy(`change`,function(){return e.scheduleTextareaResize()}),HT(28),wf(),WC(),co(29,ot,32,22,`fieldset`),wf(),_y(30,`br`),Wa(31,`fieldset`)(32,`legend`),HT(33,`Node 1`),wf(),Wa(34,`mat-form-field`,8)(35,`mat-label`),HT(36),wf(),Wa(37,`input`,13),$y(`ngModelChange`,function(m){return ym(o),qT(e.model.host,m)||(e.model.host=m),bm(m)}),wf(),WC(),wf(),Wa(38,`mat-form-field`,8)(39,`mat-label`),HT(40),wf(),Wa(41,`input`,14),$y(`ngModelChange`,function(m){return ym(o),qT(e.model.port,m)||(e.model.port=m),bm(m)}),wf(),WC(),co(42,at,2,1,`mat-error`),wf(),Wa(43,`mat-slide-toggle`,15),$y(`ngModelChange`,function(m){return ym(o),qT(e.model.askAuth,m)||(e.model.askAuth=m),bm(m)}),Sy(`change`,function(){return e.onAskAuthChange()}),HT(44),wf(),WC(),co(45,rt,2,1,`div`,16),co(46,dt,15,10,`span`),wf(),_y(47,`br`),Wa(48,`span`)(49,`mat-slide-toggle`,17),$y(`ngModelChange`,function(m){return ym(o),qT(e.model.readonly,m)||(e.model.readonly=m),bm(m)}),HT(50),wf(),WC(),wf(),_y(51,`br`),Wa(52,`div`,18)(53,`div`)(54,`mat-slide-toggle`,19),$y(`ngModelChange`,function(m){return ym(o),qT(e.model.cluster,m)||(e.model.cluster=m),bm(m)}),Sy(`change`,function(){return e.onClusterChange()}),HT(55),wf(),WC(),wf(),Wa(56,`div`,20)(57,`mat-slide-toggle`,21),$y(`ngModelChange`,function(m){return ym(o),qT(e.model.sentinel,m)||(e.model.sentinel=m),bm(m)}),Sy(`change`,function(){return e.onSentinelChange()}),HT(58),wf(),WC(),wf(),_y(59,`span`,22),co(60,st,5,1,`div`,23),wf(),co(61,ct,5,4,`mat-form-field`,24),co(62,xt,3,0,`div`),Wa(63,`div`,25)(64,`mat-slide-toggle`,26),$y(`ngModelChange`,function(m){return ym(o),qT(e.model.tlsWithoutCert,m)||(e.model.tlsWithoutCert=m),bm(m)}),Sy(`change`,function(){return e.scheduleTextareaResize()}),HT(65),wf(),WC(),Wa(66,`mat-slide-toggle`,27),$y(`ngModelChange`,function(m){return ym(o),qT(e.model.tlsRejectUnauthorized,m)||(e.model.tlsRejectUnauthorized=m),bm(m)}),HT(67),wf(),WC(),wf(),co(68,yt,25,9,`div`,28),wf()(),Wa(69,`mat-dialog-actions`,29)(70,`p3xr-dialog-cancel`,30),Sy(`cancel`,function(){return e.cancel()}),wf(),Wa(71,`span`,31)(72,`button`,32),Sy(`click`,function(m){return e.testConnection(m)}),_y(73,`i`,33),HT(74),wf()(),co(75,wt,4,2,`button`,34),wf()()}if(r&2){let o=_T(1),u=_T(23);Sn(4),lo(e.readonlyConnections?4:e.options.type===`new`?5:6),Sn(8),lo(e.model.id&&e.options.type!==`new`?12:-1),Sn(3),jy(e.strings().form?.connection?.label?.name),Sn(),Uy(`ngModel`,e.model.name),by(`disabled`,e.readonlyConnections),qC(),Sn(),lo(o.controls.name?.hasError(`required`)&&o.controls.name?.touched?17:-1),Sn(3),jy(e.strings().form?.connection?.label?.group),Sn(),Uy(`ngModel`,e.model.group),by(`matAutocomplete`,u)(`disabled`,e.readonlyConnections),qC(),Sn(3),iT(e.existingGroups),Sn(3),Uy(`ngModel`,e.model.ssh),by(`disabled`,e.readonlyConnections),qC(),Sn(),Nf(` `,e.model.ssh?e.strings().label?.ssh?.on:e.strings().label?.ssh?.off,` `),Sn(),lo(e.model.ssh?29:-1),Sn(7),jy(e.strings().form?.connection?.label?.host),Sn(),Uy(`ngModel`,e.model.host),by(`disabled`,e.readonlyConnections),qC(),Sn(3),jy(e.strings().form?.connection?.label?.port),Sn(),Uy(`ngModel`,e.model.port),by(`disabled`,e.readonlyConnections),qC(),Sn(),lo(o.controls.port?.hasError(`min`)||o.controls.port?.hasError(`max`)?42:-1),Sn(),Uy(`ngModel`,e.model.askAuth),by(`disabled`,e.readonlyConnections),qC(),Sn(),Nf(` `,e.strings().label?.askAuth,` `),Sn(),lo(e.model.askAuth?45:-1),Sn(),lo(e.model.askAuth?-1:46),Sn(3),Uy(`ngModel`,e.model.readonly),by(`disabled`,e.readonlyConnections),qC(),Sn(),Nf(` `,e.model.readonly?e.strings().label?.readonly?.on:e.strings().label?.readonly?.off,` `),Sn(4),Uy(`ngModel`,e.model.cluster),by(`disabled`,e.readonlyConnections),qC(),Sn(),Nf(` `,e.model.cluster?e.strings().label?.cluster?.on:e.strings().label?.cluster?.off,` `),Sn(2),Uy(`ngModel`,e.model.sentinel),by(`disabled`,e.readonlyConnections),qC(),Sn(),Nf(` `,e.model.sentinel?e.strings().label?.sentinel?.on:e.strings().label?.sentinel?.off,` `),Sn(2),lo((e.model.cluster===!0||e.model.sentinel===!0)&&!e.readonlyConnections?60:-1),Sn(),lo(e.model.sentinel===!0?61:-1),Sn(),lo(e.model.cluster===!0||e.model.sentinel===!0?62:-1),Sn(2),Uy(`ngModel`,e.model.tlsWithoutCert),by(`disabled`,e.readonlyConnections),qC(),Sn(),Nf(` `,e.strings().label?.tlsWithoutCert,` `),Sn(),Uy(`ngModel`,e.model.tlsRejectUnauthorized),by(`disabled`,e.readonlyConnections),qC(),Sn(),Nf(` `,e.strings().label?.tlsRejectUnauthorized,` `),Sn(),lo(e.model.tlsWithoutCert!==!0?68:-1),Sn(6),Nf(` `,e.strings().intention?.testConnection,` `),Sn(),lo(e.readonlyConnections?-1:75)}},dependencies:[Eb,Gn,kn,He,an,xn,Rn,st$1,jt$1,Pt,on,Jt,Q$2,ye,zt,Bt,Vt,jt,Qt$1,qe,U,gt$2,xt$1,Oe$1,ze,Pt$1,q,we,te,$Y,HY,UY,G0,yt$1,wt$1,ae,se,Qt,gt$1,mi,di,bt,Q$1],styles:[`.md-block[_ngcontent-%COMP%]{width:100%}.p3xr-show-xs[_ngcontent-%COMP%]{display:none}@media(max-width:699px){.p3xr-hide-xs[_ngcontent-%COMP%]{display:none}.p3xr-show-xs[_ngcontent-%COMP%]{display:inline}}`],changeDetection:1})}return l})();export{dn as ConnectionDialogComponent};