@ohioepa/oepa-ui-lib 2.0.0 → 2.0.1
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.
- package/README.md +24 -24
- package/esm2022/lib/account-search-input/account-search.service.mjs +1 -1
- package/esm2022/lib/account-search-modal/account-search-modal.component.mjs +3 -4
- package/esm2022/lib/action-btn/action-btn.component.mjs +3 -3
- package/esm2022/lib/action-btn-modal/action-btn-modal.component.mjs +3 -3
- package/esm2022/lib/comment-modal/comment-modal.component.mjs +3 -3
- package/esm2022/lib/confirmation-modal/confirmation-modal.component.mjs +3 -3
- package/esm2022/lib/date-input/date-input.component.mjs +1 -1
- package/esm2022/lib/date-input-modal/date-input-modal.component.mjs +6 -3
- package/esm2022/lib/datepicker/datepicker.component.mjs +9 -3
- package/esm2022/lib/daterangepicker/daterangepicker.component.mjs +3 -3
- package/esm2022/lib/dual-list-box/dual-list-box.component.mjs +3 -3
- package/esm2022/lib/edoc-attachment/edoc-attachment.component.mjs +3 -3
- package/esm2022/lib/entity/organization-create-modal/organization-create-modal.component.mjs +3 -3
- package/esm2022/lib/entity/organization-search-modal/organization-search-modal.component.mjs +3 -3
- package/esm2022/lib/entity/person-create-modal/person-create-modal.component.mjs +3 -3
- package/esm2022/lib/entity/person-search-modal/person-search-modal.component.mjs +3 -3
- package/esm2022/lib/entity/place-search-modal/place-search-modal.component.mjs +3 -3
- package/esm2022/lib/file-upload/file-upload.component.mjs +3 -3
- package/esm2022/lib/lynx-image-upload/lynx-image-upload.component.mjs +3 -3
- package/esm2022/lib/multi-file-upload/multi-file-upload.component.mjs +3 -3
- package/esm2022/lib/notes-modal/notes-modal.component.mjs +4 -4
- package/esm2022/lib/oepa-error-message/oepa-error-message.component.mjs +3 -3
- package/esm2022/lib/oepa-reference/oepa-reference.service.mjs +10 -2
- package/esm2022/lib/oepa-user-account/oepa-user-account.service.mjs +35 -20
- package/esm2022/lib/params-help-button/params-help.service.mjs +1 -1
- package/esm2022/lib/pin-modal/pin-modal.component.mjs +3 -3
- package/esm2022/lib/server-timeout-modal/server-timeout-modal.component.mjs +3 -3
- package/esm2022/lib/shopping-cart/shopping-cart-view/shopping-cart-view.component.mjs +4 -4
- package/esm2022/lib/table/oepa-table-config.mjs +1 -1
- package/esm2022/lib/table/oepa-table-popover.mjs +1 -1
- package/esm2022/lib/table/p-table/p-table.component.mjs +27 -6
- package/esm2022/lib/table/table-data-cell/table-data-cell.component.mjs +3 -3
- package/esm2022/lib/table/table-header-cell/table-header-cell.component.mjs +3 -3
- package/esm2022/lib/table/table.component.mjs +13 -14
- package/esm2022/lib/template-confirmation-modal/template-confirmation-modal.component.mjs +3 -3
- package/esm2022/lib/timeout-modal/timeout-modal.component.mjs +3 -3
- package/esm2022/lib/util/oepa-http-interceptor.mjs +22 -9
- package/fesm2022/ohioepa-oepa-ui-lib.mjs +161 -97
- package/fesm2022/ohioepa-oepa-ui-lib.mjs.map +1 -1
- package/lib/date-input-modal/date-input-modal.component.d.ts +3 -1
- package/lib/datepicker/datepicker.component.d.ts +5 -1
- package/lib/oepa-reference/oepa-reference.service.d.ts +5 -0
- package/lib/oepa-user-account/oepa-user-account.service.d.ts +3 -1
- package/lib/table/oepa-table-config.d.ts +6 -0
- package/lib/table/oepa-table-popover.d.ts +1 -1
- package/lib/table/p-table/p-table.component.d.ts +4 -0
- package/ohioepa-oepa-ui-lib-2.0.1.tgz +0 -0
- package/package.json +1 -1
- package/ohioepa-oepa-ui-lib-2.0.0.tgz +0 -0
|
@@ -5,7 +5,7 @@ import { CommonModule } from '@angular/common';
|
|
|
5
5
|
import { Observable, Subject, forkJoin, EMPTY, of, throwError } from 'rxjs';
|
|
6
6
|
import { map, mergeMap, catchError, debounceTime, distinctUntilChanged, tap, timeout } from 'rxjs/operators';
|
|
7
7
|
import * as i1 from '@angular/common/http';
|
|
8
|
-
import { HttpHeaders } from '@angular/common/http';
|
|
8
|
+
import { HttpHeaders, HttpParams, HttpUrlEncodingCodec } from '@angular/common/http';
|
|
9
9
|
import * as i1$1 from '@ohioepa/oepa-common-lib';
|
|
10
10
|
import { CommonLibModule } from '@ohioepa/oepa-common-lib';
|
|
11
11
|
import * as i1$2 from '@angular/forms';
|
|
@@ -26,7 +26,7 @@ import * as i7$1 from 'ngx-bootstrap/pagination';
|
|
|
26
26
|
import { PaginationModule } from 'ngx-bootstrap/pagination';
|
|
27
27
|
import * as i8 from 'ngx-bootstrap/popover';
|
|
28
28
|
import { PopoverModule } from 'ngx-bootstrap/popover';
|
|
29
|
-
import * as
|
|
29
|
+
import * as i8$1 from 'ngx-bootstrap/tooltip';
|
|
30
30
|
import { TooltipModule } from 'ngx-bootstrap/tooltip';
|
|
31
31
|
import * as i6$1 from 'ngx-bootstrap/typeahead';
|
|
32
32
|
import { TypeaheadModule } from 'ngx-bootstrap/typeahead';
|
|
@@ -387,6 +387,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
387
387
|
|
|
388
388
|
class DatepickerComponent {
|
|
389
389
|
idService;
|
|
390
|
+
/**
|
|
391
|
+
* Exposes the input element's id for parent label association.
|
|
392
|
+
*/
|
|
393
|
+
get inputId() {
|
|
394
|
+
return this.componentId + '_Input';
|
|
395
|
+
}
|
|
390
396
|
componentId = 'OepaDatepickerComponent';
|
|
391
397
|
group;
|
|
392
398
|
field;
|
|
@@ -489,11 +495,11 @@ class DatepickerComponent {
|
|
|
489
495
|
}
|
|
490
496
|
}
|
|
491
497
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DatepickerComponent, deps: [{ token: i1$1.OepaComponentIdService }], target: i0.ɵɵFactoryTarget.Component });
|
|
492
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DatepickerComponent, selector: "oepa-datepicker", inputs: { group: "group", field: "field", bsConfig: "bsConfig", showValidation: "showValidation", placement: "placement", tableIdx: "tableIdx", small: "small" }, usesOnChanges: true, ngImport: i0, template: "<div [formGroup]=\"group\">\n <div>\n
|
|
498
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DatepickerComponent, selector: "oepa-datepicker", inputs: { group: "group", field: "field", bsConfig: "bsConfig", showValidation: "showValidation", placement: "placement", tableIdx: "tableIdx", small: "small" }, exportAs: ["oepa-datepicker"], usesOnChanges: true, ngImport: i0, template: "\n<div [formGroup]=\"group\">\n <div>\n <div class=\"input-group\">\n <!-- a label (hidden or not) should be provided by the parent component to ensure accessibility -->\n <input\n [id]=\"componentId+'_Input'\"\n class=\"form-control\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n #dp=\"bsDatepicker\"\n bsDatepicker\n [formControlName]=\"field\"\n [bsConfig]=\"bsConfig\"\n [isDisabled]=\"group.get('field')?.disabled || false\"\n [placement]=\"getPlacement() || 'bottom'\"\n [ngClass]=\"{'is-invalid':showValidation && !checkValidity()}\"\n (bsValueChange)=\"onValueChange($event)\"\n [attr.aria-describedby]=\"(showValidation && group.get(field)?.invalid) ? (componentId + '_Error') : null\"\n [attr.aria-invalid]=\"showValidation && !checkValidity() ? 'true' : 'false'\"\n autocomplete=\"off\"\n >\n <div class=\"btn-group\" role=\"group\" aria-label=\"Datepicker controls\">\n <button\n type=\"button\"\n class=\"btn btn-primary\"\n (click)=\"dp.toggle()\"\n [id]=\"componentId+'_ToggleBtn'\"\n [disabled]=\"group.get(field)?.disabled\"\n aria-label=\"Open calendar\"\n >\n <i class=\"bi bi-calendar3\" aria-hidden=\"true\"></i>\n </button>\n <button\n type=\"button\"\n class=\"btn btn-primary\"\n (click)=\"clearDate()\"\n [id]=\"componentId+'_ClearBtn'\"\n [disabled]=\"group.get(field)?.disabled\"\n aria-label=\"Clear date\"\n >\n <i class=\"bi bi-x-lg\" aria-hidden=\"true\"></i>\n </button>\n </div>\n </div>\n <small\n class=\"invalid-feedback d-block\"\n *ngIf=\"showValidation && group.get(field)?.hasError('required')\"\n [id]=\"componentId+'_Error'\"\n role=\"alert\"\n aria-live=\"assertive\"\n >\n Date is required\n </small>\n <small\n class=\"invalid-feedback d-block\"\n *ngIf=\"showValidation && group.get(field)?.invalid && !group.get(field)?.hasError('required')\"\n [id]=\"componentId+'_Error'\"\n role=\"alert\"\n aria-live=\"assertive\"\n >\n Date is out of range\n </small>\n </div>\n</div>\n", styles: ["::ng-deep .bs-datepicker-head,::ng-deep .bs-datepicker-navigation-view,::ng-deep .bs-datepicker-navigation-view *{text-align:left!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.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: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i4.BsDatepickerDirective, selector: "[bsDatepicker]", inputs: ["placement", "triggers", "outsideClick", "container", "outsideEsc", "isDisabled", "minDate", "maxDate", "ignoreMinMaxErrors", "minMode", "daysDisabled", "datesDisabled", "datesEnabled", "dateCustomClasses", "dateTooltipTexts", "isOpen", "bsValue", "bsConfig"], outputs: ["onShown", "onHidden", "bsValueChange"], exportAs: ["bsDatepicker"] }, { kind: "directive", type: i4.BsDatepickerInputDirective, selector: "input[bsDatepicker]" }] });
|
|
493
499
|
}
|
|
494
500
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DatepickerComponent, decorators: [{
|
|
495
501
|
type: Component,
|
|
496
|
-
args: [{ selector: 'oepa-datepicker', template: "<div [formGroup]=\"group\">\n <div>\n
|
|
502
|
+
args: [{ selector: 'oepa-datepicker', exportAs: 'oepa-datepicker', template: "\n<div [formGroup]=\"group\">\n <div>\n <div class=\"input-group\">\n <!-- a label (hidden or not) should be provided by the parent component to ensure accessibility -->\n <input\n [id]=\"componentId+'_Input'\"\n class=\"form-control\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n #dp=\"bsDatepicker\"\n bsDatepicker\n [formControlName]=\"field\"\n [bsConfig]=\"bsConfig\"\n [isDisabled]=\"group.get('field')?.disabled || false\"\n [placement]=\"getPlacement() || 'bottom'\"\n [ngClass]=\"{'is-invalid':showValidation && !checkValidity()}\"\n (bsValueChange)=\"onValueChange($event)\"\n [attr.aria-describedby]=\"(showValidation && group.get(field)?.invalid) ? (componentId + '_Error') : null\"\n [attr.aria-invalid]=\"showValidation && !checkValidity() ? 'true' : 'false'\"\n autocomplete=\"off\"\n >\n <div class=\"btn-group\" role=\"group\" aria-label=\"Datepicker controls\">\n <button\n type=\"button\"\n class=\"btn btn-primary\"\n (click)=\"dp.toggle()\"\n [id]=\"componentId+'_ToggleBtn'\"\n [disabled]=\"group.get(field)?.disabled\"\n aria-label=\"Open calendar\"\n >\n <i class=\"bi bi-calendar3\" aria-hidden=\"true\"></i>\n </button>\n <button\n type=\"button\"\n class=\"btn btn-primary\"\n (click)=\"clearDate()\"\n [id]=\"componentId+'_ClearBtn'\"\n [disabled]=\"group.get(field)?.disabled\"\n aria-label=\"Clear date\"\n >\n <i class=\"bi bi-x-lg\" aria-hidden=\"true\"></i>\n </button>\n </div>\n </div>\n <small\n class=\"invalid-feedback d-block\"\n *ngIf=\"showValidation && group.get(field)?.hasError('required')\"\n [id]=\"componentId+'_Error'\"\n role=\"alert\"\n aria-live=\"assertive\"\n >\n Date is required\n </small>\n <small\n class=\"invalid-feedback d-block\"\n *ngIf=\"showValidation && group.get(field)?.invalid && !group.get(field)?.hasError('required')\"\n [id]=\"componentId+'_Error'\"\n role=\"alert\"\n aria-live=\"assertive\"\n >\n Date is out of range\n </small>\n </div>\n</div>\n", styles: ["::ng-deep .bs-datepicker-head,::ng-deep .bs-datepicker-navigation-view,::ng-deep .bs-datepicker-navigation-view *{text-align:left!important}\n"] }]
|
|
497
503
|
}], ctorParameters: () => [{ type: i1$1.OepaComponentIdService }], propDecorators: { group: [{
|
|
498
504
|
type: Input
|
|
499
505
|
}], field: [{
|
|
@@ -554,11 +560,11 @@ class ActionBtnComponent {
|
|
|
554
560
|
return this.btnId + '_ActionBtn';
|
|
555
561
|
}
|
|
556
562
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ActionBtnComponent, deps: [{ token: i1$3.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
557
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ActionBtnComponent, selector: "oepa-action-btn", inputs: { label: "label", btnId: "btnId", data: "data", actions: "actions", normalSize: "normalSize", dropup: "dropup" }, outputs: { actionClicked: "actionClicked" }, ngImport: i0, template: "<div *ngIf=\"actions && actions.length > 0\" class=\"btn-group\" dropdown [dropup]=\"dropup\">\n <button dropdownToggle type=\"button\" class=\"btn btn-primary dropdown-toggle\" [ngClass]=\"{ 'btn-sm' : !normalSize }\"\n [id]=\"btnId+'_ActionBtn'\">\n <span *ngIf=\"busy\" class=\"spinner-border text-primary\" role=\"status\"></span>\n {{label}} \n <span class=\"caret\"></span>\n </button>\n\n <ul *dropdownMenu class=\"dropdown-menu dropdown-menu-right\" role=\"menu\">\n <li *ngFor=\"let action of actions; let i = index;\" role=\"menuitem\">\n <a *ngIf=\"!busy\" class=\"dropdown-item\" (click)=\"onActionClicked(action)\" [id]=\"btnId+'_ActionLink_'+i\">\n <i ngClass=\"{{action.className || ''}}\"></i> {{action.title}}\n </a>\n </li>\n </ul>\n</div> \n<!-- display disabled button if no actions are available -->\n<div *ngIf=\"!actions || actions.length === 0\">\n <button type=\"button\" class=\"btn btn-primary\" [ngClass]=\"{ 'btn-sm' : !normalSize }\" [id]=\"btnId+'_ActionBtn'\" disabled>\n N/A \n </button>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.BsDropdownMenuDirective, selector: "[bsDropdownMenu],[dropdownMenu]", exportAs: ["bs-dropdown-menu"] }, { kind: "directive", type: i3.BsDropdownToggleDirective, selector: "[bsDropdownToggle],[dropdownToggle]", exportAs: ["bs-dropdown-toggle"] }, { kind: "directive", type: i3.BsDropdownDirective, selector: "[bsDropdown], [dropdown]", inputs: ["placement", "triggers", "container", "dropup", "autoClose", "isAnimated", "insideClick", "isDisabled", "isOpen"], outputs: ["isOpenChange", "onShown", "onHidden"], exportAs: ["bs-dropdown"] }] });
|
|
563
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ActionBtnComponent, selector: "oepa-action-btn", inputs: { label: "label", btnId: "btnId", data: "data", actions: "actions", normalSize: "normalSize", dropup: "dropup" }, outputs: { actionClicked: "actionClicked" }, ngImport: i0, template: "<div *ngIf=\"actions && actions.length > 0\" class=\"btn-group\" dropdown [dropup]=\"dropup\">\n <button dropdownToggle type=\"button\" class=\"btn btn-primary dropdown-toggle\" [ngClass]=\"{ 'btn-sm' : !normalSize }\"\n [id]=\"btnId+'_ActionBtn'\" aria-label=\"Action Button\">\n <span *ngIf=\"busy\" class=\"spinner-border text-primary\" role=\"status\"></span>\n {{label}} \n <span class=\"caret\"></span>\n </button>\n\n <ul *dropdownMenu class=\"dropdown-menu dropdown-menu-right\" role=\"menu\">\n <li *ngFor=\"let action of actions; let i = index;\" role=\"menuitem\">\n <a *ngIf=\"!busy\" class=\"dropdown-item\" (click)=\"onActionClicked(action)\" [id]=\"btnId+'_ActionLink_'+i\" [attr.aria-label]=\"action.title\">\n <i ngClass=\"{{action.className || ''}}\"></i> {{action.title}}\n </a>\n </li>\n </ul>\n</div> \n<!-- display disabled button if no actions are available -->\n<div *ngIf=\"!actions || actions.length === 0\">\n <button type=\"button\" class=\"btn btn-primary\" [ngClass]=\"{ 'btn-sm' : !normalSize }\" [id]=\"btnId+'_ActionBtn'\" disabled aria-label=\"N/A\">\n N/A \n </button>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.BsDropdownMenuDirective, selector: "[bsDropdownMenu],[dropdownMenu]", exportAs: ["bs-dropdown-menu"] }, { kind: "directive", type: i3.BsDropdownToggleDirective, selector: "[bsDropdownToggle],[dropdownToggle]", exportAs: ["bs-dropdown-toggle"] }, { kind: "directive", type: i3.BsDropdownDirective, selector: "[bsDropdown], [dropdown]", inputs: ["placement", "triggers", "container", "dropup", "autoClose", "isAnimated", "insideClick", "isDisabled", "isOpen"], outputs: ["isOpenChange", "onShown", "onHidden"], exportAs: ["bs-dropdown"] }] });
|
|
558
564
|
}
|
|
559
565
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ActionBtnComponent, decorators: [{
|
|
560
566
|
type: Component,
|
|
561
|
-
args: [{ selector: 'oepa-action-btn', template: "<div *ngIf=\"actions && actions.length > 0\" class=\"btn-group\" dropdown [dropup]=\"dropup\">\n <button dropdownToggle type=\"button\" class=\"btn btn-primary dropdown-toggle\" [ngClass]=\"{ 'btn-sm' : !normalSize }\"\n [id]=\"btnId+'_ActionBtn'\">\n <span *ngIf=\"busy\" class=\"spinner-border text-primary\" role=\"status\"></span>\n {{label}} \n <span class=\"caret\"></span>\n </button>\n\n <ul *dropdownMenu class=\"dropdown-menu dropdown-menu-right\" role=\"menu\">\n <li *ngFor=\"let action of actions; let i = index;\" role=\"menuitem\">\n <a *ngIf=\"!busy\" class=\"dropdown-item\" (click)=\"onActionClicked(action)\" [id]=\"btnId+'_ActionLink_'+i\">\n <i ngClass=\"{{action.className || ''}}\"></i> {{action.title}}\n </a>\n </li>\n </ul>\n</div> \n<!-- display disabled button if no actions are available -->\n<div *ngIf=\"!actions || actions.length === 0\">\n <button type=\"button\" class=\"btn btn-primary\" [ngClass]=\"{ 'btn-sm' : !normalSize }\" [id]=\"btnId+'_ActionBtn'\" disabled>\n N/A \n </button>\n</div>" }]
|
|
567
|
+
args: [{ selector: 'oepa-action-btn', template: "<div *ngIf=\"actions && actions.length > 0\" class=\"btn-group\" dropdown [dropup]=\"dropup\">\n <button dropdownToggle type=\"button\" class=\"btn btn-primary dropdown-toggle\" [ngClass]=\"{ 'btn-sm' : !normalSize }\"\n [id]=\"btnId+'_ActionBtn'\" aria-label=\"Action Button\">\n <span *ngIf=\"busy\" class=\"spinner-border text-primary\" role=\"status\"></span>\n {{label}} \n <span class=\"caret\"></span>\n </button>\n\n <ul *dropdownMenu class=\"dropdown-menu dropdown-menu-right\" role=\"menu\">\n <li *ngFor=\"let action of actions; let i = index;\" role=\"menuitem\">\n <a *ngIf=\"!busy\" class=\"dropdown-item\" (click)=\"onActionClicked(action)\" [id]=\"btnId+'_ActionLink_'+i\" [attr.aria-label]=\"action.title\">\n <i ngClass=\"{{action.className || ''}}\"></i> {{action.title}}\n </a>\n </li>\n </ul>\n</div> \n<!-- display disabled button if no actions are available -->\n<div *ngIf=\"!actions || actions.length === 0\">\n <button type=\"button\" class=\"btn btn-primary\" [ngClass]=\"{ 'btn-sm' : !normalSize }\" [id]=\"btnId+'_ActionBtn'\" disabled aria-label=\"N/A\">\n N/A \n </button>\n</div>" }]
|
|
562
568
|
}], ctorParameters: () => [{ type: i1$3.DomSanitizer }], propDecorators: { label: [{
|
|
563
569
|
type: Input
|
|
564
570
|
}], btnId: [{
|
|
@@ -584,11 +590,11 @@ class ActionBtnModalComponent {
|
|
|
584
590
|
ngOnInit() {
|
|
585
591
|
}
|
|
586
592
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ActionBtnModalComponent, deps: [{ token: i2$1.BsModalRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
587
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ActionBtnModalComponent, selector: "oepa-action-btn-modal", ngImport: i0, template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Action Button Test</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n </button>\n</div>\n<div class=\"modal-body\">\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <oepa-action-btn [actions]=\"actions\"></oepa-action-btn>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <div class=\"btn-group\" dropdown placement=\"bottom right\">\n <button id=\"button-basic\" dropdownToggle type=\"button\" class=\"btn btn-primary dropdown-toggle\"\n aria-controls=\"dropdown-basic\">\n Button dropdown <span class=\"caret\"></span>\n </button>\n <ul id=\"dropdown-basic\" *dropdownMenu class=\"dropdown-menu\" role=\"menu\"\n aria-labelledby=\"button-basic\">\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Action</a></li>\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Another action</a></li>\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Something else here</a></li>\n <li class=\"divider dropdown-divider\"></li>\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Separated link</a>\n </li>\n </ul>\n </div>\n </div>\n </div>\n </div>\n</div>\n<div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"bsModalRef.hide()\">Close</button>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i3.BsDropdownMenuDirective, selector: "[bsDropdownMenu],[dropdownMenu]", exportAs: ["bs-dropdown-menu"] }, { kind: "directive", type: i3.BsDropdownToggleDirective, selector: "[bsDropdownToggle],[dropdownToggle]", exportAs: ["bs-dropdown-toggle"] }, { kind: "directive", type: i3.BsDropdownDirective, selector: "[bsDropdown], [dropdown]", inputs: ["placement", "triggers", "container", "dropup", "autoClose", "isAnimated", "insideClick", "isDisabled", "isOpen"], outputs: ["isOpenChange", "onShown", "onHidden"], exportAs: ["bs-dropdown"] }, { kind: "component", type: ActionBtnComponent, selector: "oepa-action-btn", inputs: ["label", "btnId", "data", "actions", "normalSize", "dropup"], outputs: ["actionClicked"] }] });
|
|
593
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ActionBtnModalComponent, selector: "oepa-action-btn-modal", ngImport: i0, template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Action Button Test</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n </button>\n</div>\n<div class=\"modal-body\">\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <oepa-action-btn [actions]=\"actions\"></oepa-action-btn>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <div class=\"btn-group\" dropdown placement=\"bottom right\">\n <button id=\"button-basic\" dropdownToggle type=\"button\" class=\"btn btn-primary dropdown-toggle\"\n aria-controls=\"dropdown-basic\" aria-label=\"Button dropdown\">\n Button dropdown <span class=\"caret\"></span>\n </button>\n <ul id=\"dropdown-basic\" *dropdownMenu class=\"dropdown-menu\" role=\"menu\"\n aria-labelledby=\"button-basic\">\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Action</a></li>\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Another action</a></li>\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Something else here</a></li>\n <li class=\"divider dropdown-divider\"></li>\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Separated link</a>\n </li>\n </ul>\n </div>\n </div>\n </div>\n </div>\n</div>\n<div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"bsModalRef.hide()\" aria-label=\"Close\">Close</button>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i3.BsDropdownMenuDirective, selector: "[bsDropdownMenu],[dropdownMenu]", exportAs: ["bs-dropdown-menu"] }, { kind: "directive", type: i3.BsDropdownToggleDirective, selector: "[bsDropdownToggle],[dropdownToggle]", exportAs: ["bs-dropdown-toggle"] }, { kind: "directive", type: i3.BsDropdownDirective, selector: "[bsDropdown], [dropdown]", inputs: ["placement", "triggers", "container", "dropup", "autoClose", "isAnimated", "insideClick", "isDisabled", "isOpen"], outputs: ["isOpenChange", "onShown", "onHidden"], exportAs: ["bs-dropdown"] }, { kind: "component", type: ActionBtnComponent, selector: "oepa-action-btn", inputs: ["label", "btnId", "data", "actions", "normalSize", "dropup"], outputs: ["actionClicked"] }] });
|
|
588
594
|
}
|
|
589
595
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ActionBtnModalComponent, decorators: [{
|
|
590
596
|
type: Component,
|
|
591
|
-
args: [{ selector: 'oepa-action-btn-modal', template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Action Button Test</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n </button>\n</div>\n<div class=\"modal-body\">\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <oepa-action-btn [actions]=\"actions\"></oepa-action-btn>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <div class=\"btn-group\" dropdown placement=\"bottom right\">\n <button id=\"button-basic\" dropdownToggle type=\"button\" class=\"btn btn-primary dropdown-toggle\"\n aria-controls=\"dropdown-basic\">\n Button dropdown <span class=\"caret\"></span>\n </button>\n <ul id=\"dropdown-basic\" *dropdownMenu class=\"dropdown-menu\" role=\"menu\"\n aria-labelledby=\"button-basic\">\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Action</a></li>\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Another action</a></li>\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Something else here</a></li>\n <li class=\"divider dropdown-divider\"></li>\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Separated link</a>\n </li>\n </ul>\n </div>\n </div>\n </div>\n </div>\n</div>\n<div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"bsModalRef.hide()\">Close</button>\n</div>" }]
|
|
597
|
+
args: [{ selector: 'oepa-action-btn-modal', template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Action Button Test</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n </button>\n</div>\n<div class=\"modal-body\">\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <oepa-action-btn [actions]=\"actions\"></oepa-action-btn>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <div class=\"btn-group\" dropdown placement=\"bottom right\">\n <button id=\"button-basic\" dropdownToggle type=\"button\" class=\"btn btn-primary dropdown-toggle\"\n aria-controls=\"dropdown-basic\" aria-label=\"Button dropdown\">\n Button dropdown <span class=\"caret\"></span>\n </button>\n <ul id=\"dropdown-basic\" *dropdownMenu class=\"dropdown-menu\" role=\"menu\"\n aria-labelledby=\"button-basic\">\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Action</a></li>\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Another action</a></li>\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Something else here</a></li>\n <li class=\"divider dropdown-divider\"></li>\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Separated link</a>\n </li>\n </ul>\n </div>\n </div>\n </div>\n </div>\n</div>\n<div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"bsModalRef.hide()\" aria-label=\"Close\">Close</button>\n</div>" }]
|
|
592
598
|
}], ctorParameters: () => [{ type: i2$1.BsModalRef }] });
|
|
593
599
|
|
|
594
600
|
class CheckboxComponent {
|
|
@@ -654,11 +660,11 @@ class CommentModalComponent {
|
|
|
654
660
|
this.bsModalRef.hide();
|
|
655
661
|
}
|
|
656
662
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CommentModalComponent, deps: [{ token: i1$2.FormBuilder }, { token: i2$1.BsModalRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
657
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CommentModalComponent, selector: "oepa-comment-modal", inputs: { modalTitle: "modalTitle", commentsLabel: "commentsLabel", processBtnLabel: "processBtnLabel" }, outputs: { onProcessComment: "onProcessComment", onCancel: "onCancel" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h3 class=\"modal-title\">{{modalTitle}}</h3>\n</div>\n\n<div class=\"modal-body\">\n <div [formGroup]=\"modalForm\" class=\"form-group\">\n <label>{{commentsLabel}}</label>\n <textarea class=\"form-control\" formControlName=\"commentText\" id=\"CommentInput\" rows=\"4\" maxlength=\"2000\"></textarea>\n </div>\n</div>\n\n<div class=\"modal-footer\">\n <button class=\"btn btn-primary mr-1\" type=\"button\" id=\"ProcessCommentBtn\" (click)=\"processComment()\">{{processBtnLabel}}</button>\n <button class=\"btn btn-primary mr-1\" type=\"button\" id=\"CencelCommentBtn\" (click)=\"cancel()\">Cancel</button>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$2.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: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
663
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CommentModalComponent, selector: "oepa-comment-modal", inputs: { modalTitle: "modalTitle", commentsLabel: "commentsLabel", processBtnLabel: "processBtnLabel" }, outputs: { onProcessComment: "onProcessComment", onCancel: "onCancel" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h3 class=\"modal-title\">{{modalTitle}}</h3>\n</div>\n\n<div class=\"modal-body\">\n <div [formGroup]=\"modalForm\" class=\"form-group\">\n <label for=\"CommentInput\">{{commentsLabel}}</label>\n <textarea class=\"form-control\" formControlName=\"commentText\" id=\"CommentInput\" rows=\"4\" maxlength=\"2000\"></textarea>\n </div>\n</div>\n\n<div class=\"modal-footer\">\n <button class=\"btn btn-primary mr-1\" type=\"button\" id=\"ProcessCommentBtn\" (click)=\"processComment()\" [attr.aria-label]=\"processBtnLabel\">{{processBtnLabel}}</button>\n <button class=\"btn btn-primary mr-1\" type=\"button\" id=\"CencelCommentBtn\" (click)=\"cancel()\" aria-label=\"Cancel\">Cancel</button>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$2.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: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
658
664
|
}
|
|
659
665
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CommentModalComponent, decorators: [{
|
|
660
666
|
type: Component,
|
|
661
|
-
args: [{ selector: 'oepa-comment-modal', template: "<div class=\"modal-header\">\n <h3 class=\"modal-title\">{{modalTitle}}</h3>\n</div>\n\n<div class=\"modal-body\">\n <div [formGroup]=\"modalForm\" class=\"form-group\">\n <label>{{commentsLabel}}</label>\n <textarea class=\"form-control\" formControlName=\"commentText\" id=\"CommentInput\" rows=\"4\" maxlength=\"2000\"></textarea>\n </div>\n</div>\n\n<div class=\"modal-footer\">\n <button class=\"btn btn-primary mr-1\" type=\"button\" id=\"ProcessCommentBtn\" (click)=\"processComment()\">{{processBtnLabel}}</button>\n <button class=\"btn btn-primary mr-1\" type=\"button\" id=\"CencelCommentBtn\" (click)=\"cancel()\">Cancel</button>\n</div>\n" }]
|
|
667
|
+
args: [{ selector: 'oepa-comment-modal', template: "<div class=\"modal-header\">\n <h3 class=\"modal-title\">{{modalTitle}}</h3>\n</div>\n\n<div class=\"modal-body\">\n <div [formGroup]=\"modalForm\" class=\"form-group\">\n <label for=\"CommentInput\">{{commentsLabel}}</label>\n <textarea class=\"form-control\" formControlName=\"commentText\" id=\"CommentInput\" rows=\"4\" maxlength=\"2000\"></textarea>\n </div>\n</div>\n\n<div class=\"modal-footer\">\n <button class=\"btn btn-primary mr-1\" type=\"button\" id=\"ProcessCommentBtn\" (click)=\"processComment()\" [attr.aria-label]=\"processBtnLabel\">{{processBtnLabel}}</button>\n <button class=\"btn btn-primary mr-1\" type=\"button\" id=\"CencelCommentBtn\" (click)=\"cancel()\" aria-label=\"Cancel\">Cancel</button>\n</div>\n" }]
|
|
662
668
|
}], ctorParameters: () => [{ type: i1$2.FormBuilder }, { type: i2$1.BsModalRef }], propDecorators: { modalTitle: [{
|
|
663
669
|
type: Input
|
|
664
670
|
}], commentsLabel: [{
|
|
@@ -1702,7 +1708,7 @@ class TableComponent {
|
|
|
1702
1708
|
toggleRowSelection(row) {
|
|
1703
1709
|
const selectedRows = [];
|
|
1704
1710
|
row.selected = !row.selected;
|
|
1705
|
-
this.
|
|
1711
|
+
this.rows.forEach((dr) => {
|
|
1706
1712
|
if (row.privateId === dr.privateId) {
|
|
1707
1713
|
dr.selected = row.selected;
|
|
1708
1714
|
}
|
|
@@ -1820,11 +1826,11 @@ class TableComponent {
|
|
|
1820
1826
|
this.customBtnClicked.emit();
|
|
1821
1827
|
}
|
|
1822
1828
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TableComponent, deps: [{ token: i1$3.DomSanitizer }, { token: TableService }, { token: TableExportService }, { token: i1$1.OepaFileUtilService }], target: i0.ɵɵFactoryTarget.Component });
|
|
1823
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TableComponent, selector: "oepa-table", inputs: { tableId: "tableId", config: "config", complexHeader: "complexHeader", header: "header", customBtnLabel: "customBtnLabel", customBtnVisible: "customBtnVisible", customBtnEnabled: "customBtnEnabled", data: "data", totalRow: "totalRow" }, outputs: { cellClicked: "cellClicked", actionClicked: "actionClicked", rowSelected: "rowSelected", customBtnClicked: "customBtnClicked" }, ngImport: i0, template: "<!-- Unhide select input - only visible if one or more columns are hidden -->\n\n<form *ngIf=\"hiddenColumns.length > 0\">\n <div class=\"row mb-2\">\n <label class=\"col-sm-2 col-form-label\">Show Hidden Columns:</label>\n <div class=\"col-sm-4\">\n <select class=\"form-select\" (change)=\"unhideColumn($any($event).target.value)\" [id]=\"tableId+'_UnhideColumnSelect'\">\n <option value=\"\">Choose a column</option>\n <option *ngFor=\"let col of hiddenColumns\" [value]=\"col.id\">{{col.title}}</option>\n </select>\n </div>\n </div>\n</form>\n<!-- This is the table -->\n<div ngClass=\"{{config.divClassName || ''}}\" >\n<table *ngIf=\"!config.hideTable\" class=\"table dataTable\" ngClass=\"{{config.className || ''}}\" role=\"grid\" style=\"width: 100%;\">\n\n<!-- This is the table header -->\n<thead>\n <!-- There may be multiple header rows -->\n <tr *ngFor=\"let hdr of headerRows; let hr=index;\" role=\"row\">\n <!-- Details indicator column (if data has details) -->\n <th *ngIf=\"dataHasDetails && hr === 0\" [rowSpan]=\"headerRows.length\" class=\"detail-indicator-col\">\n <span>\n <i (click)=\"toggleAllDetails()\" [id]=\"tableId+'_ShowAllDetailsLink'\" class=\"bi\" [ngClass]=\"{'bi-chevron-down': showAllDetails, 'bi-chevron-right': !showAllDetails}\"\n [tooltip]=\"(showAllDetails ? 'Hide' : 'Show') + ' details for all rows'\" placement=\"right\">\n </i>\n </span>\n </th>\n <ng-template ngFor let-column [ngForOf]=\"hdr.columns\" let-c=\"index\">\n <!-- Header cell -->\n <th *ngIf=\"!column.hidden\" ngClass=\"{{column.className || ''}}\" [colSpan]=\"column.colspan || 1\" [rowSpan]=\"column.rowspan || 1\">\n <!-- Select all Rows Checkbox -->\n <div class=\"text-center\">\n <input *ngIf=\"column.selectColumn\" type=\"checkbox\" [checked]=\"allRowsSelected\" (change)=\"toggleAllRowsSelection()\">\n\n <!-- Header cell text with sort capability (if specified) -->\n <span [oepaTableSorting]=\"true\" [column]=\"column\" [tableId]=\"tableId\" (sortChanged)=\"onSortChanged($event)\" [id]=\"tableId+'_SortColumnLink_'+column.id\">\n <span *ngIf=\"column.sort\"><i class=\"pull-left bi\" [ngClass]=\"{'bi-chevron-down': column.sort === 'desc', 'bi-chevron-up': column.sort === 'asc'}\"></i>\n <sup *ngIf=\"column?.sortIndex || 0 > 1\">{{column.sortIndex}}</sup></span>\n {{column.title}}\n </span>\n <!-- button to allow column to be hidden (if specified) -->\n <button *ngIf=\"column.hidden === false\" type=\"button\" class=\"btn-close float-end\" aria-label=\"Hide\" (click)=\"hideColumn(column)\"\n [id]=\"tableId+'_HideColumnLink'+'_'+column.id\">\n </button>\n\n </div>\n <!-- column filter (if specified) -->\n <div *ngIf=\"((rows && rows.length > 0) || !noFilters()) && column.filterable\" >\n <input [oepaTableFiltering]=\"{ filterString: '', columnId: column.id }\" [tableId]=\"tableId\" class=\"form-control input-sm\" (tableChanged)=\"onFilterChanged($event)\"\n [id]=\"tableId+'_FilterColumn_'+column.id\" />\n </div>\n </th>\n </ng-template>\n </tr>\n</thead>\n\n<!-- This is the table body -->\n<tbody>\n <ng-template ngFor let-row [ngForOf]=\"rows\" let-r=\"index\">\n <!-- Data Row -->\n <tr>\n <td *ngIf=\"dataHasDetails\">\n <!-- Detail icon (if specified) -->\n <span *ngIf=\"row.showDetail === true || row.showDetail === false\">\n <i *ngIf=\"row.detailIconClassName\" [ngClass]=\"row.detailIconClassName\"></i>\n <i (click)=\"toggleRowDetail(row)\" [id]=\"tableId+'_ShowDetailLink_'+r\" class=\"bi\" [ngClass]=\"{'bi-chevron-down': row.showDetail, 'bi-chevron-right': !row.showDetail}\"\n [tooltip]=\"(row.showDetail ? 'Hide' : 'Show') + ' details for this row'\" placement=\"right\">\n </i>\n </span>\n </td>\n <!-- If row is a divider, it spans the whole table -->\n <!-- <td *ngIf=\"row.isDivider\" [colSpan]=\"visibleColumnCount + (dataHasDetails ? 1 : 0)\" [ngClass]=\"row.dividerClassName || 'oepa-table-gray'\"> </td> -->\n <!-- Data Rows -->\n <ng-template *ngIf=\"!row.isDivider\" ngFor let-col [ngForOf]=\"dataColumns\" let-i=\"index\">\n <td *ngIf=\"!col.hidden && (row|cellColspan:col) > 0\" ngClass=\"{{row|cellClassname:col || ''}}\" [colSpan]=\"row|cellColspan:col\">\n <!-- Data Cell -->\n <div *ngIf=\"!col.actionColumn && !col.selectColumn && !col.singleSelectColumn\">\n <!-- Template for popover 1 -->\n <ng-template #popoverTemplate>\n <div *ngIf=\"row.popover\">\n <cml-template [templateInfo]=\"row.popover.content\"></cml-template>\n </div>\n </ng-template>\n <!-- Popover 1 icon (if specified) -->\n <span *ngIf=\"row.popover && i === (row.popoverColumnIndex || 0) && row.popover\" tabindex=\"0\" [popoverTitle]=\"row.popover.title\" [popover]=\"popoverTemplate\"\n [containerClass]=\"row.popover.containerClass\" placement=\"right\" [triggers]=\"row.popover.trigger || 'mouseenter:mouseleave'\">\n <i [ngClass]=\"row.popover.className\" [id]=\"tableId+'_PopoverLink_'+r\"></i>\n </span>\n\n <!-- Template for popover 2 -->\n <ng-template #popover2Template>\n <div *ngIf=\"row.popover2\">\n <cml-template [templateInfo]=\"row.popover2.content\"></cml-template>\n </div>\n </ng-template>\n <!-- Popover 2 icon (if specified) -->\n <span *ngIf=\"i === (row.popover2ColumnIndex || 0) && row.popover2\" tabindex=\"0\" [popoverTitle]=\"row.popover2.title\" [popover]=\"popover2Template\"\n [containerClass]=\"row.popover2.containerClass\" placement=\"right\" [triggers]=\"row.popover2.trigger || 'mouseenter:mouseleave'\">\n <i [ngClass]=\"row.popover2.className\" [id]=\"tableId+'_Popover2Link_'+r\"></i>\n </span>\n\n <!-- Template for popover 3 -->\n <ng-template #popover3Template>\n <div *ngIf=\"row.popover3\">\n <cml-template [templateInfo]=\"row.popover3.content\"></cml-template>\n </div>\n </ng-template>\n <!-- Popover 3 icon (if specified) -->\n <span *ngIf=\"i === (row.popover3ColumnIndex || 0) && row.popover3\" tabindex=\"0\" [popoverTitle]=\"row.popover3.title\" [popover]=\"popover3Template\"\n [containerClass]=\"row.popover3.containerClass\" placement=\"right\" [triggers]=\"row.popover3.trigger || 'mouseenter:mouseleave'\">\n <i [ngClass]=\"row.popover3.className\" [id]=\"tableId+'_Popover3Link_'+r\"></i>\n </span>\n\n \n <!-- <div *ngIf=\"row|cellInnerHTML:col\" [innerHTML]=\"row|cellInnerHTML:col\"></div>\n <span *ngIf=\"!(row|cellInnerHTML:col)\">{{row|cellValue:col}}</span> -->\n\n <!-- If col is hyperlink, display data as a hyperlink -->\n <a *ngIf=\"col.hyperlink\" href=\"javascript:void(0);\" (click)=\"cellClick(row, col.id)\" [id]=\"tableId+'_CellClick_'+r+'_'+i\">\n <span *ngIf=\"!(row|cellInnerHTML:col)\">\n <i [ngClass]=\"row|cellIconClassname:col\"></i>\n <span *ngIf=\"row|cellImgSrc:col\"><img [src]=\"row|cellImgSrc:col\"/></span>\n {{row|cellValue:col}}\n </span>\n <div *ngIf=\"row|cellInnerHTML:col\" [innerHTML]=\"row|cellInnerHTML:col\"></div>\n </a>\n <!-- If col is NOT hyperlink, just display data -->\n <span *ngIf=\"!col.hyperlink\">\n <span *ngIf=\"!(row|cellInnerHTML:col)\">\n <i ngClass=\"{{row|cellIconClassname:col || ''}}\"></i>\n <span *ngIf=\"row|cellImgSrc:col\"><img [src]=\"row|cellImgSrc:col\"/></span>\n {{row|cellValue:col}}\n </span>\n <div *ngIf=\"row|cellInnerHTML:col\" [innerHTML]=\"row|cellInnerHTML:col\"></div>\n </span>\n </div>\n <!-- Select Cell -->\n <div *ngIf=\"col.selectColumn\" class=\"text-center\">\n <input [id]=\"tableId+'_'+r\" type=\"checkbox\" [disabled]=\"!row.selectable\" [checked]=\"row.selected\" (change)=\"toggleRowSelection(row)\">\n </div>\n <!-- Single Select Cell -->\n <div *ngIf=\"col.singleSelectColumn\" class=\"text-center\">\n <input [id]=\"tableId+'_singleSelect_'+r\" type=\"radio\" [disabled]=\"!row.selectable\" [checked]=\"row.selected\" (change)=\"singleRowSelection(row)\">\n </div>\n <!-- Action Button Cell -->\n <div *ngIf=\"col.actionColumn && row.actions\">\n <oepa-action-btn [actions]=\"row.actions\" [data]=\"row.dataSource\" (actionClicked)=\"onActionClick($event)\" [btnId]=\"tableId+'_'+r\"></oepa-action-btn>\n </div>\n </td>\n </ng-template>\n </tr>\n\n <!-- Detail Row -->\n <tr *ngIf=\"row.showDetail\" class=\"table-info\">\n <td [colSpan]=\"visibleColumnCount + (dataHasDetails ? 1 : 0)\">\n <cml-template [templateInfo]=\"row.detail\"></cml-template>\n </td>\n </tr>\n </ng-template>\n <tr *ngIf=\"totalRow\">\n <td *ngIf=\"dataHasDetails\">\n </td>\n <ng-template ngFor let-totalCol [ngForOf]=\"dataColumns\">\n <td *ngIf=\"!totalCol.hidden\" ngClass=\"{{totalRow|cellClassname:totalCol || ''}}\">\n <div>\n <span><i ngClass=\"{{totalRow|cellIconClassname:totalCol || ''}}\"></i>{{totalRow|cellValue:totalCol}}</span>\n </div>\n </td>\n </ng-template>\n </tr>\n</tbody>\n</table>\n</div>\n<!-- Table footer -->\n<form *ngIf=\"!config.hideFooter || (data && pageInfo.itemsPerPage < data.length)\" class=\"form-horizontal\">\n<div class=\"form-group row text-right\">\n <!-- Table-wide filter -->\n <div class=\"col-sm-4\">\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <input *ngIf=\"!config.hideGlobalFilter\" placeholder=\"Filter all columns\" [oepaTableFiltering]=\"{ filterString: '' }\" [tableId]=\"tableId\" class=\"form-control input-sm\" (tableChanged)=\"onFilterChanged($event)\"\n [id]=\"tableId+'_FilterAllColumnsInput'\" />\n </div>\n <div class=\"col-sm-6\">\n <span *ngIf=\"config.showRowCountInFooter && _data && _data.length > 0\">\n <span class=\"badge badge-secondary\" style=\"color: #999\">{{_data.length}}</span> total rows\n </span>\n </div>\n </div>\n </div>\n <!-- Export Buttons -->\n <div class=\"col-sm-4 d-flex justify-content-center\">\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button type=\"button\" *ngIf=\"config.exportToExcel\" class=\"btn btn-primary mr-1\" (click)=\"exportToExcel()\" [id]=\"tableId+'_ExportToExcelBtn'\">Export to Excel</button>\n <button type=\"button\" *ngIf=\"config.exportToHTML\" class=\"btn btn-primary mr-1\" (click)=\"exportToHTML()\" [id]=\"tableId+'_ExportToHTMLBtn'\">Export to HTML</button>\n <button *ngIf=\"customBtnVisible\" type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"onCustomBtnClick()\" [id]=\"tableId+'_CustomBtn'\" [disabled]=\"!customBtnEnabled\">{{customBtnLabel}}</button>\n </div>\n <div *ngIf=\"config.exportToExcel || config.exportToHTML\" class=\"col-sm-12 text-center\">\n <span>Export only visible data: \n <input type=\"checkbox\" [checked]=\"exportVisibleOnly\" (click)=\"toggleExportVisibleOnly()\" id=\"exportVisibleOnlyCheckbox\"/>\n </span>\n </div>\n </div>\n </div>\n <!-- Pagination -->\n <div *ngIf=\"!config.disablePagination\" class=\"col-sm-4 d-flex justify-content-end\">\n <pagination *ngIf=\"paginationOn\" class=\"pagination-sm\" [totalItems]=\"pageInfo.length\" [itemsPerPage]=\"pageInfo.itemsPerPage\" [maxSize]=\"pageInfo.maxSize\"\n [(ngModel)]=\"currentPage\" name=\"currentTablePage\"\n [boundaryLinks]=\"true\" [rotate]=\"false\" (pageChanged)=\"onPageChanged($event)\" (numPages)=\"pageInfo.numPages = $event\">\n </pagination>\n \n <button (click)=\"togglePagingation()\" type=\"button\" class=\"btn btn-default btn-sm mr-1\">{{ paginationOn ? 'Show All Rows' : 'Restore Pagination'}}</button>\n </div>\n</div>\n</form>", styles: [".pagination{margin:0}th.oepa-table-header-center{text-align:center}.oepa-table-bold{font-weight:700}.oepa-table-italic{font-style:italic}.oepa-table-line-through{text-decoration:line-through}.oepa-table-gray{background-color:#ddd}td.oepa-undeline-cell{border-bottom:1pt solid black}.detail-indicator-col{width:30px}.action-btn-col{width:90px}.select-col{width:20px}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1$2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i7$1.PaginationComponent, selector: "pagination", inputs: ["align", "maxSize", "boundaryLinks", "directionLinks", "firstText", "previousText", "nextText", "lastText", "rotate", "pageBtnClass", "disabled", "customPageTemplate", "customNextTemplate", "customPreviousTemplate", "customFirstTemplate", "customLastTemplate", "itemsPerPage", "totalItems"], outputs: ["numPages", "pageChanged"] }, { kind: "directive", type: i8.PopoverDirective, selector: "[popover]", inputs: ["adaptivePosition", "boundariesElement", "popover", "popoverContext", "popoverTitle", "placement", "outsideClick", "triggers", "container", "containerClass", "isOpen", "delay"], outputs: ["onShown", "onHidden"], exportAs: ["bs-popover"] }, { kind: "directive", type: i9.TooltipDirective, selector: "[tooltip], [tooltipHtml]", inputs: ["adaptivePosition", "tooltip", "placement", "triggers", "container", "containerClass", "boundariesElement", "isOpen", "isDisabled", "delay", "tooltipHtml", "tooltipPlacement", "tooltipIsOpen", "tooltipEnable", "tooltipAppendToBody", "tooltipAnimation", "tooltipClass", "tooltipContext", "tooltipPopupDelay", "tooltipFadeDuration", "tooltipTrigger"], outputs: ["tooltipChange", "onShown", "onHidden", "tooltipStateChanged"], exportAs: ["bs-tooltip"] }, { kind: "component", type: i1$1.OepaTemplateComponent, selector: "cml-template", inputs: ["templateInfo"] }, { kind: "component", type: ActionBtnComponent, selector: "oepa-action-btn", inputs: ["label", "btnId", "data", "actions", "normalSize", "dropup"], outputs: ["actionClicked"] }, { kind: "directive", type: OepaTableSortingDirective, selector: "[oepaTableSorting]", inputs: ["tableId", "oepaTableSorting", "column"], outputs: ["sortChanged"] }, { kind: "directive", type: OepaTableFilteringDirective, selector: "[oepaTableFiltering]", inputs: ["oepaTableFiltering", "tableId"], outputs: ["tableChanged"] }, { kind: "pipe", type: OepaTableCellInnerHtmlPipe, name: "cellInnerHTML" }, { kind: "pipe", type: OepaTableCellColSpanPipe, name: "cellColspan" }, { kind: "pipe", type: OepaTableCellValuePipe, name: "cellValue" }, { kind: "pipe", type: OepaTableCellClassnamePipe, name: "cellClassname" }, { kind: "pipe", type: OepaTableCellIconClassnamePipe, name: "cellIconClassname" }, { kind: "pipe", type: OepaTableCellImgSrcPipe, name: "cellImgSrc" }] });
|
|
1829
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TableComponent, selector: "oepa-table", inputs: { tableId: "tableId", config: "config", complexHeader: "complexHeader", header: "header", customBtnLabel: "customBtnLabel", customBtnVisible: "customBtnVisible", customBtnEnabled: "customBtnEnabled", data: "data", totalRow: "totalRow" }, outputs: { cellClicked: "cellClicked", actionClicked: "actionClicked", rowSelected: "rowSelected", customBtnClicked: "customBtnClicked" }, ngImport: i0, template: "<!-- Unhide select input - only visible if one or more columns are hidden -->\n\n<form *ngIf=\"hiddenColumns.length > 0\" aria-label=\"Show hidden columns\">\n <div class=\"row mb-2\">\n <label class=\"col-sm-2 col-form-label\" [for]=\"tableId+'_UnhideColumnSelect'\">Show Hidden Columns:</label>\n <div class=\"col-sm-4\">\n <select class=\"form-select\" (change)=\"unhideColumn($any($event).target.value)\" [id]=\"tableId+'_UnhideColumnSelect'\" aria-label=\"Select column to unhide\">\n <option value=\"\">Choose a column</option>\n <option *ngFor=\"let col of hiddenColumns\" [value]=\"col.id\">{{col.title}}</option>\n </select>\n </div>\n </div>\n</form>\n<!-- This is the table -->\n<div [ngClass]=\"config.divClassName || ''\">\n<table *ngIf=\"!config.hideTable\" class=\"table dataTable\" [ngClass]=\"config.className || ''\" role=\"table\" style=\"width: 100%;\" aria-label=\"Data table\">\n\n<!-- This is the table header -->\n<thead>\n <!-- There may be multiple header rows -->\n <tr *ngFor=\"let hdr of headerRows; let hr=index;\" role=\"row\">\n <!-- Details indicator column (if data has details) -->\n <th *ngIf=\"dataHasDetails && hr === 0\" [rowSpan]=\"headerRows.length\" class=\"detail-indicator-col\" scope=\"col\">\n <span>\n <button type=\"button\" class=\"btn btn-link p-0\" (click)=\"toggleAllDetails()\" [id]=\"tableId+'_ShowAllDetailsLink'\" [attr.aria-pressed]=\"showAllDetails\" [attr.aria-label]=\"(showAllDetails ? 'Hide' : 'Show') + ' details for all rows'\">\n <i class=\"bi\" [ngClass]=\"{'bi-chevron-down': showAllDetails, 'bi-chevron-right': !showAllDetails}\" aria-hidden=\"true\"></i>\n </button>\n </span>\n </th>\n <ng-template ngFor let-column [ngForOf]=\"hdr.columns\" let-c=\"index\">\n <!-- Header cell -->\n <th *ngIf=\"!column.hidden\" [ngClass]=\"column.className || ''\" [colSpan]=\"column.colspan || 1\" [rowSpan]=\"column.rowspan || 1\" scope=\"col\">\n <!-- Select all Rows Checkbox -->\n <div class=\"text-center\">\n <input *ngIf=\"column.selectColumn\" type=\"checkbox\" [checked]=\"allRowsSelected\" (change)=\"toggleAllRowsSelection()\" [attr.aria-label]=\"'Select all rows'\">\n\n <!-- Header cell text with sort capability (if specified) -->\n <span [oepaTableSorting]=\"true\" [column]=\"column\" [tableId]=\"tableId\" (sortChanged)=\"onSortChanged($event)\" [id]=\"tableId+'_SortColumnLink_'+column.id\" tabindex=\"0\" role=\"button\" [attr.aria-label]=\"'Sort by ' + column.title\">\n <span *ngIf=\"column.sort\"><i class=\"pull-left bi\" [ngClass]=\"{'bi-chevron-down': column.sort === 'desc', 'bi-chevron-up': column.sort === 'asc'}\" aria-hidden=\"true\"></i>\n <sup *ngIf=\"column?.sortIndex || 0 > 1\">{{column.sortIndex}}</sup></span>\n {{column.title}}\n </span>\n <!-- button to allow column to be hidden (if specified) -->\n <button *ngIf=\"column.hidden === false\" type=\"button\" class=\"btn-close float-end\" aria-label=\"Hide column\" (click)=\"hideColumn(column)\"\n [id]=\"tableId+'_HideColumnLink'+'_'+column.id\">\n </button>\n\n </div>\n <!-- column filter (if specified) -->\n <div *ngIf=\"((rows && rows.length > 0) || !noFilters()) && column.filterable\" >\n <input [oepaTableFiltering]=\"{ filterString: '', columnId: column.id }\" [tableId]=\"tableId\" class=\"form-control input-sm\" (tableChanged)=\"onFilterChanged($event)\"\n [id]=\"tableId+'_FilterColumn_'+column.id\" [attr.aria-label]=\"'Filter for ' + column.title\" />\n </div>\n </th>\n </ng-template>\n </tr>\n</thead>\n\n<!-- This is the table body -->\n<tbody>\n <ng-template ngFor let-row [ngForOf]=\"rows\" let-r=\"index\">\n <!-- Data Row -->\n <tr>\n <td *ngIf=\"dataHasDetails\">\n <!-- Detail icon (if specified) -->\n <span *ngIf=\"row.showDetail === true || row.showDetail === false\">\n <i *ngIf=\"row.detailIconClassName\" [ngClass]=\"row.detailIconClassName\" aria-hidden=\"true\"></i>\n <button type=\"button\" class=\"btn btn-link p-0\" (click)=\"toggleRowDetail(row)\" [id]=\"tableId+'_ShowDetailLink_'+r\" [attr.aria-pressed]=\"row.showDetail\" [attr.aria-label]=\"(row.showDetail ? 'Hide' : 'Show') + ' details for this row'\">\n <i class=\"bi\" [ngClass]=\"{'bi-chevron-down': row.showDetail, 'bi-chevron-right': !row.showDetail}\" aria-hidden=\"true\"></i>\n </button>\n </span>\n </td>\n <!-- If row is a divider, it spans the whole table -->\n <!-- <td *ngIf=\"row.isDivider\" [colSpan]=\"visibleColumnCount + (dataHasDetails ? 1 : 0)\" [ngClass]=\"row.dividerClassName || 'oepa-table-gray'\"> </td> -->\n <!-- Data Rows -->\n <ng-template *ngIf=\"!row.isDivider\" ngFor let-col [ngForOf]=\"dataColumns\" let-i=\"index\">\n <td *ngIf=\"!col.hidden && (row|cellColspan:col) > 0\" ngClass=\"{{row|cellClassname:col || ''}}\" [colSpan]=\"row|cellColspan:col\">\n <!-- Data Cell -->\n <div *ngIf=\"!col.actionColumn && !col.selectColumn && !col.singleSelectColumn\">\n <!-- Template for popover 1 -->\n <ng-template #popoverTemplate>\n <div *ngIf=\"row.popover\">\n <cml-template [templateInfo]=\"row.popover.content\"></cml-template>\n </div>\n </ng-template>\n <!-- Popover 1 icon (if specified) -->\n <span *ngIf=\"row.popover && i === (row.popoverColumnIndex || 0) && row.popover\" tabindex=\"0\" [popoverTitle]=\"row.popover.title\" [popover]=\"popoverTemplate\"\n [containerClass]=\"row.popover.containerClass\" placement=\"right\" [triggers]=\"row.popover.trigger || 'mouseenter:mouseleave'\">\n <i [ngClass]=\"row.popover.className\" [id]=\"tableId+'_PopoverLink_'+r\"></i>\n </span>\n\n <!-- Template for popover 2 -->\n <ng-template #popover2Template>\n <div *ngIf=\"row.popover2\">\n <cml-template [templateInfo]=\"row.popover2.content\"></cml-template>\n </div>\n </ng-template>\n <!-- Popover 2 icon (if specified) -->\n <span *ngIf=\"i === (row.popover2ColumnIndex || 0) && row.popover2\" tabindex=\"0\" [popoverTitle]=\"row.popover2.title\" [popover]=\"popover2Template\"\n [containerClass]=\"row.popover2.containerClass\" placement=\"right\" [triggers]=\"row.popover2.trigger || 'mouseenter:mouseleave'\">\n <i [ngClass]=\"row.popover2.className\" [id]=\"tableId+'_Popover2Link_'+r\"></i>\n </span>\n\n <!-- Template for popover 3 -->\n <ng-template #popover3Template>\n <div *ngIf=\"row.popover3\">\n <cml-template [templateInfo]=\"row.popover3.content\"></cml-template>\n </div>\n </ng-template>\n <!-- Popover 3 icon (if specified) -->\n <span *ngIf=\"i === (row.popover3ColumnIndex || 0) && row.popover3\" tabindex=\"0\" [popoverTitle]=\"row.popover3.title\" [popover]=\"popover3Template\"\n [containerClass]=\"row.popover3.containerClass\" placement=\"right\" [triggers]=\"row.popover3.trigger || 'mouseenter:mouseleave'\">\n <i [ngClass]=\"row.popover3.className\" [id]=\"tableId+'_Popover3Link_'+r\"></i>\n </span>\n\n \n <!-- <div *ngIf=\"row|cellInnerHTML:col\" [innerHTML]=\"row|cellInnerHTML:col\"></div>\n <span *ngIf=\"!(row|cellInnerHTML:col)\">{{row|cellValue:col}}</span> -->\n\n <!-- If col is hyperlink, display data as a hyperlink -->\n <a *ngIf=\"col.hyperlink\" href=\"javascript:void(0);\" (click)=\"cellClick(row, col.id)\" [id]=\"tableId+'_CellClick_'+r+'_'+i\" tabindex=\"0\" role=\"button\" [attr.aria-label]=\"'Activate ' + (col.title || 'cell')\">\n <span *ngIf=\"!(row|cellInnerHTML:col)\">\n <i [ngClass]=\"row|cellIconClassname:col\" aria-hidden=\"true\"></i>\n <span *ngIf=\"row|cellImgSrc:col\"><img [src]=\"row|cellImgSrc:col\" alt=\"\"/></span>\n {{row|cellValue:col}}\n </span>\n <div *ngIf=\"row|cellInnerHTML:col\" [innerHTML]=\"row|cellInnerHTML:col\"></div>\n </a>\n <!-- If col is NOT hyperlink, just display data -->\n <span *ngIf=\"!col.hyperlink\">\n <span *ngIf=\"!(row|cellInnerHTML:col)\">\n <i ngClass=\"{{row|cellIconClassname:col || ''}}\" aria-hidden=\"true\"></i>\n <span *ngIf=\"row|cellImgSrc:col\"><img [src]=\"row|cellImgSrc:col\" alt=\"\"/></span>\n {{row|cellValue:col}}\n </span>\n <div *ngIf=\"row|cellInnerHTML:col\" [innerHTML]=\"row|cellInnerHTML:col\"></div>\n </span>\n </div>\n <!-- Select Cell -->\n <div *ngIf=\"col.selectColumn\" class=\"text-center\">\n <input [id]=\"tableId+'_'+r\" type=\"checkbox\" [disabled]=\"!row.selectable\" [checked]=\"row.selected\" (change)=\"toggleRowSelection(row)\" [attr.aria-label]=\"'Select row ' + (r+1)\">\n </div>\n <!-- Single Select Cell -->\n <div *ngIf=\"col.singleSelectColumn\" class=\"text-center\">\n <input [id]=\"tableId+'_singleSelect_'+r\" type=\"radio\" [disabled]=\"!row.selectable\" [checked]=\"row.selected\" (change)=\"singleRowSelection(row)\" [attr.aria-label]=\"'Select row ' + (r+1)\">\n </div>\n <!-- Action Button Cell -->\n <div *ngIf=\"col.actionColumn && row.actions\">\n <oepa-action-btn [actions]=\"row.actions\" [data]=\"row.dataSource\" (actionClicked)=\"onActionClick($event)\" [btnId]=\"tableId+'_'+r\"></oepa-action-btn>\n </div>\n </td>\n </ng-template>\n </tr>\n\n <!-- Detail Row -->\n <tr *ngIf=\"row.showDetail\" class=\"table-info\">\n <td [colSpan]=\"visibleColumnCount + (dataHasDetails ? 1 : 0)\">\n <cml-template [templateInfo]=\"row.detail\"></cml-template>\n </td>\n </tr>\n </ng-template>\n <tr *ngIf=\"totalRow\">\n <td *ngIf=\"dataHasDetails\">\n </td>\n <ng-template ngFor let-totalCol [ngForOf]=\"dataColumns\">\n <td *ngIf=\"!totalCol.hidden\" ngClass=\"{{totalRow|cellClassname:totalCol || ''}}\">\n <div>\n <span><i ngClass=\"{{totalRow|cellIconClassname:totalCol || ''}}\"></i>{{totalRow|cellValue:totalCol}}</span>\n </div>\n </td>\n </ng-template>\n </tr>\n</tbody>\n</table>\n</div>\n<!-- Table footer -->\n<form *ngIf=\"!config.hideFooter || (data && pageInfo.itemsPerPage < data.length)\" class=\"form-horizontal\">\n<div class=\"form-group row text-right\">\n <!-- Table-wide filter -->\n <div class=\"col-sm-4\">\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <input *ngIf=\"!config.hideGlobalFilter\" placeholder=\"Filter all columns\" [oepaTableFiltering]=\"{ filterString: '' }\" [tableId]=\"tableId\" class=\"form-control input-sm\" (tableChanged)=\"onFilterChanged($event)\"\n [id]=\"tableId+'_FilterAllColumnsInput'\" aria-label=\"Filter all columns in table\" type=\"search\" />\n </div>\n <div class=\"col-sm-6\">\n <span *ngIf=\"config.showRowCountInFooter && _data && _data.length > 0\">\n {{_data.length}} total rows\n </span>\n </div>\n </div>\n </div>\n <!-- Export Buttons -->\n <div class=\"col-sm-4 d-flex justify-content-center\">\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button type=\"button\" *ngIf=\"config.exportToExcel\" class=\"btn btn-primary mr-1\" (click)=\"exportToExcel()\" [id]=\"tableId+'_ExportToExcelBtn'\" aria-label=\"Export to Excel\">Export to Excel</button>\n <button type=\"button\" *ngIf=\"config.exportToHTML\" class=\"btn btn-primary mr-1\" (click)=\"exportToHTML()\" [id]=\"tableId+'_ExportToHTMLBtn'\" aria-label=\"Export to HTML\">Export to HTML</button>\n <button *ngIf=\"customBtnVisible\" type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"onCustomBtnClick()\" [id]=\"tableId+'_CustomBtn'\" [disabled]=\"!customBtnEnabled\" [attr.aria-label]=\"customBtnLabel\">{{customBtnLabel}}</button>\n </div>\n <div *ngIf=\"config.exportToExcel || config.exportToHTML\" class=\"col-sm-12 text-center\">\n <span>Export only visible data: \n <input type=\"checkbox\" [checked]=\"exportVisibleOnly\" (click)=\"toggleExportVisibleOnly()\" id=\"exportVisibleOnlyCheckbox\" aria-label=\"Export only visible data\"/>\n </span>\n </div>\n </div>\n </div>\n <!-- Pagination -->\n <div *ngIf=\"!config.disablePagination\" class=\"col-sm-4 d-flex justify-content-end\">\n <pagination *ngIf=\"paginationOn\" class=\"pagination-sm\" [totalItems]=\"pageInfo.length\" [itemsPerPage]=\"pageInfo.itemsPerPage\" [maxSize]=\"pageInfo.maxSize\"\n [(ngModel)]=\"currentPage\" name=\"currentTablePage\"\n [boundaryLinks]=\"true\" [rotate]=\"false\" (pageChanged)=\"onPageChanged($event)\" (numPages)=\"pageInfo.numPages = $event\"\n aria-label=\"Table pagination\">\n </pagination>\n \n <button (click)=\"togglePagingation()\" type=\"button\" class=\"btn btn-default btn-sm mr-1\" [attr.aria-label]=\"paginationOn ? 'Show All Rows' : 'Restore Pagination'\">{{ paginationOn ? 'Show All Rows' : 'Restore Pagination'}}</button>\n </div>\n</div>\n</form>", styles: [".pagination{margin:0}th.oepa-table-header-center{text-align:center}.oepa-table-bold{font-weight:700}.oepa-table-italic{font-style:italic}.oepa-table-line-through{text-decoration:line-through}.oepa-table-gray{background-color:#ddd}td.oepa-undeline-cell{border-bottom:1pt solid black}.detail-indicator-col{width:30px}.action-btn-col{width:90px}.select-col{width:20px}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1$2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i7$1.PaginationComponent, selector: "pagination", inputs: ["align", "maxSize", "boundaryLinks", "directionLinks", "firstText", "previousText", "nextText", "lastText", "rotate", "pageBtnClass", "disabled", "customPageTemplate", "customNextTemplate", "customPreviousTemplate", "customFirstTemplate", "customLastTemplate", "itemsPerPage", "totalItems"], outputs: ["numPages", "pageChanged"] }, { kind: "directive", type: i8.PopoverDirective, selector: "[popover]", inputs: ["adaptivePosition", "boundariesElement", "popover", "popoverContext", "popoverTitle", "placement", "outsideClick", "triggers", "container", "containerClass", "isOpen", "delay"], outputs: ["onShown", "onHidden"], exportAs: ["bs-popover"] }, { kind: "component", type: i1$1.OepaTemplateComponent, selector: "cml-template", inputs: ["templateInfo"] }, { kind: "component", type: ActionBtnComponent, selector: "oepa-action-btn", inputs: ["label", "btnId", "data", "actions", "normalSize", "dropup"], outputs: ["actionClicked"] }, { kind: "directive", type: OepaTableSortingDirective, selector: "[oepaTableSorting]", inputs: ["tableId", "oepaTableSorting", "column"], outputs: ["sortChanged"] }, { kind: "directive", type: OepaTableFilteringDirective, selector: "[oepaTableFiltering]", inputs: ["oepaTableFiltering", "tableId"], outputs: ["tableChanged"] }, { kind: "pipe", type: OepaTableCellInnerHtmlPipe, name: "cellInnerHTML" }, { kind: "pipe", type: OepaTableCellColSpanPipe, name: "cellColspan" }, { kind: "pipe", type: OepaTableCellValuePipe, name: "cellValue" }, { kind: "pipe", type: OepaTableCellClassnamePipe, name: "cellClassname" }, { kind: "pipe", type: OepaTableCellIconClassnamePipe, name: "cellIconClassname" }, { kind: "pipe", type: OepaTableCellImgSrcPipe, name: "cellImgSrc" }] });
|
|
1824
1830
|
}
|
|
1825
1831
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TableComponent, decorators: [{
|
|
1826
1832
|
type: Component,
|
|
1827
|
-
args: [{ selector: 'oepa-table', template: "<!-- Unhide select input - only visible if one or more columns are hidden -->\n\n<form *ngIf=\"hiddenColumns.length > 0\">\n <div class=\"row mb-2\">\n <label class=\"col-sm-2 col-form-label\">Show Hidden Columns:</label>\n <div class=\"col-sm-4\">\n <select class=\"form-select\" (change)=\"unhideColumn($any($event).target.value)\" [id]=\"tableId+'_UnhideColumnSelect'\">\n <option value=\"\">Choose a column</option>\n <option *ngFor=\"let col of hiddenColumns\" [value]=\"col.id\">{{col.title}}</option>\n </select>\n </div>\n </div>\n</form>\n<!-- This is the table -->\n<div ngClass=\"{{config.divClassName || ''}}\" >\n<table *ngIf=\"!config.hideTable\" class=\"table dataTable\" ngClass=\"{{config.className || ''}}\" role=\"grid\" style=\"width: 100%;\">\n\n<!-- This is the table header -->\n<thead>\n <!-- There may be multiple header rows -->\n <tr *ngFor=\"let hdr of headerRows; let hr=index;\" role=\"row\">\n <!-- Details indicator column (if data has details) -->\n <th *ngIf=\"dataHasDetails && hr === 0\" [rowSpan]=\"headerRows.length\" class=\"detail-indicator-col\">\n <span>\n <i (click)=\"toggleAllDetails()\" [id]=\"tableId+'_ShowAllDetailsLink'\" class=\"bi\" [ngClass]=\"{'bi-chevron-down': showAllDetails, 'bi-chevron-right': !showAllDetails}\"\n [tooltip]=\"(showAllDetails ? 'Hide' : 'Show') + ' details for all rows'\" placement=\"right\">\n </i>\n </span>\n </th>\n <ng-template ngFor let-column [ngForOf]=\"hdr.columns\" let-c=\"index\">\n <!-- Header cell -->\n <th *ngIf=\"!column.hidden\" ngClass=\"{{column.className || ''}}\" [colSpan]=\"column.colspan || 1\" [rowSpan]=\"column.rowspan || 1\">\n <!-- Select all Rows Checkbox -->\n <div class=\"text-center\">\n <input *ngIf=\"column.selectColumn\" type=\"checkbox\" [checked]=\"allRowsSelected\" (change)=\"toggleAllRowsSelection()\">\n\n <!-- Header cell text with sort capability (if specified) -->\n <span [oepaTableSorting]=\"true\" [column]=\"column\" [tableId]=\"tableId\" (sortChanged)=\"onSortChanged($event)\" [id]=\"tableId+'_SortColumnLink_'+column.id\">\n <span *ngIf=\"column.sort\"><i class=\"pull-left bi\" [ngClass]=\"{'bi-chevron-down': column.sort === 'desc', 'bi-chevron-up': column.sort === 'asc'}\"></i>\n <sup *ngIf=\"column?.sortIndex || 0 > 1\">{{column.sortIndex}}</sup></span>\n {{column.title}}\n </span>\n <!-- button to allow column to be hidden (if specified) -->\n <button *ngIf=\"column.hidden === false\" type=\"button\" class=\"btn-close float-end\" aria-label=\"Hide\" (click)=\"hideColumn(column)\"\n [id]=\"tableId+'_HideColumnLink'+'_'+column.id\">\n </button>\n\n </div>\n <!-- column filter (if specified) -->\n <div *ngIf=\"((rows && rows.length > 0) || !noFilters()) && column.filterable\" >\n <input [oepaTableFiltering]=\"{ filterString: '', columnId: column.id }\" [tableId]=\"tableId\" class=\"form-control input-sm\" (tableChanged)=\"onFilterChanged($event)\"\n [id]=\"tableId+'_FilterColumn_'+column.id\" />\n </div>\n </th>\n </ng-template>\n </tr>\n</thead>\n\n<!-- This is the table body -->\n<tbody>\n <ng-template ngFor let-row [ngForOf]=\"rows\" let-r=\"index\">\n <!-- Data Row -->\n <tr>\n <td *ngIf=\"dataHasDetails\">\n <!-- Detail icon (if specified) -->\n <span *ngIf=\"row.showDetail === true || row.showDetail === false\">\n <i *ngIf=\"row.detailIconClassName\" [ngClass]=\"row.detailIconClassName\"></i>\n <i (click)=\"toggleRowDetail(row)\" [id]=\"tableId+'_ShowDetailLink_'+r\" class=\"bi\" [ngClass]=\"{'bi-chevron-down': row.showDetail, 'bi-chevron-right': !row.showDetail}\"\n [tooltip]=\"(row.showDetail ? 'Hide' : 'Show') + ' details for this row'\" placement=\"right\">\n </i>\n </span>\n </td>\n <!-- If row is a divider, it spans the whole table -->\n <!-- <td *ngIf=\"row.isDivider\" [colSpan]=\"visibleColumnCount + (dataHasDetails ? 1 : 0)\" [ngClass]=\"row.dividerClassName || 'oepa-table-gray'\"> </td> -->\n <!-- Data Rows -->\n <ng-template *ngIf=\"!row.isDivider\" ngFor let-col [ngForOf]=\"dataColumns\" let-i=\"index\">\n <td *ngIf=\"!col.hidden && (row|cellColspan:col) > 0\" ngClass=\"{{row|cellClassname:col || ''}}\" [colSpan]=\"row|cellColspan:col\">\n <!-- Data Cell -->\n <div *ngIf=\"!col.actionColumn && !col.selectColumn && !col.singleSelectColumn\">\n <!-- Template for popover 1 -->\n <ng-template #popoverTemplate>\n <div *ngIf=\"row.popover\">\n <cml-template [templateInfo]=\"row.popover.content\"></cml-template>\n </div>\n </ng-template>\n <!-- Popover 1 icon (if specified) -->\n <span *ngIf=\"row.popover && i === (row.popoverColumnIndex || 0) && row.popover\" tabindex=\"0\" [popoverTitle]=\"row.popover.title\" [popover]=\"popoverTemplate\"\n [containerClass]=\"row.popover.containerClass\" placement=\"right\" [triggers]=\"row.popover.trigger || 'mouseenter:mouseleave'\">\n <i [ngClass]=\"row.popover.className\" [id]=\"tableId+'_PopoverLink_'+r\"></i>\n </span>\n\n <!-- Template for popover 2 -->\n <ng-template #popover2Template>\n <div *ngIf=\"row.popover2\">\n <cml-template [templateInfo]=\"row.popover2.content\"></cml-template>\n </div>\n </ng-template>\n <!-- Popover 2 icon (if specified) -->\n <span *ngIf=\"i === (row.popover2ColumnIndex || 0) && row.popover2\" tabindex=\"0\" [popoverTitle]=\"row.popover2.title\" [popover]=\"popover2Template\"\n [containerClass]=\"row.popover2.containerClass\" placement=\"right\" [triggers]=\"row.popover2.trigger || 'mouseenter:mouseleave'\">\n <i [ngClass]=\"row.popover2.className\" [id]=\"tableId+'_Popover2Link_'+r\"></i>\n </span>\n\n <!-- Template for popover 3 -->\n <ng-template #popover3Template>\n <div *ngIf=\"row.popover3\">\n <cml-template [templateInfo]=\"row.popover3.content\"></cml-template>\n </div>\n </ng-template>\n <!-- Popover 3 icon (if specified) -->\n <span *ngIf=\"i === (row.popover3ColumnIndex || 0) && row.popover3\" tabindex=\"0\" [popoverTitle]=\"row.popover3.title\" [popover]=\"popover3Template\"\n [containerClass]=\"row.popover3.containerClass\" placement=\"right\" [triggers]=\"row.popover3.trigger || 'mouseenter:mouseleave'\">\n <i [ngClass]=\"row.popover3.className\" [id]=\"tableId+'_Popover3Link_'+r\"></i>\n </span>\n\n \n <!-- <div *ngIf=\"row|cellInnerHTML:col\" [innerHTML]=\"row|cellInnerHTML:col\"></div>\n <span *ngIf=\"!(row|cellInnerHTML:col)\">{{row|cellValue:col}}</span> -->\n\n <!-- If col is hyperlink, display data as a hyperlink -->\n <a *ngIf=\"col.hyperlink\" href=\"javascript:void(0);\" (click)=\"cellClick(row, col.id)\" [id]=\"tableId+'_CellClick_'+r+'_'+i\">\n <span *ngIf=\"!(row|cellInnerHTML:col)\">\n <i [ngClass]=\"row|cellIconClassname:col\"></i>\n <span *ngIf=\"row|cellImgSrc:col\"><img [src]=\"row|cellImgSrc:col\"/></span>\n {{row|cellValue:col}}\n </span>\n <div *ngIf=\"row|cellInnerHTML:col\" [innerHTML]=\"row|cellInnerHTML:col\"></div>\n </a>\n <!-- If col is NOT hyperlink, just display data -->\n <span *ngIf=\"!col.hyperlink\">\n <span *ngIf=\"!(row|cellInnerHTML:col)\">\n <i ngClass=\"{{row|cellIconClassname:col || ''}}\"></i>\n <span *ngIf=\"row|cellImgSrc:col\"><img [src]=\"row|cellImgSrc:col\"/></span>\n {{row|cellValue:col}}\n </span>\n <div *ngIf=\"row|cellInnerHTML:col\" [innerHTML]=\"row|cellInnerHTML:col\"></div>\n </span>\n </div>\n <!-- Select Cell -->\n <div *ngIf=\"col.selectColumn\" class=\"text-center\">\n <input [id]=\"tableId+'_'+r\" type=\"checkbox\" [disabled]=\"!row.selectable\" [checked]=\"row.selected\" (change)=\"toggleRowSelection(row)\">\n </div>\n <!-- Single Select Cell -->\n <div *ngIf=\"col.singleSelectColumn\" class=\"text-center\">\n <input [id]=\"tableId+'_singleSelect_'+r\" type=\"radio\" [disabled]=\"!row.selectable\" [checked]=\"row.selected\" (change)=\"singleRowSelection(row)\">\n </div>\n <!-- Action Button Cell -->\n <div *ngIf=\"col.actionColumn && row.actions\">\n <oepa-action-btn [actions]=\"row.actions\" [data]=\"row.dataSource\" (actionClicked)=\"onActionClick($event)\" [btnId]=\"tableId+'_'+r\"></oepa-action-btn>\n </div>\n </td>\n </ng-template>\n </tr>\n\n <!-- Detail Row -->\n <tr *ngIf=\"row.showDetail\" class=\"table-info\">\n <td [colSpan]=\"visibleColumnCount + (dataHasDetails ? 1 : 0)\">\n <cml-template [templateInfo]=\"row.detail\"></cml-template>\n </td>\n </tr>\n </ng-template>\n <tr *ngIf=\"totalRow\">\n <td *ngIf=\"dataHasDetails\">\n </td>\n <ng-template ngFor let-totalCol [ngForOf]=\"dataColumns\">\n <td *ngIf=\"!totalCol.hidden\" ngClass=\"{{totalRow|cellClassname:totalCol || ''}}\">\n <div>\n <span><i ngClass=\"{{totalRow|cellIconClassname:totalCol || ''}}\"></i>{{totalRow|cellValue:totalCol}}</span>\n </div>\n </td>\n </ng-template>\n </tr>\n</tbody>\n</table>\n</div>\n<!-- Table footer -->\n<form *ngIf=\"!config.hideFooter || (data && pageInfo.itemsPerPage < data.length)\" class=\"form-horizontal\">\n<div class=\"form-group row text-right\">\n <!-- Table-wide filter -->\n <div class=\"col-sm-4\">\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <input *ngIf=\"!config.hideGlobalFilter\" placeholder=\"Filter all columns\" [oepaTableFiltering]=\"{ filterString: '' }\" [tableId]=\"tableId\" class=\"form-control input-sm\" (tableChanged)=\"onFilterChanged($event)\"\n [id]=\"tableId+'_FilterAllColumnsInput'\" />\n </div>\n <div class=\"col-sm-6\">\n <span *ngIf=\"config.showRowCountInFooter && _data && _data.length > 0\">\n <span class=\"badge badge-secondary\" style=\"color: #999\">{{_data.length}}</span> total rows\n </span>\n </div>\n </div>\n </div>\n <!-- Export Buttons -->\n <div class=\"col-sm-4 d-flex justify-content-center\">\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button type=\"button\" *ngIf=\"config.exportToExcel\" class=\"btn btn-primary mr-1\" (click)=\"exportToExcel()\" [id]=\"tableId+'_ExportToExcelBtn'\">Export to Excel</button>\n <button type=\"button\" *ngIf=\"config.exportToHTML\" class=\"btn btn-primary mr-1\" (click)=\"exportToHTML()\" [id]=\"tableId+'_ExportToHTMLBtn'\">Export to HTML</button>\n <button *ngIf=\"customBtnVisible\" type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"onCustomBtnClick()\" [id]=\"tableId+'_CustomBtn'\" [disabled]=\"!customBtnEnabled\">{{customBtnLabel}}</button>\n </div>\n <div *ngIf=\"config.exportToExcel || config.exportToHTML\" class=\"col-sm-12 text-center\">\n <span>Export only visible data: \n <input type=\"checkbox\" [checked]=\"exportVisibleOnly\" (click)=\"toggleExportVisibleOnly()\" id=\"exportVisibleOnlyCheckbox\"/>\n </span>\n </div>\n </div>\n </div>\n <!-- Pagination -->\n <div *ngIf=\"!config.disablePagination\" class=\"col-sm-4 d-flex justify-content-end\">\n <pagination *ngIf=\"paginationOn\" class=\"pagination-sm\" [totalItems]=\"pageInfo.length\" [itemsPerPage]=\"pageInfo.itemsPerPage\" [maxSize]=\"pageInfo.maxSize\"\n [(ngModel)]=\"currentPage\" name=\"currentTablePage\"\n [boundaryLinks]=\"true\" [rotate]=\"false\" (pageChanged)=\"onPageChanged($event)\" (numPages)=\"pageInfo.numPages = $event\">\n </pagination>\n \n <button (click)=\"togglePagingation()\" type=\"button\" class=\"btn btn-default btn-sm mr-1\">{{ paginationOn ? 'Show All Rows' : 'Restore Pagination'}}</button>\n </div>\n</div>\n</form>", styles: [".pagination{margin:0}th.oepa-table-header-center{text-align:center}.oepa-table-bold{font-weight:700}.oepa-table-italic{font-style:italic}.oepa-table-line-through{text-decoration:line-through}.oepa-table-gray{background-color:#ddd}td.oepa-undeline-cell{border-bottom:1pt solid black}.detail-indicator-col{width:30px}.action-btn-col{width:90px}.select-col{width:20px}\n"] }]
|
|
1833
|
+
args: [{ selector: 'oepa-table', template: "<!-- Unhide select input - only visible if one or more columns are hidden -->\n\n<form *ngIf=\"hiddenColumns.length > 0\" aria-label=\"Show hidden columns\">\n <div class=\"row mb-2\">\n <label class=\"col-sm-2 col-form-label\" [for]=\"tableId+'_UnhideColumnSelect'\">Show Hidden Columns:</label>\n <div class=\"col-sm-4\">\n <select class=\"form-select\" (change)=\"unhideColumn($any($event).target.value)\" [id]=\"tableId+'_UnhideColumnSelect'\" aria-label=\"Select column to unhide\">\n <option value=\"\">Choose a column</option>\n <option *ngFor=\"let col of hiddenColumns\" [value]=\"col.id\">{{col.title}}</option>\n </select>\n </div>\n </div>\n</form>\n<!-- This is the table -->\n<div [ngClass]=\"config.divClassName || ''\">\n<table *ngIf=\"!config.hideTable\" class=\"table dataTable\" [ngClass]=\"config.className || ''\" role=\"table\" style=\"width: 100%;\" aria-label=\"Data table\">\n\n<!-- This is the table header -->\n<thead>\n <!-- There may be multiple header rows -->\n <tr *ngFor=\"let hdr of headerRows; let hr=index;\" role=\"row\">\n <!-- Details indicator column (if data has details) -->\n <th *ngIf=\"dataHasDetails && hr === 0\" [rowSpan]=\"headerRows.length\" class=\"detail-indicator-col\" scope=\"col\">\n <span>\n <button type=\"button\" class=\"btn btn-link p-0\" (click)=\"toggleAllDetails()\" [id]=\"tableId+'_ShowAllDetailsLink'\" [attr.aria-pressed]=\"showAllDetails\" [attr.aria-label]=\"(showAllDetails ? 'Hide' : 'Show') + ' details for all rows'\">\n <i class=\"bi\" [ngClass]=\"{'bi-chevron-down': showAllDetails, 'bi-chevron-right': !showAllDetails}\" aria-hidden=\"true\"></i>\n </button>\n </span>\n </th>\n <ng-template ngFor let-column [ngForOf]=\"hdr.columns\" let-c=\"index\">\n <!-- Header cell -->\n <th *ngIf=\"!column.hidden\" [ngClass]=\"column.className || ''\" [colSpan]=\"column.colspan || 1\" [rowSpan]=\"column.rowspan || 1\" scope=\"col\">\n <!-- Select all Rows Checkbox -->\n <div class=\"text-center\">\n <input *ngIf=\"column.selectColumn\" type=\"checkbox\" [checked]=\"allRowsSelected\" (change)=\"toggleAllRowsSelection()\" [attr.aria-label]=\"'Select all rows'\">\n\n <!-- Header cell text with sort capability (if specified) -->\n <span [oepaTableSorting]=\"true\" [column]=\"column\" [tableId]=\"tableId\" (sortChanged)=\"onSortChanged($event)\" [id]=\"tableId+'_SortColumnLink_'+column.id\" tabindex=\"0\" role=\"button\" [attr.aria-label]=\"'Sort by ' + column.title\">\n <span *ngIf=\"column.sort\"><i class=\"pull-left bi\" [ngClass]=\"{'bi-chevron-down': column.sort === 'desc', 'bi-chevron-up': column.sort === 'asc'}\" aria-hidden=\"true\"></i>\n <sup *ngIf=\"column?.sortIndex || 0 > 1\">{{column.sortIndex}}</sup></span>\n {{column.title}}\n </span>\n <!-- button to allow column to be hidden (if specified) -->\n <button *ngIf=\"column.hidden === false\" type=\"button\" class=\"btn-close float-end\" aria-label=\"Hide column\" (click)=\"hideColumn(column)\"\n [id]=\"tableId+'_HideColumnLink'+'_'+column.id\">\n </button>\n\n </div>\n <!-- column filter (if specified) -->\n <div *ngIf=\"((rows && rows.length > 0) || !noFilters()) && column.filterable\" >\n <input [oepaTableFiltering]=\"{ filterString: '', columnId: column.id }\" [tableId]=\"tableId\" class=\"form-control input-sm\" (tableChanged)=\"onFilterChanged($event)\"\n [id]=\"tableId+'_FilterColumn_'+column.id\" [attr.aria-label]=\"'Filter for ' + column.title\" />\n </div>\n </th>\n </ng-template>\n </tr>\n</thead>\n\n<!-- This is the table body -->\n<tbody>\n <ng-template ngFor let-row [ngForOf]=\"rows\" let-r=\"index\">\n <!-- Data Row -->\n <tr>\n <td *ngIf=\"dataHasDetails\">\n <!-- Detail icon (if specified) -->\n <span *ngIf=\"row.showDetail === true || row.showDetail === false\">\n <i *ngIf=\"row.detailIconClassName\" [ngClass]=\"row.detailIconClassName\" aria-hidden=\"true\"></i>\n <button type=\"button\" class=\"btn btn-link p-0\" (click)=\"toggleRowDetail(row)\" [id]=\"tableId+'_ShowDetailLink_'+r\" [attr.aria-pressed]=\"row.showDetail\" [attr.aria-label]=\"(row.showDetail ? 'Hide' : 'Show') + ' details for this row'\">\n <i class=\"bi\" [ngClass]=\"{'bi-chevron-down': row.showDetail, 'bi-chevron-right': !row.showDetail}\" aria-hidden=\"true\"></i>\n </button>\n </span>\n </td>\n <!-- If row is a divider, it spans the whole table -->\n <!-- <td *ngIf=\"row.isDivider\" [colSpan]=\"visibleColumnCount + (dataHasDetails ? 1 : 0)\" [ngClass]=\"row.dividerClassName || 'oepa-table-gray'\"> </td> -->\n <!-- Data Rows -->\n <ng-template *ngIf=\"!row.isDivider\" ngFor let-col [ngForOf]=\"dataColumns\" let-i=\"index\">\n <td *ngIf=\"!col.hidden && (row|cellColspan:col) > 0\" ngClass=\"{{row|cellClassname:col || ''}}\" [colSpan]=\"row|cellColspan:col\">\n <!-- Data Cell -->\n <div *ngIf=\"!col.actionColumn && !col.selectColumn && !col.singleSelectColumn\">\n <!-- Template for popover 1 -->\n <ng-template #popoverTemplate>\n <div *ngIf=\"row.popover\">\n <cml-template [templateInfo]=\"row.popover.content\"></cml-template>\n </div>\n </ng-template>\n <!-- Popover 1 icon (if specified) -->\n <span *ngIf=\"row.popover && i === (row.popoverColumnIndex || 0) && row.popover\" tabindex=\"0\" [popoverTitle]=\"row.popover.title\" [popover]=\"popoverTemplate\"\n [containerClass]=\"row.popover.containerClass\" placement=\"right\" [triggers]=\"row.popover.trigger || 'mouseenter:mouseleave'\">\n <i [ngClass]=\"row.popover.className\" [id]=\"tableId+'_PopoverLink_'+r\"></i>\n </span>\n\n <!-- Template for popover 2 -->\n <ng-template #popover2Template>\n <div *ngIf=\"row.popover2\">\n <cml-template [templateInfo]=\"row.popover2.content\"></cml-template>\n </div>\n </ng-template>\n <!-- Popover 2 icon (if specified) -->\n <span *ngIf=\"i === (row.popover2ColumnIndex || 0) && row.popover2\" tabindex=\"0\" [popoverTitle]=\"row.popover2.title\" [popover]=\"popover2Template\"\n [containerClass]=\"row.popover2.containerClass\" placement=\"right\" [triggers]=\"row.popover2.trigger || 'mouseenter:mouseleave'\">\n <i [ngClass]=\"row.popover2.className\" [id]=\"tableId+'_Popover2Link_'+r\"></i>\n </span>\n\n <!-- Template for popover 3 -->\n <ng-template #popover3Template>\n <div *ngIf=\"row.popover3\">\n <cml-template [templateInfo]=\"row.popover3.content\"></cml-template>\n </div>\n </ng-template>\n <!-- Popover 3 icon (if specified) -->\n <span *ngIf=\"i === (row.popover3ColumnIndex || 0) && row.popover3\" tabindex=\"0\" [popoverTitle]=\"row.popover3.title\" [popover]=\"popover3Template\"\n [containerClass]=\"row.popover3.containerClass\" placement=\"right\" [triggers]=\"row.popover3.trigger || 'mouseenter:mouseleave'\">\n <i [ngClass]=\"row.popover3.className\" [id]=\"tableId+'_Popover3Link_'+r\"></i>\n </span>\n\n \n <!-- <div *ngIf=\"row|cellInnerHTML:col\" [innerHTML]=\"row|cellInnerHTML:col\"></div>\n <span *ngIf=\"!(row|cellInnerHTML:col)\">{{row|cellValue:col}}</span> -->\n\n <!-- If col is hyperlink, display data as a hyperlink -->\n <a *ngIf=\"col.hyperlink\" href=\"javascript:void(0);\" (click)=\"cellClick(row, col.id)\" [id]=\"tableId+'_CellClick_'+r+'_'+i\" tabindex=\"0\" role=\"button\" [attr.aria-label]=\"'Activate ' + (col.title || 'cell')\">\n <span *ngIf=\"!(row|cellInnerHTML:col)\">\n <i [ngClass]=\"row|cellIconClassname:col\" aria-hidden=\"true\"></i>\n <span *ngIf=\"row|cellImgSrc:col\"><img [src]=\"row|cellImgSrc:col\" alt=\"\"/></span>\n {{row|cellValue:col}}\n </span>\n <div *ngIf=\"row|cellInnerHTML:col\" [innerHTML]=\"row|cellInnerHTML:col\"></div>\n </a>\n <!-- If col is NOT hyperlink, just display data -->\n <span *ngIf=\"!col.hyperlink\">\n <span *ngIf=\"!(row|cellInnerHTML:col)\">\n <i ngClass=\"{{row|cellIconClassname:col || ''}}\" aria-hidden=\"true\"></i>\n <span *ngIf=\"row|cellImgSrc:col\"><img [src]=\"row|cellImgSrc:col\" alt=\"\"/></span>\n {{row|cellValue:col}}\n </span>\n <div *ngIf=\"row|cellInnerHTML:col\" [innerHTML]=\"row|cellInnerHTML:col\"></div>\n </span>\n </div>\n <!-- Select Cell -->\n <div *ngIf=\"col.selectColumn\" class=\"text-center\">\n <input [id]=\"tableId+'_'+r\" type=\"checkbox\" [disabled]=\"!row.selectable\" [checked]=\"row.selected\" (change)=\"toggleRowSelection(row)\" [attr.aria-label]=\"'Select row ' + (r+1)\">\n </div>\n <!-- Single Select Cell -->\n <div *ngIf=\"col.singleSelectColumn\" class=\"text-center\">\n <input [id]=\"tableId+'_singleSelect_'+r\" type=\"radio\" [disabled]=\"!row.selectable\" [checked]=\"row.selected\" (change)=\"singleRowSelection(row)\" [attr.aria-label]=\"'Select row ' + (r+1)\">\n </div>\n <!-- Action Button Cell -->\n <div *ngIf=\"col.actionColumn && row.actions\">\n <oepa-action-btn [actions]=\"row.actions\" [data]=\"row.dataSource\" (actionClicked)=\"onActionClick($event)\" [btnId]=\"tableId+'_'+r\"></oepa-action-btn>\n </div>\n </td>\n </ng-template>\n </tr>\n\n <!-- Detail Row -->\n <tr *ngIf=\"row.showDetail\" class=\"table-info\">\n <td [colSpan]=\"visibleColumnCount + (dataHasDetails ? 1 : 0)\">\n <cml-template [templateInfo]=\"row.detail\"></cml-template>\n </td>\n </tr>\n </ng-template>\n <tr *ngIf=\"totalRow\">\n <td *ngIf=\"dataHasDetails\">\n </td>\n <ng-template ngFor let-totalCol [ngForOf]=\"dataColumns\">\n <td *ngIf=\"!totalCol.hidden\" ngClass=\"{{totalRow|cellClassname:totalCol || ''}}\">\n <div>\n <span><i ngClass=\"{{totalRow|cellIconClassname:totalCol || ''}}\"></i>{{totalRow|cellValue:totalCol}}</span>\n </div>\n </td>\n </ng-template>\n </tr>\n</tbody>\n</table>\n</div>\n<!-- Table footer -->\n<form *ngIf=\"!config.hideFooter || (data && pageInfo.itemsPerPage < data.length)\" class=\"form-horizontal\">\n<div class=\"form-group row text-right\">\n <!-- Table-wide filter -->\n <div class=\"col-sm-4\">\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <input *ngIf=\"!config.hideGlobalFilter\" placeholder=\"Filter all columns\" [oepaTableFiltering]=\"{ filterString: '' }\" [tableId]=\"tableId\" class=\"form-control input-sm\" (tableChanged)=\"onFilterChanged($event)\"\n [id]=\"tableId+'_FilterAllColumnsInput'\" aria-label=\"Filter all columns in table\" type=\"search\" />\n </div>\n <div class=\"col-sm-6\">\n <span *ngIf=\"config.showRowCountInFooter && _data && _data.length > 0\">\n {{_data.length}} total rows\n </span>\n </div>\n </div>\n </div>\n <!-- Export Buttons -->\n <div class=\"col-sm-4 d-flex justify-content-center\">\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button type=\"button\" *ngIf=\"config.exportToExcel\" class=\"btn btn-primary mr-1\" (click)=\"exportToExcel()\" [id]=\"tableId+'_ExportToExcelBtn'\" aria-label=\"Export to Excel\">Export to Excel</button>\n <button type=\"button\" *ngIf=\"config.exportToHTML\" class=\"btn btn-primary mr-1\" (click)=\"exportToHTML()\" [id]=\"tableId+'_ExportToHTMLBtn'\" aria-label=\"Export to HTML\">Export to HTML</button>\n <button *ngIf=\"customBtnVisible\" type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"onCustomBtnClick()\" [id]=\"tableId+'_CustomBtn'\" [disabled]=\"!customBtnEnabled\" [attr.aria-label]=\"customBtnLabel\">{{customBtnLabel}}</button>\n </div>\n <div *ngIf=\"config.exportToExcel || config.exportToHTML\" class=\"col-sm-12 text-center\">\n <span>Export only visible data: \n <input type=\"checkbox\" [checked]=\"exportVisibleOnly\" (click)=\"toggleExportVisibleOnly()\" id=\"exportVisibleOnlyCheckbox\" aria-label=\"Export only visible data\"/>\n </span>\n </div>\n </div>\n </div>\n <!-- Pagination -->\n <div *ngIf=\"!config.disablePagination\" class=\"col-sm-4 d-flex justify-content-end\">\n <pagination *ngIf=\"paginationOn\" class=\"pagination-sm\" [totalItems]=\"pageInfo.length\" [itemsPerPage]=\"pageInfo.itemsPerPage\" [maxSize]=\"pageInfo.maxSize\"\n [(ngModel)]=\"currentPage\" name=\"currentTablePage\"\n [boundaryLinks]=\"true\" [rotate]=\"false\" (pageChanged)=\"onPageChanged($event)\" (numPages)=\"pageInfo.numPages = $event\"\n aria-label=\"Table pagination\">\n </pagination>\n \n <button (click)=\"togglePagingation()\" type=\"button\" class=\"btn btn-default btn-sm mr-1\" [attr.aria-label]=\"paginationOn ? 'Show All Rows' : 'Restore Pagination'\">{{ paginationOn ? 'Show All Rows' : 'Restore Pagination'}}</button>\n </div>\n</div>\n</form>", styles: [".pagination{margin:0}th.oepa-table-header-center{text-align:center}.oepa-table-bold{font-weight:700}.oepa-table-italic{font-style:italic}.oepa-table-line-through{text-decoration:line-through}.oepa-table-gray{background-color:#ddd}td.oepa-undeline-cell{border-bottom:1pt solid black}.detail-indicator-col{width:30px}.action-btn-col{width:90px}.select-col{width:20px}\n"] }]
|
|
1828
1834
|
}], ctorParameters: () => [{ type: i1$3.DomSanitizer }, { type: TableService }, { type: TableExportService }, { type: i1$1.OepaFileUtilService }], propDecorators: { tableId: [{
|
|
1829
1835
|
type: Input
|
|
1830
1836
|
}], config: [{
|
|
@@ -1932,11 +1938,11 @@ class ConfirmationModalComponent {
|
|
|
1932
1938
|
}
|
|
1933
1939
|
}
|
|
1934
1940
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ConfirmationModalComponent, deps: [{ token: i2$1.BsModalRef }, { token: i2$2.ToastrService }], target: i0.ɵɵFactoryTarget.Component });
|
|
1935
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ConfirmationModalComponent, selector: "oepa-confirmation-modal", inputs: { tableHeader: "tableHeader", tableData: "tableData", headerText: "headerText", bodyText: "bodyText", confirmBtnLabel: "confirmBtnLabel", cancelBtnLabel: "cancelBtnLabel", skipBtnLabel: "skipBtnLabel", bodyClassName: "bodyClassName", confirmationCallback: "confirmationCallback", confirmationCallbackComponent: "confirmationCallbackComponent" }, outputs: { onCellClick: "onCellClick", confirmClicked: "confirmClicked", cancelClicked: "cancelClicked", skipClicked: "skipClicked" }, ngImport: i0, template: "<div *ngIf=\"headerText\" class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">{{headerText}}</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"cancel()\">\n </button>\n</div>\n<div class=\"modal-body\" [ngClass]=\"bodyClassName\">\n <div *ngIf=\"tableData && tableHeader\">\n <oepa-table id = \"permitDetail\" tableId=\"permitDetail\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onCellSelect($event)\" (cellClicked)=\"onCellClicked($event)\">\n </oepa-table>\n </div>\n {{bodyText}}\n</div>\n<div class=\"modal-footer\">\n <button *ngIf=\"confirmBtnLabel\" type=\"button\" class=\"btn btn-primary mr-1\" id=\"btnConfirm\" (click)=\"confirm()\">{{confirmBtnLabel}}</button>\n <button *ngIf=\"cancelBtnLabel\" type=\"button\" class=\"btn btn-primary mr-1\" id=\"btnCancel\" (click)=\"cancel()\">{{cancelBtnLabel}}</button>\n <button *ngIf=\"skipBtnLabel\" type=\"button\" class=\"btn btn-primary mr-1\" id=\"btnSkip\" (click)=\"skip()\">{{skipBtnLabel}}</button>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: TableComponent, selector: "oepa-table", inputs: ["tableId", "config", "complexHeader", "header", "customBtnLabel", "customBtnVisible", "customBtnEnabled", "data", "totalRow"], outputs: ["cellClicked", "actionClicked", "rowSelected", "customBtnClicked"] }] });
|
|
1941
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ConfirmationModalComponent, selector: "oepa-confirmation-modal", inputs: { tableHeader: "tableHeader", tableData: "tableData", headerText: "headerText", bodyText: "bodyText", confirmBtnLabel: "confirmBtnLabel", cancelBtnLabel: "cancelBtnLabel", skipBtnLabel: "skipBtnLabel", bodyClassName: "bodyClassName", confirmationCallback: "confirmationCallback", confirmationCallbackComponent: "confirmationCallbackComponent" }, outputs: { onCellClick: "onCellClick", confirmClicked: "confirmClicked", cancelClicked: "cancelClicked", skipClicked: "skipClicked" }, ngImport: i0, template: "<div *ngIf=\"headerText\" class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">{{headerText}}</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"cancel()\">\n </button>\n</div>\n<div class=\"modal-body\" [ngClass]=\"bodyClassName\">\n <div *ngIf=\"tableData && tableHeader\">\n <oepa-table id = \"permitDetail\" tableId=\"permitDetail\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onCellSelect($event)\" (cellClicked)=\"onCellClicked($event)\">\n </oepa-table>\n </div>\n {{bodyText}}\n</div>\n<div class=\"modal-footer\">\n <button *ngIf=\"confirmBtnLabel\" type=\"button\" class=\"btn btn-primary mr-1\" id=\"btnConfirm\" (click)=\"confirm()\" [attr.aria-label]=\"confirmBtnLabel\">{{confirmBtnLabel}}</button>\n <button *ngIf=\"cancelBtnLabel\" type=\"button\" class=\"btn btn-primary mr-1\" id=\"btnCancel\" (click)=\"cancel()\" [attr.aria-label]=\"cancelBtnLabel\">{{cancelBtnLabel}}</button>\n <button *ngIf=\"skipBtnLabel\" type=\"button\" class=\"btn btn-primary mr-1\" id=\"btnSkip\" (click)=\"skip()\" [attr.aria-label]=\"skipBtnLabel\">{{skipBtnLabel}}</button>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: TableComponent, selector: "oepa-table", inputs: ["tableId", "config", "complexHeader", "header", "customBtnLabel", "customBtnVisible", "customBtnEnabled", "data", "totalRow"], outputs: ["cellClicked", "actionClicked", "rowSelected", "customBtnClicked"] }] });
|
|
1936
1942
|
}
|
|
1937
1943
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ConfirmationModalComponent, decorators: [{
|
|
1938
1944
|
type: Component,
|
|
1939
|
-
args: [{ selector: 'oepa-confirmation-modal', template: "<div *ngIf=\"headerText\" class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">{{headerText}}</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"cancel()\">\n </button>\n</div>\n<div class=\"modal-body\" [ngClass]=\"bodyClassName\">\n <div *ngIf=\"tableData && tableHeader\">\n <oepa-table id = \"permitDetail\" tableId=\"permitDetail\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onCellSelect($event)\" (cellClicked)=\"onCellClicked($event)\">\n </oepa-table>\n </div>\n {{bodyText}}\n</div>\n<div class=\"modal-footer\">\n <button *ngIf=\"confirmBtnLabel\" type=\"button\" class=\"btn btn-primary mr-1\" id=\"btnConfirm\" (click)=\"confirm()\">{{confirmBtnLabel}}</button>\n <button *ngIf=\"cancelBtnLabel\" type=\"button\" class=\"btn btn-primary mr-1\" id=\"btnCancel\" (click)=\"cancel()\">{{cancelBtnLabel}}</button>\n <button *ngIf=\"skipBtnLabel\" type=\"button\" class=\"btn btn-primary mr-1\" id=\"btnSkip\" (click)=\"skip()\">{{skipBtnLabel}}</button>\n</div>\n" }]
|
|
1945
|
+
args: [{ selector: 'oepa-confirmation-modal', template: "<div *ngIf=\"headerText\" class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">{{headerText}}</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"cancel()\">\n </button>\n</div>\n<div class=\"modal-body\" [ngClass]=\"bodyClassName\">\n <div *ngIf=\"tableData && tableHeader\">\n <oepa-table id = \"permitDetail\" tableId=\"permitDetail\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onCellSelect($event)\" (cellClicked)=\"onCellClicked($event)\">\n </oepa-table>\n </div>\n {{bodyText}}\n</div>\n<div class=\"modal-footer\">\n <button *ngIf=\"confirmBtnLabel\" type=\"button\" class=\"btn btn-primary mr-1\" id=\"btnConfirm\" (click)=\"confirm()\" [attr.aria-label]=\"confirmBtnLabel\">{{confirmBtnLabel}}</button>\n <button *ngIf=\"cancelBtnLabel\" type=\"button\" class=\"btn btn-primary mr-1\" id=\"btnCancel\" (click)=\"cancel()\" [attr.aria-label]=\"cancelBtnLabel\">{{cancelBtnLabel}}</button>\n <button *ngIf=\"skipBtnLabel\" type=\"button\" class=\"btn btn-primary mr-1\" id=\"btnSkip\" (click)=\"skip()\" [attr.aria-label]=\"skipBtnLabel\">{{skipBtnLabel}}</button>\n</div>\n" }]
|
|
1940
1946
|
}], ctorParameters: () => [{ type: i2$1.BsModalRef }, { type: i2$2.ToastrService }], propDecorators: { tableHeader: [{
|
|
1941
1947
|
type: Input
|
|
1942
1948
|
}], tableData: [{
|
|
@@ -2056,7 +2062,6 @@ class AccountSearchModalComponent {
|
|
|
2056
2062
|
return empty;
|
|
2057
2063
|
}
|
|
2058
2064
|
submitSearch() {
|
|
2059
|
-
console.log("SEAARCH");
|
|
2060
2065
|
this.errorMessage = undefined;
|
|
2061
2066
|
let filter = this.getFilterFromForm();
|
|
2062
2067
|
if (this.filterIsEmpty(filter)) {
|
|
@@ -2124,11 +2129,11 @@ class AccountSearchModalComponent {
|
|
|
2124
2129
|
this.bsModalRef.hide();
|
|
2125
2130
|
}
|
|
2126
2131
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AccountSearchModalComponent, deps: [{ token: i1$2.FormBuilder }, { token: i2$1.BsModalRef }, { token: AccountSearchService }], target: i0.ɵɵFactoryTarget.Component });
|
|
2127
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AccountSearchModalComponent, selector: "oepa-account-search-modal", inputs: { searchURL: "searchURL" }, outputs: { onAccountSelected: "onAccountSelected" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Advanced Ebiz Account Search</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n </button>\n</div>\n<div class=\"modal-body\">\n <accordion>\n <accordion-group panelClass=\"panel-info\" #searchGroup [isOpen]=\"openSearchCriteria\">\n <div accordion-heading>\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <i class=\"float-xs-right bi\" id=\"accountSearchCriteria\" name=\"accountSearchCriteria\" \n [ngClass]=\"{'bi-chevron-down': searchGroup?.isOpen, 'bi-chevron-right': !searchGroup?.isOpen}\"></i>\n <b>Ebiz Account Search Criteria</b>\n </div>\n </div>\n </div>\n <form [formGroup]=\"modalFormGroup\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Ebiz User ID</label>\n <input type=\"search\" class=\"form-control\" id=\"userUIDInput\" formControlName=\"userID\">\n </div>\n </div>\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>First Name</label>\n <input type=\"search\" class=\"form-control\" id=\"firstNameInput\" formControlName=\"firstName\">\n </div>\n </div>\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Last Name</label>\n <input type=\"search\" class=\"form-control\" id=\"lastNameInput\" formControlName=\"lastName\">\n </div>\n </div>\n </div>\n \n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\" class=\"spinner-border text-primary\" role=\"status\"></span>\n <button *ngIf=\"!inProgressMsg\" type=\"submit\" class=\"btn btn-primary mr-2\" id=\"submitSearchBtn\" (click)=\"submitSearch()\">Search</button>\n <button id=\"resetSearchBtn\" type=\"button\" class=\"btn btn-primary\" (click)=\"resetSearch()\">Reset</button>\n </div>\n </div>\n </form>\n </accordion-group>\n </accordion>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Ebiz Account List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\" *ngIf=\"tableHeader\">\n <oepa-table tableId=\"accountSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div *ngIf=\"inProgressMsg\">\n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SaveAccountBtn\"\n [disabled]=\"!selectedAccount || inProgressMsg\"\n (click)=\"save()\">Save</button>\n <button id=\"CancelPaymentBtn\" type=\"button\" class=\"btn btn-primary\"\n (click)=\"bsModalRef.hide()\">Cancel</button>\n </div>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6.AccordionComponent, selector: "accordion", inputs: ["isAnimated", "closeOthers"] }, { kind: "component", type: i6.AccordionPanelComponent, selector: "accordion-group, accordion-panel", inputs: ["heading", "panelClass", "isDisabled", "isOpen"], outputs: ["isOpenChange"] }, { kind: "component", type: TableComponent, selector: "oepa-table", inputs: ["tableId", "config", "complexHeader", "header", "customBtnLabel", "customBtnVisible", "customBtnEnabled", "data", "totalRow"], outputs: ["cellClicked", "actionClicked", "rowSelected", "customBtnClicked"] }] });
|
|
2132
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AccountSearchModalComponent, selector: "oepa-account-search-modal", inputs: { searchURL: "searchURL" }, outputs: { onAccountSelected: "onAccountSelected" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Advanced Ebiz Account Search</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n </button>\n</div>\n<div class=\"modal-body\">\n <accordion>\n <accordion-group panelClass=\"panel-info\" #searchGroup [isOpen]=\"openSearchCriteria\">\n <div accordion-heading>\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <i class=\"float-xs-right bi\" id=\"accountSearchCriteria\" name=\"accountSearchCriteria\" \n [ngClass]=\"{'bi-chevron-down': searchGroup?.isOpen, 'bi-chevron-right': !searchGroup?.isOpen}\"></i>\n <b>Ebiz Account Search Criteria</b>\n </div>\n </div>\n </div>\n <form [formGroup]=\"modalFormGroup\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"userUIDInput\">Ebiz User ID</label>\n <input type=\"search\" class=\"form-control\" id=\"userUIDInput\" formControlName=\"userID\">\n </div>\n </div>\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"firstNameInput\">First Name</label>\n <input type=\"search\" class=\"form-control\" id=\"firstNameInput\" formControlName=\"firstName\">\n </div>\n </div>\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"lastNameInput\">Last Name</label>\n <input type=\"search\" class=\"form-control\" id=\"lastNameInput\" formControlName=\"lastName\">\n </div>\n </div>\n </div>\n \n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\" class=\"spinner-border text-primary\" role=\"status\"></span>\n <button *ngIf=\"!inProgressMsg\" type=\"submit\" class=\"btn btn-primary mr-2\" id=\"submitSearchBtn\" (click)=\"submitSearch()\" aria-label=\"Search\">Search</button>\n <button id=\"resetSearchBtn\" type=\"button\" class=\"btn btn-primary\" (click)=\"resetSearch()\" aria-label=\"Reset\">Reset</button>\n </div>\n </div>\n </form>\n </accordion-group>\n </accordion>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Ebiz Account List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\" *ngIf=\"tableHeader\">\n <oepa-table tableId=\"accountSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div *ngIf=\"inProgressMsg\">\n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SaveAccountBtn\"\n [disabled]=\"!selectedAccount || inProgressMsg\"\n (click)=\"save()\" aria-label=\"Save\">Save</button>\n <button id=\"CancelPaymentBtn\" type=\"button\" class=\"btn btn-primary\"\n (click)=\"bsModalRef.hide()\" aria-label=\"Cancel\">Cancel</button>\n </div>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6.AccordionComponent, selector: "accordion", inputs: ["isAnimated", "closeOthers"] }, { kind: "component", type: i6.AccordionPanelComponent, selector: "accordion-group, accordion-panel", inputs: ["heading", "panelClass", "isDisabled", "isOpen"], outputs: ["isOpenChange"] }, { kind: "component", type: TableComponent, selector: "oepa-table", inputs: ["tableId", "config", "complexHeader", "header", "customBtnLabel", "customBtnVisible", "customBtnEnabled", "data", "totalRow"], outputs: ["cellClicked", "actionClicked", "rowSelected", "customBtnClicked"] }] });
|
|
2128
2133
|
}
|
|
2129
2134
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AccountSearchModalComponent, decorators: [{
|
|
2130
2135
|
type: Component,
|
|
2131
|
-
args: [{ selector: 'oepa-account-search-modal', template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Advanced Ebiz Account Search</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n </button>\n</div>\n<div class=\"modal-body\">\n <accordion>\n <accordion-group panelClass=\"panel-info\" #searchGroup [isOpen]=\"openSearchCriteria\">\n <div accordion-heading>\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <i class=\"float-xs-right bi\" id=\"accountSearchCriteria\" name=\"accountSearchCriteria\" \n [ngClass]=\"{'bi-chevron-down': searchGroup?.isOpen, 'bi-chevron-right': !searchGroup?.isOpen}\"></i>\n <b>Ebiz Account Search Criteria</b>\n </div>\n </div>\n </div>\n <form [formGroup]=\"modalFormGroup\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Ebiz User ID</label>\n <input type=\"search\" class=\"form-control\" id=\"userUIDInput\" formControlName=\"userID\">\n </div>\n </div>\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>First Name</label>\n <input type=\"search\" class=\"form-control\" id=\"firstNameInput\" formControlName=\"firstName\">\n </div>\n </div>\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Last Name</label>\n <input type=\"search\" class=\"form-control\" id=\"lastNameInput\" formControlName=\"lastName\">\n </div>\n </div>\n </div>\n \n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\" class=\"spinner-border text-primary\" role=\"status\"></span>\n <button *ngIf=\"!inProgressMsg\" type=\"submit\" class=\"btn btn-primary mr-2\" id=\"submitSearchBtn\" (click)=\"submitSearch()\">Search</button>\n <button id=\"resetSearchBtn\" type=\"button\" class=\"btn btn-primary\" (click)=\"resetSearch()\">Reset</button>\n </div>\n </div>\n </form>\n </accordion-group>\n </accordion>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Ebiz Account List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\" *ngIf=\"tableHeader\">\n <oepa-table tableId=\"accountSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div *ngIf=\"inProgressMsg\">\n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SaveAccountBtn\"\n [disabled]=\"!selectedAccount || inProgressMsg\"\n (click)=\"save()\">Save</button>\n <button id=\"CancelPaymentBtn\" type=\"button\" class=\"btn btn-primary\"\n (click)=\"bsModalRef.hide()\">Cancel</button>\n </div>\n </div>\n</div>" }]
|
|
2136
|
+
args: [{ selector: 'oepa-account-search-modal', template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Advanced Ebiz Account Search</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n </button>\n</div>\n<div class=\"modal-body\">\n <accordion>\n <accordion-group panelClass=\"panel-info\" #searchGroup [isOpen]=\"openSearchCriteria\">\n <div accordion-heading>\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <i class=\"float-xs-right bi\" id=\"accountSearchCriteria\" name=\"accountSearchCriteria\" \n [ngClass]=\"{'bi-chevron-down': searchGroup?.isOpen, 'bi-chevron-right': !searchGroup?.isOpen}\"></i>\n <b>Ebiz Account Search Criteria</b>\n </div>\n </div>\n </div>\n <form [formGroup]=\"modalFormGroup\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"userUIDInput\">Ebiz User ID</label>\n <input type=\"search\" class=\"form-control\" id=\"userUIDInput\" formControlName=\"userID\">\n </div>\n </div>\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"firstNameInput\">First Name</label>\n <input type=\"search\" class=\"form-control\" id=\"firstNameInput\" formControlName=\"firstName\">\n </div>\n </div>\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"lastNameInput\">Last Name</label>\n <input type=\"search\" class=\"form-control\" id=\"lastNameInput\" formControlName=\"lastName\">\n </div>\n </div>\n </div>\n \n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\" class=\"spinner-border text-primary\" role=\"status\"></span>\n <button *ngIf=\"!inProgressMsg\" type=\"submit\" class=\"btn btn-primary mr-2\" id=\"submitSearchBtn\" (click)=\"submitSearch()\" aria-label=\"Search\">Search</button>\n <button id=\"resetSearchBtn\" type=\"button\" class=\"btn btn-primary\" (click)=\"resetSearch()\" aria-label=\"Reset\">Reset</button>\n </div>\n </div>\n </form>\n </accordion-group>\n </accordion>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Ebiz Account List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\" *ngIf=\"tableHeader\">\n <oepa-table tableId=\"accountSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div *ngIf=\"inProgressMsg\">\n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SaveAccountBtn\"\n [disabled]=\"!selectedAccount || inProgressMsg\"\n (click)=\"save()\" aria-label=\"Save\">Save</button>\n <button id=\"CancelPaymentBtn\" type=\"button\" class=\"btn btn-primary\"\n (click)=\"bsModalRef.hide()\" aria-label=\"Cancel\">Cancel</button>\n </div>\n </div>\n</div>" }]
|
|
2132
2137
|
}], ctorParameters: () => [{ type: i1$2.FormBuilder }, { type: i2$1.BsModalRef }, { type: AccountSearchService }], propDecorators: { searchURL: [{
|
|
2133
2138
|
type: Input,
|
|
2134
2139
|
args: ['searchURL']
|
|
@@ -2327,11 +2332,11 @@ class TableDataCellComponent {
|
|
|
2327
2332
|
this.onActionClick.emit(event);
|
|
2328
2333
|
}
|
|
2329
2334
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TableDataCellComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2330
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TableDataCellComponent, selector: "oepa-table-data-cell", inputs: { col: "col", row: "row", i: "i", r: "r", tableId: "tableId" }, outputs: { onCellClick: "onCellClick", onToggleRowSelection: "onToggleRowSelection", onSingleRowSelection: "onSingleRowSelection", onActionClick: "onActionClick" }, ngImport: i0, template: "
|
|
2335
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TableDataCellComponent, selector: "oepa-table-data-cell", inputs: { col: "col", row: "row", i: "i", r: "r", tableId: "tableId" }, outputs: { onCellClick: "onCellClick", onToggleRowSelection: "onToggleRowSelection", onSingleRowSelection: "onSingleRowSelection", onActionClick: "onActionClick" }, ngImport: i0, template: "<!-- Data Cell -->\n <div *ngIf=\"!col.actionColumn && !col.selectColumn && !col.singleSelectColumn && !col.inputColumn\">\n <!-- Template for popover 1 -->\n <ng-template #popoverTemplate>\n <div *ngIf=\"row.popover\">\n <cml-template [templateInfo]=\"row.popover.content\"></cml-template>\n </div>\n </ng-template>\n <!-- Popover 1 icon (if specified) -->\n <span *ngIf=\"row.popover && i === (row.popoverColumnIndex || 0) && row.popover\" tabindex=\"0\"\n [popoverTitle]=\"row.popover.title\" [popover]=\"popoverTemplate\"\n [containerClass]=\"row.popover.containerClass\" placement=\"right\"\n [triggers]=\"row.popover.trigger || 'mouseenter:mouseleave'\">\n <i [ngClass]=\"row.popover.className\" [id]=\"tableId+'_PopoverLink_'+r\"></i>\n </span>\n \n <!-- Template for popover 2 -->\n <ng-template #popover2Template>\n <div *ngIf=\"row.popover2\">\n <cml-template [templateInfo]=\"row.popover2.content\"></cml-template>\n </div>\n </ng-template>\n <!-- Popover 2 icon (if specified) -->\n <span *ngIf=\"i === (row.popover2ColumnIndex || 0) && row.popover2\" tabindex=\"0\"\n [popoverTitle]=\"row.popover2.title\" [popover]=\"popover2Template\"\n [containerClass]=\"row.popover2.containerClass\" placement=\"right\"\n [triggers]=\"row.popover2.trigger || 'mouseenter:mouseleave'\">\n <i [ngClass]=\"row.popover2.className\" [id]=\"tableId+'_Popover2Link_'+r\"></i>\n </span>\n \n <!-- Template for popover 3 -->\n <ng-template #popover3Template>\n <div *ngIf=\"row.popover3\">\n <cml-template [templateInfo]=\"row.popover3.content\"></cml-template>\n </div>\n </ng-template>\n <!-- Popover 3 icon (if specified) -->\n <span *ngIf=\"i === (row.popover3ColumnIndex || 0) && row.popover3\" tabindex=\"0\"\n [popoverTitle]=\"row.popover3.title\" [popover]=\"popover3Template\"\n [containerClass]=\"row.popover3.containerClass\" placement=\"right\"\n [triggers]=\"row.popover3.trigger || 'mouseenter:mouseleave'\">\n <i [ngClass]=\"row.popover3.className\" [id]=\"tableId+'_Popover3Link_'+r\"></i>\n </span>\n \n \n <!-- <div *ngIf=\"row|cellInnerHTML:col\" [innerHTML]=\"row|cellInnerHTML:col\"></div>\n <span *ngIf=\"!(row|cellInnerHTML:col)\">{{row|cellValue:col}}</span> -->\n \n <!-- If col is hyperlink, display data as a hyperlink -->\n <a *ngIf=\"col.hyperlink && !(row|cellNotSelectable:col)\" href=\"javascript:void(0);\"\n (click)=\"cellClick(row, col.id)\" [id]=\"tableId+'_CellClick_'+r+'_'+i\"\n [attr.aria-label]=\"col.title || 'Link'\">\n <span *ngIf=\"!(row|cellInnerHTML:col)\">\n <i [ngClass]=\"row|cellIconClassname:col\"></i>\n <span *ngIf=\"row|cellImgSrc:col\"><img [src]=\"row|cellImgSrc:col\" alt=\"\" /></span>\n {{row|cellValue:col}}\n </span>\n <div *ngIf=\"row|cellInnerHTML:col\" [innerHTML]=\"row|cellInnerHTML:col\"></div>\n </a>\n <!-- If col is NOT hyperlink, just display data -->\n <span *ngIf=\"!col.hyperlink || (row|cellNotSelectable:col)\">\n <span *ngIf=\"!(row|cellInnerHTML:col)\">\n <i ngClass=\"{{row|cellIconClassname:col || ''}}\"></i>\n <span *ngIf=\"row|cellImgSrc:col\"><img [src]=\"row|cellImgSrc:col\" alt=\"\" /></span>\n {{row|cellValue:col}}\n </span>\n <div *ngIf=\"row|cellInnerHTML:col\" [innerHTML]=\"row|cellInnerHTML:col\"></div>\n </span>\n </div>\n <!-- Input Cell -->\n <div *ngIf=\"col.inputColumn\">\n <cml-template [templateInfo]=\"row|cellInputComponent:col\"></cml-template>\n </div>\n <!-- Select Cell -->\n <div *ngIf=\"col.selectColumn\" class=\"text-center\">\n <input [id]=\"tableId+'_'+r\" type=\"checkbox\" [disabled]=\"!row.selectable\" [checked]=\"row.selected\"\n (change)=\"toggleRowSelection(row)\" [attr.aria-label]=\"'Select row ' + (r+1)\">\n </div>\n <!-- Single Select Cell -->\n <div *ngIf=\"col.singleSelectColumn\" class=\"text-center\">\n <input [id]=\"tableId+'_singleSelect_'+r\" type=\"radio\" [disabled]=\"!row.selectable\"\n [checked]=\"row.selected\" (change)=\"singleRowSelection(row)\" [attr.aria-label]=\"'Select row ' + (r+1)\">\n </div>\n <!-- Action Button Cell -->\n <div *ngIf=\"col.actionColumn && row.actions\">\n <oepa-action-btn [actions]=\"row.actions\" [data]=\"row.dataSource\" (actionClicked)=\"actionClick($event)\"\n [btnId]=\"tableId+'_'+r\"></oepa-action-btn>\n </div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i8.PopoverDirective, selector: "[popover]", inputs: ["adaptivePosition", "boundariesElement", "popover", "popoverContext", "popoverTitle", "placement", "outsideClick", "triggers", "container", "containerClass", "isOpen", "delay"], outputs: ["onShown", "onHidden"], exportAs: ["bs-popover"] }, { kind: "component", type: i1$1.OepaTemplateComponent, selector: "cml-template", inputs: ["templateInfo"] }, { kind: "component", type: ActionBtnComponent, selector: "oepa-action-btn", inputs: ["label", "btnId", "data", "actions", "normalSize", "dropup"], outputs: ["actionClicked"] }, { kind: "pipe", type: OepaTableCellInnerHtmlPipe, name: "cellInnerHTML" }, { kind: "pipe", type: OepaTableCellValuePipe, name: "cellValue" }, { kind: "pipe", type: OepaTableCellIconClassnamePipe, name: "cellIconClassname" }, { kind: "pipe", type: OepaTableCellImgSrcPipe, name: "cellImgSrc" }, { kind: "pipe", type: OepaTableCellNotSelectablePipe, name: "cellNotSelectable" }, { kind: "pipe", type: OepaTableCellInputComponentPipe, name: "cellInputComponent" }] });
|
|
2331
2336
|
}
|
|
2332
2337
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TableDataCellComponent, decorators: [{
|
|
2333
2338
|
type: Component,
|
|
2334
|
-
args: [{ selector: 'oepa-table-data-cell', template: "
|
|
2339
|
+
args: [{ selector: 'oepa-table-data-cell', template: "<!-- Data Cell -->\n <div *ngIf=\"!col.actionColumn && !col.selectColumn && !col.singleSelectColumn && !col.inputColumn\">\n <!-- Template for popover 1 -->\n <ng-template #popoverTemplate>\n <div *ngIf=\"row.popover\">\n <cml-template [templateInfo]=\"row.popover.content\"></cml-template>\n </div>\n </ng-template>\n <!-- Popover 1 icon (if specified) -->\n <span *ngIf=\"row.popover && i === (row.popoverColumnIndex || 0) && row.popover\" tabindex=\"0\"\n [popoverTitle]=\"row.popover.title\" [popover]=\"popoverTemplate\"\n [containerClass]=\"row.popover.containerClass\" placement=\"right\"\n [triggers]=\"row.popover.trigger || 'mouseenter:mouseleave'\">\n <i [ngClass]=\"row.popover.className\" [id]=\"tableId+'_PopoverLink_'+r\"></i>\n </span>\n \n <!-- Template for popover 2 -->\n <ng-template #popover2Template>\n <div *ngIf=\"row.popover2\">\n <cml-template [templateInfo]=\"row.popover2.content\"></cml-template>\n </div>\n </ng-template>\n <!-- Popover 2 icon (if specified) -->\n <span *ngIf=\"i === (row.popover2ColumnIndex || 0) && row.popover2\" tabindex=\"0\"\n [popoverTitle]=\"row.popover2.title\" [popover]=\"popover2Template\"\n [containerClass]=\"row.popover2.containerClass\" placement=\"right\"\n [triggers]=\"row.popover2.trigger || 'mouseenter:mouseleave'\">\n <i [ngClass]=\"row.popover2.className\" [id]=\"tableId+'_Popover2Link_'+r\"></i>\n </span>\n \n <!-- Template for popover 3 -->\n <ng-template #popover3Template>\n <div *ngIf=\"row.popover3\">\n <cml-template [templateInfo]=\"row.popover3.content\"></cml-template>\n </div>\n </ng-template>\n <!-- Popover 3 icon (if specified) -->\n <span *ngIf=\"i === (row.popover3ColumnIndex || 0) && row.popover3\" tabindex=\"0\"\n [popoverTitle]=\"row.popover3.title\" [popover]=\"popover3Template\"\n [containerClass]=\"row.popover3.containerClass\" placement=\"right\"\n [triggers]=\"row.popover3.trigger || 'mouseenter:mouseleave'\">\n <i [ngClass]=\"row.popover3.className\" [id]=\"tableId+'_Popover3Link_'+r\"></i>\n </span>\n \n \n <!-- <div *ngIf=\"row|cellInnerHTML:col\" [innerHTML]=\"row|cellInnerHTML:col\"></div>\n <span *ngIf=\"!(row|cellInnerHTML:col)\">{{row|cellValue:col}}</span> -->\n \n <!-- If col is hyperlink, display data as a hyperlink -->\n <a *ngIf=\"col.hyperlink && !(row|cellNotSelectable:col)\" href=\"javascript:void(0);\"\n (click)=\"cellClick(row, col.id)\" [id]=\"tableId+'_CellClick_'+r+'_'+i\"\n [attr.aria-label]=\"col.title || 'Link'\">\n <span *ngIf=\"!(row|cellInnerHTML:col)\">\n <i [ngClass]=\"row|cellIconClassname:col\"></i>\n <span *ngIf=\"row|cellImgSrc:col\"><img [src]=\"row|cellImgSrc:col\" alt=\"\" /></span>\n {{row|cellValue:col}}\n </span>\n <div *ngIf=\"row|cellInnerHTML:col\" [innerHTML]=\"row|cellInnerHTML:col\"></div>\n </a>\n <!-- If col is NOT hyperlink, just display data -->\n <span *ngIf=\"!col.hyperlink || (row|cellNotSelectable:col)\">\n <span *ngIf=\"!(row|cellInnerHTML:col)\">\n <i ngClass=\"{{row|cellIconClassname:col || ''}}\"></i>\n <span *ngIf=\"row|cellImgSrc:col\"><img [src]=\"row|cellImgSrc:col\" alt=\"\" /></span>\n {{row|cellValue:col}}\n </span>\n <div *ngIf=\"row|cellInnerHTML:col\" [innerHTML]=\"row|cellInnerHTML:col\"></div>\n </span>\n </div>\n <!-- Input Cell -->\n <div *ngIf=\"col.inputColumn\">\n <cml-template [templateInfo]=\"row|cellInputComponent:col\"></cml-template>\n </div>\n <!-- Select Cell -->\n <div *ngIf=\"col.selectColumn\" class=\"text-center\">\n <input [id]=\"tableId+'_'+r\" type=\"checkbox\" [disabled]=\"!row.selectable\" [checked]=\"row.selected\"\n (change)=\"toggleRowSelection(row)\" [attr.aria-label]=\"'Select row ' + (r+1)\">\n </div>\n <!-- Single Select Cell -->\n <div *ngIf=\"col.singleSelectColumn\" class=\"text-center\">\n <input [id]=\"tableId+'_singleSelect_'+r\" type=\"radio\" [disabled]=\"!row.selectable\"\n [checked]=\"row.selected\" (change)=\"singleRowSelection(row)\" [attr.aria-label]=\"'Select row ' + (r+1)\">\n </div>\n <!-- Action Button Cell -->\n <div *ngIf=\"col.actionColumn && row.actions\">\n <oepa-action-btn [actions]=\"row.actions\" [data]=\"row.dataSource\" (actionClicked)=\"actionClick($event)\"\n [btnId]=\"tableId+'_'+r\"></oepa-action-btn>\n </div>\n" }]
|
|
2335
2340
|
}], propDecorators: { col: [{
|
|
2336
2341
|
type: Input
|
|
2337
2342
|
}], row: [{
|
|
@@ -2383,11 +2388,11 @@ class TableHeaderCellComponent {
|
|
|
2383
2388
|
this.onFilterChanged.emit(filter);
|
|
2384
2389
|
}
|
|
2385
2390
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TableHeaderCellComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2386
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TableHeaderCellComponent, selector: "oepa-table-header-cell", inputs: { column: "column", tableId: "tableId", allRowsSelected: "allRowsSelected", rowCount: "rowCount", noFiltersSubject: "noFiltersSubject" }, outputs: { onToggleAllRowsSelection: "onToggleAllRowsSelection", onSortChanged: "onSortChanged", onHideColumn: "onHideColumn", onFilterChanged: "onFilterChanged" }, ngImport: i0, template: "<!-- Select all Rows Checkbox -->\n<div class=\"text-center\">\n <input *ngIf=\"column.selectColumn\" type=\"checkbox\" [checked]=\"allRowsSelected\" (change)=\"toggleAllRowsSelection()\">\n\n <!-- Header cell text with sort capability (if specified) -->\n <span [oepaTableSorting]=\"true\" [column]=\"column\" [tableId]=\"tableId\" (sortChanged)=\"sortChanged($event)\"\n [id]=\"tableId+'_SortColumnLink_'+column.id\">\n <span *ngIf=\"column.sort\"><i class=\"pull-left bi\"\n [ngClass]=\"{'bi-chevron-down': column.sort === 'desc', 'bi-chevron-up': column.sort === 'asc'}\"></i>\n <sup *ngIf=\"column?.sortIndex || 0 > 1\">{{column.sortIndex}}</sup></span>\n {{column.title}}
|
|
2391
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TableHeaderCellComponent, selector: "oepa-table-header-cell", inputs: { column: "column", tableId: "tableId", allRowsSelected: "allRowsSelected", rowCount: "rowCount", noFiltersSubject: "noFiltersSubject" }, outputs: { onToggleAllRowsSelection: "onToggleAllRowsSelection", onSortChanged: "onSortChanged", onHideColumn: "onHideColumn", onFilterChanged: "onFilterChanged" }, ngImport: i0, template: "<!-- Select all Rows Checkbox -->\n<div class=\"text-center\">\n <input *ngIf=\"column.selectColumn\" type=\"checkbox\" [checked]=\"allRowsSelected\" (change)=\"toggleAllRowsSelection()\" [attr.aria-label]=\"'Select all rows'\">\n\n <!-- Header cell text with sort capability (if specified) -->\n <span [oepaTableSorting]=\"true\" [column]=\"column\" [tableId]=\"tableId\" (sortChanged)=\"sortChanged($event)\"\n [id]=\"tableId+'_SortColumnLink_'+column.id\">\n <span *ngIf=\"column.sort\"><i class=\"pull-left bi\"\n [ngClass]=\"{'bi-chevron-down': column.sort === 'desc', 'bi-chevron-up': column.sort === 'asc'}\"></i>\n <sup *ngIf=\"column?.sortIndex || 0 > 1\">{{column.sortIndex}}</sup></span>\n <span *ngIf=\"!column.title || column.title.trim() === ''\" class=\"visually-hidden\">Column</span>\n <span *ngIf=\"column.title && column.title.trim() !== ''\">{{column.title}}</span>\n </span>\n <!-- button to allow column to be hidden (if specified) -->\n <button *ngIf=\"column.hidden === false\" type=\"button\" class=\"btn-close float-end\" aria-label=\"Hide\"\n (click)=\"hideColumn(column)\" [id]=\"tableId+'_HideColumnLink'+'_'+column.id\">\n </button>\n\n</div>\n<!-- column filter (if specified) -->\n<div *ngIf=\"column.filterable\">\n <input [oepaTableFiltering]=\"{ filterString: '', columnId: column.id }\" [tableId]=\"tableId\"\n class=\"form-control input-sm\" (tableChanged)=\"filterChanged($event)\" [id]=\"tableId+'_FilterColumn_'+column.id\"\n [attr.aria-label]=\"'Filter for ' + column.title\" />\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: OepaTableSortingDirective, selector: "[oepaTableSorting]", inputs: ["tableId", "oepaTableSorting", "column"], outputs: ["sortChanged"] }, { kind: "directive", type: OepaTableFilteringDirective, selector: "[oepaTableFiltering]", inputs: ["oepaTableFiltering", "tableId"], outputs: ["tableChanged"] }] });
|
|
2387
2392
|
}
|
|
2388
2393
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TableHeaderCellComponent, decorators: [{
|
|
2389
2394
|
type: Component,
|
|
2390
|
-
args: [{ selector: 'oepa-table-header-cell', template: "<!-- Select all Rows Checkbox -->\n<div class=\"text-center\">\n <input *ngIf=\"column.selectColumn\" type=\"checkbox\" [checked]=\"allRowsSelected\" (change)=\"toggleAllRowsSelection()\">\n\n <!-- Header cell text with sort capability (if specified) -->\n <span [oepaTableSorting]=\"true\" [column]=\"column\" [tableId]=\"tableId\" (sortChanged)=\"sortChanged($event)\"\n [id]=\"tableId+'_SortColumnLink_'+column.id\">\n <span *ngIf=\"column.sort\"><i class=\"pull-left bi\"\n [ngClass]=\"{'bi-chevron-down': column.sort === 'desc', 'bi-chevron-up': column.sort === 'asc'}\"></i>\n <sup *ngIf=\"column?.sortIndex || 0 > 1\">{{column.sortIndex}}</sup></span>\n {{column.title}}
|
|
2395
|
+
args: [{ selector: 'oepa-table-header-cell', template: "<!-- Select all Rows Checkbox -->\n<div class=\"text-center\">\n <input *ngIf=\"column.selectColumn\" type=\"checkbox\" [checked]=\"allRowsSelected\" (change)=\"toggleAllRowsSelection()\" [attr.aria-label]=\"'Select all rows'\">\n\n <!-- Header cell text with sort capability (if specified) -->\n <span [oepaTableSorting]=\"true\" [column]=\"column\" [tableId]=\"tableId\" (sortChanged)=\"sortChanged($event)\"\n [id]=\"tableId+'_SortColumnLink_'+column.id\">\n <span *ngIf=\"column.sort\"><i class=\"pull-left bi\"\n [ngClass]=\"{'bi-chevron-down': column.sort === 'desc', 'bi-chevron-up': column.sort === 'asc'}\"></i>\n <sup *ngIf=\"column?.sortIndex || 0 > 1\">{{column.sortIndex}}</sup></span>\n <span *ngIf=\"!column.title || column.title.trim() === ''\" class=\"visually-hidden\">Column</span>\n <span *ngIf=\"column.title && column.title.trim() !== ''\">{{column.title}}</span>\n </span>\n <!-- button to allow column to be hidden (if specified) -->\n <button *ngIf=\"column.hidden === false\" type=\"button\" class=\"btn-close float-end\" aria-label=\"Hide\"\n (click)=\"hideColumn(column)\" [id]=\"tableId+'_HideColumnLink'+'_'+column.id\">\n </button>\n\n</div>\n<!-- column filter (if specified) -->\n<div *ngIf=\"column.filterable\">\n <input [oepaTableFiltering]=\"{ filterString: '', columnId: column.id }\" [tableId]=\"tableId\"\n class=\"form-control input-sm\" (tableChanged)=\"filterChanged($event)\" [id]=\"tableId+'_FilterColumn_'+column.id\"\n [attr.aria-label]=\"'Filter for ' + column.title\" />\n</div>" }]
|
|
2391
2396
|
}], propDecorators: { column: [{
|
|
2392
2397
|
type: Input
|
|
2393
2398
|
}], tableId: [{
|
|
@@ -2420,6 +2425,7 @@ class PTableComponent {
|
|
|
2420
2425
|
visibleColumnCount = 0;
|
|
2421
2426
|
allColumnCount = 0;
|
|
2422
2427
|
exportVisibleOnly = false;
|
|
2428
|
+
exportUnselectedRows = false;
|
|
2423
2429
|
noFiltersSubject = new Subject();
|
|
2424
2430
|
dataColumns = [];
|
|
2425
2431
|
visibleColumns = [];
|
|
@@ -2456,6 +2462,7 @@ class PTableComponent {
|
|
|
2456
2462
|
this.pageInfo.itemsPerPage = conf.rowsPerPage;
|
|
2457
2463
|
}
|
|
2458
2464
|
this.exportVisibleOnly = conf.exportVisibleOnly;
|
|
2465
|
+
this.exportUnselectedRows = conf.exportUnselectedRows || false;
|
|
2459
2466
|
this._config = conf;
|
|
2460
2467
|
}
|
|
2461
2468
|
get config() {
|
|
@@ -3021,13 +3028,13 @@ class PTableComponent {
|
|
|
3021
3028
|
}
|
|
3022
3029
|
});
|
|
3023
3030
|
this.rows.slice();
|
|
3024
|
-
|
|
3031
|
+
this.copySelectionState();
|
|
3025
3032
|
this.rowSelected.emit(selectedRows);
|
|
3026
3033
|
}
|
|
3027
3034
|
toggleRowSelection(row) {
|
|
3028
3035
|
const selectedRows = [];
|
|
3029
3036
|
row.selected = !row.selected;
|
|
3030
|
-
this.
|
|
3037
|
+
this.rows.forEach(dr => {
|
|
3031
3038
|
if (row.privateId === dr.privateId) {
|
|
3032
3039
|
dr.selected = row.selected;
|
|
3033
3040
|
}
|
|
@@ -3038,9 +3045,18 @@ class PTableComponent {
|
|
|
3038
3045
|
this.allRowsSelected = false;
|
|
3039
3046
|
}
|
|
3040
3047
|
});
|
|
3041
|
-
this.
|
|
3048
|
+
this.copySelectionState();
|
|
3042
3049
|
this.rowSelected.emit(selectedRows);
|
|
3043
3050
|
}
|
|
3051
|
+
copySelectionState() {
|
|
3052
|
+
this.rows.forEach((r) => {
|
|
3053
|
+
this._data.forEach(dr => {
|
|
3054
|
+
if (dr.privateId === r.privateId) {
|
|
3055
|
+
dr.selected = r.selected;
|
|
3056
|
+
}
|
|
3057
|
+
});
|
|
3058
|
+
});
|
|
3059
|
+
}
|
|
3044
3060
|
singleRowSelection(row) {
|
|
3045
3061
|
const selectedRows = [];
|
|
3046
3062
|
row.selected = !row.selected;
|
|
@@ -3065,6 +3081,10 @@ class PTableComponent {
|
|
|
3065
3081
|
// this.dumpDetailRows();
|
|
3066
3082
|
if (rows && rows.length) {
|
|
3067
3083
|
rows.forEach((row) => {
|
|
3084
|
+
if (!this.exportUnselectedRows && this.hasSelectableColumn() && !row.selected) {
|
|
3085
|
+
// skip unselected rows
|
|
3086
|
+
return;
|
|
3087
|
+
}
|
|
3068
3088
|
result.push({
|
|
3069
3089
|
cells: this.simplifyCells(row.cells),
|
|
3070
3090
|
actions: row.actions,
|
|
@@ -3077,6 +3097,9 @@ class PTableComponent {
|
|
|
3077
3097
|
}
|
|
3078
3098
|
return result;
|
|
3079
3099
|
}
|
|
3100
|
+
hasSelectableColumn() {
|
|
3101
|
+
return this.dataColumns.some((column) => column.selectColumn);
|
|
3102
|
+
}
|
|
3080
3103
|
simplifyCells(cells) {
|
|
3081
3104
|
let simpleCells = [];
|
|
3082
3105
|
if (cells && cells.length > 0) {
|
|
@@ -3142,6 +3165,9 @@ class PTableComponent {
|
|
|
3142
3165
|
toggleExportVisibleOnly() {
|
|
3143
3166
|
this.exportVisibleOnly = !this.exportVisibleOnly;
|
|
3144
3167
|
}
|
|
3168
|
+
toggleExportUnselectedRows() {
|
|
3169
|
+
this.exportUnselectedRows = !this.exportUnselectedRows;
|
|
3170
|
+
}
|
|
3145
3171
|
exportToExcel() {
|
|
3146
3172
|
const sortedData = this.sortData(this._data);
|
|
3147
3173
|
const exportTable = this.gatherTableData(this.exportVisibleOnly ? this.rows : sortedData);
|
|
@@ -3180,11 +3206,11 @@ class PTableComponent {
|
|
|
3180
3206
|
this.customBtn2Clicked.emit();
|
|
3181
3207
|
}
|
|
3182
3208
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PTableComponent, deps: [{ token: i1$3.DomSanitizer }, { token: TableService }, { token: TableExportService }, { token: i1$1.OepaFileUtilService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
3183
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: PTableComponent, selector: "oepa-p-table", inputs: { tableId: "tableId", allowEdit: "allowEdit", config: "config", complexHeader: "complexHeader", header: "header", customBtnLabel: "customBtnLabel", customBtnVisible: "customBtnVisible", customBtnEnabled: "customBtnEnabled", customBtnLabel2: "customBtnLabel2", customBtnVisible2: "customBtnVisible2", customBtnEnabled2: "customBtnEnabled2", small: "small", data: "data", totalRow: "totalRow" }, outputs: { cellClicked: "cellClicked", actionClicked: "actionClicked", rowSelected: "rowSelected", customBtnClicked: "customBtnClicked", customBtn2Clicked: "customBtn2Clicked" }, ngImport: i0, template: "<div *ngIf=\"!config.hideTable\">\n <form *ngIf=\"hiddenColumns.length > 0\">\n <div class=\"row mb-2\">\n <label class=\"col-sm-2 col-form-label\">Show Hidden Columns:</label>\n <div class=\"col-sm-4\">\n <select class=\"form-select\" (change)=\"unhideColumn($any($event).target.value)\"\n [id]=\"tableId+'_UnhideColumnSelect'\">\n <option value=\"\">Choose a column</option>\n <option *ngFor=\"let col of hiddenColumns\" [value]=\"col.id\">{{col.title}}</option>\n </select>\n </div>\n </div>\n </form>\n\n <div ngClass=\"{{config.divClassName || ''}}\">\n <p-table [columns]=\"visibleColumns\" [value]=\"rows\" \n [scrollable]=\"config.verticalScroll\" [scrollHeight]=\"config.scrollHeight\"\n [tableStyle]=\"{'min-width': '50rem'}\">\n <ng-template pTemplate=\"header\" let-columns>\n <tr *ngFor=\"let hdr of headerRows; let hr=index;\" role=\"row\">\n <th *ngIf=\"dataHasDetails && hr === 0\" [rowSpan]=\"headerRows.length\" class=\"detail-indicator-col\">\n <span>\n <i (click)=\"toggleAllDetails()\" [id]=\"tableId+'_ShowAllDetailsLink'\" class=\"bi\"\n [ngClass]=\"{'bi-chevron-down': showAllDetails, 'bi-chevron-right': !showAllDetails}\"\n [tooltip]=\"(showAllDetails ? 'Hide' : 'Show') + ' details for all rows'\" placement=\"right\">\n </i>\n </span>\n </th>\n <ng-template ngFor let-col [ngForOf]=\"hdr.columns\" let-i=\"index\">\n <th *ngIf=\"!col.hidden && col.frozenColumn\" pFrozenColumn ngClass=\"{{col.className || ''}}\"\n [colSpan]=\"col.colspan || 1\" [rowSpan]=\"col.rowspan || 1\">\n <oepa-table-header-cell [column]=\"col\" [tableId]=\"tableId\" [allRowsSelected]=\"allRowsSelected\"\n [rowCount]=\"rows.length\" [noFiltersSubject]=\"noFiltersSubject\"\n (onToggleAllRowsSelection)=\"toggleAllRowsSelection()\" (onSortChanged)=\"onSortChanged($event)\"\n (onHideColumn)=\"hideColumn($event)\" (onFilterChanged)=\"onFilterChanged($event)\">\n </oepa-table-header-cell>\n </th>\n <th *ngIf=\"!col.hidden && !col.frozenColumn\" ngClass=\"{{col.className || ''}}\"\n [colSpan]=\"col.colspan || 1\" [rowSpan]=\"col.rowspan || 1\">\n <oepa-table-header-cell [column]=\"col\" [tableId]=\"tableId\" [allRowsSelected]=\"allRowsSelected\"\n [rowCount]=\"rows.length\" [noFiltersSubject]=\"noFiltersSubject\"\n (onToggleAllRowsSelection)=\"toggleAllRowsSelection()\" (onSortChanged)=\"onSortChanged($event)\"\n (onHideColumn)=\"hideColumn($event)\" (onFilterChanged)=\"onFilterChanged($event)\">\n </oepa-table-header-cell>\n </th>\n </ng-template>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-row let-r=\"rowIndex\" let-columns=\"columns\">\n <!-- Data Row -->\n <tr>\n <td *ngIf=\"dataHasDetails\">\n <!-- Detail icon (if specified) -->\n <span *ngIf=\"row.showDetail === true || row.showDetail === false\">\n <i *ngIf=\"row.detailIconClassName\" [ngClass]=\"row.detailIconClassName\"></i>\n <i (click)=\"toggleRowDetail(row)\" [id]=\"tableId+'_ShowDetailLink_'+r\" class=\"bi\"\n [ngClass]=\"{'bi-chevron-down': row.showDetail, 'bi-chevron-right': !row.showDetail}\"\n [tooltip]=\"(row.showDetail ? 'Hide' : 'Show') + ' details for this row'\" placement=\"right\">\n </i>\n </span>\n </td>\n <!-- If row is a divider, it spans the whole table -->\n <td *ngIf=\"row.isDivider\" [colSpan]=\"visibleColumnCount + (dataHasDetails ? 1 : 0)\"\n [ngClass]=\"row.dividerClassName || 'oepa-table-gray'\"> </td>\n <!-- Data Rows -->\n <ng-template *ngIf=\"!row.isDivider\" ngFor let-col [ngForOf]=\"dataColumns\" let-i=\"index\">\n <td *ngIf=\"!col.hidden && (row|cellColspan:col) > 0 &&!col.frozenColumn\"\n ngClass=\"{{row|cellClassname:col || ''}}\" [colSpan]=\"row|cellColspan:col\">\n <oepa-table-data-cell [col]=\"col\" [i]=\"i\" [row]=\"row\" [r]=\"r\" [tableId]=\"tableId\"\n (onActionClick)=\"onActionClick($event)\" (onCellClick)=\"cellClick($event)\"\n (onToggleRowSelection)=\"toggleRowSelection($event)\"\n (onSingleRowSelection)=\"singleRowSelection($event)\"></oepa-table-data-cell>\n </td>\n <td *ngIf=\"!col.hidden && (row|cellColspan:col) > 0 &&col.frozenColumn\" pFrozenColumn\n ngClass=\"{{row|cellClassname:col || ''}}\" [colSpan]=\"row|cellColspan:col\">\n <oepa-table-data-cell [col]=\"col\" [i]=\"i\" [row]=\"row\" [r]=\"r\" [tableId]=\"tableId\"\n (onActionClick)=\"onActionClick($event)\" (onCellClick)=\"cellClick($event)\"\n (onToggleRowSelection)=\"toggleRowSelection($event)\"\n (onSingleRowSelection)=\"singleRowSelection($event)\"></oepa-table-data-cell>\n </td>\n </ng-template>\n </tr>\n\n <!-- Detail Row -->\n <tr *ngIf=\"row.showDetail\" class=\"table-info\">\n <td [colSpan]=\"visibleColumnCount + (dataHasDetails ? 1 : 0)\">\n <cml-template [templateInfo]=\"row.detail\"></cml-template>\n </td>\n </tr>\n </ng-template>\n </p-table>\n </div>\n <!-- Table footer -->\n <form *ngIf=\"!config.hideFooter || (data && pageInfo.itemsPerPage < data.length)\" class=\"form-horizontal\">\n <div class=\"form-group row\">\n <!-- Table-wide filter -->\n <div class=\"col-sm-5\">\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <input *ngIf=\"!config.hideGlobalFilter\" placeholder=\"Filter all columns\"\n [oepaTableFiltering]=\"{ filterString: '' }\" [tableId]=\"tableId\" class=\"form-control input-sm\"\n (tableChanged)=\"onFilterChanged($event)\" [id]=\"tableId+'_FilterAllColumnsInput'\" />\n </div>\n <div class=\"col-sm-6\">\n <span *ngIf=\"config.showRowCountInFooter && _data && _data.length > 0\">\n <span class=\"badge bg-secondary\">{{_data.length}}</span> total rows\n </span>\n </div>\n </div>\n </div>\n <!-- Export Buttons -->\n <div class=\"col-sm-2 d-flex justify-content-center\">\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\" *ngIf=\"allowEdit\">\n <div *ngIf=\"config.exportToExcel || config.exportToHTML\" class=\"btn-group\" dropdown>\n <button id=\"exportBtn\" dropdownToggle type=\"button\" class=\"btn btn-primary dropdown-toggle\"\n aria-controls=\"dropdown-basic\">\n Export <span class=\"caret\"></span>\n <ul id=\"export-dropdown\" *dropdownMenu class=\"dropdown-menu\">\n <li *ngIf=\"config.exportToExcel\" role=\"menuitem\"><a class=\"dropdown-item\"\n (click)=\"exportToExcel()\">Export to Excel</a></li>\n <li *ngIf=\"config.exportToHTML\" role=\"menuitem\"><a class=\"dropdown-item\"\n (click)=\"exportToHTML()\">Export\n to HTML</a></li>\n </ul>\n </button>\n </div>\n <button *ngIf=\"customBtnVisible\" type=\"button\"\n ngClass=\"{{'btn btn-primary me-1' + (small ? ' btn-sm' : '')}}\" (click)=\"onCustomBtnClick()\"\n [id]=\"tableId+'_CustomBtn'\" [disabled]=\"!customBtnEnabled\">{{customBtnLabel}}</button>\n <button *ngIf=\"customBtnVisible2\" type=\"button\"\n ngClass=\"{{'btn btn-primary me-1' + (small ? ' btn-sm' : '')}}\" (click)=\"onCustomBtn2Click()\"\n [id]=\"tableId+'_CustomBtn'\" [disabled]=\"!customBtnEnabled2\">{{customBtnLabel2}}</button>\n </div>\n </div>\n </div>\n <!-- Pagination -->\n <div *ngIf=\"!config.disablePagination\" class=\"col-sm-5\">\n <div class=\"row\">\n <div class=\"col-sm-9\">\n <pagination *ngIf=\"paginationOn\" class=\"pagination-sm\" [totalItems]=\"pageInfo.length\"\n [itemsPerPage]=\"pageInfo.itemsPerPage\" [maxSize]=\"pageInfo.maxSize\" [(ngModel)]=\"currentPage\"\n name=\"currentTablePage\" [boundaryLinks]=\"true\" [rotate]=\"false\" (pageChanged)=\"onPageChanged($event)\"\n (numPages)=\"pageInfo.numPages = $event\">\n </pagination>\n </div>\n <div class=\"col-sm-3\">\n <button (click)=\"togglePagingation()\" type=\"button\" class=\"btn btn-default btn-sm me-1\">{{ paginationOn ?\n 'Show All Rows' : 'Restore Pagination'}}</button>\n </div>\n </div>\n </div>\n <div *ngIf=\"config.exportToExcel || config.exportToHTML\" class=\"col-sm-12 text-center\">\n <span>Export only visible data: \n <input type=\"checkbox\" [checked]=\"exportVisibleOnly\" (click)=\"toggleExportVisibleOnly()\"\n id=\"exportVisibleOnlyCheckbox\" />\n </span>\n </div>\n </div>\n </form>\n</div>", styles: [".pagination{margin:0}th.oepa-table-header-center{text-align:center}.oepa-table-bold{font-weight:700}.oepa-table-italic{font-style:italic}.oepa-table-line-through{text-decoration:line-through}.oepa-table-gray{background-color:#ddd}td.oepa-undeline-cell{border-bottom:1pt solid black}.detail-indicator-col{width:30px}.action-btn-col{width:90px}.select-col{width:20px}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1$2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i7$1.PaginationComponent, selector: "pagination", inputs: ["align", "maxSize", "boundaryLinks", "directionLinks", "firstText", "previousText", "nextText", "lastText", "rotate", "pageBtnClass", "disabled", "customPageTemplate", "customNextTemplate", "customPreviousTemplate", "customFirstTemplate", "customLastTemplate", "itemsPerPage", "totalItems"], outputs: ["numPages", "pageChanged"] }, { kind: "directive", type: i9.TooltipDirective, selector: "[tooltip], [tooltipHtml]", inputs: ["adaptivePosition", "tooltip", "placement", "triggers", "container", "containerClass", "boundariesElement", "isOpen", "isDisabled", "delay", "tooltipHtml", "tooltipPlacement", "tooltipIsOpen", "tooltipEnable", "tooltipAppendToBody", "tooltipAnimation", "tooltipClass", "tooltipContext", "tooltipPopupDelay", "tooltipFadeDuration", "tooltipTrigger"], outputs: ["tooltipChange", "onShown", "onHidden", "tooltipStateChanged"], exportAs: ["bs-tooltip"] }, { kind: "directive", type: i3.BsDropdownMenuDirective, selector: "[bsDropdownMenu],[dropdownMenu]", exportAs: ["bs-dropdown-menu"] }, { kind: "directive", type: i3.BsDropdownToggleDirective, selector: "[bsDropdownToggle],[dropdownToggle]", exportAs: ["bs-dropdown-toggle"] }, { kind: "directive", type: i3.BsDropdownDirective, selector: "[bsDropdown], [dropdown]", inputs: ["placement", "triggers", "container", "dropup", "autoClose", "isAnimated", "insideClick", "isDisabled", "isOpen"], outputs: ["isOpenChange", "onShown", "onHidden"], exportAs: ["bs-dropdown"] }, { kind: "component", type: i10.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i11.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i10.FrozenColumn, selector: "[pFrozenColumn]", inputs: ["frozen", "alignFrozen"] }, { kind: "component", type: i1$1.OepaTemplateComponent, selector: "cml-template", inputs: ["templateInfo"] }, { kind: "component", type: TableDataCellComponent, selector: "oepa-table-data-cell", inputs: ["col", "row", "i", "r", "tableId"], outputs: ["onCellClick", "onToggleRowSelection", "onSingleRowSelection", "onActionClick"] }, { kind: "component", type: TableHeaderCellComponent, selector: "oepa-table-header-cell", inputs: ["column", "tableId", "allRowsSelected", "rowCount", "noFiltersSubject"], outputs: ["onToggleAllRowsSelection", "onSortChanged", "onHideColumn", "onFilterChanged"] }, { kind: "directive", type: OepaTableFilteringDirective, selector: "[oepaTableFiltering]", inputs: ["oepaTableFiltering", "tableId"], outputs: ["tableChanged"] }, { kind: "pipe", type: OepaTableCellColSpanPipe, name: "cellColspan" }, { kind: "pipe", type: OepaTableCellClassnamePipe, name: "cellClassname" }] });
|
|
3209
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: PTableComponent, selector: "oepa-p-table", inputs: { tableId: "tableId", allowEdit: "allowEdit", config: "config", complexHeader: "complexHeader", header: "header", customBtnLabel: "customBtnLabel", customBtnVisible: "customBtnVisible", customBtnEnabled: "customBtnEnabled", customBtnLabel2: "customBtnLabel2", customBtnVisible2: "customBtnVisible2", customBtnEnabled2: "customBtnEnabled2", small: "small", data: "data", totalRow: "totalRow" }, outputs: { cellClicked: "cellClicked", actionClicked: "actionClicked", rowSelected: "rowSelected", customBtnClicked: "customBtnClicked", customBtn2Clicked: "customBtn2Clicked" }, ngImport: i0, template: "<div *ngIf=\"!config.hideTable\">\n <form *ngIf=\"hiddenColumns.length > 0\">\n <div class=\"row mb-2\">\n <label class=\"col-sm-2 col-form-label\" [for]=\"tableId+'_UnhideColumnSelect'\">Show Hidden Columns:</label>\n <div class=\"col-sm-4\">\n <select class=\"form-select\" (change)=\"unhideColumn($any($event).target.value)\"\n [id]=\"tableId+'_UnhideColumnSelect'\">\n <option value=\"\">Choose a column</option>\n <option *ngFor=\"let col of hiddenColumns\" [value]=\"col.id\">{{col.title}}</option>\n </select>\n </div>\n </div>\n </form>\n\n <div ngClass=\"{{config.divClassName || ''}}\">\n <p-table [columns]=\"visibleColumns\" [value]=\"rows\" \n [scrollable]=\"config.verticalScroll\" [scrollHeight]=\"config.scrollHeight\"\n [tableStyle]=\"{'min-width': '50rem'}\">\n <ng-template pTemplate=\"header\" let-columns>\n <tr *ngFor=\"let hdr of headerRows; let hr=index;\" role=\"row\">\n <th *ngIf=\"dataHasDetails && hr === 0\" [rowSpan]=\"headerRows.length\" class=\"detail-indicator-col\">\n <span>\n <i (click)=\"toggleAllDetails()\" [id]=\"tableId+'_ShowAllDetailsLink'\" class=\"bi\"\n [ngClass]=\"{'bi-chevron-down': showAllDetails, 'bi-chevron-right': !showAllDetails}\"\n [tooltip]=\"(showAllDetails ? 'Hide' : 'Show') + ' details for all rows'\" placement=\"right\">\n </i>\n </span>\n </th>\n <ng-template ngFor let-col [ngForOf]=\"hdr.columns\" let-i=\"index\">\n <th *ngIf=\"!col.hidden && col.frozenColumn\" pFrozenColumn ngClass=\"{{col.className || ''}}\"\n [colSpan]=\"col.colspan || 1\" [rowSpan]=\"col.rowspan || 1\">\n <oepa-table-header-cell [column]=\"col\" [tableId]=\"tableId\" [allRowsSelected]=\"allRowsSelected\"\n [rowCount]=\"rows.length\" [noFiltersSubject]=\"noFiltersSubject\"\n (onToggleAllRowsSelection)=\"toggleAllRowsSelection()\" (onSortChanged)=\"onSortChanged($event)\"\n (onHideColumn)=\"hideColumn($event)\" (onFilterChanged)=\"onFilterChanged($event)\">\n </oepa-table-header-cell>\n </th>\n <th *ngIf=\"!col.hidden && !col.frozenColumn\" ngClass=\"{{col.className || ''}}\"\n [colSpan]=\"col.colspan || 1\" [rowSpan]=\"col.rowspan || 1\">\n <oepa-table-header-cell [column]=\"col\" [tableId]=\"tableId\" [allRowsSelected]=\"allRowsSelected\"\n [rowCount]=\"rows.length\" [noFiltersSubject]=\"noFiltersSubject\"\n (onToggleAllRowsSelection)=\"toggleAllRowsSelection()\" (onSortChanged)=\"onSortChanged($event)\"\n (onHideColumn)=\"hideColumn($event)\" (onFilterChanged)=\"onFilterChanged($event)\">\n </oepa-table-header-cell>\n </th>\n </ng-template>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-row let-r=\"rowIndex\" let-columns=\"columns\">\n <!-- Data Row -->\n <tr>\n <td *ngIf=\"dataHasDetails\">\n <!-- Detail icon (if specified) -->\n <span *ngIf=\"row.showDetail === true || row.showDetail === false\">\n <i *ngIf=\"row.detailIconClassName\" [ngClass]=\"row.detailIconClassName\"></i>\n <i (click)=\"toggleRowDetail(row)\" [id]=\"tableId+'_ShowDetailLink_'+r\" class=\"bi\"\n [ngClass]=\"{'bi-chevron-down': row.showDetail, 'bi-chevron-right': !row.showDetail}\"\n [tooltip]=\"(row.showDetail ? 'Hide' : 'Show') + ' details for this row'\" placement=\"right\">\n </i>\n </span>\n </td>\n <!-- If row is a divider, it spans the whole table -->\n <td *ngIf=\"row.isDivider\" [colSpan]=\"visibleColumnCount + (dataHasDetails ? 1 : 0)\"\n [ngClass]=\"row.dividerClassName || 'oepa-table-gray'\"> </td>\n <!-- Data Rows -->\n <ng-template *ngIf=\"!row.isDivider\" ngFor let-col [ngForOf]=\"dataColumns\" let-i=\"index\">\n <td *ngIf=\"!col.hidden && (row|cellColspan:col) > 0 &&!col.frozenColumn\"\n ngClass=\"{{row|cellClassname:col || ''}}\" [colSpan]=\"row|cellColspan:col\">\n <oepa-table-data-cell [col]=\"col\" [i]=\"i\" [row]=\"row\" [r]=\"r\" [tableId]=\"tableId\"\n (onActionClick)=\"onActionClick($event)\" (onCellClick)=\"cellClick($event)\"\n (onToggleRowSelection)=\"toggleRowSelection($event)\"\n (onSingleRowSelection)=\"singleRowSelection($event)\"></oepa-table-data-cell>\n </td>\n <td *ngIf=\"!col.hidden && (row|cellColspan:col) > 0 &&col.frozenColumn\" pFrozenColumn\n ngClass=\"{{row|cellClassname:col || ''}}\" [colSpan]=\"row|cellColspan:col\">\n <oepa-table-data-cell [col]=\"col\" [i]=\"i\" [row]=\"row\" [r]=\"r\" [tableId]=\"tableId\"\n (onActionClick)=\"onActionClick($event)\" (onCellClick)=\"cellClick($event)\"\n (onToggleRowSelection)=\"toggleRowSelection($event)\"\n (onSingleRowSelection)=\"singleRowSelection($event)\"></oepa-table-data-cell>\n </td>\n </ng-template>\n </tr>\n\n <!-- Detail Row -->\n <tr *ngIf=\"row.showDetail\" class=\"table-info\">\n <td [colSpan]=\"visibleColumnCount + (dataHasDetails ? 1 : 0)\">\n <cml-template [templateInfo]=\"row.detail\"></cml-template>\n </td>\n </tr>\n </ng-template>\n </p-table>\n </div>\n <!-- Table footer -->\n <form *ngIf=\"!config.hideFooter || (data && pageInfo.itemsPerPage < data.length)\" class=\"form-horizontal\">\n <div class=\"form-group row\">\n <!-- Table-wide filter -->\n <div class=\"col-sm-5\">\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <label [for]=\"tableId+'_FilterAllColumnsInput'\" class=\"sr-only\">Filter all columns</label>\n <input *ngIf=\"!config.hideGlobalFilter\" placeholder=\"Filter all columns\"\n [oepaTableFiltering]=\"{ filterString: '' }\" [tableId]=\"tableId\" class=\"form-control input-sm\"\n (tableChanged)=\"onFilterChanged($event)\" [id]=\"tableId+'_FilterAllColumnsInput'\" />\n </div>\n <div class=\"col-sm-6\">\n <span *ngIf=\"config.showRowCountInFooter && _data && _data.length > 0\">\n <span class=\"badge bg-secondary\">{{_data.length}}</span> total rows\n </span>\n </div>\n </div>\n </div>\n <!-- Export Buttons -->\n <div class=\"col-sm-2 d-flex justify-content-center\">\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\" *ngIf=\"allowEdit\">\n <div *ngIf=\"config.exportToExcel || config.exportToHTML\" class=\"btn-group\" dropdown>\n <button id=\"exportBtn\" dropdownToggle type=\"button\" class=\"btn btn-primary dropdown-toggle\"\n aria-controls=\"dropdown-basic\" aria-label=\"Export options\">\n Export <span class=\"caret\"></span>\n <ul id=\"export-dropdown\" *dropdownMenu class=\"dropdown-menu\">\n <li *ngIf=\"config.exportToExcel\" role=\"menuitem\"><a class=\"dropdown-item\"\n (click)=\"exportToExcel()\">Export to Excel</a></li>\n <li *ngIf=\"config.exportToHTML\" role=\"menuitem\"><a class=\"dropdown-item\"\n (click)=\"exportToHTML()\">Export\n to HTML</a></li>\n </ul>\n </button>\n </div>\n <button *ngIf=\"customBtnVisible\" type=\"button\"\n ngClass=\"{{'btn btn-primary me-1' + (small ? ' btn-sm' : '')}}\" (click)=\"onCustomBtnClick()\"\n [id]=\"tableId+'_CustomBtn'\" [disabled]=\"!customBtnEnabled\" [attr.aria-label]=\"customBtnLabel\">{{customBtnLabel}}</button>\n <button *ngIf=\"customBtnVisible2\" type=\"button\"\n ngClass=\"{{'btn btn-primary me-1' + (small ? ' btn-sm' : '')}}\" (click)=\"onCustomBtn2Click()\"\n [id]=\"tableId+'_CustomBtn'\" [disabled]=\"!customBtnEnabled2\" [attr.aria-label]=\"customBtnLabel2\">{{customBtnLabel2}}</button>\n </div>\n </div>\n </div>\n <!-- Pagination -->\n <div *ngIf=\"!config.disablePagination\" class=\"col-sm-5\">\n <div class=\"row\">\n <div class=\"col-sm-9\">\n <pagination *ngIf=\"paginationOn\" class=\"pagination-sm\" [totalItems]=\"pageInfo.length\"\n [itemsPerPage]=\"pageInfo.itemsPerPage\" [maxSize]=\"pageInfo.maxSize\" [(ngModel)]=\"currentPage\"\n name=\"currentTablePage\" [boundaryLinks]=\"true\" [rotate]=\"false\" (pageChanged)=\"onPageChanged($event)\"\n (numPages)=\"pageInfo.numPages = $event\">\n </pagination>\n </div>\n <div class=\"col-sm-3\">\n <button (click)=\"togglePagingation()\" type=\"button\" class=\"btn btn-default btn-sm me-1\"\n [attr.aria-label]=\"paginationOn ? 'Show All Rows' : 'Restore Pagination'\">\n {{ paginationOn ? 'Show All Rows' : 'Restore Pagination'}}\n </button>\n </div>\n </div>\n </div>\n <div *ngIf=\"allowEdit && (config.exportToExcel || config.exportToHTML)\" class=\"col-sm-12 text-center\">\n <span>Export only visible data: \n <input type=\"checkbox\" [checked]=\"exportVisibleOnly\" (click)=\"toggleExportVisibleOnly()\"\n id=\"exportVisibleOnlyCheckbox\" aria-label=\"Export only visible data\"/>\n \n </span>\n <span *ngIf=\"hasSelectableColumn()\">Include unselected rows in export: \n <input type=\"checkbox\" [checked]=\"exportUnselectedRows\" (click)=\"toggleExportUnselectedRows()\"\n id=\"exportUnselectedRowsCheckbox\" aria-label=\"Include unselected rows in export\"/>\n </span>\n </div>\n </div>\n </form>\n</div>", styles: [".pagination{margin:0}th.oepa-table-header-center{text-align:center}.oepa-table-bold{font-weight:700}.oepa-table-italic{font-style:italic}.oepa-table-line-through{text-decoration:line-through}.oepa-table-gray{background-color:#ddd}td.oepa-undeline-cell{border-bottom:1pt solid black}.detail-indicator-col{width:30px}.action-btn-col{width:90px}.select-col{width:20px}:host ::ng-deep .pagination-sm .page-item .page-link{min-width:44px;min-height:44px;padding:10px 16px;margin:4px}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1$2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i7$1.PaginationComponent, selector: "pagination", inputs: ["align", "maxSize", "boundaryLinks", "directionLinks", "firstText", "previousText", "nextText", "lastText", "rotate", "pageBtnClass", "disabled", "customPageTemplate", "customNextTemplate", "customPreviousTemplate", "customFirstTemplate", "customLastTemplate", "itemsPerPage", "totalItems"], outputs: ["numPages", "pageChanged"] }, { kind: "directive", type: i8$1.TooltipDirective, selector: "[tooltip], [tooltipHtml]", inputs: ["adaptivePosition", "tooltip", "placement", "triggers", "container", "containerClass", "boundariesElement", "isOpen", "isDisabled", "delay", "tooltipHtml", "tooltipPlacement", "tooltipIsOpen", "tooltipEnable", "tooltipAppendToBody", "tooltipAnimation", "tooltipClass", "tooltipContext", "tooltipPopupDelay", "tooltipFadeDuration", "tooltipTrigger"], outputs: ["tooltipChange", "onShown", "onHidden", "tooltipStateChanged"], exportAs: ["bs-tooltip"] }, { kind: "directive", type: i3.BsDropdownMenuDirective, selector: "[bsDropdownMenu],[dropdownMenu]", exportAs: ["bs-dropdown-menu"] }, { kind: "directive", type: i3.BsDropdownToggleDirective, selector: "[bsDropdownToggle],[dropdownToggle]", exportAs: ["bs-dropdown-toggle"] }, { kind: "directive", type: i3.BsDropdownDirective, selector: "[bsDropdown], [dropdown]", inputs: ["placement", "triggers", "container", "dropup", "autoClose", "isAnimated", "insideClick", "isDisabled", "isOpen"], outputs: ["isOpenChange", "onShown", "onHidden"], exportAs: ["bs-dropdown"] }, { kind: "component", type: i10.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i11.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i10.FrozenColumn, selector: "[pFrozenColumn]", inputs: ["frozen", "alignFrozen"] }, { kind: "component", type: i1$1.OepaTemplateComponent, selector: "cml-template", inputs: ["templateInfo"] }, { kind: "component", type: TableDataCellComponent, selector: "oepa-table-data-cell", inputs: ["col", "row", "i", "r", "tableId"], outputs: ["onCellClick", "onToggleRowSelection", "onSingleRowSelection", "onActionClick"] }, { kind: "component", type: TableHeaderCellComponent, selector: "oepa-table-header-cell", inputs: ["column", "tableId", "allRowsSelected", "rowCount", "noFiltersSubject"], outputs: ["onToggleAllRowsSelection", "onSortChanged", "onHideColumn", "onFilterChanged"] }, { kind: "directive", type: OepaTableFilteringDirective, selector: "[oepaTableFiltering]", inputs: ["oepaTableFiltering", "tableId"], outputs: ["tableChanged"] }, { kind: "pipe", type: OepaTableCellColSpanPipe, name: "cellColspan" }, { kind: "pipe", type: OepaTableCellClassnamePipe, name: "cellClassname" }] });
|
|
3184
3210
|
}
|
|
3185
3211
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PTableComponent, decorators: [{
|
|
3186
3212
|
type: Component,
|
|
3187
|
-
args: [{ selector: 'oepa-p-table', template: "<div *ngIf=\"!config.hideTable\">\n <form *ngIf=\"hiddenColumns.length > 0\">\n <div class=\"row mb-2\">\n <label class=\"col-sm-2 col-form-label\">Show Hidden Columns:</label>\n <div class=\"col-sm-4\">\n <select class=\"form-select\" (change)=\"unhideColumn($any($event).target.value)\"\n [id]=\"tableId+'_UnhideColumnSelect'\">\n <option value=\"\">Choose a column</option>\n <option *ngFor=\"let col of hiddenColumns\" [value]=\"col.id\">{{col.title}}</option>\n </select>\n </div>\n </div>\n </form>\n\n <div ngClass=\"{{config.divClassName || ''}}\">\n <p-table [columns]=\"visibleColumns\" [value]=\"rows\" \n [scrollable]=\"config.verticalScroll\" [scrollHeight]=\"config.scrollHeight\"\n [tableStyle]=\"{'min-width': '50rem'}\">\n <ng-template pTemplate=\"header\" let-columns>\n <tr *ngFor=\"let hdr of headerRows; let hr=index;\" role=\"row\">\n <th *ngIf=\"dataHasDetails && hr === 0\" [rowSpan]=\"headerRows.length\" class=\"detail-indicator-col\">\n <span>\n <i (click)=\"toggleAllDetails()\" [id]=\"tableId+'_ShowAllDetailsLink'\" class=\"bi\"\n [ngClass]=\"{'bi-chevron-down': showAllDetails, 'bi-chevron-right': !showAllDetails}\"\n [tooltip]=\"(showAllDetails ? 'Hide' : 'Show') + ' details for all rows'\" placement=\"right\">\n </i>\n </span>\n </th>\n <ng-template ngFor let-col [ngForOf]=\"hdr.columns\" let-i=\"index\">\n <th *ngIf=\"!col.hidden && col.frozenColumn\" pFrozenColumn ngClass=\"{{col.className || ''}}\"\n [colSpan]=\"col.colspan || 1\" [rowSpan]=\"col.rowspan || 1\">\n <oepa-table-header-cell [column]=\"col\" [tableId]=\"tableId\" [allRowsSelected]=\"allRowsSelected\"\n [rowCount]=\"rows.length\" [noFiltersSubject]=\"noFiltersSubject\"\n (onToggleAllRowsSelection)=\"toggleAllRowsSelection()\" (onSortChanged)=\"onSortChanged($event)\"\n (onHideColumn)=\"hideColumn($event)\" (onFilterChanged)=\"onFilterChanged($event)\">\n </oepa-table-header-cell>\n </th>\n <th *ngIf=\"!col.hidden && !col.frozenColumn\" ngClass=\"{{col.className || ''}}\"\n [colSpan]=\"col.colspan || 1\" [rowSpan]=\"col.rowspan || 1\">\n <oepa-table-header-cell [column]=\"col\" [tableId]=\"tableId\" [allRowsSelected]=\"allRowsSelected\"\n [rowCount]=\"rows.length\" [noFiltersSubject]=\"noFiltersSubject\"\n (onToggleAllRowsSelection)=\"toggleAllRowsSelection()\" (onSortChanged)=\"onSortChanged($event)\"\n (onHideColumn)=\"hideColumn($event)\" (onFilterChanged)=\"onFilterChanged($event)\">\n </oepa-table-header-cell>\n </th>\n </ng-template>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-row let-r=\"rowIndex\" let-columns=\"columns\">\n <!-- Data Row -->\n <tr>\n <td *ngIf=\"dataHasDetails\">\n <!-- Detail icon (if specified) -->\n <span *ngIf=\"row.showDetail === true || row.showDetail === false\">\n <i *ngIf=\"row.detailIconClassName\" [ngClass]=\"row.detailIconClassName\"></i>\n <i (click)=\"toggleRowDetail(row)\" [id]=\"tableId+'_ShowDetailLink_'+r\" class=\"bi\"\n [ngClass]=\"{'bi-chevron-down': row.showDetail, 'bi-chevron-right': !row.showDetail}\"\n [tooltip]=\"(row.showDetail ? 'Hide' : 'Show') + ' details for this row'\" placement=\"right\">\n </i>\n </span>\n </td>\n <!-- If row is a divider, it spans the whole table -->\n <td *ngIf=\"row.isDivider\" [colSpan]=\"visibleColumnCount + (dataHasDetails ? 1 : 0)\"\n [ngClass]=\"row.dividerClassName || 'oepa-table-gray'\"> </td>\n <!-- Data Rows -->\n <ng-template *ngIf=\"!row.isDivider\" ngFor let-col [ngForOf]=\"dataColumns\" let-i=\"index\">\n <td *ngIf=\"!col.hidden && (row|cellColspan:col) > 0 &&!col.frozenColumn\"\n ngClass=\"{{row|cellClassname:col || ''}}\" [colSpan]=\"row|cellColspan:col\">\n <oepa-table-data-cell [col]=\"col\" [i]=\"i\" [row]=\"row\" [r]=\"r\" [tableId]=\"tableId\"\n (onActionClick)=\"onActionClick($event)\" (onCellClick)=\"cellClick($event)\"\n (onToggleRowSelection)=\"toggleRowSelection($event)\"\n (onSingleRowSelection)=\"singleRowSelection($event)\"></oepa-table-data-cell>\n </td>\n <td *ngIf=\"!col.hidden && (row|cellColspan:col) > 0 &&col.frozenColumn\" pFrozenColumn\n ngClass=\"{{row|cellClassname:col || ''}}\" [colSpan]=\"row|cellColspan:col\">\n <oepa-table-data-cell [col]=\"col\" [i]=\"i\" [row]=\"row\" [r]=\"r\" [tableId]=\"tableId\"\n (onActionClick)=\"onActionClick($event)\" (onCellClick)=\"cellClick($event)\"\n (onToggleRowSelection)=\"toggleRowSelection($event)\"\n (onSingleRowSelection)=\"singleRowSelection($event)\"></oepa-table-data-cell>\n </td>\n </ng-template>\n </tr>\n\n <!-- Detail Row -->\n <tr *ngIf=\"row.showDetail\" class=\"table-info\">\n <td [colSpan]=\"visibleColumnCount + (dataHasDetails ? 1 : 0)\">\n <cml-template [templateInfo]=\"row.detail\"></cml-template>\n </td>\n </tr>\n </ng-template>\n </p-table>\n </div>\n <!-- Table footer -->\n <form *ngIf=\"!config.hideFooter || (data && pageInfo.itemsPerPage < data.length)\" class=\"form-horizontal\">\n <div class=\"form-group row\">\n <!-- Table-wide filter -->\n <div class=\"col-sm-5\">\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <input *ngIf=\"!config.hideGlobalFilter\" placeholder=\"Filter all columns\"\n [oepaTableFiltering]=\"{ filterString: '' }\" [tableId]=\"tableId\" class=\"form-control input-sm\"\n (tableChanged)=\"onFilterChanged($event)\" [id]=\"tableId+'_FilterAllColumnsInput'\" />\n </div>\n <div class=\"col-sm-6\">\n <span *ngIf=\"config.showRowCountInFooter && _data && _data.length > 0\">\n <span class=\"badge bg-secondary\">{{_data.length}}</span> total rows\n </span>\n </div>\n </div>\n </div>\n <!-- Export Buttons -->\n <div class=\"col-sm-2 d-flex justify-content-center\">\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\" *ngIf=\"allowEdit\">\n <div *ngIf=\"config.exportToExcel || config.exportToHTML\" class=\"btn-group\" dropdown>\n <button id=\"exportBtn\" dropdownToggle type=\"button\" class=\"btn btn-primary dropdown-toggle\"\n aria-controls=\"dropdown-basic\">\n Export <span class=\"caret\"></span>\n <ul id=\"export-dropdown\" *dropdownMenu class=\"dropdown-menu\">\n <li *ngIf=\"config.exportToExcel\" role=\"menuitem\"><a class=\"dropdown-item\"\n (click)=\"exportToExcel()\">Export to Excel</a></li>\n <li *ngIf=\"config.exportToHTML\" role=\"menuitem\"><a class=\"dropdown-item\"\n (click)=\"exportToHTML()\">Export\n to HTML</a></li>\n </ul>\n </button>\n </div>\n <button *ngIf=\"customBtnVisible\" type=\"button\"\n ngClass=\"{{'btn btn-primary me-1' + (small ? ' btn-sm' : '')}}\" (click)=\"onCustomBtnClick()\"\n [id]=\"tableId+'_CustomBtn'\" [disabled]=\"!customBtnEnabled\">{{customBtnLabel}}</button>\n <button *ngIf=\"customBtnVisible2\" type=\"button\"\n ngClass=\"{{'btn btn-primary me-1' + (small ? ' btn-sm' : '')}}\" (click)=\"onCustomBtn2Click()\"\n [id]=\"tableId+'_CustomBtn'\" [disabled]=\"!customBtnEnabled2\">{{customBtnLabel2}}</button>\n </div>\n </div>\n </div>\n <!-- Pagination -->\n <div *ngIf=\"!config.disablePagination\" class=\"col-sm-5\">\n <div class=\"row\">\n <div class=\"col-sm-9\">\n <pagination *ngIf=\"paginationOn\" class=\"pagination-sm\" [totalItems]=\"pageInfo.length\"\n [itemsPerPage]=\"pageInfo.itemsPerPage\" [maxSize]=\"pageInfo.maxSize\" [(ngModel)]=\"currentPage\"\n name=\"currentTablePage\" [boundaryLinks]=\"true\" [rotate]=\"false\" (pageChanged)=\"onPageChanged($event)\"\n (numPages)=\"pageInfo.numPages = $event\">\n </pagination>\n </div>\n <div class=\"col-sm-3\">\n <button (click)=\"togglePagingation()\" type=\"button\" class=\"btn btn-default btn-sm me-1\">{{ paginationOn ?\n 'Show All Rows' : 'Restore Pagination'}}</button>\n </div>\n </div>\n </div>\n <div *ngIf=\"config.exportToExcel || config.exportToHTML\" class=\"col-sm-12 text-center\">\n <span>Export only visible data: \n <input type=\"checkbox\" [checked]=\"exportVisibleOnly\" (click)=\"toggleExportVisibleOnly()\"\n id=\"exportVisibleOnlyCheckbox\" />\n </span>\n </div>\n </div>\n </form>\n</div>", styles: [".pagination{margin:0}th.oepa-table-header-center{text-align:center}.oepa-table-bold{font-weight:700}.oepa-table-italic{font-style:italic}.oepa-table-line-through{text-decoration:line-through}.oepa-table-gray{background-color:#ddd}td.oepa-undeline-cell{border-bottom:1pt solid black}.detail-indicator-col{width:30px}.action-btn-col{width:90px}.select-col{width:20px}\n"] }]
|
|
3213
|
+
args: [{ selector: 'oepa-p-table', template: "<div *ngIf=\"!config.hideTable\">\n <form *ngIf=\"hiddenColumns.length > 0\">\n <div class=\"row mb-2\">\n <label class=\"col-sm-2 col-form-label\" [for]=\"tableId+'_UnhideColumnSelect'\">Show Hidden Columns:</label>\n <div class=\"col-sm-4\">\n <select class=\"form-select\" (change)=\"unhideColumn($any($event).target.value)\"\n [id]=\"tableId+'_UnhideColumnSelect'\">\n <option value=\"\">Choose a column</option>\n <option *ngFor=\"let col of hiddenColumns\" [value]=\"col.id\">{{col.title}}</option>\n </select>\n </div>\n </div>\n </form>\n\n <div ngClass=\"{{config.divClassName || ''}}\">\n <p-table [columns]=\"visibleColumns\" [value]=\"rows\" \n [scrollable]=\"config.verticalScroll\" [scrollHeight]=\"config.scrollHeight\"\n [tableStyle]=\"{'min-width': '50rem'}\">\n <ng-template pTemplate=\"header\" let-columns>\n <tr *ngFor=\"let hdr of headerRows; let hr=index;\" role=\"row\">\n <th *ngIf=\"dataHasDetails && hr === 0\" [rowSpan]=\"headerRows.length\" class=\"detail-indicator-col\">\n <span>\n <i (click)=\"toggleAllDetails()\" [id]=\"tableId+'_ShowAllDetailsLink'\" class=\"bi\"\n [ngClass]=\"{'bi-chevron-down': showAllDetails, 'bi-chevron-right': !showAllDetails}\"\n [tooltip]=\"(showAllDetails ? 'Hide' : 'Show') + ' details for all rows'\" placement=\"right\">\n </i>\n </span>\n </th>\n <ng-template ngFor let-col [ngForOf]=\"hdr.columns\" let-i=\"index\">\n <th *ngIf=\"!col.hidden && col.frozenColumn\" pFrozenColumn ngClass=\"{{col.className || ''}}\"\n [colSpan]=\"col.colspan || 1\" [rowSpan]=\"col.rowspan || 1\">\n <oepa-table-header-cell [column]=\"col\" [tableId]=\"tableId\" [allRowsSelected]=\"allRowsSelected\"\n [rowCount]=\"rows.length\" [noFiltersSubject]=\"noFiltersSubject\"\n (onToggleAllRowsSelection)=\"toggleAllRowsSelection()\" (onSortChanged)=\"onSortChanged($event)\"\n (onHideColumn)=\"hideColumn($event)\" (onFilterChanged)=\"onFilterChanged($event)\">\n </oepa-table-header-cell>\n </th>\n <th *ngIf=\"!col.hidden && !col.frozenColumn\" ngClass=\"{{col.className || ''}}\"\n [colSpan]=\"col.colspan || 1\" [rowSpan]=\"col.rowspan || 1\">\n <oepa-table-header-cell [column]=\"col\" [tableId]=\"tableId\" [allRowsSelected]=\"allRowsSelected\"\n [rowCount]=\"rows.length\" [noFiltersSubject]=\"noFiltersSubject\"\n (onToggleAllRowsSelection)=\"toggleAllRowsSelection()\" (onSortChanged)=\"onSortChanged($event)\"\n (onHideColumn)=\"hideColumn($event)\" (onFilterChanged)=\"onFilterChanged($event)\">\n </oepa-table-header-cell>\n </th>\n </ng-template>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-row let-r=\"rowIndex\" let-columns=\"columns\">\n <!-- Data Row -->\n <tr>\n <td *ngIf=\"dataHasDetails\">\n <!-- Detail icon (if specified) -->\n <span *ngIf=\"row.showDetail === true || row.showDetail === false\">\n <i *ngIf=\"row.detailIconClassName\" [ngClass]=\"row.detailIconClassName\"></i>\n <i (click)=\"toggleRowDetail(row)\" [id]=\"tableId+'_ShowDetailLink_'+r\" class=\"bi\"\n [ngClass]=\"{'bi-chevron-down': row.showDetail, 'bi-chevron-right': !row.showDetail}\"\n [tooltip]=\"(row.showDetail ? 'Hide' : 'Show') + ' details for this row'\" placement=\"right\">\n </i>\n </span>\n </td>\n <!-- If row is a divider, it spans the whole table -->\n <td *ngIf=\"row.isDivider\" [colSpan]=\"visibleColumnCount + (dataHasDetails ? 1 : 0)\"\n [ngClass]=\"row.dividerClassName || 'oepa-table-gray'\"> </td>\n <!-- Data Rows -->\n <ng-template *ngIf=\"!row.isDivider\" ngFor let-col [ngForOf]=\"dataColumns\" let-i=\"index\">\n <td *ngIf=\"!col.hidden && (row|cellColspan:col) > 0 &&!col.frozenColumn\"\n ngClass=\"{{row|cellClassname:col || ''}}\" [colSpan]=\"row|cellColspan:col\">\n <oepa-table-data-cell [col]=\"col\" [i]=\"i\" [row]=\"row\" [r]=\"r\" [tableId]=\"tableId\"\n (onActionClick)=\"onActionClick($event)\" (onCellClick)=\"cellClick($event)\"\n (onToggleRowSelection)=\"toggleRowSelection($event)\"\n (onSingleRowSelection)=\"singleRowSelection($event)\"></oepa-table-data-cell>\n </td>\n <td *ngIf=\"!col.hidden && (row|cellColspan:col) > 0 &&col.frozenColumn\" pFrozenColumn\n ngClass=\"{{row|cellClassname:col || ''}}\" [colSpan]=\"row|cellColspan:col\">\n <oepa-table-data-cell [col]=\"col\" [i]=\"i\" [row]=\"row\" [r]=\"r\" [tableId]=\"tableId\"\n (onActionClick)=\"onActionClick($event)\" (onCellClick)=\"cellClick($event)\"\n (onToggleRowSelection)=\"toggleRowSelection($event)\"\n (onSingleRowSelection)=\"singleRowSelection($event)\"></oepa-table-data-cell>\n </td>\n </ng-template>\n </tr>\n\n <!-- Detail Row -->\n <tr *ngIf=\"row.showDetail\" class=\"table-info\">\n <td [colSpan]=\"visibleColumnCount + (dataHasDetails ? 1 : 0)\">\n <cml-template [templateInfo]=\"row.detail\"></cml-template>\n </td>\n </tr>\n </ng-template>\n </p-table>\n </div>\n <!-- Table footer -->\n <form *ngIf=\"!config.hideFooter || (data && pageInfo.itemsPerPage < data.length)\" class=\"form-horizontal\">\n <div class=\"form-group row\">\n <!-- Table-wide filter -->\n <div class=\"col-sm-5\">\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <label [for]=\"tableId+'_FilterAllColumnsInput'\" class=\"sr-only\">Filter all columns</label>\n <input *ngIf=\"!config.hideGlobalFilter\" placeholder=\"Filter all columns\"\n [oepaTableFiltering]=\"{ filterString: '' }\" [tableId]=\"tableId\" class=\"form-control input-sm\"\n (tableChanged)=\"onFilterChanged($event)\" [id]=\"tableId+'_FilterAllColumnsInput'\" />\n </div>\n <div class=\"col-sm-6\">\n <span *ngIf=\"config.showRowCountInFooter && _data && _data.length > 0\">\n <span class=\"badge bg-secondary\">{{_data.length}}</span> total rows\n </span>\n </div>\n </div>\n </div>\n <!-- Export Buttons -->\n <div class=\"col-sm-2 d-flex justify-content-center\">\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\" *ngIf=\"allowEdit\">\n <div *ngIf=\"config.exportToExcel || config.exportToHTML\" class=\"btn-group\" dropdown>\n <button id=\"exportBtn\" dropdownToggle type=\"button\" class=\"btn btn-primary dropdown-toggle\"\n aria-controls=\"dropdown-basic\" aria-label=\"Export options\">\n Export <span class=\"caret\"></span>\n <ul id=\"export-dropdown\" *dropdownMenu class=\"dropdown-menu\">\n <li *ngIf=\"config.exportToExcel\" role=\"menuitem\"><a class=\"dropdown-item\"\n (click)=\"exportToExcel()\">Export to Excel</a></li>\n <li *ngIf=\"config.exportToHTML\" role=\"menuitem\"><a class=\"dropdown-item\"\n (click)=\"exportToHTML()\">Export\n to HTML</a></li>\n </ul>\n </button>\n </div>\n <button *ngIf=\"customBtnVisible\" type=\"button\"\n ngClass=\"{{'btn btn-primary me-1' + (small ? ' btn-sm' : '')}}\" (click)=\"onCustomBtnClick()\"\n [id]=\"tableId+'_CustomBtn'\" [disabled]=\"!customBtnEnabled\" [attr.aria-label]=\"customBtnLabel\">{{customBtnLabel}}</button>\n <button *ngIf=\"customBtnVisible2\" type=\"button\"\n ngClass=\"{{'btn btn-primary me-1' + (small ? ' btn-sm' : '')}}\" (click)=\"onCustomBtn2Click()\"\n [id]=\"tableId+'_CustomBtn'\" [disabled]=\"!customBtnEnabled2\" [attr.aria-label]=\"customBtnLabel2\">{{customBtnLabel2}}</button>\n </div>\n </div>\n </div>\n <!-- Pagination -->\n <div *ngIf=\"!config.disablePagination\" class=\"col-sm-5\">\n <div class=\"row\">\n <div class=\"col-sm-9\">\n <pagination *ngIf=\"paginationOn\" class=\"pagination-sm\" [totalItems]=\"pageInfo.length\"\n [itemsPerPage]=\"pageInfo.itemsPerPage\" [maxSize]=\"pageInfo.maxSize\" [(ngModel)]=\"currentPage\"\n name=\"currentTablePage\" [boundaryLinks]=\"true\" [rotate]=\"false\" (pageChanged)=\"onPageChanged($event)\"\n (numPages)=\"pageInfo.numPages = $event\">\n </pagination>\n </div>\n <div class=\"col-sm-3\">\n <button (click)=\"togglePagingation()\" type=\"button\" class=\"btn btn-default btn-sm me-1\"\n [attr.aria-label]=\"paginationOn ? 'Show All Rows' : 'Restore Pagination'\">\n {{ paginationOn ? 'Show All Rows' : 'Restore Pagination'}}\n </button>\n </div>\n </div>\n </div>\n <div *ngIf=\"allowEdit && (config.exportToExcel || config.exportToHTML)\" class=\"col-sm-12 text-center\">\n <span>Export only visible data: \n <input type=\"checkbox\" [checked]=\"exportVisibleOnly\" (click)=\"toggleExportVisibleOnly()\"\n id=\"exportVisibleOnlyCheckbox\" aria-label=\"Export only visible data\"/>\n \n </span>\n <span *ngIf=\"hasSelectableColumn()\">Include unselected rows in export: \n <input type=\"checkbox\" [checked]=\"exportUnselectedRows\" (click)=\"toggleExportUnselectedRows()\"\n id=\"exportUnselectedRowsCheckbox\" aria-label=\"Include unselected rows in export\"/>\n </span>\n </div>\n </div>\n </form>\n</div>", styles: [".pagination{margin:0}th.oepa-table-header-center{text-align:center}.oepa-table-bold{font-weight:700}.oepa-table-italic{font-style:italic}.oepa-table-line-through{text-decoration:line-through}.oepa-table-gray{background-color:#ddd}td.oepa-undeline-cell{border-bottom:1pt solid black}.detail-indicator-col{width:30px}.action-btn-col{width:90px}.select-col{width:20px}:host ::ng-deep .pagination-sm .page-item .page-link{min-width:44px;min-height:44px;padding:10px 16px;margin:4px}\n"] }]
|
|
3188
3214
|
}], ctorParameters: () => [{ type: i1$3.DomSanitizer }, { type: TableService }, { type: TableExportService }, { type: i1$1.OepaFileUtilService }, { type: i0.ElementRef }], propDecorators: { tableId: [{
|
|
3189
3215
|
type: Input
|
|
3190
3216
|
}], allowEdit: [{
|
|
@@ -3274,11 +3300,11 @@ class DaterangepickerComponent {
|
|
|
3274
3300
|
}
|
|
3275
3301
|
}
|
|
3276
3302
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DaterangepickerComponent, deps: [{ token: i1$1.OepaComponentIdService }], target: i0.ɵɵFactoryTarget.Component });
|
|
3277
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DaterangepickerComponent, selector: "oepa-daterangepicker", inputs: { group: "group", field: "field", bsConfig: "bsConfig", showValidation: "showValidation" }, ngImport: i0, template: "<div [formGroup]=\"group\">\n <div>\n <div class=\"input-group\">\n <input [id]=\"componentId+'_Input'\"\n class=\"form-control\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n #drp=\"bsDaterangepicker\"\n bsDaterangepicker\n [formControlName]=\"field\"\n [bsConfig]=\"bsConfig\"\n [isDisabled]=\"isDisabled\"\n [ngClass]=\"{'is-invalid':showValidation && !checkValidity()}\"\n >\n <div *ngIf=\"!isDisabled\" class=\"input-group-btn\">\n <button class=\"btn btn-primary\" (click)=\"drp.toggle()\" [id]=\"componentId+'_ToggleBtn'\">\n <i class=\"bi bi-calendar3\"></i>\n </button>\n <button class=\"btn btn-primary\" (click)=\"clearRange()\" [id]=\"componentId+'_ClearBtn'\">\n <i class=\"bi bi-x-lg\"></i>\n </button>\n </div>\n </div>\n <small class=\"invalid-feedback d-block\" *ngIf=\"showValidation && !checkValidity()\">Date is required</small>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.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: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i4.BsDaterangepickerDirective, selector: "[bsDaterangepicker]", inputs: ["placement", "triggers", "outsideClick", "container", "outsideEsc", "isOpen", "bsValue", "bsConfig", "isDisabled", "minDate", "maxDate", "dateCustomClasses", "daysDisabled", "datesDisabled", "datesEnabled"], outputs: ["onShown", "onHidden", "bsValueChange"], exportAs: ["bsDaterangepicker"] }, { kind: "directive", type: i4.BsDaterangepickerInputDirective, selector: "input[bsDaterangepicker]" }] });
|
|
3303
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DaterangepickerComponent, selector: "oepa-daterangepicker", inputs: { group: "group", field: "field", bsConfig: "bsConfig", showValidation: "showValidation" }, ngImport: i0, template: "<div [formGroup]=\"group\">\n <div>\n <div class=\"input-group\">\n <input [id]=\"componentId+'_Input'\"\n class=\"form-control\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n #drp=\"bsDaterangepicker\"\n bsDaterangepicker\n [formControlName]=\"field\"\n [bsConfig]=\"bsConfig\"\n [isDisabled]=\"isDisabled\"\n [ngClass]=\"{'is-invalid':showValidation && !checkValidity()}\"\n >\n <div *ngIf=\"!isDisabled\" class=\"input-group-btn\">\n <button class=\"btn btn-primary\" (click)=\"drp.toggle()\" [id]=\"componentId+'_ToggleBtn'\" aria-label=\"Toggle Date Picker\">\n <i class=\"bi bi-calendar3\"></i>\n </button>\n <button class=\"btn btn-primary\" (click)=\"clearRange()\" [id]=\"componentId+'_ClearBtn'\" aria-label=\"Clear Range\">\n <i class=\"bi bi-x-lg\"></i>\n </button>\n </div>\n </div>\n <small class=\"invalid-feedback d-block\" *ngIf=\"showValidation && !checkValidity()\">Date is required</small>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.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: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i4.BsDaterangepickerDirective, selector: "[bsDaterangepicker]", inputs: ["placement", "triggers", "outsideClick", "container", "outsideEsc", "isOpen", "bsValue", "bsConfig", "isDisabled", "minDate", "maxDate", "dateCustomClasses", "daysDisabled", "datesDisabled", "datesEnabled"], outputs: ["onShown", "onHidden", "bsValueChange"], exportAs: ["bsDaterangepicker"] }, { kind: "directive", type: i4.BsDaterangepickerInputDirective, selector: "input[bsDaterangepicker]" }] });
|
|
3278
3304
|
}
|
|
3279
3305
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DaterangepickerComponent, decorators: [{
|
|
3280
3306
|
type: Component,
|
|
3281
|
-
args: [{ selector: 'oepa-daterangepicker', template: "<div [formGroup]=\"group\">\n <div>\n <div class=\"input-group\">\n <input [id]=\"componentId+'_Input'\"\n class=\"form-control\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n #drp=\"bsDaterangepicker\"\n bsDaterangepicker\n [formControlName]=\"field\"\n [bsConfig]=\"bsConfig\"\n [isDisabled]=\"isDisabled\"\n [ngClass]=\"{'is-invalid':showValidation && !checkValidity()}\"\n >\n <div *ngIf=\"!isDisabled\" class=\"input-group-btn\">\n <button class=\"btn btn-primary\" (click)=\"drp.toggle()\" [id]=\"componentId+'_ToggleBtn'\">\n <i class=\"bi bi-calendar3\"></i>\n </button>\n <button class=\"btn btn-primary\" (click)=\"clearRange()\" [id]=\"componentId+'_ClearBtn'\">\n <i class=\"bi bi-x-lg\"></i>\n </button>\n </div>\n </div>\n <small class=\"invalid-feedback d-block\" *ngIf=\"showValidation && !checkValidity()\">Date is required</small>\n </div>\n</div>" }]
|
|
3307
|
+
args: [{ selector: 'oepa-daterangepicker', template: "<div [formGroup]=\"group\">\n <div>\n <div class=\"input-group\">\n <input [id]=\"componentId+'_Input'\"\n class=\"form-control\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n #drp=\"bsDaterangepicker\"\n bsDaterangepicker\n [formControlName]=\"field\"\n [bsConfig]=\"bsConfig\"\n [isDisabled]=\"isDisabled\"\n [ngClass]=\"{'is-invalid':showValidation && !checkValidity()}\"\n >\n <div *ngIf=\"!isDisabled\" class=\"input-group-btn\">\n <button class=\"btn btn-primary\" (click)=\"drp.toggle()\" [id]=\"componentId+'_ToggleBtn'\" aria-label=\"Toggle Date Picker\">\n <i class=\"bi bi-calendar3\"></i>\n </button>\n <button class=\"btn btn-primary\" (click)=\"clearRange()\" [id]=\"componentId+'_ClearBtn'\" aria-label=\"Clear Range\">\n <i class=\"bi bi-x-lg\"></i>\n </button>\n </div>\n </div>\n <small class=\"invalid-feedback d-block\" *ngIf=\"showValidation && !checkValidity()\">Date is required</small>\n </div>\n</div>" }]
|
|
3282
3308
|
}], ctorParameters: () => [{ type: i1$1.OepaComponentIdService }], propDecorators: { group: [{
|
|
3283
3309
|
type: Input
|
|
3284
3310
|
}], field: [{
|
|
@@ -3325,7 +3351,7 @@ class OEPAErrorMessageComponent {
|
|
|
3325
3351
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: OEPAErrorMessageComponent, selector: "oepa-error-message", inputs: { errorMessage: "errorMessage" }, ngImport: i0, template: `
|
|
3326
3352
|
<div class="card error-message">
|
|
3327
3353
|
<div class="card-header">
|
|
3328
|
-
<div><i class="
|
|
3354
|
+
<div><i class="bi bi-exclamation-circle-fill "></i> <strong>ERROR</strong></div>
|
|
3329
3355
|
</div>
|
|
3330
3356
|
<div class="card-body">
|
|
3331
3357
|
<div class="card-text">
|
|
@@ -3340,7 +3366,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
3340
3366
|
args: [{ selector: 'oepa-error-message', template: `
|
|
3341
3367
|
<div class="card error-message">
|
|
3342
3368
|
<div class="card-header">
|
|
3343
|
-
<div><i class="
|
|
3369
|
+
<div><i class="bi bi-exclamation-circle-fill "></i> <strong>ERROR</strong></div>
|
|
3344
3370
|
</div>
|
|
3345
3371
|
<div class="card-body">
|
|
3346
3372
|
<div class="card-text">
|
|
@@ -3528,11 +3554,11 @@ class FileUploadComponent {
|
|
|
3528
3554
|
}
|
|
3529
3555
|
}
|
|
3530
3556
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FileUploadComponent, deps: [{ token: i1$1.OepaComponentIdService }, { token: i1$1.OepaFileUtilService }, { token: i2$1.BsModalService }], target: i0.ɵɵFactoryTarget.Component });
|
|
3531
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FileUploadComponent, selector: "oepa-file-upload", inputs: { group: "group", field: "field", label: "label", errorLabel: "errorLabel", blankForm: "blankForm", blankFormUrl: "blankFormUrl", showValidation: "showValidation", domain: "domain", attachment: "attachment", accept: "accept", removeAllowed: "removeAllowed", parserName: "parserName", parserReport: "parserReport" }, outputs: { fileUploaded: "fileUploaded", fileRemoved: "fileRemoved", download: "download" }, ngImport: i0, template: "<form [formGroup]=\"group\">\n <div *ngIf=\"!attachment || !attachment.userFilename\" class=\"form-group\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <span *ngIf=\"blankFormUrl\"> <a href=\"{{blankFormUrl}}\" target=\"_blank\">Blank Form</a></span>\n <span *ngIf=\"blankForm\"> <a href=\"javascript:void(0)\" (click)=\"downloadBlankForm()\">Blank Form</a></span>\n <div class=\"form-group\">\n <div class=\"input-group\">\n <span class=\"input-group-btn\">\n <label class=\"btn btn-primary btn-file\">\n Browse… \n <input type=\"file\" style=\"display: none;\" (change)=\"fileChange($event)\" \n [id]=\"componentId+'_BrowseBtn'\" [name]=\"componentId+'_BrowseBtn'\" class=\"form-control\"\n [attr.accept]=\"accept ? accept : null\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\">\n </label>\n </span>\n <input [ngClass]=\"{'is-invalid':showValidation && group.controls[field].status === 'INVALID'}\" \n type=\"text\" class=\"form-control\" placeholder=\"No file chosen\" [id]=\"componentId+'_Input'\" [name]=\"componentId+'_Input'\" readonly>\n <small class=\"invalid-feedback\" *ngIf=\"showValidation && group.controls[field].status === 'INVALID'\">{{errorLabel || label}} is required</small>\n </div>\n <!-- dummy input field for validation purposes -->\n <input type=\"text\" [hidden]=\"true\" [formControlName]=\"field\"/>\n </div>\n </div>\n <div *ngIf=\"uploadError\" class=\"alert alert-danger\" role=\"alert\">{{uploadError}}</div>\n <div *ngIf=\"parserReport\">\n <div *ngIf=\"parserReport.successful\" class=\"alert alert-info\" role=\"alert\">Spreadsheet was successfully parsed.</div>\n <div *ngIf=\"!parserReport.successful\" class=\"alert alert-danger\" role=\"alert\">\n There are errors in the uploaded spreadsheet:\n <ul>\n <li *ngFor=\"let error of parserReport.errors\">{{error.message}}</li>\n </ul>\n </div>\n </div>\n </div>\n <div *ngIf=\"attachment && attachment.userFilename\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <div class=\"input-group\">\n <a (click)=\"downloadFile(attachment)\" [id]=\"componentId+'_DownloadFileLink'\" [name]=\"componentId+'_DownloadFileLink'\" \n class=\"form-control\">{{attachment.userFilename}}</a>\n <span *ngIf=\"removeAllowed\" class=\"input-group-btn\">\n <button type=\"button\" class=\"btn btn-primary\" [id]=\"componentId+'_RemoveFileBtn'\" [name]=\"componentId+'_RemoveFileBtn'\"\n (click)=\"removeFile()\" [disabled]=\"group.controls[field].status === 'DISABLED'\">Remove Attachment</button>\n \n\t\t\t</span>\n </div>\n </div>\n </div>\n</form>", styles: ["a:hover{cursor:pointer}a{color:#3399f3!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
3557
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FileUploadComponent, selector: "oepa-file-upload", inputs: { group: "group", field: "field", label: "label", errorLabel: "errorLabel", blankForm: "blankForm", blankFormUrl: "blankFormUrl", showValidation: "showValidation", domain: "domain", attachment: "attachment", accept: "accept", removeAllowed: "removeAllowed", parserName: "parserName", parserReport: "parserReport" }, outputs: { fileUploaded: "fileUploaded", fileRemoved: "fileRemoved", download: "download" }, ngImport: i0, template: "<form [formGroup]=\"group\">\n <div *ngIf=\"!attachment || !attachment.userFilename\" class=\"form-group\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <span *ngIf=\"blankFormUrl\"> <a href=\"{{blankFormUrl}}\" target=\"_blank\">Blank Form</a></span>\n <span *ngIf=\"blankForm\"> <a href=\"javascript:void(0)\" (click)=\"downloadBlankForm()\">Blank Form</a></span>\n <div class=\"form-group\">\n <div class=\"input-group\">\n <span class=\"input-group-btn\">\n <label class=\"btn btn-primary btn-file\">\n Browse… \n <input type=\"file\" style=\"display: none;\" (change)=\"fileChange($event)\" \n [id]=\"componentId+'_BrowseBtn'\" [name]=\"componentId+'_BrowseBtn'\" class=\"form-control\"\n [attr.accept]=\"accept ? accept : null\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\">\n </label>\n </span>\n <input [ngClass]=\"{'is-invalid':showValidation && group.controls[field].status === 'INVALID'}\" \n type=\"text\" class=\"form-control\" placeholder=\"No file chosen\" [id]=\"componentId+'_Input'\" [name]=\"componentId+'_Input'\" readonly>\n <small class=\"invalid-feedback\" *ngIf=\"showValidation && group.controls[field].status === 'INVALID'\">{{errorLabel || label}} is required</small>\n </div>\n <!-- dummy input field for validation purposes -->\n <input type=\"text\" [hidden]=\"true\" [formControlName]=\"field\" id=\"field\"/>\n </div>\n </div>\n <div *ngIf=\"uploadError\" class=\"alert alert-danger\" role=\"alert\">{{uploadError}}</div>\n <div *ngIf=\"parserReport\">\n <div *ngIf=\"parserReport.successful\" class=\"alert alert-info\" role=\"alert\">Spreadsheet was successfully parsed.</div>\n <div *ngIf=\"!parserReport.successful\" class=\"alert alert-danger\" role=\"alert\">\n There are errors in the uploaded spreadsheet:\n <ul>\n <li *ngFor=\"let error of parserReport.errors\">{{error.message}}</li>\n </ul>\n </div>\n </div>\n </div>\n <div *ngIf=\"attachment && attachment.userFilename\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <div class=\"input-group\">\n <a (click)=\"downloadFile(attachment)\" [id]=\"componentId+'_DownloadFileLink'\" [name]=\"componentId+'_DownloadFileLink'\" \n class=\"form-control\">{{attachment.userFilename}}</a>\n <span *ngIf=\"removeAllowed\" class=\"input-group-btn\">\n <button type=\"button\" class=\"btn btn-primary\" [id]=\"componentId+'_RemoveFileBtn'\" [name]=\"componentId+'_RemoveFileBtn'\"\n (click)=\"removeFile()\" [disabled]=\"group.controls[field].status === 'DISABLED'\" aria-label=\"Remove Attachment\">Remove Attachment</button>\n \n\t\t\t</span>\n </div>\n </div>\n </div>\n</form>", styles: ["a:hover{cursor:pointer}a{color:#3399f3!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
3532
3558
|
}
|
|
3533
3559
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FileUploadComponent, decorators: [{
|
|
3534
3560
|
type: Component,
|
|
3535
|
-
args: [{ selector: 'oepa-file-upload', template: "<form [formGroup]=\"group\">\n <div *ngIf=\"!attachment || !attachment.userFilename\" class=\"form-group\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <span *ngIf=\"blankFormUrl\"> <a href=\"{{blankFormUrl}}\" target=\"_blank\">Blank Form</a></span>\n <span *ngIf=\"blankForm\"> <a href=\"javascript:void(0)\" (click)=\"downloadBlankForm()\">Blank Form</a></span>\n <div class=\"form-group\">\n <div class=\"input-group\">\n <span class=\"input-group-btn\">\n <label class=\"btn btn-primary btn-file\">\n Browse… \n <input type=\"file\" style=\"display: none;\" (change)=\"fileChange($event)\" \n [id]=\"componentId+'_BrowseBtn'\" [name]=\"componentId+'_BrowseBtn'\" class=\"form-control\"\n [attr.accept]=\"accept ? accept : null\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\">\n </label>\n </span>\n <input [ngClass]=\"{'is-invalid':showValidation && group.controls[field].status === 'INVALID'}\" \n type=\"text\" class=\"form-control\" placeholder=\"No file chosen\" [id]=\"componentId+'_Input'\" [name]=\"componentId+'_Input'\" readonly>\n <small class=\"invalid-feedback\" *ngIf=\"showValidation && group.controls[field].status === 'INVALID'\">{{errorLabel || label}} is required</small>\n </div>\n <!-- dummy input field for validation purposes -->\n <input type=\"text\" [hidden]=\"true\" [formControlName]=\"field\"/>\n </div>\n </div>\n <div *ngIf=\"uploadError\" class=\"alert alert-danger\" role=\"alert\">{{uploadError}}</div>\n <div *ngIf=\"parserReport\">\n <div *ngIf=\"parserReport.successful\" class=\"alert alert-info\" role=\"alert\">Spreadsheet was successfully parsed.</div>\n <div *ngIf=\"!parserReport.successful\" class=\"alert alert-danger\" role=\"alert\">\n There are errors in the uploaded spreadsheet:\n <ul>\n <li *ngFor=\"let error of parserReport.errors\">{{error.message}}</li>\n </ul>\n </div>\n </div>\n </div>\n <div *ngIf=\"attachment && attachment.userFilename\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <div class=\"input-group\">\n <a (click)=\"downloadFile(attachment)\" [id]=\"componentId+'_DownloadFileLink'\" [name]=\"componentId+'_DownloadFileLink'\" \n class=\"form-control\">{{attachment.userFilename}}</a>\n <span *ngIf=\"removeAllowed\" class=\"input-group-btn\">\n <button type=\"button\" class=\"btn btn-primary\" [id]=\"componentId+'_RemoveFileBtn'\" [name]=\"componentId+'_RemoveFileBtn'\"\n (click)=\"removeFile()\" [disabled]=\"group.controls[field].status === 'DISABLED'\">Remove Attachment</button>\n \n\t\t\t</span>\n </div>\n </div>\n </div>\n</form>", styles: ["a:hover{cursor:pointer}a{color:#3399f3!important}\n"] }]
|
|
3561
|
+
args: [{ selector: 'oepa-file-upload', template: "<form [formGroup]=\"group\">\n <div *ngIf=\"!attachment || !attachment.userFilename\" class=\"form-group\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <span *ngIf=\"blankFormUrl\"> <a href=\"{{blankFormUrl}}\" target=\"_blank\">Blank Form</a></span>\n <span *ngIf=\"blankForm\"> <a href=\"javascript:void(0)\" (click)=\"downloadBlankForm()\">Blank Form</a></span>\n <div class=\"form-group\">\n <div class=\"input-group\">\n <span class=\"input-group-btn\">\n <label class=\"btn btn-primary btn-file\">\n Browse… \n <input type=\"file\" style=\"display: none;\" (change)=\"fileChange($event)\" \n [id]=\"componentId+'_BrowseBtn'\" [name]=\"componentId+'_BrowseBtn'\" class=\"form-control\"\n [attr.accept]=\"accept ? accept : null\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\">\n </label>\n </span>\n <input [ngClass]=\"{'is-invalid':showValidation && group.controls[field].status === 'INVALID'}\" \n type=\"text\" class=\"form-control\" placeholder=\"No file chosen\" [id]=\"componentId+'_Input'\" [name]=\"componentId+'_Input'\" readonly>\n <small class=\"invalid-feedback\" *ngIf=\"showValidation && group.controls[field].status === 'INVALID'\">{{errorLabel || label}} is required</small>\n </div>\n <!-- dummy input field for validation purposes -->\n <input type=\"text\" [hidden]=\"true\" [formControlName]=\"field\" id=\"field\"/>\n </div>\n </div>\n <div *ngIf=\"uploadError\" class=\"alert alert-danger\" role=\"alert\">{{uploadError}}</div>\n <div *ngIf=\"parserReport\">\n <div *ngIf=\"parserReport.successful\" class=\"alert alert-info\" role=\"alert\">Spreadsheet was successfully parsed.</div>\n <div *ngIf=\"!parserReport.successful\" class=\"alert alert-danger\" role=\"alert\">\n There are errors in the uploaded spreadsheet:\n <ul>\n <li *ngFor=\"let error of parserReport.errors\">{{error.message}}</li>\n </ul>\n </div>\n </div>\n </div>\n <div *ngIf=\"attachment && attachment.userFilename\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <div class=\"input-group\">\n <a (click)=\"downloadFile(attachment)\" [id]=\"componentId+'_DownloadFileLink'\" [name]=\"componentId+'_DownloadFileLink'\" \n class=\"form-control\">{{attachment.userFilename}}</a>\n <span *ngIf=\"removeAllowed\" class=\"input-group-btn\">\n <button type=\"button\" class=\"btn btn-primary\" [id]=\"componentId+'_RemoveFileBtn'\" [name]=\"componentId+'_RemoveFileBtn'\"\n (click)=\"removeFile()\" [disabled]=\"group.controls[field].status === 'DISABLED'\" aria-label=\"Remove Attachment\">Remove Attachment</button>\n \n\t\t\t</span>\n </div>\n </div>\n </div>\n</form>", styles: ["a:hover{cursor:pointer}a{color:#3399f3!important}\n"] }]
|
|
3536
3562
|
}], ctorParameters: () => [{ type: i1$1.OepaComponentIdService }, { type: i1$1.OepaFileUtilService }, { type: i2$1.BsModalService }], propDecorators: { group: [{
|
|
3537
3563
|
type: Input
|
|
3538
3564
|
}], field: [{
|
|
@@ -3661,11 +3687,11 @@ class MultiFileUploadComponent {
|
|
|
3661
3687
|
}
|
|
3662
3688
|
}
|
|
3663
3689
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MultiFileUploadComponent, deps: [{ token: i1$1.OepaComponentIdService }, { token: i1$1.OepaFileUtilService }, { token: i2$1.BsModalService }], target: i0.ɵɵFactoryTarget.Component });
|
|
3664
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MultiFileUploadComponent, selector: "oepa-multi-file-upload", inputs: { group: "group", field: "field", label: "label", errorLabel: "errorLabel", blankForm: "blankForm", blankFormUrl: "blankFormUrl", showValidation: "showValidation", domain: "domain", attachments: "attachments", removeAllowed: "removeAllowed" }, outputs: { fileUploaded: "fileUploaded", fileRemoved: "fileRemoved", download: "download" }, viewQueries: [{ propertyName: "myFileInput", first: true, predicate: ["myFileInput"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<form [formGroup]=\"group\">\n <div class=\"form-group\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <span *ngIf=\"blankFormUrl\"> <a href=\"{{blankFormUrl}}\" target=\"_blank\">Blank Form</a></span>\n <span *ngIf=\"blankForm\"> <a href=\"\" (click)=\"downloadBlankForm()\">Blank Form</a></span>\n <div class=\"form-group\">\n <div class=\"input-group\">\n <span class=\"input-group-btn\">\n <label class=\"btn btn-primary btn-file\">\n Browse… \n <input #myFileInput type=\"file\" style=\"display: none;\" (change)=\"fileChange($event)\" \n [id]=\"componentId+'_BrowseBtn'\" [name]=\"componentId+'_BrowseBtn'\" class=\"form-control\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\">\n </label>\n </span>\n <input [ngClass]=\"{'is-invalid':showValidation && group.controls[field].status === 'INVALID'}\"\n type=\"text\" class=\"form-control\" \n [placeholder]=\"(!attachments || attachments.length === 0) ? 'No files uploaded' : (attachments.length + ' file(s) uploaded')\"\n [id]=\"componentId+'_Input'\" [name]=\"componentId+'_Input'\" readonly>\n <small class=\"invalid-feedback\" *ngIf=\"showValidation && group.controls[field].status === 'INVALID'\">{{errorLabel || label}} is required</small>\n </div>\n <!-- dummy input field for validation purposes -->\n <input type=\"text\" [hidden]=\"true\" [formControlName]=\"field\"/>\n </div>\n </div>\n <div *ngIf=\"uploadError\" class=\"alert alert-danger\" role=\"alert\">{{uploadError}}</div>\n <div *ngIf=\"parserReport\">\n <div *ngIf=\"!attachments[0] && parserReport.successful\" class=\"alert alert-info\" role=\"alert\">Spreadsheet was successfully parsed.</div>\n <div [hidden]=\"parserReport.successful\" class=\"alert alert-danger\" role=\"alert\">\n There are errors in the uploaded spreadsheet:\n <ul>\n <li *ngFor=\"let error of parserReport.errors\">{{error.message}}</li>\n </ul>\n </div>\n </div>\n </div>\n <div *ngIf=\"attachments && attachments[0]\">\n <div *ngFor=\"let attachment of attachments; let i=index;\">\n <div class=\"form-group\">\n <div class=\"input-group\">\n <a (click)=\"downloadFile(attachment)\" [id]=\"componentId+'_DownloadFileLink_'+i\" [name]=\"componentId+'_DownloadFileLink_'+i\"\n class=\"form-control\">{{attachment.userFilename}}</a>\n <span *ngIf=\"removeAllowed\" class=\"input-group-btn\">\n <button type=\"button\" class=\"btn btn-primary\" [id]=\"componentId+'_RemoveFileBtn_'+i\" [name]=\"componentId+'_RemoveFileBtn_'+i\"\n (click)=\"removeFile(attachment)\" [disabled]=\"group.controls[field].status === 'DISABLED'\">Remove Attachment</button>\n </span>\n </div>\n </div>\n </div>\n </div>\n</form>", styles: ["a:hover{cursor:pointer}a{color:#3399f3!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
3690
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MultiFileUploadComponent, selector: "oepa-multi-file-upload", inputs: { group: "group", field: "field", label: "label", errorLabel: "errorLabel", blankForm: "blankForm", blankFormUrl: "blankFormUrl", showValidation: "showValidation", domain: "domain", attachments: "attachments", removeAllowed: "removeAllowed" }, outputs: { fileUploaded: "fileUploaded", fileRemoved: "fileRemoved", download: "download" }, viewQueries: [{ propertyName: "myFileInput", first: true, predicate: ["myFileInput"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<form [formGroup]=\"group\">\n <div class=\"form-group\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <span *ngIf=\"blankFormUrl\"> <a href=\"{{blankFormUrl}}\" target=\"_blank\">Blank Form</a></span>\n <span *ngIf=\"blankForm\"> <a href=\"\" (click)=\"downloadBlankForm()\">Blank Form</a></span>\n <div class=\"form-group\">\n <div class=\"input-group\">\n <span class=\"input-group-btn\">\n <label class=\"btn btn-primary btn-file\">\n Browse… \n <input #myFileInput type=\"file\" style=\"display: none;\" (change)=\"fileChange($event)\" \n [id]=\"componentId+'_BrowseBtn'\" [name]=\"componentId+'_BrowseBtn'\" class=\"form-control\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\">\n </label>\n </span>\n <input [ngClass]=\"{'is-invalid':showValidation && group.controls[field].status === 'INVALID'}\"\n type=\"text\" class=\"form-control\" \n [placeholder]=\"(!attachments || attachments.length === 0) ? 'No files uploaded' : (attachments.length + ' file(s) uploaded')\"\n [id]=\"componentId+'_Input'\" [name]=\"componentId+'_Input'\" readonly>\n <small class=\"invalid-feedback\" *ngIf=\"showValidation && group.controls[field].status === 'INVALID'\">{{errorLabel || label}} is required</small>\n </div>\n <!-- dummy input field for validation purposes -->\n <input type=\"text\" [hidden]=\"true\" [formControlName]=\"field\" id=\"field\"/>\n </div>\n </div>\n <div *ngIf=\"uploadError\" class=\"alert alert-danger\" role=\"alert\">{{uploadError}}</div>\n <div *ngIf=\"parserReport\">\n <div *ngIf=\"!attachments[0] && parserReport.successful\" class=\"alert alert-info\" role=\"alert\">Spreadsheet was successfully parsed.</div>\n <div [hidden]=\"parserReport.successful\" class=\"alert alert-danger\" role=\"alert\">\n There are errors in the uploaded spreadsheet:\n <ul>\n <li *ngFor=\"let error of parserReport.errors\">{{error.message}}</li>\n </ul>\n </div>\n </div>\n </div>\n <div *ngIf=\"attachments && attachments[0]\">\n <div *ngFor=\"let attachment of attachments; let i=index;\">\n <div class=\"form-group\">\n <div class=\"input-group\">\n <a (click)=\"downloadFile(attachment)\" [id]=\"componentId+'_DownloadFileLink_'+i\" [name]=\"componentId+'_DownloadFileLink_'+i\"\n class=\"form-control\">{{attachment.userFilename}}</a>\n <span *ngIf=\"removeAllowed\" class=\"input-group-btn\">\n <button type=\"button\" class=\"btn btn-primary\" [id]=\"componentId+'_RemoveFileBtn_'+i\" [name]=\"componentId+'_RemoveFileBtn_'+i\"\n (click)=\"removeFile(attachment)\" [disabled]=\"group.controls[field].status === 'DISABLED'\" aria-label=\"Remove Attachment\">Remove Attachment</button>\n </span>\n </div>\n </div>\n </div>\n </div>\n</form>", styles: ["a:hover{cursor:pointer}a{color:#3399f3!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
3665
3691
|
}
|
|
3666
3692
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MultiFileUploadComponent, decorators: [{
|
|
3667
3693
|
type: Component,
|
|
3668
|
-
args: [{ selector: 'oepa-multi-file-upload', template: "<form [formGroup]=\"group\">\n <div class=\"form-group\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <span *ngIf=\"blankFormUrl\"> <a href=\"{{blankFormUrl}}\" target=\"_blank\">Blank Form</a></span>\n <span *ngIf=\"blankForm\"> <a href=\"\" (click)=\"downloadBlankForm()\">Blank Form</a></span>\n <div class=\"form-group\">\n <div class=\"input-group\">\n <span class=\"input-group-btn\">\n <label class=\"btn btn-primary btn-file\">\n Browse… \n <input #myFileInput type=\"file\" style=\"display: none;\" (change)=\"fileChange($event)\" \n [id]=\"componentId+'_BrowseBtn'\" [name]=\"componentId+'_BrowseBtn'\" class=\"form-control\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\">\n </label>\n </span>\n <input [ngClass]=\"{'is-invalid':showValidation && group.controls[field].status === 'INVALID'}\"\n type=\"text\" class=\"form-control\" \n [placeholder]=\"(!attachments || attachments.length === 0) ? 'No files uploaded' : (attachments.length + ' file(s) uploaded')\"\n [id]=\"componentId+'_Input'\" [name]=\"componentId+'_Input'\" readonly>\n <small class=\"invalid-feedback\" *ngIf=\"showValidation && group.controls[field].status === 'INVALID'\">{{errorLabel || label}} is required</small>\n </div>\n <!-- dummy input field for validation purposes -->\n <input type=\"text\" [hidden]=\"true\" [formControlName]=\"field\"/>\n </div>\n </div>\n <div *ngIf=\"uploadError\" class=\"alert alert-danger\" role=\"alert\">{{uploadError}}</div>\n <div *ngIf=\"parserReport\">\n <div *ngIf=\"!attachments[0] && parserReport.successful\" class=\"alert alert-info\" role=\"alert\">Spreadsheet was successfully parsed.</div>\n <div [hidden]=\"parserReport.successful\" class=\"alert alert-danger\" role=\"alert\">\n There are errors in the uploaded spreadsheet:\n <ul>\n <li *ngFor=\"let error of parserReport.errors\">{{error.message}}</li>\n </ul>\n </div>\n </div>\n </div>\n <div *ngIf=\"attachments && attachments[0]\">\n <div *ngFor=\"let attachment of attachments; let i=index;\">\n <div class=\"form-group\">\n <div class=\"input-group\">\n <a (click)=\"downloadFile(attachment)\" [id]=\"componentId+'_DownloadFileLink_'+i\" [name]=\"componentId+'_DownloadFileLink_'+i\"\n class=\"form-control\">{{attachment.userFilename}}</a>\n <span *ngIf=\"removeAllowed\" class=\"input-group-btn\">\n <button type=\"button\" class=\"btn btn-primary\" [id]=\"componentId+'_RemoveFileBtn_'+i\" [name]=\"componentId+'_RemoveFileBtn_'+i\"\n (click)=\"removeFile(attachment)\" [disabled]=\"group.controls[field].status === 'DISABLED'\">Remove Attachment</button>\n </span>\n </div>\n </div>\n </div>\n </div>\n</form>", styles: ["a:hover{cursor:pointer}a{color:#3399f3!important}\n"] }]
|
|
3694
|
+
args: [{ selector: 'oepa-multi-file-upload', template: "<form [formGroup]=\"group\">\n <div class=\"form-group\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <span *ngIf=\"blankFormUrl\"> <a href=\"{{blankFormUrl}}\" target=\"_blank\">Blank Form</a></span>\n <span *ngIf=\"blankForm\"> <a href=\"\" (click)=\"downloadBlankForm()\">Blank Form</a></span>\n <div class=\"form-group\">\n <div class=\"input-group\">\n <span class=\"input-group-btn\">\n <label class=\"btn btn-primary btn-file\">\n Browse… \n <input #myFileInput type=\"file\" style=\"display: none;\" (change)=\"fileChange($event)\" \n [id]=\"componentId+'_BrowseBtn'\" [name]=\"componentId+'_BrowseBtn'\" class=\"form-control\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\">\n </label>\n </span>\n <input [ngClass]=\"{'is-invalid':showValidation && group.controls[field].status === 'INVALID'}\"\n type=\"text\" class=\"form-control\" \n [placeholder]=\"(!attachments || attachments.length === 0) ? 'No files uploaded' : (attachments.length + ' file(s) uploaded')\"\n [id]=\"componentId+'_Input'\" [name]=\"componentId+'_Input'\" readonly>\n <small class=\"invalid-feedback\" *ngIf=\"showValidation && group.controls[field].status === 'INVALID'\">{{errorLabel || label}} is required</small>\n </div>\n <!-- dummy input field for validation purposes -->\n <input type=\"text\" [hidden]=\"true\" [formControlName]=\"field\" id=\"field\"/>\n </div>\n </div>\n <div *ngIf=\"uploadError\" class=\"alert alert-danger\" role=\"alert\">{{uploadError}}</div>\n <div *ngIf=\"parserReport\">\n <div *ngIf=\"!attachments[0] && parserReport.successful\" class=\"alert alert-info\" role=\"alert\">Spreadsheet was successfully parsed.</div>\n <div [hidden]=\"parserReport.successful\" class=\"alert alert-danger\" role=\"alert\">\n There are errors in the uploaded spreadsheet:\n <ul>\n <li *ngFor=\"let error of parserReport.errors\">{{error.message}}</li>\n </ul>\n </div>\n </div>\n </div>\n <div *ngIf=\"attachments && attachments[0]\">\n <div *ngFor=\"let attachment of attachments; let i=index;\">\n <div class=\"form-group\">\n <div class=\"input-group\">\n <a (click)=\"downloadFile(attachment)\" [id]=\"componentId+'_DownloadFileLink_'+i\" [name]=\"componentId+'_DownloadFileLink_'+i\"\n class=\"form-control\">{{attachment.userFilename}}</a>\n <span *ngIf=\"removeAllowed\" class=\"input-group-btn\">\n <button type=\"button\" class=\"btn btn-primary\" [id]=\"componentId+'_RemoveFileBtn_'+i\" [name]=\"componentId+'_RemoveFileBtn_'+i\"\n (click)=\"removeFile(attachment)\" [disabled]=\"group.controls[field].status === 'DISABLED'\" aria-label=\"Remove Attachment\">Remove Attachment</button>\n </span>\n </div>\n </div>\n </div>\n </div>\n</form>", styles: ["a:hover{cursor:pointer}a{color:#3399f3!important}\n"] }]
|
|
3669
3695
|
}], ctorParameters: () => [{ type: i1$1.OepaComponentIdService }, { type: i1$1.OepaFileUtilService }, { type: i2$1.BsModalService }], propDecorators: { group: [{
|
|
3670
3696
|
type: Input
|
|
3671
3697
|
}], field: [{
|
|
@@ -4329,11 +4355,11 @@ class OrganizationCreateModalComponent {
|
|
|
4329
4355
|
return this.modalFormGroup.controls[name].hasError(field);
|
|
4330
4356
|
}
|
|
4331
4357
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OrganizationCreateModalComponent, deps: [{ token: i1$2.FormBuilder }, { token: i2$1.BsModalRef }, { token: OepaFormsService }, { token: EntityService }], target: i0.ɵɵFactoryTarget.Component });
|
|
4332
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: OrganizationCreateModalComponent, selector: "oepa-organization-create-modal", outputs: { onOrganizationCreated: "onOrganizationCreated" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Create Organization</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <div *ngIf=\"!modalFormGroup\">\n <div class=\"text-center\">Initializing...</div>\n <div class=\"text-center\"><span class=\"spinner-border text-primary\" role=\"status\"></span></div>\n </div>\n <form *ngIf=\"modalFormGroup\" [formGroup]=\"modalFormGroup\">\n <label>Organization Type</label>\n <select id=\"orgTypeSelect\" formControlName=\"orgType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('orgType')\">\n <option *ngFor=\"let t of organizationTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('orgType','required')\">Organization Type is required</small>\n\n <label>Program</label>\n <select id=\"programSelect\" formControlName=\"program\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('program')\">\n <option *ngFor=\"let t of programs\" [ngValue]=\"t\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('program','required')\">Program is required</small>\n\n <label>Organization Name</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"organizationName\" id=\"organizationName\" maxlength=\"40\"\n [ngClass]=\"getModalFormGroupInvalidClass('organizationName')\"> \n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('organizationName','required')\">Organization is required</small>\n\n <label>Phone Number</label>\n <input type=\"text\" class=\"form-control\" [ngClass]=\"getModalFormGroupInvalidClass('phoneNumber')\"\n placeholder=\"(xxx) xxx-xxxx\" formControlName=\"phoneNumber\" id=\"PhoneInput\" mask=\"(000) 000-0000\" minlength=\"10\">\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('phoneNumber','required')\">Phone Number is required</small>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('phoneNumber','minlength')\">Please enter a valid phone number</small>\n \n <label>Phone Number Type</label>\n <select id=\"phoneNumberTypeSelect\" formControlName=\"phoneNumberType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('phoneNumberType')\">\n <option *ngFor=\"let t of phoneNumberTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('phoneNumberType','required')\">Phone Number Type is required</small>\n\n <oepa-address [group]=\"getModalFormGroup('address')\" [showValidation]=\"true\" [cityMaxLength] = \"25\"></oepa-address> \n\n <label>Address Type</label>\n <select id=\"addressTypeSelect\" formControlName=\"addressType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('addressType')\">\n <option *ngFor=\"let t of addressTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('addressType','required')\">Address Type is required</small>\n \n </form>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Matching Organization List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"organizationSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"inProgressMsg\">\n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div *ngIf=\"infoMessage && !inProgressMsg\">\n <div class=\"alert alert-info\">\n {{infoMessage}}\n </div>\n </div>\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"(!tableData || tableData.length === 0) && !inProgressMsg\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SaveOrganizationBtn\"
|
|
4358
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: OrganizationCreateModalComponent, selector: "oepa-organization-create-modal", outputs: { onOrganizationCreated: "onOrganizationCreated" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Create Organization</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <div *ngIf=\"!modalFormGroup\">\n <div class=\"text-center\">Initializing...</div>\n <div class=\"text-center\"><span class=\"spinner-border text-primary\" role=\"status\"></span></div>\n </div>\n <form *ngIf=\"modalFormGroup\" [formGroup]=\"modalFormGroup\">\n <label for=\"orgTypeSelect\">Organization Type</label>\n <select id=\"orgTypeSelect\" formControlName=\"orgType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('orgType')\">\n <option *ngFor=\"let t of organizationTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('orgType','required')\">Organization Type is required</small>\n\n <label for=\"programSelect\">Program</label>\n <select id=\"programSelect\" formControlName=\"program\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('program')\">\n <option *ngFor=\"let t of programs\" [ngValue]=\"t\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('program','required')\">Program is required</small>\n\n <label for=\"organizationName\">Organization Name</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"organizationName\" id=\"organizationName\" maxlength=\"40\"\n [ngClass]=\"getModalFormGroupInvalidClass('organizationName')\"> \n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('organizationName','required')\">Organization is required</small>\n\n <label for=\"PhoneInput\">Phone Number</label>\n <input type=\"text\" class=\"form-control\" [ngClass]=\"getModalFormGroupInvalidClass('phoneNumber')\"\n placeholder=\"(xxx) xxx-xxxx\" formControlName=\"phoneNumber\" id=\"PhoneInput\" mask=\"(000) 000-0000\" minlength=\"10\">\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('phoneNumber','required')\">Phone Number is required</small>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('phoneNumber','minlength')\">Please enter a valid phone number</small>\n \n <label for=\"phoneNumberTypeSelect\">Phone Number Type</label>\n <select id=\"phoneNumberTypeSelect\" formControlName=\"phoneNumberType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('phoneNumberType')\">\n <option *ngFor=\"let t of phoneNumberTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('phoneNumberType','required')\">Phone Number Type is required</small>\n\n <oepa-address [group]=\"getModalFormGroup('address')\" [showValidation]=\"true\" [cityMaxLength] = \"25\"></oepa-address> \n\n <label for=\"addressTypeSelect\">Address Type</label>\n <select id=\"addressTypeSelect\" formControlName=\"addressType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('addressType')\">\n <option *ngFor=\"let t of addressTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('addressType','required')\">Address Type is required</small>\n \n </form>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Matching Organization List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"organizationSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"inProgressMsg\">\n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div *ngIf=\"infoMessage && !inProgressMsg\">\n <div class=\"alert alert-info\">\n {{infoMessage}}\n </div>\n </div>\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"(!tableData || tableData.length === 0) && !inProgressMsg\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SaveOrganizationBtn\" [disabled]=\"!modalFormGroup || modalFormGroup.invalid\"\n (click)=\"saveOrganizationAfterSearch()\" aria-label=\"Save new organization\">Save</button>\n <button *ngIf=\"tableData && tableData.length > 0 && !selectedOrganization && !inProgressMsg\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SaveOrganizationWithoutSearchBtn\"\n [disabled]=\"modalFormGroup.invalid\"\n (click)=\"saveOrganization()\" aria-label=\"No match, save new organization\">No Match, Save New Organization</button>\n <button *ngIf=\"tableData && tableData.length > 0 && selectedOrganization && !inProgressMsg\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SaveSelectedOrganizationBtn\"\n [disabled]=\"modalFormGroup.invalid\"\n (click)=\"saveSelectedOrganization()\" aria-label=\"Use selected organization\">Use Selected Organization</button>\n <button id=\"CancelOrganizationBtn\" type=\"button\" class=\"btn btn-primary\"\n (click)=\"bsModalRef.hide()\" aria-label=\"Cancel\">Cancel</button>\n </div>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.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: i1$2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i7.NgxMaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "leadZero", "triggerOnMaskChange", "apm", "inputTransformFn", "outputTransformFn", "keepCharacterPositions"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }, { kind: "component", type: AddressComponent, selector: "oepa-address", inputs: ["group", "showValidation", "addressOneLabel", "addressTwoLabel", "cityLabel", "stateLabel", "zipCodeLabel", "disableState", "isSearch", "hideLine2", "line1MaxLength", "line2MaxLength", "cityMaxLength", "foreignStateLabel", "foreignZipLabel", "countryLabel", "sameAsGroup", "sameAsLabel", "sameAsChecked"] }, { kind: "component", type: TableComponent, selector: "oepa-table", inputs: ["tableId", "config", "complexHeader", "header", "customBtnLabel", "customBtnVisible", "customBtnEnabled", "data", "totalRow"], outputs: ["cellClicked", "actionClicked", "rowSelected", "customBtnClicked"] }] });
|
|
4333
4359
|
}
|
|
4334
4360
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OrganizationCreateModalComponent, decorators: [{
|
|
4335
4361
|
type: Component,
|
|
4336
|
-
args: [{ selector: 'oepa-organization-create-modal', template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Create Organization</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <div *ngIf=\"!modalFormGroup\">\n <div class=\"text-center\">Initializing...</div>\n <div class=\"text-center\"><span class=\"spinner-border text-primary\" role=\"status\"></span></div>\n </div>\n <form *ngIf=\"modalFormGroup\" [formGroup]=\"modalFormGroup\">\n <label>Organization Type</label>\n <select id=\"orgTypeSelect\" formControlName=\"orgType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('orgType')\">\n <option *ngFor=\"let t of organizationTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('orgType','required')\">Organization Type is required</small>\n\n <label>Program</label>\n <select id=\"programSelect\" formControlName=\"program\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('program')\">\n <option *ngFor=\"let t of programs\" [ngValue]=\"t\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('program','required')\">Program is required</small>\n\n <label>Organization Name</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"organizationName\" id=\"organizationName\" maxlength=\"40\"\n [ngClass]=\"getModalFormGroupInvalidClass('organizationName')\"> \n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('organizationName','required')\">Organization is required</small>\n\n <label>Phone Number</label>\n <input type=\"text\" class=\"form-control\" [ngClass]=\"getModalFormGroupInvalidClass('phoneNumber')\"\n placeholder=\"(xxx) xxx-xxxx\" formControlName=\"phoneNumber\" id=\"PhoneInput\" mask=\"(000) 000-0000\" minlength=\"10\">\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('phoneNumber','required')\">Phone Number is required</small>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('phoneNumber','minlength')\">Please enter a valid phone number</small>\n \n <label>Phone Number Type</label>\n <select id=\"phoneNumberTypeSelect\" formControlName=\"phoneNumberType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('phoneNumberType')\">\n <option *ngFor=\"let t of phoneNumberTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('phoneNumberType','required')\">Phone Number Type is required</small>\n\n <oepa-address [group]=\"getModalFormGroup('address')\" [showValidation]=\"true\" [cityMaxLength] = \"25\"></oepa-address> \n\n <label>Address Type</label>\n <select id=\"addressTypeSelect\" formControlName=\"addressType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('addressType')\">\n <option *ngFor=\"let t of addressTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('addressType','required')\">Address Type is required</small>\n \n </form>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Matching Organization List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"organizationSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"inProgressMsg\">\n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div *ngIf=\"infoMessage && !inProgressMsg\">\n <div class=\"alert alert-info\">\n {{infoMessage}}\n </div>\n </div>\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"(!tableData || tableData.length === 0) && !inProgressMsg\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SaveOrganizationBtn\"
|
|
4362
|
+
args: [{ selector: 'oepa-organization-create-modal', template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Create Organization</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <div *ngIf=\"!modalFormGroup\">\n <div class=\"text-center\">Initializing...</div>\n <div class=\"text-center\"><span class=\"spinner-border text-primary\" role=\"status\"></span></div>\n </div>\n <form *ngIf=\"modalFormGroup\" [formGroup]=\"modalFormGroup\">\n <label for=\"orgTypeSelect\">Organization Type</label>\n <select id=\"orgTypeSelect\" formControlName=\"orgType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('orgType')\">\n <option *ngFor=\"let t of organizationTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('orgType','required')\">Organization Type is required</small>\n\n <label for=\"programSelect\">Program</label>\n <select id=\"programSelect\" formControlName=\"program\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('program')\">\n <option *ngFor=\"let t of programs\" [ngValue]=\"t\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('program','required')\">Program is required</small>\n\n <label for=\"organizationName\">Organization Name</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"organizationName\" id=\"organizationName\" maxlength=\"40\"\n [ngClass]=\"getModalFormGroupInvalidClass('organizationName')\"> \n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('organizationName','required')\">Organization is required</small>\n\n <label for=\"PhoneInput\">Phone Number</label>\n <input type=\"text\" class=\"form-control\" [ngClass]=\"getModalFormGroupInvalidClass('phoneNumber')\"\n placeholder=\"(xxx) xxx-xxxx\" formControlName=\"phoneNumber\" id=\"PhoneInput\" mask=\"(000) 000-0000\" minlength=\"10\">\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('phoneNumber','required')\">Phone Number is required</small>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('phoneNumber','minlength')\">Please enter a valid phone number</small>\n \n <label for=\"phoneNumberTypeSelect\">Phone Number Type</label>\n <select id=\"phoneNumberTypeSelect\" formControlName=\"phoneNumberType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('phoneNumberType')\">\n <option *ngFor=\"let t of phoneNumberTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('phoneNumberType','required')\">Phone Number Type is required</small>\n\n <oepa-address [group]=\"getModalFormGroup('address')\" [showValidation]=\"true\" [cityMaxLength] = \"25\"></oepa-address> \n\n <label for=\"addressTypeSelect\">Address Type</label>\n <select id=\"addressTypeSelect\" formControlName=\"addressType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('addressType')\">\n <option *ngFor=\"let t of addressTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('addressType','required')\">Address Type is required</small>\n \n </form>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Matching Organization List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"organizationSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"inProgressMsg\">\n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div *ngIf=\"infoMessage && !inProgressMsg\">\n <div class=\"alert alert-info\">\n {{infoMessage}}\n </div>\n </div>\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"(!tableData || tableData.length === 0) && !inProgressMsg\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SaveOrganizationBtn\" [disabled]=\"!modalFormGroup || modalFormGroup.invalid\"\n (click)=\"saveOrganizationAfterSearch()\" aria-label=\"Save new organization\">Save</button>\n <button *ngIf=\"tableData && tableData.length > 0 && !selectedOrganization && !inProgressMsg\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SaveOrganizationWithoutSearchBtn\"\n [disabled]=\"modalFormGroup.invalid\"\n (click)=\"saveOrganization()\" aria-label=\"No match, save new organization\">No Match, Save New Organization</button>\n <button *ngIf=\"tableData && tableData.length > 0 && selectedOrganization && !inProgressMsg\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SaveSelectedOrganizationBtn\"\n [disabled]=\"modalFormGroup.invalid\"\n (click)=\"saveSelectedOrganization()\" aria-label=\"Use selected organization\">Use Selected Organization</button>\n <button id=\"CancelOrganizationBtn\" type=\"button\" class=\"btn btn-primary\"\n (click)=\"bsModalRef.hide()\" aria-label=\"Cancel\">Cancel</button>\n </div>\n </div>\n</div>" }]
|
|
4337
4363
|
}], ctorParameters: () => [{ type: i1$2.FormBuilder }, { type: i2$1.BsModalRef }, { type: OepaFormsService }, { type: EntityService }], propDecorators: { onOrganizationCreated: [{
|
|
4338
4364
|
type: Output
|
|
4339
4365
|
}] } });
|
|
@@ -4619,11 +4645,11 @@ class OrganizationSearchModalComponent {
|
|
|
4619
4645
|
return this.modalFormGroup.controls[name];
|
|
4620
4646
|
}
|
|
4621
4647
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OrganizationSearchModalComponent, deps: [{ token: i1$2.FormBuilder }, { token: i2$1.BsModalRef }, { token: i2$1.BsModalService }, { token: OepaFormsService }, { token: EntityService }], target: i0.ɵɵFactoryTarget.Component });
|
|
4622
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: OrganizationSearchModalComponent, selector: "oepa-organization-search-modal", outputs: { onOrganizationSelected: "onOrganizationSelected" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Advanced Organization Search</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <accordion>\n <accordion-group panelClass=\"panel-info\" #searchGroup [isOpen]=\"openSearchCriteria\">\n <div accordion-heading>\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <i class=\"float-xs-right bi\" id=\"organizationSearchCriteria\" name=\"organizationSearchCriteria\" \n [ngClass]=\"{'bi-chevron-down': searchGroup?.isOpen, 'bi-chevron-right': !searchGroup?.isOpen}\"></i>\n <b>Organization Search Criteria</b>\n </div>\n </div>\n </div>\n <div *ngIf=\"initializing\">\n <span class=\"spinner-border text-primary\" role=\"status\"></span>\n Initializing...\n </div>\n <form *ngIf=\"!initializing\" [formGroup]=\"modalFormGroup\"> \n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\"> \n <label>Program</label>\n <select id=\"programSelect\" formControlName=\"programID\" class=\"form-select\">\n <option *ngFor=\"let t of programs\" [ngValue]=\"t.id\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label>Organization Type</label>\n <select id=\"subTypeSelect\" formControlName=\"subType\" class=\"form-select\">\n <option *ngFor=\"let t of organizationTypes\" [ngValue]=\"t\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label>Organization ID</label>\n <input type=\"search\" mask=\"999999999\" class=\"form-control\" id=\"organizationIDInput\" formControlName=\"id\">\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label>Organization Name</label>\n <input type=\"search\" class=\"form-control\" id=\"organizationNameInput\" formControlName=\"name\" maxlength=\"40\">\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label>Secondary ID</label>\n <input type=\"search\" class=\"form-control\" id=\"secondaryIDInput\" formControlName=\"secondaryID\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Address Type</label>\n <select id=\"addressTypeSelect\" formControlName=\"addressType\" class=\"form-select\">\n <option *ngFor=\"let t of addressTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n </div>\n </div>\n </div>\n <oepa-address [group]=\"getModalFormGroup('address')\" [isSearch]=\"true\"\n addressOneLabel=\"Address\" [hideLine2]=\"true\"></oepa-address>\n <div class=\"row\">\n <div class=\"col-md-4\">\n <div class=\"form-group\">\n <label>Phone Number Type</label>\n <select id=\"phoneNumberTypeSelect\" formControlName=\"phoneNumberType\" class=\"form-select\">\n <option *ngFor=\"let t of phoneNumberTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-2\">\n <div class=\"form-group\">\n <label>Area Code</label>\n <input type=\"search\" mask=\"999\" class=\"form-control\" id=\"areaCodeInput\" formControlName=\"areaCode\">\n </div>\n </div>\n <div class=\"col-md-4\">\n <div class=\"form-group\">\n <label>Phone Number</label>\n <input type=\"search\" mask=\"999-9999\" class=\"form-control\" id=\"phoneNumberInput\" formControlName=\"phoneNumber\">\n </div>\n </div>\n <div class=\"col-md-2\">\n <div class=\"form-group\">\n <label>Extension</label>\n <input type=\"search\" mask=\"9999\" class=\"form-control\" id=\"extensionInput\" formControlName=\"extension\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"!inProgressMsg\" type=\"submit\" class=\"btn btn-primary mr-2\" id=\"submitSearchBtn\" (click)=\"submitSearch()\">Search</button>\n <button id=\"resetSearchBtn\" type=\"button\" class=\"btn btn-primary\" (click)=\"resetSearch()\">Reset</button>\n </div>\n </div>\n </form>\n </accordion-group>\n </accordion>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Organization List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"organizationSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div *ngIf=\"inProgressMsg\">\n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SaveOrganizationBtn\"\n [disabled]=\"!selectedOrganization || inProgressMsg\"\n (click)=\"save()\">Save</button>\n\t\t\t<button *ngIf=\"allowCreateNew\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"CreateOrganizationButton\"\n (click)=\"createNewOrganization()\">Create New Organization</button>\n <button id=\"CancelPaymentBtn\" type=\"button\" class=\"btn btn-primary\"\n (click)=\"bsModalRef.hide()\">Cancel</button>\n </div>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.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: i1$2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6.AccordionComponent, selector: "accordion", inputs: ["isAnimated", "closeOthers"] }, { kind: "component", type: i6.AccordionPanelComponent, selector: "accordion-group, accordion-panel", inputs: ["heading", "panelClass", "isDisabled", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i7.NgxMaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "leadZero", "triggerOnMaskChange", "apm", "inputTransformFn", "outputTransformFn", "keepCharacterPositions"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }, { kind: "component", type: AddressComponent, selector: "oepa-address", inputs: ["group", "showValidation", "addressOneLabel", "addressTwoLabel", "cityLabel", "stateLabel", "zipCodeLabel", "disableState", "isSearch", "hideLine2", "line1MaxLength", "line2MaxLength", "cityMaxLength", "foreignStateLabel", "foreignZipLabel", "countryLabel", "sameAsGroup", "sameAsLabel", "sameAsChecked"] }, { kind: "component", type: TableComponent, selector: "oepa-table", inputs: ["tableId", "config", "complexHeader", "header", "customBtnLabel", "customBtnVisible", "customBtnEnabled", "data", "totalRow"], outputs: ["cellClicked", "actionClicked", "rowSelected", "customBtnClicked"] }] });
|
|
4648
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: OrganizationSearchModalComponent, selector: "oepa-organization-search-modal", outputs: { onOrganizationSelected: "onOrganizationSelected" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Advanced Organization Search</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <accordion>\n <accordion-group panelClass=\"panel-info\" #searchGroup [isOpen]=\"openSearchCriteria\">\n <div accordion-heading>\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <i class=\"float-xs-right bi\" id=\"organizationSearchCriteria\" name=\"organizationSearchCriteria\" \n [ngClass]=\"{'bi-chevron-down': searchGroup?.isOpen, 'bi-chevron-right': !searchGroup?.isOpen}\"></i>\n <b>Organization Search Criteria</b>\n </div>\n </div>\n </div>\n <div *ngIf=\"initializing\">\n <span class=\"spinner-border text-primary\" role=\"status\"></span>\n Initializing...\n </div>\n <form *ngIf=\"!initializing\" [formGroup]=\"modalFormGroup\"> \n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\"> \n <label for=\"programSelect\">Program</label>\n <select id=\"programSelect\" formControlName=\"programID\" class=\"form-select\">\n <option *ngFor=\"let t of programs\" [ngValue]=\"t.id\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label for=\"subTypeSelect\">Organization Type</label>\n <select id=\"subTypeSelect\" formControlName=\"subType\" class=\"form-select\">\n <option *ngFor=\"let t of organizationTypes\" [ngValue]=\"t\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label for=\"organizationIDInput\">Organization ID</label>\n <input type=\"search\" mask=\"999999999\" class=\"form-control\" id=\"organizationIDInput\" formControlName=\"id\">\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label for=\"organizationNameInput\">Organization Name</label>\n <input type=\"search\" class=\"form-control\" id=\"organizationNameInput\" formControlName=\"name\" maxlength=\"40\">\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label for=\"secondaryIDInput\">Secondary ID</label>\n <input type=\"search\" class=\"form-control\" id=\"secondaryIDInput\" formControlName=\"secondaryID\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"addressTypeSelect\">Address Type</label>\n <select id=\"addressTypeSelect\" formControlName=\"addressType\" class=\"form-select\">\n <option *ngFor=\"let t of addressTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n </div>\n </div>\n </div>\n <oepa-address [group]=\"getModalFormGroup('address')\" [isSearch]=\"true\"\n addressOneLabel=\"Address\" [hideLine2]=\"true\"></oepa-address>\n <div class=\"row\">\n <div class=\"col-md-4\">\n <div class=\"form-group\">\n <label for=\"phoneNumberTypeSelect\">Phone Number Type</label>\n <select id=\"phoneNumberTypeSelect\" formControlName=\"phoneNumberType\" class=\"form-select\">\n <option *ngFor=\"let t of phoneNumberTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-2\">\n <div class=\"form-group\">\n <label for=\"areaCodeInput\">Area Code</label>\n <input type=\"search\" mask=\"999\" class=\"form-control\" id=\"areaCodeInput\" formControlName=\"areaCode\">\n </div>\n </div>\n <div class=\"col-md-4\">\n <div class=\"form-group\">\n <label for=\"phoneNumberInput\">Phone Number</label>\n <input type=\"search\" mask=\"999-9999\" class=\"form-control\" id=\"phoneNumberInput\" formControlName=\"phoneNumber\">\n </div>\n </div>\n <div class=\"col-md-2\">\n <div class=\"form-group\">\n <label for=\"extensionInput\">Extension</label>\n <input type=\"search\" mask=\"9999\" class=\"form-control\" id=\"extensionInput\" formControlName=\"extension\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"!inProgressMsg\" type=\"submit\" class=\"btn btn-primary mr-2\" id=\"submitSearchBtn\" (click)=\"submitSearch()\" aria-label=\"Search\">Search</button>\n <button id=\"resetSearchBtn\" type=\"button\" class=\"btn btn-primary\" (click)=\"resetSearch()\" aria-label=\"Reset\">Reset</button>\n </div>\n </div>\n </form>\n </accordion-group>\n </accordion>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Organization List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"organizationSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div *ngIf=\"inProgressMsg\">\n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SaveOrganizationBtn\"\n [disabled]=\"!selectedOrganization || inProgressMsg\"\n (click)=\"save()\" aria-label=\"Save\">Save</button>\n\t\t\t<button *ngIf=\"allowCreateNew\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"CreateOrganizationButton\"\n (click)=\"createNewOrganization()\" aria-label=\"Create New Organization\">Create New Organization</button>\n <button id=\"CancelPaymentBtn\" type=\"button\" class=\"btn btn-primary\"\n (click)=\"bsModalRef.hide()\" aria-label=\"Cancel\">Cancel</button>\n </div>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.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: i1$2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6.AccordionComponent, selector: "accordion", inputs: ["isAnimated", "closeOthers"] }, { kind: "component", type: i6.AccordionPanelComponent, selector: "accordion-group, accordion-panel", inputs: ["heading", "panelClass", "isDisabled", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i7.NgxMaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "leadZero", "triggerOnMaskChange", "apm", "inputTransformFn", "outputTransformFn", "keepCharacterPositions"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }, { kind: "component", type: AddressComponent, selector: "oepa-address", inputs: ["group", "showValidation", "addressOneLabel", "addressTwoLabel", "cityLabel", "stateLabel", "zipCodeLabel", "disableState", "isSearch", "hideLine2", "line1MaxLength", "line2MaxLength", "cityMaxLength", "foreignStateLabel", "foreignZipLabel", "countryLabel", "sameAsGroup", "sameAsLabel", "sameAsChecked"] }, { kind: "component", type: TableComponent, selector: "oepa-table", inputs: ["tableId", "config", "complexHeader", "header", "customBtnLabel", "customBtnVisible", "customBtnEnabled", "data", "totalRow"], outputs: ["cellClicked", "actionClicked", "rowSelected", "customBtnClicked"] }] });
|
|
4623
4649
|
}
|
|
4624
4650
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OrganizationSearchModalComponent, decorators: [{
|
|
4625
4651
|
type: Component,
|
|
4626
|
-
args: [{ selector: 'oepa-organization-search-modal', template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Advanced Organization Search</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <accordion>\n <accordion-group panelClass=\"panel-info\" #searchGroup [isOpen]=\"openSearchCriteria\">\n <div accordion-heading>\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <i class=\"float-xs-right bi\" id=\"organizationSearchCriteria\" name=\"organizationSearchCriteria\" \n [ngClass]=\"{'bi-chevron-down': searchGroup?.isOpen, 'bi-chevron-right': !searchGroup?.isOpen}\"></i>\n <b>Organization Search Criteria</b>\n </div>\n </div>\n </div>\n <div *ngIf=\"initializing\">\n <span class=\"spinner-border text-primary\" role=\"status\"></span>\n Initializing...\n </div>\n <form *ngIf=\"!initializing\" [formGroup]=\"modalFormGroup\"> \n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\"> \n <label>Program</label>\n <select id=\"programSelect\" formControlName=\"programID\" class=\"form-select\">\n <option *ngFor=\"let t of programs\" [ngValue]=\"t.id\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label>Organization Type</label>\n <select id=\"subTypeSelect\" formControlName=\"subType\" class=\"form-select\">\n <option *ngFor=\"let t of organizationTypes\" [ngValue]=\"t\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label>Organization ID</label>\n <input type=\"search\" mask=\"999999999\" class=\"form-control\" id=\"organizationIDInput\" formControlName=\"id\">\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label>Organization Name</label>\n <input type=\"search\" class=\"form-control\" id=\"organizationNameInput\" formControlName=\"name\" maxlength=\"40\">\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label>Secondary ID</label>\n <input type=\"search\" class=\"form-control\" id=\"secondaryIDInput\" formControlName=\"secondaryID\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Address Type</label>\n <select id=\"addressTypeSelect\" formControlName=\"addressType\" class=\"form-select\">\n <option *ngFor=\"let t of addressTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n </div>\n </div>\n </div>\n <oepa-address [group]=\"getModalFormGroup('address')\" [isSearch]=\"true\"\n addressOneLabel=\"Address\" [hideLine2]=\"true\"></oepa-address>\n <div class=\"row\">\n <div class=\"col-md-4\">\n <div class=\"form-group\">\n <label>Phone Number Type</label>\n <select id=\"phoneNumberTypeSelect\" formControlName=\"phoneNumberType\" class=\"form-select\">\n <option *ngFor=\"let t of phoneNumberTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-2\">\n <div class=\"form-group\">\n <label>Area Code</label>\n <input type=\"search\" mask=\"999\" class=\"form-control\" id=\"areaCodeInput\" formControlName=\"areaCode\">\n </div>\n </div>\n <div class=\"col-md-4\">\n <div class=\"form-group\">\n <label>Phone Number</label>\n <input type=\"search\" mask=\"999-9999\" class=\"form-control\" id=\"phoneNumberInput\" formControlName=\"phoneNumber\">\n </div>\n </div>\n <div class=\"col-md-2\">\n <div class=\"form-group\">\n <label>Extension</label>\n <input type=\"search\" mask=\"9999\" class=\"form-control\" id=\"extensionInput\" formControlName=\"extension\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"!inProgressMsg\" type=\"submit\" class=\"btn btn-primary mr-2\" id=\"submitSearchBtn\" (click)=\"submitSearch()\">Search</button>\n <button id=\"resetSearchBtn\" type=\"button\" class=\"btn btn-primary\" (click)=\"resetSearch()\">Reset</button>\n </div>\n </div>\n </form>\n </accordion-group>\n </accordion>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Organization List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"organizationSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div *ngIf=\"inProgressMsg\">\n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SaveOrganizationBtn\"\n [disabled]=\"!selectedOrganization || inProgressMsg\"\n (click)=\"save()\">Save</button>\n\t\t\t<button *ngIf=\"allowCreateNew\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"CreateOrganizationButton\"\n (click)=\"createNewOrganization()\">Create New Organization</button>\n <button id=\"CancelPaymentBtn\" type=\"button\" class=\"btn btn-primary\"\n (click)=\"bsModalRef.hide()\">Cancel</button>\n </div>\n </div>\n</div>" }]
|
|
4652
|
+
args: [{ selector: 'oepa-organization-search-modal', template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Advanced Organization Search</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <accordion>\n <accordion-group panelClass=\"panel-info\" #searchGroup [isOpen]=\"openSearchCriteria\">\n <div accordion-heading>\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <i class=\"float-xs-right bi\" id=\"organizationSearchCriteria\" name=\"organizationSearchCriteria\" \n [ngClass]=\"{'bi-chevron-down': searchGroup?.isOpen, 'bi-chevron-right': !searchGroup?.isOpen}\"></i>\n <b>Organization Search Criteria</b>\n </div>\n </div>\n </div>\n <div *ngIf=\"initializing\">\n <span class=\"spinner-border text-primary\" role=\"status\"></span>\n Initializing...\n </div>\n <form *ngIf=\"!initializing\" [formGroup]=\"modalFormGroup\"> \n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\"> \n <label for=\"programSelect\">Program</label>\n <select id=\"programSelect\" formControlName=\"programID\" class=\"form-select\">\n <option *ngFor=\"let t of programs\" [ngValue]=\"t.id\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label for=\"subTypeSelect\">Organization Type</label>\n <select id=\"subTypeSelect\" formControlName=\"subType\" class=\"form-select\">\n <option *ngFor=\"let t of organizationTypes\" [ngValue]=\"t\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label for=\"organizationIDInput\">Organization ID</label>\n <input type=\"search\" mask=\"999999999\" class=\"form-control\" id=\"organizationIDInput\" formControlName=\"id\">\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label for=\"organizationNameInput\">Organization Name</label>\n <input type=\"search\" class=\"form-control\" id=\"organizationNameInput\" formControlName=\"name\" maxlength=\"40\">\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label for=\"secondaryIDInput\">Secondary ID</label>\n <input type=\"search\" class=\"form-control\" id=\"secondaryIDInput\" formControlName=\"secondaryID\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"addressTypeSelect\">Address Type</label>\n <select id=\"addressTypeSelect\" formControlName=\"addressType\" class=\"form-select\">\n <option *ngFor=\"let t of addressTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n </div>\n </div>\n </div>\n <oepa-address [group]=\"getModalFormGroup('address')\" [isSearch]=\"true\"\n addressOneLabel=\"Address\" [hideLine2]=\"true\"></oepa-address>\n <div class=\"row\">\n <div class=\"col-md-4\">\n <div class=\"form-group\">\n <label for=\"phoneNumberTypeSelect\">Phone Number Type</label>\n <select id=\"phoneNumberTypeSelect\" formControlName=\"phoneNumberType\" class=\"form-select\">\n <option *ngFor=\"let t of phoneNumberTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-2\">\n <div class=\"form-group\">\n <label for=\"areaCodeInput\">Area Code</label>\n <input type=\"search\" mask=\"999\" class=\"form-control\" id=\"areaCodeInput\" formControlName=\"areaCode\">\n </div>\n </div>\n <div class=\"col-md-4\">\n <div class=\"form-group\">\n <label for=\"phoneNumberInput\">Phone Number</label>\n <input type=\"search\" mask=\"999-9999\" class=\"form-control\" id=\"phoneNumberInput\" formControlName=\"phoneNumber\">\n </div>\n </div>\n <div class=\"col-md-2\">\n <div class=\"form-group\">\n <label for=\"extensionInput\">Extension</label>\n <input type=\"search\" mask=\"9999\" class=\"form-control\" id=\"extensionInput\" formControlName=\"extension\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"!inProgressMsg\" type=\"submit\" class=\"btn btn-primary mr-2\" id=\"submitSearchBtn\" (click)=\"submitSearch()\" aria-label=\"Search\">Search</button>\n <button id=\"resetSearchBtn\" type=\"button\" class=\"btn btn-primary\" (click)=\"resetSearch()\" aria-label=\"Reset\">Reset</button>\n </div>\n </div>\n </form>\n </accordion-group>\n </accordion>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Organization List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"organizationSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div *ngIf=\"inProgressMsg\">\n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SaveOrganizationBtn\"\n [disabled]=\"!selectedOrganization || inProgressMsg\"\n (click)=\"save()\" aria-label=\"Save\">Save</button>\n\t\t\t<button *ngIf=\"allowCreateNew\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"CreateOrganizationButton\"\n (click)=\"createNewOrganization()\" aria-label=\"Create New Organization\">Create New Organization</button>\n <button id=\"CancelPaymentBtn\" type=\"button\" class=\"btn btn-primary\"\n (click)=\"bsModalRef.hide()\" aria-label=\"Cancel\">Cancel</button>\n </div>\n </div>\n</div>" }]
|
|
4627
4653
|
}], ctorParameters: () => [{ type: i1$2.FormBuilder }, { type: i2$1.BsModalRef }, { type: i2$1.BsModalService }, { type: OepaFormsService }, { type: EntityService }], propDecorators: { onOrganizationSelected: [{
|
|
4628
4654
|
type: Output
|
|
4629
4655
|
}] } });
|
|
@@ -5038,11 +5064,11 @@ class PersonCreateModalComponent {
|
|
|
5038
5064
|
return this.modalFormGroup.controls[name].hasError(field);
|
|
5039
5065
|
}
|
|
5040
5066
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PersonCreateModalComponent, deps: [{ token: i1$2.FormBuilder }, { token: i2$1.BsModalRef }, { token: OepaFormsService }, { token: EntityService }], target: i0.ɵɵFactoryTarget.Component });
|
|
5041
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: PersonCreateModalComponent, selector: "oepa-person-create-modal", outputs: { onPersonCreated: "onPersonCreated" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Create Person</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <div *ngIf=\"!modalFormGroup\">\n <div class=\"text-center\">Initializing...</div>\n <div class=\"text-center\"><span class=\"spinner-border text-primary\" role=\"status\"></span></div>\n </div>\n <form *ngIf=\"modalFormGroup\" [formGroup]=\"modalFormGroup\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Person Type</label>\n <select id=\"personTypeSelect\" formControlName=\"personType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('personType')\">\n <option *ngFor=\"let t of personSubTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('personType','required')\">Person Type is required</small>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Program</label>\n <select id=\"programSelect\" formControlName=\"program\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('program')\">\n <option *ngFor=\"let t of programs\" [ngValue]=\"t\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('program','required')\">Program is required</small>\n </div>\n </div>\n </div>\n <oepa-contact [group]=\"getModalFormGroup('contact')\"\n [showMiddleName]=\"true\" [noFax]=\"true\" [noEmail]=\"true\" [showValidation]=\"true\"></oepa-contact>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Phone Number Type</label>\n <select id=\"phoneNumberTypeSelect\" formControlName=\"phoneNumberType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('phoneNumberType')\">\n <option *ngFor=\"let t of phoneNumberTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('phoneNumberType','required')\">Phone Number Type is required</small>\n </div>\n </div>\n </div>\n <oepa-address [group]=\"getModalFormGroup('address')\" [showValidation]=\"true\"></oepa-address>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Address Type</label>\n <select id=\"addressTypeSelect\" formControlName=\"addressType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('addressType')\">\n <option *ngFor=\"let t of addressTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('addressType','required')\">Address Type is required</small>\n </div>\n </div>\n </div>\n </form>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Matching Person List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"personSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"inProgressMsg\"> \n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div *ngIf=\"infoMessage && !inProgressMsg\">\n <div class=\"alert alert-info\">\n {{infoMessage}}\n </div>\n </div>\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"(!tableData || tableData.length === 0) && !inProgressMsg\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SavePersonBtn\"\n [disabled]=\"!modalFormGroup || modalFormGroup.invalid\"\n (click)=\"savePersonAfterSearch()\">Save</button>\n <button *ngIf=\"tableData && tableData.length > 0 && !selectedPerson && !inProgressMsg\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SavePersonWithoutSearchBtn\"\n [disabled]=\"modalFormGroup
|
|
5067
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: PersonCreateModalComponent, selector: "oepa-person-create-modal", outputs: { onPersonCreated: "onPersonCreated" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Create Person</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <div *ngIf=\"!modalFormGroup\">\n <div class=\"text-center\">Initializing...</div>\n <div class=\"text-center\"><span class=\"spinner-border text-primary\" role=\"status\"></span></div>\n </div>\n <form *ngIf=\"modalFormGroup\" [formGroup]=\"modalFormGroup\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"personTypeSelect\">Person Type</label>\n <select id=\"personTypeSelect\" formControlName=\"personType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('personType')\">\n <option *ngFor=\"let t of personSubTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('personType','required')\">Person Type is required</small>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"programSelect\">Program</label>\n <select id=\"programSelect\" formControlName=\"program\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('program')\">\n <option *ngFor=\"let t of programs\" [ngValue]=\"t\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('program','required')\">Program is required</small>\n </div>\n </div>\n </div>\n <oepa-contact [group]=\"getModalFormGroup('contact')\"\n [showMiddleName]=\"true\" [noFax]=\"true\" [noEmail]=\"true\" [showValidation]=\"true\"></oepa-contact>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"phoneNumberTypeSelect\">Phone Number Type</label>\n <select id=\"phoneNumberTypeSelect\" formControlName=\"phoneNumberType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('phoneNumberType')\">\n <option *ngFor=\"let t of phoneNumberTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('phoneNumberType','required')\">Phone Number Type is required</small>\n </div>\n </div>\n </div>\n <oepa-address [group]=\"getModalFormGroup('address')\" [showValidation]=\"true\"></oepa-address>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"addressTypeSelect\">Address Type</label>\n <select id=\"addressTypeSelect\" formControlName=\"addressType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('addressType')\">\n <option *ngFor=\"let t of addressTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('addressType','required')\">Address Type is required</small>\n </div>\n </div>\n </div>\n </form>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Matching Person List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"personSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"inProgressMsg\"> \n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div *ngIf=\"infoMessage && !inProgressMsg\">\n <div class=\"alert alert-info\">\n {{infoMessage}}\n </div>\n </div>\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"(!tableData || tableData.length === 0) && !inProgressMsg\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SavePersonBtn\"\n [disabled]=\"!modalFormGroup || modalFormGroup.invalid\"\n (click)=\"savePersonAfterSearch()\" aria-label=\"Save new person\">Save</button>\n <button *ngIf=\"tableData && tableData.length > 0 && !selectedPerson && !inProgressMsg\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SavePersonWithoutSearchBtn\"\n [disabled]=\"modalFormGroup.invalid\"\n (click)=\"savePerson()\" aria-label=\"No match, save new person\">No Match, Save New Person</button>\n <button *ngIf=\"tableData && tableData.length > 0 && selectedPerson && !inProgressMsg\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SaveSelectedPersonBtn\"\n [disabled]=\"modalFormGroup.invalid\"\n (click)=\"saveSelectedPerson()\" aria-label=\"Use selected person\">Use Selected Person</button>\n <button id=\"CancelPersonBtn\" type=\"button\" class=\"btn btn-primary\"\n (click)=\"bsModalRef.hide()\" aria-label=\"Cancel\">Cancel</button>\n </div>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: AddressComponent, selector: "oepa-address", inputs: ["group", "showValidation", "addressOneLabel", "addressTwoLabel", "cityLabel", "stateLabel", "zipCodeLabel", "disableState", "isSearch", "hideLine2", "line1MaxLength", "line2MaxLength", "cityMaxLength", "foreignStateLabel", "foreignZipLabel", "countryLabel", "sameAsGroup", "sameAsLabel", "sameAsChecked"] }, { kind: "component", type: ContactComponent, selector: "oepa-contact", inputs: ["group", "showValidation", "firstNameLabel", "lastNameLabel", "showMiddleName", "middleNameLabel", "emailLabel", "phoneLabel", "faxLabel", "noFax", "showTitle", "noPhone", "noEmail", "isSearch", "firstNameMaxLength", "middleNameMaxLength", "lastNameMaxLength", "titleMaxLength", "emailMaxLength"] }, { kind: "component", type: TableComponent, selector: "oepa-table", inputs: ["tableId", "config", "complexHeader", "header", "customBtnLabel", "customBtnVisible", "customBtnEnabled", "data", "totalRow"], outputs: ["cellClicked", "actionClicked", "rowSelected", "customBtnClicked"] }] });
|
|
5042
5068
|
}
|
|
5043
5069
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PersonCreateModalComponent, decorators: [{
|
|
5044
5070
|
type: Component,
|
|
5045
|
-
args: [{ selector: 'oepa-person-create-modal', template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Create Person</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <div *ngIf=\"!modalFormGroup\">\n <div class=\"text-center\">Initializing...</div>\n <div class=\"text-center\"><span class=\"spinner-border text-primary\" role=\"status\"></span></div>\n </div>\n <form *ngIf=\"modalFormGroup\" [formGroup]=\"modalFormGroup\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Person Type</label>\n <select id=\"personTypeSelect\" formControlName=\"personType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('personType')\">\n <option *ngFor=\"let t of personSubTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('personType','required')\">Person Type is required</small>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Program</label>\n <select id=\"programSelect\" formControlName=\"program\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('program')\">\n <option *ngFor=\"let t of programs\" [ngValue]=\"t\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('program','required')\">Program is required</small>\n </div>\n </div>\n </div>\n <oepa-contact [group]=\"getModalFormGroup('contact')\"\n [showMiddleName]=\"true\" [noFax]=\"true\" [noEmail]=\"true\" [showValidation]=\"true\"></oepa-contact>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Phone Number Type</label>\n <select id=\"phoneNumberTypeSelect\" formControlName=\"phoneNumberType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('phoneNumberType')\">\n <option *ngFor=\"let t of phoneNumberTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('phoneNumberType','required')\">Phone Number Type is required</small>\n </div>\n </div>\n </div>\n <oepa-address [group]=\"getModalFormGroup('address')\" [showValidation]=\"true\"></oepa-address>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Address Type</label>\n <select id=\"addressTypeSelect\" formControlName=\"addressType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('addressType')\">\n <option *ngFor=\"let t of addressTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('addressType','required')\">Address Type is required</small>\n </div>\n </div>\n </div>\n </form>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Matching Person List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"personSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"inProgressMsg\"> \n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div *ngIf=\"infoMessage && !inProgressMsg\">\n <div class=\"alert alert-info\">\n {{infoMessage}}\n </div>\n </div>\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"(!tableData || tableData.length === 0) && !inProgressMsg\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SavePersonBtn\"\n [disabled]=\"!modalFormGroup || modalFormGroup.invalid\"\n (click)=\"savePersonAfterSearch()\">Save</button>\n <button *ngIf=\"tableData && tableData.length > 0 && !selectedPerson && !inProgressMsg\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SavePersonWithoutSearchBtn\"\n [disabled]=\"modalFormGroup
|
|
5071
|
+
args: [{ selector: 'oepa-person-create-modal', template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Create Person</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <div *ngIf=\"!modalFormGroup\">\n <div class=\"text-center\">Initializing...</div>\n <div class=\"text-center\"><span class=\"spinner-border text-primary\" role=\"status\"></span></div>\n </div>\n <form *ngIf=\"modalFormGroup\" [formGroup]=\"modalFormGroup\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"personTypeSelect\">Person Type</label>\n <select id=\"personTypeSelect\" formControlName=\"personType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('personType')\">\n <option *ngFor=\"let t of personSubTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('personType','required')\">Person Type is required</small>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"programSelect\">Program</label>\n <select id=\"programSelect\" formControlName=\"program\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('program')\">\n <option *ngFor=\"let t of programs\" [ngValue]=\"t\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('program','required')\">Program is required</small>\n </div>\n </div>\n </div>\n <oepa-contact [group]=\"getModalFormGroup('contact')\"\n [showMiddleName]=\"true\" [noFax]=\"true\" [noEmail]=\"true\" [showValidation]=\"true\"></oepa-contact>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"phoneNumberTypeSelect\">Phone Number Type</label>\n <select id=\"phoneNumberTypeSelect\" formControlName=\"phoneNumberType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('phoneNumberType')\">\n <option *ngFor=\"let t of phoneNumberTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('phoneNumberType','required')\">Phone Number Type is required</small>\n </div>\n </div>\n </div>\n <oepa-address [group]=\"getModalFormGroup('address')\" [showValidation]=\"true\"></oepa-address>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"addressTypeSelect\">Address Type</label>\n <select id=\"addressTypeSelect\" formControlName=\"addressType\" class=\"form-select\"\n [ngClass]=\"getModalFormGroupInvalidClass('addressType')\">\n <option *ngFor=\"let t of addressTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n <small class=\"invalid-feedback\" *ngIf=\"getModalFormGroupHasError('addressType','required')\">Address Type is required</small>\n </div>\n </div>\n </div>\n </form>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Matching Person List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"personSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"inProgressMsg\"> \n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div *ngIf=\"infoMessage && !inProgressMsg\">\n <div class=\"alert alert-info\">\n {{infoMessage}}\n </div>\n </div>\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"(!tableData || tableData.length === 0) && !inProgressMsg\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SavePersonBtn\"\n [disabled]=\"!modalFormGroup || modalFormGroup.invalid\"\n (click)=\"savePersonAfterSearch()\" aria-label=\"Save new person\">Save</button>\n <button *ngIf=\"tableData && tableData.length > 0 && !selectedPerson && !inProgressMsg\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SavePersonWithoutSearchBtn\"\n [disabled]=\"modalFormGroup.invalid\"\n (click)=\"savePerson()\" aria-label=\"No match, save new person\">No Match, Save New Person</button>\n <button *ngIf=\"tableData && tableData.length > 0 && selectedPerson && !inProgressMsg\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SaveSelectedPersonBtn\"\n [disabled]=\"modalFormGroup.invalid\"\n (click)=\"saveSelectedPerson()\" aria-label=\"Use selected person\">Use Selected Person</button>\n <button id=\"CancelPersonBtn\" type=\"button\" class=\"btn btn-primary\"\n (click)=\"bsModalRef.hide()\" aria-label=\"Cancel\">Cancel</button>\n </div>\n </div>\n</div>" }]
|
|
5046
5072
|
}], ctorParameters: () => [{ type: i1$2.FormBuilder }, { type: i2$1.BsModalRef }, { type: OepaFormsService }, { type: EntityService }], propDecorators: { onPersonCreated: [{
|
|
5047
5073
|
type: Output
|
|
5048
5074
|
}] } });
|
|
@@ -5334,11 +5360,11 @@ class PersonSearchModalComponent {
|
|
|
5334
5360
|
return this.modalFormGroup.controls[name];
|
|
5335
5361
|
}
|
|
5336
5362
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PersonSearchModalComponent, deps: [{ token: i1$2.FormBuilder }, { token: i2$1.BsModalRef }, { token: i2$1.BsModalService }, { token: OepaFormsService }, { token: EntityService }], target: i0.ɵɵFactoryTarget.Component });
|
|
5337
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: PersonSearchModalComponent, selector: "oepa-person-search-modal", outputs: { onPersonSelected: "onPersonSelected" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Advanced Person Search</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <accordion>\n <accordion-group panelClass=\"panel-info\" #searchGroup [isOpen]=\"openSearchCriteria\">\n <div accordion-heading>\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <i class=\"float-xs-right bi\" id=\"personSearchCriteria\" name=\"personSearchCriteria\" \n [ngClass]=\"{'bi-chevron-down': searchGroup?.isOpen, 'bi-chevron-right': !searchGroup?.isOpen}\"></i>\n <b>Person Search Criteria</b>\n </div>\n </div>\n </div>\n <div *ngIf=\"initializing\">\n <span class=\"spinner-border text-primary\" role=\"status\"></span>\n Initializing...\n </div>\n <form *ngIf=\"!initializing\" [formGroup]=\"modalFormGroup\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\"> \n <label>Program</label>\n <select id=\"programSelect\" formControlName=\"programID\" class=\"form-select\">\n <option *ngFor=\"let t of programs\" [ngValue]=\"t.id\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label>Person Type</label>\n <select id=\"subTypeSelect\" formControlName=\"personType\" class=\"form-select\">\n <option *ngFor=\"let t of personTypes\" [ngValue]=\"t\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label>Person ID</label>\n <input type=\"search\" mask=\"999999999\" class=\"form-control\" id=\"personIDInput\" formControlName=\"id\">\n </div>\n </div>\n </div>\n <oepa-contact [group]=\"getModalFormGroup('contact')\" [isSearch]=\"true\"\n [showMiddleName]=\"true\" [noPhone]=\"true\" [noFax]=\"true\" [noEmail]=\"true\"></oepa-contact>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Secondary ID</label>\n <input type=\"search\" class=\"form-control\" id=\"secondaryIDInput\" formControlName=\"secondaryID\">\n </div>\n </div>\n </div>\n \n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Address Type</label>\n <select id=\"addressTypeSelect\" formControlName=\"addressType\" class=\"form-select\">\n <option *ngFor=\"let t of addressTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n </div>\n </div>\n </div>\n <oepa-address [group]=\"getModalFormGroup('address')\" [isSearch]=\"true\"\n addressOneLabel=\"Address\" [hideLine2]=\"true\"></oepa-address>\n <div class=\"row\">\n <div class=\"col-md-4\">\n <div class=\"form-group\">\n <label>Phone Number Type</label>\n <select id=\"phoneNumberTypeSelect\" formControlName=\"phoneNumberType\" class=\"form-select\">\n <option *ngFor=\"let t of phoneNumberTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-2\">\n <div class=\"form-group\">\n <label>Area Code</label>\n <input type=\"search\" mask=\"999\" class=\"form-control\" id=\"areaCodeInput\" formControlName=\"areaCode\">\n </div>\n </div>\n <div class=\"col-md-4\">\n <div class=\"form-group\">\n <label>Phone Number</label>\n <input type=\"search\" mask=\"999-9999\" class=\"form-control\" id=\"phoneNumberInput\" formControlName=\"phoneNumber\">\n </div>\n </div>\n <div class=\"col-md-2\">\n <div class=\"form-group\">\n <label>Extension</label>\n <input type=\"search\" mask=\"9999\" class=\"form-control\" id=\"extensionInput\" formControlName=\"extension\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"!inProgressMsg\" type=\"submit\" class=\"btn btn-primary mr-2\" id=\"submitSearchBtn\" (click)=\"submitSearch()\">Search</button>\n <button id=\"resetSearchBtn\" type=\"button\" class=\"btn btn-primary\" (click)=\"resetSearch()\">Reset</button>\n </div>\n </div>\n </form>\n </accordion-group>\n </accordion>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Person List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"personSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button *ngIf=\"tableData && tableData.length > 0\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SavePersonBtn\"\n [disabled]=\"!selectedPerson\"\n (click)=\"save()\">Select</button>\n <button *ngIf=\"allowCreateNew\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"CreatePersonButton\"\n (click)=\"createNewPerson()\">Create New Person</button>\n <button id=\"CancelPaymentBtn\" type=\"button\" class=\"btn btn-primary\"\n (click)=\"bsModalRef.hide()\">Cancel</button>\n </div>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.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: i1$2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6.AccordionComponent, selector: "accordion", inputs: ["isAnimated", "closeOthers"] }, { kind: "component", type: i6.AccordionPanelComponent, selector: "accordion-group, accordion-panel", inputs: ["heading", "panelClass", "isDisabled", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i7.NgxMaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "leadZero", "triggerOnMaskChange", "apm", "inputTransformFn", "outputTransformFn", "keepCharacterPositions"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }, { kind: "component", type: AddressComponent, selector: "oepa-address", inputs: ["group", "showValidation", "addressOneLabel", "addressTwoLabel", "cityLabel", "stateLabel", "zipCodeLabel", "disableState", "isSearch", "hideLine2", "line1MaxLength", "line2MaxLength", "cityMaxLength", "foreignStateLabel", "foreignZipLabel", "countryLabel", "sameAsGroup", "sameAsLabel", "sameAsChecked"] }, { kind: "component", type: ContactComponent, selector: "oepa-contact", inputs: ["group", "showValidation", "firstNameLabel", "lastNameLabel", "showMiddleName", "middleNameLabel", "emailLabel", "phoneLabel", "faxLabel", "noFax", "showTitle", "noPhone", "noEmail", "isSearch", "firstNameMaxLength", "middleNameMaxLength", "lastNameMaxLength", "titleMaxLength", "emailMaxLength"] }, { kind: "component", type: TableComponent, selector: "oepa-table", inputs: ["tableId", "config", "complexHeader", "header", "customBtnLabel", "customBtnVisible", "customBtnEnabled", "data", "totalRow"], outputs: ["cellClicked", "actionClicked", "rowSelected", "customBtnClicked"] }] });
|
|
5363
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: PersonSearchModalComponent, selector: "oepa-person-search-modal", outputs: { onPersonSelected: "onPersonSelected" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Advanced Person Search</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <accordion>\n <accordion-group panelClass=\"panel-info\" #searchGroup [isOpen]=\"openSearchCriteria\">\n <div accordion-heading>\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <i class=\"float-xs-right bi\" id=\"personSearchCriteria\" name=\"personSearchCriteria\" \n [ngClass]=\"{'bi-chevron-down': searchGroup?.isOpen, 'bi-chevron-right': !searchGroup?.isOpen}\"></i>\n <b>Person Search Criteria</b>\n </div>\n </div>\n </div>\n <div *ngIf=\"initializing\">\n <span class=\"spinner-border text-primary\" role=\"status\"></span>\n Initializing...\n </div>\n <form *ngIf=\"!initializing\" [formGroup]=\"modalFormGroup\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\"> \n <label for=\"programSelect\">Program</label>\n <select id=\"programSelect\" formControlName=\"programID\" class=\"form-select\">\n <option *ngFor=\"let t of programs\" [ngValue]=\"t.id\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label for=\"subTypeSelect\">Person Type</label>\n <select id=\"subTypeSelect\" formControlName=\"personType\" class=\"form-select\">\n <option *ngFor=\"let t of personTypes\" [ngValue]=\"t\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label for=\"personIDInput\">Person ID</label>\n <input type=\"search\" mask=\"999999999\" class=\"form-control\" id=\"personIDInput\" formControlName=\"id\">\n </div>\n </div>\n </div>\n <oepa-contact [group]=\"getModalFormGroup('contact')\" [isSearch]=\"true\"\n [showMiddleName]=\"true\" [noPhone]=\"true\" [noFax]=\"true\" [noEmail]=\"true\"></oepa-contact>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"secondaryIDInput\">Secondary ID</label>\n <input type=\"search\" class=\"form-control\" id=\"secondaryIDInput\" formControlName=\"secondaryID\">\n </div>\n </div>\n </div>\n \n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"addressTypeSelect\">Address Type</label>\n <select id=\"addressTypeSelect\" formControlName=\"addressType\" class=\"form-select\">\n <option *ngFor=\"let t of addressTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n </div>\n </div>\n </div>\n <oepa-address [group]=\"getModalFormGroup('address')\" [isSearch]=\"true\"\n addressOneLabel=\"Address\" [hideLine2]=\"true\"></oepa-address>\n <div class=\"row\">\n <div class=\"col-md-4\">\n <div class=\"form-group\">\n <label for=\"phoneNumberTypeSelect\">Phone Number Type</label>\n <select id=\"phoneNumberTypeSelect\" formControlName=\"phoneNumberType\" class=\"form-select\">\n <option *ngFor=\"let t of phoneNumberTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-2\">\n <div class=\"form-group\">\n <label for=\"areaCodeInput\">Area Code</label>\n <input type=\"search\" mask=\"999\" class=\"form-control\" id=\"areaCodeInput\" formControlName=\"areaCode\">\n </div>\n </div>\n <div class=\"col-md-4\">\n <div class=\"form-group\">\n <label for=\"phoneNumberInput\">Phone Number</label>\n <input type=\"search\" mask=\"999-9999\" class=\"form-control\" id=\"phoneNumberInput\" formControlName=\"phoneNumber\">\n </div>\n </div>\n <div class=\"col-md-2\">\n <div class=\"form-group\">\n <label for=\"extensionInput\">Extension</label>\n <input type=\"search\" mask=\"9999\" class=\"form-control\" id=\"extensionInput\" formControlName=\"extension\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"!inProgressMsg\" type=\"submit\" class=\"btn btn-primary mr-2\" id=\"submitSearchBtn\" (click)=\"submitSearch()\" aria-label=\"Search\">Search</button>\n <button id=\"resetSearchBtn\" type=\"button\" class=\"btn btn-primary\" (click)=\"resetSearch()\" aria-label=\"Reset\">Reset</button>\n </div>\n </div>\n </form>\n </accordion-group>\n </accordion>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Person List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"personSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button *ngIf=\"tableData && tableData.length > 0\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SavePersonBtn\" [disabled]=\"!selectedPerson\" (click)=\"save()\" aria-label=\"Select\">Select</button>\n <button *ngIf=\"allowCreateNew\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"CreatePersonButton\"\n (click)=\"createNewPerson()\" aria-label=\"Create New Person\">Create New Person</button>\n <button id=\"CancelPaymentBtn\" type=\"button\" class=\"btn btn-primary\"\n (click)=\"bsModalRef.hide()\" aria-label=\"Cancel\">Cancel</button>\n </div>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.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: i1$2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6.AccordionComponent, selector: "accordion", inputs: ["isAnimated", "closeOthers"] }, { kind: "component", type: i6.AccordionPanelComponent, selector: "accordion-group, accordion-panel", inputs: ["heading", "panelClass", "isDisabled", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i7.NgxMaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "leadZero", "triggerOnMaskChange", "apm", "inputTransformFn", "outputTransformFn", "keepCharacterPositions"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }, { kind: "component", type: AddressComponent, selector: "oepa-address", inputs: ["group", "showValidation", "addressOneLabel", "addressTwoLabel", "cityLabel", "stateLabel", "zipCodeLabel", "disableState", "isSearch", "hideLine2", "line1MaxLength", "line2MaxLength", "cityMaxLength", "foreignStateLabel", "foreignZipLabel", "countryLabel", "sameAsGroup", "sameAsLabel", "sameAsChecked"] }, { kind: "component", type: ContactComponent, selector: "oepa-contact", inputs: ["group", "showValidation", "firstNameLabel", "lastNameLabel", "showMiddleName", "middleNameLabel", "emailLabel", "phoneLabel", "faxLabel", "noFax", "showTitle", "noPhone", "noEmail", "isSearch", "firstNameMaxLength", "middleNameMaxLength", "lastNameMaxLength", "titleMaxLength", "emailMaxLength"] }, { kind: "component", type: TableComponent, selector: "oepa-table", inputs: ["tableId", "config", "complexHeader", "header", "customBtnLabel", "customBtnVisible", "customBtnEnabled", "data", "totalRow"], outputs: ["cellClicked", "actionClicked", "rowSelected", "customBtnClicked"] }] });
|
|
5338
5364
|
}
|
|
5339
5365
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PersonSearchModalComponent, decorators: [{
|
|
5340
5366
|
type: Component,
|
|
5341
|
-
args: [{ selector: 'oepa-person-search-modal', template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Advanced Person Search</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <accordion>\n <accordion-group panelClass=\"panel-info\" #searchGroup [isOpen]=\"openSearchCriteria\">\n <div accordion-heading>\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <i class=\"float-xs-right bi\" id=\"personSearchCriteria\" name=\"personSearchCriteria\" \n [ngClass]=\"{'bi-chevron-down': searchGroup?.isOpen, 'bi-chevron-right': !searchGroup?.isOpen}\"></i>\n <b>Person Search Criteria</b>\n </div>\n </div>\n </div>\n <div *ngIf=\"initializing\">\n <span class=\"spinner-border text-primary\" role=\"status\"></span>\n Initializing...\n </div>\n <form *ngIf=\"!initializing\" [formGroup]=\"modalFormGroup\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\"> \n <label>Program</label>\n <select id=\"programSelect\" formControlName=\"programID\" class=\"form-select\">\n <option *ngFor=\"let t of programs\" [ngValue]=\"t.id\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label>Person Type</label>\n <select id=\"subTypeSelect\" formControlName=\"personType\" class=\"form-select\">\n <option *ngFor=\"let t of personTypes\" [ngValue]=\"t\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label>Person ID</label>\n <input type=\"search\" mask=\"999999999\" class=\"form-control\" id=\"personIDInput\" formControlName=\"id\">\n </div>\n </div>\n </div>\n <oepa-contact [group]=\"getModalFormGroup('contact')\" [isSearch]=\"true\"\n [showMiddleName]=\"true\" [noPhone]=\"true\" [noFax]=\"true\" [noEmail]=\"true\"></oepa-contact>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Secondary ID</label>\n <input type=\"search\" class=\"form-control\" id=\"secondaryIDInput\" formControlName=\"secondaryID\">\n </div>\n </div>\n </div>\n \n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Address Type</label>\n <select id=\"addressTypeSelect\" formControlName=\"addressType\" class=\"form-select\">\n <option *ngFor=\"let t of addressTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n </div>\n </div>\n </div>\n <oepa-address [group]=\"getModalFormGroup('address')\" [isSearch]=\"true\"\n addressOneLabel=\"Address\" [hideLine2]=\"true\"></oepa-address>\n <div class=\"row\">\n <div class=\"col-md-4\">\n <div class=\"form-group\">\n <label>Phone Number Type</label>\n <select id=\"phoneNumberTypeSelect\" formControlName=\"phoneNumberType\" class=\"form-select\">\n <option *ngFor=\"let t of phoneNumberTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-2\">\n <div class=\"form-group\">\n <label>Area Code</label>\n <input type=\"search\" mask=\"999\" class=\"form-control\" id=\"areaCodeInput\" formControlName=\"areaCode\">\n </div>\n </div>\n <div class=\"col-md-4\">\n <div class=\"form-group\">\n <label>Phone Number</label>\n <input type=\"search\" mask=\"999-9999\" class=\"form-control\" id=\"phoneNumberInput\" formControlName=\"phoneNumber\">\n </div>\n </div>\n <div class=\"col-md-2\">\n <div class=\"form-group\">\n <label>Extension</label>\n <input type=\"search\" mask=\"9999\" class=\"form-control\" id=\"extensionInput\" formControlName=\"extension\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"!inProgressMsg\" type=\"submit\" class=\"btn btn-primary mr-2\" id=\"submitSearchBtn\" (click)=\"submitSearch()\">Search</button>\n <button id=\"resetSearchBtn\" type=\"button\" class=\"btn btn-primary\" (click)=\"resetSearch()\">Reset</button>\n </div>\n </div>\n </form>\n </accordion-group>\n </accordion>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Person List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"personSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button *ngIf=\"tableData && tableData.length > 0\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SavePersonBtn\"
|
|
5367
|
+
args: [{ selector: 'oepa-person-search-modal', template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Advanced Person Search</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <accordion>\n <accordion-group panelClass=\"panel-info\" #searchGroup [isOpen]=\"openSearchCriteria\">\n <div accordion-heading>\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <i class=\"float-xs-right bi\" id=\"personSearchCriteria\" name=\"personSearchCriteria\" \n [ngClass]=\"{'bi-chevron-down': searchGroup?.isOpen, 'bi-chevron-right': !searchGroup?.isOpen}\"></i>\n <b>Person Search Criteria</b>\n </div>\n </div>\n </div>\n <div *ngIf=\"initializing\">\n <span class=\"spinner-border text-primary\" role=\"status\"></span>\n Initializing...\n </div>\n <form *ngIf=\"!initializing\" [formGroup]=\"modalFormGroup\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\"> \n <label for=\"programSelect\">Program</label>\n <select id=\"programSelect\" formControlName=\"programID\" class=\"form-select\">\n <option *ngFor=\"let t of programs\" [ngValue]=\"t.id\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label for=\"subTypeSelect\">Person Type</label>\n <select id=\"subTypeSelect\" formControlName=\"personType\" class=\"form-select\">\n <option *ngFor=\"let t of personTypes\" [ngValue]=\"t\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label for=\"personIDInput\">Person ID</label>\n <input type=\"search\" mask=\"999999999\" class=\"form-control\" id=\"personIDInput\" formControlName=\"id\">\n </div>\n </div>\n </div>\n <oepa-contact [group]=\"getModalFormGroup('contact')\" [isSearch]=\"true\"\n [showMiddleName]=\"true\" [noPhone]=\"true\" [noFax]=\"true\" [noEmail]=\"true\"></oepa-contact>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"secondaryIDInput\">Secondary ID</label>\n <input type=\"search\" class=\"form-control\" id=\"secondaryIDInput\" formControlName=\"secondaryID\">\n </div>\n </div>\n </div>\n \n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"addressTypeSelect\">Address Type</label>\n <select id=\"addressTypeSelect\" formControlName=\"addressType\" class=\"form-select\">\n <option *ngFor=\"let t of addressTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n </div>\n </div>\n </div>\n <oepa-address [group]=\"getModalFormGroup('address')\" [isSearch]=\"true\"\n addressOneLabel=\"Address\" [hideLine2]=\"true\"></oepa-address>\n <div class=\"row\">\n <div class=\"col-md-4\">\n <div class=\"form-group\">\n <label for=\"phoneNumberTypeSelect\">Phone Number Type</label>\n <select id=\"phoneNumberTypeSelect\" formControlName=\"phoneNumberType\" class=\"form-select\">\n <option *ngFor=\"let t of phoneNumberTypes\" [ngValue]=\"t.code\">{{t.name}}</option>\n </select>\n </div>\n </div>\n <div class=\"col-md-2\">\n <div class=\"form-group\">\n <label for=\"areaCodeInput\">Area Code</label>\n <input type=\"search\" mask=\"999\" class=\"form-control\" id=\"areaCodeInput\" formControlName=\"areaCode\">\n </div>\n </div>\n <div class=\"col-md-4\">\n <div class=\"form-group\">\n <label for=\"phoneNumberInput\">Phone Number</label>\n <input type=\"search\" mask=\"999-9999\" class=\"form-control\" id=\"phoneNumberInput\" formControlName=\"phoneNumber\">\n </div>\n </div>\n <div class=\"col-md-2\">\n <div class=\"form-group\">\n <label for=\"extensionInput\">Extension</label>\n <input type=\"search\" mask=\"9999\" class=\"form-control\" id=\"extensionInput\" formControlName=\"extension\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"!inProgressMsg\" type=\"submit\" class=\"btn btn-primary mr-2\" id=\"submitSearchBtn\" (click)=\"submitSearch()\" aria-label=\"Search\">Search</button>\n <button id=\"resetSearchBtn\" type=\"button\" class=\"btn btn-primary\" (click)=\"resetSearch()\" aria-label=\"Reset\">Reset</button>\n </div>\n </div>\n </form>\n </accordion-group>\n </accordion>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Person List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"personSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button *ngIf=\"tableData && tableData.length > 0\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SavePersonBtn\" [disabled]=\"!selectedPerson\" (click)=\"save()\" aria-label=\"Select\">Select</button>\n <button *ngIf=\"allowCreateNew\" type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"CreatePersonButton\"\n (click)=\"createNewPerson()\" aria-label=\"Create New Person\">Create New Person</button>\n <button id=\"CancelPaymentBtn\" type=\"button\" class=\"btn btn-primary\"\n (click)=\"bsModalRef.hide()\" aria-label=\"Cancel\">Cancel</button>\n </div>\n </div>\n</div>" }]
|
|
5342
5368
|
}], ctorParameters: () => [{ type: i1$2.FormBuilder }, { type: i2$1.BsModalRef }, { type: i2$1.BsModalService }, { type: OepaFormsService }, { type: EntityService }], propDecorators: { onPersonSelected: [{
|
|
5343
5369
|
type: Output
|
|
5344
5370
|
}] } });
|
|
@@ -5669,11 +5695,11 @@ class PlaceSearchModalComponent {
|
|
|
5669
5695
|
return this.modalFormGroup.controls[name];
|
|
5670
5696
|
}
|
|
5671
5697
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PlaceSearchModalComponent, deps: [{ token: i1$2.FormBuilder }, { token: i2$1.BsModalRef }, { token: OepaFormsService }, { token: EntityService }], target: i0.ɵɵFactoryTarget.Component });
|
|
5672
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: PlaceSearchModalComponent, selector: "oepa-place-search-modal", outputs: { onPlaceSelected: "onPlaceSelected" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Advanced Place Search</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <accordion>\n <accordion-group panelClass=\"panel-info\" #searchGroup [isOpen]=\"openSearchCriteria\">\n <div accordion-heading>\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <i class=\"float-xs-right bi\" id=\"placeSearchCriteria\" name=\"placeSearchCriteria\" \n [ngClass]=\"{'bi-chevron-down': searchGroup?.isOpen, 'bi-chevron-right': !searchGroup?.isOpen}\"></i>\n <b>Place Search Criteria</b>\n </div>\n </div>\n </div>\n <form [formGroup]=\"modalFormGroup\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Place ID</label>\n <input type=\"search\" mask=\"999999999\" class=\"form-control\" id=\"placeIDInput\" formControlName=\"id\">\n </div>\n </div>\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Place Name</label>\n <input type=\"search\" class=\"form-control\" id=\"placeNameInput\" formControlName=\"name\">\n </div>\n </div>\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Secondary ID</label>\n <input type=\"search\" class=\"form-control\" id=\"secondaryIDInput\" formControlName=\"secondaryID\">\n </div>\n </div>\n </div>\n <oepa-address [group]=\"getModalFormGroup('address')\" [isSearch]=\"true\"\n addressOneLabel=\"Address\" [hideLine2]=\"true\"></oepa-address>\n \n <div class=\"row\">\n <div class=\"col-md-3\">\n <div class=\"form-group\">\n <label>Area Code</label>\n <input type=\"search\" mask=\"999\" class=\"form-control\" id=\"areaCodeInput\" formControlName=\"areaCode\">\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label>Phone Number</label>\n <input type=\"search\" mask=\"999-9999\" class=\"form-control\" id=\"phoneNumberInput\" formControlName=\"phoneNumber\">\n </div>\n </div>\n <div class=\"col-md-3\">\n <div class=\"form-group\">\n <label>Extension</label>\n <input type=\"search\" mask=\"9999\" class=\"form-control\" id=\"extensionInput\" formControlName=\"extension\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"!inProgressMsg\" type=\"submit\" class=\"btn btn-primary mr-2\" id=\"submitSearchBtn\" (click)=\"submitSearch()\">Search</button>\n <button id=\"resetSearchBtn\" type=\"button\" class=\"btn btn-primary\" (click)=\"resetSearch()\">Reset</button>\n </div>\n </div>\n </form>\n </accordion-group>\n </accordion>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Place List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"placeSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div *ngIf=\"inProgressMsg\">\n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SavePlaceBtn\"\n [disabled]=\"!selectedPlace || inProgressMsg\"\n (click)=\"save()\">Save</button>\n <button id=\"CancelPaymentBtn\" type=\"button\" class=\"btn btn-primary\"\n (click)=\"bsModalRef.hide()\">Cancel</button>\n </div>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6.AccordionComponent, selector: "accordion", inputs: ["isAnimated", "closeOthers"] }, { kind: "component", type: i6.AccordionPanelComponent, selector: "accordion-group, accordion-panel", inputs: ["heading", "panelClass", "isDisabled", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i7.NgxMaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "leadZero", "triggerOnMaskChange", "apm", "inputTransformFn", "outputTransformFn", "keepCharacterPositions"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }, { kind: "component", type: AddressComponent, selector: "oepa-address", inputs: ["group", "showValidation", "addressOneLabel", "addressTwoLabel", "cityLabel", "stateLabel", "zipCodeLabel", "disableState", "isSearch", "hideLine2", "line1MaxLength", "line2MaxLength", "cityMaxLength", "foreignStateLabel", "foreignZipLabel", "countryLabel", "sameAsGroup", "sameAsLabel", "sameAsChecked"] }, { kind: "component", type: TableComponent, selector: "oepa-table", inputs: ["tableId", "config", "complexHeader", "header", "customBtnLabel", "customBtnVisible", "customBtnEnabled", "data", "totalRow"], outputs: ["cellClicked", "actionClicked", "rowSelected", "customBtnClicked"] }] });
|
|
5698
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: PlaceSearchModalComponent, selector: "oepa-place-search-modal", outputs: { onPlaceSelected: "onPlaceSelected" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Advanced Place Search</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <accordion>\n <accordion-group panelClass=\"panel-info\" #searchGroup [isOpen]=\"openSearchCriteria\">\n <div accordion-heading>\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <i class=\"float-xs-right bi\" id=\"placeSearchCriteria\" name=\"placeSearchCriteria\" \n [ngClass]=\"{'bi-chevron-down': searchGroup?.isOpen, 'bi-chevron-right': !searchGroup?.isOpen}\"></i>\n <b>Place Search Criteria</b>\n </div>\n </div>\n </div>\n <form [formGroup]=\"modalFormGroup\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"placeIDInput\">Place ID</label>\n <input type=\"search\" mask=\"999999999\" class=\"form-control\" id=\"placeIDInput\" formControlName=\"id\">\n </div>\n </div>\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"placeNameInput\">Place Name</label>\n <input type=\"search\" class=\"form-control\" id=\"placeNameInput\" formControlName=\"name\">\n </div>\n </div>\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"secondaryIDInput\">Secondary ID</label>\n <input type=\"search\" class=\"form-control\" id=\"secondaryIDInput\" formControlName=\"secondaryID\">\n </div>\n </div>\n </div>\n <oepa-address [group]=\"getModalFormGroup('address')\" [isSearch]=\"true\"\n addressOneLabel=\"Address\" [hideLine2]=\"true\"></oepa-address>\n \n <div class=\"row\">\n <div class=\"col-md-3\">\n <div class=\"form-group\">\n <label for=\"areaCodeInput\">Area Code</label>\n <input type=\"search\" mask=\"999\" class=\"form-control\" id=\"areaCodeInput\" formControlName=\"areaCode\">\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label for=\"phoneNumberInput\">Phone Number</label>\n <input type=\"search\" mask=\"999-9999\" class=\"form-control\" id=\"phoneNumberInput\" formControlName=\"phoneNumber\">\n </div>\n </div>\n <div class=\"col-md-3\">\n <div class=\"form-group\">\n <label for=\"extensionInput\">Extension</label>\n <input type=\"search\" mask=\"9999\" class=\"form-control\" id=\"extensionInput\" formControlName=\"extension\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"!inProgressMsg\" type=\"submit\" class=\"btn btn-primary mr-2\" id=\"submitSearchBtn\" (click)=\"submitSearch()\" aria-label=\"Search\">Search</button>\n <button id=\"resetSearchBtn\" type=\"button\" class=\"btn btn-primary\" (click)=\"resetSearch()\" aria-label=\"Reset\">Reset</button>\n </div>\n </div>\n </form>\n </accordion-group>\n </accordion>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Place List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"placeSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div *ngIf=\"inProgressMsg\">\n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SavePlaceBtn\"\n [disabled]=\"!selectedPlace || inProgressMsg\"\n (click)=\"save()\" aria-label=\"Save\">Save</button>\n <button id=\"CancelPaymentBtn\" type=\"button\" class=\"btn btn-primary\"\n (click)=\"bsModalRef.hide()\" aria-label=\"Cancel\">Cancel</button>\n </div>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6.AccordionComponent, selector: "accordion", inputs: ["isAnimated", "closeOthers"] }, { kind: "component", type: i6.AccordionPanelComponent, selector: "accordion-group, accordion-panel", inputs: ["heading", "panelClass", "isDisabled", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i7.NgxMaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "leadZero", "triggerOnMaskChange", "apm", "inputTransformFn", "outputTransformFn", "keepCharacterPositions"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }, { kind: "component", type: AddressComponent, selector: "oepa-address", inputs: ["group", "showValidation", "addressOneLabel", "addressTwoLabel", "cityLabel", "stateLabel", "zipCodeLabel", "disableState", "isSearch", "hideLine2", "line1MaxLength", "line2MaxLength", "cityMaxLength", "foreignStateLabel", "foreignZipLabel", "countryLabel", "sameAsGroup", "sameAsLabel", "sameAsChecked"] }, { kind: "component", type: TableComponent, selector: "oepa-table", inputs: ["tableId", "config", "complexHeader", "header", "customBtnLabel", "customBtnVisible", "customBtnEnabled", "data", "totalRow"], outputs: ["cellClicked", "actionClicked", "rowSelected", "customBtnClicked"] }] });
|
|
5673
5699
|
}
|
|
5674
5700
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PlaceSearchModalComponent, decorators: [{
|
|
5675
5701
|
type: Component,
|
|
5676
|
-
args: [{ selector: 'oepa-place-search-modal', template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Advanced Place Search</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <accordion>\n <accordion-group panelClass=\"panel-info\" #searchGroup [isOpen]=\"openSearchCriteria\">\n <div accordion-heading>\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <i class=\"float-xs-right bi\" id=\"placeSearchCriteria\" name=\"placeSearchCriteria\" \n [ngClass]=\"{'bi-chevron-down': searchGroup?.isOpen, 'bi-chevron-right': !searchGroup?.isOpen}\"></i>\n <b>Place Search Criteria</b>\n </div>\n </div>\n </div>\n <form [formGroup]=\"modalFormGroup\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Place ID</label>\n <input type=\"search\" mask=\"999999999\" class=\"form-control\" id=\"placeIDInput\" formControlName=\"id\">\n </div>\n </div>\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Place Name</label>\n <input type=\"search\" class=\"form-control\" id=\"placeNameInput\" formControlName=\"name\">\n </div>\n </div>\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label>Secondary ID</label>\n <input type=\"search\" class=\"form-control\" id=\"secondaryIDInput\" formControlName=\"secondaryID\">\n </div>\n </div>\n </div>\n <oepa-address [group]=\"getModalFormGroup('address')\" [isSearch]=\"true\"\n addressOneLabel=\"Address\" [hideLine2]=\"true\"></oepa-address>\n \n <div class=\"row\">\n <div class=\"col-md-3\">\n <div class=\"form-group\">\n <label>Area Code</label>\n <input type=\"search\" mask=\"999\" class=\"form-control\" id=\"areaCodeInput\" formControlName=\"areaCode\">\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label>Phone Number</label>\n <input type=\"search\" mask=\"999-9999\" class=\"form-control\" id=\"phoneNumberInput\" formControlName=\"phoneNumber\">\n </div>\n </div>\n <div class=\"col-md-3\">\n <div class=\"form-group\">\n <label>Extension</label>\n <input type=\"search\" mask=\"9999\" class=\"form-control\" id=\"extensionInput\" formControlName=\"extension\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"!inProgressMsg\" type=\"submit\" class=\"btn btn-primary mr-2\" id=\"submitSearchBtn\" (click)=\"submitSearch()\">Search</button>\n <button id=\"resetSearchBtn\" type=\"button\" class=\"btn btn-primary\" (click)=\"resetSearch()\">Reset</button>\n </div>\n </div>\n </form>\n </accordion-group>\n </accordion>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Place List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"placeSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div *ngIf=\"inProgressMsg\">\n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SavePlaceBtn\"\n [disabled]=\"!selectedPlace || inProgressMsg\"\n (click)=\"save()\">Save</button>\n <button id=\"CancelPaymentBtn\" type=\"button\" class=\"btn btn-primary\"\n (click)=\"bsModalRef.hide()\">Cancel</button>\n </div>\n </div>\n</div>" }]
|
|
5702
|
+
args: [{ selector: 'oepa-place-search-modal', template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Advanced Place Search</h4>\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n \n </button>\n</div>\n<div class=\"modal-body\">\n <accordion>\n <accordion-group panelClass=\"panel-info\" #searchGroup [isOpen]=\"openSearchCriteria\">\n <div accordion-heading>\n <div class=\"row\">\n <div class=\"col-sm-6\">\n <i class=\"float-xs-right bi\" id=\"placeSearchCriteria\" name=\"placeSearchCriteria\" \n [ngClass]=\"{'bi-chevron-down': searchGroup?.isOpen, 'bi-chevron-right': !searchGroup?.isOpen}\"></i>\n <b>Place Search Criteria</b>\n </div>\n </div>\n </div>\n <form [formGroup]=\"modalFormGroup\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"placeIDInput\">Place ID</label>\n <input type=\"search\" mask=\"999999999\" class=\"form-control\" id=\"placeIDInput\" formControlName=\"id\">\n </div>\n </div>\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"placeNameInput\">Place Name</label>\n <input type=\"search\" class=\"form-control\" id=\"placeNameInput\" formControlName=\"name\">\n </div>\n </div>\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label for=\"secondaryIDInput\">Secondary ID</label>\n <input type=\"search\" class=\"form-control\" id=\"secondaryIDInput\" formControlName=\"secondaryID\">\n </div>\n </div>\n </div>\n <oepa-address [group]=\"getModalFormGroup('address')\" [isSearch]=\"true\"\n addressOneLabel=\"Address\" [hideLine2]=\"true\"></oepa-address>\n \n <div class=\"row\">\n <div class=\"col-md-3\">\n <div class=\"form-group\">\n <label for=\"areaCodeInput\">Area Code</label>\n <input type=\"search\" mask=\"999\" class=\"form-control\" id=\"areaCodeInput\" formControlName=\"areaCode\">\n </div>\n </div>\n <div class=\"col-md-6\">\n <div class=\"form-group\">\n <label for=\"phoneNumberInput\">Phone Number</label>\n <input type=\"search\" mask=\"999-9999\" class=\"form-control\" id=\"phoneNumberInput\" formControlName=\"phoneNumber\">\n </div>\n </div>\n <div class=\"col-md-3\">\n <div class=\"form-group\">\n <label for=\"extensionInput\">Extension</label>\n <input type=\"search\" mask=\"9999\" class=\"form-control\" id=\"extensionInput\" formControlName=\"extension\">\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <span *ngIf=\"inProgressMsg\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"!inProgressMsg\" type=\"submit\" class=\"btn btn-primary mr-2\" id=\"submitSearchBtn\" (click)=\"submitSearch()\" aria-label=\"Search\">Search</button>\n <button id=\"resetSearchBtn\" type=\"button\" class=\"btn btn-primary\" (click)=\"resetSearch()\" aria-label=\"Reset\">Reset</button>\n </div>\n </div>\n </form>\n </accordion-group>\n </accordion>\n <div *ngIf=\"tableData && tableData.length > 0\" class=\"card\">\n <div class=\"card-header\">\n <b>Place List </b><span class=\"badge bg-secondary\">{{tableData.length}}</span>\n </div>\n <div class=\"card-body\">\n <oepa-table tableId=\"placeSearchTable\" [config]=\"tableConfig\" [data]=\"tableData\" [header]=\"tableHeader\" (rowSelected)=\"onRowSelect($event)\">\n </oepa-table>\n </div>\n </div>\n</div>\n<div class=\"modal-footer d-block\">\n <div *ngIf=\"errorMessage\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n <div *ngIf=\"inProgressMsg\">\n <div class=\"alert alert-info\">\n {{inProgressMsg}}\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-sm-12 text-center\">\n <button type=\"button\" class=\"btn btn-primary mr-2\"\n id=\"SavePlaceBtn\"\n [disabled]=\"!selectedPlace || inProgressMsg\"\n (click)=\"save()\" aria-label=\"Save\">Save</button>\n <button id=\"CancelPaymentBtn\" type=\"button\" class=\"btn btn-primary\"\n (click)=\"bsModalRef.hide()\" aria-label=\"Cancel\">Cancel</button>\n </div>\n </div>\n</div>" }]
|
|
5677
5703
|
}], ctorParameters: () => [{ type: i1$2.FormBuilder }, { type: i2$1.BsModalRef }, { type: OepaFormsService }, { type: EntityService }], propDecorators: { onPlaceSelected: [{
|
|
5678
5704
|
type: Output
|
|
5679
5705
|
}] } });
|
|
@@ -5915,6 +5941,7 @@ class DateInputModalComponent {
|
|
|
5915
5941
|
dateLabel = 'Date';
|
|
5916
5942
|
submitBtnLabel = 'Submit';
|
|
5917
5943
|
cancelBtnLabel = 'Cancel';
|
|
5944
|
+
bsConfig = undefined;
|
|
5918
5945
|
onSubmit = new EventEmitter();
|
|
5919
5946
|
onCancel = new EventEmitter();
|
|
5920
5947
|
constructor(bsModalRef, fb) {
|
|
@@ -5944,11 +5971,11 @@ class DateInputModalComponent {
|
|
|
5944
5971
|
this.bsModalRef.hide();
|
|
5945
5972
|
}
|
|
5946
5973
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DateInputModalComponent, deps: [{ token: i2$1.BsModalRef }, { token: i1$2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
|
|
5947
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DateInputModalComponent, selector: "oepa-date-input-modal", inputs: { title: "title", infoText: "infoText", dateLabel: "dateLabel", submitBtnLabel: "submitBtnLabel", cancelBtnLabel: "cancelBtnLabel" }, outputs: { onSubmit: "onSubmit", onCancel: "onCancel" }, ngImport: i0, template: "<div class=\"modal-header\">\n <
|
|
5974
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DateInputModalComponent, selector: "oepa-date-input-modal", inputs: { title: "title", infoText: "infoText", dateLabel: "dateLabel", submitBtnLabel: "submitBtnLabel", cancelBtnLabel: "cancelBtnLabel", bsConfig: "bsConfig" }, outputs: { onSubmit: "onSubmit", onCancel: "onCancel" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h1 class=\"modal-title pull-left\" id=\"dateInputModalTitle\">{{title}}</h1>\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n <span aria-hidden=\"true\">×</span>\n </button>\n</div>\n<div class=\"modal-body\">\n <div class=\"row\">\n <div *ngIf=\"infoText\" class=\"col-sm-12\">\n <div class=\"alert alert-info\">\n {{infoText}}\n </div>\n </div>\n <div class=\"col-sm-12\">\n <div>\n <label [for]=\"datepicker.inputId\">{{dateLabel}}</label>\n <oepa-datepicker\n #datepicker=\"oepa-datepicker\"\n [group]=\"dateForm\"\n field=\"date\"\n [bsConfig]=\"bsConfig || {}\"\n [showValidation]=\"true\"\n ></oepa-datepicker>\n </div>\n </div>\n </div>\n <div *ngIf=\"errorMessage\" class=\"col-sm-12\">\n <div class=\"alert alert-danger\">{{errorMessage}}</div>\n </div>\n</div>\n<div class=\"modal-footer\">\n <button type=\"submit\" class=\"btn btn-primary mr-1\" (click)=\"submit()\" \n [id]=\"'submitDateBtn'\" [disabled]=\"dateForm.status === 'INVALID'\" [attr.aria-label]=\"submitBtnLabel\">{{submitBtnLabel}}</button>\n <button [id]=\"'cancelDateInputBtn'\" type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"cancel()\" [attr.aria-label]=\"cancelBtnLabel\">{{cancelBtnLabel}}</button>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: DatepickerComponent, selector: "oepa-datepicker", inputs: ["group", "field", "bsConfig", "showValidation", "placement", "tableIdx", "small"], exportAs: ["oepa-datepicker"] }] });
|
|
5948
5975
|
}
|
|
5949
5976
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DateInputModalComponent, decorators: [{
|
|
5950
5977
|
type: Component,
|
|
5951
|
-
args: [{ selector: 'oepa-date-input-modal', template: "<div class=\"modal-header\">\n <
|
|
5978
|
+
args: [{ selector: 'oepa-date-input-modal', template: "<div class=\"modal-header\">\n <h1 class=\"modal-title pull-left\" id=\"dateInputModalTitle\">{{title}}</h1>\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n <span aria-hidden=\"true\">×</span>\n </button>\n</div>\n<div class=\"modal-body\">\n <div class=\"row\">\n <div *ngIf=\"infoText\" class=\"col-sm-12\">\n <div class=\"alert alert-info\">\n {{infoText}}\n </div>\n </div>\n <div class=\"col-sm-12\">\n <div>\n <label [for]=\"datepicker.inputId\">{{dateLabel}}</label>\n <oepa-datepicker\n #datepicker=\"oepa-datepicker\"\n [group]=\"dateForm\"\n field=\"date\"\n [bsConfig]=\"bsConfig || {}\"\n [showValidation]=\"true\"\n ></oepa-datepicker>\n </div>\n </div>\n </div>\n <div *ngIf=\"errorMessage\" class=\"col-sm-12\">\n <div class=\"alert alert-danger\">{{errorMessage}}</div>\n </div>\n</div>\n<div class=\"modal-footer\">\n <button type=\"submit\" class=\"btn btn-primary mr-1\" (click)=\"submit()\" \n [id]=\"'submitDateBtn'\" [disabled]=\"dateForm.status === 'INVALID'\" [attr.aria-label]=\"submitBtnLabel\">{{submitBtnLabel}}</button>\n <button [id]=\"'cancelDateInputBtn'\" type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"cancel()\" [attr.aria-label]=\"cancelBtnLabel\">{{cancelBtnLabel}}</button>\n</div>\n" }]
|
|
5952
5979
|
}], ctorParameters: () => [{ type: i2$1.BsModalRef }, { type: i1$2.FormBuilder }], propDecorators: { title: [{
|
|
5953
5980
|
type: Input
|
|
5954
5981
|
}], infoText: [{
|
|
@@ -5959,6 +5986,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
5959
5986
|
type: Input
|
|
5960
5987
|
}], cancelBtnLabel: [{
|
|
5961
5988
|
type: Input
|
|
5989
|
+
}], bsConfig: [{
|
|
5990
|
+
type: Input
|
|
5962
5991
|
}], onSubmit: [{
|
|
5963
5992
|
type: Output
|
|
5964
5993
|
}], onCancel: [{
|
|
@@ -6243,11 +6272,11 @@ class EdocAttachmentComponent {
|
|
|
6243
6272
|
});
|
|
6244
6273
|
}
|
|
6245
6274
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EdocAttachmentComponent, deps: [{ token: i1$1.OepaComponentIdService }, { token: i1$1.OepaFileUtilService }, { token: EdocAttachmentService }, { token: i2$1.BsModalService }], target: i0.ɵɵFactoryTarget.Component });
|
|
6246
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: EdocAttachmentComponent, selector: "oepa-edoc-attachment", inputs: { attachment: "attachment", group: "group", field: "field", label: "label", errorLabel: "errorLabel", showValidation: "showValidation", accept: "accept", removeAllowed: "removeAllowed", okToDelete: "okToDelete" }, outputs: { fileUploaded: "fileUploaded", fileRemoved: "fileRemoved", download: "download" }, ngImport: i0, template: "<form [formGroup]=\"group\">\n <div *ngIf=\"!attachment || !attachment.userFilename\" class=\"form-group\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <div class=\"form-group\">\n <div class=\"input-group\">\n <span *ngIf=\"!busy\" class=\"input-group-btn\">\n <label class=\"btn btn-primary btn-file\">\n Browse…\n <input type=\"file\" style=\"display: none;\" (change)=\"fileChange($event)\"\n [id]=\"componentId+'_BrowseBtn'\" class=\"form-control\"\n [attr.accept]=\"accept ? accept : null\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\">\n </label>\n </span>\n <span *ngIf=\"busy\"> <span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <input [ngClass]=\"{'is-invalid':showValidation && group.controls[field].status === 'INVALID'}\"\n type=\"text\" class=\"form-control\" placeholder=\"No file chosen\" [id]=\"componentId+'_Input'\" readonly>\n <small class=\"invalid-feedback\"\n *ngIf=\"showValidation && group.controls[field].status === 'INVALID'\">{{errorLabel || label}} is\n required</small>\n </div>\n <!-- dummy input field for validation purposes -->\n <input type=\"text\" [hidden]=\"true\" [formControlName]=\"field\" />\n </div>\n </div>\n </div>\n <div *ngIf=\"attachment && attachment.userFilename\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <div class=\"input-group\">\n <a (click)=\"downloadFile(attachment)\" [id]=\"componentId+'_DownloadFileLink'\" \n class=\"form-control\">{{attachment.userFilename}}</a>\n <span *ngIf=\"removeAllowed && !busy\" class=\"input-group-btn\">\n <button type=\"button\" class=\"btn btn-primary\" [id]=\"componentId+'_RemoveFileBtn'\"\n (click)=\"removeFile()\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\">Remove Attachment</button>\n </span>\n <span *ngIf=\"busy\"> <span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n </div>\n </div>\n </div>\n <div *ngIf=\"errorMsg\" class=\"alert alert-danger\" role=\"alert\">{{errorMsg}}</div>\n</form>", styles: ["a:hover{cursor:pointer}a{color:#3399f3!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
6275
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: EdocAttachmentComponent, selector: "oepa-edoc-attachment", inputs: { attachment: "attachment", group: "group", field: "field", label: "label", errorLabel: "errorLabel", showValidation: "showValidation", accept: "accept", removeAllowed: "removeAllowed", okToDelete: "okToDelete" }, outputs: { fileUploaded: "fileUploaded", fileRemoved: "fileRemoved", download: "download" }, ngImport: i0, template: "<form [formGroup]=\"group\">\n <div *ngIf=\"!attachment || !attachment.userFilename\" class=\"form-group\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <div class=\"form-group\">\n <div class=\"input-group\">\n <span *ngIf=\"!busy\" class=\"input-group-btn\">\n <label class=\"btn btn-primary btn-file\">\n Browse…\n <input type=\"file\" style=\"display: none;\" (change)=\"fileChange($event)\"\n [id]=\"componentId+'_BrowseBtn'\" class=\"form-control\"\n [attr.accept]=\"accept ? accept : null\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\">\n </label>\n </span>\n <span *ngIf=\"busy\"> <span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <input [ngClass]=\"{'is-invalid':showValidation && group.controls[field].status === 'INVALID'}\"\n type=\"text\" class=\"form-control\" placeholder=\"No file chosen\" [id]=\"componentId+'_Input'\" readonly>\n <small class=\"invalid-feedback\"\n *ngIf=\"showValidation && group.controls[field].status === 'INVALID'\">{{errorLabel || label}} is\n required</small>\n </div>\n <!-- dummy input field for validation purposes -->\n <input type=\"text\" [hidden]=\"true\" [formControlName]=\"field\" id=\"field\" />\n </div>\n </div>\n </div>\n <div *ngIf=\"attachment && attachment.userFilename\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <div class=\"input-group\">\n <a (click)=\"downloadFile(attachment)\" [id]=\"componentId+'_DownloadFileLink'\" \n class=\"form-control\">{{attachment.userFilename}}</a>\n <span *ngIf=\"removeAllowed && !busy\" class=\"input-group-btn\">\n <button type=\"button\" class=\"btn btn-primary\" [id]=\"componentId+'_RemoveFileBtn'\"\n (click)=\"removeFile()\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\" aria-label=\"Remove Attachment\">Remove Attachment</button>\n </span>\n <span *ngIf=\"busy\"> <span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n </div>\n </div>\n </div>\n <div *ngIf=\"errorMsg\" class=\"alert alert-danger\" role=\"alert\">{{errorMsg}}</div>\n</form>", styles: ["a:hover{cursor:pointer}a{color:#3399f3!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
6247
6276
|
}
|
|
6248
6277
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EdocAttachmentComponent, decorators: [{
|
|
6249
6278
|
type: Component,
|
|
6250
|
-
args: [{ selector: 'oepa-edoc-attachment', template: "<form [formGroup]=\"group\">\n <div *ngIf=\"!attachment || !attachment.userFilename\" class=\"form-group\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <div class=\"form-group\">\n <div class=\"input-group\">\n <span *ngIf=\"!busy\" class=\"input-group-btn\">\n <label class=\"btn btn-primary btn-file\">\n Browse…\n <input type=\"file\" style=\"display: none;\" (change)=\"fileChange($event)\"\n [id]=\"componentId+'_BrowseBtn'\" class=\"form-control\"\n [attr.accept]=\"accept ? accept : null\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\">\n </label>\n </span>\n <span *ngIf=\"busy\"> <span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <input [ngClass]=\"{'is-invalid':showValidation && group.controls[field].status === 'INVALID'}\"\n type=\"text\" class=\"form-control\" placeholder=\"No file chosen\" [id]=\"componentId+'_Input'\" readonly>\n <small class=\"invalid-feedback\"\n *ngIf=\"showValidation && group.controls[field].status === 'INVALID'\">{{errorLabel || label}} is\n required</small>\n </div>\n <!-- dummy input field for validation purposes -->\n <input type=\"text\" [hidden]=\"true\" [formControlName]=\"field\" />\n </div>\n </div>\n </div>\n <div *ngIf=\"attachment && attachment.userFilename\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <div class=\"input-group\">\n <a (click)=\"downloadFile(attachment)\" [id]=\"componentId+'_DownloadFileLink'\" \n class=\"form-control\">{{attachment.userFilename}}</a>\n <span *ngIf=\"removeAllowed && !busy\" class=\"input-group-btn\">\n <button type=\"button\" class=\"btn btn-primary\" [id]=\"componentId+'_RemoveFileBtn'\"\n (click)=\"removeFile()\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\">Remove Attachment</button>\n </span>\n <span *ngIf=\"busy\"> <span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n </div>\n </div>\n </div>\n <div *ngIf=\"errorMsg\" class=\"alert alert-danger\" role=\"alert\">{{errorMsg}}</div>\n</form>", styles: ["a:hover{cursor:pointer}a{color:#3399f3!important}\n"] }]
|
|
6279
|
+
args: [{ selector: 'oepa-edoc-attachment', template: "<form [formGroup]=\"group\">\n <div *ngIf=\"!attachment || !attachment.userFilename\" class=\"form-group\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <div class=\"form-group\">\n <div class=\"input-group\">\n <span *ngIf=\"!busy\" class=\"input-group-btn\">\n <label class=\"btn btn-primary btn-file\">\n Browse…\n <input type=\"file\" style=\"display: none;\" (change)=\"fileChange($event)\"\n [id]=\"componentId+'_BrowseBtn'\" class=\"form-control\"\n [attr.accept]=\"accept ? accept : null\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\">\n </label>\n </span>\n <span *ngIf=\"busy\"> <span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <input [ngClass]=\"{'is-invalid':showValidation && group.controls[field].status === 'INVALID'}\"\n type=\"text\" class=\"form-control\" placeholder=\"No file chosen\" [id]=\"componentId+'_Input'\" readonly>\n <small class=\"invalid-feedback\"\n *ngIf=\"showValidation && group.controls[field].status === 'INVALID'\">{{errorLabel || label}} is\n required</small>\n </div>\n <!-- dummy input field for validation purposes -->\n <input type=\"text\" [hidden]=\"true\" [formControlName]=\"field\" id=\"field\" />\n </div>\n </div>\n </div>\n <div *ngIf=\"attachment && attachment.userFilename\">\n <div>\n <label *ngIf=\"label\">{{label}}</label>\n <div class=\"input-group\">\n <a (click)=\"downloadFile(attachment)\" [id]=\"componentId+'_DownloadFileLink'\" \n class=\"form-control\">{{attachment.userFilename}}</a>\n <span *ngIf=\"removeAllowed && !busy\" class=\"input-group-btn\">\n <button type=\"button\" class=\"btn btn-primary\" [id]=\"componentId+'_RemoveFileBtn'\"\n (click)=\"removeFile()\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\" aria-label=\"Remove Attachment\">Remove Attachment</button>\n </span>\n <span *ngIf=\"busy\"> <span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n </div>\n </div>\n </div>\n <div *ngIf=\"errorMsg\" class=\"alert alert-danger\" role=\"alert\">{{errorMsg}}</div>\n</form>", styles: ["a:hover{cursor:pointer}a{color:#3399f3!important}\n"] }]
|
|
6251
6280
|
}], ctorParameters: () => [{ type: i1$1.OepaComponentIdService }, { type: i1$1.OepaFileUtilService }, { type: EdocAttachmentService }, { type: i2$1.BsModalService }], propDecorators: { attachment: [{
|
|
6252
6281
|
type: Input
|
|
6253
6282
|
}], group: [{
|
|
@@ -6618,7 +6647,7 @@ class DualListBoxComponent {
|
|
|
6618
6647
|
provide: NG_VALUE_ACCESSOR,
|
|
6619
6648
|
useExisting: forwardRef(() => DualListBoxComponent),
|
|
6620
6649
|
multi: true
|
|
6621
|
-
}], ngImport: i0, template: "<div class=\"row\" [formGroup]=\"listBoxForm\">\n <div class=\"col-md-5 col-lg-5 col-sm-12\">\n <h4 class=\"text-center vertical-spacing-5\">{{availableText}}</h4>\n <input type=\"text\" class=\"form-control vertical-spacing-5\" placeholder=\"{{availableFilterPlaceholder}}\"\n formControlName=\"availableSearchInput\" />\n <select class=\"form-control list-box\" formControlName=\"availableListBox\" multiple [size]=\"listSize\">\n <option *ngFor=\"let item of availableItems | arrayFilter:['text', searchTermAvailable] | arraySort:[sortBy, 'ASC'];trackBy:trackByValue\"\n [value]=\"item?.value\"\n [id]=\"item?.value+'Option'\"\n (dblclick)=\"moveAvailableItemToSelected(item)\">{{item?.text}}</option>\n </select>\n </div>\n <div class=\"col-md-2 col-lg-2 col-sm-12 center-block text-center\">\n <button type=\"button\"\n class=\"btn btn-primary col-md-8 col-md-offset-2 atr top80 sm-spacing\"\n [disabled]=\"listBoxForm.disabled\"\n [id]=\"idField+'MoveAllBtn'\"\n *ngIf=\"moveAllButton\" (click)=\"moveAllItemsToSelected()\">\n <span class=\"bi bi-list-task\"></span>\n <span class=\"bi bi-chevron-right\"></span>\n </button>\n <button type=\"button\"\n class=\"btn btn-primary col-md-8 col-md-offset-2 str vertical-spacing-5 sm-spacing\"\n [disabled]=\"listBoxForm.disabled || !availableListBoxControl.value?.length\"\n [id]=\"idField+'MoveOneBtn'\"\n (click)=\"moveMarkedAvailableItemsToSelected()\">\n <span class=\"bi bi-chevron-right\"></span>\n </button>\n <button type=\"button\"\n class=\"btn btn-primary col-md-8 col-md-offset-2 stl vertical-spacing-5 sm-spacing\"\n [disabled]=\"listBoxForm.disabled || !selectedListBoxControl.value?.length\"\n [id]=\"idField+'MoveOneLeftBtn'\"\n (click)=\"moveMarkedSelectedItemsToAvailable()\">\n <span class=\"bi bi-chevron-left\"></span>\n </button>\n <button type=\"button\"\n class=\"btn btn-primary col-md-8 col-md-offset-2 atl bottom10 sm-spacing\"\n [disabled]=\"listBoxForm.disabled\"\n [id]=\"idField+'MoveAllLeftBtn'\"\n *ngIf=\"moveAllButton\" (click)=\"moveAllItemsToAvailable()\">\n <span class=\"bi bi-chevron-left\"></span>\n <span class=\"bi bi-list-task\"></span>\n </button>\n </div>\n <div class=\"col-md-5 col-lg-5 col-sm-12\">\n <h4 class=\"text-center vertical-spacing-5\">{{selectedText}}</h4>\n <input type=\"text\" class=\"form-control vertical-spacing-5\" placeholder=\"{{selectedFilterPlaceholder}}\"\n formControlName=\"selectedSearchInput\" />\n <select class=\"form-control list-box\" formControlName=\"selectedListBox\" multiple [size]=\"listSize\">\n <option *ngFor=\"let item of selectedItems | arrayFilter:['text', searchTermSelected] | arraySort:[sortBy, 'ASC'];trackBy:trackByValue\"\n [value]=\"item?.value\"\n (dblclick)=\"moveSelectedItemToAvailable(item)\">{{item?.text}}</option>\n </select>\n </div>\n</div>\n", styles: [".list-box{min-height:200px;width:100%}.top100{margin-top:100px}.top80{margin-top:80px}.bottom10{margin-bottom:10px}.vertical-spacing-5{margin-top:5px;margin-bottom:5px}.center-block{min-height:50px}@media only screen and (max-width : 768px){.sm-spacing{margin-top:10px;margin-bottom:10px}}@media only screen and (min-width : 768px) and (max-width : 992px){.sm-spacing{margin-top:10px;margin-bottom:10px}}@media only screen and (max-width : 480px){.sm-spacing{margin-top:10px;margin-bottom:10px}}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.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: i1$2.SelectMultipleControlValueAccessor, selector: "select[multiple][formControlName],select[multiple][formControl],select[multiple][ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "pipe", type: ArrayFilterPipe, name: "arrayFilter" }, { kind: "pipe", type: ArraySortPipe, name: "arraySort" }] });
|
|
6650
|
+
}], ngImport: i0, template: "<div class=\"row\" [formGroup]=\"listBoxForm\">\n <div class=\"col-md-5 col-lg-5 col-sm-12\">\n <h4 class=\"text-center vertical-spacing-5\">{{availableText}}</h4>\n <input type=\"text\" class=\"form-control vertical-spacing-5\" placeholder=\"{{availableFilterPlaceholder}}\"\n formControlName=\"availableSearchInput\" />\n <select class=\"form-control list-box\" formControlName=\"availableListBox\" multiple [size]=\"listSize\">\n <option *ngFor=\"let item of availableItems | arrayFilter:['text', searchTermAvailable] | arraySort:[sortBy, 'ASC'];trackBy:trackByValue\"\n [value]=\"item?.value\"\n [id]=\"item?.value+'Option'\"\n (dblclick)=\"moveAvailableItemToSelected(item)\">{{item?.text}}</option>\n </select>\n </div>\n <div class=\"col-md-2 col-lg-2 col-sm-12 center-block text-center\">\n <button type=\"button\"\n class=\"btn btn-primary col-md-8 col-md-offset-2 atr top80 sm-spacing\"\n [disabled]=\"listBoxForm.disabled\"\n [id]=\"idField+'MoveAllBtn'\"\n *ngIf=\"moveAllButton\" (click)=\"moveAllItemsToSelected()\" aria-label=\"Move All Items To Selected\">\n <span class=\"bi bi-list-task\"></span>\n <span class=\"bi bi-chevron-right\"></span>\n </button>\n <button type=\"button\"\n class=\"btn btn-primary col-md-8 col-md-offset-2 str vertical-spacing-5 sm-spacing\"\n [disabled]=\"listBoxForm.disabled || !availableListBoxControl.value?.length\"\n [id]=\"idField+'MoveOneBtn'\"\n (click)=\"moveMarkedAvailableItemsToSelected()\" aria-label=\"Move Marked Available Items To Selected\">\n <span class=\"bi bi-chevron-right\"></span>\n </button>\n <button type=\"button\"\n class=\"btn btn-primary col-md-8 col-md-offset-2 stl vertical-spacing-5 sm-spacing\"\n [disabled]=\"listBoxForm.disabled || !selectedListBoxControl.value?.length\"\n [id]=\"idField+'MoveOneLeftBtn'\"\n (click)=\"moveMarkedSelectedItemsToAvailable()\" aria-label=\"Move Marked Selected Items To Available\">\n <span class=\"bi bi-chevron-left\"></span>\n </button>\n <button type=\"button\"\n class=\"btn btn-primary col-md-8 col-md-offset-2 atl bottom10 sm-spacing\"\n [disabled]=\"listBoxForm.disabled\"\n [id]=\"idField+'MoveAllLeftBtn'\"\n *ngIf=\"moveAllButton\" (click)=\"moveAllItemsToAvailable()\" aria-label=\"Move All Items To Available\">\n <span class=\"bi bi-chevron-left\"></span>\n <span class=\"bi bi-list-task\"></span>\n </button>\n </div>\n <div class=\"col-md-5 col-lg-5 col-sm-12\">\n <h4 class=\"text-center vertical-spacing-5\">{{selectedText}}</h4>\n <input type=\"text\" class=\"form-control vertical-spacing-5\" placeholder=\"{{selectedFilterPlaceholder}}\"\n formControlName=\"selectedSearchInput\" />\n <select class=\"form-control list-box\" formControlName=\"selectedListBox\" multiple [size]=\"listSize\">\n <option *ngFor=\"let item of selectedItems | arrayFilter:['text', searchTermSelected] | arraySort:[sortBy, 'ASC'];trackBy:trackByValue\"\n [value]=\"item?.value\"\n (dblclick)=\"moveSelectedItemToAvailable(item)\">{{item?.text}}</option>\n </select>\n </div>\n</div>\n", styles: [".list-box{min-height:200px;width:100%}.top100{margin-top:100px}.top80{margin-top:80px}.bottom10{margin-bottom:10px}.vertical-spacing-5{margin-top:5px;margin-bottom:5px}.center-block{min-height:50px}@media only screen and (max-width : 768px){.sm-spacing{margin-top:10px;margin-bottom:10px}}@media only screen and (min-width : 768px) and (max-width : 992px){.sm-spacing{margin-top:10px;margin-bottom:10px}}@media only screen and (max-width : 480px){.sm-spacing{margin-top:10px;margin-bottom:10px}}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$2.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: i1$2.SelectMultipleControlValueAccessor, selector: "select[multiple][formControlName],select[multiple][formControl],select[multiple][ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "pipe", type: ArrayFilterPipe, name: "arrayFilter" }, { kind: "pipe", type: ArraySortPipe, name: "arraySort" }] });
|
|
6622
6651
|
}
|
|
6623
6652
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DualListBoxComponent, decorators: [{
|
|
6624
6653
|
type: Component,
|
|
@@ -6626,7 +6655,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
6626
6655
|
provide: NG_VALUE_ACCESSOR,
|
|
6627
6656
|
useExisting: forwardRef(() => DualListBoxComponent),
|
|
6628
6657
|
multi: true
|
|
6629
|
-
}], template: "<div class=\"row\" [formGroup]=\"listBoxForm\">\n <div class=\"col-md-5 col-lg-5 col-sm-12\">\n <h4 class=\"text-center vertical-spacing-5\">{{availableText}}</h4>\n <input type=\"text\" class=\"form-control vertical-spacing-5\" placeholder=\"{{availableFilterPlaceholder}}\"\n formControlName=\"availableSearchInput\" />\n <select class=\"form-control list-box\" formControlName=\"availableListBox\" multiple [size]=\"listSize\">\n <option *ngFor=\"let item of availableItems | arrayFilter:['text', searchTermAvailable] | arraySort:[sortBy, 'ASC'];trackBy:trackByValue\"\n [value]=\"item?.value\"\n [id]=\"item?.value+'Option'\"\n (dblclick)=\"moveAvailableItemToSelected(item)\">{{item?.text}}</option>\n </select>\n </div>\n <div class=\"col-md-2 col-lg-2 col-sm-12 center-block text-center\">\n <button type=\"button\"\n class=\"btn btn-primary col-md-8 col-md-offset-2 atr top80 sm-spacing\"\n [disabled]=\"listBoxForm.disabled\"\n [id]=\"idField+'MoveAllBtn'\"\n *ngIf=\"moveAllButton\" (click)=\"moveAllItemsToSelected()\">\n <span class=\"bi bi-list-task\"></span>\n <span class=\"bi bi-chevron-right\"></span>\n </button>\n <button type=\"button\"\n class=\"btn btn-primary col-md-8 col-md-offset-2 str vertical-spacing-5 sm-spacing\"\n [disabled]=\"listBoxForm.disabled || !availableListBoxControl.value?.length\"\n [id]=\"idField+'MoveOneBtn'\"\n (click)=\"moveMarkedAvailableItemsToSelected()\">\n <span class=\"bi bi-chevron-right\"></span>\n </button>\n <button type=\"button\"\n class=\"btn btn-primary col-md-8 col-md-offset-2 stl vertical-spacing-5 sm-spacing\"\n [disabled]=\"listBoxForm.disabled || !selectedListBoxControl.value?.length\"\n [id]=\"idField+'MoveOneLeftBtn'\"\n (click)=\"moveMarkedSelectedItemsToAvailable()\">\n <span class=\"bi bi-chevron-left\"></span>\n </button>\n <button type=\"button\"\n class=\"btn btn-primary col-md-8 col-md-offset-2 atl bottom10 sm-spacing\"\n [disabled]=\"listBoxForm.disabled\"\n [id]=\"idField+'MoveAllLeftBtn'\"\n *ngIf=\"moveAllButton\" (click)=\"moveAllItemsToAvailable()\">\n <span class=\"bi bi-chevron-left\"></span>\n <span class=\"bi bi-list-task\"></span>\n </button>\n </div>\n <div class=\"col-md-5 col-lg-5 col-sm-12\">\n <h4 class=\"text-center vertical-spacing-5\">{{selectedText}}</h4>\n <input type=\"text\" class=\"form-control vertical-spacing-5\" placeholder=\"{{selectedFilterPlaceholder}}\"\n formControlName=\"selectedSearchInput\" />\n <select class=\"form-control list-box\" formControlName=\"selectedListBox\" multiple [size]=\"listSize\">\n <option *ngFor=\"let item of selectedItems | arrayFilter:['text', searchTermSelected] | arraySort:[sortBy, 'ASC'];trackBy:trackByValue\"\n [value]=\"item?.value\"\n (dblclick)=\"moveSelectedItemToAvailable(item)\">{{item?.text}}</option>\n </select>\n </div>\n</div>\n", styles: [".list-box{min-height:200px;width:100%}.top100{margin-top:100px}.top80{margin-top:80px}.bottom10{margin-bottom:10px}.vertical-spacing-5{margin-top:5px;margin-bottom:5px}.center-block{min-height:50px}@media only screen and (max-width : 768px){.sm-spacing{margin-top:10px;margin-bottom:10px}}@media only screen and (min-width : 768px) and (max-width : 992px){.sm-spacing{margin-top:10px;margin-bottom:10px}}@media only screen and (max-width : 480px){.sm-spacing{margin-top:10px;margin-bottom:10px}}\n"] }]
|
|
6658
|
+
}], template: "<div class=\"row\" [formGroup]=\"listBoxForm\">\n <div class=\"col-md-5 col-lg-5 col-sm-12\">\n <h4 class=\"text-center vertical-spacing-5\">{{availableText}}</h4>\n <input type=\"text\" class=\"form-control vertical-spacing-5\" placeholder=\"{{availableFilterPlaceholder}}\"\n formControlName=\"availableSearchInput\" />\n <select class=\"form-control list-box\" formControlName=\"availableListBox\" multiple [size]=\"listSize\">\n <option *ngFor=\"let item of availableItems | arrayFilter:['text', searchTermAvailable] | arraySort:[sortBy, 'ASC'];trackBy:trackByValue\"\n [value]=\"item?.value\"\n [id]=\"item?.value+'Option'\"\n (dblclick)=\"moveAvailableItemToSelected(item)\">{{item?.text}}</option>\n </select>\n </div>\n <div class=\"col-md-2 col-lg-2 col-sm-12 center-block text-center\">\n <button type=\"button\"\n class=\"btn btn-primary col-md-8 col-md-offset-2 atr top80 sm-spacing\"\n [disabled]=\"listBoxForm.disabled\"\n [id]=\"idField+'MoveAllBtn'\"\n *ngIf=\"moveAllButton\" (click)=\"moveAllItemsToSelected()\" aria-label=\"Move All Items To Selected\">\n <span class=\"bi bi-list-task\"></span>\n <span class=\"bi bi-chevron-right\"></span>\n </button>\n <button type=\"button\"\n class=\"btn btn-primary col-md-8 col-md-offset-2 str vertical-spacing-5 sm-spacing\"\n [disabled]=\"listBoxForm.disabled || !availableListBoxControl.value?.length\"\n [id]=\"idField+'MoveOneBtn'\"\n (click)=\"moveMarkedAvailableItemsToSelected()\" aria-label=\"Move Marked Available Items To Selected\">\n <span class=\"bi bi-chevron-right\"></span>\n </button>\n <button type=\"button\"\n class=\"btn btn-primary col-md-8 col-md-offset-2 stl vertical-spacing-5 sm-spacing\"\n [disabled]=\"listBoxForm.disabled || !selectedListBoxControl.value?.length\"\n [id]=\"idField+'MoveOneLeftBtn'\"\n (click)=\"moveMarkedSelectedItemsToAvailable()\" aria-label=\"Move Marked Selected Items To Available\">\n <span class=\"bi bi-chevron-left\"></span>\n </button>\n <button type=\"button\"\n class=\"btn btn-primary col-md-8 col-md-offset-2 atl bottom10 sm-spacing\"\n [disabled]=\"listBoxForm.disabled\"\n [id]=\"idField+'MoveAllLeftBtn'\"\n *ngIf=\"moveAllButton\" (click)=\"moveAllItemsToAvailable()\" aria-label=\"Move All Items To Available\">\n <span class=\"bi bi-chevron-left\"></span>\n <span class=\"bi bi-list-task\"></span>\n </button>\n </div>\n <div class=\"col-md-5 col-lg-5 col-sm-12\">\n <h4 class=\"text-center vertical-spacing-5\">{{selectedText}}</h4>\n <input type=\"text\" class=\"form-control vertical-spacing-5\" placeholder=\"{{selectedFilterPlaceholder}}\"\n formControlName=\"selectedSearchInput\" />\n <select class=\"form-control list-box\" formControlName=\"selectedListBox\" multiple [size]=\"listSize\">\n <option *ngFor=\"let item of selectedItems | arrayFilter:['text', searchTermSelected] | arraySort:[sortBy, 'ASC'];trackBy:trackByValue\"\n [value]=\"item?.value\"\n (dblclick)=\"moveSelectedItemToAvailable(item)\">{{item?.text}}</option>\n </select>\n </div>\n</div>\n", styles: [".list-box{min-height:200px;width:100%}.top100{margin-top:100px}.top80{margin-top:80px}.bottom10{margin-bottom:10px}.vertical-spacing-5{margin-top:5px;margin-bottom:5px}.center-block{min-height:50px}@media only screen and (max-width : 768px){.sm-spacing{margin-top:10px;margin-bottom:10px}}@media only screen and (min-width : 768px) and (max-width : 992px){.sm-spacing{margin-top:10px;margin-bottom:10px}}@media only screen and (max-width : 480px){.sm-spacing{margin-top:10px;margin-bottom:10px}}\n"] }]
|
|
6630
6659
|
}], ctorParameters: () => [{ type: i1$2.FormBuilder }, { type: i2$2.ToastrService }], propDecorators: { available: [{
|
|
6631
6660
|
type: Input
|
|
6632
6661
|
}], selected: [{
|
|
@@ -6774,11 +6803,11 @@ class LynxImageUploadComponent {
|
|
|
6774
6803
|
});
|
|
6775
6804
|
}
|
|
6776
6805
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LynxImageUploadComponent, deps: [{ token: i1$1.OepaComponentIdService }, { token: i2$1.BsModalService }, { token: i1$1.OepaFileUtilService }], target: i0.ɵɵFactoryTarget.Component });
|
|
6777
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LynxImageUploadComponent, selector: "oepa-lynx-image-upload", inputs: { group: "group", field: "field", projectID: "projectID", label: "label", errorLabel: "errorLabel", image: "image", showValidation: "showValidation", required: "required", accept: "accept", imageBlobUrl: "imageBlobUrl" }, outputs: { onImageUpload: "onImageUpload", onImageRemove: "onImageRemove", onImageDownload: "onImageDownload" }, ngImport: i0, template: "<form [formGroup]=\"group\">\n <div *ngIf=\"!imageBlobUrl\">\n <label class=\"btn btn-primary btn-file\">\n Browse…\n <input type=\"file\" style=\"display: none;\" (change)=\"fileChange($event)\" \n [id]=\"componentId+'_BrowseBtn'\" [name]=\"componentId+'_BrowseBtn'\" class=\"form-control\"\n [attr.accept]=\"accept ? accept : null\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\">\n </label>\n <span> Click the button on the left to upload an image from your computer.</span>\n </div>\n <div *ngIf=\"imageBlobUrl\">\n <div class=\"row\">\n <div class=\"col-sm-12\">\n <img [src]=\"imageBlobUrl\" [id]=\"componentId+'_Image'\" width=\"200\">\n </div>\n <br/>\n <div class=\"col-sm-12\">\n <label>{{image.userFilename}}</label>\n </div>\n <div class=\"col-sm-12\">\n <button type=\"button\" class=\"btn btn-primary\" [id]=\"componentId+'_RemoveImageBtn'\" [name]=\"componentId+'_RemoveImageBtn'\"\n (click)=\"removeImage()\" [disabled]=\"group.controls[field].status === 'DISABLED'\">Remove Image</button>\n </div>\n </div>\n </div>\n <div *ngIf=\"errorMessage\" class=\"alert alert-danger\">{{errorMessage}}</div>\n</form>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }] });
|
|
6806
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LynxImageUploadComponent, selector: "oepa-lynx-image-upload", inputs: { group: "group", field: "field", projectID: "projectID", label: "label", errorLabel: "errorLabel", image: "image", showValidation: "showValidation", required: "required", accept: "accept", imageBlobUrl: "imageBlobUrl" }, outputs: { onImageUpload: "onImageUpload", onImageRemove: "onImageRemove", onImageDownload: "onImageDownload" }, ngImport: i0, template: "<form [formGroup]=\"group\">\n <div *ngIf=\"!imageBlobUrl\">\n <label class=\"btn btn-primary btn-file\">\n Browse…\n <input type=\"file\" style=\"display: none;\" (change)=\"fileChange($event)\" \n [id]=\"componentId+'_BrowseBtn'\" [name]=\"componentId+'_BrowseBtn'\" class=\"form-control\"\n [attr.accept]=\"accept ? accept : null\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\">\n </label>\n <span> Click the button on the left to upload an image from your computer.</span>\n </div>\n <div *ngIf=\"imageBlobUrl\">\n <div class=\"row\">\n <div class=\"col-sm-12\">\n <img [src]=\"imageBlobUrl\" [id]=\"componentId+'_Image'\" width=\"200\">\n </div>\n <br/>\n <div class=\"col-sm-12\">\n <label>{{image.userFilename}}</label>\n </div>\n <div class=\"col-sm-12\">\n <button type=\"button\" class=\"btn btn-primary\" [id]=\"componentId+'_RemoveImageBtn'\" [name]=\"componentId+'_RemoveImageBtn'\"\n (click)=\"removeImage()\" [disabled]=\"group.controls[field].status === 'DISABLED'\" aria-label=\"Remove Image\">Remove Image</button>\n </div>\n </div>\n </div>\n <div *ngIf=\"errorMessage\" class=\"alert alert-danger\">{{errorMessage}}</div>\n</form>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }] });
|
|
6778
6807
|
}
|
|
6779
6808
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LynxImageUploadComponent, decorators: [{
|
|
6780
6809
|
type: Component,
|
|
6781
|
-
args: [{ selector: 'oepa-lynx-image-upload', template: "<form [formGroup]=\"group\">\n <div *ngIf=\"!imageBlobUrl\">\n <label class=\"btn btn-primary btn-file\">\n Browse…\n <input type=\"file\" style=\"display: none;\" (change)=\"fileChange($event)\" \n [id]=\"componentId+'_BrowseBtn'\" [name]=\"componentId+'_BrowseBtn'\" class=\"form-control\"\n [attr.accept]=\"accept ? accept : null\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\">\n </label>\n <span> Click the button on the left to upload an image from your computer.</span>\n </div>\n <div *ngIf=\"imageBlobUrl\">\n <div class=\"row\">\n <div class=\"col-sm-12\">\n <img [src]=\"imageBlobUrl\" [id]=\"componentId+'_Image'\" width=\"200\">\n </div>\n <br/>\n <div class=\"col-sm-12\">\n <label>{{image.userFilename}}</label>\n </div>\n <div class=\"col-sm-12\">\n <button type=\"button\" class=\"btn btn-primary\" [id]=\"componentId+'_RemoveImageBtn'\" [name]=\"componentId+'_RemoveImageBtn'\"\n (click)=\"removeImage()\" [disabled]=\"group.controls[field].status === 'DISABLED'\">Remove Image</button>\n </div>\n </div>\n </div>\n <div *ngIf=\"errorMessage\" class=\"alert alert-danger\">{{errorMessage}}</div>\n</form>" }]
|
|
6810
|
+
args: [{ selector: 'oepa-lynx-image-upload', template: "<form [formGroup]=\"group\">\n <div *ngIf=\"!imageBlobUrl\">\n <label class=\"btn btn-primary btn-file\">\n Browse…\n <input type=\"file\" style=\"display: none;\" (change)=\"fileChange($event)\" \n [id]=\"componentId+'_BrowseBtn'\" [name]=\"componentId+'_BrowseBtn'\" class=\"form-control\"\n [attr.accept]=\"accept ? accept : null\"\n [disabled]=\"group.controls[field].status === 'DISABLED'\">\n </label>\n <span> Click the button on the left to upload an image from your computer.</span>\n </div>\n <div *ngIf=\"imageBlobUrl\">\n <div class=\"row\">\n <div class=\"col-sm-12\">\n <img [src]=\"imageBlobUrl\" [id]=\"componentId+'_Image'\" width=\"200\">\n </div>\n <br/>\n <div class=\"col-sm-12\">\n <label>{{image.userFilename}}</label>\n </div>\n <div class=\"col-sm-12\">\n <button type=\"button\" class=\"btn btn-primary\" [id]=\"componentId+'_RemoveImageBtn'\" [name]=\"componentId+'_RemoveImageBtn'\"\n (click)=\"removeImage()\" [disabled]=\"group.controls[field].status === 'DISABLED'\" aria-label=\"Remove Image\">Remove Image</button>\n </div>\n </div>\n </div>\n <div *ngIf=\"errorMessage\" class=\"alert alert-danger\">{{errorMessage}}</div>\n</form>" }]
|
|
6782
6811
|
}], ctorParameters: () => [{ type: i1$1.OepaComponentIdService }, { type: i2$1.BsModalService }, { type: i1$1.OepaFileUtilService }], propDecorators: { group: [{
|
|
6783
6812
|
type: Input
|
|
6784
6813
|
}], field: [{
|
|
@@ -6900,7 +6929,7 @@ class NotesModalComponent {
|
|
|
6900
6929
|
// only display delete action if note can be deleted
|
|
6901
6930
|
if ((this.deleteAnyNoteAllowed || (this.deleteOwnNoteAllowed && this.loginName === note.user)) && note.type?.code !== 'System') {
|
|
6902
6931
|
row.actions = [
|
|
6903
|
-
{ title: 'Delete', className: '
|
|
6932
|
+
{ title: 'Delete', className: 'bi bi-x-lg' }
|
|
6904
6933
|
];
|
|
6905
6934
|
}
|
|
6906
6935
|
else {
|
|
@@ -6948,11 +6977,11 @@ class NotesModalComponent {
|
|
|
6948
6977
|
this.bsModalRef.hide();
|
|
6949
6978
|
}
|
|
6950
6979
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NotesModalComponent, deps: [{ token: i1$2.FormBuilder }, { token: i2$1.BsModalRef }, { token: i2$1.BsModalService }, { token: i1$1.OepaMappingService }], target: i0.ɵɵFactoryTarget.Component });
|
|
6951
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: NotesModalComponent, selector: "oepa-notes-modal", inputs: { loginName: "loginName", deleteAnyNoteAllowed: "deleteAnyNoteAllowed", deleteOwnNoteAllowed: "deleteOwnNoteAllowed", createNoteAllowed: "createNoteAllowed", external: "external", errorMessage: "errorMessage", notes: "notes", defaultNoteType: "defaultNoteType" }, outputs: { onAddNote: "onAddNote", onDeleteNote: "onDeleteNote" }, ngImport: i0, template: "<div class=\"modal-header\">\n\t<h3 class=\"modal-title\">Notes</h3>\n</div>\n\n<div class=\"modal-body\">\n\t\n <div *ngIf=\"errorMessage\">\n\t\t<div class=\"alert alert-danger\" role=\"alert\">{{ errorMessage }}</div>\n </div>\n\n <div *ngIf=\"data.length === 0\" class=\"alert alert-info text-center\"><em>There are no notes defined.</em></div>\n\n <oepa-table [config]=\"tblConfig\" [data]=\"data\" [header]=\"header\" (actionClicked)=\"noteActionClicked($event)\"></oepa-table>\n\n \t\n\t<form *ngIf=\"createNoteAllowed\" class=\"form-horizontal\">\n \n <hr>\n\t\n <div [formGroup]=\"newNoteForm\" class=\"form-group\">\n\n <div class=\"row\">\n <label class=\"col-sm-2 control-label\">Type:</label>\n <div class=\"col-sm-10\">\n <span class=\"form-control\" id=\"NoteTypeText\">{{newNoteType.name}}</span>\n </div>\n </div>\n\n <div class=\"row\">\n <label class=\"col-sm-12 control-label\"></label> \n </div>\n\n <div class=\"row\">\n <label class=\"col-sm-2 control-label\">Note:</label>\n <div class=\"col-sm-10\">\n <input class=\"form-control\" type=\"input\" formControlName=\"newNoteText\" id=\"NoteInput\" maxlength=\"2000\"/>\n </div>\n </div>\n\n <div class=\"row\">\n <label class=\"col-sm-12 control-label\"></label> \n </div>\n\n <div class=\"row\">\n <label class=\"col-sm-2 control-label\"></label>\n <div class=\"col-sm-10\">\n <span *ngIf=\"isCreating\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"!isCreating\" class=\"btn btn-primary mr-1\" id=\"AddNoteBtn\" (click)=\"createNote()\" [disabled]=\"newNoteForm.invalid\">\n <span>Add Note</span>\n </button>\n </div>\n </div>\n\n\n </div> \n </form> <!-- form -->\n \n</div>\n\t\n<div class=\"modal-footer\">\n\t<button class=\"btn btn-primary mr-1\" id=\"DoneBtn\" (click)=\"done()\">Done</button>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: TableComponent, selector: "oepa-table", inputs: ["tableId", "config", "complexHeader", "header", "customBtnLabel", "customBtnVisible", "customBtnEnabled", "data", "totalRow"], outputs: ["cellClicked", "actionClicked", "rowSelected", "customBtnClicked"] }] });
|
|
6980
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: NotesModalComponent, selector: "oepa-notes-modal", inputs: { loginName: "loginName", deleteAnyNoteAllowed: "deleteAnyNoteAllowed", deleteOwnNoteAllowed: "deleteOwnNoteAllowed", createNoteAllowed: "createNoteAllowed", external: "external", errorMessage: "errorMessage", notes: "notes", defaultNoteType: "defaultNoteType" }, outputs: { onAddNote: "onAddNote", onDeleteNote: "onDeleteNote" }, ngImport: i0, template: "<div class=\"modal-header\">\n\t<h3 class=\"modal-title\">Notes</h3>\n</div>\n\n<div class=\"modal-body\">\n\t\n <div *ngIf=\"errorMessage\">\n\t\t<div class=\"alert alert-danger\" role=\"alert\">{{ errorMessage }}</div>\n </div>\n\n <div *ngIf=\"data.length === 0\" class=\"alert alert-info text-center\"><em>There are no notes defined.</em></div>\n\n <oepa-table [config]=\"tblConfig\" [data]=\"data\" [header]=\"header\" (actionClicked)=\"noteActionClicked($event)\"></oepa-table>\n\n \t\n\t<form *ngIf=\"createNoteAllowed\" class=\"form-horizontal\">\n \n <hr>\n\t\n <div [formGroup]=\"newNoteForm\" class=\"form-group\">\n\n <div class=\"row\">\n <label class=\"col-sm-2 control-label\">Type:</label>\n <div class=\"col-sm-10\">\n <span class=\"form-control\" id=\"NoteTypeText\">{{newNoteType.name}}</span>\n </div>\n </div>\n\n <div class=\"row\">\n <label class=\"col-sm-12 control-label\"></label> \n </div>\n\n <div class=\"row\">\n <label class=\"col-sm-2 control-label\" for=\"NoteInput\">Note:</label>\n <div class=\"col-sm-10\">\n <input class=\"form-control\" type=\"input\" formControlName=\"newNoteText\" id=\"NoteInput\" maxlength=\"2000\"/>\n </div>\n </div>\n\n <div class=\"row\">\n <label class=\"col-sm-12 control-label\"></label> \n </div>\n\n <div class=\"row\">\n <label class=\"col-sm-2 control-label\"></label>\n <div class=\"col-sm-10\">\n <span *ngIf=\"isCreating\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"!isCreating\" class=\"btn btn-primary mr-1\" id=\"AddNoteBtn\" (click)=\"createNote()\" [disabled]=\"newNoteForm.invalid\" aria-label=\"Add Note\">\n <span>Add Note</span>\n </button>\n </div>\n </div>\n\n\n </div> \n </form> <!-- form -->\n \n</div>\n\t\n<div class=\"modal-footer\">\n\t<button class=\"btn btn-primary mr-1\" id=\"DoneBtn\" (click)=\"done()\" aria-label=\"Done\">Done</button>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: TableComponent, selector: "oepa-table", inputs: ["tableId", "config", "complexHeader", "header", "customBtnLabel", "customBtnVisible", "customBtnEnabled", "data", "totalRow"], outputs: ["cellClicked", "actionClicked", "rowSelected", "customBtnClicked"] }] });
|
|
6952
6981
|
}
|
|
6953
6982
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NotesModalComponent, decorators: [{
|
|
6954
6983
|
type: Component,
|
|
6955
|
-
args: [{ selector: 'oepa-notes-modal', template: "<div class=\"modal-header\">\n\t<h3 class=\"modal-title\">Notes</h3>\n</div>\n\n<div class=\"modal-body\">\n\t\n <div *ngIf=\"errorMessage\">\n\t\t<div class=\"alert alert-danger\" role=\"alert\">{{ errorMessage }}</div>\n </div>\n\n <div *ngIf=\"data.length === 0\" class=\"alert alert-info text-center\"><em>There are no notes defined.</em></div>\n\n <oepa-table [config]=\"tblConfig\" [data]=\"data\" [header]=\"header\" (actionClicked)=\"noteActionClicked($event)\"></oepa-table>\n\n \t\n\t<form *ngIf=\"createNoteAllowed\" class=\"form-horizontal\">\n \n <hr>\n\t\n <div [formGroup]=\"newNoteForm\" class=\"form-group\">\n\n <div class=\"row\">\n <label class=\"col-sm-2 control-label\">Type:</label>\n <div class=\"col-sm-10\">\n <span class=\"form-control\" id=\"NoteTypeText\">{{newNoteType.name}}</span>\n </div>\n </div>\n\n <div class=\"row\">\n <label class=\"col-sm-12 control-label\"></label> \n </div>\n\n <div class=\"row\">\n <label class=\"col-sm-2 control-label\">Note:</label>\n <div class=\"col-sm-10\">\n <input class=\"form-control\" type=\"input\" formControlName=\"newNoteText\" id=\"NoteInput\" maxlength=\"2000\"/>\n </div>\n </div>\n\n <div class=\"row\">\n <label class=\"col-sm-12 control-label\"></label> \n </div>\n\n <div class=\"row\">\n <label class=\"col-sm-2 control-label\"></label>\n <div class=\"col-sm-10\">\n <span *ngIf=\"isCreating\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"!isCreating\" class=\"btn btn-primary mr-1\" id=\"AddNoteBtn\" (click)=\"createNote()\" [disabled]=\"newNoteForm.invalid\">\n <span>Add Note</span>\n </button>\n </div>\n </div>\n\n\n </div> \n </form> <!-- form -->\n \n</div>\n\t\n<div class=\"modal-footer\">\n\t<button class=\"btn btn-primary mr-1\" id=\"DoneBtn\" (click)=\"done()\">Done</button>\n</div>\n" }]
|
|
6984
|
+
args: [{ selector: 'oepa-notes-modal', template: "<div class=\"modal-header\">\n\t<h3 class=\"modal-title\">Notes</h3>\n</div>\n\n<div class=\"modal-body\">\n\t\n <div *ngIf=\"errorMessage\">\n\t\t<div class=\"alert alert-danger\" role=\"alert\">{{ errorMessage }}</div>\n </div>\n\n <div *ngIf=\"data.length === 0\" class=\"alert alert-info text-center\"><em>There are no notes defined.</em></div>\n\n <oepa-table [config]=\"tblConfig\" [data]=\"data\" [header]=\"header\" (actionClicked)=\"noteActionClicked($event)\"></oepa-table>\n\n \t\n\t<form *ngIf=\"createNoteAllowed\" class=\"form-horizontal\">\n \n <hr>\n\t\n <div [formGroup]=\"newNoteForm\" class=\"form-group\">\n\n <div class=\"row\">\n <label class=\"col-sm-2 control-label\">Type:</label>\n <div class=\"col-sm-10\">\n <span class=\"form-control\" id=\"NoteTypeText\">{{newNoteType.name}}</span>\n </div>\n </div>\n\n <div class=\"row\">\n <label class=\"col-sm-12 control-label\"></label> \n </div>\n\n <div class=\"row\">\n <label class=\"col-sm-2 control-label\" for=\"NoteInput\">Note:</label>\n <div class=\"col-sm-10\">\n <input class=\"form-control\" type=\"input\" formControlName=\"newNoteText\" id=\"NoteInput\" maxlength=\"2000\"/>\n </div>\n </div>\n\n <div class=\"row\">\n <label class=\"col-sm-12 control-label\"></label> \n </div>\n\n <div class=\"row\">\n <label class=\"col-sm-2 control-label\"></label>\n <div class=\"col-sm-10\">\n <span *ngIf=\"isCreating\"><span class=\"spinner-border text-primary\" role=\"status\"></span></span>\n <button *ngIf=\"!isCreating\" class=\"btn btn-primary mr-1\" id=\"AddNoteBtn\" (click)=\"createNote()\" [disabled]=\"newNoteForm.invalid\" aria-label=\"Add Note\">\n <span>Add Note</span>\n </button>\n </div>\n </div>\n\n\n </div> \n </form> <!-- form -->\n \n</div>\n\t\n<div class=\"modal-footer\">\n\t<button class=\"btn btn-primary mr-1\" id=\"DoneBtn\" (click)=\"done()\" aria-label=\"Done\">Done</button>\n</div>\n" }]
|
|
6956
6985
|
}], ctorParameters: () => [{ type: i1$2.FormBuilder }, { type: i2$1.BsModalRef }, { type: i2$1.BsModalService }, { type: i1$1.OepaMappingService }], propDecorators: { loginName: [{
|
|
6957
6986
|
type: Input
|
|
6958
6987
|
}], deleteAnyNoteAllowed: [{
|
|
@@ -7048,10 +7077,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
7048
7077
|
class OepaUserAccountService {
|
|
7049
7078
|
http;
|
|
7050
7079
|
ebizRootURL;
|
|
7080
|
+
app;
|
|
7051
7081
|
hostUrl = '/ebiz';
|
|
7052
7082
|
accountsUrl = '/api/v1/user-accounts';
|
|
7053
|
-
ebizAccountsUrl = '/api/
|
|
7054
|
-
ebizSessionUrl = '/api/
|
|
7083
|
+
ebizAccountsUrl = '/api/v2/accounts';
|
|
7084
|
+
ebizSessionUrl = '/api/v2/session';
|
|
7055
7085
|
account;
|
|
7056
7086
|
personID = '';
|
|
7057
7087
|
sessionID = '';
|
|
@@ -7066,18 +7096,22 @@ class OepaUserAccountService {
|
|
|
7066
7096
|
userAccount$ = new Subject();
|
|
7067
7097
|
sessionID$ = new Subject(); // session ID is used for "backdoor" processing of internal (webapps) accounts
|
|
7068
7098
|
authToken = '';
|
|
7069
|
-
|
|
7099
|
+
params = {};
|
|
7100
|
+
constructor(http, ebizRootURL, app) {
|
|
7070
7101
|
this.http = http;
|
|
7071
7102
|
this.ebizRootURL = ebizRootURL;
|
|
7103
|
+
this.app = app;
|
|
7072
7104
|
this.hostUrl = this.ebizRootURL + this.hostUrl;
|
|
7073
|
-
this.logoutPath = '/jsp/logout.jsp';
|
|
7105
|
+
this.logoutPath = this.ebizRootURL + '/jsp/logout.jsp';
|
|
7106
|
+
this.params = { 'app': this.app };
|
|
7074
7107
|
}
|
|
7075
7108
|
/**
|
|
7076
7109
|
* Retrieve the User Account for the user userid.
|
|
7077
7110
|
* @param userid
|
|
7078
7111
|
*/
|
|
7079
7112
|
retrieveAccountForUser(userid, app) {
|
|
7080
|
-
|
|
7113
|
+
const params = new HttpParams({ encoder: new HttpUrlEncodingCodec() }).set('userid', userid).set('app', app);
|
|
7114
|
+
return this.http.get(this.hostUrl + this.accountsUrl + '/account', { params: params });
|
|
7081
7115
|
}
|
|
7082
7116
|
retrieveAccountByOHID(ohid, app) {
|
|
7083
7117
|
const url = this.hostUrl + this.accountsUrl + '/ohid/' + ohid;
|
|
@@ -7236,10 +7270,13 @@ class OepaUserAccountService {
|
|
|
7236
7270
|
return of(this.ebizVersion);
|
|
7237
7271
|
}
|
|
7238
7272
|
else {
|
|
7239
|
-
const url = this.hostUrl + '/api/v1/gateway/
|
|
7240
|
-
return this.http.get(url, { params: { 'app': app } }).pipe(map((
|
|
7241
|
-
if (
|
|
7242
|
-
this.ebizVersion =
|
|
7273
|
+
const url = this.hostUrl + '/api/v1/gateway/version';
|
|
7274
|
+
return this.http.get(url, { params: { 'app': app } }).pipe(map((version) => {
|
|
7275
|
+
if (version && version.response) {
|
|
7276
|
+
this.ebizVersion = version.response;
|
|
7277
|
+
}
|
|
7278
|
+
else {
|
|
7279
|
+
this.ebizVersion = 'unknown';
|
|
7243
7280
|
}
|
|
7244
7281
|
return this.ebizVersion;
|
|
7245
7282
|
}));
|
|
@@ -7252,7 +7289,7 @@ class OepaUserAccountService {
|
|
|
7252
7289
|
*/
|
|
7253
7290
|
searchPrivileges(programPrivilegeRequest, altUserID) {
|
|
7254
7291
|
const url = this.hostUrl + this.ebizAccountsUrl + '/programPrivileges/search' + (altUserID ? '?userid=' + altUserID : '');
|
|
7255
|
-
return this.http.post(url, programPrivilegeRequest);
|
|
7292
|
+
return this.http.post(url, programPrivilegeRequest, { params: this.params });
|
|
7256
7293
|
}
|
|
7257
7294
|
/**
|
|
7258
7295
|
* Create a new ProgramPrivilege based on contents of ProgramPrivilegeRequest.
|
|
@@ -7260,7 +7297,7 @@ class OepaUserAccountService {
|
|
|
7260
7297
|
* @returns Observable<ProgramPrivilege?
|
|
7261
7298
|
*/
|
|
7262
7299
|
createProgramPrivilege(programPrivilegeRequest, altUserID) {
|
|
7263
|
-
return this.http.post(this.hostUrl + this.ebizAccountsUrl + '/programPrivileges' + (altUserID ? '?userid=' + altUserID : ''), programPrivilegeRequest);
|
|
7300
|
+
return this.http.post(this.hostUrl + this.ebizAccountsUrl + '/programPrivileges' + (altUserID ? '?userid=' + altUserID : ''), programPrivilegeRequest, { params: this.params });
|
|
7264
7301
|
}
|
|
7265
7302
|
/**
|
|
7266
7303
|
* Delete the ProgramPrivilege identified by programPrivilegeID.
|
|
@@ -7268,7 +7305,7 @@ class OepaUserAccountService {
|
|
|
7268
7305
|
* @returns Observable<void>
|
|
7269
7306
|
*/
|
|
7270
7307
|
deleteProgramPrivilege(programPrivilegeID, altUserID) {
|
|
7271
|
-
return this.http.delete(this.hostUrl + this.ebizAccountsUrl + '/programPrivileges/' + programPrivilegeID + (altUserID ? '?userid=' + altUserID : ''), { responseType: 'text' });
|
|
7308
|
+
return this.http.delete(this.hostUrl + this.ebizAccountsUrl + '/programPrivileges/' + programPrivilegeID + (altUserID ? '?userid=' + altUserID : ''), { responseType: 'text', params: this.params });
|
|
7272
7309
|
}
|
|
7273
7310
|
/**
|
|
7274
7311
|
* Delegate a program privilege based on information in delegation.
|
|
@@ -7276,7 +7313,7 @@ class OepaUserAccountService {
|
|
|
7276
7313
|
* @returns Observable<void>
|
|
7277
7314
|
*/
|
|
7278
7315
|
delegateProgramPrivilege(delegation, altUserID) {
|
|
7279
|
-
return this.http.post(this.hostUrl + this.ebizAccountsUrl + '/programPrivileges/delegation' + (altUserID ? '?userid=' + altUserID : ''), delegation, { responseType: 'text' });
|
|
7316
|
+
return this.http.post(this.hostUrl + this.ebizAccountsUrl + '/programPrivileges/delegation' + (altUserID ? '?userid=' + altUserID : ''), delegation, { responseType: 'text', params: this.params });
|
|
7280
7317
|
}
|
|
7281
7318
|
/**
|
|
7282
7319
|
* ===========================================================================================================================
|
|
@@ -7290,7 +7327,7 @@ class OepaUserAccountService {
|
|
|
7290
7327
|
setLiveReloadUser(userAccount) {
|
|
7291
7328
|
this.account = userAccount;
|
|
7292
7329
|
console.log('setLiveReloadUser: ' + this.account?.loginName || '<unknown>');
|
|
7293
|
-
return this.http.post(this.hostUrl + this.ebizAccountsUrl + '/liveReload', userAccount);
|
|
7330
|
+
return this.http.post(this.hostUrl + this.ebizAccountsUrl + '/liveReload', userAccount, { params: this.params });
|
|
7294
7331
|
}
|
|
7295
7332
|
/**
|
|
7296
7333
|
* Stores the given user in the eBiz session.
|
|
@@ -7299,7 +7336,7 @@ class OepaUserAccountService {
|
|
|
7299
7336
|
storeUserInSession(accountUserID) {
|
|
7300
7337
|
let acct = {};
|
|
7301
7338
|
acct.accountID = accountUserID;
|
|
7302
|
-
return this.http.post(this.hostUrl + this.ebizSessionUrl + '/storeUser/' + accountUserID, null);
|
|
7339
|
+
return this.http.post(this.hostUrl + this.ebizSessionUrl + '/storeUser/' + accountUserID, null, { params: this.params });
|
|
7303
7340
|
}
|
|
7304
7341
|
/**
|
|
7305
7342
|
* See if the current user should be allowed to see "demo" capabilities
|
|
@@ -7360,16 +7397,22 @@ class OepaUserAccountService {
|
|
|
7360
7397
|
response: message
|
|
7361
7398
|
};
|
|
7362
7399
|
const url = this.hostUrl + '/api/v1/userAccounts/logs/message';
|
|
7363
|
-
return this.http.post(url, messageResponse);
|
|
7400
|
+
return this.http.post(url, messageResponse, { params: this.params });
|
|
7364
7401
|
}
|
|
7365
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OepaUserAccountService, deps: [{ token: i1.HttpClient }, { token: 'ebizRootURL' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
7366
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OepaUserAccountService });
|
|
7402
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OepaUserAccountService, deps: [{ token: i1.HttpClient }, { token: 'ebizRootURL' }, { token: 'app' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
7403
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OepaUserAccountService, providedIn: 'root' });
|
|
7367
7404
|
}
|
|
7368
7405
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OepaUserAccountService, decorators: [{
|
|
7369
|
-
type: Injectable
|
|
7406
|
+
type: Injectable,
|
|
7407
|
+
args: [{
|
|
7408
|
+
providedIn: 'root'
|
|
7409
|
+
}]
|
|
7370
7410
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
|
|
7371
7411
|
type: Inject,
|
|
7372
7412
|
args: ['ebizRootURL']
|
|
7413
|
+
}] }, { type: undefined, decorators: [{
|
|
7414
|
+
type: Inject,
|
|
7415
|
+
args: ['app']
|
|
7373
7416
|
}] }] });
|
|
7374
7417
|
|
|
7375
7418
|
class OepaPinService {
|
|
@@ -7596,11 +7639,11 @@ class PinModalComponent {
|
|
|
7596
7639
|
});
|
|
7597
7640
|
}
|
|
7598
7641
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PinModalComponent, deps: [{ token: OepaUserAccountService }, { token: i1$2.FormBuilder }, { token: OepaPinService }, { token: i2$1.BsModalRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
7599
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: PinModalComponent, selector: "oepa-pin-modal", inputs: { attestationID: "attestationID", submitCallback: "submitCallback", submittingComponent: "submittingComponent", app: "app" }, outputs: { close: "close" }, ngImport: i0, template: "<form [formGroup]=\"oepaSubmissionForm\">\n <div class=\"modal-body\">\n\n <div [hidden]=\"noPin\">\n <div class=\"card-header\">\n <div class=\"row\" *ngIf=\"pinAttestation.text\">\n <div class=\"col-md-12\">\n <div class=\"well\" [innerHTML]=\"pinAttestation.text\"></div>\n </div>\n </div>\n </div>\n <br>\n <div class=\"card-header\" *ngIf=\"serviceAttestation\">\n <div class=\"row\" *ngIf=\"serviceAttestation.text\">\n <div class=\"col-md-12\">\n <div class=\"well\" [innerHTML]=\"serviceAttestation.text\">\"</div>\n </div>\n </div>\n </div>\n </div>\n <br>\n\n <div class=\"row\" *ngIf=\"loadingAttestations\">\n <div class=\"col-md-12\">\n <div class=\"alert alert-info\">\n <span class=\"spinner-border text-primary\" role=\"status\"></span> Loading PIN information...\n </div>\n </div>\n </div>\n\n <div [hidden]=\"loadingAttestations || noPin\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label style=\"padding: 5px;\"><b>Security Question:</b></label>\n <label>{{securityQuestion.question}}</label>\n <div>\n <input [ngClass]=\"{'is-invalid':showValidation && !oepaSubmissionForm.controls['securityAnswer'].valid}\"\n formControlName=\"securityAnswer\" type=\"password\" class=\"form-control\" name=\"securityAnswer\" placeholder=\"Answer\" required>\n <small class=\"invalid-feedback\" *ngIf=\"showValidation && !oepaSubmissionForm.controls['securityAnswer'].valid\">Answer to security question is required</small>\n </div>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label><b>PIN: </b></label>\n <div>\n <input [ngClass]=\"{'is-invalid':showValidation && !oepaSubmissionForm.controls['securityPIN'].valid}\"\n formControlName=\"securityPIN\" type=\"password\" class=\"form-control\" name=\"securityPIN\" placeholder=\"PIN\" required>\n <small class=\"invalid-feedback\" *ngIf=\"showValidation && !oepaSubmissionForm.controls['securityPIN'].valid\">A valid PIN is required</small>\n </div>\n </div>\n </div>\n </div>\n </div>\n \n <div >\n <div class=\"row\">\n <div class=\"col-md-12\">\n <!-- toggle hasPin message -->\n <div *ngIf=\"noPin\">\n <b>Attention:</b> Before you can submit, you first must activate your PIN. Cancel this submission, save the application/report and go back to the main eBusiness Home Page. \n Select <b>MY Account- Request New PIN</b> to get started. <br>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"row\" *ngIf=\"errorMessage\">\n <div class=\"col-md-12\">\n <div class=\"alert alert-danger\" role=\"alert\">{{ errorMessage }}</div>\n </div>\n </div>\n\n </div>\n\n\n <div class=\"modal-footer\">\n <span *ngIf=\"submitInProgress === true\" id=\"wait\"><span class=\"spinner-border text-primary\" role=\"status\"></span>Please wait... </span>\n <button class=\"btn btn-primary mr-1\" (click)=\"submit()\" [disabled]=\"submitInProgress || !oepaSubmissionForm.valid\">Submit</button>\n <button class=\"btn btn-primary mr-1\" (click)=\"cancel()\" [disabled]=\"submitInProgress\">Cancel</button>\n </div>\n\n</form>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
7642
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: PinModalComponent, selector: "oepa-pin-modal", inputs: { attestationID: "attestationID", submitCallback: "submitCallback", submittingComponent: "submittingComponent", app: "app" }, outputs: { close: "close" }, ngImport: i0, template: "<form [formGroup]=\"oepaSubmissionForm\">\n <div class=\"modal-body\">\n\n <div [hidden]=\"noPin\">\n <div class=\"card-header\">\n <div class=\"row\" *ngIf=\"pinAttestation.text\">\n <div class=\"col-md-12\">\n <div class=\"well\" [innerHTML]=\"pinAttestation.text\"></div>\n </div>\n </div>\n </div>\n <br>\n <div class=\"card-header\" *ngIf=\"serviceAttestation\">\n <div class=\"row\" *ngIf=\"serviceAttestation.text\">\n <div class=\"col-md-12\">\n <div class=\"well\" [innerHTML]=\"serviceAttestation.text\">\"</div>\n </div>\n </div>\n </div>\n </div>\n <br>\n\n <div class=\"row\" *ngIf=\"loadingAttestations\">\n <div class=\"col-md-12\">\n <div class=\"alert alert-info\">\n <span class=\"spinner-border text-primary\" role=\"status\"></span> Loading PIN information...\n </div>\n </div>\n </div>\n\n <div [hidden]=\"loadingAttestations || noPin\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label style=\"padding: 5px;\"><b>Security Question:</b></label>\n <label>{{securityQuestion.question}}</label>\n <div>\n <input [ngClass]=\"{'is-invalid':showValidation && !oepaSubmissionForm.controls['securityAnswer'].valid}\"\n formControlName=\"securityAnswer\" type=\"password\" class=\"form-control\" name=\"securityAnswer\" placeholder=\"Answer\" required>\n <small class=\"invalid-feedback\" *ngIf=\"showValidation && !oepaSubmissionForm.controls['securityAnswer'].valid\">Answer to security question is required</small>\n </div>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label><b>PIN: </b></label>\n <div>\n <input [ngClass]=\"{'is-invalid':showValidation && !oepaSubmissionForm.controls['securityPIN'].valid}\"\n formControlName=\"securityPIN\" type=\"password\" class=\"form-control\" name=\"securityPIN\" placeholder=\"PIN\" required>\n <small class=\"invalid-feedback\" *ngIf=\"showValidation && !oepaSubmissionForm.controls['securityPIN'].valid\">A valid PIN is required</small>\n </div>\n </div>\n </div>\n </div>\n </div>\n \n <div >\n <div class=\"row\">\n <div class=\"col-md-12\">\n <!-- toggle hasPin message -->\n <div *ngIf=\"noPin\">\n <b>Attention:</b> Before you can submit, you first must activate your PIN. Cancel this submission, save the application/report and go back to the main eBusiness Home Page. \n Select <b>MY Account- Request New PIN</b> to get started. <br>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"row\" *ngIf=\"errorMessage\">\n <div class=\"col-md-12\">\n <div class=\"alert alert-danger\" role=\"alert\">{{ errorMessage }}</div>\n </div>\n </div>\n\n </div>\n\n\n <div class=\"modal-footer\">\n <span *ngIf=\"submitInProgress === true\" id=\"wait\"><span class=\"spinner-border text-primary\" role=\"status\"></span>Please wait... </span>\n <button class=\"btn btn-primary mr-1\" (click)=\"submit()\" [disabled]=\"submitInProgress || !oepaSubmissionForm.valid\" aria-label=\"Submit\">Submit</button>\n <button class=\"btn btn-primary mr-1\" (click)=\"cancel()\" [disabled]=\"submitInProgress\" aria-label=\"Cancel\">Cancel</button>\n </div>\n\n</form>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.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: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
7600
7643
|
}
|
|
7601
7644
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PinModalComponent, decorators: [{
|
|
7602
7645
|
type: Component,
|
|
7603
|
-
args: [{ selector: 'oepa-pin-modal', template: "<form [formGroup]=\"oepaSubmissionForm\">\n <div class=\"modal-body\">\n\n <div [hidden]=\"noPin\">\n <div class=\"card-header\">\n <div class=\"row\" *ngIf=\"pinAttestation.text\">\n <div class=\"col-md-12\">\n <div class=\"well\" [innerHTML]=\"pinAttestation.text\"></div>\n </div>\n </div>\n </div>\n <br>\n <div class=\"card-header\" *ngIf=\"serviceAttestation\">\n <div class=\"row\" *ngIf=\"serviceAttestation.text\">\n <div class=\"col-md-12\">\n <div class=\"well\" [innerHTML]=\"serviceAttestation.text\">\"</div>\n </div>\n </div>\n </div>\n </div>\n <br>\n\n <div class=\"row\" *ngIf=\"loadingAttestations\">\n <div class=\"col-md-12\">\n <div class=\"alert alert-info\">\n <span class=\"spinner-border text-primary\" role=\"status\"></span> Loading PIN information...\n </div>\n </div>\n </div>\n\n <div [hidden]=\"loadingAttestations || noPin\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label style=\"padding: 5px;\"><b>Security Question:</b></label>\n <label>{{securityQuestion.question}}</label>\n <div>\n <input [ngClass]=\"{'is-invalid':showValidation && !oepaSubmissionForm.controls['securityAnswer'].valid}\"\n formControlName=\"securityAnswer\" type=\"password\" class=\"form-control\" name=\"securityAnswer\" placeholder=\"Answer\" required>\n <small class=\"invalid-feedback\" *ngIf=\"showValidation && !oepaSubmissionForm.controls['securityAnswer'].valid\">Answer to security question is required</small>\n </div>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label><b>PIN: </b></label>\n <div>\n <input [ngClass]=\"{'is-invalid':showValidation && !oepaSubmissionForm.controls['securityPIN'].valid}\"\n formControlName=\"securityPIN\" type=\"password\" class=\"form-control\" name=\"securityPIN\" placeholder=\"PIN\" required>\n <small class=\"invalid-feedback\" *ngIf=\"showValidation && !oepaSubmissionForm.controls['securityPIN'].valid\">A valid PIN is required</small>\n </div>\n </div>\n </div>\n </div>\n </div>\n \n <div >\n <div class=\"row\">\n <div class=\"col-md-12\">\n <!-- toggle hasPin message -->\n <div *ngIf=\"noPin\">\n <b>Attention:</b> Before you can submit, you first must activate your PIN. Cancel this submission, save the application/report and go back to the main eBusiness Home Page. \n Select <b>MY Account- Request New PIN</b> to get started. <br>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"row\" *ngIf=\"errorMessage\">\n <div class=\"col-md-12\">\n <div class=\"alert alert-danger\" role=\"alert\">{{ errorMessage }}</div>\n </div>\n </div>\n\n </div>\n\n\n <div class=\"modal-footer\">\n <span *ngIf=\"submitInProgress === true\" id=\"wait\"><span class=\"spinner-border text-primary\" role=\"status\"></span>Please wait... </span>\n <button class=\"btn btn-primary mr-1\" (click)=\"submit()\" [disabled]=\"submitInProgress || !oepaSubmissionForm.valid\">Submit</button>\n <button class=\"btn btn-primary mr-1\" (click)=\"cancel()\" [disabled]=\"submitInProgress\">Cancel</button>\n </div>\n\n</form>" }]
|
|
7646
|
+
args: [{ selector: 'oepa-pin-modal', template: "<form [formGroup]=\"oepaSubmissionForm\">\n <div class=\"modal-body\">\n\n <div [hidden]=\"noPin\">\n <div class=\"card-header\">\n <div class=\"row\" *ngIf=\"pinAttestation.text\">\n <div class=\"col-md-12\">\n <div class=\"well\" [innerHTML]=\"pinAttestation.text\"></div>\n </div>\n </div>\n </div>\n <br>\n <div class=\"card-header\" *ngIf=\"serviceAttestation\">\n <div class=\"row\" *ngIf=\"serviceAttestation.text\">\n <div class=\"col-md-12\">\n <div class=\"well\" [innerHTML]=\"serviceAttestation.text\">\"</div>\n </div>\n </div>\n </div>\n </div>\n <br>\n\n <div class=\"row\" *ngIf=\"loadingAttestations\">\n <div class=\"col-md-12\">\n <div class=\"alert alert-info\">\n <span class=\"spinner-border text-primary\" role=\"status\"></span> Loading PIN information...\n </div>\n </div>\n </div>\n\n <div [hidden]=\"loadingAttestations || noPin\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label style=\"padding: 5px;\"><b>Security Question:</b></label>\n <label>{{securityQuestion.question}}</label>\n <div>\n <input [ngClass]=\"{'is-invalid':showValidation && !oepaSubmissionForm.controls['securityAnswer'].valid}\"\n formControlName=\"securityAnswer\" type=\"password\" class=\"form-control\" name=\"securityAnswer\" placeholder=\"Answer\" required>\n <small class=\"invalid-feedback\" *ngIf=\"showValidation && !oepaSubmissionForm.controls['securityAnswer'].valid\">Answer to security question is required</small>\n </div>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"form-group\">\n <label><b>PIN: </b></label>\n <div>\n <input [ngClass]=\"{'is-invalid':showValidation && !oepaSubmissionForm.controls['securityPIN'].valid}\"\n formControlName=\"securityPIN\" type=\"password\" class=\"form-control\" name=\"securityPIN\" placeholder=\"PIN\" required>\n <small class=\"invalid-feedback\" *ngIf=\"showValidation && !oepaSubmissionForm.controls['securityPIN'].valid\">A valid PIN is required</small>\n </div>\n </div>\n </div>\n </div>\n </div>\n \n <div >\n <div class=\"row\">\n <div class=\"col-md-12\">\n <!-- toggle hasPin message -->\n <div *ngIf=\"noPin\">\n <b>Attention:</b> Before you can submit, you first must activate your PIN. Cancel this submission, save the application/report and go back to the main eBusiness Home Page. \n Select <b>MY Account- Request New PIN</b> to get started. <br>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"row\" *ngIf=\"errorMessage\">\n <div class=\"col-md-12\">\n <div class=\"alert alert-danger\" role=\"alert\">{{ errorMessage }}</div>\n </div>\n </div>\n\n </div>\n\n\n <div class=\"modal-footer\">\n <span *ngIf=\"submitInProgress === true\" id=\"wait\"><span class=\"spinner-border text-primary\" role=\"status\"></span>Please wait... </span>\n <button class=\"btn btn-primary mr-1\" (click)=\"submit()\" [disabled]=\"submitInProgress || !oepaSubmissionForm.valid\" aria-label=\"Submit\">Submit</button>\n <button class=\"btn btn-primary mr-1\" (click)=\"cancel()\" [disabled]=\"submitInProgress\" aria-label=\"Cancel\">Cancel</button>\n </div>\n\n</form>" }]
|
|
7604
7647
|
}], ctorParameters: () => [{ type: OepaUserAccountService }, { type: i1$2.FormBuilder }, { type: OepaPinService }, { type: i2$1.BsModalRef }], propDecorators: { attestationID: [{
|
|
7605
7648
|
type: Input
|
|
7606
7649
|
}], submitCallback: [{
|
|
@@ -7733,11 +7776,11 @@ class ServerTimeoutModalComponent {
|
|
|
7733
7776
|
this.bsModalRef.hide();
|
|
7734
7777
|
}
|
|
7735
7778
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ServerTimeoutModalComponent, deps: [{ token: OepaUserAccountService }, { token: i2$1.BsModalRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
7736
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ServerTimeoutModalComponent, selector: "oepa-server-timeout-modal", inputs: { countdownSeconds: "countdownSeconds" }, outputs: { onKeepAlive: "onKeepAlive" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">\n <span>Connection Timeout</span>\n <span *ngIf=\"!connectionLost\"> Pending</span>\n </h4>\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"close()\">\n <span aria-hidden=\"true\">×</span>\n </button>\n </div>\n <div class=\"modal-body\">\n <div *ngIf=\"!connectionLost\">\n Your connection is about to time out: {{mm}}:{{ss}}\n <!-- : <countdown [config]=\"config\" (event)=\"handleEvent($event)\"></countdown> -->\n <br/>\n Click the button below to keep from being logged out.\n </div>\n <div *ngIf=\"connectionLost\">\n Connection timeout.\n </div>\n </div>\n <div class=\"modal-footer\">\n <div class=\"row\">\n <div *ngIf=\"errorMessage\" class=\"col-sm-12\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n </div>\n <div class=\"col-sm-12 text-right\">\n <button *ngIf=\"!connectionLost\" type=\"button\" class=\"btn btn-primary mr-2\" (click)=\"keepAlive()\">Stay Logged In</button>\n <button *ngIf=\"connectionLost\" type=\"button\" class=\"btn btn-primary mr-2\" (click)=\"close()\">Close</button>\n </div>\n </div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
7779
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ServerTimeoutModalComponent, selector: "oepa-server-timeout-modal", inputs: { countdownSeconds: "countdownSeconds" }, outputs: { onKeepAlive: "onKeepAlive" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">\n <span>Connection Timeout</span>\n <span *ngIf=\"!connectionLost\"> Pending</span>\n </h4>\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"close()\">\n <span aria-hidden=\"true\">×</span>\n </button>\n </div>\n <div class=\"modal-body\">\n <div *ngIf=\"!connectionLost\">\n Your connection is about to time out: {{mm}}:{{ss}}\n <!-- : <countdown [config]=\"config\" (event)=\"handleEvent($event)\"></countdown> -->\n <br/>\n Click the button below to keep from being logged out.\n </div>\n <div *ngIf=\"connectionLost\">\n Connection timeout.\n </div>\n </div>\n <div class=\"modal-footer\">\n <div class=\"row\">\n <div *ngIf=\"errorMessage\" class=\"col-sm-12\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n </div>\n <div class=\"col-sm-12 text-right\">\n <button *ngIf=\"!connectionLost\" type=\"button\" class=\"btn btn-primary mr-2\" (click)=\"keepAlive()\" aria-label=\"Stay Logged In\">Stay Logged In</button>\n <button *ngIf=\"connectionLost\" type=\"button\" class=\"btn btn-primary mr-2\" (click)=\"close()\" aria-label=\"Close\">Close</button>\n </div>\n </div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
7737
7780
|
}
|
|
7738
7781
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ServerTimeoutModalComponent, decorators: [{
|
|
7739
7782
|
type: Component,
|
|
7740
|
-
args: [{ selector: 'oepa-server-timeout-modal', template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">\n <span>Connection Timeout</span>\n <span *ngIf=\"!connectionLost\"> Pending</span>\n </h4>\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"close()\">\n <span aria-hidden=\"true\">×</span>\n </button>\n </div>\n <div class=\"modal-body\">\n <div *ngIf=\"!connectionLost\">\n Your connection is about to time out: {{mm}}:{{ss}}\n <!-- : <countdown [config]=\"config\" (event)=\"handleEvent($event)\"></countdown> -->\n <br/>\n Click the button below to keep from being logged out.\n </div>\n <div *ngIf=\"connectionLost\">\n Connection timeout.\n </div>\n </div>\n <div class=\"modal-footer\">\n <div class=\"row\">\n <div *ngIf=\"errorMessage\" class=\"col-sm-12\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n </div>\n <div class=\"col-sm-12 text-right\">\n <button *ngIf=\"!connectionLost\" type=\"button\" class=\"btn btn-primary mr-2\" (click)=\"keepAlive()\">Stay Logged In</button>\n <button *ngIf=\"connectionLost\" type=\"button\" class=\"btn btn-primary mr-2\" (click)=\"close()\">Close</button>\n </div>\n </div>\n" }]
|
|
7783
|
+
args: [{ selector: 'oepa-server-timeout-modal', template: "<div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">\n <span>Connection Timeout</span>\n <span *ngIf=\"!connectionLost\"> Pending</span>\n </h4>\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"close()\">\n <span aria-hidden=\"true\">×</span>\n </button>\n </div>\n <div class=\"modal-body\">\n <div *ngIf=\"!connectionLost\">\n Your connection is about to time out: {{mm}}:{{ss}}\n <!-- : <countdown [config]=\"config\" (event)=\"handleEvent($event)\"></countdown> -->\n <br/>\n Click the button below to keep from being logged out.\n </div>\n <div *ngIf=\"connectionLost\">\n Connection timeout.\n </div>\n </div>\n <div class=\"modal-footer\">\n <div class=\"row\">\n <div *ngIf=\"errorMessage\" class=\"col-sm-12\">\n <div class=\"alert alert-danger\">\n {{errorMessage}}\n </div>\n </div>\n </div>\n <div class=\"col-sm-12 text-right\">\n <button *ngIf=\"!connectionLost\" type=\"button\" class=\"btn btn-primary mr-2\" (click)=\"keepAlive()\" aria-label=\"Stay Logged In\">Stay Logged In</button>\n <button *ngIf=\"connectionLost\" type=\"button\" class=\"btn btn-primary mr-2\" (click)=\"close()\" aria-label=\"Close\">Close</button>\n </div>\n </div>\n" }]
|
|
7741
7784
|
}], ctorParameters: () => [{ type: OepaUserAccountService }, { type: i2$1.BsModalRef }], propDecorators: { countdownSeconds: [{
|
|
7742
7785
|
type: Input
|
|
7743
7786
|
}], onKeepAlive: [{
|
|
@@ -7956,7 +7999,7 @@ class ShoppingCartViewComponent {
|
|
|
7956
7999
|
{ id: 'itemClassification', value: cartItem.itemClassification },
|
|
7957
8000
|
{ id: 'itemName', value: cartItem.itemName },
|
|
7958
8001
|
{ id: 'itemDescription', value: cartItem.description },
|
|
7959
|
-
{ id: 'deleteItem', value: '', iconClassName: '
|
|
8002
|
+
{ id: 'deleteItem', value: '', iconClassName: 'bi bi-dash-circle-fill', className: 'text-center' },
|
|
7960
8003
|
{ id: 'fee', value: cartItem.unitPrice?.formattedString, sortValue: cartItem.unitPrice?.cents },
|
|
7961
8004
|
],
|
|
7962
8005
|
dataSource: cartItem
|
|
@@ -8020,11 +8063,11 @@ class ShoppingCartViewComponent {
|
|
|
8020
8063
|
}
|
|
8021
8064
|
}
|
|
8022
8065
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShoppingCartViewComponent, deps: [{ token: i1$4.Router }, { token: i1$4.ActivatedRoute }, { token: i2$1.BsModalService }, { token: ShoppingCartService }], target: i0.ɵɵFactoryTarget.Component });
|
|
8023
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ShoppingCartViewComponent, selector: "oepa-shopping-cart-view", ngImport: i0, template: "<div class=\"container-fluid\">\n <div class=\"row\">\n <div class=\" col-sm-12\">\n <h2><b>{{title}}</b></h2>\n </div>\n <div *ngIf=\"loading || empty\" class=\"col-sm-12 text-center\">\n <div class=\" alert alert-info \">\n <h3><em>{{ loading ? 'Loading...' : 'Cart is empty' }}</em></h3>\n <img *ngIf=\"loading\" class=\"oepa-icon\" src=\"{{imageRoot}}/blue-load.gif\" />\n </div>\n </div>\n <div *ngIf=\"!loading && !empty\" class=\"col-sm-12\">\n <oepa-table [config]=\"tblConfig\" [data]=\"tblData\" [header]=\"tblHeader\" tableId=\"ShoppingCartTable\" (cellClicked)=\"onCellClick($event)\"></oepa-table>\n </div>\n <div *ngIf=\"errorMessage\" class=\"col-sm-12\">\n <div class=\"alert alert-danger\">{{errorMessage}}</div>\n </div>\n <div *ngIf=\"!checkOutInProgress\" class=\"col-12 text-center\">\n <button class=\"btn btn-primary mr-2\" id=\"returnToPageButton\" (click)=\"goBack()\">\n {{returnLabel}}</button>\n <button *ngIf=\"!empty\" class=\"btn btn-primary mr-2\" id=\"checkoutBtn\" (click)=\"onCheckout()\">\n Checkout</button>\n </div>\n <div *ngIf=\"checkOutInProgress\" class=\"col-12 text-center\">\n <div class=\"alert alert-info\">\n <span class=\"spinner-border text-primary\" role=\"status\"></span>\n Checking out...\n </div>\n </div>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: TableComponent, selector: "oepa-table", inputs: ["tableId", "config", "complexHeader", "header", "customBtnLabel", "customBtnVisible", "customBtnEnabled", "data", "totalRow"], outputs: ["cellClicked", "actionClicked", "rowSelected", "customBtnClicked"] }] });
|
|
8066
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ShoppingCartViewComponent, selector: "oepa-shopping-cart-view", ngImport: i0, template: "<div class=\"container-fluid\">\n <div class=\"row\">\n <div class=\" col-sm-12\">\n <h2><b>{{title}}</b></h2>\n </div>\n <div *ngIf=\"loading || empty\" class=\"col-sm-12 text-center\">\n <div class=\" alert alert-info \">\n <h3><em>{{ loading ? 'Loading...' : 'Cart is empty' }}</em></h3>\n <img *ngIf=\"loading\" class=\"oepa-icon\" src=\"{{imageRoot}}/blue-load.gif\" />\n </div>\n </div>\n <div *ngIf=\"!loading && !empty\" class=\"col-sm-12\">\n <oepa-table [config]=\"tblConfig\" [data]=\"tblData\" [header]=\"tblHeader\" tableId=\"ShoppingCartTable\" (cellClicked)=\"onCellClick($event)\"></oepa-table>\n </div>\n <div *ngIf=\"errorMessage\" class=\"col-sm-12\">\n <div class=\"alert alert-danger\">{{errorMessage}}</div>\n </div>\n <div *ngIf=\"!checkOutInProgress\" class=\"col-12 text-center\">\n <button class=\"btn btn-primary mr-2\" id=\"returnToPageButton\" (click)=\"goBack()\" [attr.aria-label]=\"returnLabel\">\n {{returnLabel}}</button>\n <button *ngIf=\"!empty\" class=\"btn btn-primary mr-2\" id=\"checkoutBtn\" (click)=\"onCheckout()\" aria-label=\"Checkout\">\n Checkout</button>\n </div>\n <div *ngIf=\"checkOutInProgress\" class=\"col-12 text-center\">\n <div class=\"alert alert-info\">\n <span class=\"spinner-border text-primary\" role=\"status\"></span>\n Checking out...\n </div>\n </div>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: TableComponent, selector: "oepa-table", inputs: ["tableId", "config", "complexHeader", "header", "customBtnLabel", "customBtnVisible", "customBtnEnabled", "data", "totalRow"], outputs: ["cellClicked", "actionClicked", "rowSelected", "customBtnClicked"] }] });
|
|
8024
8067
|
}
|
|
8025
8068
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShoppingCartViewComponent, decorators: [{
|
|
8026
8069
|
type: Component,
|
|
8027
|
-
args: [{ selector: 'oepa-shopping-cart-view', template: "<div class=\"container-fluid\">\n <div class=\"row\">\n <div class=\" col-sm-12\">\n <h2><b>{{title}}</b></h2>\n </div>\n <div *ngIf=\"loading || empty\" class=\"col-sm-12 text-center\">\n <div class=\" alert alert-info \">\n <h3><em>{{ loading ? 'Loading...' : 'Cart is empty' }}</em></h3>\n <img *ngIf=\"loading\" class=\"oepa-icon\" src=\"{{imageRoot}}/blue-load.gif\" />\n </div>\n </div>\n <div *ngIf=\"!loading && !empty\" class=\"col-sm-12\">\n <oepa-table [config]=\"tblConfig\" [data]=\"tblData\" [header]=\"tblHeader\" tableId=\"ShoppingCartTable\" (cellClicked)=\"onCellClick($event)\"></oepa-table>\n </div>\n <div *ngIf=\"errorMessage\" class=\"col-sm-12\">\n <div class=\"alert alert-danger\">{{errorMessage}}</div>\n </div>\n <div *ngIf=\"!checkOutInProgress\" class=\"col-12 text-center\">\n <button class=\"btn btn-primary mr-2\" id=\"returnToPageButton\" (click)=\"goBack()\">\n {{returnLabel}}</button>\n <button *ngIf=\"!empty\" class=\"btn btn-primary mr-2\" id=\"checkoutBtn\" (click)=\"onCheckout()\">\n Checkout</button>\n </div>\n <div *ngIf=\"checkOutInProgress\" class=\"col-12 text-center\">\n <div class=\"alert alert-info\">\n <span class=\"spinner-border text-primary\" role=\"status\"></span>\n Checking out...\n </div>\n </div>\n </div>\n</div>" }]
|
|
8070
|
+
args: [{ selector: 'oepa-shopping-cart-view', template: "<div class=\"container-fluid\">\n <div class=\"row\">\n <div class=\" col-sm-12\">\n <h2><b>{{title}}</b></h2>\n </div>\n <div *ngIf=\"loading || empty\" class=\"col-sm-12 text-center\">\n <div class=\" alert alert-info \">\n <h3><em>{{ loading ? 'Loading...' : 'Cart is empty' }}</em></h3>\n <img *ngIf=\"loading\" class=\"oepa-icon\" src=\"{{imageRoot}}/blue-load.gif\" />\n </div>\n </div>\n <div *ngIf=\"!loading && !empty\" class=\"col-sm-12\">\n <oepa-table [config]=\"tblConfig\" [data]=\"tblData\" [header]=\"tblHeader\" tableId=\"ShoppingCartTable\" (cellClicked)=\"onCellClick($event)\"></oepa-table>\n </div>\n <div *ngIf=\"errorMessage\" class=\"col-sm-12\">\n <div class=\"alert alert-danger\">{{errorMessage}}</div>\n </div>\n <div *ngIf=\"!checkOutInProgress\" class=\"col-12 text-center\">\n <button class=\"btn btn-primary mr-2\" id=\"returnToPageButton\" (click)=\"goBack()\" [attr.aria-label]=\"returnLabel\">\n {{returnLabel}}</button>\n <button *ngIf=\"!empty\" class=\"btn btn-primary mr-2\" id=\"checkoutBtn\" (click)=\"onCheckout()\" aria-label=\"Checkout\">\n Checkout</button>\n </div>\n <div *ngIf=\"checkOutInProgress\" class=\"col-12 text-center\">\n <div class=\"alert alert-info\">\n <span class=\"spinner-border text-primary\" role=\"status\"></span>\n Checking out...\n </div>\n </div>\n </div>\n</div>" }]
|
|
8028
8071
|
}], ctorParameters: () => [{ type: i1$4.Router }, { type: i1$4.ActivatedRoute }, { type: i2$1.BsModalService }, { type: ShoppingCartService }] });
|
|
8029
8072
|
|
|
8030
8073
|
class ShoppingCartSummaryComponent {
|
|
@@ -8218,11 +8261,11 @@ class TemplateConfirmationModalComponent {
|
|
|
8218
8261
|
this.bsModalRef.hide();
|
|
8219
8262
|
}
|
|
8220
8263
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TemplateConfirmationModalComponent, deps: [{ token: i2$1.BsModalRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
8221
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TemplateConfirmationModalComponent, selector: "oepa-template-confirmation-modal", inputs: { headerText: "headerText", content: "content", confirmBtnLabel: "confirmBtnLabel", cancelBtnLabel: "cancelBtnLabel" }, outputs: { confirmClicked: "confirmClicked", cancelClicked: "cancelClicked" }, ngImport: i0, template: "<div *ngIf=\"headerText\" class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">{{headerText}}</h4>\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n <span aria-hidden=\"true\">×</span>\n </button>\n </div>\n <div *ngIf=\"content\" class=\"modal-body\">\n <cml-template [templateInfo]=\"content\"></cml-template>\n </div>\n <div class=\"modal-footer\">\n <button *ngIf=\"confirmBtnLabel\" type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"confirm()\">{{confirmBtnLabel}}</button>\n <button type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"cancel()\">{{cancelBtnLabel}}</button>\n </div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1$1.OepaTemplateComponent, selector: "cml-template", inputs: ["templateInfo"] }] });
|
|
8264
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TemplateConfirmationModalComponent, selector: "oepa-template-confirmation-modal", inputs: { headerText: "headerText", content: "content", confirmBtnLabel: "confirmBtnLabel", cancelBtnLabel: "cancelBtnLabel" }, outputs: { confirmClicked: "confirmClicked", cancelClicked: "cancelClicked" }, ngImport: i0, template: "<div *ngIf=\"headerText\" class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">{{headerText}}</h4>\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n <span aria-hidden=\"true\">×</span>\n </button>\n </div>\n <div *ngIf=\"content\" class=\"modal-body\">\n <cml-template [templateInfo]=\"content\"></cml-template>\n </div>\n <div class=\"modal-footer\">\n <button *ngIf=\"confirmBtnLabel\" type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"confirm()\" [attr.aria-label]=\"confirmBtnLabel\">{{confirmBtnLabel}}</button>\n <button type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"cancel()\" [attr.aria-label]=\"cancelBtnLabel\">{{cancelBtnLabel}}</button>\n </div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1$1.OepaTemplateComponent, selector: "cml-template", inputs: ["templateInfo"] }] });
|
|
8222
8265
|
}
|
|
8223
8266
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TemplateConfirmationModalComponent, decorators: [{
|
|
8224
8267
|
type: Component,
|
|
8225
|
-
args: [{ selector: 'oepa-template-confirmation-modal', template: "<div *ngIf=\"headerText\" class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">{{headerText}}</h4>\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n <span aria-hidden=\"true\">×</span>\n </button>\n </div>\n <div *ngIf=\"content\" class=\"modal-body\">\n <cml-template [templateInfo]=\"content\"></cml-template>\n </div>\n <div class=\"modal-footer\">\n <button *ngIf=\"confirmBtnLabel\" type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"confirm()\">{{confirmBtnLabel}}</button>\n <button type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"cancel()\">{{cancelBtnLabel}}</button>\n </div>" }]
|
|
8268
|
+
args: [{ selector: 'oepa-template-confirmation-modal', template: "<div *ngIf=\"headerText\" class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">{{headerText}}</h4>\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n <span aria-hidden=\"true\">×</span>\n </button>\n </div>\n <div *ngIf=\"content\" class=\"modal-body\">\n <cml-template [templateInfo]=\"content\"></cml-template>\n </div>\n <div class=\"modal-footer\">\n <button *ngIf=\"confirmBtnLabel\" type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"confirm()\" [attr.aria-label]=\"confirmBtnLabel\">{{confirmBtnLabel}}</button>\n <button type=\"button\" class=\"btn btn-primary mr-1\" (click)=\"cancel()\" [attr.aria-label]=\"cancelBtnLabel\">{{cancelBtnLabel}}</button>\n </div>" }]
|
|
8226
8269
|
}], ctorParameters: () => [{ type: i2$1.BsModalRef }], propDecorators: { headerText: [{
|
|
8227
8270
|
type: Input
|
|
8228
8271
|
}], content: [{
|
|
@@ -8297,11 +8340,11 @@ class TimeoutModalComponent {
|
|
|
8297
8340
|
this.bsModalRef.hide();
|
|
8298
8341
|
}
|
|
8299
8342
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TimeoutModalComponent, deps: [{ token: i2$1.BsModalRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
8300
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TimeoutModalComponent, selector: "oepa-timeout-modal", inputs: { countdown: "countdown" }, outputs: { okClicked: "okClicked" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h3 class=\"modal-title\">Session Timeout Warning</h3>\n</div>\n\n<div class=\"modal-body\">\n <div class=\"alert alert-info\">\n Your session will timeout in {{ countdown }} seconds. If you wish to stay logged in click 'Continue'.\n </div>\n</div>\n\n<div class=\"modal-footer\">\n <button class=\"btn btn-primary mr-1\" id=\"continueSessionBtn\" (click)=\"ok()\">Continue</button>\n</div>", styles: [""] });
|
|
8343
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TimeoutModalComponent, selector: "oepa-timeout-modal", inputs: { countdown: "countdown" }, outputs: { okClicked: "okClicked" }, ngImport: i0, template: "<div class=\"modal-header\">\n <h3 class=\"modal-title\">Session Timeout Warning</h3>\n</div>\n\n<div class=\"modal-body\">\n <div class=\"alert alert-info\">\n Your session will timeout in {{ countdown }} seconds. If you wish to stay logged in click 'Continue'.\n </div>\n</div>\n\n<div class=\"modal-footer\">\n <button class=\"btn btn-primary mr-1\" id=\"continueSessionBtn\" (click)=\"ok()\" aria-label=\"Continue\">Continue</button>\n</div>", styles: [""] });
|
|
8301
8344
|
}
|
|
8302
8345
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TimeoutModalComponent, decorators: [{
|
|
8303
8346
|
type: Component,
|
|
8304
|
-
args: [{ selector: 'oepa-timeout-modal', template: "<div class=\"modal-header\">\n <h3 class=\"modal-title\">Session Timeout Warning</h3>\n</div>\n\n<div class=\"modal-body\">\n <div class=\"alert alert-info\">\n Your session will timeout in {{ countdown }} seconds. If you wish to stay logged in click 'Continue'.\n </div>\n</div>\n\n<div class=\"modal-footer\">\n <button class=\"btn btn-primary mr-1\" id=\"continueSessionBtn\" (click)=\"ok()\">Continue</button>\n</div>" }]
|
|
8347
|
+
args: [{ selector: 'oepa-timeout-modal', template: "<div class=\"modal-header\">\n <h3 class=\"modal-title\">Session Timeout Warning</h3>\n</div>\n\n<div class=\"modal-body\">\n <div class=\"alert alert-info\">\n Your session will timeout in {{ countdown }} seconds. If you wish to stay logged in click 'Continue'.\n </div>\n</div>\n\n<div class=\"modal-footer\">\n <button class=\"btn btn-primary mr-1\" id=\"continueSessionBtn\" (click)=\"ok()\" aria-label=\"Continue\">Continue</button>\n</div>" }]
|
|
8305
8348
|
}], ctorParameters: () => [{ type: i2$1.BsModalRef }], propDecorators: { countdown: [{
|
|
8306
8349
|
type: Input
|
|
8307
8350
|
}], okClicked: [{
|
|
@@ -8570,7 +8613,7 @@ class DateInputComponent {
|
|
|
8570
8613
|
}
|
|
8571
8614
|
}
|
|
8572
8615
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DateInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8573
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DateInputComponent, selector: "oepa-date-input", inputs: { group: "group", field: "field", tableIdx: "tableIdx", placement: "placement", showValidation: "showValidation", pauseChangeProcessing: "pauseChangeProcessing" }, outputs: { onValueChange: "onValueChange" }, ngImport: i0, template: "<div [formGroup]=\"group\">\n <oepa-datepicker [group]=\"group\" [field]=\"field\" [tableIdx]=\"tableIdx\" \n [placement]=\"placement\" [showValidation]=\"showValidation\"></oepa-datepicker>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: DatepickerComponent, selector: "oepa-datepicker", inputs: ["group", "field", "bsConfig", "showValidation", "placement", "tableIdx", "small"] }] });
|
|
8616
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DateInputComponent, selector: "oepa-date-input", inputs: { group: "group", field: "field", tableIdx: "tableIdx", placement: "placement", showValidation: "showValidation", pauseChangeProcessing: "pauseChangeProcessing" }, outputs: { onValueChange: "onValueChange" }, ngImport: i0, template: "<div [formGroup]=\"group\">\n <oepa-datepicker [group]=\"group\" [field]=\"field\" [tableIdx]=\"tableIdx\" \n [placement]=\"placement\" [showValidation]=\"showValidation\"></oepa-datepicker>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: DatepickerComponent, selector: "oepa-datepicker", inputs: ["group", "field", "bsConfig", "showValidation", "placement", "tableIdx", "small"], exportAs: ["oepa-datepicker"] }] });
|
|
8574
8617
|
}
|
|
8575
8618
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DateInputComponent, decorators: [{
|
|
8576
8619
|
type: Component,
|
|
@@ -8738,7 +8781,7 @@ class CommonFormsModule {
|
|
|
8738
8781
|
TemplateConfirmationModalComponent, TextAreaInputComponent, TextInputComponent, TimeoutModalComponent, TimepickerComponent,
|
|
8739
8782
|
YesNoComponent, YesNoBooleanComponent, YesNoOtherInputComponent], imports: [CommonModule,
|
|
8740
8783
|
FormsModule,
|
|
8741
|
-
ReactiveFormsModule, i4$1.ButtonsModule, i4.BsDatepickerModule, i4$2.TimepickerModule, i7$1.PaginationModule, i8.PopoverModule,
|
|
8784
|
+
ReactiveFormsModule, i4$1.ButtonsModule, i4.BsDatepickerModule, i4$2.TimepickerModule, i7$1.PaginationModule, i8.PopoverModule, i8$1.TooltipModule, i3.BsDropdownModule, i2$1.ModalModule, i6$1.TypeaheadModule, i6.AccordionModule, i11$1.CollapseModule, i12.TabsModule, TableModule,
|
|
8742
8785
|
CommonLibModule,
|
|
8743
8786
|
NgxMaskDirective, NgxMaskPipe], exports: [AccountSearchInputComponent, AccountSearchModalComponent,
|
|
8744
8787
|
ActionBtnComponent, ActionBtnModalComponent, AddressComponent, ZipCodeComponent,
|
|
@@ -9230,14 +9273,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
9230
9273
|
class OepaReferenceService {
|
|
9231
9274
|
http;
|
|
9232
9275
|
countiesUrl = '/ebiz/api/v2/references/counties/state';
|
|
9276
|
+
townshipsUrl = '/ebiz/api/v2/references/townships/counties/code';
|
|
9233
9277
|
districtsUrl = '/ebiz/api/v2/references/districts';
|
|
9234
|
-
doLaaTypessUrl = '/ebiz/api/
|
|
9278
|
+
doLaaTypessUrl = '/ebiz/api/v2/asbestos/references/doLaaTypes';
|
|
9235
9279
|
params = {};
|
|
9236
9280
|
constructor(http, ebizRootURL, app) {
|
|
9237
9281
|
this.http = http;
|
|
9238
9282
|
this.countiesUrl = ebizRootURL + this.countiesUrl;
|
|
9239
9283
|
this.districtsUrl = ebizRootURL + this.districtsUrl;
|
|
9240
9284
|
this.doLaaTypessUrl = ebizRootURL + this.doLaaTypessUrl;
|
|
9285
|
+
this.townshipsUrl = ebizRootURL + this.townshipsUrl;
|
|
9241
9286
|
this.params = {
|
|
9242
9287
|
'app': app
|
|
9243
9288
|
};
|
|
@@ -9248,6 +9293,12 @@ class OepaReferenceService {
|
|
|
9248
9293
|
getCounties(state) {
|
|
9249
9294
|
return this.http.get(this.countiesUrl + '/' + state, { params: this.params });
|
|
9250
9295
|
}
|
|
9296
|
+
/**
|
|
9297
|
+
* Retrieve townships by county code
|
|
9298
|
+
*/
|
|
9299
|
+
getTownshipsByCountyCode(countyCode) {
|
|
9300
|
+
return this.http.get(this.townshipsUrl + '/' + countyCode, { params: this.params });
|
|
9301
|
+
}
|
|
9251
9302
|
/**
|
|
9252
9303
|
* Retrieve districts
|
|
9253
9304
|
*/
|
|
@@ -9377,28 +9428,41 @@ class OepaHttpInterceptor {
|
|
|
9377
9428
|
const params = {
|
|
9378
9429
|
oepats: new Date().getTime().toString()
|
|
9379
9430
|
};
|
|
9380
|
-
const headers = req.headers;
|
|
9381
9431
|
if (this.userID) {
|
|
9382
9432
|
params['userid'] = this.userID;
|
|
9383
|
-
headers.set('X-User-ID', this.userID);
|
|
9384
9433
|
}
|
|
9385
9434
|
if (this.sessionID) {
|
|
9386
9435
|
params['sessionid'] = this.sessionID;
|
|
9387
9436
|
}
|
|
9437
|
+
let changedReq = undefined;
|
|
9388
9438
|
if (authToken) {
|
|
9389
|
-
|
|
9439
|
+
changedReq = req.clone({
|
|
9440
|
+
setHeaders: {
|
|
9441
|
+
Authorization: `Bearer ${authToken}`
|
|
9442
|
+
},
|
|
9443
|
+
setParams: params
|
|
9444
|
+
});
|
|
9445
|
+
}
|
|
9446
|
+
else {
|
|
9447
|
+
changedReq = req.clone({
|
|
9448
|
+
setParams: params
|
|
9449
|
+
});
|
|
9390
9450
|
}
|
|
9391
|
-
let changedReq = req.clone({
|
|
9392
|
-
headers: headers,
|
|
9393
|
-
setParams: params
|
|
9394
|
-
});
|
|
9395
9451
|
const timeoutValue = req.headers.get('timeout') || this.defaultTimeout;
|
|
9396
9452
|
const timeoutValueNumeric = Number(timeoutValue);
|
|
9397
9453
|
return next.handle(changedReq).pipe(timeout(timeoutValueNumeric), catchError((error) => {
|
|
9398
9454
|
let msg = error.headers ? error.headers.get('OEPA_ERROR') : '';
|
|
9399
9455
|
console.log('msg from header = ' + msg);
|
|
9400
9456
|
console.log('ERROR: [' + req.url + ']: ' + JSON.stringify(error));
|
|
9401
|
-
msg = msg || error.error.message || error.error.errorMessage || 'Server error.';
|
|
9457
|
+
msg = msg || (error && error.error && (error.error.message || error.error.errorMessage || error.error.error || error.error)) || 'Server error.';
|
|
9458
|
+
if (msg && typeof msg !== 'string') {
|
|
9459
|
+
try {
|
|
9460
|
+
msg = JSON.stringify(msg);
|
|
9461
|
+
}
|
|
9462
|
+
catch {
|
|
9463
|
+
msg = String(msg);
|
|
9464
|
+
}
|
|
9465
|
+
}
|
|
9402
9466
|
if (msg) {
|
|
9403
9467
|
if (msg.indexOf('User account is required') > -1
|
|
9404
9468
|
|| msg.toUpperCase().indexOf('USERID IS MISSING') > -1) {
|