@skyux/lookup 6.3.3 → 6.4.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/documentation.json +788 -781
- package/esm2020/lib/modules/autocomplete/autocomplete-adapter.service.mjs +12 -8
- package/esm2020/lib/modules/autocomplete/autocomplete-default-search-function.mjs +1 -1
- package/esm2020/lib/modules/autocomplete/autocomplete-input.directive.mjs +82 -69
- package/esm2020/lib/modules/autocomplete/autocomplete.component.mjs +377 -381
- package/fesm2015/skyux-lookup.mjs +466 -455
- package/fesm2015/skyux-lookup.mjs.map +1 -1
- package/fesm2020/skyux-lookup.mjs +466 -455
- package/fesm2020/skyux-lookup.mjs.map +1 -1
- package/lib/modules/autocomplete/autocomplete-adapter.service.d.ts +1 -3
- package/lib/modules/autocomplete/autocomplete-input.directive.d.ts +2 -15
- package/lib/modules/autocomplete/autocomplete.component.d.ts +13 -69
- package/package.json +10 -10
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
var _SkyAutocompleteAdapterService_coreAdapterService, _SkyAutocompleteAdapterService_renderer;
|
|
2
|
+
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
1
3
|
import { Injectable, RendererFactory2, } from '@angular/core';
|
|
2
4
|
import { SkyCoreAdapterService } from '@skyux/core';
|
|
3
5
|
import * as i0 from "@angular/core";
|
|
@@ -7,9 +9,10 @@ import * as i1 from "@skyux/core";
|
|
|
7
9
|
*/
|
|
8
10
|
export class SkyAutocompleteAdapterService {
|
|
9
11
|
constructor(coreAdapterService, rendererFactory) {
|
|
10
|
-
this
|
|
11
|
-
this
|
|
12
|
-
this
|
|
12
|
+
_SkyAutocompleteAdapterService_coreAdapterService.set(this, void 0);
|
|
13
|
+
_SkyAutocompleteAdapterService_renderer.set(this, void 0);
|
|
14
|
+
__classPrivateFieldSet(this, _SkyAutocompleteAdapterService_coreAdapterService, coreAdapterService, "f");
|
|
15
|
+
__classPrivateFieldSet(this, _SkyAutocompleteAdapterService_renderer, rendererFactory.createRenderer(undefined, null), "f");
|
|
13
16
|
}
|
|
14
17
|
/**
|
|
15
18
|
* Adds the className for the provided element.
|
|
@@ -18,11 +21,11 @@ export class SkyAutocompleteAdapterService {
|
|
|
18
21
|
/* Sanity check */
|
|
19
22
|
/* istanbul ignore else */
|
|
20
23
|
if (element) {
|
|
21
|
-
this.
|
|
24
|
+
__classPrivateFieldGet(this, _SkyAutocompleteAdapterService_renderer, "f").addClass(element, className);
|
|
22
25
|
}
|
|
23
26
|
}
|
|
24
27
|
getOverlayFocusableElements(overlay) {
|
|
25
|
-
return this.
|
|
28
|
+
return __classPrivateFieldGet(this, _SkyAutocompleteAdapterService_coreAdapterService, "f").getFocusableChildren(
|
|
26
29
|
/* Sanity check - calling function also has null check */
|
|
27
30
|
/* istanbul ignore next */
|
|
28
31
|
overlay?.componentRef.location.nativeElement, { ignoreTabIndex: true });
|
|
@@ -34,7 +37,7 @@ export class SkyAutocompleteAdapterService {
|
|
|
34
37
|
/* Sanity check */
|
|
35
38
|
/* istanbul ignore else */
|
|
36
39
|
if (element) {
|
|
37
|
-
this.
|
|
40
|
+
__classPrivateFieldGet(this, _SkyAutocompleteAdapterService_renderer, "f").removeClass(element, className);
|
|
38
41
|
}
|
|
39
42
|
}
|
|
40
43
|
setDropdownWidth(elementRef, dropdownRef, isInputBox) {
|
|
@@ -43,7 +46,7 @@ export class SkyAutocompleteAdapterService {
|
|
|
43
46
|
: elementRef.nativeElement;
|
|
44
47
|
if (parentElement) {
|
|
45
48
|
const width = parentElement.getBoundingClientRect().width;
|
|
46
|
-
this.
|
|
49
|
+
__classPrivateFieldGet(this, _SkyAutocompleteAdapterService_renderer, "f").setStyle(dropdownRef.nativeElement, 'width', `${width}px`);
|
|
47
50
|
}
|
|
48
51
|
}
|
|
49
52
|
/**
|
|
@@ -53,9 +56,10 @@ export class SkyAutocompleteAdapterService {
|
|
|
53
56
|
element.tabIndex = tabIndex;
|
|
54
57
|
}
|
|
55
58
|
}
|
|
59
|
+
_SkyAutocompleteAdapterService_coreAdapterService = new WeakMap(), _SkyAutocompleteAdapterService_renderer = new WeakMap();
|
|
56
60
|
SkyAutocompleteAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyAutocompleteAdapterService, deps: [{ token: i1.SkyCoreAdapterService }, { token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
57
61
|
SkyAutocompleteAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyAutocompleteAdapterService });
|
|
58
62
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyAutocompleteAdapterService, decorators: [{
|
|
59
63
|
type: Injectable
|
|
60
64
|
}], ctorParameters: function () { return [{ type: i1.SkyCoreAdapterService }, { type: i0.RendererFactory2 }]; } });
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWFkYXB0ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sb29rdXAvc3JjL2xpYi9tb2R1bGVzL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUtYWRhcHRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUVMLFVBQVUsRUFFVixnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHFCQUFxQixFQUFzQixNQUFNLGFBQWEsQ0FBQzs7O0FBRXhFOztHQUVHO0FBRUgsTUFBTSxPQUFPLDZCQUE2QjtJQUt4QyxZQUNFLGtCQUF5QyxFQUN6QyxlQUFpQztRQU5uQyxvRUFBMkM7UUFFM0MsMERBQXFCO1FBTW5CLHVCQUFBLElBQUkscURBQXVCLGtCQUFrQixNQUFBLENBQUM7UUFDOUMsdUJBQUEsSUFBSSwyQ0FBYSxlQUFlLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsTUFBQSxDQUFDO0lBQ25FLENBQUM7SUFFRDs7T0FFRztJQUNJLFdBQVcsQ0FBQyxPQUFvQixFQUFFLFNBQWlCO1FBQ3hELGtCQUFrQjtRQUNsQiwwQkFBMEI7UUFDMUIsSUFBSSxPQUFPLEVBQUU7WUFDWCx1QkFBQSxJQUFJLCtDQUFVLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsQ0FBQztTQUM3QztJQUNILENBQUM7SUFFTSwyQkFBMkIsQ0FDaEMsT0FBMkI7UUFFM0IsT0FBTyx1QkFBQSxJQUFJLHlEQUFvQixDQUFDLG9CQUFvQjtRQUNsRCx5REFBeUQ7UUFDekQsMEJBQTBCO1FBQzFCLE9BQU8sRUFBRSxZQUFZLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFDNUMsRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLENBQ3pCLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSSxjQUFjLENBQUMsT0FBb0IsRUFBRSxTQUFpQjtRQUMzRCxrQkFBa0I7UUFDbEIsMEJBQTBCO1FBQzFCLElBQUksT0FBTyxFQUFFO1lBQ1gsdUJBQUEsSUFBSSwrQ0FBVSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDLENBQUM7U0FDaEQ7SUFDSCxDQUFDO0lBRU0sZ0JBQWdCLENBQ3JCLFVBQXNCLEVBQ3RCLFdBQXVCLEVBQ3ZCLFVBQW1CO1FBRW5CLE1BQU0sYUFBYSxHQUFHLFVBQVU7WUFDOUIsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDO1lBQ3BELENBQUMsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO1FBQzdCLElBQUksYUFBYSxFQUFFO1lBQ2pCLE1BQU0sS0FBSyxHQUFHLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUMxRCx1QkFBQSxJQUFJLCtDQUFVLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQUUsT0FBTyxFQUFFLEdBQUcsS0FBSyxJQUFJLENBQUMsQ0FBQztTQUMzRTtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNJLFdBQVcsQ0FBQyxPQUFvQixFQUFFLFFBQWdCO1FBQ3ZELE9BQU8sQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzlCLENBQUM7OzswSEFqRVUsNkJBQTZCOzhIQUE3Qiw2QkFBNkI7MkZBQTdCLDZCQUE2QjtrQkFEekMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdGFibGUsXG4gIFJlbmRlcmVyMixcbiAgUmVuZGVyZXJGYWN0b3J5Mixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lDb3JlQWRhcHRlclNlcnZpY2UsIFNreU92ZXJsYXlJbnN0YW5jZSB9IGZyb20gJ0Bza3l1eC9jb3JlJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNreUF1dG9jb21wbGV0ZUFkYXB0ZXJTZXJ2aWNlIHtcbiAgI2NvcmVBZGFwdGVyU2VydmljZTogU2t5Q29yZUFkYXB0ZXJTZXJ2aWNlO1xuXG4gICNyZW5kZXJlcjogUmVuZGVyZXIyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGNvcmVBZGFwdGVyU2VydmljZTogU2t5Q29yZUFkYXB0ZXJTZXJ2aWNlLFxuICAgIHJlbmRlcmVyRmFjdG9yeTogUmVuZGVyZXJGYWN0b3J5MlxuICApIHtcbiAgICB0aGlzLiNjb3JlQWRhcHRlclNlcnZpY2UgPSBjb3JlQWRhcHRlclNlcnZpY2U7XG4gICAgdGhpcy4jcmVuZGVyZXIgPSByZW5kZXJlckZhY3RvcnkuY3JlYXRlUmVuZGVyZXIodW5kZWZpbmVkLCBudWxsKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIHRoZSBjbGFzc05hbWUgZm9yIHRoZSBwcm92aWRlZCBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGFkZENTU0NsYXNzKGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBjbGFzc05hbWU6IHN0cmluZyk6IHZvaWQge1xuICAgIC8qIFNhbml0eSBjaGVjayAqL1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKGVsZW1lbnQpIHtcbiAgICAgIHRoaXMuI3JlbmRlcmVyLmFkZENsYXNzKGVsZW1lbnQsIGNsYXNzTmFtZSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldE92ZXJsYXlGb2N1c2FibGVFbGVtZW50cyhcbiAgICBvdmVybGF5OiBTa3lPdmVybGF5SW5zdGFuY2VcbiAgKTogSFRNTEVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIHRoaXMuI2NvcmVBZGFwdGVyU2VydmljZS5nZXRGb2N1c2FibGVDaGlsZHJlbihcbiAgICAgIC8qIFNhbml0eSBjaGVjayAtIGNhbGxpbmcgZnVuY3Rpb24gYWxzbyBoYXMgbnVsbCBjaGVjayAqL1xuICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICAgIG92ZXJsYXk/LmNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50LFxuICAgICAgeyBpZ25vcmVUYWJJbmRleDogdHJ1ZSB9XG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmVzIHRoZSBjbGFzc05hbWUgZm9yIHRoZSBwcm92aWRlZCBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIHJlbW92ZUNTU0NsYXNzKGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBjbGFzc05hbWU6IHN0cmluZyk6IHZvaWQge1xuICAgIC8qIFNhbml0eSBjaGVjayAqL1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKGVsZW1lbnQpIHtcbiAgICAgIHRoaXMuI3JlbmRlcmVyLnJlbW92ZUNsYXNzKGVsZW1lbnQsIGNsYXNzTmFtZSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHNldERyb3Bkb3duV2lkdGgoXG4gICAgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBkcm9wZG93blJlZjogRWxlbWVudFJlZixcbiAgICBpc0lucHV0Qm94OiBib29sZWFuXG4gICk6IHZvaWQge1xuICAgIGNvbnN0IHBhcmVudEVsZW1lbnQgPSBpc0lucHV0Qm94XG4gICAgICA/IGVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbG9zZXN0KCcuc2t5LWlucHV0LWJveCcpXG4gICAgICA6IGVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICBpZiAocGFyZW50RWxlbWVudCkge1xuICAgICAgY29uc3Qgd2lkdGggPSBwYXJlbnRFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoO1xuICAgICAgdGhpcy4jcmVuZGVyZXIuc2V0U3R5bGUoZHJvcGRvd25SZWYubmF0aXZlRWxlbWVudCwgJ3dpZHRoJywgYCR7d2lkdGh9cHhgKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgYHRhYkluZGV4YCBvZiB0aGUgYGVsZW1lbnRgIHRvIHRoZSBwcm92aWRlZCBgdGFiSW5kZXhgLlxuICAgKi9cbiAgcHVibGljIHNldFRhYkluZGV4KGVsZW1lbnQ6IEhUTUxFbGVtZW50LCB0YWJJbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgZWxlbWVudC50YWJJbmRleCA9IHRhYkluZGV4O1xuICB9XG59XG4iXX0=
|
|
@@ -36,4 +36,4 @@ export function skyAutocompleteDefaultSearchFunction(options) {
|
|
|
36
36
|
};
|
|
37
37
|
return search;
|
|
38
38
|
}
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWRlZmF1bHQtc2VhcmNoLWZ1bmN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xvb2t1cC9zcmMvbGliL21vZHVsZXMvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS1kZWZhdWx0LXNlYXJjaC1mdW5jdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQU94RSxNQUFNLFVBQVUsb0NBQW9DLENBQ2xELE9BQW9EO0lBRXBELE1BQU0sVUFBVSxHQUFHLFVBQVUsVUFBa0IsRUFBRSxJQUFXO1FBQzFELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFO1lBQy9CLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUU7Z0JBQzNELE9BQU8sSUFBSSxDQUFDO2FBQ2I7WUFFRCx1RUFBdUU7WUFDdkUsTUFBTSxZQUFZLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQzdDLENBQUMsTUFBMkMsRUFBRSxFQUFFO2dCQUM5QyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQzVDLENBQUMsQ0FDRixDQUFDO1lBRUYsT0FBTyxZQUFZLEtBQUssU0FBUyxDQUFDO1FBQ3BDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDO0lBRUYsTUFBTSxNQUFNLEdBQUcsVUFDYixVQUFrQixFQUNsQixJQUFXO1FBRVgsTUFBTSxPQUFPLEdBQVUsRUFBRSxDQUFDO1FBRTFCLDZFQUE2RTtRQUM3RSx3QkFBd0I7UUFDeEIsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNmLE9BQU8sT0FBTyxDQUFDO1NBQ2hCO1FBRUQsTUFBTSxvQkFBb0IsR0FBRyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUUzRSxNQUFNLFlBQVksR0FBRyxVQUFVLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRWxELEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxZQUFZLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDbkQsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQy9CLE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxrQkFBbUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFnQixFQUFFLEVBQUU7Z0JBQ3BFLElBQUksS0FBSyxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNoRCxLQUFLLEdBQUcsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ2pELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ2xELENBQUMsQ0FBQyxDQUFDO1lBRUgsSUFBSSxPQUFPLEVBQUU7Z0JBQ1gsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQzthQUN0QjtTQUNGO1FBRUQsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQyxDQUFDO0lBRUYsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG5vcm1hbGl6ZURpYWNyaXRpY3MgfSBmcm9tICcuLi9zaGFyZWQvc2t5LWxvb2t1cC1zdHJpbmctdXRpbHMnO1xuXG5pbXBvcnQgeyBTa3lBdXRvY29tcGxldGVEZWZhdWx0U2VhcmNoRnVuY3Rpb25PcHRpb25zIH0gZnJvbSAnLi90eXBlcy9hdXRvY29tcGxldGUtZGVmYXVsdC1zZWFyY2gtZnVuY3Rpb24tb3B0aW9ucyc7XG5pbXBvcnQgeyBTa3lBdXRvY29tcGxldGVTZWFyY2hGdW5jdGlvbiB9IGZyb20gJy4vdHlwZXMvYXV0b2NvbXBsZXRlLXNlYXJjaC1mdW5jdGlvbic7XG5pbXBvcnQgeyBTa3lBdXRvY29tcGxldGVTZWFyY2hGdW5jdGlvbkZpbHRlciB9IGZyb20gJy4vdHlwZXMvYXV0b2NvbXBsZXRlLXNlYXJjaC1mdW5jdGlvbi1maWx0ZXInO1xuaW1wb3J0IHsgU2t5QXV0b2NvbXBsZXRlU2VhcmNoRnVuY3Rpb25SZXNwb25zZSB9IGZyb20gJy4vdHlwZXMvYXV0b2NvbXBsZXRlLXNlYXJjaC1mdW5jdGlvbi1yZXNwb25zZSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBza3lBdXRvY29tcGxldGVEZWZhdWx0U2VhcmNoRnVuY3Rpb24oXG4gIG9wdGlvbnM6IFNreUF1dG9jb21wbGV0ZURlZmF1bHRTZWFyY2hGdW5jdGlvbk9wdGlvbnNcbik6IFNreUF1dG9jb21wbGV0ZVNlYXJjaEZ1bmN0aW9uIHtcbiAgY29uc3QgZmlsdGVyRGF0YSA9IGZ1bmN0aW9uIChzZWFyY2hUZXh0OiBzdHJpbmcsIGRhdGE6IGFueVtdKTogYW55W10ge1xuICAgIHJldHVybiBkYXRhLmZpbHRlcigoaXRlbTogYW55KSA9PiB7XG4gICAgICBpZiAoIW9wdGlvbnMuc2VhcmNoRmlsdGVycyB8fCAhb3B0aW9ucy5zZWFyY2hGaWx0ZXJzLmxlbmd0aCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgLy8gRmluZCB0aGUgZmlyc3QgZmFpbGluZyBmaWx0ZXIgKHdlIGNhbiBza2lwIHRoZSBvdGhlcnMgaWYgb25lIGZhaWxzKS5cbiAgICAgIGNvbnN0IGZhaWxlZEZpbHRlciA9IG9wdGlvbnMuc2VhcmNoRmlsdGVycy5maW5kKFxuICAgICAgICAoZmlsdGVyOiBTa3lBdXRvY29tcGxldGVTZWFyY2hGdW5jdGlvbkZpbHRlcikgPT4ge1xuICAgICAgICAgIHJldHVybiAhZmlsdGVyLmNhbGwoe30sIHNlYXJjaFRleHQsIGl0ZW0pO1xuICAgICAgICB9XG4gICAgICApO1xuXG4gICAgICByZXR1cm4gZmFpbGVkRmlsdGVyID09PSB1bmRlZmluZWQ7XG4gICAgfSk7XG4gIH07XG5cbiAgY29uc3Qgc2VhcmNoID0gZnVuY3Rpb24gKFxuICAgIHNlYXJjaFRleHQ6IHN0cmluZyxcbiAgICBkYXRhOiBhbnlbXVxuICApOiBTa3lBdXRvY29tcGxldGVTZWFyY2hGdW5jdGlvblJlc3BvbnNlIHtcbiAgICBjb25zdCByZXN1bHRzOiBhbnlbXSA9IFtdO1xuXG4gICAgLyogU2FuaXR5IGNoZWNrIC0gYXV0b2NvbXBsZXRlIHdpbGwgbm90IGNhbGwgc2VhcmNoIHdpdGggZW1wdHkgc2VhcmNoIHRleHQgKi9cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoIXNlYXJjaFRleHQpIHtcbiAgICAgIHJldHVybiByZXN1bHRzO1xuICAgIH1cblxuICAgIGNvbnN0IHNlYXJjaFRleHROb3JtYWxpemVkID0gbm9ybWFsaXplRGlhY3JpdGljcyhzZWFyY2hUZXh0KS50b1VwcGVyQ2FzZSgpO1xuXG4gICAgY29uc3QgZmlsdGVyZWREYXRhID0gZmlsdGVyRGF0YShzZWFyY2hUZXh0LCBkYXRhKTtcblxuICAgIGZvciAobGV0IGkgPSAwLCBuID0gZmlsdGVyZWREYXRhLmxlbmd0aDsgaSA8IG47IGkrKykge1xuICAgICAgY29uc3QgcmVzdWx0ID0gZmlsdGVyZWREYXRhW2ldO1xuICAgICAgY29uc3QgaXNNYXRjaCA9IG9wdGlvbnMucHJvcGVydGllc1RvU2VhcmNoIS5maW5kKChwcm9wZXJ0eTogc3RyaW5nKSA9PiB7XG4gICAgICAgIGxldCB2YWx1ZSA9IChyZXN1bHRbcHJvcGVydHldIHx8ICcnKS50b1N0cmluZygpO1xuICAgICAgICB2YWx1ZSA9IG5vcm1hbGl6ZURpYWNyaXRpY3ModmFsdWUpLnRvVXBwZXJDYXNlKCk7XG4gICAgICAgIHJldHVybiB2YWx1ZS5pbmRleE9mKHNlYXJjaFRleHROb3JtYWxpemVkKSA+IC0xO1xuICAgICAgfSk7XG5cbiAgICAgIGlmIChpc01hdGNoKSB7XG4gICAgICAgIHJlc3VsdHMucHVzaChyZXN1bHQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiByZXN1bHRzO1xuICB9O1xuXG4gIHJldHVybiBzZWFyY2g7XG59XG4iXX0=
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
var _SkyAutocompleteInputDirective_instances, _SkyAutocompleteInputDirective_blur, _SkyAutocompleteInputDirective_control, _SkyAutocompleteInputDirective_elementRef, _SkyAutocompleteInputDirective_focus, _SkyAutocompleteInputDirective_isFirstChange, _SkyAutocompleteInputDirective_ngUnsubscribe, _SkyAutocompleteInputDirective_renderer, _SkyAutocompleteInputDirective_textChanges, _SkyAutocompleteInputDirective__autocompleteAttribute, _SkyAutocompleteInputDirective__blurObs, _SkyAutocompleteInputDirective__disabled, _SkyAutocompleteInputDirective__displayWith, _SkyAutocompleteInputDirective__focusObs, _SkyAutocompleteInputDirective__textChangesObs, _SkyAutocompleteInputDirective__value, _SkyAutocompleteInputDirective_setAttributes, _SkyAutocompleteInputDirective_getValueByKey;
|
|
2
|
+
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
1
3
|
import { Directive, ElementRef, Input, Renderer2, forwardRef, } from '@angular/core';
|
|
2
4
|
import { NG_VALIDATORS, NG_VALUE_ACCESSOR, } from '@angular/forms';
|
|
3
5
|
import { Subject, fromEvent as observableFromEvent } from 'rxjs';
|
|
@@ -15,17 +17,33 @@ const SKY_AUTOCOMPLETE_VALIDATOR = {
|
|
|
15
17
|
};
|
|
16
18
|
export class SkyAutocompleteInputDirective {
|
|
17
19
|
constructor(elementRef, renderer) {
|
|
18
|
-
this
|
|
19
|
-
this
|
|
20
|
-
this
|
|
21
|
-
this
|
|
22
|
-
this
|
|
23
|
-
this
|
|
24
|
-
this
|
|
25
|
-
this
|
|
20
|
+
_SkyAutocompleteInputDirective_instances.add(this);
|
|
21
|
+
_SkyAutocompleteInputDirective_blur.set(this, void 0);
|
|
22
|
+
_SkyAutocompleteInputDirective_control.set(this, void 0);
|
|
23
|
+
_SkyAutocompleteInputDirective_elementRef.set(this, void 0);
|
|
24
|
+
_SkyAutocompleteInputDirective_focus.set(this, void 0);
|
|
25
|
+
_SkyAutocompleteInputDirective_isFirstChange.set(this, true);
|
|
26
|
+
_SkyAutocompleteInputDirective_ngUnsubscribe.set(this, new Subject());
|
|
27
|
+
_SkyAutocompleteInputDirective_renderer.set(this, void 0);
|
|
28
|
+
_SkyAutocompleteInputDirective_textChanges.set(this, void 0);
|
|
29
|
+
_SkyAutocompleteInputDirective__autocompleteAttribute.set(this, void 0);
|
|
30
|
+
_SkyAutocompleteInputDirective__blurObs.set(this, void 0);
|
|
31
|
+
_SkyAutocompleteInputDirective__disabled.set(this, false);
|
|
32
|
+
_SkyAutocompleteInputDirective__displayWith.set(this, '');
|
|
33
|
+
_SkyAutocompleteInputDirective__focusObs.set(this, void 0);
|
|
34
|
+
_SkyAutocompleteInputDirective__textChangesObs.set(this, void 0);
|
|
35
|
+
_SkyAutocompleteInputDirective__value.set(this, void 0);
|
|
26
36
|
// istanbul ignore next
|
|
27
37
|
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
28
38
|
this.onValidatorChange = () => { };
|
|
39
|
+
__classPrivateFieldSet(this, _SkyAutocompleteInputDirective_elementRef, elementRef, "f");
|
|
40
|
+
__classPrivateFieldSet(this, _SkyAutocompleteInputDirective_renderer, renderer, "f");
|
|
41
|
+
__classPrivateFieldSet(this, _SkyAutocompleteInputDirective_blur, new Subject(), "f");
|
|
42
|
+
__classPrivateFieldSet(this, _SkyAutocompleteInputDirective_focus, new Subject(), "f");
|
|
43
|
+
__classPrivateFieldSet(this, _SkyAutocompleteInputDirective_textChanges, new Subject(), "f");
|
|
44
|
+
__classPrivateFieldSet(this, _SkyAutocompleteInputDirective__blurObs, __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_blur, "f").asObservable(), "f");
|
|
45
|
+
__classPrivateFieldSet(this, _SkyAutocompleteInputDirective__focusObs, __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_focus, "f").asObservable(), "f");
|
|
46
|
+
__classPrivateFieldSet(this, _SkyAutocompleteInputDirective__textChangesObs, __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_textChanges, "f").asObservable(), "f");
|
|
29
47
|
}
|
|
30
48
|
/**
|
|
31
49
|
* Specifies the value for the `autocomplete` attribute on the form input.
|
|
@@ -33,114 +51,109 @@ export class SkyAutocompleteInputDirective {
|
|
|
33
51
|
*/
|
|
34
52
|
set autocompleteAttribute(value) {
|
|
35
53
|
if (!value) {
|
|
36
|
-
this
|
|
54
|
+
__classPrivateFieldSet(this, _SkyAutocompleteInputDirective__autocompleteAttribute, 'off', "f");
|
|
37
55
|
}
|
|
38
56
|
else {
|
|
39
|
-
this
|
|
57
|
+
__classPrivateFieldSet(this, _SkyAutocompleteInputDirective__autocompleteAttribute, value, "f");
|
|
40
58
|
}
|
|
41
|
-
this.
|
|
59
|
+
__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_renderer, "f").setAttribute(__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_elementRef, "f").nativeElement, 'autocomplete', this.autocompleteAttribute);
|
|
42
60
|
}
|
|
43
61
|
get autocompleteAttribute() {
|
|
44
|
-
return this
|
|
62
|
+
return __classPrivateFieldGet(this, _SkyAutocompleteInputDirective__autocompleteAttribute, "f") || 'off';
|
|
45
63
|
}
|
|
46
64
|
/**
|
|
47
65
|
* Indicates whether to disable the autocomplete field.
|
|
48
66
|
* @default false
|
|
49
67
|
*/
|
|
50
68
|
set disabled(value) {
|
|
51
|
-
this
|
|
52
|
-
this.
|
|
69
|
+
__classPrivateFieldSet(this, _SkyAutocompleteInputDirective__disabled, value, "f");
|
|
70
|
+
__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_renderer, "f").setProperty(__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_elementRef, "f").nativeElement, 'disabled', value);
|
|
53
71
|
}
|
|
54
72
|
get disabled() {
|
|
55
|
-
return this
|
|
73
|
+
return __classPrivateFieldGet(this, _SkyAutocompleteInputDirective__disabled, "f");
|
|
56
74
|
}
|
|
57
75
|
get blur() {
|
|
58
|
-
return this
|
|
76
|
+
return __classPrivateFieldGet(this, _SkyAutocompleteInputDirective__blurObs, "f");
|
|
59
77
|
}
|
|
60
78
|
get displayWith() {
|
|
61
|
-
return this
|
|
79
|
+
return __classPrivateFieldGet(this, _SkyAutocompleteInputDirective__displayWith, "f");
|
|
62
80
|
}
|
|
63
81
|
set displayWith(value) {
|
|
64
|
-
this
|
|
65
|
-
this.inputTextValue = this.
|
|
82
|
+
__classPrivateFieldSet(this, _SkyAutocompleteInputDirective__displayWith, value, "f");
|
|
83
|
+
this.inputTextValue = __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_instances, "m", _SkyAutocompleteInputDirective_getValueByKey).call(this);
|
|
66
84
|
}
|
|
67
85
|
get focus() {
|
|
68
|
-
return this
|
|
86
|
+
return __classPrivateFieldGet(this, _SkyAutocompleteInputDirective__focusObs, "f");
|
|
69
87
|
}
|
|
70
88
|
get inputTextValue() {
|
|
71
|
-
return this.
|
|
89
|
+
return __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_elementRef, "f").nativeElement.value;
|
|
72
90
|
}
|
|
73
91
|
set inputTextValue(value) {
|
|
74
|
-
this.
|
|
92
|
+
__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_elementRef, "f").nativeElement.value = value || '';
|
|
75
93
|
}
|
|
76
94
|
get textChanges() {
|
|
77
|
-
return this
|
|
95
|
+
return __classPrivateFieldGet(this, _SkyAutocompleteInputDirective__textChangesObs, "f");
|
|
78
96
|
}
|
|
79
97
|
get value() {
|
|
80
|
-
return this
|
|
98
|
+
return __classPrivateFieldGet(this, _SkyAutocompleteInputDirective__value, "f");
|
|
81
99
|
}
|
|
82
100
|
set value(value) {
|
|
83
|
-
const isNewValue = value !== this
|
|
101
|
+
const isNewValue = value !== __classPrivateFieldGet(this, _SkyAutocompleteInputDirective__value, "f");
|
|
84
102
|
/* istanbul ignore else */
|
|
85
103
|
if (isNewValue) {
|
|
86
|
-
this
|
|
87
|
-
this.inputTextValue = this.
|
|
88
|
-
this.onChange(this
|
|
104
|
+
__classPrivateFieldSet(this, _SkyAutocompleteInputDirective__value, value, "f");
|
|
105
|
+
this.inputTextValue = __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_instances, "m", _SkyAutocompleteInputDirective_getValueByKey).call(this);
|
|
106
|
+
this.onChange(__classPrivateFieldGet(this, _SkyAutocompleteInputDirective__value, "f"));
|
|
89
107
|
// Do not mark the field as "dirty"
|
|
90
108
|
// if the field has been initialized with a value.
|
|
91
|
-
if (this
|
|
92
|
-
this.
|
|
109
|
+
if (__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_isFirstChange, "f") && __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_control, "f")) {
|
|
110
|
+
__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_control, "f").markAsPristine();
|
|
93
111
|
}
|
|
94
|
-
if (this
|
|
95
|
-
this
|
|
112
|
+
if (__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_isFirstChange, "f") && __classPrivateFieldGet(this, _SkyAutocompleteInputDirective__value, "f")) {
|
|
113
|
+
__classPrivateFieldSet(this, _SkyAutocompleteInputDirective_isFirstChange, false, "f");
|
|
96
114
|
}
|
|
97
115
|
}
|
|
98
116
|
}
|
|
99
117
|
ngOnInit() {
|
|
100
|
-
const element = this.
|
|
101
|
-
this.
|
|
118
|
+
const element = __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_elementRef, "f").nativeElement;
|
|
119
|
+
__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_instances, "m", _SkyAutocompleteInputDirective_setAttributes).call(this, __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_elementRef, "f"));
|
|
102
120
|
observableFromEvent(element, 'input')
|
|
103
|
-
.pipe(takeUntil(this
|
|
121
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_ngUnsubscribe, "f")))
|
|
104
122
|
.subscribe(() => {
|
|
105
|
-
/** Sanity check */
|
|
106
123
|
if (!this.disabled) {
|
|
107
|
-
this.
|
|
108
|
-
value: this.
|
|
124
|
+
__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_textChanges, "f").next({
|
|
125
|
+
value: __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_elementRef, "f").nativeElement.value,
|
|
109
126
|
});
|
|
110
127
|
}
|
|
111
128
|
});
|
|
112
129
|
observableFromEvent(element, 'blur')
|
|
113
|
-
.pipe(takeUntil(this
|
|
130
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_ngUnsubscribe, "f")))
|
|
114
131
|
.subscribe(() => {
|
|
115
|
-
/** Sanity check */
|
|
116
132
|
if (!this.disabled) {
|
|
117
|
-
this.
|
|
133
|
+
__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_blur, "f").next();
|
|
118
134
|
}
|
|
119
135
|
});
|
|
120
136
|
observableFromEvent(element, 'focus')
|
|
121
|
-
.pipe(takeUntil(this
|
|
137
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_ngUnsubscribe, "f")))
|
|
122
138
|
.subscribe(() => {
|
|
123
|
-
/** Sanity check */
|
|
124
139
|
if (!this.disabled) {
|
|
125
|
-
this.
|
|
140
|
+
__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_focus, "f").next();
|
|
126
141
|
}
|
|
127
142
|
});
|
|
128
143
|
observableFromEvent(element, 'change')
|
|
129
|
-
.pipe(takeUntil(this
|
|
144
|
+
.pipe(takeUntil(__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_ngUnsubscribe, "f")))
|
|
130
145
|
.subscribe(() => {
|
|
131
|
-
/** Sanity check */
|
|
132
146
|
/* istanbul ignore else */
|
|
133
147
|
if (!this.disabled) {
|
|
134
|
-
this
|
|
148
|
+
__classPrivateFieldSet(this, _SkyAutocompleteInputDirective_isFirstChange, false, "f");
|
|
135
149
|
}
|
|
136
150
|
});
|
|
137
151
|
}
|
|
138
152
|
ngOnDestroy() {
|
|
139
|
-
this.
|
|
140
|
-
this.
|
|
141
|
-
this.
|
|
142
|
-
this.
|
|
143
|
-
this._blur = this._textChanges = this.ngUnsubscribe = undefined;
|
|
153
|
+
__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_blur, "f").complete();
|
|
154
|
+
__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_textChanges, "f").complete();
|
|
155
|
+
__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_ngUnsubscribe, "f").next();
|
|
156
|
+
__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_ngUnsubscribe, "f").complete();
|
|
144
157
|
}
|
|
145
158
|
writeValue(value) {
|
|
146
159
|
this.value = value;
|
|
@@ -155,7 +168,7 @@ export class SkyAutocompleteInputDirective {
|
|
|
155
168
|
this.onValidatorChange = fn;
|
|
156
169
|
}
|
|
157
170
|
restoreInputTextValueToPreviousState() {
|
|
158
|
-
const modelValue = this.
|
|
171
|
+
const modelValue = __classPrivateFieldGet(this, _SkyAutocompleteInputDirective_instances, "m", _SkyAutocompleteInputDirective_getValueByKey).call(this);
|
|
159
172
|
// If the search field contains text, make sure that the value
|
|
160
173
|
// matches the selected descriptor key.
|
|
161
174
|
if (this.inputTextValue !== modelValue) {
|
|
@@ -167,18 +180,18 @@ export class SkyAutocompleteInputDirective {
|
|
|
167
180
|
this.disabled = disabled;
|
|
168
181
|
}
|
|
169
182
|
validate(control) {
|
|
170
|
-
if (!this
|
|
171
|
-
this
|
|
183
|
+
if (!__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_control, "f")) {
|
|
184
|
+
__classPrivateFieldSet(this, _SkyAutocompleteInputDirective_control, control, "f");
|
|
172
185
|
}
|
|
173
|
-
return;
|
|
186
|
+
return null;
|
|
174
187
|
}
|
|
175
188
|
// See: https://www.w3.org/TR/wai-aria-practices/#kbd_focus_activedescendant
|
|
176
189
|
setActiveDescendant(descendantId) {
|
|
177
190
|
if (descendantId) {
|
|
178
|
-
this.
|
|
191
|
+
__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_renderer, "f").setAttribute(__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_elementRef, "f").nativeElement, 'aria-activedescendant', descendantId);
|
|
179
192
|
}
|
|
180
193
|
else {
|
|
181
|
-
this.
|
|
194
|
+
__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_renderer, "f").removeAttribute(__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_elementRef, "f").nativeElement, 'aria-activedescendant');
|
|
182
195
|
}
|
|
183
196
|
}
|
|
184
197
|
// Angular automatically constructs these methods.
|
|
@@ -186,17 +199,17 @@ export class SkyAutocompleteInputDirective {
|
|
|
186
199
|
onChange(value) { }
|
|
187
200
|
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
188
201
|
onTouched() { }
|
|
189
|
-
setAttributes(element) {
|
|
190
|
-
this.renderer.setAttribute(element, 'autocomplete', this.autocompleteAttribute);
|
|
191
|
-
this.renderer.setAttribute(element, 'autocapitalize', 'none');
|
|
192
|
-
this.renderer.setAttribute(element, 'autocorrect', 'off');
|
|
193
|
-
this.renderer.setAttribute(element, 'spellcheck', 'false');
|
|
194
|
-
this.renderer.addClass(element, 'sky-form-control');
|
|
195
|
-
}
|
|
196
|
-
getValueByKey() {
|
|
197
|
-
return this.value ? this.value[this.displayWith] : undefined;
|
|
198
|
-
}
|
|
199
202
|
}
|
|
203
|
+
_SkyAutocompleteInputDirective_blur = new WeakMap(), _SkyAutocompleteInputDirective_control = new WeakMap(), _SkyAutocompleteInputDirective_elementRef = new WeakMap(), _SkyAutocompleteInputDirective_focus = new WeakMap(), _SkyAutocompleteInputDirective_isFirstChange = new WeakMap(), _SkyAutocompleteInputDirective_ngUnsubscribe = new WeakMap(), _SkyAutocompleteInputDirective_renderer = new WeakMap(), _SkyAutocompleteInputDirective_textChanges = new WeakMap(), _SkyAutocompleteInputDirective__autocompleteAttribute = new WeakMap(), _SkyAutocompleteInputDirective__blurObs = new WeakMap(), _SkyAutocompleteInputDirective__disabled = new WeakMap(), _SkyAutocompleteInputDirective__displayWith = new WeakMap(), _SkyAutocompleteInputDirective__focusObs = new WeakMap(), _SkyAutocompleteInputDirective__textChangesObs = new WeakMap(), _SkyAutocompleteInputDirective__value = new WeakMap(), _SkyAutocompleteInputDirective_instances = new WeakSet(), _SkyAutocompleteInputDirective_setAttributes = function _SkyAutocompleteInputDirective_setAttributes(elementRef) {
|
|
204
|
+
const element = elementRef.nativeElement;
|
|
205
|
+
__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_renderer, "f").setAttribute(element, 'autocomplete', this.autocompleteAttribute);
|
|
206
|
+
__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_renderer, "f").setAttribute(element, 'autocapitalize', 'none');
|
|
207
|
+
__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_renderer, "f").setAttribute(element, 'autocorrect', 'off');
|
|
208
|
+
__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_renderer, "f").setAttribute(element, 'spellcheck', 'false');
|
|
209
|
+
__classPrivateFieldGet(this, _SkyAutocompleteInputDirective_renderer, "f").addClass(element, 'sky-form-control');
|
|
210
|
+
}, _SkyAutocompleteInputDirective_getValueByKey = function _SkyAutocompleteInputDirective_getValueByKey() {
|
|
211
|
+
return this.value ? this.value[this.displayWith] : undefined;
|
|
212
|
+
};
|
|
200
213
|
SkyAutocompleteInputDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyAutocompleteInputDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
201
214
|
SkyAutocompleteInputDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: SkyAutocompleteInputDirective, selector: "input[skyAutocomplete], textarea[skyAutocomplete]", inputs: { autocompleteAttribute: "autocompleteAttribute", disabled: "disabled" }, providers: [SKY_AUTOCOMPLETE_VALUE_ACCESSOR, SKY_AUTOCOMPLETE_VALIDATOR], ngImport: i0 });
|
|
202
215
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyAutocompleteInputDirective, decorators: [{
|
|
@@ -210,4 +223,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
|
210
223
|
}], disabled: [{
|
|
211
224
|
type: Input
|
|
212
225
|
}] } });
|
|
213
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWlucHV0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sb29rdXAvc3JjL2xpYi9tb2R1bGVzL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUtaW5wdXQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLEtBQUssRUFHTCxTQUFTLEVBQ1QsVUFBVSxHQUNYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFHTCxhQUFhLEVBQ2IsaUJBQWlCLEdBR2xCLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFjLE9BQU8sRUFBRSxTQUFTLElBQUksbUJBQW1CLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0UsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUkzQyxNQUFNLCtCQUErQixHQUFHO0lBQ3RDLE9BQU8sRUFBRSxpQkFBaUI7SUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztJQUM1RCxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFFRixNQUFNLDBCQUEwQixHQUFHO0lBQ2pDLE9BQU8sRUFBRSxhQUFhO0lBQ3RCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsNkJBQTZCLENBQUM7SUFDNUQsS0FBSyxFQUFFLElBQUk7Q0FDWixDQUFDO0FBTUYsTUFBTSxPQUFPLDZCQUE2QjtJQWtIeEMsWUFBb0IsVUFBc0IsRUFBVSxRQUFtQjtRQUFuRCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQWxCL0Qsa0JBQWEsR0FBRyxJQUFJLENBQUM7UUFFckIsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBSXBDLFVBQUssR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRTVCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFJbEIsV0FBTSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFFN0IsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBa0MsQ0FBQztRQXlIckUsdUJBQXVCO1FBQ3ZCLGdFQUFnRTtRQUN6RCxzQkFBaUIsR0FBRyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7SUF2SHNDLENBQUM7SUEvRzNFOzs7T0FHRztJQUNILElBQ1cscUJBQXFCLENBQUMsS0FBYTtRQUM1QyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsSUFBSSxDQUFDLHNCQUFzQixHQUFHLEtBQUssQ0FBQztTQUNyQzthQUFNO1lBQ0wsSUFBSSxDQUFDLHNCQUFzQixHQUFHLEtBQUssQ0FBQztTQUNyQztRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUN4QixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFDN0IsY0FBYyxFQUNkLElBQUksQ0FBQyxxQkFBcUIsQ0FDM0IsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFXLHFCQUFxQjtRQUM5QixPQUFPLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxLQUFLLENBQUM7SUFDOUMsQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQ1csUUFBUSxDQUFDLEtBQWM7UUFDaEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDdkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFXLElBQUk7UUFDYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVELElBQVcsV0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQVcsV0FBVyxDQUFDLEtBQWE7UUFDbEMsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7UUFDMUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDN0MsQ0FBQztJQUVELElBQVcsS0FBSztRQUNkLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBVyxjQUFjO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDO0lBQzdDLENBQUM7SUFFRCxJQUFXLGNBQWMsQ0FBQyxLQUFhO1FBQ3JDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLEtBQUssR0FBRyxLQUFLLElBQUksRUFBRSxDQUFDO0lBQ3BELENBQUM7SUFFRCxJQUFXLFdBQVc7UUFDcEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFXLEtBQUs7UUFDZCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVELElBQVcsS0FBSyxDQUFDLEtBQVU7UUFDekIsTUFBTSxVQUFVLEdBQUcsS0FBSyxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUM7UUFFekMsMEJBQTBCO1FBQzFCLElBQUksVUFBVSxFQUFFO1lBQ2QsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7WUFDcEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDM0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFFM0IsbUNBQW1DO1lBQ25DLGtEQUFrRDtZQUNsRCxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDdEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsQ0FBQzthQUMvQjtZQUVELElBQUksSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUNyQyxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQzthQUM1QjtTQUNGO0lBQ0gsQ0FBQztJQXdCTSxRQUFRO1FBQ2IsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7UUFFOUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUU1QixtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDO2FBQ2xDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQ25DLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZCxtQkFBbUI7WUFDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ2xCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO29CQUNyQixLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsS0FBSztpQkFDM0MsQ0FBQyxDQUFDO2FBQ0o7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVMLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUM7YUFDakMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7YUFDbkMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLG1CQUFtQjtZQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtnQkFDbEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQzthQUNuQjtRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUwsbUJBQW1CLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQzthQUNsQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUNuQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsbUJBQW1CO1lBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO2FBQ3BCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFTCxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDO2FBQ25DLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQ25DLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZCxtQkFBbUI7WUFDbkIsMEJBQTBCO1lBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUNsQixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQzthQUM1QjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRTdCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUU5QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsR0FBRyxTQUFTLENBQUM7SUFDbEUsQ0FBQztJQUVNLFVBQVUsQ0FBQyxLQUFVO1FBQzFCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxFQUF3QjtRQUM5QyxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRU0saUJBQWlCLENBQUMsRUFBYztRQUNyQyxJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRU0seUJBQXlCLENBQUMsRUFBYztRQUM3QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFTSxvQ0FBb0M7UUFDekMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBRXhDLDhEQUE4RDtRQUM5RCx1Q0FBdUM7UUFDdkMsSUFBSSxJQUFJLENBQUMsY0FBYyxLQUFLLFVBQVUsRUFBRTtZQUN0QyxJQUFJLENBQUMsY0FBYyxHQUFHLFVBQVUsQ0FBQztTQUNsQztRQUVELElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRU0sZ0JBQWdCLENBQUMsUUFBaUI7UUFDdkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDM0IsQ0FBQztJQUVNLFFBQVEsQ0FBQyxPQUF3QjtRQUN0QyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNqQixJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztTQUN4QjtRQUNELE9BQU87SUFDVCxDQUFDO0lBRUQsNEVBQTRFO0lBQ3JFLG1CQUFtQixDQUFDLFlBQTJCO1FBQ3BELElBQUksWUFBWSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUN4QixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFDN0IsdUJBQXVCLEVBQ3ZCLFlBQVksQ0FDYixDQUFDO1NBQ0g7YUFBTTtZQUNMLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUMzQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFDN0IsdUJBQXVCLENBQ3hCLENBQUM7U0FDSDtJQUNILENBQUM7SUFFRCxrREFBa0Q7SUFDbEQsZ0VBQWdFO0lBQ3pELFFBQVEsQ0FBQyxLQUFVLElBQVMsQ0FBQztJQUNwQyxnRUFBZ0U7SUFDekQsU0FBUyxLQUFVLENBQUM7SUFLbkIsYUFBYSxDQUFDLE9BQVk7UUFDaEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQ3hCLE9BQU8sRUFDUCxjQUFjLEVBQ2QsSUFBSSxDQUFDLHFCQUFxQixDQUMzQixDQUFDO1FBQ0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxPQUFPLENBQUMsQ0FBQztRQUMzRCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRU8sYUFBYTtRQUNuQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDL0QsQ0FBQzs7MEhBelBVLDZCQUE2Qjs4R0FBN0IsNkJBQTZCLDhKQUY3QixDQUFDLCtCQUErQixFQUFFLDBCQUEwQixDQUFDOzJGQUU3RCw2QkFBNkI7a0JBSnpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG1EQUFtRDtvQkFDN0QsU0FBUyxFQUFFLENBQUMsK0JBQStCLEVBQUUsMEJBQTBCLENBQUM7aUJBQ3pFO3lIQVNZLHFCQUFxQjtzQkFEL0IsS0FBSztnQkF3QkssUUFBUTtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBSZW5kZXJlcjIsXG4gIGZvcndhcmRSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQWJzdHJhY3RDb250cm9sLFxuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcbiAgTkdfVkFMSURBVE9SUyxcbiAgTkdfVkFMVUVfQUNDRVNTT1IsXG4gIFZhbGlkYXRpb25FcnJvcnMsXG4gIFZhbGlkYXRvcixcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0LCBmcm9tRXZlbnQgYXMgb2JzZXJ2YWJsZUZyb21FdmVudCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBTa3lBdXRvY29tcGxldGVJbnB1dFRleHRDaGFuZ2UgfSBmcm9tICcuL3R5cGVzL2F1dG9jb21wbGV0ZS1pbnB1dC10ZXh0LWNoYW5nZSc7XG5cbmNvbnN0IFNLWV9BVVRPQ09NUExFVEVfVkFMVUVfQUNDRVNTT1IgPSB7XG4gIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTa3lBdXRvY29tcGxldGVJbnB1dERpcmVjdGl2ZSksXG4gIG11bHRpOiB0cnVlLFxufTtcblxuY29uc3QgU0tZX0FVVE9DT01QTEVURV9WQUxJREFUT1IgPSB7XG4gIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNreUF1dG9jb21wbGV0ZUlucHV0RGlyZWN0aXZlKSxcbiAgbXVsdGk6IHRydWUsXG59O1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdpbnB1dFtza3lBdXRvY29tcGxldGVdLCB0ZXh0YXJlYVtza3lBdXRvY29tcGxldGVdJyxcbiAgcHJvdmlkZXJzOiBbU0tZX0FVVE9DT01QTEVURV9WQUxVRV9BQ0NFU1NPUiwgU0tZX0FVVE9DT01QTEVURV9WQUxJREFUT1JdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lBdXRvY29tcGxldGVJbnB1dERpcmVjdGl2ZVxuICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yXG57XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIHZhbHVlIGZvciB0aGUgYGF1dG9jb21wbGV0ZWAgYXR0cmlidXRlIG9uIHRoZSBmb3JtIGlucHV0LlxuICAgKiBAZGVmYXVsdCBcIm9mZlwiXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGF1dG9jb21wbGV0ZUF0dHJpYnV0ZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgdGhpcy5fYXV0b2NvbXBsZXRlQXR0cmlidXRlID0gJ29mZic7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2F1dG9jb21wbGV0ZUF0dHJpYnV0ZSA9IHZhbHVlO1xuICAgIH1cblxuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKFxuICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAnYXV0b2NvbXBsZXRlJyxcbiAgICAgIHRoaXMuYXV0b2NvbXBsZXRlQXR0cmlidXRlXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXV0b2NvbXBsZXRlQXR0cmlidXRlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2F1dG9jb21wbGV0ZUF0dHJpYnV0ZSB8fCAnb2ZmJztcbiAgfVxuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0byBkaXNhYmxlIHRoZSBhdXRvY29tcGxldGUgZmllbGQuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSB2YWx1ZTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnZGlzYWJsZWQnLCB2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYmx1cigpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5fYmx1ci5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGlzcGxheVdpdGgoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzcGxheVdpdGg7XG4gIH1cblxuICBwdWJsaWMgc2V0IGRpc3BsYXlXaXRoKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9kaXNwbGF5V2l0aCA9IHZhbHVlO1xuICAgIHRoaXMuaW5wdXRUZXh0VmFsdWUgPSB0aGlzLmdldFZhbHVlQnlLZXkoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZm9jdXMoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuX2ZvY3VzLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGdldCBpbnB1dFRleHRWYWx1ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgaW5wdXRUZXh0VmFsdWUodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdmFsdWUgfHwgJyc7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHRleHRDaGFuZ2VzKCk6IE9ic2VydmFibGU8U2t5QXV0b2NvbXBsZXRlSW5wdXRUZXh0Q2hhbmdlPiB7XG4gICAgcmV0dXJuIHRoaXMuX3RleHRDaGFuZ2VzLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGdldCB2YWx1ZSgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgdmFsdWUodmFsdWU6IGFueSkge1xuICAgIGNvbnN0IGlzTmV3VmFsdWUgPSB2YWx1ZSAhPT0gdGhpcy5fdmFsdWU7XG5cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmIChpc05ld1ZhbHVlKSB7XG4gICAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgICAgdGhpcy5pbnB1dFRleHRWYWx1ZSA9IHRoaXMuZ2V0VmFsdWVCeUtleSgpO1xuICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLl92YWx1ZSk7XG5cbiAgICAgIC8vIERvIG5vdCBtYXJrIHRoZSBmaWVsZCBhcyBcImRpcnR5XCJcbiAgICAgIC8vIGlmIHRoZSBmaWVsZCBoYXMgYmVlbiBpbml0aWFsaXplZCB3aXRoIGEgdmFsdWUuXG4gICAgICBpZiAodGhpcy5pc0ZpcnN0Q2hhbmdlICYmIHRoaXMuY29udHJvbCkge1xuICAgICAgICB0aGlzLmNvbnRyb2wubWFya0FzUHJpc3RpbmUoKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuaXNGaXJzdENoYW5nZSAmJiB0aGlzLl92YWx1ZSkge1xuICAgICAgICB0aGlzLmlzRmlyc3RDaGFuZ2UgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbDtcblxuICBwcml2YXRlIGlzRmlyc3RDaGFuZ2UgPSB0cnVlO1xuXG4gIHByaXZhdGUgbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHJpdmF0ZSBfYXV0b2NvbXBsZXRlQXR0cmlidXRlOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBfYmx1ciA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZTtcblxuICBwcml2YXRlIF9kaXNwbGF5V2l0aDogc3RyaW5nO1xuXG4gIHByaXZhdGUgX2ZvY3VzID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwcml2YXRlIF90ZXh0Q2hhbmdlcyA9IG5ldyBTdWJqZWN0PFNreUF1dG9jb21wbGV0ZUlucHV0VGV4dENoYW5nZT4oKTtcblxuICBwcml2YXRlIF92YWx1ZTogYW55O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyKSB7fVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICB0aGlzLnNldEF0dHJpYnV0ZXMoZWxlbWVudCk7XG5cbiAgICBvYnNlcnZhYmxlRnJvbUV2ZW50KGVsZW1lbnQsICdpbnB1dCcpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAvKiogU2FuaXR5IGNoZWNrICovXG4gICAgICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgIHRoaXMuX3RleHRDaGFuZ2VzLm5leHQoe1xuICAgICAgICAgICAgdmFsdWU6IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIG9ic2VydmFibGVGcm9tRXZlbnQoZWxlbWVudCwgJ2JsdXInKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgLyoqIFNhbml0eSBjaGVjayAqL1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICB0aGlzLl9ibHVyLm5leHQoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICBvYnNlcnZhYmxlRnJvbUV2ZW50KGVsZW1lbnQsICdmb2N1cycpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAvKiogU2FuaXR5IGNoZWNrICovXG4gICAgICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgIHRoaXMuX2ZvY3VzLm5leHQoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICBvYnNlcnZhYmxlRnJvbUV2ZW50KGVsZW1lbnQsICdjaGFuZ2UnKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgLyoqIFNhbml0eSBjaGVjayAqL1xuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICB0aGlzLmlzRmlyc3RDaGFuZ2UgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fYmx1ci5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX3RleHRDaGFuZ2VzLmNvbXBsZXRlKCk7XG5cbiAgICB0aGlzLm5nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgIHRoaXMubmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuXG4gICAgdGhpcy5fYmx1ciA9IHRoaXMuX3RleHRDaGFuZ2VzID0gdGhpcy5uZ1Vuc3Vic2NyaWJlID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IGFueSkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJPblZhbGlkYXRvckNoYW5nZShmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25WYWxpZGF0b3JDaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHB1YmxpYyByZXN0b3JlSW5wdXRUZXh0VmFsdWVUb1ByZXZpb3VzU3RhdGUoKTogdm9pZCB7XG4gICAgY29uc3QgbW9kZWxWYWx1ZSA9IHRoaXMuZ2V0VmFsdWVCeUtleSgpO1xuXG4gICAgLy8gSWYgdGhlIHNlYXJjaCBmaWVsZCBjb250YWlucyB0ZXh0LCBtYWtlIHN1cmUgdGhhdCB0aGUgdmFsdWVcbiAgICAvLyBtYXRjaGVzIHRoZSBzZWxlY3RlZCBkZXNjcmlwdG9yIGtleS5cbiAgICBpZiAodGhpcy5pbnB1dFRleHRWYWx1ZSAhPT0gbW9kZWxWYWx1ZSkge1xuICAgICAgdGhpcy5pbnB1dFRleHRWYWx1ZSA9IG1vZGVsVmFsdWU7XG4gICAgfVxuXG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXREaXNhYmxlZFN0YXRlKGRpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGRpc2FibGVkO1xuICB9XG5cbiAgcHVibGljIHZhbGlkYXRlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMge1xuICAgIGlmICghdGhpcy5jb250cm9sKSB7XG4gICAgICB0aGlzLmNvbnRyb2wgPSBjb250cm9sO1xuICAgIH1cbiAgICByZXR1cm47XG4gIH1cblxuICAvLyBTZWU6IGh0dHBzOi8vd3d3LnczLm9yZy9UUi93YWktYXJpYS1wcmFjdGljZXMvI2tiZF9mb2N1c19hY3RpdmVkZXNjZW5kYW50XG4gIHB1YmxpYyBzZXRBY3RpdmVEZXNjZW5kYW50KGRlc2NlbmRhbnRJZDogc3RyaW5nIHwgbnVsbCk6IHZvaWQge1xuICAgIGlmIChkZXNjZW5kYW50SWQpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKFxuICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgJ2FyaWEtYWN0aXZlZGVzY2VuZGFudCcsXG4gICAgICAgIGRlc2NlbmRhbnRJZFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUoXG4gICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgICAnYXJpYS1hY3RpdmVkZXNjZW5kYW50J1xuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAvLyBBbmd1bGFyIGF1dG9tYXRpY2FsbHkgY29uc3RydWN0cyB0aGVzZSBtZXRob2RzLlxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIHB1YmxpYyBvbkNoYW5nZSh2YWx1ZTogYW55KTogdm9pZCB7fVxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIHB1YmxpYyBvblRvdWNoZWQoKTogdm9pZCB7fVxuICAvLyBpc3RhbmJ1bCBpZ25vcmUgbmV4dFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIHB1YmxpYyBvblZhbGlkYXRvckNoYW5nZSA9ICgpID0+IHt9O1xuXG4gIHByaXZhdGUgc2V0QXR0cmlidXRlcyhlbGVtZW50OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShcbiAgICAgIGVsZW1lbnQsXG4gICAgICAnYXV0b2NvbXBsZXRlJyxcbiAgICAgIHRoaXMuYXV0b2NvbXBsZXRlQXR0cmlidXRlXG4gICAgKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShlbGVtZW50LCAnYXV0b2NhcGl0YWxpemUnLCAnbm9uZScpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKGVsZW1lbnQsICdhdXRvY29ycmVjdCcsICdvZmYnKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShlbGVtZW50LCAnc3BlbGxjaGVjaycsICdmYWxzZScpO1xuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MoZWxlbWVudCwgJ3NreS1mb3JtLWNvbnRyb2wnKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VmFsdWVCeUtleSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnZhbHVlID8gdGhpcy52YWx1ZVt0aGlzLmRpc3BsYXlXaXRoXSA6IHVuZGVmaW5lZDtcbiAgfVxufVxuIl19
|
|
226
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLWlucHV0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sb29rdXAvc3JjL2xpYi9tb2R1bGVzL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUtaW5wdXQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUdMLFNBQVMsRUFDVCxVQUFVLEdBQ1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUdMLGFBQWEsRUFDYixpQkFBaUIsR0FHbEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQWMsT0FBTyxFQUFFLFNBQVMsSUFBSSxtQkFBbUIsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBSTNDLE1BQU0sK0JBQStCLEdBQUc7SUFDdEMsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDZCQUE2QixDQUFDO0lBQzVELEtBQUssRUFBRSxJQUFJO0NBQ1osQ0FBQztBQUVGLE1BQU0sMEJBQTBCLEdBQUc7SUFDakMsT0FBTyxFQUFFLGFBQWE7SUFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztJQUM1RCxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFNRixNQUFNLE9BQU8sNkJBQTZCO0lBZ0l4QyxZQUFZLFVBQXNCLEVBQUUsUUFBbUI7O1FBOUJ2RCxzREFBcUI7UUFFckIseURBQXNDO1FBRXRDLDREQUF3QjtRQUV4Qix1REFBc0I7UUFFdEIsdURBQWlCLElBQUksRUFBQztRQUV0Qix1REFBaUIsSUFBSSxPQUFPLEVBQVEsRUFBQztRQUVyQywwREFBcUI7UUFFckIsNkRB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LENBQUM7aUJBQ3pFO3lIQVNZLHFCQUFxQjtzQkFEL0IsS0FBSztnQkF3QkssUUFBUTtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBSZW5kZXJlcjIsXG4gIGZvcndhcmRSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQWJzdHJhY3RDb250cm9sLFxuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcbiAgTkdfVkFMSURBVE9SUyxcbiAgTkdfVkFMVUVfQUNDRVNTT1IsXG4gIFZhbGlkYXRpb25FcnJvcnMsXG4gIFZhbGlkYXRvcixcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0LCBmcm9tRXZlbnQgYXMgb2JzZXJ2YWJsZUZyb21FdmVudCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBTa3lBdXRvY29tcGxldGVJbnB1dFRleHRDaGFuZ2UgfSBmcm9tICcuL3R5cGVzL2F1dG9jb21wbGV0ZS1pbnB1dC10ZXh0LWNoYW5nZSc7XG5cbmNvbnN0IFNLWV9BVVRPQ09NUExFVEVfVkFMVUVfQUNDRVNTT1IgPSB7XG4gIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTa3lBdXRvY29tcGxldGVJbnB1dERpcmVjdGl2ZSksXG4gIG11bHRpOiB0cnVlLFxufTtcblxuY29uc3QgU0tZX0FVVE9DT01QTEVURV9WQUxJREFUT1IgPSB7XG4gIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNreUF1dG9jb21wbGV0ZUlucHV0RGlyZWN0aXZlKSxcbiAgbXVsdGk6IHRydWUsXG59O1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdpbnB1dFtza3lBdXRvY29tcGxldGVdLCB0ZXh0YXJlYVtza3lBdXRvY29tcGxldGVdJyxcbiAgcHJvdmlkZXJzOiBbU0tZX0FVVE9DT01QTEVURV9WQUxVRV9BQ0NFU1NPUiwgU0tZX0FVVE9DT01QTEVURV9WQUxJREFUT1JdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lBdXRvY29tcGxldGVJbnB1dERpcmVjdGl2ZVxuICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yXG57XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIHZhbHVlIGZvciB0aGUgYGF1dG9jb21wbGV0ZWAgYXR0cmlidXRlIG9uIHRoZSBmb3JtIGlucHV0LlxuICAgKiBAZGVmYXVsdCBcIm9mZlwiXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGF1dG9jb21wbGV0ZUF0dHJpYnV0ZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgdGhpcy4jX2F1dG9jb21wbGV0ZUF0dHJpYnV0ZSA9ICdvZmYnO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLiNfYXV0b2NvbXBsZXRlQXR0cmlidXRlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgdGhpcy4jcmVuZGVyZXIuc2V0QXR0cmlidXRlKFxuICAgICAgdGhpcy4jZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgJ2F1dG9jb21wbGV0ZScsXG4gICAgICB0aGlzLmF1dG9jb21wbGV0ZUF0dHJpYnV0ZVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGF1dG9jb21wbGV0ZUF0dHJpYnV0ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLiNfYXV0b2NvbXBsZXRlQXR0cmlidXRlIHx8ICdvZmYnO1xuICB9XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIHRvIGRpc2FibGUgdGhlIGF1dG9jb21wbGV0ZSBmaWVsZC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLiNfZGlzYWJsZWQgPSB2YWx1ZTtcbiAgICB0aGlzLiNyZW5kZXJlci5zZXRQcm9wZXJ0eShcbiAgICAgIHRoaXMuI2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICdkaXNhYmxlZCcsXG4gICAgICB2YWx1ZVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLiNfZGlzYWJsZWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGJsdXIoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuI19ibHVyT2JzO1xuICB9XG5cbiAgcHVibGljIGdldCBkaXNwbGF5V2l0aCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLiNfZGlzcGxheVdpdGg7XG4gIH1cblxuICBwdWJsaWMgc2V0IGRpc3BsYXlXaXRoKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLiNfZGlzcGxheVdpdGggPSB2YWx1ZTtcbiAgICB0aGlzLmlucHV0VGV4dFZhbHVlID0gdGhpcy4jZ2V0VmFsdWVCeUtleSgpO1xuICB9XG5cbiAgcHVibGljIGdldCBmb2N1cygpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy4jX2ZvY3VzT2JzO1xuICB9XG5cbiAgcHVibGljIGdldCBpbnB1dFRleHRWYWx1ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLiNlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWU7XG4gIH1cblxuICBwdWJsaWMgc2V0IGlucHV0VGV4dFZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLiNlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB2YWx1ZSB8fCAnJztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdGV4dENoYW5nZXMoKTogT2JzZXJ2YWJsZTxTa3lBdXRvY29tcGxldGVJbnB1dFRleHRDaGFuZ2U+IHtcbiAgICByZXR1cm4gdGhpcy4jX3RleHRDaGFuZ2VzT2JzO1xuICB9XG5cbiAgcHVibGljIGdldCB2YWx1ZSgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLiNfdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgc2V0IHZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICBjb25zdCBpc05ld1ZhbHVlID0gdmFsdWUgIT09IHRoaXMuI192YWx1ZTtcblxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKGlzTmV3VmFsdWUpIHtcbiAgICAgIHRoaXMuI192YWx1ZSA9IHZhbHVlO1xuICAgICAgdGhpcy5pbnB1dFRleHRWYWx1ZSA9IHRoaXMuI2dldFZhbHVlQnlLZXkoKTtcbiAgICAgIHRoaXMub25DaGFuZ2UodGhpcy4jX3ZhbHVlKTtcblxuICAgICAgLy8gRG8gbm90IG1hcmsgdGhlIGZpZWxkIGFzIFwiZGlydHlcIlxuICAgICAgLy8gaWYgdGhlIGZpZWxkIGhhcyBiZWVuIGluaXRpYWxpemVkIHdpdGggYSB2YWx1ZS5cbiAgICAgIGlmICh0aGlzLiNpc0ZpcnN0Q2hhbmdlICYmIHRoaXMuI2NvbnRyb2wpIHtcbiAgICAgICAgdGhpcy4jY29udHJvbC5tYXJrQXNQcmlzdGluZSgpO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy4jaXNGaXJzdENoYW5nZSAmJiB0aGlzLiNfdmFsdWUpIHtcbiAgICAgICAgdGhpcy4jaXNGaXJzdENoYW5nZSA9IGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNibHVyOiBTdWJqZWN0PHZvaWQ+O1xuXG4gICNjb250cm9sOiBBYnN0cmFjdENvbnRyb2wgfCB1bmRlZmluZWQ7XG5cbiAgI2VsZW1lbnRSZWY6IEVsZW1lbnRSZWY7XG5cbiAgI2ZvY3VzOiBTdWJqZWN0PHZvaWQ+O1xuXG4gICNpc0ZpcnN0Q2hhbmdlID0gdHJ1ZTtcblxuICAjbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgI3JlbmRlcmVyOiBSZW5kZXJlcjI7XG5cbiAgI3RleHRDaGFuZ2VzOiBTdWJqZWN0PFNreUF1dG9jb21wbGV0ZUlucHV0VGV4dENoYW5nZT47XG5cbiAgI19hdXRvY29tcGxldGVBdHRyaWJ1dGU6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAjX2JsdXJPYnM6IE9ic2VydmFibGU8dm9pZD47XG5cbiAgI19kaXNhYmxlZCA9IGZhbHNlO1xuXG4gICNfZGlzcGxheVdpdGggPSAnJztcblxuICAjX2ZvY3VzT2JzOiBPYnNlcnZhYmxlPHZvaWQ+O1xuXG4gICNfdGV4dENoYW5nZXNPYnM6IE9ic2VydmFibGU8U2t5QXV0b2NvbXBsZXRlSW5wdXRUZXh0Q2hhbmdlPjtcblxuICAjX3ZhbHVlOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcmVuZGVyZXI6IFJlbmRlcmVyMikge1xuICAgIHRoaXMuI2VsZW1lbnRSZWYgPSBlbGVtZW50UmVmO1xuICAgIHRoaXMuI3JlbmRlcmVyID0gcmVuZGVyZXI7XG5cbiAgICB0aGlzLiNibHVyID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICB0aGlzLiNmb2N1cyA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gICAgdGhpcy4jdGV4dENoYW5nZXMgPSBuZXcgU3ViamVjdDxTa3lBdXRvY29tcGxldGVJbnB1dFRleHRDaGFuZ2U+KCk7XG5cbiAgICB0aGlzLiNfYmx1ck9icyA9IHRoaXMuI2JsdXIuYXNPYnNlcnZhYmxlKCk7XG4gICAgdGhpcy4jX2ZvY3VzT2JzID0gdGhpcy4jZm9jdXMuYXNPYnNlcnZhYmxlKCk7XG4gICAgdGhpcy4jX3RleHRDaGFuZ2VzT2JzID0gdGhpcy4jdGV4dENoYW5nZXMuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKSB7XG4gICAgY29uc3QgZWxlbWVudCA9IHRoaXMuI2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcblxuICAgIHRoaXMuI3NldEF0dHJpYnV0ZXModGhpcy4jZWxlbWVudFJlZik7XG5cbiAgICBvYnNlcnZhYmxlRnJvbUV2ZW50KGVsZW1lbnQsICdpbnB1dCcpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgdGhpcy4jdGV4dENoYW5nZXMubmV4dCh7XG4gICAgICAgICAgICB2YWx1ZTogdGhpcy4jZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIG9ic2VydmFibGVGcm9tRXZlbnQoZWxlbWVudCwgJ2JsdXInKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgIHRoaXMuI2JsdXIubmV4dCgpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIG9ic2VydmFibGVGcm9tRXZlbnQoZWxlbWVudCwgJ2ZvY3VzJylcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICB0aGlzLiNmb2N1cy5uZXh0KCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgb2JzZXJ2YWJsZUZyb21FdmVudChlbGVtZW50LCAnY2hhbmdlJylcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICB0aGlzLiNpc0ZpcnN0Q2hhbmdlID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuI2JsdXIuY29tcGxldGUoKTtcbiAgICB0aGlzLiN0ZXh0Q2hhbmdlcy5jb21wbGV0ZSgpO1xuXG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IGFueSkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJPblZhbGlkYXRvckNoYW5nZShmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25WYWxpZGF0b3JDaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHB1YmxpYyByZXN0b3JlSW5wdXRUZXh0VmFsdWVUb1ByZXZpb3VzU3RhdGUoKTogdm9pZCB7XG4gICAgY29uc3QgbW9kZWxWYWx1ZSA9IHRoaXMuI2dldFZhbHVlQnlLZXkoKTtcblxuICAgIC8vIElmIHRoZSBzZWFyY2ggZmllbGQgY29udGFpbnMgdGV4dCwgbWFrZSBzdXJlIHRoYXQgdGhlIHZhbHVlXG4gICAgLy8gbWF0Y2hlcyB0aGUgc2VsZWN0ZWQgZGVzY3JpcHRvciBrZXkuXG4gICAgaWYgKHRoaXMuaW5wdXRUZXh0VmFsdWUgIT09IG1vZGVsVmFsdWUpIHtcbiAgICAgIHRoaXMuaW5wdXRUZXh0VmFsdWUgPSBtb2RlbFZhbHVlO1xuICAgIH1cblxuICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0RGlzYWJsZWRTdGF0ZShkaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBkaXNhYmxlZDtcbiAgfVxuXG4gIHB1YmxpYyB2YWxpZGF0ZShjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XG4gICAgaWYgKCF0aGlzLiNjb250cm9sKSB7XG4gICAgICB0aGlzLiNjb250cm9sID0gY29udHJvbDtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvLyBTZWU6IGh0dHBzOi8vd3d3LnczLm9yZy9UUi93YWktYXJpYS1wcmFjdGljZXMvI2tiZF9mb2N1c19hY3RpdmVkZXNjZW5kYW50XG4gIHB1YmxpYyBzZXRBY3RpdmVEZXNjZW5kYW50KGRlc2NlbmRhbnRJZDogc3RyaW5nIHwgbnVsbCk6IHZvaWQge1xuICAgIGlmIChkZXNjZW5kYW50SWQpIHtcbiAgICAgIHRoaXMuI3JlbmRlcmVyLnNldEF0dHJpYnV0ZShcbiAgICAgICAgdGhpcy4jZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgICAnYXJpYS1hY3RpdmVkZXNjZW5kYW50JyxcbiAgICAgICAgZGVzY2VuZGFudElkXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLiNyZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUoXG4gICAgICAgIHRoaXMuI2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgJ2FyaWEtYWN0aXZlZGVzY2VuZGFudCdcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLy8gQW5ndWxhciBhdXRvbWF0aWNhbGx5IGNvbnN0cnVjdHMgdGhlc2UgbWV0aG9kcy5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICBwdWJsaWMgb25DaGFuZ2UodmFsdWU6IGFueSk6IHZvaWQge31cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICBwdWJsaWMgb25Ub3VjaGVkKCk6IHZvaWQge31cbiAgLy8gaXN0YW5idWwgaWdub3JlIG5leHRcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICBwdWJsaWMgb25WYWxpZGF0b3JDaGFuZ2UgPSAoKSA9PiB7fTtcblxuICAjc2V0QXR0cmlidXRlcyhlbGVtZW50UmVmOiBFbGVtZW50UmVmKTogdm9pZCB7XG4gICAgY29uc3QgZWxlbWVudCA9IGVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcblxuICAgIHRoaXMuI3JlbmRlcmVyLnNldEF0dHJpYnV0ZShcbiAgICAgIGVsZW1lbnQsXG4gICAgICAnYXV0b2NvbXBsZXRlJyxcbiAgICAgIHRoaXMuYXV0b2NvbXBsZXRlQXR0cmlidXRlXG4gICAgKTtcbiAgICB0aGlzLiNyZW5kZXJlci5zZXRBdHRyaWJ1dGUoZWxlbWVudCwgJ2F1dG9jYXBpdGFsaXplJywgJ25vbmUnKTtcbiAgICB0aGlzLiNyZW5kZXJlci5zZXRBdHRyaWJ1dGUoZWxlbWVudCwgJ2F1dG9jb3JyZWN0JywgJ29mZicpO1xuICAgIHRoaXMuI3JlbmRlcmVyLnNldEF0dHJpYnV0ZShlbGVtZW50LCAnc3BlbGxjaGVjaycsICdmYWxzZScpO1xuICAgIHRoaXMuI3JlbmRlcmVyLmFkZENsYXNzKGVsZW1lbnQsICdza3ktZm9ybS1jb250cm9sJyk7XG4gIH1cblxuICAjZ2V0VmFsdWVCeUtleSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnZhbHVlID8gdGhpcy52YWx1ZVt0aGlzLmRpc3BsYXlXaXRoXSA6IHVuZGVmaW5lZDtcbiAgfVxufVxuIl19
|