@swisspost/design-system-components-angular 9.0.0-next.9 → 10.0.0-next.37
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/swisspost-design-system-components-angular.mjs +195 -151
- package/fesm2022/swisspost-design-system-components-angular.mjs.map +1 -1
- package/lib/components.module.d.ts +1 -1
- package/lib/custom/value-accessors/post-card-control-checkbox-value-accessor.d.ts +5 -5
- package/lib/custom/value-accessors/post-card-control-radio-value-accessor.d.ts +5 -5
- package/lib/stencil-generated/components.d.ts +76 -48
- package/lib/stencil-generated/index.d.ts +1 -1
- package/package.json +6 -7
- package/esm2022/lib/components.module.mjs +0 -62
- package/esm2022/lib/custom/value-accessors/post-card-control-checkbox-value-accessor.mjs +0 -61
- package/esm2022/lib/custom/value-accessors/post-card-control-radio-value-accessor.mjs +0 -62
- package/esm2022/lib/stencil-generated/angular-component-lib/utils.mjs +0 -59
- package/esm2022/lib/stencil-generated/components.mjs +0 -871
- package/esm2022/lib/stencil-generated/index.mjs +0 -38
- package/esm2022/public-api.mjs +0 -11
- package/esm2022/swisspost-design-system-components-angular.mjs +0 -5
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { Directive, HostListener } from '@angular/core';
|
|
2
|
-
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class PostCardControlRadioValueAccessorDirective {
|
|
5
|
-
constructor(el) {
|
|
6
|
-
this.el = el;
|
|
7
|
-
this.onChange = () => {
|
|
8
|
-
/**/
|
|
9
|
-
};
|
|
10
|
-
this.onTouched = () => {
|
|
11
|
-
/**/
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
writeValue(value) {
|
|
15
|
-
this.el.nativeElement.checked = this.lastValue =
|
|
16
|
-
this.el.nativeElement.value != value ? false : value;
|
|
17
|
-
}
|
|
18
|
-
handleChangeEvent(value) {
|
|
19
|
-
this.onChange(value);
|
|
20
|
-
}
|
|
21
|
-
_handleBlurEvent() {
|
|
22
|
-
this.onTouched();
|
|
23
|
-
}
|
|
24
|
-
registerOnChange(fn) {
|
|
25
|
-
this.onChange = fn;
|
|
26
|
-
}
|
|
27
|
-
registerOnTouched(fn) {
|
|
28
|
-
this.onTouched = fn;
|
|
29
|
-
}
|
|
30
|
-
setDisabledState(isDisabled) {
|
|
31
|
-
this.el.nativeElement.disabled = isDisabled;
|
|
32
|
-
}
|
|
33
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PostCardControlRadioValueAccessorDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
34
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: PostCardControlRadioValueAccessorDirective, selector: "post-card-control[type=\"radio\"]", host: { listeners: { "postChange": "handleChangeEvent($event.detail.value)", "focusout": "_handleBlurEvent()" } }, providers: [
|
|
35
|
-
{
|
|
36
|
-
provide: NG_VALUE_ACCESSOR,
|
|
37
|
-
useExisting: PostCardControlRadioValueAccessorDirective,
|
|
38
|
-
multi: true,
|
|
39
|
-
},
|
|
40
|
-
], ngImport: i0 }); }
|
|
41
|
-
}
|
|
42
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PostCardControlRadioValueAccessorDirective, decorators: [{
|
|
43
|
-
type: Directive,
|
|
44
|
-
args: [{
|
|
45
|
-
/* eslint-disable-next-line @angular-eslint/directive-selector */
|
|
46
|
-
selector: 'post-card-control[type="radio"]',
|
|
47
|
-
providers: [
|
|
48
|
-
{
|
|
49
|
-
provide: NG_VALUE_ACCESSOR,
|
|
50
|
-
useExisting: PostCardControlRadioValueAccessorDirective,
|
|
51
|
-
multi: true,
|
|
52
|
-
},
|
|
53
|
-
],
|
|
54
|
-
}]
|
|
55
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { handleChangeEvent: [{
|
|
56
|
-
type: HostListener,
|
|
57
|
-
args: ['postChange', ['$event.detail.value']]
|
|
58
|
-
}], _handleBlurEvent: [{
|
|
59
|
-
type: HostListener,
|
|
60
|
-
args: ['focusout']
|
|
61
|
-
}] } });
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9zdC1jYXJkLWNvbnRyb2wtcmFkaW8tdmFsdWUtYWNjZXNzb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvY3VzdG9tL3ZhbHVlLWFjY2Vzc29ycy9wb3N0LWNhcmQtY29udHJvbC1yYWRpby12YWx1ZS1hY2Nlc3Nvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQUUsaUJBQWlCLEVBQXdCLE1BQU0sZ0JBQWdCLENBQUM7O0FBYXpFLE1BQU0sT0FBTywwQ0FBMEM7SUFTckQsWUFBc0IsRUFBYztRQUFkLE9BQUUsR0FBRixFQUFFLENBQVk7UUFSNUIsYUFBUSxHQUF5QixHQUFHLEVBQUU7WUFDNUMsSUFBSTtRQUNOLENBQUMsQ0FBQztRQUNNLGNBQVMsR0FBZSxHQUFHLEVBQUU7WUFDbkMsSUFBSTtRQUNOLENBQUMsQ0FBQztJQUdxQyxDQUFDO0lBRXhDLFVBQVUsQ0FBQyxLQUFVO1FBQ25CLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUztZQUM1QyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUN6RCxDQUFDO0lBR0QsaUJBQWlCLENBQUMsS0FBVTtRQUMxQixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFHRCxnQkFBZ0I7UUFDZCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELGdCQUFnQixDQUFDLEVBQXdCO1FBQ3ZDLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFDRCxpQkFBaUIsQ0FBQyxFQUFjO1FBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxVQUFtQjtRQUNsQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO0lBQzlDLENBQUM7K0dBbkNVLDBDQUEwQzttR0FBMUMsMENBQTBDLCtLQVIxQztZQUNUO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSwwQ0FBMEM7Z0JBQ3ZELEtBQUssRUFBRSxJQUFJO2FBQ1o7U0FDRjs7NEZBRVUsMENBQTBDO2tCQVh0RCxTQUFTO21CQUFDO29CQUNULGlFQUFpRTtvQkFDakUsUUFBUSxFQUFFLGlDQUFpQztvQkFDM0MsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsNENBQTRDOzRCQUN2RCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjtpQkFDRjsrRUFrQkMsaUJBQWlCO3NCQURoQixZQUFZO3VCQUFDLFlBQVksRUFBRSxDQUFDLHFCQUFxQixDQUFDO2dCQU1uRCxnQkFBZ0I7c0JBRGYsWUFBWTt1QkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SLCBDb250cm9sVmFsdWVBY2Nlc3NvciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQERpcmVjdGl2ZSh7XG4gIC8qIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvZGlyZWN0aXZlLXNlbGVjdG9yICovXG4gIHNlbGVjdG9yOiAncG9zdC1jYXJkLWNvbnRyb2xbdHlwZT1cInJhZGlvXCJdJyxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogUG9zdENhcmRDb250cm9sUmFkaW9WYWx1ZUFjY2Vzc29yRGlyZWN0aXZlLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgUG9zdENhcmRDb250cm9sUmFkaW9WYWx1ZUFjY2Vzc29yRGlyZWN0aXZlIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICBwcml2YXRlIG9uQ2hhbmdlOiAodmFsdWU6IGFueSkgPT4gdm9pZCA9ICgpID0+IHtcbiAgICAvKiovXG4gIH07XG4gIHByaXZhdGUgb25Ub3VjaGVkOiAoKSA9PiB2b2lkID0gKCkgPT4ge1xuICAgIC8qKi9cbiAgfTtcbiAgcHJvdGVjdGVkIGxhc3RWYWx1ZTogYW55O1xuXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBlbDogRWxlbWVudFJlZikge31cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2hlY2tlZCA9IHRoaXMubGFzdFZhbHVlID1cbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC52YWx1ZSAhPSB2YWx1ZSA/IGZhbHNlIDogdmFsdWU7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdwb3N0Q2hhbmdlJywgWyckZXZlbnQuZGV0YWlsLnZhbHVlJ10pXG4gIGhhbmRsZUNoYW5nZUV2ZW50KHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3Vzb3V0JylcbiAgX2hhbmRsZUJsdXJFdmVudCgpIHtcbiAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKHZhbHVlOiBhbnkpID0+IHZvaWQpIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKSB7XG4gICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxufVxuIl19
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
/* eslint-disable */
|
|
2
|
-
/* tslint:disable */
|
|
3
|
-
import { fromEvent } from 'rxjs';
|
|
4
|
-
export const proxyInputs = (Cmp, inputs) => {
|
|
5
|
-
const Prototype = Cmp.prototype;
|
|
6
|
-
inputs.forEach((item) => {
|
|
7
|
-
Object.defineProperty(Prototype, item, {
|
|
8
|
-
get() {
|
|
9
|
-
return this.el[item];
|
|
10
|
-
},
|
|
11
|
-
set(val) {
|
|
12
|
-
this.z.runOutsideAngular(() => (this.el[item] = val));
|
|
13
|
-
},
|
|
14
|
-
/**
|
|
15
|
-
* In the event that proxyInputs is called
|
|
16
|
-
* multiple times re-defining these inputs
|
|
17
|
-
* will cause an error to be thrown. As a result
|
|
18
|
-
* we set configurable: true to indicate these
|
|
19
|
-
* properties can be changed.
|
|
20
|
-
*/
|
|
21
|
-
configurable: true,
|
|
22
|
-
});
|
|
23
|
-
});
|
|
24
|
-
};
|
|
25
|
-
export const proxyMethods = (Cmp, methods) => {
|
|
26
|
-
const Prototype = Cmp.prototype;
|
|
27
|
-
methods.forEach((methodName) => {
|
|
28
|
-
Prototype[methodName] = function () {
|
|
29
|
-
const args = arguments;
|
|
30
|
-
return this.z.runOutsideAngular(() => this.el[methodName].apply(this.el, args));
|
|
31
|
-
};
|
|
32
|
-
});
|
|
33
|
-
};
|
|
34
|
-
export const proxyOutputs = (instance, el, events) => {
|
|
35
|
-
events.forEach((eventName) => (instance[eventName] = fromEvent(el, eventName)));
|
|
36
|
-
};
|
|
37
|
-
export const defineCustomElement = (tagName, customElement) => {
|
|
38
|
-
if (customElement !== undefined && typeof customElements !== 'undefined' && !customElements.get(tagName)) {
|
|
39
|
-
customElements.define(tagName, customElement);
|
|
40
|
-
}
|
|
41
|
-
};
|
|
42
|
-
// tslint:disable-next-line: only-arrow-functions
|
|
43
|
-
export function ProxyCmp(opts) {
|
|
44
|
-
const decorator = function (cls) {
|
|
45
|
-
const { defineCustomElementFn, inputs, methods } = opts;
|
|
46
|
-
if (defineCustomElementFn !== undefined) {
|
|
47
|
-
defineCustomElementFn();
|
|
48
|
-
}
|
|
49
|
-
if (inputs) {
|
|
50
|
-
proxyInputs(cls, inputs);
|
|
51
|
-
}
|
|
52
|
-
if (methods) {
|
|
53
|
-
proxyMethods(cls, methods);
|
|
54
|
-
}
|
|
55
|
-
return cls;
|
|
56
|
-
};
|
|
57
|
-
return decorator;
|
|
58
|
-
}
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc3RlbmNpbC1nZW5lcmF0ZWQvYW5ndWxhci1jb21wb25lbnQtbGliL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9CQUFvQjtBQUNwQixvQkFBb0I7QUFDcEIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVqQyxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsQ0FBQyxHQUFRLEVBQUUsTUFBZ0IsRUFBRSxFQUFFO0lBQ3hELE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUM7SUFDaEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1FBQ3RCLE1BQU0sQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRTtZQUNyQyxHQUFHO2dCQUNELE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN2QixDQUFDO1lBQ0QsR0FBRyxDQUFDLEdBQVE7Z0JBQ1YsSUFBSSxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUN4RCxDQUFDO1lBQ0Q7Ozs7OztlQU1HO1lBQ0gsWUFBWSxFQUFFLElBQUk7U0FDbkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxHQUFRLEVBQUUsT0FBaUIsRUFBRSxFQUFFO0lBQzFELE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUM7SUFDaEMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1FBQzdCLFNBQVMsQ0FBQyxVQUFVLENBQUMsR0FBRztZQUN0QixNQUFNLElBQUksR0FBRyxTQUFTLENBQUM7WUFDdkIsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsRixDQUFDLENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFDLFFBQWEsRUFBRSxFQUFPLEVBQUUsTUFBZ0IsRUFBRSxFQUFFO0lBQ3ZFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxFQUFFLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2xGLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQUMsT0FBZSxFQUFFLGFBQWtCLEVBQUUsRUFBRTtJQUN6RSxJQUFJLGFBQWEsS0FBSyxTQUFTLElBQUksT0FBTyxjQUFjLEtBQUssV0FBVyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ3pHLGNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ2hELENBQUM7QUFDSCxDQUFDLENBQUM7QUFFRixpREFBaUQ7QUFDakQsTUFBTSxVQUFVLFFBQVEsQ0FBQyxJQUF5RTtJQUNoRyxNQUFNLFNBQVMsR0FBRyxVQUFVLEdBQVE7UUFDbEMsTUFBTSxFQUFFLHFCQUFxQixFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUM7UUFFeEQsSUFBSSxxQkFBcUIsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN4QyxxQkFBcUIsRUFBRSxDQUFDO1FBQzFCLENBQUM7UUFFRCxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ1gsV0FBVyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUMzQixDQUFDO1FBQ0QsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNaLFlBQVksQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDN0IsQ0FBQztRQUNELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQyxDQUFDO0lBQ0YsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlICovXG4vKiB0c2xpbnQ6ZGlzYWJsZSAqL1xuaW1wb3J0IHsgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBjb25zdCBwcm94eUlucHV0cyA9IChDbXA6IGFueSwgaW5wdXRzOiBzdHJpbmdbXSkgPT4ge1xuICBjb25zdCBQcm90b3R5cGUgPSBDbXAucHJvdG90eXBlO1xuICBpbnB1dHMuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShQcm90b3R5cGUsIGl0ZW0sIHtcbiAgICAgIGdldCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxbaXRlbV07XG4gICAgICB9LFxuICAgICAgc2V0KHZhbDogYW55KSB7XG4gICAgICAgIHRoaXMuei5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiAodGhpcy5lbFtpdGVtXSA9IHZhbCkpO1xuICAgICAgfSxcbiAgICAgIC8qKlxuICAgICAgICogSW4gdGhlIGV2ZW50IHRoYXQgcHJveHlJbnB1dHMgaXMgY2FsbGVkXG4gICAgICAgKiBtdWx0aXBsZSB0aW1lcyByZS1kZWZpbmluZyB0aGVzZSBpbnB1dHNcbiAgICAgICAqIHdpbGwgY2F1c2UgYW4gZXJyb3IgdG8gYmUgdGhyb3duLiBBcyBhIHJlc3VsdFxuICAgICAgICogd2Ugc2V0IGNvbmZpZ3VyYWJsZTogdHJ1ZSB0byBpbmRpY2F0ZSB0aGVzZVxuICAgICAgICogcHJvcGVydGllcyBjYW4gYmUgY2hhbmdlZC5cbiAgICAgICAqL1xuICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIH0pO1xuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBwcm94eU1ldGhvZHMgPSAoQ21wOiBhbnksIG1ldGhvZHM6IHN0cmluZ1tdKSA9PiB7XG4gIGNvbnN0IFByb3RvdHlwZSA9IENtcC5wcm90b3R5cGU7XG4gIG1ldGhvZHMuZm9yRWFjaCgobWV0aG9kTmFtZSkgPT4ge1xuICAgIFByb3RvdHlwZVttZXRob2ROYW1lXSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IGFyZ3MgPSBhcmd1bWVudHM7XG4gICAgICByZXR1cm4gdGhpcy56LnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHRoaXMuZWxbbWV0aG9kTmFtZV0uYXBwbHkodGhpcy5lbCwgYXJncykpO1xuICAgIH07XG4gIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IHByb3h5T3V0cHV0cyA9IChpbnN0YW5jZTogYW55LCBlbDogYW55LCBldmVudHM6IHN0cmluZ1tdKSA9PiB7XG4gIGV2ZW50cy5mb3JFYWNoKChldmVudE5hbWUpID0+IChpbnN0YW5jZVtldmVudE5hbWVdID0gZnJvbUV2ZW50KGVsLCBldmVudE5hbWUpKSk7XG59O1xuXG5leHBvcnQgY29uc3QgZGVmaW5lQ3VzdG9tRWxlbWVudCA9ICh0YWdOYW1lOiBzdHJpbmcsIGN1c3RvbUVsZW1lbnQ6IGFueSkgPT4ge1xuICBpZiAoY3VzdG9tRWxlbWVudCAhPT0gdW5kZWZpbmVkICYmIHR5cGVvZiBjdXN0b21FbGVtZW50cyAhPT0gJ3VuZGVmaW5lZCcgJiYgIWN1c3RvbUVsZW1lbnRzLmdldCh0YWdOYW1lKSkge1xuICAgIGN1c3RvbUVsZW1lbnRzLmRlZmluZSh0YWdOYW1lLCBjdXN0b21FbGVtZW50KTtcbiAgfVxufTtcblxuLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBvbmx5LWFycm93LWZ1bmN0aW9uc1xuZXhwb3J0IGZ1bmN0aW9uIFByb3h5Q21wKG9wdHM6IHsgZGVmaW5lQ3VzdG9tRWxlbWVudEZuPzogKCkgPT4gdm9pZDsgaW5wdXRzPzogYW55OyBtZXRob2RzPzogYW55IH0pIHtcbiAgY29uc3QgZGVjb3JhdG9yID0gZnVuY3Rpb24gKGNsczogYW55KSB7XG4gICAgY29uc3QgeyBkZWZpbmVDdXN0b21FbGVtZW50Rm4sIGlucHV0cywgbWV0aG9kcyB9ID0gb3B0cztcblxuICAgIGlmIChkZWZpbmVDdXN0b21FbGVtZW50Rm4gIT09IHVuZGVmaW5lZCkge1xuICAgICAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuKCk7XG4gICAgfVxuXG4gICAgaWYgKGlucHV0cykge1xuICAgICAgcHJveHlJbnB1dHMoY2xzLCBpbnB1dHMpO1xuICAgIH1cbiAgICBpZiAobWV0aG9kcykge1xuICAgICAgcHJveHlNZXRob2RzKGNscywgbWV0aG9kcyk7XG4gICAgfVxuICAgIHJldHVybiBjbHM7XG4gIH07XG4gIHJldHVybiBkZWNvcmF0b3I7XG59XG4iXX0=
|