@adins/ucsearch 5.0.3-multiversion.1 → 5.0.4-multiversion.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,10 +1,10 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Injectable, Pipe, EventEmitter, Output, Input, ViewChild, Inject, Component, NgModule } from '@angular/core';
3
- import * as i4 from '@angular/common';
4
- import { DatePipe, formatDate, DOCUMENT, CommonModule } from '@angular/common';
2
+ import { Injectable, Pipe, EventEmitter, DOCUMENT, Output, Input, ViewChild, Inject, Component, NgModule } from '@angular/core';
5
3
  import * as i1 from '@angular/common/http';
6
4
  import * as i8 from '@angular/forms';
7
5
  import { Validators, FormsModule, ReactiveFormsModule } from '@angular/forms';
6
+ import * as i4 from '@angular/common';
7
+ import { DatePipe, formatDate, CommonModule } from '@angular/common';
8
8
  import { trigger, state, transition, style, animate } from '@angular/animations';
9
9
  import * as i2 from 'ngx-toastr';
10
10
  import * as i3 from 'ngx-cookie';
@@ -34,10 +34,10 @@ import { TranslateModule } from '@ngx-translate/core';
34
34
 
35
35
  class UCSearchService {
36
36
  constructor() { }
37
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: UCSearchService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
38
- /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: UCSearchService, providedIn: 'root' });
37
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: UCSearchService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
38
+ /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: UCSearchService, providedIn: 'root' });
39
39
  }
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: UCSearchService, decorators: [{
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: UCSearchService, decorators: [{
41
41
  type: Injectable,
42
42
  args: [{
43
43
  providedIn: 'root'
@@ -341,10 +341,10 @@ class ExportFileService {
341
341
  const _filename = `${fileName}_export_${_id}${extType}`;
342
342
  FileSaver.saveAs(data, _filename);
343
343
  }
344
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: ExportFileService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
345
- /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: ExportFileService });
344
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: ExportFileService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
345
+ /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: ExportFileService });
346
346
  }
347
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: ExportFileService, decorators: [{
347
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: ExportFileService, decorators: [{
348
348
  type: Injectable
349
349
  }] });
350
350
 
@@ -432,10 +432,10 @@ class UcsearchDatetimeService {
432
432
  return ValueDt + ValueToAdd;
433
433
  return ValueDt - ValueToAdd;
434
434
  }
435
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: UcsearchDatetimeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
436
- /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: UcsearchDatetimeService });
435
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: UcsearchDatetimeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
436
+ /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: UcsearchDatetimeService });
437
437
  }
438
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: UcsearchDatetimeService, decorators: [{
438
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: UcsearchDatetimeService, decorators: [{
439
439
  type: Injectable
440
440
  }] });
441
441
 
@@ -499,10 +499,10 @@ class UcsearchFormService {
499
499
  getForm() {
500
500
  return this.form;
501
501
  }
502
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: UcsearchFormService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
503
- /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: UcsearchFormService });
502
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: UcsearchFormService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
503
+ /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: UcsearchFormService });
504
504
  }
505
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: UcsearchFormService, decorators: [{
505
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: UcsearchFormService, decorators: [{
506
506
  type: Injectable
507
507
  }], ctorParameters: () => [] });
508
508
 
@@ -518,10 +518,10 @@ class TextSearchPipe {
518
518
  return false;
519
519
  });
520
520
  }
521
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: TextSearchPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
522
- /** @nocollapse */ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.0.5", ngImport: i0, type: TextSearchPipe, isStandalone: false, name: "textSearch" });
521
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: TextSearchPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
522
+ /** @nocollapse */ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type: TextSearchPipe, isStandalone: false, name: "textSearch" });
523
523
  }
