Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 | 2x 2x 2x 2x 2x 3x 3x 3x 3x 3x 3x 2x 1x 1x 1x 1x 1x 1x 1x | import { ChangeDetectionStrategy, Component, EventEmitter, OnInit, Output, TemplateRef, ViewChild, } from '@angular/core'; import { FormGroup } from '@angular/forms'; import { NgbModal, NgbModalRef } from '@ng-bootstrap/ng-bootstrap'; import { FormlyFieldConfig } from '@ngx-formly/core'; import { markAsDirtyRecursive } from 'ish-shared/forms/utils/form-utils'; /** * The Wishlist Reject Approval Dialog shows the modal to reject a requisition. * * @example * <ish-requisition-reject-dialog (submitRejectRequisition)="rejectRequisition($event)"> </ish-requisition-reject-dialog> */ @Component({ selector: 'ish-requisition-reject-dialog', templateUrl: './requisition-reject-dialog.component.html', changeDetection: ChangeDetectionStrategy.OnPush, }) export class RequisitionRejectDialogComponent implements OnInit { /** * Emits the reject event with the reject comment. */ @Output() submitRejectRequisition = new EventEmitter<string>(); rejectForm = new FormGroup({}); private submitted = false; fields: FormlyFieldConfig[]; /** * A reference to the current modal. */ modal: NgbModalRef; @ViewChild('modal') modalTemplate: TemplateRef<unknown>; constructor(private ngbModal: NgbModal) {} ngOnInit() { this.initForm(); } private initForm() { this.fields = [ { key: 'comment', type: 'ish-textarea-field', props: { label: 'approval.rejectform.add_a_comment.label', required: true, maxLength: 1000, rows: 4, labelClass: 'col-12', fieldClass: 'col-12', hideRequiredMarker: true, }, validation: { messages: { required: 'approval.rejectform.invalid_comment.error', }, }, }, ]; } /** Emits the reject comment data, when the form was valid. */ submitForm() { if (this.rejectForm.invalid) { this.submitted = true; markAsDirtyRecursive(this.rejectForm); return; } this.submitRejectRequisition.emit(this.rejectForm.get('comment').value); this.hide(); } /** Opens the modal. */ show() { this.rejectForm.reset(); this.modal = this.ngbModal.open(this.modalTemplate); } /** Close the modal. */ hide() { this.submitted = false; Iif (this.modal) { this.modal.close(); } } get formDisabled() { return this.rejectForm.invalid && this.submitted; } } |