.modal-body ngb-tabset(type='pills', [activeId]='basic') ngb-tab(id='basic') ng-template(ngbTabTitle) | Basic Setting ng-template(ngbTabContent) .form-group label Name input.form-control( type='text', autofocus, [(ngModel)]='connection.name', ) .form-group label Group input.form-control( type='text', placeholder='Ungrouped', [(ngModel)]='connection.group', ) .form-group label Host input.form-control( type='text', [(ngModel)]='connection.host', ) .form-group label Port input.form-control( type='number', placeholder='22', [(ngModel)]='connection.port', ) .form-group label Username input.form-control( type='text', [(ngModel)]='connection.user', ) .alert.alert-info.d-flex.bg-transparent.text-white.align-items-center(*ngIf='hasSavedPassword') .mr-auto There is a saved password for this connection button.btn.btn-danger.ml-4((click)='clearSavedPassword()') Forget .form-group label Private key .input-group input.form-control( type='text', placeholder='Key file path', [(ngModel)]='connection.privateKey' ) .input-group-btn button.btn.btn-secondary((click)='selectPrivateKey()') i.fas.fa-folder-open ngb-tab(id='advanced') ng-template(ngbTabTitle) | Advanced Setting ng-template(ngbTabContent) .form-group label Keep Alive Interval (Milliseconds) input.form-control( type='number', placeholder='0', [(ngModel)]='connection.keepaliveInterval', ) .form-group label Max Keep Alive Count input.form-control( type='number', placeholder='3', [(ngModel)]='connection.keepaliveCountMax', ) .form-group label Ready Timeout (Milliseconds) input.form-control( type='number', placeholder='20000', [(ngModel)]='connection.readyTimeout', ) .form-group label Ciphers div(*ngFor='let alg of supportedAlgorithms.cipher') checkbox([text]='alg', [(ngModel)]='algorithms.cipher[alg]') .form-group label Key exchange div(*ngFor='let alg of supportedAlgorithms.kex') checkbox([text]='alg', [(ngModel)]='algorithms.kex[alg]') .form-group label HMAC div(*ngFor='let alg of supportedAlgorithms.hmac') checkbox([text]='alg', [(ngModel)]='algorithms.hmac[alg]') .form-group label Host key div(*ngFor='let alg of supportedAlgorithms.serverHostKey') checkbox([text]='alg', [(ngModel)]='algorithms.serverHostKey[alg]') ngb-tab(id='scripts') ng-template(ngbTabTitle) | Login Scripts ng-template(ngbTabContent) table tr th String to expect th String to be sent th Regex th Optional th Actions tr(*ngFor='let script of connection.scripts') td input.form-control( type='text', [(ngModel)]='script.expect' ) td input.form-control( type='text', [(ngModel)]='script.send' ) td toggle( [(ngModel)]='script.isRegex', ) td toggle( [(ngModel)]='script.optional', ) td .input-group.flex-nowrap button.btn.btn-outline-info.ml-0((click)='moveScriptUp(script)') i.fas.fa-arrow-up button.btn.btn-outline-info.ml-0((click)='moveScriptDown(script)') i.fas.fa-arrow-down button.btn.btn-outline-danger.ml-0((click)='deleteScript(script)') i.fas.fa-trash tr td input.form-control( type='text', placeholder='Enter a string to expect', [(ngModel)]='newScript.expect' ) td input.form-control( type='text', placeholder='Enter a string to be sent', [(ngModel)]='newScript.send' ) td toggle( [(ngModel)]='newScript.isRegex', ) td toggle( [(ngModel)]='newScript.optional', ) td .input-group.flex-nowrap button.btn.btn-outline-info.ml-0((click)='addScript()') i.fas.fa-check button.btn.btn-outline-danger.ml-0((click)='clearScript()') i.fas.fa-trash .modal-footer button.btn.btn-outline-primary((click)='save()') Save button.btn.btn-outline-danger((click)='cancel()') Cancel