@byuhbll/components 5.0.1 → 6.0.0-rc.0
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/fesm2022/byuhbll-components.mjs +98 -107
- package/fesm2022/byuhbll-components.mjs.map +1 -1
- package/lib/ss-search-bar/advanced-search/advanced-search.component.d.ts +1 -4
- package/lib/ss-search-bar/models/advanced-search.model.d.ts +3 -3
- package/lib/ss-search-bar/models/search-scope.model.d.ts +1 -1
- package/lib/ss-search-bar/simple-search/simple-search.component.d.ts +1 -1
- package/lib/status-button/status-button.component.d.ts +1 -1
- package/package.json +4 -6
- package/esm2022/byuhbll-components.mjs +0 -5
- package/esm2022/lib/animations/animations.mjs +0 -22
- package/esm2022/lib/checkbox/checkbox.component.mjs +0 -15
- package/esm2022/lib/contact-utils.mjs +0 -41
- package/esm2022/lib/copy-tooltip/copy-tooltip.component.mjs +0 -49
- package/esm2022/lib/expand-collapse/expand-collapse.component.mjs +0 -31
- package/esm2022/lib/hbll-footer/hbll-footer.component.mjs +0 -111
- package/esm2022/lib/hbll-header/hbll-header.component.mjs +0 -142
- package/esm2022/lib/hbll-header/models/library-hours.mjs +0 -2
- package/esm2022/lib/hbll-header/nav-bar/nav-bar.component.mjs +0 -352
- package/esm2022/lib/hbll-header/nav-bar-dropdown/nav-bar-dropdown.component.mjs +0 -57
- package/esm2022/lib/hbll-header/pipes/library-hours.pipe.mjs +0 -31
- package/esm2022/lib/hbll-header/pipes/truncate.pipe.mjs +0 -17
- package/esm2022/lib/header-with-impersonation/header-with-impersonation.component.mjs +0 -41
- package/esm2022/lib/impersonate-modal/impersonate-modal.component.mjs +0 -190
- package/esm2022/lib/impersonation-banner/impersonation-banner.component.mjs +0 -151
- package/esm2022/lib/impersonation-banner/models/application-access.mjs +0 -7
- package/esm2022/lib/impersonation-banner/models/person-summary.mjs +0 -15
- package/esm2022/lib/models/token-payload.mjs +0 -2
- package/esm2022/lib/multi-select/multi-select.component.mjs +0 -115
- package/esm2022/lib/pipes/hbll-item-type-icon.pipe.mjs +0 -128
- package/esm2022/lib/snackbar/snackbar.component.mjs +0 -151
- package/esm2022/lib/snackbar/snackbar.service.mjs +0 -90
- package/esm2022/lib/ss-search-bar/advanced-search/advanced-search.component.mjs +0 -273
- package/esm2022/lib/ss-search-bar/constants.mjs +0 -153
- package/esm2022/lib/ss-search-bar/date-range/date-range.component.mjs +0 -71
- package/esm2022/lib/ss-search-bar/models/advanced-search.model.mjs +0 -5
- package/esm2022/lib/ss-search-bar/models/search-config.model.mjs +0 -2
- package/esm2022/lib/ss-search-bar/models/search-scope.model.mjs +0 -3
- package/esm2022/lib/ss-search-bar/pipes/advanced-field-warning.pipe.mjs +0 -34
- package/esm2022/lib/ss-search-bar/pipes/advanced-queries.pipe.mjs +0 -33
- package/esm2022/lib/ss-search-bar/pipes/field-by-scope.pipe.mjs +0 -27
- package/esm2022/lib/ss-search-bar/simple-search/simple-search.component.mjs +0 -87
- package/esm2022/lib/ss-search-bar/ss-search-bar.component.mjs +0 -98
- package/esm2022/lib/ss-search-bar/utils.mjs +0 -16
- package/esm2022/lib/status-button/status-button.component.mjs +0 -104
- package/esm2022/lib/utils.mjs +0 -7
- package/esm2022/public-api.mjs +0 -19
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, inject, } from '@angular/core';
|
|
2
|
-
import { NonNullableFormBuilder, ReactiveFormsModule, Validators } from '@angular/forms';
|
|
3
|
-
import { CommonModule } from '@angular/common';
|
|
4
|
-
import { libHbllFadeInOut } from '../../animations/animations';
|
|
5
|
-
import { validateDateRangeFields } from '../utils';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@angular/forms";
|
|
8
|
-
export class DateRangeComponent {
|
|
9
|
-
constructor() {
|
|
10
|
-
this.fb = inject(NonNullableFormBuilder);
|
|
11
|
-
/**
|
|
12
|
-
* Emits `{ from: string, to: string }` object if both values are set to a valid or empty state by the user.
|
|
13
|
-
*/
|
|
14
|
-
this.validDateChange = new EventEmitter();
|
|
15
|
-
this.fromChange = new EventEmitter();
|
|
16
|
-
this.toChange = new EventEmitter();
|
|
17
|
-
this.dateForm = this.fb.group({
|
|
18
|
-
from: ['', [Validators.pattern('^[0-9]{4}$')]],
|
|
19
|
-
to: ['', [Validators.pattern('^[0-9]{4}$')]],
|
|
20
|
-
}, { validators: validateDateRangeFields() });
|
|
21
|
-
this.onFromChange = () => {
|
|
22
|
-
this.onInputChange();
|
|
23
|
-
this.fromChange.emit(this.dateForm.controls.from.value);
|
|
24
|
-
};
|
|
25
|
-
this.onToChange = () => {
|
|
26
|
-
this.onInputChange();
|
|
27
|
-
this.toChange.emit(this.dateForm.controls.to.value);
|
|
28
|
-
};
|
|
29
|
-
this.onInputChange = () => {
|
|
30
|
-
let from = this.dateForm.controls.from.value;
|
|
31
|
-
let to = this.dateForm.controls.to.value;
|
|
32
|
-
if (from && to && this.dateForm.controls.from.valid && this.dateForm.controls.to.valid) {
|
|
33
|
-
// Ensure 'to' contains the larger year. Swap if necessary.
|
|
34
|
-
if (parseInt(from) > parseInt(to)) {
|
|
35
|
-
const swap = from;
|
|
36
|
-
from = to;
|
|
37
|
-
to = swap;
|
|
38
|
-
}
|
|
39
|
-
this.validDateChange.emit({ from, to });
|
|
40
|
-
}
|
|
41
|
-
else if (!from && !to) {
|
|
42
|
-
this.validDateChange.emit({ from, to });
|
|
43
|
-
}
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
set from(from) {
|
|
47
|
-
if (from !== this.dateForm.controls.from.value)
|
|
48
|
-
this.dateForm.controls.from.setValue(from);
|
|
49
|
-
}
|
|
50
|
-
set to(to) {
|
|
51
|
-
if (to !== this.dateForm.controls.to.value)
|
|
52
|
-
this.dateForm.controls.to.setValue(to);
|
|
53
|
-
}
|
|
54
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: DateRangeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
55
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.0", type: DateRangeComponent, isStandalone: true, selector: "lib-date-range", inputs: { from: "from", to: "to" }, outputs: { validDateChange: "validDateChange", fromChange: "fromChange", toChange: "toChange" }, ngImport: i0, template: "<form id=\"fromTo\" data-testid=\"fromTo\" [formGroup]=\"dateForm\">\n <label for=\"fromFacet\">Between</label>\n <input\n formControlName=\"from\"\n id=\"fromFacet\"\n name=\"fromFacet\"\n data-testid=\"from\"\n placeholder=\"YYYY\"\n inputmode=\"numeric\"\n minlength=\"4\"\n maxlength=\"4\"\n (input)=\"onFromChange()\"\n [class.error]=\"\n dateForm.errors?.['fromInvalid'] || dateForm.controls.from.errors?.['pattern']\n \"\n />\n <label for=\"toFacet\">and</label>\n <input\n formControlName=\"to\"\n id=\"toFacet\"\n name=\"toFacet\"\n data-testid=\"to\"\n placeholder=\"YYYY\"\n inputmode=\"numeric\"\n minlength=\"4\"\n maxlength=\"4\"\n (input)=\"onToChange()\"\n [class.error]=\"dateForm.errors?.['toInvalid'] || dateForm.controls.to.errors?.['pattern']\"\n />\n</form>\n", styles: ["input{appearance:none;font-family:inherit;padding:.38em;border:solid 1px #707070;border-radius:4px;font-size:1em;background-color:#fff}input:focus{outline-color:#3a6093}#fromTo{margin-top:.375rem;margin-bottom:.5rem}#fromTo label{margin-right:.7em}#fromTo label:not(:first-of-type){margin-left:.7em}#fromTo input{font-size:inherit;width:3.5em}#fromTo input.error{border-color:#b04940}@media screen and (min-width: 690px){#fromTo{margin-bottom:.875rem}#fromTo label{margin-right:.65em}#fromTo label:not(:first-of-type){margin-left:.65em}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.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.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }], animations: [libHbllFadeInOut], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
56
|
-
}
|
|
57
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: DateRangeComponent, decorators: [{
|
|
58
|
-
type: Component,
|
|
59
|
-
args: [{ selector: 'lib-date-range', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, ReactiveFormsModule], animations: [libHbllFadeInOut], template: "<form id=\"fromTo\" data-testid=\"fromTo\" [formGroup]=\"dateForm\">\n <label for=\"fromFacet\">Between</label>\n <input\n formControlName=\"from\"\n id=\"fromFacet\"\n name=\"fromFacet\"\n data-testid=\"from\"\n placeholder=\"YYYY\"\n inputmode=\"numeric\"\n minlength=\"4\"\n maxlength=\"4\"\n (input)=\"onFromChange()\"\n [class.error]=\"\n dateForm.errors?.['fromInvalid'] || dateForm.controls.from.errors?.['pattern']\n \"\n />\n <label for=\"toFacet\">and</label>\n <input\n formControlName=\"to\"\n id=\"toFacet\"\n name=\"toFacet\"\n data-testid=\"to\"\n placeholder=\"YYYY\"\n inputmode=\"numeric\"\n minlength=\"4\"\n maxlength=\"4\"\n (input)=\"onToChange()\"\n [class.error]=\"dateForm.errors?.['toInvalid'] || dateForm.controls.to.errors?.['pattern']\"\n />\n</form>\n", styles: ["input{appearance:none;font-family:inherit;padding:.38em;border:solid 1px #707070;border-radius:4px;font-size:1em;background-color:#fff}input:focus{outline-color:#3a6093}#fromTo{margin-top:.375rem;margin-bottom:.5rem}#fromTo label{margin-right:.7em}#fromTo label:not(:first-of-type){margin-left:.7em}#fromTo input{font-size:inherit;width:3.5em}#fromTo input.error{border-color:#b04940}@media screen and (min-width: 690px){#fromTo{margin-bottom:.875rem}#fromTo label{margin-right:.65em}#fromTo label:not(:first-of-type){margin-left:.65em}}\n"] }]
|
|
60
|
-
}], propDecorators: { validDateChange: [{
|
|
61
|
-
type: Output
|
|
62
|
-
}], fromChange: [{
|
|
63
|
-
type: Output
|
|
64
|
-
}], toChange: [{
|
|
65
|
-
type: Output
|
|
66
|
-
}], from: [{
|
|
67
|
-
type: Input
|
|
68
|
-
}], to: [{
|
|
69
|
-
type: Input
|
|
70
|
-
}] } });
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc3Mtc2VhcmNoLWJhci9kYXRlLXJhbmdlL2RhdGUtcmFuZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL3NzLXNlYXJjaC1iYXIvZGF0ZS1yYW5nZS9kYXRlLXJhbmdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsbUJBQW1CLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQy9ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7O0FBV25ELE1BQU0sT0FBTyxrQkFBa0I7SUFUL0I7UUFVcUIsT0FBRSxHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ3JEOztXQUVHO1FBQ08sb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBZ0MsQ0FBQztRQUNuRSxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUN4QyxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUN0QyxhQUFRLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQzlCO1lBQ0ksSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFD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akIsTUFBTTtnQkFRTSxJQUFJO3NCQUFoQixLQUFLO2dCQUdPLEVBQUU7c0JBQWQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5vbk51bGxhYmxlRm9ybUJ1aWxkZXIsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgbGliSGJsbEZhZGVJbk91dCB9IGZyb20gJy4uLy4uL2FuaW1hdGlvbnMvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyB2YWxpZGF0ZURhdGVSYW5nZUZpZWxkcyB9IGZyb20gJy4uL3V0aWxzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdsaWItZGF0ZS1yYW5nZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RhdGUtcmFuZ2UuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2RhdGUtcmFuZ2UuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGVdLFxuICAgIGFuaW1hdGlvbnM6IFtsaWJIYmxsRmFkZUluT3V0XSxcbn0pXG5leHBvcnQgY2xhc3MgRGF0ZVJhbmdlQ29tcG9uZW50IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZiID0gaW5qZWN0KE5vbk51bGxhYmxlRm9ybUJ1aWxkZXIpO1xuICAgIC8qKlxuICAgICAqIEVtaXRzIGB7IGZyb206IHN0cmluZywgdG86IHN0cmluZyB9YCBvYmplY3QgaWYgYm90aCB2YWx1ZXMgYXJlIHNldCB0byBhIHZhbGlkIG9yIGVtcHR5IHN0YXRlIGJ5IHRoZSB1c2VyLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKSB2YWxpZERhdGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHsgZnJvbTogc3RyaW5nOyB0bzogc3RyaW5nIH0+KCk7XG4gICAgQE91dHB1dCgpIGZyb21DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgICBAT3V0cHV0KCkgdG9DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgICBwcm90ZWN0ZWQgZGF0ZUZvcm0gPSB0aGlzLmZiLmdyb3VwKFxuICAgICAgICB7XG4gICAgICAgICAgICBmcm9tOiBbJycsIFtWYWxpZGF0b3JzLnBhdHRlcm4oJ15bMC05XXs0fSQnKV1dLFxuICAgICAgICAgICAgdG86IFsnJywgW1ZhbGlkYXRvcnMucGF0dGVybignXlswLTldezR9JCcpXV0sXG4gICAgICAgIH0sXG4gICAgICAgIHsgdmFsaWRhdG9yczogdmFsaWRhdGVEYXRlUmFuZ2VGaWVsZHMoKSB9LFxuICAgICk7XG4gICAgQElucHV0KCkgc2V0IGZyb20oZnJvbTogc3RyaW5nKSB7XG4gICAgICAgIGlmIChmcm9tICE9PSB0aGlzLmRhdGVGb3JtLmNvbnRyb2xzLmZyb20udmFsdWUpIHRoaXMuZGF0ZUZvcm0uY29udHJvbHMuZnJvbS5zZXRWYWx1ZShmcm9tKTtcbiAgICB9XG4gICAgQElucHV0KCkgc2V0IHRvKHRvOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKHRvICE9PSB0aGlzLmRhdGVGb3JtLmNvbnRyb2xzLnRvLnZhbHVlKSB0aGlzLmRhdGVGb3JtLmNvbnRyb2xzLnRvLnNldFZhbHVlKHRvKTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIG9uRnJvbUNoYW5nZSA9ICgpID0+IHtcbiAgICAgICAgdGhpcy5vbklucHV0Q2hhbmdlKCk7XG4gICAgICAgIHRoaXMuZnJvbUNoYW5nZS5lbWl0KHRoaXMuZGF0ZUZvcm0uY29udHJvbHMuZnJvbS52YWx1ZSk7XG4gICAgfTtcbiAgICBwcm90ZWN0ZWQgb25Ub0NoYW5nZSA9ICgpID0+IHtcbiAgICAgICAgdGhpcy5vbklucHV0Q2hhbmdlKCk7XG4gICAgICAgIHRoaXMudG9DaGFuZ2UuZW1pdCh0aGlzLmRhdGVGb3JtLmNvbnRyb2xzLnRvLnZhbHVlKTtcbiAgICB9O1xuXG4gICAgcHJpdmF0ZSBvbklucHV0Q2hhbmdlID0gKCkgPT4ge1xuICAgICAgICBsZXQgZnJvbSA9IHRoaXMuZGF0ZUZvcm0uY29udHJvbHMuZnJvbS52YWx1ZTtcbiAgICAgICAgbGV0IHRvID0gdGhpcy5kYXRlRm9ybS5jb250cm9scy50by52YWx1ZTtcbiAgICAgICAgaWYgKGZyb20gJiYgdG8gJiYgdGhpcy5kYXRlRm9ybS5jb250cm9scy5mcm9tLnZhbGlkICYmIHRoaXMuZGF0ZUZvcm0uY29udHJvbHMudG8udmFsaWQpIHtcbiAgICAgICAgICAgIC8vIEVuc3VyZSAndG8nIGNvbnRhaW5zIHRoZSBsYXJnZXIgeWVhci4gU3dhcCBpZiBuZWNlc3NhcnkuXG4gICAgICAgICAgICBpZiAocGFyc2VJbnQoZnJvbSkgPiBwYXJzZUludCh0bykpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBzd2FwID0gZnJvbTtcbiAgICAgICAgICAgICAgICBmcm9tID0gdG87XG4gICAgICAgICAgICAgICAgdG8gPSBzd2FwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy52YWxpZERhdGVDaGFuZ2UuZW1pdCh7IGZyb20sIHRvIH0pO1xuICAgICAgICB9IGVsc2UgaWYgKCFmcm9tICYmICF0bykge1xuICAgICAgICAgICAgdGhpcy52YWxpZERhdGVDaGFuZ2UuZW1pdCh7IGZyb20sIHRvIH0pO1xuICAgICAgICB9XG4gICAgfTtcbn1cbiIsIjxmb3JtIGlkPVwiZnJvbVRvXCIgZGF0YS10ZXN0aWQ9XCJmcm9tVG9cIiBbZm9ybUdyb3VwXT1cImRhdGVGb3JtXCI+XG4gICAgPGxhYmVsIGZvcj1cImZyb21GYWNldFwiPkJldHdlZW48L2xhYmVsPlxuICAgIDxpbnB1dFxuICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJmcm9tXCJcbiAgICAgICAgaWQ9XCJmcm9tRmFjZXRcIlxuICAgICAgICBuYW1lPVwiZnJvbUZhY2V0XCJcbiAgICAgICAgZGF0YS10ZXN0aWQ9XCJmcm9tXCJcbiAgICAgICAgcGxhY2Vob2xkZXI9XCJZWVlZXCJcbiAgICAgICAgaW5wdXRtb2RlPVwibnVtZXJpY1wiXG4gICAgICAgIG1pbmxlbmd0aD1cIjRcIlxuICAgICAgICBtYXhsZW5ndGg9XCI0XCJcbiAgICAgICAgKGlucHV0KT1cIm9uRnJvbUNoYW5nZSgpXCJcbiAgICAgICAgW2NsYXNzLmVycm9yXT1cIlxuICAgICAgICAgICAgZGF0ZUZvcm0uZXJyb3JzPy5bJ2Zyb21JbnZhbGlkJ10gfHwgZGF0ZUZvcm0uY29udHJvbHMuZnJvbS5lcnJvcnM/LlsncGF0dGVybiddXG4gICAgICAgIFwiXG4gICAgLz5cbiAgICA8bGFiZWwgZm9yPVwidG9GYWNldFwiPmFuZDwvbGFiZWw+XG4gICAgPGlucHV0XG4gICAgICAgIGZvcm1Db250cm9sTmFtZT1cInRvXCJcbiAgICAgICAgaWQ9XCJ0b0ZhY2V0XCJcbiAgICAgICAgbmFtZT1cInRvRmFjZXRcIlxuICAgICAgICBkYXRhLXRlc3RpZD1cInRvXCJcbiAgICAgICAgcGxhY2Vob2xkZXI9XCJZWVlZXCJcbiAgICAgICAgaW5wdXRtb2RlPVwibnVtZXJpY1wiXG4gICAgICAgIG1pbmxlbmd0aD1cIjRcIlxuICAgICAgICBtYXhsZW5ndGg9XCI0XCJcbiAgICAgICAgKGlucHV0KT1cIm9uVG9DaGFuZ2UoKVwiXG4gICAgICAgIFtjbGFzcy5lcnJvcl09XCJkYXRlRm9ybS5lcnJvcnM/LlsndG9JbnZhbGlkJ10gfHwgZGF0ZUZvcm0uY29udHJvbHMudG8uZXJyb3JzPy5bJ3BhdHRlcm4nXVwiXG4gICAgLz5cbjwvZm9ybT5cbiJdfQ==
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { ADVANCED_SEARCH_OPTIONS } from '../constants';
|
|
2
|
-
export const isAdvancedSearchFieldOption = (field) => [...ADVANCED_SEARCH_OPTIONS.fields].includes(field);
|
|
3
|
-
export const isAdvancedSearchLocalFieldOption = (field) => ADVANCED_SEARCH_OPTIONS.localFields.includes(field);
|
|
4
|
-
export const isAdvancedSearchExternalFieldOption = (field) => ADVANCED_SEARCH_OPTIONS.externalFields.includes(field);
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtc2VhcmNoLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL3NzLXNlYXJjaC1iYXIvbW9kZWxzL2FkdmFuY2VkLXNlYXJjaC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFNdkQsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUcsQ0FDdkMsS0FBYSxFQUMwQixFQUFFLENBQ3pDLENBQUMsR0FBRyx1QkFBdUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBa0MsQ0FBQyxDQUFDO0FBSXJGLE1BQU0sQ0FBQyxNQUFNLGdDQUFnQyxHQUFHLENBQzVDLEtBQWEsRUFDMEIsRUFBRSxDQUN6Qyx1QkFBdUIsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEtBQXVDLENBQUMsQ0FBQztBQUsxRixNQUFNLENBQUMsTUFBTSxtQ0FBbUMsR0FBRyxDQUMvQyxLQUFhLEVBQzZCLEVBQUUsQ0FDNUMsdUJBQXVCLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxLQUEwQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBRFZBTkNFRF9TRUFSQ0hfT1BUSU9OUyB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5cbmV4cG9ydCB0eXBlIEFkdmFuY2VkU2VhcmNoQm9vbGVhbk9wdGlvbiA9ICh0eXBlb2YgQURWQU5DRURfU0VBUkNIX09QVElPTlMuYm9vbGVhbilbbnVtYmVyXTtcblxuZXhwb3J0IHR5cGUgQWR2YW5jZWRTZWFyY2hGaWVsZE9wdGlvbiA9ICh0eXBlb2YgQURWQU5DRURfU0VBUkNIX09QVElPTlMuZmllbGRzKVtudW1iZXJdO1xuXG5leHBvcnQgY29uc3QgaXNBZHZhbmNlZFNlYXJjaEZpZWxkT3B0aW9uID0gKFxuICAgIGZpZWxkOiBzdHJpbmcsXG4pOiBmaWVsZCBpcyBBZHZhbmNlZFNlYXJjaExvY2FsRmllbGRPcHRpb24gPT5cbiAgICBbLi4uQURWQU5DRURfU0VBUkNIX09QVElPTlMuZmllbGRzXS5pbmNsdWRlcyhmaWVsZCBhcyBBZHZhbmNlZFNlYXJjaEZpZWxkT3B0aW9uKTtcblxuZXhwb3J0IHR5cGUgQWR2YW5jZWRTZWFyY2hMb2NhbEZpZWxkT3B0aW9uID0gKHR5cGVvZiBBRFZBTkNFRF9TRUFSQ0hfT1BUSU9OUy5sb2NhbEZpZWxkcylbbnVtYmVyXTtcblxuZXhwb3J0IGNvbnN0IGlzQWR2YW5jZWRTZWFyY2hMb2NhbEZpZWxkT3B0aW9uID0gKFxuICAgIGZpZWxkOiBzdHJpbmcsXG4pOiBmaWVsZCBpcyBBZHZhbmNlZFNlYXJjaExvY2FsRmllbGRPcHRpb24gPT5cbiAgICBBRFZBTkNFRF9TRUFSQ0hfT1BUSU9OUy5sb2NhbEZpZWxkcy5pbmNsdWRlcyhmaWVsZCBhcyBBZHZhbmNlZFNlYXJjaExvY2FsRmllbGRPcHRpb24pO1xuXG5leHBvcnQgdHlwZSBBZHZhbmNlZFNlYXJjaEV4dGVybmFsRmllbGRPcHRpb24gPVxuICAgICh0eXBlb2YgQURWQU5DRURfU0VBUkNIX09QVElPTlMuZXh0ZXJuYWxGaWVsZHMpW251bWJlcl07XG5cbmV4cG9ydCBjb25zdCBpc0FkdmFuY2VkU2VhcmNoRXh0ZXJuYWxGaWVsZE9wdGlvbiA9IChcbiAgICBmaWVsZDogc3RyaW5nLFxuKTogZmllbGQgaXMgQWR2YW5jZWRTZWFyY2hFeHRlcm5hbEZpZWxkT3B0aW9uID0+XG4gICAgQURWQU5DRURfU0VBUkNIX09QVElPTlMuZXh0ZXJuYWxGaWVsZHMuaW5jbHVkZXMoZmllbGQgYXMgQWR2YW5jZWRTZWFyY2hFeHRlcm5hbEZpZWxkT3B0aW9uKTtcblxuZXhwb3J0IHR5cGUgQWR2YW5jZWRTZWFyY2hRdWFsaWZpZXJPcHRpb24gPVxuICAgICh0eXBlb2YgQURWQU5DRURfU0VBUkNIX09QVElPTlMucXVhbGlmaWVycylba2V5b2YgdHlwZW9mIEFEVkFOQ0VEX1NFQVJDSF9PUFRJT05TLnF1YWxpZmllcnNdW251bWJlcl07XG5cbmV4cG9ydCB0eXBlIEFkdmFuY2VkU2VhcmNoUmVzdWx0c1BlclBhZ2VPcHRpb24gPVxuICAgICh0eXBlb2YgQURWQU5DRURfU0VBUkNIX09QVElPTlMucmVzdWx0c1BlclBhZ2UpW251bWJlcl07XG5cbmV4cG9ydCB0eXBlIEFkdmFuY2VkU2VhcmNoTGFuZ3VhZ2VPcHRpb24gPSAoa2V5b2YgdHlwZW9mIEFEVkFOQ0VEX1NFQVJDSF9PUFRJT05TLmxhbmd1YWdlcylbbnVtYmVyXTtcblxuZXhwb3J0IHR5cGUgQWR2YW5jZWRTZWFyY2hRdWFsaWZpZXIgPSBrZXlvZiB0eXBlb2YgQURWQU5DRURfU0VBUkNIX09QVElPTlMucXVhbGlmaWVycztcblxuZXhwb3J0IGludGVyZmFjZSBBZHZhbmNlZFNlYXJjaFF1ZXJ5Um93IHtcbiAgICBib29sZWFuPzogQWR2YW5jZWRTZWFyY2hCb29sZWFuT3B0aW9uO1xuICAgIGZpZWxkPzpcbiAgICAgICAgfCBBZHZhbmNlZFNlYXJjaEZpZWxkT3B0aW9uXG4gICAgICAgIHwgQWR2YW5jZWRTZWFyY2hMb2NhbEZpZWxkT3B0aW9uXG4gICAgICAgIHwgQWR2YW5jZWRTZWFyY2hFeHRlcm5hbEZpZWxkT3B0aW9uO1xuICAgIHF1YWxpZmllcj86IEFkdmFuY2VkU2VhcmNoUXVhbGlmaWVyT3B0aW9uO1xuICAgIHF1ZXJ5OiBzdHJpbmc7XG59XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWNvbmZpZy5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9zcy1zZWFyY2gtYmFyL21vZGVscy9zZWFyY2gtY29uZmlnLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZHZhbmNlZFNlYXJjaFF1ZXJ5Um93IH0gZnJvbSAnLi9hZHZhbmNlZC1zZWFyY2gubW9kZWwnO1xuaW1wb3J0IHsgU2VhcmNoU2NvcGUgfSBmcm9tICcuL3NlYXJjaC1zY29wZS5tb2RlbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VhcmNoQ29uZmlnIHtcbiAgICBpbnN0aXR1dGlvbjogJ2J5dScgfCAnbGF3JyB8ICdlbnNpZ24nO1xuICAgIHNob3dBZHZhbmNlZFNlYXJjaDogYm9vbGVhbjtcbiAgICBzaG93QWR2YW5jZWRTZWFyY2hBc1RleHQ6IGJvb2xlYW47XG4gICAgc2NvcGU6IFNlYXJjaFNjb3BlO1xuICAgIHE6IHN0cmluZztcbiAgICBhZHZhbmNlZFNlYXJjaFF1ZXJ5Um93czogQWR2YW5jZWRTZWFyY2hRdWVyeVJvd1tdO1xuICAgIGxvY2FsQWR2YW5jZWRTZWFyY2g6IHtcbiAgICAgICAgY3JlYXRpb25EYXRlOiBEYXRlO1xuICAgICAgICBzZWxlY3RlZExhbmd1YWdlczogc3RyaW5nW107XG4gICAgICAgIHNlbGVjdGVkUmVzb3VyY2VUeXBlczogc3RyaW5nW107XG4gICAgICAgIHNlbGVjdGVkQ29sbGVjdGlvbnM6IHN0cmluZ1tdO1xuICAgIH07XG4gICAgZXh0ZXJuYWxBZHZhbmNlZFNlYXJjaDoge1xuICAgICAgICBkYXRlUHVibGlzaGVkOiBEYXRlO1xuICAgICAgICBzZWxlY3RlZExhbmd1YWdlczogc3RyaW5nW107XG4gICAgICAgIGxpbWl0UmVzdWx0czoge1xuICAgICAgICAgICAgcGVlclJldmlld2VkOiBib29sZWFuO1xuICAgICAgICB9O1xuICAgICAgICBleHBhbmRSZXN1bHRzOiB7XG4gICAgICAgICAgICBhcHBseUVxdWl2YWxlbnRTdWJqZWN0czogYm9vbGVhbjtcbiAgICAgICAgICAgIGZ1bGxUZXh0OiBib29sZWFuO1xuICAgICAgICB9O1xuICAgIH07XG59XG5cbmludGVyZmFjZSBEYXRlIHtcbiAgICBmcm9tOiBzdHJpbmc7XG4gICAgdG86IHN0cmluZztcbn1cbiJdfQ==
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
const searchScopeValues = ['local', 'external'];
|
|
2
|
-
export const isSearchScope = (scope) => searchScopeValues.includes(scope);
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLXNjb3BlLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL3NzLXNlYXJjaC1iYXIvbW9kZWxzL3NlYXJjaC1zY29wZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLGlCQUFpQixHQUFHLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBVSxDQUFDO0FBRXpELE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUFDLEtBQWEsRUFBd0IsRUFBRSxDQUNqRSxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsS0FBb0IsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3Qgc2VhcmNoU2NvcGVWYWx1ZXMgPSBbJ2xvY2FsJywgJ2V4dGVybmFsJ10gYXMgY29uc3Q7XG5leHBvcnQgdHlwZSBTZWFyY2hTY29wZSA9ICh0eXBlb2Ygc2VhcmNoU2NvcGVWYWx1ZXMpW251bWJlcl07XG5leHBvcnQgY29uc3QgaXNTZWFyY2hTY29wZSA9IChzY29wZTogc3RyaW5nKTogc2NvcGUgaXMgU2VhcmNoU2NvcGUgPT5cbiAgICBzZWFyY2hTY29wZVZhbHVlcy5pbmNsdWRlcyhzY29wZSBhcyBTZWFyY2hTY29wZSk7XG4iXX0=
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { Pipe } from '@angular/core';
|
|
2
|
-
import { ADVANCED_SEARCH_FIELD_MAP } from '../constants';
|
|
3
|
-
import { isAdvancedSearchExternalFieldOption, isAdvancedSearchFieldOption, isAdvancedSearchLocalFieldOption, } from '../models/advanced-search.model';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class AdvancedFieldWarningPipe {
|
|
6
|
-
transform(queryRows, scope) {
|
|
7
|
-
let warning = '';
|
|
8
|
-
for (const row of queryRows) {
|
|
9
|
-
if (row.field &&
|
|
10
|
-
!isAdvancedSearchFieldOption(row.field) &&
|
|
11
|
-
(scope === 'local'
|
|
12
|
-
? !isAdvancedSearchLocalFieldOption(row.field)
|
|
13
|
-
: !isAdvancedSearchExternalFieldOption(row.field))) {
|
|
14
|
-
if (!warning)
|
|
15
|
-
warning = `Searching by <b>${ADVANCED_SEARCH_FIELD_MAP[row.field]}</b> is not an option for this tab. <b>${ADVANCED_SEARCH_FIELD_MAP['any']}</b> has replaced it.`;
|
|
16
|
-
else {
|
|
17
|
-
warning += '<br />All other unavailable options have also been replaced.';
|
|
18
|
-
return warning;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
return warning;
|
|
23
|
-
}
|
|
24
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: AdvancedFieldWarningPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
25
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.1.0", ngImport: i0, type: AdvancedFieldWarningPipe, isStandalone: true, name: "advancedFieldWarning" }); }
|
|
26
|
-
}
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: AdvancedFieldWarningPipe, decorators: [{
|
|
28
|
-
type: Pipe,
|
|
29
|
-
args: [{
|
|
30
|
-
name: 'advancedFieldWarning',
|
|
31
|
-
standalone: true,
|
|
32
|
-
}]
|
|
33
|
-
}] });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtZmllbGQtd2FybmluZy5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL3NzLXNlYXJjaC1iYXIvcGlwZXMvYWR2YW5jZWQtZmllbGQtd2FybmluZy5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN6RCxPQUFPLEVBRUgsbUNBQW1DLEVBQ25DLDJCQUEyQixFQUMzQixnQ0FBZ0MsR0FDbkMsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFPekMsTUFBTSxPQUFPLHdCQUF3QjtJQUNqQyxTQUFTLENBQUMsU0FBbUMsRUFBRSxLQUFrQjtRQUM3RCxJQUFJLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDakIsS0FBSyxNQUFNLEdBQUcsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUMxQixJQUNJLEdBQUcsQ0FBQyxLQUFLO2dCQUNULENBQUMsMkJBQTJCLENBQUMsR0FBRyxDQUFDLEtBQWUsQ0FBQztnQkFDakQsQ0FBQyxLQUFLLEtBQUssT0FBTztvQkFDZCxDQUFDLENBQUMsQ0FBQyxnQ0FBZ0MsQ0FBQyxHQUFHLENBQUMsS0FBZSxDQUFDO29CQUN4RCxDQUFDLENBQUMsQ0FBQyxtQ0FBbUMsQ0FBQyxHQUFHLENBQUMsS0FBZSxDQUFDLENBQUMsRUFDbEUsQ0FBQztnQkFDQyxJQUFJLENBQUMsT0FBTztvQkFDUixPQUFPLEdBQUcsbUJBQ04seUJBQXlCLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FDdkMsMENBQ0kseUJBQXlCLENBQUMsS0FBSyxDQUNuQyx1QkFBdUIsQ0FBQztxQkFDdkIsQ0FBQztvQkFDRixPQUFPLElBQUksOERBQThELENBQUM7b0JBQzFFLE9BQU8sT0FBTyxDQUFDO2dCQUNuQixDQUFDO1lBQ0wsQ0FBQztRQUNMLENBQUM7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNuQixDQUFDOzhHQXhCUSx3QkFBd0I7NEdBQXhCLHdCQUF3Qjs7MkZBQXhCLHdCQUF3QjtrQkFKcEMsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsc0JBQXNCO29CQUM1QixVQUFVLEVBQUUsSUFBSTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBRFZBTkNFRF9TRUFSQ0hfRklFTERfTUFQIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcbmltcG9ydCB7XG4gICAgQWR2YW5jZWRTZWFyY2hRdWVyeVJvdyxcbiAgICBpc0FkdmFuY2VkU2VhcmNoRXh0ZXJuYWxGaWVsZE9wdGlvbixcbiAgICBpc0FkdmFuY2VkU2VhcmNoRmllbGRPcHRpb24sXG4gICAgaXNBZHZhbmNlZFNlYXJjaExvY2FsRmllbGRPcHRpb24sXG59IGZyb20gJy4uL21vZGVscy9hZHZhbmNlZC1zZWFyY2gubW9kZWwnO1xuaW1wb3J0IHsgU2VhcmNoU2NvcGUgfSBmcm9tICcuLi9tb2RlbHMvc2VhcmNoLXNjb3BlLm1vZGVsJztcblxuQFBpcGUoe1xuICAgIG5hbWU6ICdhZHZhbmNlZEZpZWxkV2FybmluZycsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgQWR2YW5jZWRGaWVsZFdhcm5pbmdQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgdHJhbnNmb3JtKHF1ZXJ5Um93czogQWR2YW5jZWRTZWFyY2hRdWVyeVJvd1tdLCBzY29wZTogU2VhcmNoU2NvcGUpOiBzdHJpbmcge1xuICAgICAgICBsZXQgd2FybmluZyA9ICcnO1xuICAgICAgICBmb3IgKGNvbnN0IHJvdyBvZiBxdWVyeVJvd3MpIHtcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICByb3cuZmllbGQgJiZcbiAgICAgICAgICAgICAgICAhaXNBZHZhbmNlZFNlYXJjaEZpZWxkT3B0aW9uKHJvdy5maWVsZCBhcyBzdHJpbmcpICYmXG4gICAgICAgICAgICAgICAgKHNjb3BlID09PSAnbG9jYWwnXG4gICAgICAgICAgICAgICAgICAgID8gIWlzQWR2YW5jZWRTZWFyY2hMb2NhbEZpZWxkT3B0aW9uKHJvdy5maWVsZCBhcyBzdHJpbmcpXG4gICAgICAgICAgICAgICAgICAgIDogIWlzQWR2YW5jZWRTZWFyY2hFeHRlcm5hbEZpZWxkT3B0aW9uKHJvdy5maWVsZCBhcyBzdHJpbmcpKVxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgaWYgKCF3YXJuaW5nKVxuICAgICAgICAgICAgICAgICAgICB3YXJuaW5nID0gYFNlYXJjaGluZyBieSA8Yj4ke1xuICAgICAgICAgICAgICAgICAgICAgICAgQURWQU5DRURfU0VBUkNIX0ZJRUxEX01BUFtyb3cuZmllbGRdXG4gICAgICAgICAgICAgICAgICAgIH08L2I+IGlzIG5vdCBhbiBvcHRpb24gZm9yIHRoaXMgdGFiLiA8Yj4ke1xuICAgICAgICAgICAgICAgICAgICAgICAgQURWQU5DRURfU0VBUkNIX0ZJRUxEX01BUFsnYW55J11cbiAgICAgICAgICAgICAgICAgICAgfTwvYj4gaGFzIHJlcGxhY2VkIGl0LmA7XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHdhcm5pbmcgKz0gJzxiciAvPkFsbCBvdGhlciB1bmF2YWlsYWJsZSBvcHRpb25zIGhhdmUgYWxzbyBiZWVuIHJlcGxhY2VkLic7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB3YXJuaW5nO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gd2FybmluZztcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { Pipe } from '@angular/core';
|
|
2
|
-
import { ADVANCED_SEARCH_FIELD_MAP, ADVANCED_SEARCH_OPTIONS, ADVANCED_SEARCH_QUALIFIER_MAP, } from '../constants';
|
|
3
|
-
import { isAdvancedSearchExternalFieldOption, } from '../models/advanced-search.model';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "./field-by-scope.pipe";
|
|
6
|
-
export class SsAdvancedQueriesPipe {
|
|
7
|
-
constructor(fieldByScopePipe) {
|
|
8
|
-
this.fieldByScopePipe = fieldByScopePipe;
|
|
9
|
-
}
|
|
10
|
-
transform(queryRows, scope) {
|
|
11
|
-
return queryRows
|
|
12
|
-
.map((row, i) => {
|
|
13
|
-
const b = i !== 0 ? row.boolean || ADVANCED_SEARCH_OPTIONS.boolean[0] : '';
|
|
14
|
-
const f = this.fieldByScopePipe.transform(row.field ?? ADVANCED_SEARCH_OPTIONS.fields[0], scope);
|
|
15
|
-
const o = isAdvancedSearchExternalFieldOption(f)
|
|
16
|
-
? 'contains'
|
|
17
|
-
: row.qualifier ??
|
|
18
|
-
ADVANCED_SEARCH_OPTIONS.qualifiers[f][0];
|
|
19
|
-
return `${b ? b + ' ' : ''}${ADVANCED_SEARCH_FIELD_MAP[f]} ${ADVANCED_SEARCH_QUALIFIER_MAP[o]} <b>${row.query}</b>`;
|
|
20
|
-
})
|
|
21
|
-
.join(' ');
|
|
22
|
-
}
|
|
23
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: SsAdvancedQueriesPipe, deps: [{ token: i1.FieldByScopePipe }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
24
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.1.0", ngImport: i0, type: SsAdvancedQueriesPipe, isStandalone: true, name: "ssAdvancedQueries" }); }
|
|
25
|
-
}
|
|
26
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: SsAdvancedQueriesPipe, decorators: [{
|
|
27
|
-
type: Pipe,
|
|
28
|
-
args: [{
|
|
29
|
-
name: 'ssAdvancedQueries',
|
|
30
|
-
standalone: true,
|
|
31
|
-
}]
|
|
32
|
-
}], ctorParameters: () => [{ type: i1.FieldByScopePipe }] });
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtcXVlcmllcy5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL3NzLXNlYXJjaC1iYXIvcGlwZXMvYWR2YW5jZWQtcXVlcmllcy5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFDSCx5QkFBeUIsRUFDekIsdUJBQXVCLEVBQ3ZCLDZCQUE2QixHQUNoQyxNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBS0gsbUNBQW1DLEdBQ3RDLE1BQU0saUNBQWlDLENBQUM7OztBQVF6QyxNQUFNLE9BQU8scUJBQXFCO0lBQzlCLFlBQW9CLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBQUcsQ0FBQztJQUMxRCxTQUFTLENBQUMsU0FBbUMsRUFBRSxLQUFrQjtRQUM3RCxPQUFPLFNBQVM7YUFDWCxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDWixNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxJQUFJLHVCQUF1QixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzNFLE1BQU0sQ0FBQyxHQUdtQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUNyRSxHQUFHLENBQUMsS0FBSyxJQUFJLHVCQUF1QixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFDOUMsS0FBSyxDQUNSLENBQUM7WUFDRixNQUFNLENBQUMsR0FBRyxtQ0FBbUMsQ0FBQyxDQUFDLENBQUM7Z0JBQzVDLENBQUMsQ0FBQyxVQUFVO2dCQUNaLENBQUMsQ0FBQyxHQUFHLENBQUMsU0FBUztvQkFDYix1QkFBdUIsQ0FBQyxVQUFVLENBQzlCLENBQStELENBQ2xFLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDWCxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQ3RCLHlCQUF5QixDQUFDLENBQUMsQ0FDL0IsSUFBSSw2QkFBNkIsQ0FBQyxDQUErQyxDQUFDLE9BQU8sR0FBRyxDQUFDLEtBQUssTUFBTSxDQUFDO1FBQzdHLENBQUMsQ0FBQzthQUNELElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuQixDQUFDOzhHQXhCUSxxQkFBcUI7NEdBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFKakMsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsbUJBQW1CO29CQUN6QixVQUFVLEVBQUUsSUFBSTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEFEVkFOQ0VEX1NFQVJDSF9GSUVMRF9NQVAsXG4gICAgQURWQU5DRURfU0VBUkNIX09QVElPTlMsXG4gICAgQURWQU5DRURfU0VBUkNIX1FVQUxJRklFUl9NQVAsXG59IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQge1xuICAgIEFkdmFuY2VkU2VhcmNoRXh0ZXJuYWxGaWVsZE9wdGlvbixcbiAgICBBZHZhbmNlZFNlYXJjaEZpZWxkT3B0aW9uLFxuICAgIEFkdmFuY2VkU2VhcmNoTG9jYWxGaWVsZE9wdGlvbixcbiAgICBBZHZhbmNlZFNlYXJjaFF1ZXJ5Um93LFxuICAgIGlzQWR2YW5jZWRTZWFyY2hFeHRlcm5hbEZpZWxkT3B0aW9uLFxufSBmcm9tICcuLi9tb2RlbHMvYWR2YW5jZWQtc2VhcmNoLm1vZGVsJztcbmltcG9ydCB7IFNlYXJjaFNjb3BlIH0gZnJvbSAnLi4vbW9kZWxzL3NlYXJjaC1zY29wZS5tb2RlbCc7XG5pbXBvcnQgeyBGaWVsZEJ5U2NvcGVQaXBlIH0gZnJvbSAnLi9maWVsZC1ieS1zY29wZS5waXBlJztcblxuQFBpcGUoe1xuICAgIG5hbWU6ICdzc0FkdmFuY2VkUXVlcmllcycsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgU3NBZHZhbmNlZFF1ZXJpZXNQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBmaWVsZEJ5U2NvcGVQaXBlOiBGaWVsZEJ5U2NvcGVQaXBlKSB7fVxuICAgIHRyYW5zZm9ybShxdWVyeVJvd3M6IEFkdmFuY2VkU2VhcmNoUXVlcnlSb3dbXSwgc2NvcGU6IFNlYXJjaFNjb3BlKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHF1ZXJ5Um93c1xuICAgICAgICAgICAgLm1hcCgocm93LCBpKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgYiA9IGkgIT09IDAgPyByb3cuYm9vbGVhbiB8fCBBRFZBTkNFRF9TRUFSQ0hfT1BUSU9OUy5ib29sZWFuWzBdIDogJyc7XG4gICAgICAgICAgICAgICAgY29uc3QgZjpcbiAgICAgICAgICAgICAgICAgICAgfCBBZHZhbmNlZFNlYXJjaEZpZWxkT3B0aW9uXG4gICAgICAgICAgICAgICAgICAgIHwgQWR2YW5jZWRTZWFyY2hMb2NhbEZpZWxkT3B0aW9uXG4gICAgICAgICAgICAgICAgICAgIHwgQWR2YW5jZWRTZWFyY2hFeHRlcm5hbEZpZWxkT3B0aW9uID0gdGhpcy5maWVsZEJ5U2NvcGVQaXBlLnRyYW5zZm9ybShcbiAgICAgICAgICAgICAgICAgICAgcm93LmZpZWxkID8/IEFEVkFOQ0VEX1NFQVJDSF9PUFRJT05TLmZpZWxkc1swXSxcbiAgICAgICAgICAgICAgICAgICAgc2NvcGUsXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBjb25zdCBvID0gaXNBZHZhbmNlZFNlYXJjaEV4dGVybmFsRmllbGRPcHRpb24oZilcbiAgICAgICAgICAgICAgICAgICAgPyAnY29udGFpbnMnXG4gICAgICAgICAgICAgICAgICAgIDogcm93LnF1YWxpZmllciA/P1xuICAgICAgICAgICAgICAgICAgICAgIEFEVkFOQ0VEX1NFQVJDSF9PUFRJT05TLnF1YWxpZmllcnNbXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGYgYXMgQWR2YW5jZWRTZWFyY2hGaWVsZE9wdGlvbiB8IEFkdmFuY2VkU2VhcmNoTG9jYWxGaWVsZE9wdGlvblxuICAgICAgICAgICAgICAgICAgICAgIF1bMF07XG4gICAgICAgICAgICAgICAgcmV0dXJuIGAke2IgPyBiICsgJyAnIDogJyd9JHtcbiAgICAgICAgICAgICAgICAgICAgQURWQU5DRURfU0VBUkNIX0ZJRUxEX01BUFtmXVxuICAgICAgICAgICAgICAgIH0gJHtBRFZBTkNFRF9TRUFSQ0hfUVVBTElGSUVSX01BUFtvIGFzIGtleW9mIHR5cGVvZiBBRFZBTkNFRF9TRUFSQ0hfUVVBTElGSUVSX01BUF19IDxiPiR7cm93LnF1ZXJ5fTwvYj5gO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5qb2luKCcgJyk7XG4gICAgfVxufVxuIl19
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { Pipe } from '@angular/core';
|
|
2
|
-
import { isAdvancedSearchExternalFieldOption, isAdvancedSearchFieldOption, isAdvancedSearchLocalFieldOption, } from '../models/advanced-search.model';
|
|
3
|
-
import { ADVANCED_SEARCH_OPTIONS } from '../constants';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* Returns the field value based on the scope. If a field value does not exist in a specific scope, the default is returned.
|
|
7
|
-
*/
|
|
8
|
-
export class FieldByScopePipe {
|
|
9
|
-
transform(fieldValue, scope) {
|
|
10
|
-
if (isAdvancedSearchFieldOption(fieldValue) ||
|
|
11
|
-
(scope === 'local'
|
|
12
|
-
? isAdvancedSearchLocalFieldOption(fieldValue)
|
|
13
|
-
: isAdvancedSearchExternalFieldOption(fieldValue)))
|
|
14
|
-
return fieldValue;
|
|
15
|
-
return ADVANCED_SEARCH_OPTIONS.fields[0];
|
|
16
|
-
}
|
|
17
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: FieldByScopePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
18
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.1.0", ngImport: i0, type: FieldByScopePipe, isStandalone: true, name: "fieldByScope" }); }
|
|
19
|
-
}
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: FieldByScopePipe, decorators: [{
|
|
21
|
-
type: Pipe,
|
|
22
|
-
args: [{
|
|
23
|
-
name: 'fieldByScope',
|
|
24
|
-
standalone: true,
|
|
25
|
-
}]
|
|
26
|
-
}] });
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtYnktc2NvcGUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9zcy1zZWFyY2gtYmFyL3BpcGVzL2ZpZWxkLWJ5LXNjb3BlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUlILG1DQUFtQyxFQUNuQywyQkFBMkIsRUFDM0IsZ0NBQWdDLEdBQ25DLE1BQU0saUNBQWlDLENBQUM7QUFDekMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sY0FBYyxDQUFDOztBQUd2RDs7R0FFRztBQUtILE1BQU0sT0FBTyxnQkFBZ0I7SUFDekIsU0FBUyxDQUNMLFVBR3VDLEVBQ3ZDLEtBQWtCO1FBS2xCLElBQ0ksMkJBQTJCLENBQUMsVUFBVSxDQUFDO1lBQ3ZDLENBQUMsS0FBSyxLQUFLLE9BQU87Z0JBQ2QsQ0FBQyxDQUFDLGdDQUFnQyxDQUFDLFVBQVUsQ0FBQztnQkFDOUMsQ0FBQyxDQUFDLG1DQUFtQyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBRXRELE9BQU8sVUFBVSxDQUFDO1FBQ3RCLE9BQU8sdUJBQXVCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzdDLENBQUM7OEdBbkJRLGdCQUFnQjs0R0FBaEIsZ0JBQWdCOzsyRkFBaEIsZ0JBQWdCO2tCQUo1QixJQUFJO21CQUFDO29CQUNGLElBQUksRUFBRSxjQUFjO29CQUNwQixVQUFVLEVBQUUsSUFBSTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEFkdmFuY2VkU2VhcmNoRXh0ZXJuYWxGaWVsZE9wdGlvbixcbiAgICBBZHZhbmNlZFNlYXJjaEZpZWxkT3B0aW9uLFxuICAgIEFkdmFuY2VkU2VhcmNoTG9jYWxGaWVsZE9wdGlvbixcbiAgICBpc0FkdmFuY2VkU2VhcmNoRXh0ZXJuYWxGaWVsZE9wdGlvbixcbiAgICBpc0FkdmFuY2VkU2VhcmNoRmllbGRPcHRpb24sXG4gICAgaXNBZHZhbmNlZFNlYXJjaExvY2FsRmllbGRPcHRpb24sXG59IGZyb20gJy4uL21vZGVscy9hZHZhbmNlZC1zZWFyY2gubW9kZWwnO1xuaW1wb3J0IHsgQURWQU5DRURfU0VBUkNIX09QVElPTlMgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgU2VhcmNoU2NvcGUgfSBmcm9tICcuLi9tb2RlbHMvc2VhcmNoLXNjb3BlLm1vZGVsJztcblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBmaWVsZCB2YWx1ZSBiYXNlZCBvbiB0aGUgc2NvcGUuIElmIGEgZmllbGQgdmFsdWUgZG9lcyBub3QgZXhpc3QgaW4gYSBzcGVjaWZpYyBzY29wZSwgdGhlIGRlZmF1bHQgaXMgcmV0dXJuZWQuXG4gKi9cbkBQaXBlKHtcbiAgICBuYW1lOiAnZmllbGRCeVNjb3BlJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBGaWVsZEJ5U2NvcGVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgdHJhbnNmb3JtKFxuICAgICAgICBmaWVsZFZhbHVlOlxuICAgICAgICAgICAgfCBBZHZhbmNlZFNlYXJjaEZpZWxkT3B0aW9uXG4gICAgICAgICAgICB8IEFkdmFuY2VkU2VhcmNoTG9jYWxGaWVsZE9wdGlvblxuICAgICAgICAgICAgfCBBZHZhbmNlZFNlYXJjaEV4dGVybmFsRmllbGRPcHRpb24sXG4gICAgICAgIHNjb3BlOiBTZWFyY2hTY29wZSxcbiAgICApOlxuICAgICAgICB8IEFkdmFuY2VkU2VhcmNoRmllbGRPcHRpb25cbiAgICAgICAgfCBBZHZhbmNlZFNlYXJjaExvY2FsRmllbGRPcHRpb25cbiAgICAgICAgfCBBZHZhbmNlZFNlYXJjaEV4dGVybmFsRmllbGRPcHRpb24ge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICBpc0FkdmFuY2VkU2VhcmNoRmllbGRPcHRpb24oZmllbGRWYWx1ZSkgfHxcbiAgICAgICAgICAgIChzY29wZSA9PT0gJ2xvY2FsJ1xuICAgICAgICAgICAgICAgID8gaXNBZHZhbmNlZFNlYXJjaExvY2FsRmllbGRPcHRpb24oZmllbGRWYWx1ZSlcbiAgICAgICAgICAgICAgICA6IGlzQWR2YW5jZWRTZWFyY2hFeHRlcm5hbEZpZWxkT3B0aW9uKGZpZWxkVmFsdWUpKVxuICAgICAgICApXG4gICAgICAgICAgICByZXR1cm4gZmllbGRWYWx1ZTtcbiAgICAgICAgcmV0dXJuIEFEVkFOQ0VEX1NFQVJDSF9PUFRJT05TLmZpZWxkc1swXTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output, ViewChild, inject, } from '@angular/core';
|
|
2
|
-
import { FormBuilder, ReactiveFormsModule, Validators } from '@angular/forms';
|
|
3
|
-
import { MatTooltip, MatTooltipModule } from '@angular/material/tooltip';
|
|
4
|
-
import { Subscription } from 'rxjs';
|
|
5
|
-
import { startWith, filter } from 'rxjs/operators';
|
|
6
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
7
|
-
import { CommonModule } from '@angular/common';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@angular/material/tooltip";
|
|
10
|
-
import * as i2 from "@angular/forms";
|
|
11
|
-
import * as i3 from "@angular/common";
|
|
12
|
-
export class SimpleSearchComponent {
|
|
13
|
-
constructor() {
|
|
14
|
-
this.fb = inject(FormBuilder);
|
|
15
|
-
this.subscription = new Subscription();
|
|
16
|
-
this.simpleSearch = new EventEmitter();
|
|
17
|
-
this.clearSimpleSearch = new EventEmitter();
|
|
18
|
-
this.isSubmitted = false;
|
|
19
|
-
this.searchForm = this.fb.nonNullable.group({
|
|
20
|
-
simpleQuery: ['', Validators.required],
|
|
21
|
-
});
|
|
22
|
-
this.emitSimpleSearch = () => {
|
|
23
|
-
this.isSubmitted = true;
|
|
24
|
-
// Don't perform a search unless there is a query
|
|
25
|
-
if (this.simpleQuery.invalid) {
|
|
26
|
-
this.showSearchValidationToolTip();
|
|
27
|
-
return;
|
|
28
|
-
}
|
|
29
|
-
this.simpleSearch.emit({ ...this.config, q: this.simpleQuery.value });
|
|
30
|
-
this.isSubmitted = false;
|
|
31
|
-
};
|
|
32
|
-
this.clearQuery = () => {
|
|
33
|
-
this.simpleQuery.setValue('');
|
|
34
|
-
this.clearSimpleSearch.emit();
|
|
35
|
-
};
|
|
36
|
-
this.setupForm = () => {
|
|
37
|
-
this.simpleQuery.setValue(this.config.q || this.config.advancedSearchQueryRows[0]?.query || '');
|
|
38
|
-
};
|
|
39
|
-
this.showSearchValidationToolTip = () => {
|
|
40
|
-
this.searchInput.nativeElement.focus();
|
|
41
|
-
this.inputTooltip.disabled = false;
|
|
42
|
-
this.inputTooltip.show();
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
set config(config) {
|
|
46
|
-
this._config = config;
|
|
47
|
-
this.setupForm();
|
|
48
|
-
}
|
|
49
|
-
get config() {
|
|
50
|
-
return this._config;
|
|
51
|
-
}
|
|
52
|
-
get simpleQuery() {
|
|
53
|
-
return this.searchForm.get('simpleQuery');
|
|
54
|
-
}
|
|
55
|
-
ngOnInit() {
|
|
56
|
-
// Ensure validation tooltip closes when uses enters a query
|
|
57
|
-
this.subscription.add(this.simpleQuery.valueChanges
|
|
58
|
-
.pipe(startWith(''))
|
|
59
|
-
.pipe(filter(() => !!this.inputTooltip))
|
|
60
|
-
.subscribe(() => {
|
|
61
|
-
this.inputTooltip.disabled = true;
|
|
62
|
-
}));
|
|
63
|
-
}
|
|
64
|
-
ngOnDestroy() {
|
|
65
|
-
this.subscription.unsubscribe();
|
|
66
|
-
}
|
|
67
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: SimpleSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
68
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.0", type: SimpleSearchComponent, isStandalone: true, selector: "lib-ss-simple-search", inputs: { config: "config" }, outputs: { simpleSearch: "simpleSearch", clearSimpleSearch: "clearSimpleSearch" }, viewQueries: [{ propertyName: "searchInput", first: true, predicate: ["searchInput"], descendants: true }, { propertyName: "inputTooltip", first: true, predicate: MatTooltip, descendants: true }], ngImport: i0, template: "<div class=\"ss-container\">\n <form [formGroup]=\"searchForm\" (submit)=\"emitSimpleSearch()\" data-testid=\"searchForm\">\n <input\n #searchInput\n data-testid=\"searchInput\"\n id=\"q\"\n name=\"q\"\n type=\"text\"\n required\n aria-required=\"true\"\n aria-label=\"search input\"\n autocapitalize=\"off\"\n formControlName=\"simpleQuery\"\n matTooltip=\"Fill out this field\"\n [matTooltipPosition]=\"'above'\"\n [matTooltipDisabled]=\"true\"\n [attr.aria-invalid]=\"isSubmitted && simpleQuery.invalid\"\n />\n <label for=\"q\" data-testid=\"label\">{{\n config.scope === 'local'\n ? 'Books, media, special collections and more'\n : 'Ebooks, articles, journals, databases, streaming media and more'\n }}</label>\n <button\n type=\"submit\"\n aria-label=\"search\"\n data-testid=\"searchBtn\"\n [ngClass]=\"{ ensign: config.institution === 'ensign' }\"\n >\n <span class=\"material-symbols-outlined ss-icon\"> search </span>\n </button>\n </form>\n\n @if (simpleQuery.value) {\n <button id=\"clear\" (click)=\"clearQuery()\" data-testid=\"clearBtn\">\n <span class=\"material-symbols-outlined ss-icon\"> cancel </span>\n </button>\n }\n</div>\n", styles: ["a,button{border:none;background:none;font-family:inherit;padding:0;margin:0;font-size:inherit;color:#1c7ec9;text-decoration:none;cursor:pointer}a:hover,button:hover{color:#8ab6f0}.ss-container{position:relative}form{display:flex}.ss-icon{font-size:1em}button[type=submit]{background:#fff;border-radius:0 4px 4px 0;margin:0;width:3em;cursor:pointer;display:flex;justify-content:center;align-items:center;transition:color .2s,background-color .2s}button[type=submit] .ss-icon{color:#0047ba;font-size:1.7em}button[type=submit]:hover .ss-icon{color:#6892ca}button[type=submit].ensign .ss-icon{color:#2b6042}button[type=submit].ensign .ss-icon:hover{color:#357551}#clear{position:absolute;right:3em;top:0%;height:100%;display:flex;justify-content:center;align-items:center;padding:0 0 0 .375rem}#clear .ss-icon{height:auto;color:#acacac;transition:color ease-in-out .05s}#clear:hover .ss-icon{color:#666}input[type=text]{background-color:#fff;color:#000;font-family:inherit;border:none;font-weight:600;margin:0;overflow:hidden;cursor:text;width:calc(100% - 3em);font-size:1em;border-radius:4px 0 0 4px;padding:.56em 2em .56em .56em}input[type=text]:focus{outline:none}input[type=text]:valid+label,input[type=text]:focus+label{font-size:.75em;top:-.8em;padding-top:0;padding-bottom:0;pointer-events:none;margin-top:0;margin-left:.56em;cursor:default}input[type=text]:valid+label:before,input[type=text]:focus+label:before{opacity:1}label{cursor:text;transition:all .1s ease-in-out;position:absolute;padding:.5em .28em;margin-left:.28em;left:0;color:#707070;z-index:1;max-width:calc(100% - 3.4em);white-space:nowrap;line-height:normal;overflow:hidden;text-overflow:ellipsis;border-radius:4px}label:before{transition:all .1s ease-in-out;background-color:#fff;content:\"\";position:absolute;inset:0;opacity:0;z-index:-1}\n"], dependencies: [{ kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i1.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
|
|
69
|
-
}
|
|
70
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: SimpleSearchComponent, decorators: [{
|
|
71
|
-
type: Component,
|
|
72
|
-
args: [{ selector: 'lib-ss-simple-search', standalone: true, imports: [MatTooltipModule, MatIconModule, ReactiveFormsModule, CommonModule], template: "<div class=\"ss-container\">\n <form [formGroup]=\"searchForm\" (submit)=\"emitSimpleSearch()\" data-testid=\"searchForm\">\n <input\n #searchInput\n data-testid=\"searchInput\"\n id=\"q\"\n name=\"q\"\n type=\"text\"\n required\n aria-required=\"true\"\n aria-label=\"search input\"\n autocapitalize=\"off\"\n formControlName=\"simpleQuery\"\n matTooltip=\"Fill out this field\"\n [matTooltipPosition]=\"'above'\"\n [matTooltipDisabled]=\"true\"\n [attr.aria-invalid]=\"isSubmitted && simpleQuery.invalid\"\n />\n <label for=\"q\" data-testid=\"label\">{{\n config.scope === 'local'\n ? 'Books, media, special collections and more'\n : 'Ebooks, articles, journals, databases, streaming media and more'\n }}</label>\n <button\n type=\"submit\"\n aria-label=\"search\"\n data-testid=\"searchBtn\"\n [ngClass]=\"{ ensign: config.institution === 'ensign' }\"\n >\n <span class=\"material-symbols-outlined ss-icon\"> search </span>\n </button>\n </form>\n\n @if (simpleQuery.value) {\n <button id=\"clear\" (click)=\"clearQuery()\" data-testid=\"clearBtn\">\n <span class=\"material-symbols-outlined ss-icon\"> cancel </span>\n </button>\n }\n</div>\n", styles: ["a,button{border:none;background:none;font-family:inherit;padding:0;margin:0;font-size:inherit;color:#1c7ec9;text-decoration:none;cursor:pointer}a:hover,button:hover{color:#8ab6f0}.ss-container{position:relative}form{display:flex}.ss-icon{font-size:1em}button[type=submit]{background:#fff;border-radius:0 4px 4px 0;margin:0;width:3em;cursor:pointer;display:flex;justify-content:center;align-items:center;transition:color .2s,background-color .2s}button[type=submit] .ss-icon{color:#0047ba;font-size:1.7em}button[type=submit]:hover .ss-icon{color:#6892ca}button[type=submit].ensign .ss-icon{color:#2b6042}button[type=submit].ensign .ss-icon:hover{color:#357551}#clear{position:absolute;right:3em;top:0%;height:100%;display:flex;justify-content:center;align-items:center;padding:0 0 0 .375rem}#clear .ss-icon{height:auto;color:#acacac;transition:color ease-in-out .05s}#clear:hover .ss-icon{color:#666}input[type=text]{background-color:#fff;color:#000;font-family:inherit;border:none;font-weight:600;margin:0;overflow:hidden;cursor:text;width:calc(100% - 3em);font-size:1em;border-radius:4px 0 0 4px;padding:.56em 2em .56em .56em}input[type=text]:focus{outline:none}input[type=text]:valid+label,input[type=text]:focus+label{font-size:.75em;top:-.8em;padding-top:0;padding-bottom:0;pointer-events:none;margin-top:0;margin-left:.56em;cursor:default}input[type=text]:valid+label:before,input[type=text]:focus+label:before{opacity:1}label{cursor:text;transition:all .1s ease-in-out;position:absolute;padding:.5em .28em;margin-left:.28em;left:0;color:#707070;z-index:1;max-width:calc(100% - 3.4em);white-space:nowrap;line-height:normal;overflow:hidden;text-overflow:ellipsis;border-radius:4px}label:before{transition:all .1s ease-in-out;background-color:#fff;content:\"\";position:absolute;inset:0;opacity:0;z-index:-1}\n"] }]
|
|
73
|
-
}], propDecorators: { searchInput: [{
|
|
74
|
-
type: ViewChild,
|
|
75
|
-
args: ['searchInput']
|
|
76
|
-
}], inputTooltip: [{
|
|
77
|
-
type: ViewChild,
|
|
78
|
-
args: [MatTooltip]
|
|
79
|
-
}], config: [{
|
|
80
|
-
type: Input,
|
|
81
|
-
args: [{ required: true }]
|
|
82
|
-
}], simpleSearch: [{
|
|
83
|
-
type: Output
|
|
84
|
-
}], clearSimpleSearch: [{
|
|
85
|
-
type: Output
|
|
86
|
-
}] } });
|
|
87
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLXNlYXJjaC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc3Mtc2VhcmNoLWJhci9zaW1wbGUtc2VhcmNoL3NpbXBsZS1zZWFyY2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL3NzLXNlYXJjaC1iYXIvc2ltcGxlLXNlYXJjaC9zaW1wbGUtc2VhcmNoLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNULE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFlLG1CQUFtQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNGLE9BQU8sRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7QUFVL0MsTUFBTSxPQUFPLHFCQUFxQjtJQVBsQztRQVFxQixPQUFFLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBTWxDLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQVNoQyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFnQixDQUFDO1FBQ2hELHNCQUFpQixHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFDN0MsZ0JBQVcsR0FB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WSxDQUFDOzhCQU0zQyxXQUFXO3NCQUE1QyxTQUFTO3VCQUFDLGFBQWE7Z0JBSU8sWUFBWTtzQkFBMUMsU0FBUzt1QkFBQyxVQUFVO2dCQUdVLE1BQU07c0JBQXBDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQU9mLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csaUJBQWlCO3NCQUExQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgVmlld0NoaWxkLFxuICAgIGluamVjdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRUb29sdGlwLCBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHN0YXJ0V2l0aCwgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFNlYXJjaENvbmZpZyB9IGZyb20gJy4uL21vZGVscy9zZWFyY2gtY29uZmlnLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdsaWItc3Mtc2ltcGxlLXNlYXJjaCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbTWF0VG9vbHRpcE1vZHVsZSwgTWF0SWNvbk1vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgQ29tbW9uTW9kdWxlXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2ltcGxlLXNlYXJjaC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc2ltcGxlLXNlYXJjaC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBTaW1wbGVTZWFyY2hDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBmYiA9IGluamVjdChGb3JtQnVpbGRlcik7XG4gICAgQFZpZXdDaGlsZCgnc2VhcmNoSW5wdXQnKSBwcml2YXRlIHNlYXJjaElucHV0ITogRWxlbWVudFJlZjtcbiAgICAvLyBUaGUgdG9vbHRpcCBpcyBkaXNhYmxlZCBpbiB0aGUgdGVtcGxhdGUuXG4gICAgLy8gSXQgaXMgZW5hYmxlZCBhbmQgZGlzcGxheWVkIGlmIGEgdXNlciBzZWFyY2hlcyBhZ2FpbnN0IGFuIGVtcHR5IHF1ZXJ5IChzaW1wbGUgb3IgcTEpLlxuICAgIC8vIEFueSBjaGFuZ2UgdG8gdGhlIHNlYXJjaCBmaWVsZCBkaXNhYmxlcyB0aGUgdG9vbHRpcC5cbiAgICBAVmlld0NoaWxkKE1hdFRvb2x0aXApIHByaXZhdGUgaW5wdXRUb29sdGlwITogTWF0VG9vbHRpcDtcbiAgICBwcml2YXRlIHN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcbiAgICBwcml2YXRlIF9jb25maWchOiBTZWFyY2hDb25maWc7XG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgc2V0IGNvbmZpZyhjb25maWc6IFNlYXJjaENvbmZpZykge1xuICAgICAgICB0aGlzLl9jb25maWcgPSBjb25maWc7XG4gICAgICAgIHRoaXMuc2V0dXBGb3JtKCk7XG4gICAgfVxuICAgIGdldCBjb25maWcoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jb25maWc7XG4gICAgfVxuICAgIEBPdXRwdXQoKSBzaW1wbGVTZWFyY2ggPSBuZXcgRXZlbnRFbWl0dGVyPFNlYXJjaENvbmZpZz4oKTtcbiAgICBAT3V0cHV0KCkgY2xlYXJTaW1wbGVTZWFyY2ggPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gICAgcHJvdGVjdGVkIGlzU3VibWl0dGVkID0gZmFsc2U7XG4gICAgcHJvdGVjdGVkIHNlYXJjaEZvcm0gPSB0aGlzLmZiLm5vbk51bGxhYmxlLmdyb3VwKHtcbiAgICAgICAgc2ltcGxlUXVlcnk6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXG4gICAgfSk7XG5cbiAgICBnZXQgc2ltcGxlUXVlcnkoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnNlYXJjaEZvcm0uZ2V0KCdzaW1wbGVRdWVyeScpIGFzIEZvcm1Db250cm9sO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICAvLyBFbnN1cmUgdmFsaWRhdGlvbiB0b29sdGlwIGNsb3NlcyB3aGVuIHVzZXMgZW50ZXJzIGEgcXVlcnlcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkKFxuICAgICAgICAgICAgdGhpcy5zaW1wbGVRdWVyeS52YWx1ZUNoYW5nZXNcbiAgICAgICAgICAgICAgICAucGlwZShzdGFydFdpdGgoJycpKVxuICAgICAgICAgICAgICAgIC5waXBlKGZpbHRlcigoKSA9PiAhIXRoaXMuaW5wdXRUb29sdGlwKSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbnB1dFRvb2x0aXAuZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBlbWl0U2ltcGxlU2VhcmNoID0gKCkgPT4ge1xuICAgICAgICB0aGlzLmlzU3VibWl0dGVkID0gdHJ1ZTtcbiAgICAgICAgLy8gRG9uJ3QgcGVyZm9ybSBhIHNlYXJjaCB1bmxlc3MgdGhlcmUgaXMgYSBxdWVyeVxuICAgICAgICBpZiAodGhpcy5zaW1wbGVRdWVyeS5pbnZhbGlkKSB7XG4gICAgICAgICAgICB0aGlzLnNob3dTZWFyY2hWYWxpZGF0aW9uVG9vbFRpcCgpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc2ltcGxlU2VhcmNoLmVtaXQoeyAuLi50aGlzLmNvbmZpZywgcTogdGhpcy5zaW1wbGVRdWVyeS52YWx1ZSB9KTtcbiAgICAgICAgdGhpcy5pc1N1Ym1pdHRlZCA9IGZhbHNlO1xuICAgIH07XG5cbiAgICBwcm90ZWN0ZWQgY2xlYXJRdWVyeSA9ICgpID0+IHtcbiAgICAgICAgdGhpcy5zaW1wbGVRdWVyeS5zZXRWYWx1ZSgnJyk7XG4gICAgICAgIHRoaXMuY2xlYXJTaW1wbGVTZWFyY2guZW1pdCgpO1xuICAgIH07XG5cbiAgICBwcml2YXRlIHNldHVwRm9ybSA9ICgpID0+IHtcbiAgICAgICAgdGhpcy5zaW1wbGVRdWVyeS5zZXRWYWx1ZShcbiAgICAgICAgICAgIHRoaXMuY29uZmlnLnEgfHwgdGhpcy5jb25maWcuYWR2YW5jZWRTZWFyY2hRdWVyeVJvd3NbMF0/LnF1ZXJ5IHx8ICcnLFxuICAgICAgICApO1xuICAgIH07XG5cbiAgICBwcml2YXRlIHNob3dTZWFyY2hWYWxpZGF0aW9uVG9vbFRpcCA9ICgpID0+IHtcbiAgICAgICAgdGhpcy5zZWFyY2hJbnB1dC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgIHRoaXMuaW5wdXRUb29sdGlwLmRpc2FibGVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuaW5wdXRUb29sdGlwLnNob3coKTtcbiAgICB9O1xufVxuIiwiPGRpdiBjbGFzcz1cInNzLWNvbnRhaW5lclwiPlxuICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwic2VhcmNoRm9ybVwiIChzdWJtaXQpPVwiZW1pdFNpbXBsZVNlYXJjaCgpXCIgZGF0YS10ZXN0aWQ9XCJzZWFyY2hGb3JtXCI+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgI3NlYXJjaElucHV0XG4gICAgICAgICAgICBkYXRhLXRlc3RpZD1cInNlYXJjaElucHV0XCJcbiAgICAgICAgICAgIGlkPVwicVwiXG4gICAgICAgICAgICBuYW1lPVwicVwiXG4gICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICByZXF1aXJlZFxuICAgICAgICAgICAgYXJpYS1yZXF1aXJlZD1cInRydWVcIlxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cInNlYXJjaCBpbnB1dFwiXG4gICAgICAgICAgICBhdXRvY2FwaXRhbGl6ZT1cIm9mZlwiXG4gICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJzaW1wbGVRdWVyeVwiXG4gICAgICAgICAgICBtYXRUb29sdGlwPVwiRmlsbCBvdXQgdGhpcyBmaWVsZFwiXG4gICAgICAgICAgICBbbWF0VG9vbHRpcFBvc2l0aW9uXT1cIidhYm92ZSdcIlxuICAgICAgICAgICAgW21hdFRvb2x0aXBEaXNhYmxlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtaW52YWxpZF09XCJpc1N1Ym1pdHRlZCAmJiBzaW1wbGVRdWVyeS5pbnZhbGlkXCJcbiAgICAgICAgLz5cbiAgICAgICAgPGxhYmVsIGZvcj1cInFcIiBkYXRhLXRlc3RpZD1cImxhYmVsXCI+e3tcbiAgICAgICAgICAgIGNvbmZpZy5zY29wZSA9PT0gJ2xvY2FsJ1xuICAgICAgICAgICAgICAgID8gJ0Jvb2tzLCBtZWRpYSwgc3BlY2lhbCBjb2xsZWN0aW9ucyBhbmQgbW9yZSdcbiAgICAgICAgICAgICAgICA6ICdFYm9va3MsIGFydGljbGVzLCBqb3VybmFscywgZGF0YWJhc2VzLCBzdHJlYW1pbmcgbWVkaWEgYW5kIG1vcmUnXG4gICAgICAgIH19PC9sYWJlbD5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgdHlwZT1cInN1Ym1pdFwiXG4gICAgICAgICAgICBhcmlhLWxhYmVsPVwic2VhcmNoXCJcbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPVwic2VhcmNoQnRuXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgZW5zaWduOiBjb25maWcuaW5zdGl0dXRpb24gPT09ICdlbnNpZ24nIH1cIlxuICAgICAgICA+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgc3MtaWNvblwiPiBzZWFyY2ggPC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICA8L2Zvcm0+XG5cbiAgICBAaWYgKHNpbXBsZVF1ZXJ5LnZhbHVlKSB7XG4gICAgICAgIDxidXR0b24gaWQ9XCJjbGVhclwiIChjbGljayk9XCJjbGVhclF1ZXJ5KClcIiBkYXRhLXRlc3RpZD1cImNsZWFyQnRuXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgc3MtaWNvblwiPiBjYW5jZWwgPC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICB9XG48L2Rpdj5cbiJdfQ==
|