524
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: TextSearchPipe, decorators: [{
524
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: TextSearchPipe, decorators: [{
525
525
  type: Pipe,
526
526
  args: [{
527
527
  name: 'textSearch',
@@ -2444,8 +2444,8 @@ class UCSearchComponent {
2444
2444
  else if (typeValidator === "MAX")
2445
2445
  control.addValidators(Validators.max(value));
2446
2446
  }
2447
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: UCSearchComponent, deps: [{ token: i1.HttpClient }, { token: i0.Renderer2 }, { token: DOCUMENT }, { token: i2.ToastrService }, { token: i3.CookieService }, { token: i4.DatePipe }, { token: i0.ElementRef }, { token: ExportFileService }, { token: i6.ActivatedRoute }, { token: i7.NgxRouterService }, { token: i8.FormBuilder }, { token: UcsearchDatetimeService }, { token: UcsearchFormService }], target: i0.ɵɵFactoryTarget.Component });
2448
- /** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.5", type: UCSearchComponent, isStandalone: false, selector: "lib-UCSearch", inputs: { searchInput: "searchInput", pageSize: "pageSize", isReport: "isReport", showRptExecType: "showRptExecType" }, outputs: { result: "result", genRpt: "genRpt", reqGetAllData: "reqGetAllData" }, providers: [DatePipe, ExportFileService], viewQueries: [{ propertyName: "content", first: true, predicate: ["enjiForm"], descendants: true }, { propertyName: "myForm", first: true, predicate: ["formIdSearch"], descendants: true }], ngImport: i0, template: "<span hidden attr.version=\"3.8.18-canary.0\"></span>\r\n<div>\r\n <!-- Basic form layout section start -->\r\n <lib-ucSubsection [hidden]=\"!searchInput.IsSubsection\" [id]=\"searchInput.searchId+'id'\"\r\n [title]=\"configuration?.sectionTitle || 'Paging'\" [panel]=\"searchInput.searchId\" [legacy]=\"false\"\r\n (collapse)=\"onCollapse($event)\">\r\n </lib-ucSubsection>\r\n\r\n <!-- <div [id]=\"searchInput.searchId\"> -->\r\n <!-- <div class=\"row text-left\">\r\n <div class=\"col-md-12\">\r\n <div class=\"\"> -->\r\n <!-- <div class=\"pl-3 mb-2 mt-2\" *ngIf=\"configuration?.title != undefined && configuration?.title != ''\">\r\n <h4 class=\"card-title ucSearch-title\" translate>{{configuration.title}}</h4>\r\n </div> -->\r\n <div class=\"card-body\" [id]=\"searchInput.searchId\" [(ngbCollapse)]=\"isCollapsed\">\r\n <div class=\"px-3\">\r\n <form class=\"form form-horizontal\" id=\"formSearch\" #formIdSearch [formGroup]=\"form\" #enjiForm=\"ngForm\"\r\n (ngSubmit)=\"enjiForm.valid && searchClick()\">\r\n <div class=\"form-body\">\r\n <!-- <h4 class=\"form-section font-weight-bold\">\r\n <div (click)=\"changeState()\" class=\"btn no-padding cursor-pointer flip\">\r\n <i class=\"fa\" style=\"font-size: 15px; margin: 0px 0px 5px -15px;\"\r\n [ngClass]=\"isHidden ? 'fa-chevron-right' : 'fa-chevron-down'\"></i>\r\n </div>\r\n <span\r\n *ngIf=\"configuration?.sectionTitle != undefined && configuration?.sectionTitle != ''; then inputSectionTitle else defaultSectionTitle\"></span>\r\n <ng-template #inputSectionTitle>\r\n {{configuration?.sectionTitle}}\r\n </ng-template>\r\n <ng-template #defaultSectionTitle>\r\n Paging\r\n </ng-template>\r\n </h4> -->\r\n <!-- Ini Digunakan untuk Generate Dynamic Component -->\r\n <!-- [hidden]=\"isHidden\" -->\r\n <!-- <div class=\"panel-active\" [@changeDivSize]=currentState> -->\r\n <div class=\"row\">\r\n <div class=\"col-md-3 form-group\" *ngFor=\"let question of configuration?.component; let i = index\">\r\n <div class=\"col-md-12\">\r\n <div class=\"row\">\r\n <label class=\"col-md-12 no-padding search-label\" for=\"{{question.id}}\"\r\n [ngClass]=\"{'adins-required-label': (question.isRequired || (question?.ddlType != undefined && question.ddlType == 'one'))}\"\r\n translate>{{question.label}}</label>\r\n <div class=\"col-md-12 no-padding\">\r\n <div *ngIf=\"question.type=='textbox'\">\r\n <input type=\"text\" id=\"{{question.id}}\" class=\"form-control search-input\"\r\n [IsUpperCase]=\"question.isUppercase === undefined ? true : question.isUppercase\"\r\n [required]=\"question.isRequired\" name=\"{{question.name}}\" [formControlName]=\"question.name\"\r\n attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\"\r\n [placeholder]=\"question.placeholder != undefined ? question.placeholder : ''\"\r\n attr.data-required=\"{{question.isRequired}}\" value=\"{{question.value}}\"\r\n attr.data-type=\"{{question.datatype}}\" attr.data-name=\"{{question.name}}\"\r\n attr.data-restriction=\"{{question.restriction}}\" attr.label=\"{{question.label}}\"\r\n [readonly]=\"question.isReadonly\"\r\n (focusout)=\"updateKeyValDict({key: question.name, value: question.value})\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\">\r\n </div>\r\n <div *ngIf=\"question.type=='textarea'\">\r\n <textarea type=\"text\" id=\"{{question.id}}\" class=\"form-control search-input\"\r\n [required]=\"question.isRequired\" name=\"{{question.name}}\" [formControlName]=\"question.name\"\r\n attr.data-required=\"{{question.isRequired}}\" attr.data-type=\"{{question.datatype}}\"\r\n attr.data-name=\"{{question.name}}\" value=\"{{question.value}}\" attr.label=\"{{question.label}}\"\r\n [readonly]=\"question.isReadonly\"\r\n (focusout)=\"updateKeyValDict({key: question.name, value: question.value})\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\"></textarea>\r\n </div>\r\n <div *ngIf=\"question.type=='numeric'\">\r\n <input type=\"number\" id=\"{{question.id}}\" (focus)=\"transformToDecimal($event)\"\r\n (blur)=\"transformToDecimal($event)\" class=\"form-control search-input\" [placeholder]=\"'0'\"\r\n [required]=\"question.isRequired\" name=\"{{question.name+[i]}}\"\r\n [formControlName]=\"question.name+[i]\" attr.data-required=\"{{question.isRequired}}\"\r\n value=\"{{question.value}}\" attr.data-restriction=\"{{question.restriction}}\"\r\n attr.data-type=\"{{question.datatype}}\" attr.data-name=\"{{question.name}}\"\r\n attr.data-numericpair=\"{{question.numericPair}}\"\r\n attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\" attr.label=\"{{question.label}}\"\r\n (focusout)=\"updateKeyValDict({key: question.name, value: question.value})\"\r\n [readonly]=\"question.isReadonly\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name+[i]]?.touched || enjiForm.form.controls[question.name+[i]]?.dirty) && enjiForm.form.controls[question.name+[i]]?.invalid }\">\r\n </div>\r\n <div *ngIf=\"question.type=='currency'\">\r\n <div *ngIf=\"question?.isCustom != undefined && question?.isCustom\">\r\n <input type=\"\" id=\"{{question.id}}\" class=\"form-control search-input\"\r\n [required]=\"question.isRequired\" name=\"{{question.name+[i]}}\" autocomplete=\"off\"\r\n attr.data-restriction=\"{{question.restriction}}\" attr.data-type=\"{{question.datatype}}\"\r\n attr.data-name=\"{{question.name}}\" attr.data-required=\"{{question.isRequired}}\" currencyMask\r\n [formControlName]=\"question.name+[i]\" attr.label=\"{{question.label}}\"\r\n [readonly]=\"question.isReadonly\" (focus)=\"OnFocusCurr($event, question.value)\"\r\n (blur)=\"ValidateDefaultValue(question)\"\r\n (focusout)=\"updateKeyValDict({key: question.name, value: question.value})\"\r\n [options]=\"{ thousands: question.thousands, decimal: question.decimal, align: question.align, allowNegative: question.allowNegative, allowZero: question.allowZero, precision: question.precision, nullable: question.nullable }\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name+[i]]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\">\r\n </div>\r\n <div *ngIf=\"question?.isCustom == undefined || !question?.isCustom\">\r\n <input type=\"text\" id=\"{{question.id}}\" class=\"form-control search-input\"\r\n [required]=\"question.isRequired\" name=\"{{question.name+[i]}}\" autocomplete=\"off\"\r\n attr.data-restriction=\"{{question.restriction}}\" attr.data-type=\"{{question.datatype}}\"\r\n attr.data-name=\"{{question.name}}\" attr.data-required=\"{{question.isRequired}}\" currencyMask\r\n [formControlName]=\"question.name+[i]\" attr.label=\"{{question.label}}\"\r\n (focus)=\"OnFocusCurr($event, question.value)\" (blur)=\"ValidateDefaultValue(question)\"\r\n (focusout)=\"updateKeyValDict({key: question.name, value: question.value})\"\r\n [options]=\"{ thousands: ',', decimal: '.', align: 'right', allowNegative: false, allowZero:true, precision: 2, nullable: false }\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name+[i]]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\">\r\n </div>\r\n </div>\r\n\r\n <!-- End Hardcode Lookup didalem-->\r\n <span *ngIf=\"!useNewDatepicker\">\r\n <div *ngIf=\"question.type=='datepicker' && !question.isTime\">\r\n <input type=\"date\" id=\"{{question.id}}\" class=\"form-control search-input btn-lookup\"\r\n name=\"{{question.name+[i]}}\" [formControlName]=\"question.name+[i]\"\r\n [required]=\"question.isRequired\" attr.data-required=\"{{question.isRequired}}\"\r\n value=\"{{question.value}}\" [readonly]=\"question.readonly\"\r\n attr.data-type=\"{{question.datatype}}\" attr.data-name=\"{{question.name}}\"\r\n attr.data-datepickerpair=\"{{question.datepickerPair}}\"\r\n attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\"\r\n attr.data-restriction=\"{{question.restriction}}\" attr.label=\"{{question.label}}\"\r\n [min]=\"question.minDate | date:'yyyy-MM-dd'\" [max]=\"question.maxDate | date:'yyyy-MM-dd'\"\r\n (focusout)=\"question.restriction != undefined && checkInputDate(question,i)\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name+[i]]?.touched || enjiForm.form.controls[question.name+[i]]?.dirty) && enjiForm.form.controls[question.name+[i]]?.invalid }\">\r\n </div>\r\n <div *ngIf=\"question.type=='datepicker' && question.isTime\">\r\n <input type=\"datetime-local\" id=\"{{question.id}}\" class=\"form-control search-input btn-lookup\"\r\n name=\"{{question.name+[i]}}\" [required]=\"question.isRequired\"\r\n [formControlName]=\"question.name\" attr.data-required=\"{{question.isRequired}}\"\r\n value=\"{{question.value}}\" [readonly]=\"question.readonly\"\r\n attr.data-type=\"{{question.datatype}}\" attr.data-name=\"{{question.name}}\"\r\n attr.data-datepickerpair=\"{{question.datepickerPair}}\"\r\n attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\"\r\n attr.data-restriction=\"{{question.restriction}}\" attr.label=\"{{question.label}}\"\r\n min=\"{{question.minDate | date:'yyyy-MM-dd'}}\" max=\"{{question.maxDate | date:'yyyy-MM-dd'}}\"\r\n (focusout)=\"question.restriction != undefined && checkInputDate(question,i)\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name+[i]]?.touched || enjiForm.form.controls[question.name+[i]]?.dirty) && enjiForm.form.controls[question.name+[i]]?.invalid }\">\r\n </div>\r\n </span>\r\n <span *ngIf=\"useNewDatepicker\">\r\n <div *ngIf=\"question.type=='datepicker'\">\r\n <lib-ucdatepicker [parentForm]=\"form\" [enjiForm]=\"enjiForm\" [identifier]=\"question.name+i\"\r\n [min]=\"question.minDate | date: 'yyyy-MM-dd'\" [max]=\"question.maxDate | date: 'yyyy-MM-dd'\"\r\n [defaultStartDate]=\"BisDt\" [attr]=\"question\"\r\n (change)=\"question.restriction != undefined && checkInputDate(question,i)\">\r\n </lib-ucdatepicker>\r\n </div>\r\n </span>\r\n\r\n <div\r\n *ngIf=\"question.type == 'taskDefinitionKey' || question.type == 'processKey' || question.type == 'officeRoleCodes'\">\r\n <select name=\"{{question.name}}\" attr.data-required=\"{{question.isRequired}}\"\r\n [required]=\"question.isRequired\" class=\"form-control search-input\"\r\n attr.query-in=\"{{question.isQueryIn}}\" attr.data-type=\"{{question.datatype}}\"\r\n attr.label=\"{{question.label}}\" [hidden]=\"question?.itemsUrl?.length == 1\"\r\n (change)=\"(question.type == 'taskDefinitionKey' || question.type == 'processKey') ? SetProcessKey(i,question.wfKeyFilter) : SetRoleOfficeCodes(i)\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\">\r\n <option *ngIf=\"question.ddlType == 'one' && question?.itemsUrl?.length != 1\" value=\"one\">Select\r\n One</option>\r\n <option\r\n *ngIf=\"(question?.ddlType == undefined || question.ddlType == 'all') && question?.itemsUrl?.length != 1\"\r\n value=\"all\">All</option>\r\n <option *ngFor=\"let item of question?.itemsUrl\" value=\"{{item.Key}}\">\r\n {{item.Value}}\r\n </option>\r\n </select>\r\n <label *ngIf=\"question?.itemsUrl?.length == 1\">{{question.itemsUrl[0].Value}}</label>\r\n </div>\r\n <div *ngIf=\"question.type=='dropdown'\">\r\n <select name=\"{{question.name}}\" attr.data-required=\"{{question.isRequired}}\"\r\n [required]=\"question.isRequired\" class=\"form-control search-input\"\r\n [formControlName]=\"question.name\" attr.query-in=\"{{question.isQueryIn}}\"\r\n attr.data-type=\"{{question.datatype}}\" attr.data-name=\"{{question.name}}\"\r\n attr.label=\"{{question.label}}\" attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\"\r\n attr.data-restriction=\"{{ question?.restriction ?? ''}}\"\r\n [hidden]=\"!question.isFromURL ? (question?.items?.length == 1 && !question?.keepDdl) : (question?.itemsUrl?.length == 1 && !question?.keepDdl)\"\r\n (change)=\"question.isEvent ? onChangeEvent($event.target.value, question) : updateKeyValDict({key: question.name, value: $event.target.value})\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\">\r\n <option\r\n *ngIf=\"question.ddlType == 'one' && (!question.isFromURL ? (question?.items?.length != 1 || question?.keepDdl) : (question?.itemsUrl?.length != 1 || question?.keepDdl))\"\r\n value=\"one\">\r\n Select One</option>\r\n <option\r\n *ngIf=\"(question?.ddlType == undefined || question.ddlType == 'all') && (!question.isFromURL ? (question?.items?.length != 1 || question?.keepDdl) : (question?.itemsUrl?.length != 1 || question?.keepDdl))\"\r\n value=\"all\">All</option>\r\n <option *ngFor=\"let item of !question.isFromURL ? question?.items : question?.itemsUrl\"\r\n value=\"{{!question.isFromURL ? item.key : item.Key}}\">\r\n {{!question.isFromURL ? item.value : item.Value}}\r\n </option>\r\n <option\r\n *ngIf=\"(question?.ddlType == undefined || question.ddlType == 'all') && (!question.isFromURL ? (question?.items?.length != 1 || question?.keepDdl) : (question?.itemsUrl?.length != 1 || question?.keepDdl)) && question.useOthersSelection\"\r\n value=\"others\">Others</option>\r\n </select>\r\n <label\r\n *ngIf=\"!question.isFromURL ? (question?.items?.length == 1 && !question?.keepDdl) : (question?.itemsUrl?.length == 1 && !question?.keepDdl)\">{{!question.isFromURL\r\n ? question.items[0].value :\r\n question.itemsUrl[0].Value}}\r\n </label>\r\n </div>\r\n <div *ngIf=\"question.type=='dropdownSearch'\">\r\n <div class=\"dds-display-item\"\r\n [hidden]=\"!question.isFromURL ? question?.items?.length == 1 : question?.itemsUrl?.length == 1\">\r\n <input type=\"text\" class=\"form-control dds-input\" name=\"{{'ddsValue'+question.name}}\"\r\n [(ngModel)]=\"question.descr\" readonly\r\n (click)=\"question.isListHide = !question.isListHide; question.searchText=''\">\r\n </div>\r\n <label\r\n *ngIf=\"!question.isFromURL ? question?.items?.length == 1 : question?.itemsUrl?.length == 1\">{{question.descr}}</label>\r\n <div class=\"dds-list-container\" [hidden]=\"question.isListHide\">\r\n <input type=\"text\" class=\"form-control search-input\" name=\"{{'searchText'+question.name}}\"\r\n [(ngModel)]=\"question.searchText\" [placeholder]=\"question.placeholder\">\r\n <div class=\"dds-items-container\">\r\n <select class=\"full-width\" name=\"{{question.name}}\"\r\n attr.data-required=\"{{question.isRequired}}\" [(ngModel)]=\"question.value\"\r\n [required]=\"question.isRequired\" attr.query-in=\"{{question.isQueryIn}}\"\r\n attr.data-type=\"{{question.datatype}}\" attr.data-name=\"{{question.name}}\"\r\n attr.label=\"{{question.label}}\" attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\"\r\n (change)=\"question.isEvent ? onChangeEvent($event.target.value, question) : ''\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\"\r\n size=\"{{question?.size == undefined ? question?.size : 10}}\">\r\n <option (click)=\"selectedOption({Key:'one',Value:'Select One'},question)\"\r\n *ngIf=\"question.ddsType == 'one' && (!question.isFromURL ? question?.items?.length != 1 : question?.itemsUrl?.length != 1)\"\r\n value=\"one\">\r\n Select One</option>\r\n <option (click)=\"selectedOption({Key:'all',Value:'All'},question)\"\r\n *ngIf=\"(question?.ddsType == undefined || question.ddsType == 'all') && (!question.isFromURL ? question?.items?.length != 1 : question?.itemsUrl?.length != 1)\"\r\n value=\"all\">All</option>\r\n <!-- <option *ngFor=\"let item of question?.items | textSearch : question.searchText; let i=index\" [value]=\"item?.key\" (click)=\"selectedOption(item,question)\">\r\n {{item?.value}}\r\n </option> -->\r\n <option\r\n *ngFor=\"let item of !question.isFromURL ? (question?.items | textSearch : question.searchText) : question?.itemsUrl | textSearch : question.searchText\"\r\n (click)=\"selectedOption(item,question)\" value=\"{{item.Key}}\">\r\n {{item.Value}}\r\n </option>\r\n </select>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"question.type=='claim'\">\r\n <select name=\"{{'claim'+[i]}}\" class=\"form-control search-input\" attr.data-type=\"{{'text'}}\"\r\n attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\" attr.data-name=\"{{'Assignee'}}\"\r\n [hidden]=\"ClaimList?.length == 1\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls['claim'+[i]]?.touched || enjiForm.form.controls['claim'+[i]]?.dirty) && enjiForm.form.controls['claim'+[i]]?.invalid }\">\r\n <option *ngIf=\"question.ddlType == 'one' && ClaimList?.length != 1\" value=\"one\">Select\r\n One</option>\r\n <option\r\n *ngIf=\"(question?.ddlType == undefined || question.ddlType == 'all') && ClaimList?.length != 1\"\r\n value=\"all\">All</option>\r\n <option *ngFor=\"let item of ClaimList\" value=\"{{item.Key}}\">\r\n {{item.Value}}\r\n </option>\r\n </select>\r\n </div>\r\n <div *ngIf=\"question.type=='lookup'\">\r\n <lib-cl-uclookupgeneric *ngIf=\"searchInput.dictLookupObj[question.name].isReady\"\r\n [lookupInput]=\"searchInput.dictLookupObj[question.name]\" [parentForm]='form'\r\n [enjiForm]='enjiForm' [identifier]=\"question.name\"\r\n [notifyUpdateKeyValDict]=\"notifyUpdateKeyValDict\" [lookupKeyValDict]=\"lookupKeyValDict\"\r\n (lookup)=\"getLookup($event, question)\"\r\n (inputtedValue)=\"getInputtedValue($event, question)\"></lib-cl-uclookupgeneric>\r\n </div>\r\n\r\n <div *ngIf=\"question.type === 'time'\">\r\n <input type=\"time\" id=\"{{question.id}}\" class=\"form-control search-input\"\r\n [IsUpperCase]=\"question.isUppercase === undefined ? true : question.isUppercase\"\r\n [required]=\"question.isRequired\" name=\"{{question.name}}\" [formControlName]=\"question.name\"\r\n attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\"\r\n [placeholder]=\"question.placeholder != undefined ? question.placeholder : ''\"\r\n attr.data-required=\"{{question.isRequired}}\" value=\"{{question.value}}\"\r\n attr.data-type=\"{{question.datatype}}\" attr.data-name=\"{{question.name}}\"\r\n attr.data-restriction=\"{{question.restriction}}\" attr.label=\"{{question.label}}\"\r\n [readonly]=\"question.isReadonly\"\r\n (focusout)=\"updateKeyValDict({key: question.name, value: question.value})\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\">\r\n </div>\r\n\r\n <div *ngIf=\"question.type === 'month'\">\r\n <select name=\"{{question.name}}\" attr.data-required=\"{{question.isRequired}}\"\r\n [required]=\"question.isRequired\" class=\"form-control search-input\"\r\n [formControlName]=\"question.name\" attr.query-in=\"{{question.isQueryIn}}\"\r\n attr.data-type=\"{{question.datatype}}\" attr.data-name=\"{{question.name}}\"\r\n attr.label=\"{{question.label}}\" attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\"\r\n (change)=\"question.isEvent ? onChangeEvent($event.target.value, question) : ''\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\">\r\n <option *ngIf=\"question.ddlType == 'one'\" value=\"one\">\r\n Select One</option>\r\n <option *ngIf=\"question?.ddlType == undefined || question.ddlType == 'all'\" value=\"all\">All\r\n </option>\r\n <option *ngFor=\"let m of months\" [value]=\"m.key\">\r\n {{m.value}}\r\n </option>\r\n </select>\r\n </div>\r\n\r\n <div *ngIf=\"question.type === 'year'\">\r\n <select name=\"{{question.name}}\" attr.data-required=\"{{question.isRequired}}\"\r\n [required]=\"question.isRequired\" class=\"form-control search-input\"\r\n [formControlName]=\"question.name\" attr.query-in=\"{{question.isQueryIn}}\"\r\n attr.data-type=\"{{question.datatype}}\" attr.data-name=\"{{question.name}}\"\r\n attr.label=\"{{question.label}}\" attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\"\r\n (change)=\"question.isEvent ? onChangeEvent($event.target.value, question) : ''\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\">\r\n <option *ngIf=\"question.ddlType == 'one'\" value=\"one\">\r\n Select One</option>\r\n <option *ngIf=\"question?.ddlType == undefined || question.ddlType == 'all'\" value=\"all\">All\r\n </option>\r\n <option *ngFor=\"let y of years\" [value]=\"y\">\r\n {{y}}\r\n </option>\r\n </select>\r\n </div>\r\n\r\n <lib-uc-show-errors *ngIf=\"question.type !== 'datepicker'\" [control]=\"form.controls[question.name]\"\r\n [submit]=\"enjiForm.submitted\">\r\n </lib-uc-show-errors>\r\n <lib-uc-show-errors *ngIf=\"question.type === 'datepicker' || question.type === 'numeric'\"\r\n [control]=\"form.controls[question.name+[i]]\" [submit]=\"enjiForm.submitted\">\r\n </lib-uc-show-errors>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-3 form-group\" *ngIf=\"(isReport != undefined && isReport)\">\r\n <div class=\"col-md-12\">\r\n <div class=\"row\">\r\n <label class=\"col-md-12 no-padding search-label\" translate>Report Type</label>\r\n <div class=\"col-md-12 no-padding\">\r\n <select name=\"ExportType\" class=\"form-control search-input\" attr.data-type=\"text\"\r\n [formControlName]=\"'ExportType'\">\r\n <option *ngFor=\"let item of ExportTypeList\" [value]=\"item.key\">{{item.value}}</option>\r\n </select>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-3 form-group\"\r\n *ngIf=\"(isReport != undefined && isReport) && (showRptExecType != undefined && showRptExecType)\">\r\n <div class=\"col-md-12\">\r\n <div class=\"row\">\r\n <label class=\"col-md-12 no-padding search-label\" translate>Execution Type</label>\r\n <div class=\"col-md-12 no-padding\">\r\n <select name=\"RptExecType\" class=\"form-control search-input\" attr.data-type=\"text\"\r\n [formControlName]=\"'RptExecType'\">\r\n <option *ngFor=\"let item of ReportExecTypeList\" [value]=\"item.key\">{{item.value}}</option>\r\n </select>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 no-padding\">\r\n <div class=\"form-actions right\">\r\n <ng-container class=\"btn-group\" *ngIf=\"exportData == true && isSearch\">\r\n <div ngbDropdown class=\"d-inline-block\">\r\n <button type=\"button\" class=\"btn btn-raised btn-outline-2 mr-1 dropdown-toggle\" ngbDropdownToggle\r\n id=\"exportList\" translate>\r\n <i class=\"fa ft-download button-icon-search\"></i>&nbsp;<span class=\"button-text-search\"\r\n translate>Export File</span>\r\n </button>\r\n <div class=\"dropdown-menu\" ngbDropdownMenu aria-labelledby=\"exportList\">\r\n <ng-container *ngFor=\"let item of exportAsFileList\">\r\n <a class=\"dropdown-item\" ngbDropdownItem (click)=\"exportAsFile(item.key)\">{{item.value}}</a>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <button type=\"button\" (click)=\"reset()\" class=\"btn btn-raised mr-1 btn-link-2\" translate>\r\n <!-- <i class=\"fa fa-times\"></i>&nbsp; -->\r\n <span translate>Reset</span>\r\n </button>\r\n <button *ngIf=\"(isReport == undefined || !isReport)\" type=\"submit\" class=\"btn btn-raised btn-outline-2\"\r\n #UCSearchClick [disabled]=\"!searchBtnReady\">\r\n <i class=\"fa fa-search button-icon-search\"></i>&nbsp;<span class=\"button-text-search\"\r\n translate>Search</span>\r\n </button>\r\n <button *ngIf=\"(isReport != undefined && isReport)\" type=\"submit\" class=\"btn btn-raised btn-outline-2\">\r\n <i class=\"fa ft-download button-icon-search\"></i>&nbsp;<span class=\"button-text-search\"\r\n translate>Generate\r\n Report</span>\r\n </button>\r\n </div>\r\n </div>\r\n <!-- </div> -->\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n <!-- </div>\r\n </div>\r\n </div> -->\r\n <!-- </div> -->\r\n</div>\r\n<!-- // Basic form layout section end -->", styles: [".ucSearch-title{margin:3px}.card-body{margin-top:24px}.form-group{margin-bottom:15px!important}.search-label{color:var(--Black_1, #3A4060);font-size:14px!important}.dds-input{border-radius:7px!important;border:1px solid var(--gray-line, #DFE6E9)!important;background:var(--white-1, #FDFEFF)!important;padding:1.135rem!important;height:calc(1.5rem + 2px)!important;font-size:12px!important}.dds-display-item:after{content:\"\\e929\";font-family:feather;font-size:1rem;display:inline-block;position:absolute;right:5px;top:5px;transform:rotate(90deg)}.dds-list-container{position:absolute;width:100%;z-index:9}.search-input{border-radius:7px!important;border:1px solid var(--gray-line, #DFE6E9)!important;background:var(--white-1, #FDFEFF)!important;width:100%}select.search-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url(\"data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23246CFE' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e\")!important;background-repeat:no-repeat!important;background-position:right 1rem center!important;background-size:1.4em!important}.btn{border-radius:7px;font-size:14px;padding:.275rem 1rem}.btn-link-2{background:none;border:none;color:var(--blue-primary, #246CFE)!important}.btn-link-2:hover{background:var(--light-grey, #F4F8FB)!important;color:var(--blue-primary-darker, #0010F7)!important}.btn-outline-2{border:1px solid var(--blue-primary, #246CFE)!important;background:var(--white, #FDFEFF)!important;color:var(--blue-primary, #246CFE)!important}.btn-outline-2:hover{color:var(--blue-primary-darker, #0010F7)!important;background:var(--light-grey, #F4F8FB)!important;border:1px solid var(--blue-primary-darker, #0010F7)!important}.button-icon-search{font-size:11px;vertical-align:middle;padding-right:8px}.button-text-search{vertical-align:middle}.dropdown-toggle:after{display:inline-block;margin-left:.5em;vertical-align:middle;content:\"\";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i11.NgbCollapse, selector: "[ngbCollapse]", inputs: ["animation", "ngbCollapse", "horizontal"], outputs: ["ngbCollapseChange", "shown", "hidden"], exportAs: ["ngbCollapse"] }, { kind: "directive", type: i11.NgbDropdown, selector: "[ngbDropdown]", inputs: ["autoClose", "dropdownClass", "open", "placement", "popperOptions", "container", "display"], outputs: ["openChange"], exportAs: ["ngbDropdown"] }, { kind: "directive", type: i11.NgbDropdownToggle, selector: "[ngbDropdownToggle]" }, { kind: "directive", type: i11.NgbDropdownMenu, selector: "[ngbDropdownMenu]" }, { kind: "directive", type: i11.NgbDropdownItem, selector: "[ngbDropdownItem]", inputs: ["tabindex", "disabled"] }, { kind: "directive", type: i8.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i8.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i8.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i8.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i8.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i8.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i8.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i8.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i12.UcShowErrorsComponent, selector: "lib-uc-show-errors", inputs: ["control", "submit", "fieldName", "customPattern"] }, { kind: "directive", type: i13.UpperCaseDirective, selector: "input[type=text], input", inputs: ["IsUpperCase"] }, { kind: "directive", type: i14.ValidateDateDirective, selector: "input[type=date], input[type=datetime-local]", inputs: ["warningMsg"] }, { kind: "component", type: i15.ClUclookupgenericComponent, selector: "lib-cl-uclookupgeneric", inputs: ["lookupInput", "enjiForm", "parentForm", "identifier", "notifyUpdateKeyValDict", "lookupKeyValDict"], outputs: ["lookup", "inputtedValue", "callback"] }, { kind: "component", type: i16.UcSubsectionComponent, selector: "lib-ucSubsection", inputs: ["title", "panel", "id", "legacy", "isHidden"], outputs: ["collapse"] }, { kind: "component", type: i17.UcdatepickerComponent, selector: "lib-ucdatepicker", inputs: ["parentForm", "enjiForm", "identifier", "min", "max", "defaultStartDate", "attr", "colorLevelSetting", "confidenceLevel"], outputs: ["change"] }, { kind: "directive", type: i18.NgxCurrencyDirective, selector: "input[currencyMask]", inputs: ["currencyMask", "options"] }, { kind: "directive", type: i19.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "pipe", type: i4.DatePipe, name: "date" }, { kind: "pipe", type: TextSearchPipe, name: "textSearch" }], animations: [
2447
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: UCSearchComponent, deps: [{ token: i1.HttpClient }, { token: i0.Renderer2 }, { token: DOCUMENT }, { token: i2.ToastrService }, { token: i3.CookieService }, { token: i4.DatePipe }, { token: i0.ElementRef }, { token: ExportFileService }, { token: i6.ActivatedRoute }, { token: i7.NgxRouterService }, { token: i8.FormBuilder }, { token: UcsearchDatetimeService }, { token: UcsearchFormService }], target: i0.ɵɵFactoryTarget.Component });
2448
+ /** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.6", type: UCSearchComponent, isStandalone: false, selector: "lib-UCSearch", inputs: { searchInput: "searchInput", pageSize: "pageSize", isReport: "isReport", showRptExecType: "showRptExecType" }, outputs: { result: "result", genRpt: "genRpt", reqGetAllData: "reqGetAllData" }, providers: [DatePipe, ExportFileService], viewQueries: [{ propertyName: "content", first: true, predicate: ["enjiForm"], descendants: true }, { propertyName: "myForm", first: true, predicate: ["formIdSearch"], descendants: true }], ngImport: i0, template: "<span hidden attr.version=\"3.8.18-canary.0\"></span>\r\n<div>\r\n <!-- Basic form layout section start -->\r\n <lib-ucSubsection [hidden]=\"!searchInput.IsSubsection\" [id]=\"searchInput.searchId+'id'\"\r\n [title]=\"configuration?.sectionTitle || 'Paging'\" [panel]=\"searchInput.searchId\" [legacy]=\"false\"\r\n (collapse)=\"onCollapse($event)\">\r\n </lib-ucSubsection>\r\n\r\n <!-- <div [id]=\"searchInput.searchId\"> -->\r\n <!-- <div class=\"row text-left\">\r\n <div class=\"col-md-12\">\r\n <div class=\"\"> -->\r\n <!-- <div class=\"pl-3 mb-2 mt-2\" *ngIf=\"configuration?.title != undefined && configuration?.title != ''\">\r\n <h4 class=\"card-title ucSearch-title\" translate>{{configuration.title}}</h4>\r\n </div> -->\r\n <div class=\"card-body\" [id]=\"searchInput.searchId\" [(ngbCollapse)]=\"isCollapsed\">\r\n <div class=\"px-3\">\r\n <form class=\"form form-horizontal\" id=\"formSearch\" #formIdSearch [formGroup]=\"form\" #enjiForm=\"ngForm\"\r\n (ngSubmit)=\"enjiForm.valid && searchClick()\">\r\n <div class=\"form-body\">\r\n <!-- <h4 class=\"form-section font-weight-bold\">\r\n <div (click)=\"changeState()\" class=\"btn no-padding cursor-pointer flip\">\r\n <i class=\"fa\" style=\"font-size: 15px; margin: 0px 0px 5px -15px;\"\r\n [ngClass]=\"isHidden ? 'fa-chevron-right' : 'fa-chevron-down'\"></i>\r\n </div>\r\n <span\r\n *ngIf=\"configuration?.sectionTitle != undefined && configuration?.sectionTitle != ''; then inputSectionTitle else defaultSectionTitle\"></span>\r\n <ng-template #inputSectionTitle>\r\n {{configuration?.sectionTitle}}\r\n </ng-template>\r\n <ng-template #defaultSectionTitle>\r\n Paging\r\n </ng-template>\r\n </h4> -->\r\n <!-- Ini Digunakan untuk Generate Dynamic Component -->\r\n <!-- [hidden]=\"isHidden\" -->\r\n <!-- <div class=\"panel-active\" [@changeDivSize]=currentState> -->\r\n <div class=\"row\">\r\n <div class=\"col-md-3 form-group\" *ngFor=\"let question of configuration?.component; let i = index\">\r\n <div class=\"col-md-12\">\r\n <div class=\"row\">\r\n <label class=\"col-md-12 no-padding search-label\" for=\"{{question.id}}\"\r\n [ngClass]=\"{'adins-required-label': (question.isRequired || (question?.ddlType != undefined && question.ddlType == 'one'))}\"\r\n translate>{{question.label}}</label>\r\n <div class=\"col-md-12 no-padding\">\r\n <div *ngIf=\"question.type=='textbox'\">\r\n <input type=\"text\" id=\"{{question.id}}\" class=\"form-control search-input\"\r\n [IsUpperCase]=\"question.isUppercase === undefined ? true : question.isUppercase\"\r\n [required]=\"question.isRequired\" name=\"{{question.name}}\" [formControlName]=\"question.name\"\r\n attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\"\r\n [placeholder]=\"question.placeholder != undefined ? question.placeholder : ''\"\r\n attr.data-required=\"{{question.isRequired}}\" value=\"{{question.value}}\"\r\n attr.data-type=\"{{question.datatype}}\" attr.data-name=\"{{question.name}}\"\r\n attr.data-restriction=\"{{question.restriction}}\" attr.label=\"{{question.label}}\"\r\n [readonly]=\"question.isReadonly\"\r\n (focusout)=\"updateKeyValDict({key: question.name, value: question.value})\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\">\r\n </div>\r\n <div *ngIf=\"question.type=='textarea'\">\r\n <textarea type=\"text\" id=\"{{question.id}}\" class=\"form-control search-input\"\r\n [required]=\"question.isRequired\" name=\"{{question.name}}\" [formControlName]=\"question.name\"\r\n attr.data-required=\"{{question.isRequired}}\" attr.data-type=\"{{question.datatype}}\"\r\n attr.data-name=\"{{question.name}}\" value=\"{{question.value}}\" attr.label=\"{{question.label}}\"\r\n [readonly]=\"question.isReadonly\"\r\n (focusout)=\"updateKeyValDict({key: question.name, value: question.value})\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\"></textarea>\r\n </div>\r\n <div *ngIf=\"question.type=='numeric'\">\r\n <input type=\"number\" id=\"{{question.id}}\" (focus)=\"transformToDecimal($event)\"\r\n (blur)=\"transformToDecimal($event)\" class=\"form-control search-input\" [placeholder]=\"'0'\"\r\n [required]=\"question.isRequired\" name=\"{{question.name+[i]}}\"\r\n [formControlName]=\"question.name+[i]\" attr.data-required=\"{{question.isRequired}}\"\r\n value=\"{{question.value}}\" attr.data-restriction=\"{{question.restriction}}\"\r\n attr.data-type=\"{{question.datatype}}\" attr.data-name=\"{{question.name}}\"\r\n attr.data-numericpair=\"{{question.numericPair}}\"\r\n attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\" attr.label=\"{{question.label}}\"\r\n (focusout)=\"updateKeyValDict({key: question.name, value: question.value})\"\r\n [readonly]=\"question.isReadonly\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name+[i]]?.touched || enjiForm.form.controls[question.name+[i]]?.dirty) && enjiForm.form.controls[question.name+[i]]?.invalid }\">\r\n </div>\r\n <div *ngIf=\"question.type=='currency'\">\r\n <div *ngIf=\"question?.isCustom != undefined && question?.isCustom\">\r\n <input type=\"\" id=\"{{question.id}}\" class=\"form-control search-input\"\r\n [required]=\"question.isRequired\" name=\"{{question.name+[i]}}\" autocomplete=\"off\"\r\n attr.data-restriction=\"{{question.restriction}}\" attr.data-type=\"{{question.datatype}}\"\r\n attr.data-name=\"{{question.name}}\" attr.data-required=\"{{question.isRequired}}\" currencyMask\r\n [formControlName]=\"question.name+[i]\" attr.label=\"{{question.label}}\"\r\n [readonly]=\"question.isReadonly\" (focus)=\"OnFocusCurr($event, question.value)\"\r\n (blur)=\"ValidateDefaultValue(question)\"\r\n (focusout)=\"updateKeyValDict({key: question.name, value: question.value})\"\r\n [options]=\"{ thousands: question.thousands, decimal: question.decimal, align: question.align, allowNegative: question.allowNegative, allowZero: question.allowZero, precision: question.precision, nullable: question.nullable }\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name+[i]]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\">\r\n </div>\r\n <div *ngIf=\"question?.isCustom == undefined || !question?.isCustom\">\r\n <input type=\"text\" id=\"{{question.id}}\" class=\"form-control search-input\"\r\n [required]=\"question.isRequired\" name=\"{{question.name+[i]}}\" autocomplete=\"off\"\r\n attr.data-restriction=\"{{question.restriction}}\" attr.data-type=\"{{question.datatype}}\"\r\n attr.data-name=\"{{question.name}}\" attr.data-required=\"{{question.isRequired}}\" currencyMask\r\n [formControlName]=\"question.name+[i]\" attr.label=\"{{question.label}}\"\r\n (focus)=\"OnFocusCurr($event, question.value)\" (blur)=\"ValidateDefaultValue(question)\"\r\n (focusout)=\"updateKeyValDict({key: question.name, value: question.value})\"\r\n [options]=\"{ thousands: ',', decimal: '.', align: 'right', allowNegative: false, allowZero:true, precision: 2, nullable: false }\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name+[i]]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\">\r\n </div>\r\n </div>\r\n\r\n <!-- End Hardcode Lookup didalem-->\r\n <span *ngIf=\"!useNewDatepicker\">\r\n <div *ngIf=\"question.type=='datepicker' && !question.isTime\">\r\n <input type=\"date\" id=\"{{question.id}}\" class=\"form-control search-input btn-lookup\"\r\n name=\"{{question.name+[i]}}\" [formControlName]=\"question.name+[i]\"\r\n [required]=\"question.isRequired\" attr.data-required=\"{{question.isRequired}}\"\r\n value=\"{{question.value}}\" [readonly]=\"question.readonly\"\r\n attr.data-type=\"{{question.datatype}}\" attr.data-name=\"{{question.name}}\"\r\n attr.data-datepickerpair=\"{{question.datepickerPair}}\"\r\n attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\"\r\n attr.data-restriction=\"{{question.restriction}}\" attr.label=\"{{question.label}}\"\r\n [min]=\"question.minDate | date:'yyyy-MM-dd'\" [max]=\"question.maxDate | date:'yyyy-MM-dd'\"\r\n (focusout)=\"question.restriction != undefined && checkInputDate(question,i)\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name+[i]]?.touched || enjiForm.form.controls[question.name+[i]]?.dirty) && enjiForm.form.controls[question.name+[i]]?.invalid }\">\r\n </div>\r\n <div *ngIf=\"question.type=='datepicker' && question.isTime\">\r\n <input type=\"datetime-local\" id=\"{{question.id}}\" class=\"form-control search-input btn-lookup\"\r\n name=\"{{question.name+[i]}}\" [required]=\"question.isRequired\"\r\n [formControlName]=\"question.name\" attr.data-required=\"{{question.isRequired}}\"\r\n value=\"{{question.value}}\" [readonly]=\"question.readonly\"\r\n attr.data-type=\"{{question.datatype}}\" attr.data-name=\"{{question.name}}\"\r\n attr.data-datepickerpair=\"{{question.datepickerPair}}\"\r\n attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\"\r\n attr.data-restriction=\"{{question.restriction}}\" attr.label=\"{{question.label}}\"\r\n min=\"{{question.minDate | date:'yyyy-MM-dd'}}\" max=\"{{question.maxDate | date:'yyyy-MM-dd'}}\"\r\n (focusout)=\"question.restriction != undefined && checkInputDate(question,i)\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name+[i]]?.touched || enjiForm.form.controls[question.name+[i]]?.dirty) && enjiForm.form.controls[question.name+[i]]?.invalid }\">\r\n </div>\r\n </span>\r\n <span *ngIf=\"useNewDatepicker\">\r\n <div *ngIf=\"question.type=='datepicker'\">\r\n <lib-ucdatepicker [parentForm]=\"form\" [enjiForm]=\"enjiForm\" [identifier]=\"question.name+i\"\r\n [min]=\"question.minDate | date: 'yyyy-MM-dd'\" [max]=\"question.maxDate | date: 'yyyy-MM-dd'\"\r\n [defaultStartDate]=\"BisDt\" [attr]=\"question\"\r\n (change)=\"question.restriction != undefined && checkInputDate(question,i)\">\r\n </lib-ucdatepicker>\r\n </div>\r\n </span>\r\n\r\n <div\r\n *ngIf=\"question.type == 'taskDefinitionKey' || question.type == 'processKey' || question.type == 'officeRoleCodes'\">\r\n <select name=\"{{question.name}}\" attr.data-required=\"{{question.isRequired}}\"\r\n [required]=\"question.isRequired\" class=\"form-control search-input\"\r\n attr.query-in=\"{{question.isQueryIn}}\" attr.data-type=\"{{question.datatype}}\"\r\n attr.label=\"{{question.label}}\" [hidden]=\"question?.itemsUrl?.length == 1\"\r\n (change)=\"(question.type == 'taskDefinitionKey' || question.type == 'processKey') ? SetProcessKey(i,question.wfKeyFilter) : SetRoleOfficeCodes(i)\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\">\r\n <option *ngIf=\"question.ddlType == 'one' && question?.itemsUrl?.length != 1\" value=\"one\">Select\r\n One</option>\r\n <option\r\n *ngIf=\"(question?.ddlType == undefined || question.ddlType == 'all') && question?.itemsUrl?.length != 1\"\r\n value=\"all\">All</option>\r\n <option *ngFor=\"let item of question?.itemsUrl\" value=\"{{item.Key}}\">\r\n {{item.Value}}\r\n </option>\r\n </select>\r\n <label *ngIf=\"question?.itemsUrl?.length == 1\">{{question.itemsUrl[0].Value}}</label>\r\n </div>\r\n <div *ngIf=\"question.type=='dropdown'\">\r\n <select name=\"{{question.name}}\" attr.data-required=\"{{question.isRequired}}\"\r\n [required]=\"question.isRequired\" class=\"form-control search-input\"\r\n [formControlName]=\"question.name\" attr.query-in=\"{{question.isQueryIn}}\"\r\n attr.data-type=\"{{question.datatype}}\" attr.data-name=\"{{question.name}}\"\r\n attr.label=\"{{question.label}}\" attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\"\r\n attr.data-restriction=\"{{ question?.restriction ?? ''}}\"\r\n [hidden]=\"!question.isFromURL ? (question?.items?.length == 1 && !question?.keepDdl) : (question?.itemsUrl?.length == 1 && !question?.keepDdl)\"\r\n (change)=\"question.isEvent ? onChangeEvent($event.target.value, question) : updateKeyValDict({key: question.name, value: $event.target.value})\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\">\r\n <option\r\n *ngIf=\"question.ddlType == 'one' && (!question.isFromURL ? (question?.items?.length != 1 || question?.keepDdl) : (question?.itemsUrl?.length != 1 || question?.keepDdl))\"\r\n value=\"one\">\r\n Select One</option>\r\n <option\r\n *ngIf=\"(question?.ddlType == undefined || question.ddlType == 'all') && (!question.isFromURL ? (question?.items?.length != 1 || question?.keepDdl) : (question?.itemsUrl?.length != 1 || question?.keepDdl))\"\r\n value=\"all\">All</option>\r\n <option *ngFor=\"let item of !question.isFromURL ? question?.items : question?.itemsUrl\"\r\n value=\"{{!question.isFromURL ? item.key : item.Key}}\">\r\n {{!question.isFromURL ? item.value : item.Value}}\r\n </option>\r\n <option\r\n *ngIf=\"(question?.ddlType == undefined || question.ddlType == 'all') && (!question.isFromURL ? (question?.items?.length != 1 || question?.keepDdl) : (question?.itemsUrl?.length != 1 || question?.keepDdl)) && question.useOthersSelection\"\r\n value=\"others\">Others</option>\r\n </select>\r\n <label\r\n *ngIf=\"!question.isFromURL ? (question?.items?.length == 1 && !question?.keepDdl) : (question?.itemsUrl?.length == 1 && !question?.keepDdl)\">{{!question.isFromURL\r\n ? question.items[0].value :\r\n question.itemsUrl[0].Value}}\r\n </label>\r\n </div>\r\n <div *ngIf=\"question.type=='dropdownSearch'\">\r\n <div class=\"dds-display-item\"\r\n [hidden]=\"!question.isFromURL ? question?.items?.length == 1 : question?.itemsUrl?.length == 1\">\r\n <input type=\"text\" class=\"form-control dds-input\" name=\"{{'ddsValue'+question.name}}\"\r\n [(ngModel)]=\"question.descr\" readonly\r\n (click)=\"question.isListHide = !question.isListHide; question.searchText=''\">\r\n </div>\r\n <label\r\n *ngIf=\"!question.isFromURL ? question?.items?.length == 1 : question?.itemsUrl?.length == 1\">{{question.descr}}</label>\r\n <div class=\"dds-list-container\" [hidden]=\"question.isListHide\">\r\n <input type=\"text\" class=\"form-control search-input\" name=\"{{'searchText'+question.name}}\"\r\n [(ngModel)]=\"question.searchText\" [placeholder]=\"question.placeholder\">\r\n <div class=\"dds-items-container\">\r\n <select class=\"full-width\" name=\"{{question.name}}\"\r\n attr.data-required=\"{{question.isRequired}}\" [(ngModel)]=\"question.value\"\r\n [required]=\"question.isRequired\" attr.query-in=\"{{question.isQueryIn}}\"\r\n attr.data-type=\"{{question.datatype}}\" attr.data-name=\"{{question.name}}\"\r\n attr.label=\"{{question.label}}\" attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\"\r\n (change)=\"question.isEvent ? onChangeEvent($event.target.value, question) : ''\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\"\r\n size=\"{{question?.size == undefined ? question?.size : 10}}\">\r\n <option (click)=\"selectedOption({Key:'one',Value:'Select One'},question)\"\r\n *ngIf=\"question.ddsType == 'one' && (!question.isFromURL ? question?.items?.length != 1 : question?.itemsUrl?.length != 1)\"\r\n value=\"one\">\r\n Select One</option>\r\n <option (click)=\"selectedOption({Key:'all',Value:'All'},question)\"\r\n *ngIf=\"(question?.ddsType == undefined || question.ddsType == 'all') && (!question.isFromURL ? question?.items?.length != 1 : question?.itemsUrl?.length != 1)\"\r\n value=\"all\">All</option>\r\n <!-- <option *ngFor=\"let item of question?.items | textSearch : question.searchText; let i=index\" [value]=\"item?.key\" (click)=\"selectedOption(item,question)\">\r\n {{item?.value}}\r\n </option> -->\r\n <option\r\n *ngFor=\"let item of !question.isFromURL ? (question?.items | textSearch : question.searchText) : question?.itemsUrl | textSearch : question.searchText\"\r\n (click)=\"selectedOption(item,question)\" value=\"{{item.Key}}\">\r\n {{item.Value}}\r\n </option>\r\n </select>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"question.type=='claim'\">\r\n <select name=\"{{'claim'+[i]}}\" class=\"form-control search-input\" attr.data-type=\"{{'text'}}\"\r\n attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\" attr.data-name=\"{{'Assignee'}}\"\r\n [hidden]=\"ClaimList?.length == 1\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls['claim'+[i]]?.touched || enjiForm.form.controls['claim'+[i]]?.dirty) && enjiForm.form.controls['claim'+[i]]?.invalid }\">\r\n <option *ngIf=\"question.ddlType == 'one' && ClaimList?.length != 1\" value=\"one\">Select\r\n One</option>\r\n <option\r\n *ngIf=\"(question?.ddlType == undefined || question.ddlType == 'all') && ClaimList?.length != 1\"\r\n value=\"all\">All</option>\r\n <option *ngFor=\"let item of ClaimList\" value=\"{{item.Key}}\">\r\n {{item.Value}}\r\n </option>\r\n </select>\r\n </div>\r\n <div *ngIf=\"question.type=='lookup'\">\r\n <lib-cl-uclookupgeneric *ngIf=\"searchInput.dictLookupObj[question.name].isReady\"\r\n [lookupInput]=\"searchInput.dictLookupObj[question.name]\" [parentForm]='form'\r\n [enjiForm]='enjiForm' [identifier]=\"question.name\"\r\n [notifyUpdateKeyValDict]=\"notifyUpdateKeyValDict\" [lookupKeyValDict]=\"lookupKeyValDict\"\r\n (lookup)=\"getLookup($event, question)\"\r\n (inputtedValue)=\"getInputtedValue($event, question)\"></lib-cl-uclookupgeneric>\r\n </div>\r\n\r\n <div *ngIf=\"question.type === 'time'\">\r\n <input type=\"time\" id=\"{{question.id}}\" class=\"form-control search-input\"\r\n [IsUpperCase]=\"question.isUppercase === undefined ? true : question.isUppercase\"\r\n [required]=\"question.isRequired\" name=\"{{question.name}}\" [formControlName]=\"question.name\"\r\n attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\"\r\n [placeholder]=\"question.placeholder != undefined ? question.placeholder : ''\"\r\n attr.data-required=\"{{question.isRequired}}\" value=\"{{question.value}}\"\r\n attr.data-type=\"{{question.datatype}}\" attr.data-name=\"{{question.name}}\"\r\n attr.data-restriction=\"{{question.restriction}}\" attr.label=\"{{question.label}}\"\r\n [readonly]=\"question.isReadonly\"\r\n (focusout)=\"updateKeyValDict({key: question.name, value: question.value})\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\">\r\n </div>\r\n\r\n <div *ngIf=\"question.type === 'month'\">\r\n <select name=\"{{question.name}}\" attr.data-required=\"{{question.isRequired}}\"\r\n [required]=\"question.isRequired\" class=\"form-control search-input\"\r\n [formControlName]=\"question.name\" attr.query-in=\"{{question.isQueryIn}}\"\r\n attr.data-type=\"{{question.datatype}}\" attr.data-name=\"{{question.name}}\"\r\n attr.label=\"{{question.label}}\" attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\"\r\n (change)=\"question.isEvent ? onChangeEvent($event.target.value, question) : ''\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\">\r\n <option *ngIf=\"question.ddlType == 'one'\" value=\"one\">\r\n Select One</option>\r\n <option *ngIf=\"question?.ddlType == undefined || question.ddlType == 'all'\" value=\"all\">All\r\n </option>\r\n <option *ngFor=\"let m of months\" [value]=\"m.key\">\r\n {{m.value}}\r\n </option>\r\n </select>\r\n </div>\r\n\r\n <div *ngIf=\"question.type === 'year'\">\r\n <select name=\"{{question.name}}\" attr.data-required=\"{{question.isRequired}}\"\r\n [required]=\"question.isRequired\" class=\"form-control search-input\"\r\n [formControlName]=\"question.name\" attr.query-in=\"{{question.isQueryIn}}\"\r\n attr.data-type=\"{{question.datatype}}\" attr.data-name=\"{{question.name}}\"\r\n attr.label=\"{{question.label}}\" attr.data-crit-datatable=\"{{question.isCriteriaDataTable}}\"\r\n (change)=\"question.isEvent ? onChangeEvent($event.target.value, question) : ''\"\r\n [ngClass]=\"{ 'is-invalid':(enjiForm.submitted || enjiForm.form.controls[question.name]?.touched || enjiForm.form.controls[question.name]?.dirty) && enjiForm.form.controls[question.name]?.invalid }\">\r\n <option *ngIf=\"question.ddlType == 'one'\" value=\"one\">\r\n Select One</option>\r\n <option *ngIf=\"question?.ddlType == undefined || question.ddlType == 'all'\" value=\"all\">All\r\n </option>\r\n <option *ngFor=\"let y of years\" [value]=\"y\">\r\n {{y}}\r\n </option>\r\n </select>\r\n </div>\r\n\r\n <lib-uc-show-errors *ngIf=\"question.type !== 'datepicker'\" [control]=\"form.controls[question.name]\"\r\n [submit]=\"enjiForm.submitted\">\r\n </lib-uc-show-errors>\r\n <lib-uc-show-errors *ngIf=\"question.type === 'datepicker' || question.type === 'numeric'\"\r\n [control]=\"form.controls[question.name+[i]]\" [submit]=\"enjiForm.submitted\">\r\n </lib-uc-show-errors>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-3 form-group\" *ngIf=\"(isReport != undefined && isReport)\">\r\n <div class=\"col-md-12\">\r\n <div class=\"row\">\r\n <label class=\"col-md-12 no-padding search-label\" translate>Report Type</label>\r\n <div class=\"col-md-12 no-padding\">\r\n <select name=\"ExportType\" class=\"form-control search-input\" attr.data-type=\"text\"\r\n [formControlName]=\"'ExportType'\">\r\n <option *ngFor=\"let item of ExportTypeList\" [value]=\"item.key\">{{item.value}}</option>\r\n </select>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-3 form-group\"\r\n *ngIf=\"(isReport != undefined && isReport) && (showRptExecType != undefined && showRptExecType)\">\r\n <div class=\"col-md-12\">\r\n <div class=\"row\">\r\n <label class=\"col-md-12 no-padding search-label\" translate>Execution Type</label>\r\n <div class=\"col-md-12 no-padding\">\r\n <select name=\"RptExecType\" class=\"form-control search-input\" attr.data-type=\"text\"\r\n [formControlName]=\"'RptExecType'\">\r\n <option *ngFor=\"let item of ReportExecTypeList\" [value]=\"item.key\">{{item.value}}</option>\r\n </select>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 no-padding\">\r\n <div class=\"form-actions right\">\r\n <ng-container class=\"btn-group\" *ngIf=\"exportData == true && isSearch\">\r\n <div ngbDropdown class=\"d-inline-block\">\r\n <button type=\"button\" class=\"btn btn-raised btn-outline-2 mr-1 dropdown-toggle\" ngbDropdownToggle\r\n id=\"exportList\" translate>\r\n <i class=\"fa ft-download button-icon-search\"></i>&nbsp;<span class=\"button-text-search\"\r\n translate>Export File</span>\r\n </button>\r\n <div class=\"dropdown-menu\" ngbDropdownMenu aria-labelledby=\"exportList\">\r\n <ng-container *ngFor=\"let item of exportAsFileList\">\r\n <a class=\"dropdown-item\" ngbDropdownItem (click)=\"exportAsFile(item.key)\">{{item.value}}</a>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <button type=\"button\" (click)=\"reset()\" class=\"btn btn-raised mr-1 btn-link-2\" translate>\r\n <!-- <i class=\"fa fa-times\"></i>&nbsp; -->\r\n <span translate>Reset</span>\r\n </button>\r\n <button *ngIf=\"(isReport == undefined || !isReport)\" type=\"submit\" class=\"btn btn-raised btn-outline-2\"\r\n #UCSearchClick [disabled]=\"!searchBtnReady\">\r\n <i class=\"fa fa-search button-icon-search\"></i>&nbsp;<span class=\"button-text-search\"\r\n translate>Search</span>\r\n </button>\r\n <button *ngIf=\"(isReport != undefined && isReport)\" type=\"submit\" class=\"btn btn-raised btn-outline-2\">\r\n <i class=\"fa ft-download button-icon-search\"></i>&nbsp;<span class=\"button-text-search\"\r\n translate>Generate\r\n Report</span>\r\n </button>\r\n </div>\r\n </div>\r\n <!-- </div> -->\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n <!-- </div>\r\n </div>\r\n </div> -->\r\n <!-- </div> -->\r\n</div>\r\n<!-- // Basic form layout section end -->", styles: [".ucSearch-title{margin:3px}.card-body{margin-top:24px}.form-group{margin-bottom:15px!important}.search-label{color:var(--Black_1, #3A4060);font-size:14px!important}.dds-input{border-radius:7px!important;border:1px solid var(--gray-line, #DFE6E9)!important;background:var(--white-1, #FDFEFF)!important;padding:1.135rem!important;height:calc(1.5rem + 2px)!important;font-size:12px!important}.dds-display-item:after{content:\"\\e929\";font-family:feather;font-size:1rem;display:inline-block;position:absolute;right:5px;top:5px;transform:rotate(90deg)}.dds-list-container{position:absolute;width:100%;z-index:9}.search-input{border-radius:7px!important;border:1px solid var(--gray-line, #DFE6E9)!important;background:var(--white-1, #FDFEFF)!important;width:100%}select.search-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url(\"data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23246CFE' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e\")!important;background-repeat:no-repeat!important;background-position:right 1rem center!important;background-size:1.4em!important}.btn{border-radius:7px;font-size:14px;padding:.275rem 1rem}.btn-link-2{background:none;border:none;color:var(--blue-primary, #246CFE)!important}.btn-link-2:hover{background:var(--light-grey, #F4F8FB)!important;color:var(--blue-primary-darker, #0010F7)!important}.btn-outline-2{border:1px solid var(--blue-primary, #246CFE)!important;background:var(--white, #FDFEFF)!important;color:var(--blue-primary, #246CFE)!important}.btn-outline-2:hover{color:var(--blue-primary-darker, #0010F7)!important;background:var(--light-grey, #F4F8FB)!important;border:1px solid var(--blue-primary-darker, #0010F7)!important}.button-icon-search{font-size:11px;vertical-align:middle;padding-right:8px}.button-text-search{vertical-align:middle}.dropdown-toggle:after{display:inline-block;margin-left:.5em;vertical-align:middle;content:\"\";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i11.NgbCollapse, selector: "[ngbCollapse]", inputs: ["animation", "ngbCollapse", "horizontal"], outputs: ["ngbCollapseChange", "shown", "hidden"], exportAs: ["ngbCollapse"] }, { kind: "directive", type: i11.NgbDropdown, selector: "[ngbDropdown]", inputs: ["autoClose", "dropdownClass", "open", "placement", "popperOptions", "container", "display"], outputs: ["openChange"], exportAs: ["ngbDropdown"] }, { kind: "directive", type: i11.NgbDropdownToggle, selector: "[ngbDropdownToggle]" }, { kind: "directive", type: i11.NgbDropdownMenu, selector: "[ngbDropdownMenu]" }, { kind: "directive", type: i11.NgbDropdownItem, selector: "[ngbDropdownItem]", inputs: ["tabindex", "disabled"] }, { kind: "directive", type: i8.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i8.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i8.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i8.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i8.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i8.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i8.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i8.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i12.UcShowErrorsComponent, selector: "lib-uc-show-errors", inputs: ["control", "submit", "fieldName", "customPattern"] }, { kind: "directive", type: i13.UpperCaseDirective, selector: "input[type=text], input", inputs: ["IsUpperCase"] }, { kind: "directive", type: i14.ValidateDateDirective, selector: "input[type=date], input[type=datetime-local]", inputs: ["warningMsg"] }, { kind: "component", type: i15.ClUclookupgenericComponent, selector: "lib-cl-uclookupgeneric", inputs: ["lookupInput", "enjiForm", "parentForm", "identifier", "notifyUpdateKeyValDict", "lookupKeyValDict"], outputs: ["lookup", "inputtedValue", "callback"] }, { kind: "component", type: i16.UcSubsectionComponent, selector: "lib-ucSubsection", inputs: ["title", "panel", "id", "legacy", "isHidden"], outputs: ["collapse"] }, { kind: "component", type: i17.UcdatepickerComponent, selector: "lib-ucdatepicker", inputs: ["parentForm", "enjiForm", "identifier", "min", "max", "defaultStartDate", "attr", "colorLevelSetting", "confidenceLevel"], outputs: ["change"] }, { kind: "directive", type: i18.NgxCurrencyDirective, selector: "input[currencyMask]", inputs: ["currencyMask", "options"] }, { kind: "directive", type: i19.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "pipe", type: i4.DatePipe, name: "date" }, { kind: "pipe", type: TextSearchPipe, name: "textSearch" }], animations: [
2449
2449
  trigger("changeDivSize", [
2450
2450
  state("initial", style({
2451
2451
  height: "*",
@@ -2461,7 +2461,7 @@ class UCSearchComponent {
2461
2461
  ]),
2462
2462
  ] });
2463
2463
  }
2464
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: UCSearchComponent, decorators: [{
2464
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: UCSearchComponent, decorators: [{
2465
2465
  type: Component,
2466
2466
  args: [{ selector: "lib-UCSearch", providers: [DatePipe, ExportFileService], animations: [
2467
2467
  trigger("changeDivSize", [
@@ -2516,8 +2516,8 @@ const customCurrencyMaskConfig = {
2516
2516
  inputMode: NgxCurrencyInputMode.Natural,
2517
2517
  };
2518
2518
  class UCSearchModule {
2519
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: UCSearchModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2520
- /** @nocollapse */ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.5", ngImport: i0, type: UCSearchModule, declarations: [UCSearchComponent, TextSearchPipe], imports: [CommonModule,
2519
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: UCSearchModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2520
+ /** @nocollapse */ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.6", ngImport: i0, type: UCSearchModule, declarations: [UCSearchComponent, TextSearchPipe], imports: [CommonModule,
2521
2521
  NgbModule,
2522
2522
  FormsModule,
2523
2523
  ReactiveFormsModule,
@@ -2529,7 +2529,7 @@ class UCSearchModule {
2529
2529
  NgbDropdownModule,
2530
2530
  UcdatepickerModule,
2531
2531
  NgxCurrencyDirective, i19.TranslateModule], exports: [UCSearchComponent] });
2532
- /** @nocollapse */ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: UCSearchModule, providers: [
2532
+ /** @nocollapse */ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: UCSearchModule, providers: [
2533
2533
  NgbDropdown,
2534
2534
  UcsearchDatetimeService,
2535
2535
  UcsearchFormService,
@@ -2547,7 +2547,7 @@ class UCSearchModule {
2547
2547
  UcdatepickerModule,
2548
2548
  TranslateModule.forChild()] });
2549
2549
  }
2550
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: UCSearchModule, decorators: [{
2550
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: UCSearchModule, decorators: [{
2551
2551
  type: NgModule,
2552
2552
  args: [{
2553
2553
  declarations: [UCSearchComponent, TextSearchPipe],