{"version":3,"file":"vineforceit-project-management-vf-project-detail.component-R1_EFWcx.mjs","sources":["../../../projects/project-management/src/lib/vf-projects/vf-project/components/vf-project-detail.component.ts","../../../projects/project-management/src/lib/vf-projects/vf-project/components/vf-project-detail.component.html"],"sourcesContent":["import { CoreModule } from '@abp/ng.core';\r\nimport { ThemeSharedModule, DateAdapter, TimeAdapter } from '@abp/ng.theme.shared';\r\nimport { CommercialUiModule } from '@volo/abp.commercial.ng.ui';\r\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport {\r\n  NgbNavModule,\r\n  NgbDatepickerModule,\r\n  NgbTimepickerModule,\r\n  NgbDateAdapter,\r\n  NgbTimeAdapter,\r\n} from '@ng-bootstrap/ng-bootstrap';\r\nimport { VfProjectDetailViewService } from '../services/vf-project-detail.service';\r\n\r\n@Component({\r\n  selector: 'lib-vf-project-detail-modal',\r\n  changeDetection: ChangeDetectionStrategy.Default,\r\n  imports: [\r\n    CoreModule,\r\n    ThemeSharedModule,\r\n    CommercialUiModule,\r\n    ReactiveFormsModule,\r\n    NgbDatepickerModule,\r\n    NgbTimepickerModule,\r\n    NgbNavModule,\r\n  ],\r\n  providers: [\r\n    { provide: NgbDateAdapter, useClass: DateAdapter },\r\n    { provide: NgbTimeAdapter, useClass: TimeAdapter },\r\n  ],\r\n  templateUrl: './vf-project-detail.component.html',\r\n  styles: [],\r\n})\r\nexport class VfProjectDetailModalComponent {\r\n  public readonly service = inject(VfProjectDetailViewService);\r\n}\r\n","<abp-modal [busy]=\"service.isBusy\" [(visible)]=\"service.isVisible\" modalClass=\"modal-lg modal-dialog-centered\">\n  <ng-template #abpHeader>\n    <h3 class=\"mb-0\">\n      {{ (service.selected ? 'AbpUi::Edit' : 'ProjectManagement::NewVfProject') | abpLocalization }}\n    </h3>\n  </ng-template>\n\n  <ng-template #abpBody>\n    <form [formGroup]=\"service.form\" id=\"vf-project\" (ngSubmit)=\"service.submitForm()\" validateOnSubmit>\n      <ul ngbNav #nav=\"ngbNav\" class=\"nav nav-tabs mb-3\">\n        <li ngbNavItem>\n          <a ngbNavLink>\n            {{ 'ProjectManagement::VfProject' | abpLocalization }}\n          </a>\n          <ng-template ngbNavContent>\n            <div class=\"p-3 bg-light rounded shadow-sm\">\n\n              <!-- Name -->\n              <div class=\"mb-3 row align-items-center\">\n                <label for=\"vf-project-name\" class=\"col-sm-4 col-form-label fw-semibold\">\n                  {{ 'ProjectManagement::Name' | abpLocalization }} *\n                </label>\n                <div class=\"col-sm-8\">\n                  <input id=\"vf-project-name\" formControlName=\"name\" class=\"form-control\" maxlength=\"200\"\n                    placeholder=\"Enter project name\" autofocus />\n                </div>\n              </div>\n\n              <!-- Description -->\n              <div class=\"mb-3 row align-items-start\">\n                <label for=\"vf-project-description\" class=\"col-sm-4 col-form-label fw-semibold\">\n                  {{ 'ProjectManagement::Description' | abpLocalization }}\n                </label>\n                <div class=\"col-sm-8\">\n                  <textarea id=\"vf-project-description\" formControlName=\"description\" class=\"form-control\" rows=\"3\"\n                    maxlength=\"1000\" placeholder=\"Write a brief project description...\"></textarea>\n                </div>\n              </div>\n\n              <!-- Start Date -->\n              <div class=\"mb-3 row align-items-center\">\n                <label for=\"vf-project-start-date\" class=\"col-sm-4 col-form-label fw-semibold\">\n                  {{ 'ProjectManagement::StartDate' | abpLocalization }} *\n                </label>\n                <div class=\"col-sm-8\">\n                  <div class=\"input-group\">\n                    <input readonly id=\"vf-project-start-date\" formControlName=\"startDate\" class=\"form-control\"\n                      ngbDatepicker #startDateInput #startDateDatepicker=\"ngbDatepicker\"\n                      (click)=\"startDateDatepicker.open()\" (keyup.space)=\"startDateDatepicker.open()\" />\n                    @if (startDateInput.value) {\n                      <button class=\"btn btn-outline-secondary\" type=\"button\"\n                        [title]=\"'AbpUi::Clear' | abpLocalization\"\n                        (click)=\"startDateDatepicker.writeValue(null); startDateDatepicker.manualDateChange(null, true)\">\n                        <i class=\"fa fa-times\"></i>\n                      </button>\n                    }\n                  </div>\n                </div>\n              </div>             \n              <div class=\"mb-3 row align-items-center\">\n                <label for=\"vf-project-end-date\" class=\"col-sm-4 col-form-label fw-semibold\">\n                  {{ 'ProjectManagement::EndDate' | abpLocalization }} *\n                </label>\n                <div class=\"col-sm-8\">\n                  <div class=\"input-group\">\n                    <input readonly id=\"vf-project-end-date\" formControlName=\"endDate\" class=\"form-control\"\n                      ngbDatepicker #endDateInput #endDateDatepicker=\"ngbDatepicker\"\n                      (click)=\"endDateDatepicker.open()\" (keyup.space)=\"endDateDatepicker.open()\" />\n                    @if (endDateInput.value) {\n                      <button class=\"btn btn-outline-secondary\" type=\"button\"\n                        [title]=\"'AbpUi::Clear' | abpLocalization\"\n                        (click)=\"endDateDatepicker.writeValue(null); endDateDatepicker.manualDateChange(null, true)\">\n                        <i class=\"fa fa-times\"></i>\n                      </button>\n                    }\n                  </div>\n                  <div *ngIf=\"service.form?.get('endDate')?.errors?.['endBeforeStart']\"\n                    class=\"text-danger small mt-1\">\n                    {{ 'ProjectManagement::EndDateMustBeAfterStart' | abpLocalization }}\n                  </div>\n                </div>\n              </div>\n\n              <!-- Status -->\n              <div class=\"mb-3 row align-items-center\">\n                <label for=\"vf-project-status\" class=\"col-sm-4 col-form-label fw-semibold\">\n                  {{ 'ProjectManagement::Status' | abpLocalization }} *\n                </label>\n                <div class=\"col-sm-8\">\n                  <select id=\"vf-project-status\" formControlName=\"status\" class=\"form-select\">\n                    <option [ngValue]=\"null\">--</option>\n                    <option *ngFor=\"let option of service.projectStatusOptions; trackBy: service.track.by('key')\" [ngValue]=\"option.value\">\n                      {{ 'ProjectManagement::Enum:ProjectStatus.' + option.value | abpLocalization }}\n                    </option>\n                  </select>\n                </div>\n              </div>\n\n            </div>\n          </ng-template>\n        </li>\n      </ul>\n      <div [ngbNavOutlet]=\"nav\"></div>\n    </form>\n  </ng-template>\n\n  <ng-template #abpFooter>\n    <div class=\"d-flex justify-content-end gap-2\">\n      <button type=\"button\" class=\"btn btn-outline-secondary\" abpClose>\n        {{ 'AbpUi::Cancel' | abpLocalization }}\n      </button>\n      <abp-button iconClass=\"fa fa-check\" buttonType=\"submit\" formName=\"vf-project\" class=\"btn-primary\">\n        {{ 'AbpUi::Save' | abpLocalization }}\n      </abp-button>\n    </div>\n  </ng-template>\n</abp-modal>\n"],"names":["i3","i5","i6"],"mappings":"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"}