@dev-tcloud/tcloud-ui 2.1.6 → 2.1.7
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/esm2022/lib/_directives/currency/currency.directive.mjs +1 -5
- package/esm2022/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list-option/tcloud-ui-data-list-option.component.mjs +10 -4
- package/esm2022/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list.component.mjs +3 -3
- package/esm2022/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list.mjs +1 -1
- package/esm2022/lib/_modules/tcloud-ui-filters/components/range-date/range-date.component.mjs +2 -2
- package/fesm2022/dev-tcloud-tcloud-ui.mjs +12 -10
- package/fesm2022/dev-tcloud-tcloud-ui.mjs.map +1 -1
- package/lib/_modules/tcloud-ui-accordion/tcloud-ui-accordion.component.d.ts +1 -1
- package/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list-option/tcloud-ui-data-list-option.component.d.ts +2 -1
- package/lib/_modules/tcloud-ui-data-list/tcloud-ui-data-list.d.ts +1 -0
- package/lib/_modules/tcloud-ui-filters/components/range-date/range-date.component.d.ts +1 -1
- package/lib/_modules/tcloud-ui-modal/tcloud-ui-modal.component.d.ts +1 -1
- package/package.json +1 -1
- package/scss/tcloud/custom/forms.scss +1 -1
|
@@ -62,7 +62,6 @@ export class TCloudCurrencyDirective {
|
|
|
62
62
|
return 'R$ ' + this.formatReal(value);
|
|
63
63
|
}
|
|
64
64
|
unmask(value) {
|
|
65
|
-
console.log('unmask 1', value);
|
|
66
65
|
if (value === undefined || value === null || value === "") {
|
|
67
66
|
return "";
|
|
68
67
|
}
|
|
@@ -74,7 +73,6 @@ export class TCloudCurrencyDirective {
|
|
|
74
73
|
}
|
|
75
74
|
}
|
|
76
75
|
value = this.toDecimal(value);
|
|
77
|
-
console.log('unmask 2', value);
|
|
78
76
|
return value;
|
|
79
77
|
}
|
|
80
78
|
formatarNumero(numero) {
|
|
@@ -100,7 +98,6 @@ export class TCloudCurrencyDirective {
|
|
|
100
98
|
}
|
|
101
99
|
return _value;
|
|
102
100
|
}
|
|
103
|
-
console.log('inner formatReal 1', value);
|
|
104
101
|
let integerPart = cleanValue.slice(0, -2) || '0';
|
|
105
102
|
const decimalPart = cleanValue.slice(-2).padStart(2, '0');
|
|
106
103
|
if ((integerPart).length > 3) {
|
|
@@ -112,7 +109,6 @@ export class TCloudCurrencyDirective {
|
|
|
112
109
|
_value = '0' + _value;
|
|
113
110
|
}
|
|
114
111
|
}
|
|
115
|
-
console.log('inner formatReal 2', value);
|
|
116
112
|
return _value;
|
|
117
113
|
}
|
|
118
114
|
toDecimal(numero) {
|
|
@@ -161,4 +157,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
161
157
|
type: HostListener,
|
|
162
158
|
args: ['input', ['$event.target.value']]
|
|
163
159
|
}] } });
|
|
164
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3kuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGNsb3VkLXVpL3NyYy9saWIvX2RpcmVjdGl2ZXMvY3VycmVuY3kvY3VycmVuY3kuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxpQkFBaUIsRUFBd0IsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFVekUsTUFBTSxPQUFPLHVCQUF1QjtJQUVsQyxZQUFvQixFQUFjLEVBQVUsUUFBbUI7UUFBM0MsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUFVLGFBQVEsR0FBUixRQUFRLENBQVc7UUFFL0QsYUFBUSxHQUFRLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUN6QixZQUFPLEdBQVEsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0lBSDBDLENBQUM7SUFLbkUsc0JBQXNCO0lBQ3RCLHVCQUF1QjtJQUN2QixzRUFBc0U7SUFDdEUscURBQXFEO0lBQ3JELDRDQUE0QztJQUM1QyxzQ0FBc0M7SUFDdEMsWUFBWTtJQUNaLElBQUk7SUFFSixVQUFVLENBQUMsS0FBVTtRQUNuQixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDakUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsWUFBWSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3JFLElBQUksS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFO1lBQ3pDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLE9BQU8s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QyxLQUFLLEVBQUUsSUFBSTt5QkFDWixDQUFDO2lCQUNIO3lIQW9DQyxPQUFPO3NCQUROLFlBQVk7dUJBQUMsT0FBTztnQkFnQnJCLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbVENjdXJyZW5jeV0nLFxyXG4gIHByb3ZpZGVyczogW3tcclxuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgdXNlRXhpc3Rpbmc6IFRDbG91ZEN1cnJlbmN5RGlyZWN0aXZlLFxyXG4gICAgbXVsdGk6IHRydWVcclxuICB9XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVENsb3VkQ3VycmVuY3lEaXJlY3RpdmUgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikge31cclxuXHJcbiAgb25DaGFuZ2U6IGFueSA9ICgpID0+IHt9O1xyXG4gIG9uVG91Y2g6IGFueSA9ICgpID0+IHt9O1xyXG5cclxuICAvLyBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgLy8gICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAvLyAgICAgbGV0IHVubWFza2VkVmFsdWUgPSB0aGlzLnVubWFzayggdGhpcy5lbC5uYXRpdmVFbGVtZW50LnZhbHVlICk7XHJcbiAgLy8gICAgIGNvbnNvbGUubG9nKCdWYWxvciBkbyBpbnB1dDonLCB1bm1hc2tlZFZhbHVlKTtcclxuICAvLyAgICAgdGhpcy5vbkNoYW5nZShOdW1iZXIodW5tYXNrZWRWYWx1ZSkpO1xyXG4gIC8vICAgICB0aGlzLndyaXRlVmFsdWUodW5tYXNrZWRWYWx1ZSk7XHJcbiAgLy8gICB9KTsgICAgXHJcbiAgLy8gfVxyXG5cclxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAndHlwZScsICd0ZXh0Jyk7XHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ3RleHQtYWxpZ24nLCAncmlnaHQnKTtcclxuICAgIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkICYmIHZhbHVlICE9PSBudWxsKSB7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAndmFsdWUnLCB0aGlzLmZvcm1hdEN1cnJlbmN5KHZhbHVlKSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ3ZhbHVlJywgJycpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2ggPSBmbjtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzJylcclxuICBvbkZvY3VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZXRDdXJzb3JUb0VuZCgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRDdXJzb3JUb0VuZCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IG5hdGl2ZUlucHV0ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XHJcbiAgICBjb25zdCBsZW5ndGggPSBuYXRpdmVJbnB1dC52YWx1ZS5sZW5ndGg7XHJcbiAgICBuYXRpdmVJbnB1dC5zZXRTZWxlY3Rpb25SYW5nZShsZW5ndGgsIGxlbmd0aCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldEluSW5wdXQoKXtcclxuXHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdpbnB1dCcsIFsnJGV2ZW50LnRhcmdldC52YWx1ZSddKVxyXG4gIG9uSW5wdXQodmFsdWU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgY29uc3QgdW5tYXNrZWRWYWx1ZSA9IHRoaXMudW5tYXNrKHZhbHVlKTtcclxuICAgIHRoaXMub25DaGFuZ2UoTnVtYmVyKHVubWFza2VkVmFsdWUpKTtcclxuICAgIHRoaXMud3JpdGVWYWx1ZSh1bm1hc2tlZFZhbHVlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZm9ybWF0Q3VycmVuY3kodmFsdWU6IGFueSk6IHN0cmluZyB7IFxyXG4gICAgXHJcbiAgICBjb25zdCBwb3NpY2FvUG9udG8gPSBgJHt2YWx1ZX1gLmluZGV4T2YoJy4nKTtcclxuICAgIGlmIChwb3NpY2FvUG9udG8gIT09IC0xKSB7XHJcbiAgICAgIGxldCBwYXJ0ID0gYCR7dmFsdWV9YC5zcGxpdCgnLicpO1xyXG4gICAgICBsZXQgZGVjaW1hbFBhcnQgPSAocGFydCAmJiBwYXJ0WzFdKSA/IHBhcnRbMV0gOiAnJztcclxuICAgICAgaWYoIChkZWNpbWFsUGFydCkubGVuZ3RoIDwgMiApe1xyXG4gICAgICAgIHZhbHVlID0gdmFsdWUgKyAnMCc7XHJcbiAgICAgIH0gICAgICBcclxuICAgIH1lbHNle1xyXG4gICAgICB2YWx1ZSA9IHZhbHVlICsgJy4wMCc7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuICdSJCAnKyB0aGlzLmZvcm1hdFJlYWwodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB1bm1hc2sodmFsdWU6IHN0cmluZyk6IGFueSB7XHJcbiAgICBjb25zb2xlLmxvZygndW5tYXNrIDEnLCB2YWx1ZSk7XHJcbiAgICBpZiggdmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gXCJcIiApe1xyXG4gICAgICByZXR1cm4gXCJcIjtcclxuICAgIH1cclxuICAgIHZhbHVlID0gdmFsdWUucmVwbGFjZSgvW15cXGRdL2csICcnKTtcclxuICAgIHZhbHVlID0gdmFsdWUucmVwbGFjZSgvXjArLywgJycpO1xyXG4gICAgaWYoIHZhbHVlICYmIHZhbHVlWzBdICl7XHJcbiAgICAgIGlmKCAodmFsdWVbMF0gPT09ICcsJyB8fCB2YWx1ZVswXSA9PT0gJy4nKSApe1xyXG4gICAgICAgIHZhbHVlID0gJzAnK3ZhbHVlO1xyXG4gICAgICB9ICAgICBcclxuICAgIH1cclxuICAgIHZhbHVlID0gdGhpcy50b0RlY2ltYWwodmFsdWUpOyAgXHJcbiAgICBjb25zb2xlLmxvZygndW5tYXNrIDInLCB2YWx1ZSk7ICBcclxuICAgIHJldHVybiB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZm9ybWF0YXJOdW1lcm8obnVtZXJvOiBhbnkpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIG51bWVyby50b1N0cmluZygpLnJlcGxhY2UoL1xcQig/PShcXGR7M30pKyg/IVxcZCkpL2csICcuJykgYXMgc3RyaW5nO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmb3JtYXRSZWFsKHZhbHVlOiBhbnkpOiBzdHJpbmcge1xyXG4gICAgdmFyIGRlbGltaXRlciA9ICcsJztcclxuICAgIFxyXG4gICAgaWYoICF2YWx1ZSEgKXsgcmV0dXJuIGAwJHtkZWxpbWl0ZXJ9MDBgOyB9XHJcbiAgICBpZiggdmFsdWUgPT09IGAwJHtkZWxpbWl0ZXJ9MDBgICl7IHZhbHVlID0gJyc7IH1cclxuICAgIHZhbHVlID0gYCR7dmFsdWV9YDtcclxuICAgIHZhbHVlID0gdmFsdWUucmVwbGFjZSgvXjArLywgJycpO1xyXG4gICAgY29uc3QgY2xlYW5WYWx1ZSA9IHZhbHVlLnJlcGxhY2UoL1teXFxkXS9nLCAnJyk7XHJcbiAgICBpZiAoY2xlYW5WYWx1ZS5sZW5ndGggPD0gMikgeyAgICAgIFxyXG4gICAgICBsZXQgX3ZhbHVlID0gYCR7ZGVsaW1pdGVyfSR7Y2xlYW5WYWx1ZS5wYWRTdGFydCgyLCAnMCcpfWA7XHJcbiAgICAgIGlmKCBfdmFsdWUgJiYgX3ZhbHVlWzBdICl7XHJcbiAgICAgICAgaWYoIChfdmFsdWVbMF0gPT09ICcsJyB8fCBfdmFsdWVbMF0gPT09ICcuJykgKXtcclxuICAgICAgICAgIF92YWx1ZSA9ICcwJytfdmFsdWU7XHJcbiAgICAgICAgfSAgICAgXHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIF92YWx1ZTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zb2xlLmxvZygnaW5uZXIgZm9ybWF0UmVhbCAxJywgdmFsdWUpO1xyXG5cclxuICAgIGxldCBpbnRlZ2VyUGFydCA9IGNsZWFuVmFsdWUuc2xpY2UoMCwgLTIpIHx8ICcwJztcclxuICAgIGNvbnN0IGRlY2ltYWxQYXJ0ID0gY2xlYW5WYWx1ZS5zbGljZSgtMikucGFkU3RhcnQoMiwgJzAnKTtcclxuICAgIGlmKCAoaW50ZWdlclBhcnQpLmxlbmd0aCA+IDMgKXtcclxuICAgICAgaW50ZWdlclBhcnQgPSB0aGlzLmZvcm1hdGFyTnVtZXJvKGludGVnZXJQYXJ0KTtcclxuICAgIH1cclxuICAgIGxldCBfdmFsdWUgPSBgJHtpbnRlZ2VyUGFydH0ke2RlbGltaXRlcn0ke2RlY2ltYWxQYXJ0fWA7XHJcbiAgICBpZiggX3ZhbHVlICYmIF92YWx1ZVswXSApe1xyXG4gICAgICBpZiggKF92YWx1ZVswXSA9PT0gJywnIHx8IF92YWx1ZVswXSA9PT0gJy4nKSApe1xyXG4gICAgICAgIF92YWx1ZSA9ICcwJytfdmFsdWU7XHJcbiAgICAgIH0gICAgIFxyXG4gICAgfVxyXG5cclxuICAgIGNvbnNvbGUubG9nKCdpbm5lciBmb3JtYXRSZWFsIDInLCB2YWx1ZSk7XHJcblxyXG4gICAgcmV0dXJuIF92YWx1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdG9EZWNpbWFsKG51bWVybzogYW55KSB7ICAgIFxyXG4gICAgY29uc3QgbnVtZXJvU3RyID0gbnVtZXJvLnRvU3RyaW5nKCk7XHJcbiAgICBsZXQgcGFydGVJbnRlaXJhID0gbnVtZXJvU3RyLnNsaWNlKDAsIC0yKSB8fCAnMCc7XHJcbiAgICBsZXQgcGFydGVEZWNpbWFsID0gbnVtZXJvU3RyLnNsaWNlKC0yKTtcclxuICAgIGlmKE51bWJlcihwYXJ0ZURlY2ltYWwpID4gMCAmJiBOdW1iZXIocGFydGVEZWNpbWFsKSA8IDEwICl7XHJcbiAgICAgIHBhcnRlRGVjaW1hbCA9IGAwJHtOdW1iZXIocGFydGVEZWNpbWFsKX1gO1xyXG4gICAgfVxyXG4gICAgbGV0IF92YWx1ZSA9IGAke3BhcnRlSW50ZWlyYX0uJHtwYXJ0ZURlY2ltYWx9YDsgIFxyXG4gICAgaWYoIF92YWx1ZSA9PT0gJywnIHx8IF92YWx1ZSA9PT0gJywwJyB8fCBfdmFsdWUgPT09ICcwLCcgfHwgX3ZhbHVlID09PSAnMCwwJyB8fCBfdmFsdWUgPT09ICcwLDAwJyApeyByZXR1cm4gJzAnOyB9XHJcbiAgICBpZiggX3ZhbHVlID09PSAnLicgfHwgX3ZhbHVlID09PSAnLjAnIHx8IF92YWx1ZSA9PT0gJzAuJyB8fCBfdmFsdWUgPT09ICcwLjAnIHx8IF92YWx1ZSA9PT0gJzAuMDAnICl7IHJldHVybiAnMCc7IH1cclxuICAgIF92YWx1ZSA9IF92YWx1ZS5yZXBsYWNlKC9eMCsvLCAnJyk7XHJcbiAgICBpZiggX3ZhbHVlICYmIF92YWx1ZVswXSApe1xyXG4gICAgICBpZiggKF92YWx1ZVswXSA9PT0gJywnIHx8IF92YWx1ZVswXSA9PT0gJy4nKSApe1xyXG4gICAgICAgIF92YWx1ZSA9ICcwJytfdmFsdWU7XHJcbiAgICAgIH0gICAgIFxyXG4gICAgfVxyXG4gICAgXHJcbiAgICByZXR1cm4gX3ZhbHVlO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
160
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3kuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGNsb3VkLXVpL3NyYy9saWIvX2RpcmVjdGl2ZXMvY3VycmVuY3kvY3VycmVuY3kuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxpQkFBaUIsRUFBd0IsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFVekUsTUFBTSxPQUFPLHVCQUF1QjtJQUVsQyxZQUFvQixFQUFjLEVBQVUsUUFBbUI7UUFBM0MsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUFVLGFBQVEsR0FBUixRQUFRLENBQVc7UUFFL0QsYUFBUSxHQUFRLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUN6QixZQUFPLEdBQVEsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0lBSDBDLENBQUM7SUFLbkUsc0JBQXNCO0lBQ3RCLHVCQUF1QjtJQUN2QixzRUFBc0U7SUFDdEUscURBQXFEO0lBQ3JELDRDQUE0QztJQUM1QyxzQ0FBc0M7SUFDdEMsWUFBWTtJQUNaLElBQUk7SUFFSixVQUFVLENBQUMsS0FBVTtRQUNuQixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDakUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsWUFBWSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3JFLElBQUksS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFO1lBQ3pDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLE9BQU8s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QUssTUFBTSxFQUFFO1lBQUUsT0FBTyxHQUFHLENBQUM7U0FBRTtRQUNsSCxJQUFJLE1BQU0sS0FBSyxHQUFHLElBQUksTUFBTSxLQUFLLElBQUksSUFBSSxNQUFNLEtBQUssSUFBSSxJQUFJLE1BQU0sS0FBSyxLQUFLLElBQUksTUFBTSxLQUFLLE1BQU0sRUFBRTtZQUFFLE9BQU8sR0FBRyxDQUFDO1NBQUU7UUFDbEgsTUFBTSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ25DLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUN2QixJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUU7Z0JBQzVDLE1BQU0sR0FBRyxHQUFHLEdBQUMsTUFBTSxDQUFDO2FBQ3JCO1NBQ0Y7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDOytHQTlJVSx1QkFBdUI7bUdBQXZCLHVCQUF1QiwrSEFOdkIsQ0FBQztnQkFDVixPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsdUJBQXVCO2dCQUNwQyxLQUFLLEVBQUUsSUFBSTthQUNaLENBQUM7OzRGQUVTLHVCQUF1QjtrQkFSbkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsU0FBUyxFQUFFLENBQUM7NEJBQ1YsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyx5QkFBeUI7NEJBQ3BDLEtBQUssRUFBRSxJQUFJO3lCQUNaLENBQUM7aUJBQ0g7eUhBb0NDLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxPQUFPO2dCQWdCckIsT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLHFCQUFxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiwgQ29udHJvbFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tUQ2N1cnJlbmN5XScsXHJcbiAgcHJvdmlkZXJzOiBbe1xyXG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICB1c2VFeGlzdGluZzogVENsb3VkQ3VycmVuY3lEaXJlY3RpdmUsXHJcbiAgICBtdWx0aTogdHJ1ZVxyXG4gIH1dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUQ2xvdWRDdXJyZW5jeURpcmVjdGl2ZSBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZiwgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyKSB7fVxyXG5cclxuICBvbkNoYW5nZTogYW55ID0gKCkgPT4ge307XHJcbiAgb25Ub3VjaDogYW55ID0gKCkgPT4ge307XHJcblxyXG4gIC8vIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAvLyAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gIC8vICAgICBsZXQgdW5tYXNrZWRWYWx1ZSA9IHRoaXMudW5tYXNrKCB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQudmFsdWUgKTtcclxuICAvLyAgICAgY29uc29sZS5sb2coJ1ZhbG9yIGRvIGlucHV0OicsIHVubWFza2VkVmFsdWUpO1xyXG4gIC8vICAgICB0aGlzLm9uQ2hhbmdlKE51bWJlcih1bm1hc2tlZFZhbHVlKSk7XHJcbiAgLy8gICAgIHRoaXMud3JpdGVWYWx1ZSh1bm1hc2tlZFZhbHVlKTtcclxuICAvLyAgIH0pOyAgICBcclxuICAvLyB9XHJcblxyXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICd0eXBlJywgJ3RleHQnKTtcclxuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAndGV4dC1hbGlnbicsICdyaWdodCcpO1xyXG4gICAgaWYgKHZhbHVlICE9PSB1bmRlZmluZWQgJiYgdmFsdWUgIT09IG51bGwpIHtcclxuICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICd2YWx1ZScsIHRoaXMuZm9ybWF0Q3VycmVuY3kodmFsdWUpKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAndmFsdWUnLCAnJyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignZm9jdXMnKVxyXG4gIG9uRm9jdXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNldEN1cnNvclRvRW5kKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldEN1cnNvclRvRW5kKCk6IHZvaWQge1xyXG4gICAgY29uc3QgbmF0aXZlSW5wdXQgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTElucHV0RWxlbWVudDtcclxuICAgIGNvbnN0IGxlbmd0aCA9IG5hdGl2ZUlucHV0LnZhbHVlLmxlbmd0aDtcclxuICAgIG5hdGl2ZUlucHV0LnNldFNlbGVjdGlvblJhbmdlKGxlbmd0aCwgbGVuZ3RoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0SW5JbnB1dCgpe1xyXG5cclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2lucHV0JywgWyckZXZlbnQudGFyZ2V0LnZhbHVlJ10pXHJcbiAgb25JbnB1dCh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBjb25zdCB1bm1hc2tlZFZhbHVlID0gdGhpcy51bm1hc2sodmFsdWUpO1xyXG4gICAgdGhpcy5vbkNoYW5nZShOdW1iZXIodW5tYXNrZWRWYWx1ZSkpO1xyXG4gICAgdGhpcy53cml0ZVZhbHVlKHVubWFza2VkVmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmb3JtYXRDdXJyZW5jeSh2YWx1ZTogYW55KTogc3RyaW5nIHsgXHJcbiAgICBcclxuICAgIGNvbnN0IHBvc2ljYW9Qb250byA9IGAke3ZhbHVlfWAuaW5kZXhPZignLicpO1xyXG4gICAgaWYgKHBvc2ljYW9Qb250byAhPT0gLTEpIHtcclxuICAgICAgbGV0IHBhcnQgPSBgJHt2YWx1ZX1gLnNwbGl0KCcuJyk7XHJcbiAgICAgIGxldCBkZWNpbWFsUGFydCA9IChwYXJ0ICYmIHBhcnRbMV0pID8gcGFydFsxXSA6ICcnO1xyXG4gICAgICBpZiggKGRlY2ltYWxQYXJ0KS5sZW5ndGggPCAyICl7XHJcbiAgICAgICAgdmFsdWUgPSB2YWx1ZSArICcwJztcclxuICAgICAgfSAgICAgIFxyXG4gICAgfWVsc2V7XHJcbiAgICAgIHZhbHVlID0gdmFsdWUgKyAnLjAwJztcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gJ1IkICcrIHRoaXMuZm9ybWF0UmVhbCh2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVubWFzayh2YWx1ZTogc3RyaW5nKTogYW55IHtcclxuICAgIGlmKCB2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSBcIlwiICl7XHJcbiAgICAgIHJldHVybiBcIlwiO1xyXG4gICAgfVxyXG4gICAgdmFsdWUgPSB2YWx1ZS5yZXBsYWNlKC9bXlxcZF0vZywgJycpO1xyXG4gICAgdmFsdWUgPSB2YWx1ZS5yZXBsYWNlKC9eMCsvLCAnJyk7XHJcbiAgICBpZiggdmFsdWUgJiYgdmFsdWVbMF0gKXtcclxuICAgICAgaWYoICh2YWx1ZVswXSA9PT0gJywnIHx8IHZhbHVlWzBdID09PSAnLicpICl7XHJcbiAgICAgICAgdmFsdWUgPSAnMCcrdmFsdWU7XHJcbiAgICAgIH0gICAgIFxyXG4gICAgfVxyXG4gICAgdmFsdWUgPSB0aGlzLnRvRGVjaW1hbCh2YWx1ZSk7ICAgXHJcbiAgICByZXR1cm4gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGZvcm1hdGFyTnVtZXJvKG51bWVybzogYW55KTogc3RyaW5nIHtcclxuICAgIHJldHVybiBudW1lcm8udG9TdHJpbmcoKS5yZXBsYWNlKC9cXEIoPz0oXFxkezN9KSsoPyFcXGQpKS9nLCAnLicpIGFzIHN0cmluZztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZm9ybWF0UmVhbCh2YWx1ZTogYW55KTogc3RyaW5nIHtcclxuICAgIHZhciBkZWxpbWl0ZXIgPSAnLCc7XHJcbiAgICBcclxuICAgIGlmKCAhdmFsdWUhICl7IHJldHVybiBgMCR7ZGVsaW1pdGVyfTAwYDsgfVxyXG4gICAgaWYoIHZhbHVlID09PSBgMCR7ZGVsaW1pdGVyfTAwYCApeyB2YWx1ZSA9ICcnOyB9XHJcbiAgICB2YWx1ZSA9IGAke3ZhbHVlfWA7XHJcbiAgICB2YWx1ZSA9IHZhbHVlLnJlcGxhY2UoL14wKy8sICcnKTtcclxuICAgIGNvbnN0IGNsZWFuVmFsdWUgPSB2YWx1ZS5yZXBsYWNlKC9bXlxcZF0vZywgJycpO1xyXG4gICAgaWYgKGNsZWFuVmFsdWUubGVuZ3RoIDw9IDIpIHsgICAgICBcclxuICAgICAgbGV0IF92YWx1ZSA9IGAke2RlbGltaXRlcn0ke2NsZWFuVmFsdWUucGFkU3RhcnQoMiwgJzAnKX1gO1xyXG4gICAgICBpZiggX3ZhbHVlICYmIF92YWx1ZVswXSApe1xyXG4gICAgICAgIGlmKCAoX3ZhbHVlWzBdID09PSAnLCcgfHwgX3ZhbHVlWzBdID09PSAnLicpICl7XHJcbiAgICAgICAgICBfdmFsdWUgPSAnMCcrX3ZhbHVlO1xyXG4gICAgICAgIH0gICAgIFxyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBfdmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGludGVnZXJQYXJ0ID0gY2xlYW5WYWx1ZS5zbGljZSgwLCAtMikgfHwgJzAnO1xyXG4gICAgY29uc3QgZGVjaW1hbFBhcnQgPSBjbGVhblZhbHVlLnNsaWNlKC0yKS5wYWRTdGFydCgyLCAnMCcpO1xyXG4gICAgaWYoIChpbnRlZ2VyUGFydCkubGVuZ3RoID4gMyApe1xyXG4gICAgICBpbnRlZ2VyUGFydCA9IHRoaXMuZm9ybWF0YXJOdW1lcm8oaW50ZWdlclBhcnQpO1xyXG4gICAgfVxyXG4gICAgbGV0IF92YWx1ZSA9IGAke2ludGVnZXJQYXJ0fSR7ZGVsaW1pdGVyfSR7ZGVjaW1hbFBhcnR9YDtcclxuICAgIGlmKCBfdmFsdWUgJiYgX3ZhbHVlWzBdICl7XHJcbiAgICAgIGlmKCAoX3ZhbHVlWzBdID09PSAnLCcgfHwgX3ZhbHVlWzBdID09PSAnLicpICl7XHJcbiAgICAgICAgX3ZhbHVlID0gJzAnK192YWx1ZTtcclxuICAgICAgfSAgICAgXHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIF92YWx1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdG9EZWNpbWFsKG51bWVybzogYW55KSB7ICAgIFxyXG4gICAgY29uc3QgbnVtZXJvU3RyID0gbnVtZXJvLnRvU3RyaW5nKCk7XHJcbiAgICBsZXQgcGFydGVJbnRlaXJhID0gbnVtZXJvU3RyLnNsaWNlKDAsIC0yKSB8fCAnMCc7XHJcbiAgICBsZXQgcGFydGVEZWNpbWFsID0gbnVtZXJvU3RyLnNsaWNlKC0yKTtcclxuICAgIGlmKE51bWJlcihwYXJ0ZURlY2ltYWwpID4gMCAmJiBOdW1iZXIocGFydGVEZWNpbWFsKSA8IDEwICl7XHJcbiAgICAgIHBhcnRlRGVjaW1hbCA9IGAwJHtOdW1iZXIocGFydGVEZWNpbWFsKX1gO1xyXG4gICAgfVxyXG4gICAgbGV0IF92YWx1ZSA9IGAke3BhcnRlSW50ZWlyYX0uJHtwYXJ0ZURlY2ltYWx9YDsgIFxyXG4gICAgaWYoIF92YWx1ZSA9PT0gJywnIHx8IF92YWx1ZSA9PT0gJywwJyB8fCBfdmFsdWUgPT09ICcwLCcgfHwgX3ZhbHVlID09PSAnMCwwJyB8fCBfdmFsdWUgPT09ICcwLDAwJyApeyByZXR1cm4gJzAnOyB9XHJcbiAgICBpZiggX3ZhbHVlID09PSAnLicgfHwgX3ZhbHVlID09PSAnLjAnIHx8IF92YWx1ZSA9PT0gJzAuJyB8fCBfdmFsdWUgPT09ICcwLjAnIHx8IF92YWx1ZSA9PT0gJzAuMDAnICl7IHJldHVybiAnMCc7IH1cclxuICAgIF92YWx1ZSA9IF92YWx1ZS5yZXBsYWNlKC9eMCsvLCAnJyk7XHJcbiAgICBpZiggX3ZhbHVlICYmIF92YWx1ZVswXSApe1xyXG4gICAgICBpZiggKF92YWx1ZVswXSA9PT0gJywnIHx8IF92YWx1ZVswXSA9PT0gJy4nKSApe1xyXG4gICAgICAgIF92YWx1ZSA9ICcwJytfdmFsdWU7XHJcbiAgICAgIH0gICAgIFxyXG4gICAgfVxyXG4gICAgXHJcbiAgICByZXR1cm4gX3ZhbHVlO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -7,6 +7,7 @@ export class TCloudUiDataListOptionComponent {
|
|
|
7
7
|
this.dataListService = dataListService;
|
|
8
8
|
this.id = '';
|
|
9
9
|
this.select_options = new ISelectOptions();
|
|
10
|
+
this.disabled = false;
|
|
10
11
|
this.selected = new EventEmitter();
|
|
11
12
|
}
|
|
12
13
|
ngOnInit() {
|
|
@@ -21,6 +22,9 @@ export class TCloudUiDataListOptionComponent {
|
|
|
21
22
|
return `data-list-option-${Math.floor(Math.random() * Math.floor(Math.random() * Date.now()))}`;
|
|
22
23
|
}
|
|
23
24
|
setSelectedItem(value) {
|
|
25
|
+
if (this.disabled) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
24
28
|
if (value === '') {
|
|
25
29
|
this.value = '';
|
|
26
30
|
}
|
|
@@ -46,14 +50,16 @@ export class TCloudUiDataListOptionComponent {
|
|
|
46
50
|
}
|
|
47
51
|
}
|
|
48
52
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TCloudUiDataListOptionComponent, deps: [{ token: i1.DataListService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
49
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TCloudUiDataListOptionComponent, selector: "tcloud-ui-data-list-option", inputs: { value: "value" }, outputs: { selected: "selected" }, ngImport: i0, template: "<button \r\n [title]=\"select_options.description\"\r\n id=\"{{id}}\"\r\n [attr.data-description]=\"select_options.description\"\r\n [attr.data-actived-value]=\"actived_value\"\r\n class=\"tcloud-ui-data-list-option dropdown-item\" \r\n [class.null-value]=\"value === undefined || value === null || value === ''\"\r\n [class.active]=\"value === actived_value\" \r\n type=\"button\" \r\n [value]=\"value\"\r\n (click)=\"setSelectedItem(value)\" >\r\n <ng-content></ng-content>\r\n</button>\r\n", styles: ["button{color:#666;width:100%;padding:10px;font-size:14px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}button:hover{background-color:#e5f5f9;color:#333}button.active{background-color:#ceedf5;color:#333}.null-value{height:35px}\n"] }); }
|
|
53
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TCloudUiDataListOptionComponent, selector: "tcloud-ui-data-list-option", inputs: { disabled: "disabled", value: "value" }, outputs: { selected: "selected" }, ngImport: i0, template: "<button \r\n [disabled]=\"disabled\"\r\n [title]=\"select_options.description\"\r\n id=\"{{id}}\"\r\n [attr.data-description]=\"select_options.description\"\r\n [attr.data-actived-value]=\"actived_value\"\r\n class=\"tcloud-ui-data-list-option dropdown-item\" \r\n [class.null-value]=\"value === undefined || value === null || value === ''\"\r\n [class.active]=\"value === actived_value\" \r\n [class.option-disabled]=\"disabled\"\r\n type=\"button\" \r\n [value]=\"value\"\r\n (click)=\"setSelectedItem(value)\" >\r\n <ng-content></ng-content>\r\n</button>\r\n", styles: ["button{color:#666;width:100%;padding:10px;font-size:14px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}button:hover{background-color:#e5f5f9;color:#333}button.active{background-color:#ceedf5;color:#333}.null-value{height:35px}.option-disabled{background-color:#fff!important;color:#b5b5b5!important;cursor:not-allowed!important}\n"] }); }
|
|
50
54
|
}
|
|
51
55
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TCloudUiDataListOptionComponent, decorators: [{
|
|
52
56
|
type: Component,
|
|
53
|
-
args: [{ selector: 'tcloud-ui-data-list-option', template: "<button \r\n [title]=\"select_options.description\"\r\n id=\"{{id}}\"\r\n [attr.data-description]=\"select_options.description\"\r\n [attr.data-actived-value]=\"actived_value\"\r\n class=\"tcloud-ui-data-list-option dropdown-item\" \r\n [class.null-value]=\"value === undefined || value === null || value === ''\"\r\n [class.active]=\"value === actived_value\" \r\n type=\"button\" \r\n [value]=\"value\"\r\n (click)=\"setSelectedItem(value)\" >\r\n <ng-content></ng-content>\r\n</button>\r\n", styles: ["button{color:#666;width:100%;padding:10px;font-size:14px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}button:hover{background-color:#e5f5f9;color:#333}button.active{background-color:#ceedf5;color:#333}.null-value{height:35px}\n"] }]
|
|
54
|
-
}], ctorParameters: function () { return [{ type: i1.DataListService }]; }, propDecorators: {
|
|
57
|
+
args: [{ selector: 'tcloud-ui-data-list-option', template: "<button \r\n [disabled]=\"disabled\"\r\n [title]=\"select_options.description\"\r\n id=\"{{id}}\"\r\n [attr.data-description]=\"select_options.description\"\r\n [attr.data-actived-value]=\"actived_value\"\r\n class=\"tcloud-ui-data-list-option dropdown-item\" \r\n [class.null-value]=\"value === undefined || value === null || value === ''\"\r\n [class.active]=\"value === actived_value\" \r\n [class.option-disabled]=\"disabled\"\r\n type=\"button\" \r\n [value]=\"value\"\r\n (click)=\"setSelectedItem(value)\" >\r\n <ng-content></ng-content>\r\n</button>\r\n", styles: ["button{color:#666;width:100%;padding:10px;font-size:14px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}button:hover{background-color:#e5f5f9;color:#333}button.active{background-color:#ceedf5;color:#333}.null-value{height:35px}.option-disabled{background-color:#fff!important;color:#b5b5b5!important;cursor:not-allowed!important}\n"] }]
|
|
58
|
+
}], ctorParameters: function () { return [{ type: i1.DataListService }]; }, propDecorators: { disabled: [{
|
|
59
|
+
type: Input
|
|
60
|
+
}], value: [{
|
|
55
61
|
type: Input
|
|
56
62
|
}], selected: [{
|
|
57
63
|
type: Output
|
|
58
64
|
}] } });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGNsb3VkLXVpLWRhdGEtbGlzdC1vcHRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGNsb3VkLXVpL3NyYy9saWIvX21vZHVsZXMvdGNsb3VkLXVpLWRhdGEtbGlzdC90Y2xvdWQtdWktZGF0YS1saXN0LW9wdGlvbi90Y2xvdWQtdWktZGF0YS1saXN0LW9wdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Y2xvdWQtdWkvc3JjL2xpYi9fbW9kdWxlcy90Y2xvdWQtdWktZGF0YS1saXN0L3RjbG91ZC11aS1kYXRhLWxpc3Qtb3B0aW9uL3RjbG91ZC11aS1kYXRhLWxpc3Qtb3B0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFTL0UsTUFBTSxPQUFPLCtCQUErQjtJQVkxQyxZQUFxQixlQUFnQztRQUFoQyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFWckQsT0FBRSxHQUFXLEVBQUUsQ0FBQztRQUVoQixtQkFBYyxHQUFHLElBQUksY0FBYyxFQUFFLENBQUM7UUFHN0IsYUFBUSxHQUF3QixLQUFLLENBQUM7UUFHckMsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFHN0MsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDMUQsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUN6RSxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQztRQUN6QixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxVQUFVO1FBQ1IsT0FBTyxvQkFBb0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ2xHLENBQUM7SUFFRCxlQUFlLENBQUMsS0FBVTtRQUN4QixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFBRSxPQUFPO1NBQUU7UUFDOUIsSUFBSSxLQUFLLEtBQUssRUFBRSxFQUFFO1lBQUUsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7U0FBRTtRQUV0QyxJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUMsTUFBTSxXQUFXLEdBQVMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsU0FBUyxJQUFJLEVBQUUsQ0FBQztRQUM1RSxJQUFJLENBQUMsZUFBZSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSTtnQkFDRixNQUFNLFdBQVcsR0FBUyxRQUFRLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxTQUFTLENBQUM7Z0JBQ3RFLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7Z0JBQ3ZDLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztnQkFDOUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxtQ0FBbUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7YUFDL0U7WUFBQyxPQUFPLEtBQUssRUFBRSxHQUFHO1FBQ3JCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUFFO0lBQzNFLENBQUM7K0dBbkRVLCtCQUErQjttR0FBL0IsK0JBQStCLHVKQ1g1Qyxna0JBZUE7OzRGREphLCtCQUErQjtrQkFMM0MsU0FBUzsrQkFDRSw0QkFBNEI7c0dBVzdCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUVJLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSVNlbGVjdE9wdGlvbnMgfSBmcm9tICcuLy4uL3RjbG91ZC11aS1kYXRhLWxpc3QnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERhdGFMaXN0U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2RhdGEtbGlzdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3RjbG91ZC11aS1kYXRhLWxpc3Qtb3B0aW9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGNsb3VkLXVpLWRhdGEtbGlzdC1vcHRpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RjbG91ZC11aS1kYXRhLWxpc3Qtb3B0aW9uLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFRDbG91ZFVpRGF0YUxpc3RPcHRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcblxyXG4gIGlkOiBzdHJpbmcgPSAnJzsgIFxyXG4gIGFjdGl2ZWRfdmFsdWU6IGFueTtcclxuICBzZWxlY3Rfb3B0aW9ucyA9IG5ldyBJU2VsZWN0T3B0aW9ucygpO1xyXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uX2FjdGl2ZTogU3Vic2NyaXB0aW9uIHwgdW5kZWZpbmVkO1xyXG5cclxuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiB8IHVuZGVmaW5lZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHZhbHVlOiBhbnkgfCB1bmRlZmluZWQ7XHJcblxyXG4gIEBPdXRwdXQoKSBzZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpOyAgXHJcblxyXG4gIGNvbnN0cnVjdG9yKCBwcml2YXRlIGRhdGFMaXN0U2VydmljZTogRGF0YUxpc3RTZXJ2aWNlICkgeyBcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5hY3RpdmVkX3ZhbHVlID0gdGhpcy5kYXRhTGlzdFNlcnZpY2UuZ2V0QWN0aXZlSXRlbSgpO1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb25fYWN0aXZlID0gdGhpcy5kYXRhTGlzdFNlcnZpY2Uuc3RhdGVBY3RpdmUkLnN1YnNjcmliZSh2ID0+IHsgXHJcbiAgICAgIHRoaXMuYWN0aXZlZF92YWx1ZSA9IHY7IFxyXG4gICAgfSk7XHJcbiAgICB0aGlzLmlkID0gdGhpcy5nZW5lcmF0ZUlEKCk7XHJcbiAgICB0aGlzLnNldFNlbGVjdE9wdGlvbnMoKTtcclxuICB9XHJcblxyXG4gIGdlbmVyYXRlSUQoKTogc3RyaW5ne1xyXG4gICAgcmV0dXJuIGBkYXRhLWxpc3Qtb3B0aW9uLSR7TWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogRGF0ZS5ub3coKSkpfWA7XHJcbiAgfVxyXG5cclxuICBzZXRTZWxlY3RlZEl0ZW0odmFsdWU6IGFueSl7XHJcbiAgICBpZiggdGhpcy5kaXNhYmxlZCApeyByZXR1cm47IH1cclxuICAgIGlmKCB2YWx1ZSA9PT0gJycgKXsgdGhpcy52YWx1ZSA9ICcnOyB9ICAgIFxyXG5cclxuICAgIHRoaXMuZGF0YUxpc3RTZXJ2aWNlLnNldEl0ZW1WYWx1ZSh0aGlzLnZhbHVlKTtcclxuICAgIGNvbnN0IGRlc2NyaXB0aW9uID0gPGFueT4gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGhpcy5pZCk/LmlubmVyVGV4dCB8fCAnJztcclxuICAgIHRoaXMuZGF0YUxpc3RTZXJ2aWNlLnNldEl0ZW1EZXNjcmlwdGlvbihkZXNjcmlwdGlvbik7XHJcbiAgICB0aGlzLnNldFNlbGVjdE9wdGlvbnMoKTsgICAgXHJcbiAgfVxyXG5cclxuICBzZXRTZWxlY3RPcHRpb25zKCl7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdHJ5IHtcclxuICAgICAgICBjb25zdCBkZXNjcmlwdGlvbiA9IDxhbnk+IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuaWQpPy5pbm5lclRleHQ7XHJcbiAgICAgICAgdGhpcy5zZWxlY3Rfb3B0aW9ucy52YWx1ZSA9IHRoaXMudmFsdWU7XHJcbiAgICAgICAgdGhpcy5zZWxlY3Rfb3B0aW9ucy5kZXNjcmlwdGlvbiA9IGRlc2NyaXB0aW9uOyAgXHJcbiAgICAgICAgdGhpcy5kYXRhTGlzdFNlcnZpY2UucmVnaXN0ZXJTZWxlY3Rpb25PcHRpb25zRGVzY3JpcHRpb24odGhpcy5zZWxlY3Rfb3B0aW9ucyk7XHJcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7IH1cclxuICAgIH0pOyAgICBcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgaWYoIHRoaXMuc3Vic2NyaXB0aW9uX2FjdGl2ZSApeyB0aGlzLnN1YnNjcmlwdGlvbl9hY3RpdmUudW5zdWJzY3JpYmUoKTsgfSAgICBcclxuICB9XHJcblxyXG59XHJcbiIsIjxidXR0b24gXHJcbiAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICBbdGl0bGVdPVwic2VsZWN0X29wdGlvbnMuZGVzY3JpcHRpb25cIlxyXG4gIGlkPVwie3tpZH19XCJcclxuICBbYXR0ci5kYXRhLWRlc2NyaXB0aW9uXT1cInNlbGVjdF9vcHRpb25zLmRlc2NyaXB0aW9uXCJcclxuICBbYXR0ci5kYXRhLWFjdGl2ZWQtdmFsdWVdPVwiYWN0aXZlZF92YWx1ZVwiXHJcbiAgY2xhc3M9XCJ0Y2xvdWQtdWktZGF0YS1saXN0LW9wdGlvbiBkcm9wZG93bi1pdGVtXCIgXHJcbiAgW2NsYXNzLm51bGwtdmFsdWVdPVwidmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gJydcIlxyXG4gIFtjbGFzcy5hY3RpdmVdPVwidmFsdWUgPT09IGFjdGl2ZWRfdmFsdWVcIiBcclxuICBbY2xhc3Mub3B0aW9uLWRpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICB0eXBlPVwiYnV0dG9uXCIgXHJcbiAgW3ZhbHVlXT1cInZhbHVlXCJcclxuICAoY2xpY2spPVwic2V0U2VsZWN0ZWRJdGVtKHZhbHVlKVwiID5cclxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbjwvYnV0dG9uPlxyXG4iXX0=
|
|
@@ -277,14 +277,14 @@ export class TCloudUiDataListComponent {
|
|
|
277
277
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TCloudUiDataListComponent, selector: "tcloud-ui-data-list", inputs: { placeholder: "placeholder", disabled: "disabled", loading: "loading", showInput: "showInput", search: "search", listItems: "listItems", open: "open", border: "border", ngModel: "ngModel" }, outputs: { onInputChange: "onInputChange", onChange: "onChange", onOpened: "onOpened", onClosed: "onClosed", ngModelChange: "ngModelChange" }, providers: [
|
|
278
278
|
DataListService,
|
|
279
279
|
CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR
|
|
280
|
-
], ngImport: i0, template: "<div *ngIf=\"formulario\" id=\"area-{{ id }}\" class=\"tcloud-ui-data-list tc-dropdown\" [class.disabled]=\"disabled || loading\">\r\n <div *ngIf=\"loading\" class=\"loading-area\">\r\n <i class=\"fas fa-spinner fa-spin\"></i>\r\n </div>\r\n <!-- [attr.data-bs-toggle]=\"'dropdown'\" -->\r\n <button \r\n #_option\r\n [class.input-hidden]=\"!showInput\"\r\n [class.in-border]=\"border\"\r\n [class.loading-box]=\"loading\"\r\n [disabled]=\"disabled || loading\"\r\n class=\"dropdown-toggle button-select no-margin-bottom\" \r\n type=\"button\" \r\n id=\"{{ id }}\" \r\n \r\n [attr.aria-haspopup]=\"'true'\" \r\n [attr.aria-expanded]=\"'false'\" \r\n (click)=\"toOpen();toInput(_option)\" >\r\n\r\n <i class=\"tc-placeholder\" *ngIf=\"(selected_description === undefined || selected_description === null || selected_description === '' ) && !loading \">{{ placeholder }}</i>\r\n {{ selected_description }}\r\n <span><i class=\"fas fa-angle-down\"></i></span>\r\n </button>\r\n <div class=\"tc-dropdown-menu {{ menu_on_top }}\" id=\"box-{{ id }}\" [attr.aria-labelledby]=\"id\" [class.to-hide]=\"!menu_show\" [style]=\"box_style\">\r\n\r\n <div class=\"line-search\" *ngIf=\"search\">\r\n <table class=\"box-search\">\r\n <tr>\r\n\r\n <td class=\"area-input\">\r\n <input type=\"text\" class=\"tc-form-control\" [(ngModel)]=\"search_text\" (input)=\"toSearch($event)\" placeholder=\"Buscar...\" > \r\n </td>\r\n\r\n <td class=\"area-icon\">\r\n <i *ngIf=\"search_text === ''\" class=\"fas fa-search icon-search\"></i>\r\n <button type=\"button\" *ngIf=\"search_text !== ''\" (click)=\"clearTextSearch()\"><i class=\"fas fa-times\"></i></button>\r\n </td>\r\n \r\n </tr>\r\n </table>\r\n </div>\r\n \r\n <div class=\"area-options\" id=\"{{ id }}-options\" (click)=\"toClose()\">\r\n <ng-content></ng-content> \r\n <ng-container *ngIf=\"listItems && (listItems).length > 0\">\r\n <ng-container *ngFor=\"let item of listItems\">\r\n <tcloud-ui-data-list-option [value]=\"item.value\">{{ item?.description }}</tcloud-ui-data-list-option>\r\n </ng-container>\r\n </ng-container> \r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"formulario\">\r\n <form [formGroup]=\"formulario\" style=\"display: none;\" >\r\n <input id=\"{{ id }}-hidden\" formControlName=\"selected_item\" type=\"hidden\">\r\n </form>\r\n</div>\r\n", styles: [".dropdown-toggle:after{display:none!important}i.tc-placeholder{font-style:italic;color:#999;text-transform:none!important}.in-border{border:1px solid #ccc!important}.tc-dropdown{position:relative}.tc-dropdown .button-select{width:100%;background-color:#fff;border:none;height:35px;text-align:left;padding-left:15px;font-size:14px;color:#666}.tc-dropdown .button-select span{position:absolute;right:6px;top:7px}.tc-dropdown .tc-dropdown-menu{width:100%;border:1px solid #ccc;background-color:#fff;position:absolute;z-index:1}.tc-dropdown .area-options{max-height:200px;overflow-y:scroll;overflow-x:hidden}.tc-dropdown .menu-on-top{position:absolute}.line-search{padding:3px}.line-search .box-search{width:100%;border-collapse:collapse}.line-search .box-search td.area-icon{padding:4px 0 2px 8px;width:35px}.line-search .box-search td.area-icon .icon-search{color:#666}.line-search .box-search td.area-icon button{border:none;background-color:transparent;color:#999;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.line-search .box-search td.area-input{border:none}.line-search .box-search td.area-input input{width:100%}.line-search .box-search input{width:100%;font-size:13px;height:33px;border:1px solid #ccc;padding:10px}.loading-area{line-height:0;position:relative;height:0;bottom:-10px;left:10px}button:disabled{background-color:#eee!important;border:1px solid #ececec!important;cursor:not-allowed}.loading-box{cursor:progress!important}.disabled i{color:#999!important}.to-hide{display:none}.no-margin-bottom{margin-bottom:0!important}.input-hidden{display:none!important}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { 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: "component", type: i4.TCloudUiDataListOptionComponent, selector: "tcloud-ui-data-list-option", inputs: ["value"], outputs: ["selected"] }] }); }
|
|
280
|
+
], ngImport: i0, template: "<div *ngIf=\"formulario\" id=\"area-{{ id }}\" class=\"tcloud-ui-data-list tc-dropdown\" [class.disabled]=\"disabled || loading\">\r\n <div *ngIf=\"loading\" class=\"loading-area\">\r\n <i class=\"fas fa-spinner fa-spin\"></i>\r\n </div>\r\n <!-- [attr.data-bs-toggle]=\"'dropdown'\" -->\r\n <button \r\n #_option\r\n [class.input-hidden]=\"!showInput\"\r\n [class.in-border]=\"border\"\r\n [class.loading-box]=\"loading\"\r\n [disabled]=\"disabled || loading\"\r\n class=\"dropdown-toggle button-select no-margin-bottom\" \r\n type=\"button\" \r\n id=\"{{ id }}\" \r\n \r\n [attr.aria-haspopup]=\"'true'\" \r\n [attr.aria-expanded]=\"'false'\" \r\n (click)=\"toOpen();toInput(_option)\" >\r\n\r\n <i class=\"tc-placeholder\" *ngIf=\"(selected_description === undefined || selected_description === null || selected_description === '' ) && !loading \">{{ placeholder }}</i>\r\n {{ selected_description }}\r\n <span><i class=\"fas fa-angle-down\"></i></span>\r\n </button>\r\n <div class=\"tc-dropdown-menu {{ menu_on_top }}\" id=\"box-{{ id }}\" [attr.aria-labelledby]=\"id\" [class.to-hide]=\"!menu_show\" [style]=\"box_style\">\r\n\r\n <div class=\"line-search\" *ngIf=\"search\">\r\n <table class=\"box-search\">\r\n <tr>\r\n\r\n <td class=\"area-input\">\r\n <input type=\"text\" class=\"tc-form-control\" [(ngModel)]=\"search_text\" (input)=\"toSearch($event)\" placeholder=\"Buscar...\" > \r\n </td>\r\n\r\n <td class=\"area-icon\">\r\n <i *ngIf=\"search_text === ''\" class=\"fas fa-search icon-search\"></i>\r\n <button type=\"button\" *ngIf=\"search_text !== ''\" (click)=\"clearTextSearch()\"><i class=\"fas fa-times\"></i></button>\r\n </td>\r\n \r\n </tr>\r\n </table>\r\n </div>\r\n \r\n <div class=\"area-options\" id=\"{{ id }}-options\" (click)=\"toClose()\">\r\n <ng-content></ng-content> \r\n <ng-container *ngIf=\"listItems && (listItems).length > 0\">\r\n <ng-container *ngFor=\"let item of listItems\">\r\n <tcloud-ui-data-list-option [value]=\"item.value\" [disabled]=\"item?.disabled\" >{{ item?.description }}</tcloud-ui-data-list-option>\r\n </ng-container>\r\n </ng-container> \r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"formulario\">\r\n <form [formGroup]=\"formulario\" style=\"display: none;\" >\r\n <input id=\"{{ id }}-hidden\" formControlName=\"selected_item\" type=\"hidden\">\r\n </form>\r\n</div>\r\n", styles: [".dropdown-toggle:after{display:none!important}i.tc-placeholder{font-style:italic;color:#999;text-transform:none!important}.in-border{border:1px solid #ccc!important}.tc-dropdown{position:relative}.tc-dropdown .button-select{width:100%;background-color:#fff;border:none;height:35px;text-align:left;padding-left:15px;font-size:14px;color:#666}.tc-dropdown .button-select span{position:absolute;right:6px;top:7px}.tc-dropdown .tc-dropdown-menu{width:100%;border:1px solid #ccc;background-color:#fff;position:absolute;z-index:1}.tc-dropdown .area-options{max-height:200px;overflow-y:scroll;overflow-x:hidden}.tc-dropdown .menu-on-top{position:absolute}.line-search{padding:3px}.line-search .box-search{width:100%;border-collapse:collapse}.line-search .box-search td.area-icon{padding:4px 0 2px 8px;width:35px}.line-search .box-search td.area-icon .icon-search{color:#666}.line-search .box-search td.area-icon button{border:none;background-color:transparent;color:#999;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.line-search .box-search td.area-input{border:none}.line-search .box-search td.area-input input{width:100%}.line-search .box-search input{width:100%;font-size:13px;height:33px;border:1px solid #ccc;padding:10px}.loading-area{line-height:0;position:relative;height:0;bottom:-10px;left:10px}button:disabled{background-color:#eee!important;border:1px solid #ececec!important;cursor:not-allowed}.loading-box{cursor:progress!important}.disabled i{color:#999!important}.to-hide{display:none}.no-margin-bottom{margin-bottom:0!important}.input-hidden{display:none!important}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { 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: "component", type: i4.TCloudUiDataListOptionComponent, selector: "tcloud-ui-data-list-option", inputs: ["disabled", "value"], outputs: ["selected"] }] }); }
|
|
281
281
|
}
|
|
282
282
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TCloudUiDataListComponent, decorators: [{
|
|
283
283
|
type: Component,
|
|
284
284
|
args: [{ selector: 'tcloud-ui-data-list', providers: [
|
|
285
285
|
DataListService,
|
|
286
286
|
CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR
|
|
287
|
-
], template: "<div *ngIf=\"formulario\" id=\"area-{{ id }}\" class=\"tcloud-ui-data-list tc-dropdown\" [class.disabled]=\"disabled || loading\">\r\n <div *ngIf=\"loading\" class=\"loading-area\">\r\n <i class=\"fas fa-spinner fa-spin\"></i>\r\n </div>\r\n <!-- [attr.data-bs-toggle]=\"'dropdown'\" -->\r\n <button \r\n #_option\r\n [class.input-hidden]=\"!showInput\"\r\n [class.in-border]=\"border\"\r\n [class.loading-box]=\"loading\"\r\n [disabled]=\"disabled || loading\"\r\n class=\"dropdown-toggle button-select no-margin-bottom\" \r\n type=\"button\" \r\n id=\"{{ id }}\" \r\n \r\n [attr.aria-haspopup]=\"'true'\" \r\n [attr.aria-expanded]=\"'false'\" \r\n (click)=\"toOpen();toInput(_option)\" >\r\n\r\n <i class=\"tc-placeholder\" *ngIf=\"(selected_description === undefined || selected_description === null || selected_description === '' ) && !loading \">{{ placeholder }}</i>\r\n {{ selected_description }}\r\n <span><i class=\"fas fa-angle-down\"></i></span>\r\n </button>\r\n <div class=\"tc-dropdown-menu {{ menu_on_top }}\" id=\"box-{{ id }}\" [attr.aria-labelledby]=\"id\" [class.to-hide]=\"!menu_show\" [style]=\"box_style\">\r\n\r\n <div class=\"line-search\" *ngIf=\"search\">\r\n <table class=\"box-search\">\r\n <tr>\r\n\r\n <td class=\"area-input\">\r\n <input type=\"text\" class=\"tc-form-control\" [(ngModel)]=\"search_text\" (input)=\"toSearch($event)\" placeholder=\"Buscar...\" > \r\n </td>\r\n\r\n <td class=\"area-icon\">\r\n <i *ngIf=\"search_text === ''\" class=\"fas fa-search icon-search\"></i>\r\n <button type=\"button\" *ngIf=\"search_text !== ''\" (click)=\"clearTextSearch()\"><i class=\"fas fa-times\"></i></button>\r\n </td>\r\n \r\n </tr>\r\n </table>\r\n </div>\r\n \r\n <div class=\"area-options\" id=\"{{ id }}-options\" (click)=\"toClose()\">\r\n <ng-content></ng-content> \r\n <ng-container *ngIf=\"listItems && (listItems).length > 0\">\r\n <ng-container *ngFor=\"let item of listItems\">\r\n <tcloud-ui-data-list-option [value]=\"item.value\">{{ item?.description }}</tcloud-ui-data-list-option>\r\n </ng-container>\r\n </ng-container> \r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"formulario\">\r\n <form [formGroup]=\"formulario\" style=\"display: none;\" >\r\n <input id=\"{{ id }}-hidden\" formControlName=\"selected_item\" type=\"hidden\">\r\n </form>\r\n</div>\r\n", styles: [".dropdown-toggle:after{display:none!important}i.tc-placeholder{font-style:italic;color:#999;text-transform:none!important}.in-border{border:1px solid #ccc!important}.tc-dropdown{position:relative}.tc-dropdown .button-select{width:100%;background-color:#fff;border:none;height:35px;text-align:left;padding-left:15px;font-size:14px;color:#666}.tc-dropdown .button-select span{position:absolute;right:6px;top:7px}.tc-dropdown .tc-dropdown-menu{width:100%;border:1px solid #ccc;background-color:#fff;position:absolute;z-index:1}.tc-dropdown .area-options{max-height:200px;overflow-y:scroll;overflow-x:hidden}.tc-dropdown .menu-on-top{position:absolute}.line-search{padding:3px}.line-search .box-search{width:100%;border-collapse:collapse}.line-search .box-search td.area-icon{padding:4px 0 2px 8px;width:35px}.line-search .box-search td.area-icon .icon-search{color:#666}.line-search .box-search td.area-icon button{border:none;background-color:transparent;color:#999;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.line-search .box-search td.area-input{border:none}.line-search .box-search td.area-input input{width:100%}.line-search .box-search input{width:100%;font-size:13px;height:33px;border:1px solid #ccc;padding:10px}.loading-area{line-height:0;position:relative;height:0;bottom:-10px;left:10px}button:disabled{background-color:#eee!important;border:1px solid #ececec!important;cursor:not-allowed}.loading-box{cursor:progress!important}.disabled i{color:#999!important}.to-hide{display:none}.no-margin-bottom{margin-bottom:0!important}.input-hidden{display:none!important}\n"] }]
|
|
287
|
+
], template: "<div *ngIf=\"formulario\" id=\"area-{{ id }}\" class=\"tcloud-ui-data-list tc-dropdown\" [class.disabled]=\"disabled || loading\">\r\n <div *ngIf=\"loading\" class=\"loading-area\">\r\n <i class=\"fas fa-spinner fa-spin\"></i>\r\n </div>\r\n <!-- [attr.data-bs-toggle]=\"'dropdown'\" -->\r\n <button \r\n #_option\r\n [class.input-hidden]=\"!showInput\"\r\n [class.in-border]=\"border\"\r\n [class.loading-box]=\"loading\"\r\n [disabled]=\"disabled || loading\"\r\n class=\"dropdown-toggle button-select no-margin-bottom\" \r\n type=\"button\" \r\n id=\"{{ id }}\" \r\n \r\n [attr.aria-haspopup]=\"'true'\" \r\n [attr.aria-expanded]=\"'false'\" \r\n (click)=\"toOpen();toInput(_option)\" >\r\n\r\n <i class=\"tc-placeholder\" *ngIf=\"(selected_description === undefined || selected_description === null || selected_description === '' ) && !loading \">{{ placeholder }}</i>\r\n {{ selected_description }}\r\n <span><i class=\"fas fa-angle-down\"></i></span>\r\n </button>\r\n <div class=\"tc-dropdown-menu {{ menu_on_top }}\" id=\"box-{{ id }}\" [attr.aria-labelledby]=\"id\" [class.to-hide]=\"!menu_show\" [style]=\"box_style\">\r\n\r\n <div class=\"line-search\" *ngIf=\"search\">\r\n <table class=\"box-search\">\r\n <tr>\r\n\r\n <td class=\"area-input\">\r\n <input type=\"text\" class=\"tc-form-control\" [(ngModel)]=\"search_text\" (input)=\"toSearch($event)\" placeholder=\"Buscar...\" > \r\n </td>\r\n\r\n <td class=\"area-icon\">\r\n <i *ngIf=\"search_text === ''\" class=\"fas fa-search icon-search\"></i>\r\n <button type=\"button\" *ngIf=\"search_text !== ''\" (click)=\"clearTextSearch()\"><i class=\"fas fa-times\"></i></button>\r\n </td>\r\n \r\n </tr>\r\n </table>\r\n </div>\r\n \r\n <div class=\"area-options\" id=\"{{ id }}-options\" (click)=\"toClose()\">\r\n <ng-content></ng-content> \r\n <ng-container *ngIf=\"listItems && (listItems).length > 0\">\r\n <ng-container *ngFor=\"let item of listItems\">\r\n <tcloud-ui-data-list-option [value]=\"item.value\" [disabled]=\"item?.disabled\" >{{ item?.description }}</tcloud-ui-data-list-option>\r\n </ng-container>\r\n </ng-container> \r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"formulario\">\r\n <form [formGroup]=\"formulario\" style=\"display: none;\" >\r\n <input id=\"{{ id }}-hidden\" formControlName=\"selected_item\" type=\"hidden\">\r\n </form>\r\n</div>\r\n", styles: [".dropdown-toggle:after{display:none!important}i.tc-placeholder{font-style:italic;color:#999;text-transform:none!important}.in-border{border:1px solid #ccc!important}.tc-dropdown{position:relative}.tc-dropdown .button-select{width:100%;background-color:#fff;border:none;height:35px;text-align:left;padding-left:15px;font-size:14px;color:#666}.tc-dropdown .button-select span{position:absolute;right:6px;top:7px}.tc-dropdown .tc-dropdown-menu{width:100%;border:1px solid #ccc;background-color:#fff;position:absolute;z-index:1}.tc-dropdown .area-options{max-height:200px;overflow-y:scroll;overflow-x:hidden}.tc-dropdown .menu-on-top{position:absolute}.line-search{padding:3px}.line-search .box-search{width:100%;border-collapse:collapse}.line-search .box-search td.area-icon{padding:4px 0 2px 8px;width:35px}.line-search .box-search td.area-icon .icon-search{color:#666}.line-search .box-search td.area-icon button{border:none;background-color:transparent;color:#999;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.line-search .box-search td.area-input{border:none}.line-search .box-search td.area-input input{width:100%}.line-search .box-search input{width:100%;font-size:13px;height:33px;border:1px solid #ccc;padding:10px}.loading-area{line-height:0;position:relative;height:0;bottom:-10px;left:10px}button:disabled{background-color:#eee!important;border:1px solid #ececec!important;cursor:not-allowed}.loading-box{cursor:progress!important}.disabled i{color:#999!important}.to-hide{display:none}.no-margin-bottom{margin-bottom:0!important}.input-hidden{display:none!important}\n"] }]
|
|
288
288
|
}], ctorParameters: function () { return [{ type: i1.DataListService }, { type: i2.FormBuilder }]; }, propDecorators: { placeholder: [{
|
|
289
289
|
type: Input
|
|
290
290
|
}], disabled: [{
|
|
@@ -314,4 +314,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
314
314
|
}], ngModelChange: [{
|
|
315
315
|
type: Output
|
|
316
316
|
}] } });
|
|
317
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGNsb3VkLXVpLWRhdGEtbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Y2xvdWQtdWkvc3JjL2xpYi9fbW9kdWxlcy90Y2xvdWQtdWktZGF0YS1saXN0L3RjbG91ZC11aS1kYXRhLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGNsb3VkLXVpL3NyYy9saWIvX21vZHVsZXMvdGNsb3VkLXVpLWRhdGEtbGlzdC90Y2xvdWQtdWktZGF0YS1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBVSxNQUFNLEVBQUUsWUFBWSxFQUFhLEtBQUssRUFBK0IsTUFBTSxlQUFlLENBQUM7QUFDbkksT0FBTyxFQUFFLGlCQUFpQixFQUFrQyxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBSWhHLE1BQU0sbUNBQW1DLEdBQVE7SUFDL0MsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHlCQUF5QixDQUFDO0lBQ3hELEtBQUssRUFBRSxJQUFJO0NBQ1osQ0FBQztBQUVGLE1BQU0sSUFBSSxHQUFHLEdBQUcsRUFBRTtBQUNsQixDQUFDLENBQUM7QUFZRixNQUFNLE9BQU8seUJBQXlCO0lBV3BDLElBQWEsUUFBUSxDQUFDLENBQUM7UUFDckIsSUFBSSxPQUFPLENBQUMsS0FBSyxTQUFTLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbEQsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7WUFDbkIsaUNBQWlDO1lBQ2pDLHlCQUF5QjtZQUN6QixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDakI7SUFDSCxDQUFDO0lBQ0QsSUFBSSxRQUFRLEtBQWEsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUdqRCxJQUFhLE9BQU8sQ0FBQyxDQUFVO1FBQzdCLElBQUksT0FBTyxDQUFDLEtBQUssU0FBUyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pELElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1lBQ2xCLGlDQUFpQztZQUNqQywwQkFBMEI7WUFDMUIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQ2pCO0lBQ0gsQ0FBQztJQUNELElBQUksT0FBTyxLQUFhLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFPL0MsSUFBYSxTQUFTLENBQUMsQ0FBbUI7UUFDeEMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFDO1NBQ3JCO0lBQ0gsQ0FBQztJQUNELElBQUksU0FBUyxLQUFzQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBRzVELElBQWEsSUFBSSxDQUFDLENBQVU7UUFDMUIsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNwQixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztZQUNmLElBQUksQ0FBQyxFQUFFO2dCQUNMLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO2dCQUN2QixVQUFVLENBQUMsR0FBRSxFQUFFLEdBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDcEM7U0FDRjtJQUNILENBQUM7SUFDRCxJQUFJLElBQUksS0FBYSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBWXpDLElBQWEsT0FBTyxDQUFDLENBQU07UUFDekIsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUM7UUFDdkIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0IsQ0FBQztJQWtCRCxZQUNVLGVBQWdDLEVBQ2hDLFdBQXdCO1FBRHhCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQXZGbEMsbUJBQWMsR0FBVyxDQUFDLENBQUM7UUFDM0Isb0JBQWUsR0FBVyxDQUFDLENBQUM7UUFDNUIsZUFBVSxHQUFXLENBQUMsQ0FBQztRQUN2QixjQUFTLEdBQVcsRUFBRSxDQUFDO1FBQ3ZCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBRWhCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBRTFCLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFXM0IsYUFBUSxHQUFZLEtBQUssQ0FBQztRQVl6QixjQUFTLEdBQVksSUFBSSxDQUFDO1FBQzFCLFdBQU0sR0FBWSxJQUFJLENBQUM7UUFFeEIsZUFBVSxHQUFxQixFQUFFLENBQUM7UUFRbEMsVUFBSyxHQUFZLEtBQUssQ0FBQztRQWF0QixXQUFNLEdBQVksSUFBSSxDQUFDO1FBRXRCLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQWtCLENBQUM7UUFDbkQsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFrQixDQUFDO1FBRTlDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ25DLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBT25DLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUVsRCwwQkFBcUIsR0FBRyxJQUFJLEtBQUssRUFBa0IsQ0FBQztRQVNwRCxjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBQ3pCLE9BQUUsR0FBVyxFQUFFLENBQUM7UUEwTWhCLDBEQUEwRDtRQUN4RCwrQkFBK0I7UUFDdkIsc0JBQWlCLEdBQWUsSUFBSSxDQUFDO1FBQ3JDLHFCQUFnQixHQUFxQixJQUFJLENBQUM7UUFwTWxELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDdkUsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUM7WUFDdkIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDekIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzlDLENBQUMsQ0FBQyxDQUFBO1FBRUYsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ25GLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxDQUFDLENBQUM7UUFDaEMsQ0FBQyxDQUFDLENBQUE7UUFHRixJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBSyxFQUFFLEVBQUU7WUFDakYsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRTtnQkFDaEIsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDdEM7UUFDSCxDQUFDLENBQUMsQ0FBQTtJQUVKLENBQUM7SUFFRCxRQUFRO1FBSU4sSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFFNUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztZQUN2QyxlQUFlLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBRSxFQUFDLEVBQUUsQ0FBQztTQUN4QyxDQUFDLENBQUE7UUFJRixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFHRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLElBQUksR0FBRyxTQUFTLENBQUM7UUFDdEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztJQUM5QyxDQUFDO0lBRUQsd0JBQXdCO1FBQ3RCLElBQUksSUFBSSxDQUFDLHFCQUFxQixJQUFJLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN6RSxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7Z0JBQzVELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDM0MsSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxhQUFhLEVBQUU7b0JBQ3JDLElBQUksSUFBSSxDQUFDLG9CQUFvQixLQUFLLElBQUksQ0FBQyxXQUFXLEVBQUU7d0JBQ2xELElBQUksSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsV0FBVyxLQUFLLElBQUksQ0FBQyxvQkFBb0IsRUFBRTs0QkFDdEUsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQ0FDZCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztnQ0FDN0MsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDOzRCQUN6RCxDQUFDLENBQUMsQ0FBQzt5QkFDSjtxQkFDRjtvQkFDRCxNQUFNO2lCQUNQO2FBQ0Y7U0FDRjtJQUNILENBQUM7SUFFRCxVQUFVO1FBQ1IsT0FBTyxhQUFhLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUMzRixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQUU7UUFDdkUsSUFBSSxJQUFJLENBQUMsd0JBQXdCLEVBQUU7WUFBRSxJQUFJLENBQUMsd0JBQXdCLENBQUMsV0FBVyxFQUFFLENBQUM7U0FBRTtRQUNuRixJQUFJLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtZQUFFLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUFFO0lBQzdFLENBQUM7SUFFRCxRQUFRLENBQUMsQ0FBTTtRQUNiLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUVwRSxJQUFJLE1BQU0sR0FBRyxDQUFFLENBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxDQUFFLENBQUMsSUFBSSxFQUFFLENBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuRyxJQUFJLEVBQUUsR0FBUyxRQUFRLENBQUMsY0FBYyxDQUFDLEdBQUcsSUFBSSxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDN0QsSUFBSSxFQUFFLEVBQUU7WUFDTixJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDM0MsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7Z0JBQ2hDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDaEIsTUFBTSxRQUFRLEdBQUcsQ0FBRSxDQUFFLENBQUUsQ0FBQyxDQUFDLFdBQVcsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFFLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxFQUFFLENBQUMsQ0FBRSxDQUFDLElBQUksRUFBRSxDQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ2hJLElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRTtvQkFDL0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO2lCQUM1QjtxQkFBTTtvQkFDSCxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7aUJBQ2hDO2FBQ0o7U0FDRjtJQUNILENBQUM7SUFFRCxpQkFBaUI7UUFDZixJQUFJLElBQUksQ0FBQyxxQkFBcUIsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDekUsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO2dCQUM1RCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQzNDLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsYUFBYSxFQUFFO29CQUNyQyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztvQkFDN0MsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUNoQixPQUFPO2lCQUNSO2FBQ0Y7U0FDRjtRQUVELElBQUksSUFBSSxDQUFDLGFBQWEsS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLGFBQWEsS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLGFBQWEsS0FBSyxFQUFFLEVBQUU7WUFDaEcsSUFBSSxDQUFDLG9CQUFvQixHQUFHLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDakI7SUFFSCxDQUFDO0lBR0QsT0FBTyxDQUFDLENBQU07UUFDWixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRUQsUUFBUTtRQUNOLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLElBQUksQ0FBQyxhQUFhLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxhQUFhLEtBQUssSUFBSSxFQUFFO2dCQUNuRSxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQzthQUN6QjtZQUNELElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDbEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBRXZELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1lBRW5ELElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDbkIsSUFBSSxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUMsZUFBZSxDQUFDLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztnQkFDcEUscUVBQXFFO2dCQUNyRSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7YUFDcEQ7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFHRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ2pDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDL0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQseUJBQXlCLENBQUMsSUFBYTtRQUNyQyxJQUFJLElBQUksRUFBRTtZQUNSLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDO1lBQ3RCLE1BQU0sRUFBRSxHQUFHLEdBQUcsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ3hCLE1BQU0sR0FBRyxHQUFHLE9BQU8sSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQzdCLElBQUksSUFBSSxDQUFDLGVBQWUsS0FBSyxDQUFDLEVBQUU7Z0JBQzlCLElBQUksQ0FBQyxlQUFlLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQzthQUMxQztZQUNELE1BQU0sSUFBSSxHQUFJLFFBQVEsQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDLEVBQUUscUJBQXFCLEVBQUUsQ0FBQztZQUNuRSxNQUFNLFlBQVksR0FBRyxJQUFJLEVBQUUsTUFBTSxJQUFJLENBQUMsQ0FBQztZQUN2QyxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxVQUFVLEdBQUksUUFBUSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRSxZQUFZLElBQUksQ0FBQyxDQUFDO2dCQUNuRSxJQUFJLENBQUUsSUFBSSxDQUFDLGVBQWUsR0FBRyxZQUFZLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFO29CQUM1RCxJQUFJLENBQUMsV0FBVyxHQUFHLGFBQWEsQ0FBQztvQkFDakMsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBRSxlQUFlLElBQUksQ0FBQyxVQUFVLEtBQUssQ0FBQztpQkFDbEY7WUFDSCxDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFHRCxRQUFRO1FBQ04sTUFBTSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUU7WUFDckMsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDO1lBQ3hDLElBQUksQ0FBQyxlQUFlLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQztZQUMxQyxJQUFJLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2pELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE9BQU87UUFDTCxNQUFNLEdBQUcsR0FBRyxRQUFRLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUM5QixNQUFNLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFDLENBQUMsQ0FBTSxFQUFFLEVBQUU7WUFDekMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO2dCQUNsQixJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRTtvQkFDdkQsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO2lCQUNoQjthQUNGO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBU0MsY0FBYztJQUNkLElBQUksS0FBSztRQUNMLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM5QixDQUFDO0lBQUEsQ0FBQztJQUVGLG1EQUFtRDtJQUNuRCxJQUFJLEtBQUssQ0FBQyxDQUFNO1FBQ1osSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUMxQixJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQztZQUN2QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDNUI7SUFDTCxDQUFDO0lBRUQscUJBQXFCO0lBQ3JCLE1BQU07UUFDRixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQscUNBQXFDO0lBQ3JDLFVBQVUsQ0FBQyxLQUFVO1FBQ2pCLElBQUksS0FBSyxLQUFLLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDOUIsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7U0FDOUI7SUFDTCxDQUFDO0lBRUQscUNBQXFDO0lBQ3JDLGdCQUFnQixDQUFDLEVBQU87UUFDcEIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRUQscUNBQXFDO0lBQ3JDLGlCQUFpQixDQUFDLEVBQU87UUFDckIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztJQUNoQyxDQUFDOytHQW5VUSx5QkFBeUI7bUdBQXpCLHlCQUF5QixxWUFMekI7WUFDVCxlQUFlO1lBQ2YsbUNBQW1DO1NBQ3BDLDBCQ3ZCSCxtL0VBMERBOzs0RkRqQ2EseUJBQXlCO2tCQVRyQyxTQUFTOytCQUNFLHFCQUFxQixhQUdwQjt3QkFDVCxlQUFlO3dCQUNmLG1DQUFtQztxQkFDcEM7Z0lBVVEsV0FBVztzQkFBbkIsS0FBSztnQkFHTyxRQUFRO3NCQUFwQixLQUFLO2dCQVdPLE9BQU87c0JBQW5CLEtBQUs7Z0JBV0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBR08sU0FBUztzQkFBckIsS0FBSztnQkFRTyxJQUFJO3NCQUFoQixLQUFLO2dCQVlHLE1BQU07c0JBQWQsS0FBSztnQkFFSSxhQUFhO3NCQUF0QixNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU07Z0JBRUcsUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNO2dCQUdNLE9BQU87c0JBQW5CLEtBQUs7Z0JBSUksYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGFMaXN0U2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZGF0YS1saXN0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIGZvcndhcmRSZWYsIE9uSW5pdCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIFZpZXdDaGlsZCwgSW5wdXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3Q2hlY2tlZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiwgTmdGb3JtLCBGb3JtR3JvdXAsIEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IElTZWxlY3RPcHRpb25zIH0gZnJvbSAnLi90Y2xvdWQtdWktZGF0YS1saXN0JztcclxuXHJcbmNvbnN0IENVU1RPTV9JTlBVVF9DT05UUk9MX1ZBTFVFX0FDQ0VTU09SOiBhbnkgPSB7XHJcbiAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVENsb3VkVWlEYXRhTGlzdENvbXBvbmVudCksXHJcbiAgbXVsdGk6IHRydWVcclxufTtcclxuXHJcbmNvbnN0IG5vb3AgPSAoKSA9PiB7XHJcbn07XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd0Y2xvdWQtdWktZGF0YS1saXN0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGNsb3VkLXVpLWRhdGEtbGlzdC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdGNsb3VkLXVpLWRhdGEtbGlzdC5jb21wb25lbnQuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgRGF0YUxpc3RTZXJ2aWNlLCBcclxuICAgIENVU1RPTV9JTlBVVF9DT05UUk9MX1ZBTFVFX0FDQ0VTU09SXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRDbG91ZFVpRGF0YUxpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3Q2hlY2tlZCB7XHJcblxyXG4gIHZpZXdwb3J0X3dpZHRoOiBudW1iZXIgPSAwO1xyXG4gIHZpZXdwb3J0X2hlaWdodDogbnVtYmVyID0gMDtcclxuICBib3hfaGVpZ2h0OiBudW1iZXIgPSAwO1xyXG4gIGJveF9zdHlsZTogc3RyaW5nID0gJyc7XHJcbiAgbWVudV9vbl90b3A6IHN0cmluZyA9ICcnO1xyXG5cclxuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nID0gJyc7XHJcblxyXG4gIHByaXZhdGUgX2Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2V0IGRpc2FibGVkKHYpe1xyXG4gICAgaWYoIHR5cGVvZiB2ID09PSAnYm9vbGVhbicgJiYgdiAhPT0gdGhpcy5fZGlzYWJsZWQgKXtcclxuICAgICAgdGhpcy5fZGlzYWJsZWQgPSB2OyAgICBcclxuICAgICAgLy90aGlzLnNlbGVjdGVkX2Rlc2NyaXB0aW9uID0gJyc7XHJcbiAgICAgIC8vdGhpcy5zZWxlY3RlZF9pdGVtID0nJztcclxuICAgICAgdGhpcy50b0NoYW5nZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuICBnZXQgZGlzYWJsZWQoKTpib29sZWFuIHsgcmV0dXJuIHRoaXMuX2Rpc2FibGVkOyB9XHJcblxyXG4gIHByaXZhdGUgX2xvYWRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBzZXQgbG9hZGluZyh2OiBib29sZWFuKXtcclxuICAgIGlmKCB0eXBlb2YgdiA9PT0gJ2Jvb2xlYW4nICYmIHYgIT09IHRoaXMuX2xvYWRpbmcgKXtcclxuICAgICAgdGhpcy5fbG9hZGluZyA9IHY7ICAgIFxyXG4gICAgICAvL3RoaXMuc2VsZWN0ZWRfZGVzY3JpcHRpb24gPSAnJztcclxuICAgICAgLy90aGlzLnNlbGVjdGVkX2l0ZW0gPSAnJztcclxuICAgICAgdGhpcy50b0NoYW5nZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuICBnZXQgbG9hZGluZygpOmJvb2xlYW4geyByZXR1cm4gdGhpcy5fbG9hZGluZzsgfVxyXG5cclxuXHJcbiAgQElucHV0KCkgc2hvd0lucHV0OiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBzZWFyY2g6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIFxyXG4gIHByaXZhdGUgX2xpc3RJdGVtczogSVNlbGVjdE9wdGlvbnNbXSA9IFtdO1xyXG4gIEBJbnB1dCgpIHNldCBsaXN0SXRlbXModjogSVNlbGVjdE9wdGlvbnNbXSl7XHJcbiAgICBpZiggdiAmJiAodikubGVuZ3RoID4gMCApe1xyXG4gICAgICB0aGlzLl9saXN0SXRlbXMgPSB2O1xyXG4gICAgfVxyXG4gIH1cclxuICBnZXQgbGlzdEl0ZW1zKCk6SVNlbGVjdE9wdGlvbnNbXSB7IHJldHVybiB0aGlzLl9saXN0SXRlbXM7IH1cclxuXHJcbiAgcHJpdmF0ZSBfb3BlbjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNldCBvcGVuKHY6IGJvb2xlYW4pe1xyXG4gICAgaWYoIHYgIT09IHRoaXMuX29wZW4gKXtcclxuICAgICAgdGhpcy5fb3BlbiA9IHY7XHJcbiAgICAgIGlmKCB2ICl7XHJcbiAgICAgICAgdGhpcy5tZW51X3Nob3cgPSBmYWxzZTtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpPT57IHRoaXMudG9PcGVuKCk7IH0pOyAgICAgICAgXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgZ2V0IG9wZW4oKTpib29sZWFuIHsgcmV0dXJuIHRoaXMuX29wZW47IH1cclxuXHJcbiAgXHJcbiAgQElucHV0KCkgYm9yZGVyOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgQE91dHB1dCgpIG9uSW5wdXRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPElTZWxlY3RPcHRpb25zPigpO1xyXG4gIEBPdXRwdXQoKSBvbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8SVNlbGVjdE9wdGlvbnM+KCk7XHJcblxyXG4gIEBPdXRwdXQoKSBvbk9wZW5lZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBvbkNsb3NlZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBwcml2YXRlIF9uZ01vZGVsOiBhbnkgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgc2V0IG5nTW9kZWwodjogYW55KXtcclxuICAgIHRoaXMuc2VsZWN0ZWRfaXRlbSA9IHY7ICAgIFxyXG4gICAgdGhpcy5zZWxlY3REZXNjcmlwdGlvbigpOyAgIFxyXG4gIH1cclxuICBAT3V0cHV0KCkgbmdNb2RlbENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBsaXN0X3NlbGVjdGVkX29wdGlvbnMgPSBuZXcgQXJyYXk8SVNlbGVjdE9wdGlvbnM+KCk7XHJcblxyXG4gIHNlbGVjdGVkX2l0ZW06IGFueSB8IHVuZGVmaW5lZDtcclxuICBzZWxlY3RlZF9kZXNjcmlwdGlvbjogYW55IHwgdW5kZWZpbmVkO1xyXG5cclxuICBwcml2YXRlIHN1YnNjcmlwdGlvbl92YWx1ZTogU3Vic2NyaXB0aW9uIHwgdW5kZWZpbmVkO1xyXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uX2Rlc2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XHJcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25fb3B0aW9uczogU3Vic2NyaXB0aW9uIHwgdW5kZWZpbmVkO1xyXG5cclxuICBtZW51X3Nob3c6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBzZWFyY2hfdGV4dDogc3RyaW5nID0gJyc7XHJcbiAgaWQ6IHN0cmluZyA9ICcnO1xyXG5cclxuICBmb3JtdWxhcmlvOiBGb3JtR3JvdXAgfCB1bmRlZmluZWQ7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBkYXRhTGlzdFNlcnZpY2U6IERhdGFMaXN0U2VydmljZSxcclxuICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyXHJcbiAgKXtcclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbl92YWx1ZSA9IHRoaXMuZGF0YUxpc3RTZXJ2aWNlLnN0YXRlVmFsdWUkLnN1YnNjcmliZSh2ID0+IHtcclxuICAgICAgdGhpcy5zZWxlY3RlZF9pdGVtID0gdjsgICAgICBcclxuICAgICAgdGhpcy5zZWxlY3REZXNjcmlwdGlvbigpO1xyXG4gICAgICB0aGlzLm5nTW9kZWxDaGFuZ2UuZW1pdCh0aGlzLnNlbGVjdGVkX2l0ZW0pO1xyXG4gICAgfSlcclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbl9kZXNjcmlwdGlvbiA9IHRoaXMuZGF0YUxpc3RTZXJ2aWNlLnN0YXRlRGVzY3JpcHRpb24kLnN1YnNjcmliZSh2ID0+IHtcclxuICAgICAgdGhpcy5zZWxlY3RlZF9kZXNjcmlwdGlvbiA9IHY7ICAgICAgXHJcbiAgICB9KVxyXG5cclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbl9vcHRpb25zID0gdGhpcy5kYXRhTGlzdFNlcnZpY2Uuc3RhdGVPcHRpb25zJC5zdWJzY3JpYmUoKHY6YW55KSA9PiB7XHJcbiAgICAgIGlmKCB2ICYmIHYudmFsdWUgKXtcclxuICAgICAgICAodGhpcy5saXN0X3NlbGVjdGVkX29wdGlvbnMpLnB1c2godik7XHJcbiAgICAgIH1cclxuICAgIH0pXHJcblxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKXtcclxuXHJcbiAgICBcclxuXHJcbiAgICB0aGlzLmlkID0gdGhpcy5nZW5lcmF0ZUlEKCk7XHJcblxyXG4gICAgdGhpcy5mb3JtdWxhcmlvID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XHJcbiAgICAgIFwic2VsZWN0ZWRfaXRlbVwiOiBuZXcgRm9ybUNvbnRyb2woJycsW10pLFxyXG4gICAgfSlcclxuXHJcbiAgICBcclxuXHJcbiAgICB0aGlzLnRvUmVzaXplKCk7XHJcbiAgICB0aGlzLnRvQ2xpY2soKTtcclxuICB9XHJcblxyXG4gIHRfZmM6IGFueSB8IHVuZGVmaW5lZDtcclxuICBuZ0FmdGVyVmlld0NoZWNrZWQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRfZmMgPSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLnRfZmMgPSB0aGlzLmdldF9zZWxlY3RlZF9kZXNjcmlwdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgZ2V0X3NlbGVjdGVkX2Rlc2NyaXB0aW9uKCk6IHZvaWR7XHJcbiAgICBpZiggdGhpcy5saXN0X3NlbGVjdGVkX29wdGlvbnMgJiYgKHRoaXMubGlzdF9zZWxlY3RlZF9vcHRpb25zKS5sZW5ndGggPiAwICl7XHJcbiAgICAgIGZvciggbGV0IGkgPSAwOyBpIDwgKHRoaXMubGlzdF9zZWxlY3RlZF9vcHRpb25zKS5sZW5ndGg7IGkrKyApe1xyXG4gICAgICAgIGNvbnN0IGl0ZW0gPSB0aGlzLmxpc3Rfc2VsZWN0ZWRfb3B0aW9uc1tpXTtcclxuICAgICAgICBpZiggaXRlbS52YWx1ZSA9PT0gdGhpcy5zZWxlY3RlZF9pdGVtICl7ICAgICAgICAgXHJcbiAgICAgICAgICBpZiggdGhpcy5zZWxlY3RlZF9kZXNjcmlwdGlvbiAhPT0gaXRlbS5kZXNjcmlwdGlvbiApe1xyXG4gICAgICAgICAgICBpZiggaXRlbS5kZXNjcmlwdGlvbiAmJiBpdGVtLmRlc2NyaXB0aW9uICE9PSB0aGlzLnNlbGVjdGVkX2Rlc2NyaXB0aW9uICl7XHJcbiAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkX2Rlc2NyaXB0aW9uID0gaXRlbS5kZXNjcmlwdGlvbjsgXHJcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGFMaXN0U2VydmljZS5zZXRBY3RpdmVJdGVtKHRoaXMuc2VsZWN0ZWRfaXRlbSk7XHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0gICAgICAgIFxyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9IFxyXG4gIH1cclxuXHJcbiAgZ2VuZXJhdGVJRCgpOiBzdHJpbmd7XHJcbiAgICByZXR1cm4gYGRhdGEtbGlzdC0ke01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIERhdGUubm93KCkpKX1gO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICBpZiggdGhpcy5zdWJzY3JpcHRpb25fdmFsdWUgKXsgdGhpcy5zdWJzY3JpcHRpb25fdmFsdWUudW5zdWJzY3JpYmUoKTsgfSAgICBcclxuICAgIGlmKCB0aGlzLnN1YnNjcmlwdGlvbl9kZXNjcmlwdGlvbiApeyB0aGlzLnN1YnNjcmlwdGlvbl9kZXNjcmlwdGlvbi51bnN1YnNjcmliZSgpOyB9IFxyXG4gICAgaWYoIHRoaXMuc3Vic2NyaXB0aW9uX29wdGlvbnMgKXsgdGhpcy5zdWJzY3JpcHRpb25fb3B0aW9ucy51bnN1YnNjcmliZSgpOyB9IFxyXG4gIH1cclxuXHJcbiAgdG9TZWFyY2goZTogYW55KSB7XHJcbiAgICBsZXQgaW5wdXQgPSAoZSAmJiBlLnRhcmdldCAmJiBlLnRhcmdldC52YWx1ZSkgPyBlLnRhcmdldC52YWx1ZSA6ICcnO1xyXG4gICAgXHJcbiAgICBsZXQgZmlsdGVyID0gKCAoIChpbnB1dCkubm9ybWFsaXplKCdORkQnKS5yZXBsYWNlKC9bXFx1MDMwMC1cXHUwMzZmXS9nLCBcIlwiKSApLnRyaW0oKSApLnRvTG93ZXJDYXNlKCk7XHJcbiAgICBsZXQgdWwgPSA8YW55PiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgJHt0aGlzLmlkfS1vcHRpb25zYCk7XHJcbiAgICBpZiggdWwgKXtcclxuICAgICAgbGV0IGxpID0gdWwuZ2V0RWxlbWVudHNCeVRhZ05hbWUoXCJidXR0b25cIik7XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGkubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgIGNvbnN0IGEgPSBsaVtpXTtcclxuICAgICAgICAgIGNvbnN0IHR4dFZhbHVlID0gKCAoICggYS50ZXh0Q29udGVudCB8fCBhLmlubmVyVGV4dCApLm5vcm1hbGl6ZSgnTkZEJykucmVwbGFjZSgvW1xcdTAzMDAtXFx1MDM2Zl0vZywgXCJcIikgKS50cmltKCkgKS50b0xvd2VyQ2FzZSgpO1xyXG4gICAgICAgICAgaWYgKHR4dFZhbHVlLmluZGV4T2YoZmlsdGVyKSA+IC0xKSB7XHJcbiAgICAgICAgICAgICAgbGlbaV0uc3R5bGUuZGlzcGxheSA9IFwiXCI7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIGxpW2ldLnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcclxuICAgICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2VsZWN0RGVzY3JpcHRpb24oKXtcclxuICAgIGlmKCB0aGlzLmxpc3Rfc2VsZWN0ZWRfb3B0aW9ucyAmJiAodGhpcy5saXN0X3NlbGVjdGVkX29wdGlvbnMpLmxlbmd0aCA+IDAgKXtcclxuICAgICAgZm9yKCBsZXQgaSA9IDA7IGkgPCAodGhpcy5saXN0X3NlbGVjdGVkX29wdGlvbnMpLmxlbmd0aDsgaSsrICl7XHJcbiAgICAgICAgY29uc3QgaXRlbSA9IHRoaXMubGlzdF9zZWxlY3RlZF9vcHRpb25zW2ldO1xyXG4gICAgICAgIGlmKCBpdGVtLnZhbHVlID09PSB0aGlzLnNlbGVjdGVkX2l0ZW0gKXtcclxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRfZGVzY3JpcHRpb24gPSBpdGVtLmRlc2NyaXB0aW9uO1xyXG4gICAgICAgICAgdGhpcy50b0NoYW5nZSgpO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmKCB0aGlzLnNlbGVjdGVkX2l0ZW0gPT09IHVuZGVmaW5lZCB8fCB0aGlzLnNlbGVjdGVkX2l0ZW0gPT09IG51bGwgfHwgdGhpcy5zZWxlY3RlZF9pdGVtID09PSAnJyApe1xyXG4gICAgICB0aGlzLnNlbGVjdGVkX2Rlc2NyaXB0aW9uID0gJyc7XHJcbiAgICAgIHRoaXMudG9DaGFuZ2UoKTtcclxuICAgIH1cclxuICAgIFxyXG4gIH1cclxuXHJcbiAgXHJcbiAgdG9JbnB1dChlOiBhbnkpe1xyXG4gICAgdGhpcy5vbklucHV0Q2hhbmdlLmVtaXQodGhpcy5zZWxlY3RlZF9kZXNjcmlwdGlvbik7XHJcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoZSk7XHJcbiAgfVxyXG5cclxuICB0b0NoYW5nZSgpe1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGlmKCB0aGlzLnNlbGVjdGVkX2l0ZW0gPT09IHVuZGVmaW5lZCB8fCB0aGlzLnNlbGVjdGVkX2l0ZW0gPT09IG51bGwgKXtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkX2l0ZW0gPSAnJztcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnRvU2VhcmNoKCcnKTtcclxuICAgICAgdGhpcy5zZWFyY2hfdGV4dCA9ICcnO1xyXG4gICAgICB0aGlzLmRhdGFMaXN0U2VydmljZS5zZXRBY3RpdmVJdGVtKHRoaXMuc2VsZWN0ZWRfaXRlbSk7XHJcblxyXG4gICAgICB0aGlzLm9uSW5wdXRDaGFuZ2UuZW1pdCh0aGlzLnNlbGVjdGVkX2Rlc2NyaXB0aW9uKTtcclxuXHJcbiAgICAgIGlmKCB0aGlzLmZvcm11bGFyaW8gKXtcclxuICAgICAgICB0aGlzLmZvcm11bGFyaW8/LmdldCgnc2VsZWN0ZWRfaXRlbScpPy5zZXRWYWx1ZSh0aGlzLnNlbGVjdGVkX2l0ZW0pO1xyXG4gICAgICAgIC8vIGNvbnN0IGlucHV0X2hpZGRlbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGAke3RoaXMuaWR9LWhpZGRlbmApO1xyXG4gICAgICAgIHRoaXMudG9JbnB1dCh0aGlzLmZvcm11bGFyaW8uZ2V0KCdzZWxlY3RlZF9pdGVtJykpO1xyXG4gICAgICB9ICAgXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG5cclxuICBjbGVhclRleHRTZWFyY2goKXtcclxuICAgIHRoaXMuc2VhcmNoX3RleHQgPSAnJztcclxuICAgIHRoaXMudG9TZWFyY2goJycpO1xyXG4gIH1cclxuXHJcbiAgdG9PcGVuKCl7XHJcbiAgICB0aGlzLm1lbnVfc2hvdyA9ICF0aGlzLm1lbnVfc2hvdzsgXHJcbiAgICB0aGlzLnJlc29sdmVfcG9zaXRpb25fZHJvcGRvd24odGhpcy5tZW51X3Nob3cpO1xyXG4gICAgdGhpcy5vbk9wZW5lZC5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICByZXNvbHZlX3Bvc2l0aW9uX2Ryb3Bkb3duKG9wZW46IGJvb2xlYW4pe1xyXG4gICAgaWYoIG9wZW4gKXtcclxuICAgICAgdGhpcy5ib3hfc3R5bGUgPSAnJztcclxuICAgICAgdGhpcy5tZW51X29uX3RvcCA9ICcnOyAgIFxyXG4gICAgICBjb25zdCBpZCA9IGAke3RoaXMuaWR9YDsgXHJcbiAgICAgIGNvbnN0IGJveCA9IGBib3gtJHt0aGlzLmlkfWA7XHJcbiAgICAgIGlmKCB0aGlzLnZpZXdwb3J0X2hlaWdodCA9PT0gMCApe1xyXG4gICAgICAgIHRoaXMudmlld3BvcnRfaGVpZ2h0ID0gd2luZG93LmlubmVyV2lkdGg7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgcmVjdCAgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCk/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgICBjb25zdCBib3hfcG9zaXRpb24gPSByZWN0Py5ib3R0b20gfHwgMDsgICAgICBcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5ib3hfaGVpZ2h0ICA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGJveCk/LmNsaWVudEhlaWdodCB8fCAwO1xyXG4gICAgICAgIGlmKCAoIHRoaXMudmlld3BvcnRfaGVpZ2h0IC0gYm94X3Bvc2l0aW9uKSA8IHRoaXMuYm94X2hlaWdodCApe1xyXG4gICAgICAgICAgdGhpcy5tZW51X29uX3RvcCA9ICdtZW51LW9uLXRvcCc7XHJcbiAgICAgICAgICB0aGlzLmJveF9zdHlsZSA9IGB0b3A6IC0keyAodGhpcy5ib3hfaGVpZ2h0KSB9cHg7IGhlaWdodDogJHt0aGlzLmJveF9oZWlnaHR9cHg7YDtcclxuICAgICAgICB9XHJcbiAgICAgIH0pOyAgICBcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRvQ2xvc2UoKXtcclxuICAgIHRoaXMubWVudV9zaG93ID0gZmFsc2U7XHJcbiAgICB0aGlzLm9uQ2xvc2VkLmVtaXQoKTtcclxuICB9XHJcblxyXG5cclxuICB0b1Jlc2l6ZSgpe1xyXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsICgpID0+IHtcclxuICAgICAgdGhpcy52aWV3cG9ydF93aWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoO1xyXG4gICAgICB0aGlzLnZpZXdwb3J0X2hlaWdodCA9IHdpbmRvdy5pbm5lckhlaWdodDtcclxuICAgICAgdGhpcy5yZXNvbHZlX3Bvc2l0aW9uX2Ryb3Bkb3duKHRoaXMubWVudV9zaG93KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgdG9DbGljaygpe1xyXG4gICAgY29uc3QgYm94ID0gYGFyZWEtJHt0aGlzLmlkfWA7XHJcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLChlOiBhbnkpID0+IHsgICBcclxuICAgICAgaWYoIHRoaXMubWVudV9zaG93ICl7XHJcbiAgICAgICAgaWYoICEoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYm94KT8uY29udGFpbnMoZS50YXJnZXQpKSApeyAgICAgICAgXHJcbiAgICAgICAgICB0aGlzLnRvQ2xvc2UoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcblxyXG4gIFxyXG4gIC8vUGxhY2Vob2xkZXJzIGZvciB0aGUgY2FsbGJhY2tzIHdoaWNoIGFyZSBsYXRlciBwcm92aWRlc2RcclxuICAgIC8vYnkgdGhlIENvbnRyb2wgVmFsdWUgQWNjZXNzb3JcclxuICAgIHByaXZhdGUgb25Ub3VjaGVkQ2FsbGJhY2s6ICgpID0+IHZvaWQgPSBub29wO1xyXG4gICAgcHJpdmF0ZSBvbkNoYW5nZUNhbGxiYWNrOiAoXzogYW55KSA9PiB2b2lkID0gbm9vcDtcclxuXHJcbiAgICAvL2dldCBhY2Nlc3NvclxyXG4gICAgZ2V0IHZhbHVlKCk6IGFueSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRfaXRlbTtcclxuICAgIH07XHJcblxyXG4gICAgLy9zZXQgYWNjZXNzb3IgaW5jbHVkaW5nIGNhbGwgdGhlIG9uY2hhbmdlIGNhbGxiYWNrXHJcbiAgICBzZXQgdmFsdWUodjogYW55KSB7XHJcbiAgICAgICAgaWYgKHYgIT09IHRoaXMuc2VsZWN0ZWRfaXRlbSkge1xyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkX2l0ZW0gPSB2O1xyXG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sodik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vU2V0IHRvdWNoZWQgb24gYmx1clxyXG4gICAgb25CbHVyKCkge1xyXG4gICAgICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2soKTtcclxuICAgIH1cclxuXHJcbiAgICAvL0Zyb20gQ29udHJvbFZhbHVlQWNjZXNzb3IgaW50ZXJmYWNlXHJcbiAgICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcclxuICAgICAgICBpZiAodmFsdWUgIT09IHRoaXMuc2VsZWN0ZWRfaXRlbSkge1xyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkX2l0ZW0gPSB2YWx1ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy9Gcm9tIENvbnRyb2xWYWx1ZUFjY2Vzc29yIGludGVyZmFjZVxyXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KSB7XHJcbiAgICAgICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrID0gZm47XHJcbiAgICB9XHJcblxyXG4gICAgLy9Gcm9tIENvbnRyb2xWYWx1ZUFjY2Vzc29yIGludGVyZmFjZVxyXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xyXG4gICAgICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2sgPSBmbjtcclxuICAgIH1cclxuXHJcbn1cclxuXHJcbiIsIjxkaXYgKm5nSWY9XCJmb3JtdWxhcmlvXCIgaWQ9XCJhcmVhLXt7IGlkIH19XCIgY2xhc3M9XCJ0Y2xvdWQtdWktZGF0YS1saXN0IHRjLWRyb3Bkb3duXCIgW2NsYXNzLmRpc2FibGVkXT1cImRpc2FibGVkIHx8IGxvYWRpbmdcIj5cclxuICA8ZGl2ICpuZ0lmPVwibG9hZGluZ1wiIGNsYXNzPVwibG9hZGluZy1hcmVhXCI+XHJcbiAgICA8aSBjbGFzcz1cImZhcyBmYS1zcGlubmVyIGZhLXNwaW5cIj48L2k+XHJcbiAgPC9kaXY+XHJcbiAgPCEtLSBbYXR0ci5kYXRhLWJzLXRvZ2dsZV09XCInZHJvcGRvd24nXCIgIC0tPlxyXG4gIDxidXR0b24gXHJcbiAgICAjX29wdGlvblxyXG4gICAgW2NsYXNzLmlucHV0LWhpZGRlbl09XCIhc2hvd0lucHV0XCJcclxuICAgIFtjbGFzcy5pbi1ib3JkZXJdPVwiYm9yZGVyXCJcclxuICAgIFtjbGFzcy5sb2FkaW5nLWJveF09XCJsb2FkaW5nXCJcclxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCB8fCBsb2FkaW5nXCJcclxuICAgIGNsYXNzPVwiZHJvcGRvd24tdG9nZ2xlIGJ1dHRvbi1zZWxlY3Qgbm8tbWFyZ2luLWJvdHRvbVwiIFxyXG4gICAgdHlwZT1cImJ1dHRvblwiIFxyXG4gICAgaWQ9XCJ7eyBpZCB9fVwiIFxyXG4gICAgXHJcbiAgICBbYXR0ci5hcmlhLWhhc3BvcHVwXT1cIid0cnVlJ1wiIFxyXG4gICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCInZmFsc2UnXCIgXHJcbiAgICAoY2xpY2spPVwidG9PcGVuKCk7dG9JbnB1dChfb3B0aW9uKVwiID5cclxuXHJcbiAgICA8aSBjbGFzcz1cInRjLXBsYWNlaG9sZGVyXCIgKm5nSWY9XCIoc2VsZWN0ZWRfZGVzY3JpcHRpb24gPT09IHVuZGVmaW5lZCB8fCBzZWxlY3RlZF9kZXNjcmlwdGlvbiA9PT0gbnVsbCB8fCBzZWxlY3RlZF9kZXNjcmlwdGlvbiA9PT0gJycgKSAmJiAhbG9hZGluZyBcIj57eyBwbGFjZWhvbGRlciB9fTwvaT5cclxuICAgIHt7IHNlbGVjdGVkX2Rlc2NyaXB0aW9uIH19XHJcbiAgICA8c3Bhbj48aSBjbGFzcz1cImZhcyBmYS1hbmdsZS1kb3duXCI+PC9pPjwvc3Bhbj5cclxuICA8L2J1dHRvbj5cclxuICA8ZGl2IGNsYXNzPVwidGMtZHJvcGRvd24tbWVudSB7eyBtZW51X29uX3RvcCB9fVwiIGlkPVwiYm94LXt7IGlkIH19XCIgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImlkXCIgW2NsYXNzLnRvLWhpZGVdPVwiIW1lbnVfc2hvd1wiIFtzdHlsZV09XCJib3hfc3R5bGVcIj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwibGluZS1zZWFyY2hcIiAqbmdJZj1cInNlYXJjaFwiPlxyXG4gICAgICA8dGFibGUgY2xhc3M9XCJib3gtc2VhcmNoXCI+XHJcbiAgICAgICAgPHRyPlxyXG5cclxuICAgICAgICAgIDx0ZCBjbGFzcz1cImFyZWEtaW5wdXRcIj5cclxuICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJ0Yy1mb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cInNlYXJjaF90ZXh0XCIgKGlucHV0KT1cInRvU2VhcmNoKCRldmVudClcIiBwbGFjZWhvbGRlcj1cIkJ1c2Nhci4uLlwiID4gICAgICAgICAgICBcclxuICAgICAgICAgIDwvdGQ+XHJcblxyXG4gICAgICAgICAgPHRkIGNsYXNzPVwiYXJlYS1pY29uXCI+XHJcbiAgICAgICAgICAgIDxpICpuZ0lmPVwic2VhcmNoX3RleHQgPT09ICcnXCIgY2xhc3M9XCJmYXMgZmEtc2VhcmNoIGljb24tc2VhcmNoXCI+PC9pPlxyXG4gICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiAqbmdJZj1cInNlYXJjaF90ZXh0ICE9PSAnJ1wiIChjbGljayk9XCJjbGVhclRleHRTZWFyY2goKVwiPjxpIGNsYXNzPVwiZmFzIGZhLXRpbWVzXCI+PC9pPjwvYnV0dG9uPlxyXG4gICAgICAgICAgPC90ZD5cclxuICAgICAgICAgIFxyXG4gICAgICAgIDwvdHI+XHJcbiAgICAgIDwvdGFibGU+XHJcbiAgICA8L2Rpdj5cclxuICAgIFxyXG4gICAgPGRpdiBjbGFzcz1cImFyZWEtb3B0aW9uc1wiIGlkPVwie3sgaWQgfX0tb3B0aW9uc1wiIChjbGljayk9XCJ0b0Nsb3NlKClcIj5cclxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PiAgXHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsaXN0SXRlbXMgJiYgKGxpc3RJdGVtcykubGVuZ3RoID4gMFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgbGlzdEl0ZW1zXCI+XHJcbiAgICAgICAgICA8dGNsb3VkLXVpLWRhdGEtbGlzdC1vcHRpb24gW3ZhbHVlXT1cIml0ZW0udmFsdWVcIj57eyBpdGVtPy5kZXNjcmlwdGlvbiB9fTwvdGNsb3VkLXVpLWRhdGEtbGlzdC1vcHRpb24+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9uZy1jb250YWluZXI+ICAgIFxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiAqbmdJZj1cImZvcm11bGFyaW9cIj5cclxuICA8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm11bGFyaW9cIiBzdHlsZT1cImRpc3BsYXk6IG5vbmU7XCIgPlxyXG4gICAgPGlucHV0IGlkPVwie3sgaWQgfX0taGlkZGVuXCIgZm9ybUNvbnRyb2xOYW1lPVwic2VsZWN0ZWRfaXRlbVwiIHR5cGU9XCJoaWRkZW5cIj5cclxuICA8L2Zvcm0+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
317
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGNsb3VkLXVpLWRhdGEtbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Y2xvdWQtdWkvc3JjL2xpYi9fbW9kdWxlcy90Y2xvdWQtdWktZGF0YS1saXN0L3RjbG91ZC11aS1kYXRhLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGNsb3VkLXVpL3NyYy9saWIvX21vZHVsZXMvdGNsb3VkLXVpLWRhdGEtbGlzdC90Y2xvdWQtdWktZGF0YS1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBVSxNQUFNLEVBQUUsWUFBWSxFQUFhLEtBQUssRUFBK0IsTUFBTSxlQUFlLENBQUM7QUFDbkksT0FBTyxFQUFFLGlCQUFpQixFQUFrQyxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBSWhHLE1BQU0sbUNBQW1DLEdBQVE7SUFDL0MsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHlCQUF5QixDQUFDO0lBQ3hELEtBQUssRUFBRSxJQUFJO0NBQ1osQ0FBQztBQUVGLE1BQU0sSUFBSSxHQUFHLEdBQUcsRUFBRTtBQUNsQixDQUFDLENBQUM7QUFZRixNQUFNLE9BQU8seUJBQXlCO0lBV3BDLElBQWEsUUFBUSxDQUFDLENBQUM7UUFDckIsSUFBSSxPQUFPLENBQUMsS0FBSyxTQUFTLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbEQsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7WUFDbkIsaUNBQWlDO1lBQ2pDLHlCQUF5QjtZQUN6QixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDakI7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O0lBQ3JCLE1BQU07UUFDRixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQscUNBQXFDO0lBQ3JDLFVBQVUsQ0FBQyxLQUFVO1FBQ2pCLElBQUksS0FBSyxLQUFLLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDOUIsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7U0FDOUI7SUFDTCxDQUFDO0lBRUQscUNBQXFDO0lBQ3JDLGdCQUFnQixDQUFDLEVBQU87UUFDcEIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRUQscUNBQXFDO0lBQ3JDLGlCQUFpQixDQUFDLEVBQU87UUFDckIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztJQUNoQyxDQUFDOytHQW5VUSx5QkFBeUI7bUdBQXpCLHlCQUF5QixxWUFMekI7WUFDVCxlQUFlO1lBQ2YsbUNBQW1DO1NBQ3BDLDBCQ3ZCSCxraEZBMERBOzs0RkRqQ2EseUJBQXlCO2tCQVRyQyxTQUFTOytCQUNFLHFCQUFxQixhQUdwQjt3QkFDVCxlQUFlO3dCQUNmLG1DQUFtQztxQkFDcEM7Z0lBVVEsV0FBVztzQkFBbkIsS0FBSztnQkFHTyxRQUFRO3NCQUFwQixLQUFLO2dCQVdPLE9BQU87c0JBQW5CLEtBQUs7Z0JBV0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBR08sU0FBUztzQkFBckIsS0FBSztnQkFRTyxJQUFJO3NCQUFoQixLQUFLO2dCQVlHLE1BQU07c0JBQWQsS0FBSztnQkFFSSxhQUFhO3NCQUF0QixNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU07Z0JBRUcsUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNO2dCQUdNLE9BQU87c0JBQW5CLEtBQUs7Z0JBSUksYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGFMaXN0U2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZGF0YS1saXN0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIGZvcndhcmRSZWYsIE9uSW5pdCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIFZpZXdDaGlsZCwgSW5wdXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3Q2hlY2tlZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiwgTmdGb3JtLCBGb3JtR3JvdXAsIEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IElTZWxlY3RPcHRpb25zIH0gZnJvbSAnLi90Y2xvdWQtdWktZGF0YS1saXN0JztcclxuXHJcbmNvbnN0IENVU1RPTV9JTlBVVF9DT05UUk9MX1ZBTFVFX0FDQ0VTU09SOiBhbnkgPSB7XHJcbiAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVENsb3VkVWlEYXRhTGlzdENvbXBvbmVudCksXHJcbiAgbXVsdGk6IHRydWVcclxufTtcclxuXHJcbmNvbnN0IG5vb3AgPSAoKSA9PiB7XHJcbn07XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd0Y2xvdWQtdWktZGF0YS1saXN0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGNsb3VkLXVpLWRhdGEtbGlzdC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdGNsb3VkLXVpLWRhdGEtbGlzdC5jb21wb25lbnQuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgRGF0YUxpc3RTZXJ2aWNlLCBcclxuICAgIENVU1RPTV9JTlBVVF9DT05UUk9MX1ZBTFVFX0FDQ0VTU09SXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRDbG91ZFVpRGF0YUxpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3Q2hlY2tlZCB7XHJcblxyXG4gIHZpZXdwb3J0X3dpZHRoOiBudW1iZXIgPSAwO1xyXG4gIHZpZXdwb3J0X2hlaWdodDogbnVtYmVyID0gMDtcclxuICBib3hfaGVpZ2h0OiBudW1iZXIgPSAwO1xyXG4gIGJveF9zdHlsZTogc3RyaW5nID0gJyc7XHJcbiAgbWVudV9vbl90b3A6IHN0cmluZyA9ICcnO1xyXG5cclxuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nID0gJyc7XHJcblxyXG4gIHByaXZhdGUgX2Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2V0IGRpc2FibGVkKHYpe1xyXG4gICAgaWYoIHR5cGVvZiB2ID09PSAnYm9vbGVhbicgJiYgdiAhPT0gdGhpcy5fZGlzYWJsZWQgKXtcclxuICAgICAgdGhpcy5fZGlzYWJsZWQgPSB2OyAgICBcclxuICAgICAgLy90aGlzLnNlbGVjdGVkX2Rlc2NyaXB0aW9uID0gJyc7XHJcbiAgICAgIC8vdGhpcy5zZWxlY3RlZF9pdGVtID0nJztcclxuICAgICAgdGhpcy50b0NoYW5nZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuICBnZXQgZGlzYWJsZWQoKTpib29sZWFuIHsgcmV0dXJuIHRoaXMuX2Rpc2FibGVkOyB9XHJcblxyXG4gIHByaXZhdGUgX2xvYWRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBzZXQgbG9hZGluZyh2OiBib29sZWFuKXtcclxuICAgIGlmKCB0eXBlb2YgdiA9PT0gJ2Jvb2xlYW4nICYmIHYgIT09IHRoaXMuX2xvYWRpbmcgKXtcclxuICAgICAgdGhpcy5fbG9hZGluZyA9IHY7ICAgIFxyXG4gICAgICAvL3RoaXMuc2VsZWN0ZWRfZGVzY3JpcHRpb24gPSAnJztcclxuICAgICAgLy90aGlzLnNlbGVjdGVkX2l0ZW0gPSAnJztcclxuICAgICAgdGhpcy50b0NoYW5nZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuICBnZXQgbG9hZGluZygpOmJvb2xlYW4geyByZXR1cm4gdGhpcy5fbG9hZGluZzsgfVxyXG5cclxuXHJcbiAgQElucHV0KCkgc2hvd0lucHV0OiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBzZWFyY2g6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIFxyXG4gIHByaXZhdGUgX2xpc3RJdGVtczogSVNlbGVjdE9wdGlvbnNbXSA9IFtdO1xyXG4gIEBJbnB1dCgpIHNldCBsaXN0SXRlbXModjogSVNlbGVjdE9wdGlvbnNbXSl7XHJcbiAgICBpZiggdiAmJiAodikubGVuZ3RoID4gMCApe1xyXG4gICAgICB0aGlzLl9saXN0SXRlbXMgPSB2O1xyXG4gICAgfVxyXG4gIH1cclxuICBnZXQgbGlzdEl0ZW1zKCk6SVNlbGVjdE9wdGlvbnNbXSB7IHJldHVybiB0aGlzLl9saXN0SXRlbXM7IH1cclxuXHJcbiAgcHJpdmF0ZSBfb3BlbjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNldCBvcGVuKHY6IGJvb2xlYW4pe1xyXG4gICAgaWYoIHYgIT09IHRoaXMuX29wZW4gKXtcclxuICAgICAgdGhpcy5fb3BlbiA9IHY7XHJcbiAgICAgIGlmKCB2ICl7XHJcbiAgICAgICAgdGhpcy5tZW51X3Nob3cgPSBmYWxzZTtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpPT57IHRoaXMudG9PcGVuKCk7IH0pOyAgICAgICAgXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgZ2V0IG9wZW4oKTpib29sZWFuIHsgcmV0dXJuIHRoaXMuX29wZW47IH1cclxuXHJcbiAgXHJcbiAgQElucHV0KCkgYm9yZGVyOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgQE91dHB1dCgpIG9uSW5wdXRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPElTZWxlY3RPcHRpb25zPigpO1xyXG4gIEBPdXRwdXQoKSBvbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8SVNlbGVjdE9wdGlvbnM+KCk7XHJcblxyXG4gIEBPdXRwdXQoKSBvbk9wZW5lZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBvbkNsb3NlZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBwcml2YXRlIF9uZ01vZGVsOiBhbnkgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgc2V0IG5nTW9kZWwodjogYW55KXtcclxuICAgIHRoaXMuc2VsZWN0ZWRfaXRlbSA9IHY7ICAgIFxyXG4gICAgdGhpcy5zZWxlY3REZXNjcmlwdGlvbigpOyAgIFxyXG4gIH1cclxuICBAT3V0cHV0KCkgbmdNb2RlbENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBsaXN0X3NlbGVjdGVkX29wdGlvbnMgPSBuZXcgQXJyYXk8SVNlbGVjdE9wdGlvbnM+KCk7XHJcblxyXG4gIHNlbGVjdGVkX2l0ZW06IGFueSB8IHVuZGVmaW5lZDtcclxuICBzZWxlY3RlZF9kZXNjcmlwdGlvbjogYW55IHwgdW5kZWZpbmVkO1xyXG5cclxuICBwcml2YXRlIHN1YnNjcmlwdGlvbl92YWx1ZTogU3Vic2NyaXB0aW9uIHwgdW5kZWZpbmVkO1xyXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uX2Rlc2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XHJcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25fb3B0aW9uczogU3Vic2NyaXB0aW9uIHwgdW5kZWZpbmVkO1xyXG5cclxuICBtZW51X3Nob3c6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBzZWFyY2hfdGV4dDogc3RyaW5nID0gJyc7XHJcbiAgaWQ6IHN0cmluZyA9ICcnO1xyXG5cclxuICBmb3JtdWxhcmlvOiBGb3JtR3JvdXAgfCB1bmRlZmluZWQ7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBkYXRhTGlzdFNlcnZpY2U6IERhdGFMaXN0U2VydmljZSxcclxuICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyXHJcbiAgKXtcclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbl92YWx1ZSA9IHRoaXMuZGF0YUxpc3RTZXJ2aWNlLnN0YXRlVmFsdWUkLnN1YnNjcmliZSh2ID0+IHtcclxuICAgICAgdGhpcy5zZWxlY3RlZF9pdGVtID0gdjsgICAgICBcclxuICAgICAgdGhpcy5zZWxlY3REZXNjcmlwdGlvbigpO1xyXG4gICAgICB0aGlzLm5nTW9kZWxDaGFuZ2UuZW1pdCh0aGlzLnNlbGVjdGVkX2l0ZW0pO1xyXG4gICAgfSlcclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbl9kZXNjcmlwdGlvbiA9IHRoaXMuZGF0YUxpc3RTZXJ2aWNlLnN0YXRlRGVzY3JpcHRpb24kLnN1YnNjcmliZSh2ID0+IHtcclxuICAgICAgdGhpcy5zZWxlY3RlZF9kZXNjcmlwdGlvbiA9IHY7ICAgICAgXHJcbiAgICB9KVxyXG5cclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbl9vcHRpb25zID0gdGhpcy5kYXRhTGlzdFNlcnZpY2Uuc3RhdGVPcHRpb25zJC5zdWJzY3JpYmUoKHY6YW55KSA9PiB7XHJcbiAgICAgIGlmKCB2ICYmIHYudmFsdWUgKXtcclxuICAgICAgICAodGhpcy5saXN0X3NlbGVjdGVkX29wdGlvbnMpLnB1c2godik7XHJcbiAgICAgIH1cclxuICAgIH0pXHJcblxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKXtcclxuXHJcbiAgICBcclxuXHJcbiAgICB0aGlzLmlkID0gdGhpcy5nZW5lcmF0ZUlEKCk7XHJcblxyXG4gICAgdGhpcy5mb3JtdWxhcmlvID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XHJcbiAgICAgIFwic2VsZWN0ZWRfaXRlbVwiOiBuZXcgRm9ybUNvbnRyb2woJycsW10pLFxyXG4gICAgfSlcclxuXHJcbiAgICBcclxuXHJcbiAgICB0aGlzLnRvUmVzaXplKCk7XHJcbiAgICB0aGlzLnRvQ2xpY2soKTtcclxuICB9XHJcblxyXG4gIHRfZmM6IGFueSB8IHVuZGVmaW5lZDtcclxuICBuZ0FmdGVyVmlld0NoZWNrZWQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRfZmMgPSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLnRfZmMgPSB0aGlzLmdldF9zZWxlY3RlZF9kZXNjcmlwdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgZ2V0X3NlbGVjdGVkX2Rlc2NyaXB0aW9uKCk6IHZvaWR7XHJcbiAgICBpZiggdGhpcy5saXN0X3NlbGVjdGVkX29wdGlvbnMgJiYgKHRoaXMubGlzdF9zZWxlY3RlZF9vcHRpb25zKS5sZW5ndGggPiAwICl7XHJcbiAgICAgIGZvciggbGV0IGkgPSAwOyBpIDwgKHRoaXMubGlzdF9zZWxlY3RlZF9vcHRpb25zKS5sZW5ndGg7IGkrKyApe1xyXG4gICAgICAgIGNvbnN0IGl0ZW0gPSB0aGlzLmxpc3Rfc2VsZWN0ZWRfb3B0aW9uc1tpXTtcclxuICAgICAgICBpZiggaXRlbS52YWx1ZSA9PT0gdGhpcy5zZWxlY3RlZF9pdGVtICl7ICAgICAgICAgXHJcbiAgICAgICAgICBpZiggdGhpcy5zZWxlY3RlZF9kZXNjcmlwdGlvbiAhPT0gaXRlbS5kZXNjcmlwdGlvbiApe1xyXG4gICAgICAgICAgICBpZiggaXRlbS5kZXNjcmlwdGlvbiAmJiBpdGVtLmRlc2NyaXB0aW9uICE9PSB0aGlzLnNlbGVjdGVkX2Rlc2NyaXB0aW9uICl7XHJcbiAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkX2Rlc2NyaXB0aW9uID0gaXRlbS5kZXNjcmlwdGlvbjsgXHJcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGFMaXN0U2VydmljZS5zZXRBY3RpdmVJdGVtKHRoaXMuc2VsZWN0ZWRfaXRlbSk7XHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0gICAgICAgIFxyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9IFxyXG4gIH1cclxuXHJcbiAgZ2VuZXJhdGVJRCgpOiBzdHJpbmd7XHJcbiAgICByZXR1cm4gYGRhdGEtbGlzdC0ke01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIERhdGUubm93KCkpKX1gO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICBpZiggdGhpcy5zdWJzY3JpcHRpb25fdmFsdWUgKXsgdGhpcy5zdWJzY3JpcHRpb25fdmFsdWUudW5zdWJzY3JpYmUoKTsgfSAgICBcclxuICAgIGlmKCB0aGlzLnN1YnNjcmlwdGlvbl9kZXNjcmlwdGlvbiApeyB0aGlzLnN1YnNjcmlwdGlvbl9kZXNjcmlwdGlvbi51bnN1YnNjcmliZSgpOyB9IFxyXG4gICAgaWYoIHRoaXMuc3Vic2NyaXB0aW9uX29wdGlvbnMgKXsgdGhpcy5zdWJzY3JpcHRpb25fb3B0aW9ucy51bnN1YnNjcmliZSgpOyB9IFxyXG4gIH1cclxuXHJcbiAgdG9TZWFyY2goZTogYW55KSB7XHJcbiAgICBsZXQgaW5wdXQgPSAoZSAmJiBlLnRhcmdldCAmJiBlLnRhcmdldC52YWx1ZSkgPyBlLnRhcmdldC52YWx1ZSA6ICcnO1xyXG4gICAgXHJcbiAgICBsZXQgZmlsdGVyID0gKCAoIChpbnB1dCkubm9ybWFsaXplKCdORkQnKS5yZXBsYWNlKC9bXFx1MDMwMC1cXHUwMzZmXS9nLCBcIlwiKSApLnRyaW0oKSApLnRvTG93ZXJDYXNlKCk7XHJcbiAgICBsZXQgdWwgPSA8YW55PiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgJHt0aGlzLmlkfS1vcHRpb25zYCk7XHJcbiAgICBpZiggdWwgKXtcclxuICAgICAgbGV0IGxpID0gdWwuZ2V0RWxlbWVudHNCeVRhZ05hbWUoXCJidXR0b25cIik7XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGkubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgIGNvbnN0IGEgPSBsaVtpXTtcclxuICAgICAgICAgIGNvbnN0IHR4dFZhbHVlID0gKCAoICggYS50ZXh0Q29udGVudCB8fCBhLmlubmVyVGV4dCApLm5vcm1hbGl6ZSgnTkZEJykucmVwbGFjZSgvW1xcdTAzMDAtXFx1MDM2Zl0vZywgXCJcIikgKS50cmltKCkgKS50b0xvd2VyQ2FzZSgpO1xyXG4gICAgICAgICAgaWYgKHR4dFZhbHVlLmluZGV4T2YoZmlsdGVyKSA+IC0xKSB7XHJcbiAgICAgICAgICAgICAgbGlbaV0uc3R5bGUuZGlzcGxheSA9IFwiXCI7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIGxpW2ldLnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcclxuICAgICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2VsZWN0RGVzY3JpcHRpb24oKXtcclxuICAgIGlmKCB0aGlzLmxpc3Rfc2VsZWN0ZWRfb3B0aW9ucyAmJiAodGhpcy5saXN0X3NlbGVjdGVkX29wdGlvbnMpLmxlbmd0aCA+IDAgKXtcclxuICAgICAgZm9yKCBsZXQgaSA9IDA7IGkgPCAodGhpcy5saXN0X3NlbGVjdGVkX29wdGlvbnMpLmxlbmd0aDsgaSsrICl7XHJcbiAgICAgICAgY29uc3QgaXRlbSA9IHRoaXMubGlzdF9zZWxlY3RlZF9vcHRpb25zW2ldO1xyXG4gICAgICAgIGlmKCBpdGVtLnZhbHVlID09PSB0aGlzLnNlbGVjdGVkX2l0ZW0gKXtcclxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRfZGVzY3JpcHRpb24gPSBpdGVtLmRlc2NyaXB0aW9uO1xyXG4gICAgICAgICAgdGhpcy50b0NoYW5nZSgpO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmKCB0aGlzLnNlbGVjdGVkX2l0ZW0gPT09IHVuZGVmaW5lZCB8fCB0aGlzLnNlbGVjdGVkX2l0ZW0gPT09IG51bGwgfHwgdGhpcy5zZWxlY3RlZF9pdGVtID09PSAnJyApe1xyXG4gICAgICB0aGlzLnNlbGVjdGVkX2Rlc2NyaXB0aW9uID0gJyc7XHJcbiAgICAgIHRoaXMudG9DaGFuZ2UoKTtcclxuICAgIH1cclxuICAgIFxyXG4gIH1cclxuXHJcbiAgXHJcbiAgdG9JbnB1dChlOiBhbnkpe1xyXG4gICAgdGhpcy5vbklucHV0Q2hhbmdlLmVtaXQodGhpcy5zZWxlY3RlZF9kZXNjcmlwdGlvbik7XHJcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoZSk7XHJcbiAgfVxyXG5cclxuICB0b0NoYW5nZSgpe1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGlmKCB0aGlzLnNlbGVjdGVkX2l0ZW0gPT09IHVuZGVmaW5lZCB8fCB0aGlzLnNlbGVjdGVkX2l0ZW0gPT09IG51bGwgKXtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkX2l0ZW0gPSAnJztcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnRvU2VhcmNoKCcnKTtcclxuICAgICAgdGhpcy5zZWFyY2hfdGV4dCA9ICcnO1xyXG4gICAgICB0aGlzLmRhdGFMaXN0U2VydmljZS5zZXRBY3RpdmVJdGVtKHRoaXMuc2VsZWN0ZWRfaXRlbSk7XHJcblxyXG4gICAgICB0aGlzLm9uSW5wdXRDaGFuZ2UuZW1pdCh0aGlzLnNlbGVjdGVkX2Rlc2NyaXB0aW9uKTtcclxuXHJcbiAgICAgIGlmKCB0aGlzLmZvcm11bGFyaW8gKXtcclxuICAgICAgICB0aGlzLmZvcm11bGFyaW8/LmdldCgnc2VsZWN0ZWRfaXRlbScpPy5zZXRWYWx1ZSh0aGlzLnNlbGVjdGVkX2l0ZW0pO1xyXG4gICAgICAgIC8vIGNvbnN0IGlucHV0X2hpZGRlbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGAke3RoaXMuaWR9LWhpZGRlbmApO1xyXG4gICAgICAgIHRoaXMudG9JbnB1dCh0aGlzLmZvcm11bGFyaW8uZ2V0KCdzZWxlY3RlZF9pdGVtJykpO1xyXG4gICAgICB9ICAgXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG5cclxuICBjbGVhclRleHRTZWFyY2goKXtcclxuICAgIHRoaXMuc2VhcmNoX3RleHQgPSAnJztcclxuICAgIHRoaXMudG9TZWFyY2goJycpO1xyXG4gIH1cclxuXHJcbiAgdG9PcGVuKCl7XHJcbiAgICB0aGlzLm1lbnVfc2hvdyA9ICF0aGlzLm1lbnVfc2hvdzsgXHJcbiAgICB0aGlzLnJlc29sdmVfcG9zaXRpb25fZHJvcGRvd24odGhpcy5tZW51X3Nob3cpO1xyXG4gICAgdGhpcy5vbk9wZW5lZC5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICByZXNvbHZlX3Bvc2l0aW9uX2Ryb3Bkb3duKG9wZW46IGJvb2xlYW4pe1xyXG4gICAgaWYoIG9wZW4gKXtcclxuICAgICAgdGhpcy5ib3hfc3R5bGUgPSAnJztcclxuICAgICAgdGhpcy5tZW51X29uX3RvcCA9ICcnOyAgIFxyXG4gICAgICBjb25zdCBpZCA9IGAke3RoaXMuaWR9YDsgXHJcbiAgICAgIGNvbnN0IGJveCA9IGBib3gtJHt0aGlzLmlkfWA7XHJcbiAgICAgIGlmKCB0aGlzLnZpZXdwb3J0X2hlaWdodCA9PT0gMCApe1xyXG4gICAgICAgIHRoaXMudmlld3BvcnRfaGVpZ2h0ID0gd2luZG93LmlubmVyV2lkdGg7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgcmVjdCAgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCk/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgICBjb25zdCBib3hfcG9zaXRpb24gPSByZWN0Py5ib3R0b20gfHwgMDsgICAgICBcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5ib3hfaGVpZ2h0ICA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGJveCk/LmNsaWVudEhlaWdodCB8fCAwO1xyXG4gICAgICAgIGlmKCAoIHRoaXMudmlld3BvcnRfaGVpZ2h0IC0gYm94X3Bvc2l0aW9uKSA8IHRoaXMuYm94X2hlaWdodCApe1xyXG4gICAgICAgICAgdGhpcy5tZW51X29uX3RvcCA9ICdtZW51LW9uLXRvcCc7XHJcbiAgICAgICAgICB0aGlzLmJveF9zdHlsZSA9IGB0b3A6IC0keyAodGhpcy5ib3hfaGVpZ2h0KSB9cHg7IGhlaWdodDogJHt0aGlzLmJveF9oZWlnaHR9cHg7YDtcclxuICAgICAgICB9XHJcbiAgICAgIH0pOyAgICBcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRvQ2xvc2UoKXtcclxuICAgIHRoaXMubWVudV9zaG93ID0gZmFsc2U7XHJcbiAgICB0aGlzLm9uQ2xvc2VkLmVtaXQoKTtcclxuICB9XHJcblxyXG5cclxuICB0b1Jlc2l6ZSgpe1xyXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsICgpID0+IHtcclxuICAgICAgdGhpcy52aWV3cG9ydF93aWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoO1xyXG4gICAgICB0aGlzLnZpZXdwb3J0X2hlaWdodCA9IHdpbmRvdy5pbm5lckhlaWdodDtcclxuICAgICAgdGhpcy5yZXNvbHZlX3Bvc2l0aW9uX2Ryb3Bkb3duKHRoaXMubWVudV9zaG93KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgdG9DbGljaygpe1xyXG4gICAgY29uc3QgYm94ID0gYGFyZWEtJHt0aGlzLmlkfWA7XHJcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLChlOiBhbnkpID0+IHsgICBcclxuICAgICAgaWYoIHRoaXMubWVudV9zaG93ICl7XHJcbiAgICAgICAgaWYoICEoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYm94KT8uY29udGFpbnMoZS50YXJnZXQpKSApeyAgICAgICAgXHJcbiAgICAgICAgICB0aGlzLnRvQ2xvc2UoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcblxyXG4gIFxyXG4gIC8vUGxhY2Vob2xkZXJzIGZvciB0aGUgY2FsbGJhY2tzIHdoaWNoIGFyZSBsYXRlciBwcm92aWRlc2RcclxuICAgIC8vYnkgdGhlIENvbnRyb2wgVmFsdWUgQWNjZXNzb3JcclxuICAgIHByaXZhdGUgb25Ub3VjaGVkQ2FsbGJhY2s6ICgpID0+IHZvaWQgPSBub29wO1xyXG4gICAgcHJpdmF0ZSBvbkNoYW5nZUNhbGxiYWNrOiAoXzogYW55KSA9PiB2b2lkID0gbm9vcDtcclxuXHJcbiAgICAvL2dldCBhY2Nlc3NvclxyXG4gICAgZ2V0IHZhbHVlKCk6IGFueSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRfaXRlbTtcclxuICAgIH07XHJcblxyXG4gICAgLy9zZXQgYWNjZXNzb3IgaW5jbHVkaW5nIGNhbGwgdGhlIG9uY2hhbmdlIGNhbGxiYWNrXHJcbiAgICBzZXQgdmFsdWUodjogYW55KSB7XHJcbiAgICAgICAgaWYgKHYgIT09IHRoaXMuc2VsZWN0ZWRfaXRlbSkge1xyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkX2l0ZW0gPSB2O1xyXG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sodik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vU2V0IHRvdWNoZWQgb24gYmx1clxyXG4gICAgb25CbHVyKCkge1xyXG4gICAgICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2soKTtcclxuICAgIH1cclxuXHJcbiAgICAvL0Zyb20gQ29udHJvbFZhbHVlQWNjZXNzb3IgaW50ZXJmYWNlXHJcbiAgICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcclxuICAgICAgICBpZiAodmFsdWUgIT09IHRoaXMuc2VsZWN0ZWRfaXRlbSkge1xyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkX2l0ZW0gPSB2YWx1ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy9Gcm9tIENvbnRyb2xWYWx1ZUFjY2Vzc29yIGludGVyZmFjZVxyXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KSB7XHJcbiAgICAgICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrID0gZm47XHJcbiAgICB9XHJcblxyXG4gICAgLy9Gcm9tIENvbnRyb2xWYWx1ZUFjY2Vzc29yIGludGVyZmFjZVxyXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xyXG4gICAgICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2sgPSBmbjtcclxuICAgIH1cclxuXHJcbn1cclxuXHJcbiIsIjxkaXYgKm5nSWY9XCJmb3JtdWxhcmlvXCIgaWQ9XCJhcmVhLXt7IGlkIH19XCIgY2xhc3M9XCJ0Y2xvdWQtdWktZGF0YS1saXN0IHRjLWRyb3Bkb3duXCIgW2NsYXNzLmRpc2FibGVkXT1cImRpc2FibGVkIHx8IGxvYWRpbmdcIj5cclxuICA8ZGl2ICpuZ0lmPVwibG9hZGluZ1wiIGNsYXNzPVwibG9hZGluZy1hcmVhXCI+XHJcbiAgICA8aSBjbGFzcz1cImZhcyBmYS1zcGlubmVyIGZhLXNwaW5cIj48L2k+XHJcbiAgPC9kaXY+XHJcbiAgPCEtLSBbYXR0ci5kYXRhLWJzLXRvZ2dsZV09XCInZHJvcGRvd24nXCIgIC0tPlxyXG4gIDxidXR0b24gXHJcbiAgICAjX29wdGlvblxyXG4gICAgW2NsYXNzLmlucHV0LWhpZGRlbl09XCIhc2hvd0lucHV0XCJcclxuICAgIFtjbGFzcy5pbi1ib3JkZXJdPVwiYm9yZGVyXCJcclxuICAgIFtjbGFzcy5sb2FkaW5nLWJveF09XCJsb2FkaW5nXCJcclxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCB8fCBsb2FkaW5nXCJcclxuICAgIGNsYXNzPVwiZHJvcGRvd24tdG9nZ2xlIGJ1dHRvbi1zZWxlY3Qgbm8tbWFyZ2luLWJvdHRvbVwiIFxyXG4gICAgdHlwZT1cImJ1dHRvblwiIFxyXG4gICAgaWQ9XCJ7eyBpZCB9fVwiIFxyXG4gICAgXHJcbiAgICBbYXR0ci5hcmlhLWhhc3BvcHVwXT1cIid0cnVlJ1wiIFxyXG4gICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCInZmFsc2UnXCIgXHJcbiAgICAoY2xpY2spPVwidG9PcGVuKCk7dG9JbnB1dChfb3B0aW9uKVwiID5cclxuXHJcbiAgICA8aSBjbGFzcz1cInRjLXBsYWNlaG9sZGVyXCIgKm5nSWY9XCIoc2VsZWN0ZWRfZGVzY3JpcHRpb24gPT09IHVuZGVmaW5lZCB8fCBzZWxlY3RlZF9kZXNjcmlwdGlvbiA9PT0gbnVsbCB8fCBzZWxlY3RlZF9kZXNjcmlwdGlvbiA9PT0gJycgKSAmJiAhbG9hZGluZyBcIj57eyBwbGFjZWhvbGRlciB9fTwvaT5cclxuICAgIHt7IHNlbGVjdGVkX2Rlc2NyaXB0aW9uIH19XHJcbiAgICA8c3Bhbj48aSBjbGFzcz1cImZhcyBmYS1hbmdsZS1kb3duXCI+PC9pPjwvc3Bhbj5cclxuICA8L2J1dHRvbj5cclxuICA8ZGl2IGNsYXNzPVwidGMtZHJvcGRvd24tbWVudSB7eyBtZW51X29uX3RvcCB9fVwiIGlkPVwiYm94LXt7IGlkIH19XCIgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImlkXCIgW2NsYXNzLnRvLWhpZGVdPVwiIW1lbnVfc2hvd1wiIFtzdHlsZV09XCJib3hfc3R5bGVcIj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwibGluZS1zZWFyY2hcIiAqbmdJZj1cInNlYXJjaFwiPlxyXG4gICAgICA8dGFibGUgY2xhc3M9XCJib3gtc2VhcmNoXCI+XHJcbiAgICAgICAgPHRyPlxyXG5cclxuICAgICAgICAgIDx0ZCBjbGFzcz1cImFyZWEtaW5wdXRcIj5cclxuICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJ0Yy1mb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cInNlYXJjaF90ZXh0XCIgKGlucHV0KT1cInRvU2VhcmNoKCRldmVudClcIiBwbGFjZWhvbGRlcj1cIkJ1c2Nhci4uLlwiID4gICAgICAgICAgICBcclxuICAgICAgICAgIDwvdGQ+XHJcblxyXG4gICAgICAgICAgPHRkIGNsYXNzPVwiYXJlYS1pY29uXCI+XHJcbiAgICAgICAgICAgIDxpICpuZ0lmPVwic2VhcmNoX3RleHQgPT09ICcnXCIgY2xhc3M9XCJmYXMgZmEtc2VhcmNoIGljb24tc2VhcmNoXCI+PC9pPlxyXG4gICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiAqbmdJZj1cInNlYXJjaF90ZXh0ICE9PSAnJ1wiIChjbGljayk9XCJjbGVhclRleHRTZWFyY2goKVwiPjxpIGNsYXNzPVwiZmFzIGZhLXRpbWVzXCI+PC9pPjwvYnV0dG9uPlxyXG4gICAgICAgICAgPC90ZD5cclxuICAgICAgICAgIFxyXG4gICAgICAgIDwvdHI+XHJcbiAgICAgIDwvdGFibGU+XHJcbiAgICA8L2Rpdj5cclxuICAgIFxyXG4gICAgPGRpdiBjbGFzcz1cImFyZWEtb3B0aW9uc1wiIGlkPVwie3sgaWQgfX0tb3B0aW9uc1wiIChjbGljayk9XCJ0b0Nsb3NlKClcIj5cclxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PiAgXHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsaXN0SXRlbXMgJiYgKGxpc3RJdGVtcykubGVuZ3RoID4gMFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgbGlzdEl0ZW1zXCI+XHJcbiAgICAgICAgICA8dGNsb3VkLXVpLWRhdGEtbGlzdC1vcHRpb24gW3ZhbHVlXT1cIml0ZW0udmFsdWVcIiBbZGlzYWJsZWRdPVwiaXRlbT8uZGlzYWJsZWRcIiA+e3sgaXRlbT8uZGVzY3JpcHRpb24gfX08L3RjbG91ZC11aS1kYXRhLWxpc3Qtb3B0aW9uPlxyXG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPiAgICBcclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjxkaXYgKm5nSWY9XCJmb3JtdWxhcmlvXCI+XHJcbiAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtdWxhcmlvXCIgc3R5bGU9XCJkaXNwbGF5OiBub25lO1wiID5cclxuICAgIDxpbnB1dCBpZD1cInt7IGlkIH19LWhpZGRlblwiIGZvcm1Db250cm9sTmFtZT1cInNlbGVjdGVkX2l0ZW1cIiB0eXBlPVwiaGlkZGVuXCI+XHJcbiAgPC9mb3JtPlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export class ISelectOptions {
|
|
2
2
|
}
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGNsb3VkLXVpLWRhdGEtbGlzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RjbG91ZC11aS9zcmMvbGliL19tb2R1bGVzL3RjbG91ZC11aS1kYXRhLWxpc3QvdGNsb3VkLXVpLWRhdGEtbGlzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sY0FBYztDQUkxQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBJU2VsZWN0T3B0aW9uc3tcclxuICBkZXNjcmlwdGlvbjogYW55O1xyXG4gIHZhbHVlOiBhbnk7XHJcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xyXG59Il19
|
package/esm2022/lib/_modules/tcloud-ui-filters/components/range-date/range-date.component.mjs
CHANGED
|
@@ -56,7 +56,7 @@ export class TCloudUiRangeDateComponent {
|
|
|
56
56
|
this.isValid = false;
|
|
57
57
|
// this.description_options_date_time = '';
|
|
58
58
|
// this.value_options_date_time = '';
|
|
59
|
-
event = (event.value) ? event.value : event
|
|
59
|
+
event = (event && event.value) ? `${event.value}` : `${event}`;
|
|
60
60
|
let now = new Date();
|
|
61
61
|
let current_date = new Date();
|
|
62
62
|
let filter_date = undefined;
|
|
@@ -206,4 +206,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
206
206
|
}], descriptionStop: [{
|
|
207
207
|
type: Input
|
|
208
208
|
}] } });
|
|
209
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFuZ2UtZGF0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Y2xvdWQtdWkvc3JjL2xpYi9fbW9kdWxlcy90Y2xvdWQtdWktZmlsdGVycy9jb21wb25lbnRzL3JhbmdlLWRhdGUvcmFuZ2UtZGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Y2xvdWQtdWkvc3JjL2xpYi9fbW9kdWxlcy90Y2xvdWQtdWktZmlsdGVycy9jb21wb25lbnRzL3JhbmdlLWRhdGUvcmFuZ2UtZGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQWUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7O0FBRS9FLE1BQU8sdUJBQXVCLEdBQVE7SUFDcEMsT0FBTyxFQUFFLGFBQWE7SUFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztJQUN6RCxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUE7QUFFRCxNQUFNLG1DQUFtQyxHQUFRO0lBQy9DLE9BQU8sRUFBRSxpQkFBaUI7SUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztJQUN6RCxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFFRixNQUFNLElBQUksR0FBRyxHQUFHLEVBQUU7QUFDbEIsQ0FBQyxDQUFDO0FBY0YsTUFBTSxPQUFPLDBCQUEwQjtJQW1CckM7UUFqQkEsV0FBTSxHQUFHLEVBQXFCLENBQUM7UUFFL0Isc0JBQWlCLEdBQVEsRUFBRSxDQUFDO1FBQzVCLDRCQUF1QixHQUFZLEtBQUss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MEJBQTBCLGdQQUYxQixDQUFDLG1DQUFtQyxFQUFFLHVCQUF1QixDQUFDLDBCQzVCM0UsNG1GQXFEUTs7NEZEdkJLLDBCQUEwQjtrQkFOdEMsU0FBUzsrQkFDRSxZQUFZLGFBR1gsQ0FBQyxtQ0FBbUMsRUFBRSx1QkFBdUIsQ0FBQzswRUFTL0QsUUFBUTtzQkFBakIsTUFBTTtnQkFFRSwyQkFBMkI7c0JBQW5DLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFFRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuY29uc3QgIENVU1RPTV9JTlBVVF9WQUxJREFUT1JTOiBhbnkgPSB7IFxyXG4gIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsIFxyXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRDbG91ZFVpUmFuZ2VEYXRlQ29tcG9uZW50KSxcclxuICBtdWx0aTogdHJ1ZVxyXG59XHJcblxyXG5jb25zdCBDVVNUT01fSU5QVVRfQ09OVFJPTF9WQUxVRV9BQ0NFU1NPUjogYW55ID0ge1xyXG4gIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRDbG91ZFVpUmFuZ2VEYXRlQ29tcG9uZW50KSxcclxuICBtdWx0aTogdHJ1ZVxyXG59O1xyXG5cclxuY29uc3Qgbm9vcCA9ICgpID0+IHtcclxufTtcclxuXHJcblxyXG5pbnRlcmZhY2UgSVJlc3VsdERhdGVUaW1le1xyXG4gIHN0YXJ0OiBhbnk7XHJcbiAgc3RvcDogYW55O1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3JhbmdlLWRhdGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9yYW5nZS1kYXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9yYW5nZS1kYXRlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbQ1VTVE9NX0lOUFVUX0NPTlRST0xfVkFMVUVfQUNDRVNTT1IsIENVU1RPTV9JTlBVVF9WQUxJREFUT1JTXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVENsb3VkVWlSYW5nZURhdGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICByZXN1bHQgPSB7fSBhcyBJUmVzdWx0RGF0ZVRpbWU7XHJcblxyXG4gIG9wdGlvbnNfZGF0ZV90aW1lOiBhbnkgPSBbXTtcclxuICB1c2VfdmFsaWRhdGlvbl9yZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBAT3V0cHV0KCkgb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPElSZXN1bHREYXRlVGltZT4oKTtcclxuXHJcbiAgQElucHV0KCkgZGVmYXVsdFZhbHVlUGVyaW9kU3RhcnRTdG9wOiBzdHJpbmcgPSAnJztcclxuICBASW5wdXQoKSByZXF1aXJlZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG5cclxuICBASW5wdXQoKSBkZXNjcmlwdGlvblN0YXJ0OiBzdHJpbmcgPSAnJztcclxuICBASW5wdXQoKSBkZXNjcmlwdGlvblN0b3A6IHN0cmluZyA9ICcnO1xyXG5cclxuICBtb2RlOiBzdHJpbmcgPSAnc2VsZWN0JztcclxuXHJcbiAgaXNWYWxpZCA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2V0T3B0aW9uc0RhdGVUaW1lKCk7XHJcbiAgfVxyXG5cclxuICBzZXRPcHRpb25zRGF0ZVRpbWUoKXtcclxuICAgIHRoaXMub3B0aW9uc19kYXRlX3RpbWUgPSBbXHJcbiAgICAgIHt2YWx1ZTonMS1sYXN0LXRpbWUnLCBkZXNjcmlwdGlvbjogJ8OabHRpbWEgMSBob3JhJ30sXHJcbiAgICAgIHt2YWx1ZTonMy1sYXN0LXRpbWUnLCBkZXNjcmlwdGlvbjogJ8OabHRpbWFzIDMgaG9yYXMnfSxcclxuICAgICAge3ZhbHVlOicyNC1sYXN0LXRpbWUnLCBkZXNjcmlwdGlvbjogJ8OabHRpbWFzIDI0IGhvcmFzJ30sXHJcblxyXG4gICAgICB7dmFsdWU6JzctZGF5cycsIGRlc2NyaXB0aW9uOiAnw5psdGltb3MgNyBkaWFzJ30sXHJcbiAgICAgIHt2YWx1ZTonMTUtZGF5cycsIGRlc2NyaXB0aW9uOiAnw5psdGltb3MgMTUgZGlhcyd9LFxyXG4gICAgICB7dmFsdWU6JzMwLWRheXMnLCBkZXNjcmlwdGlvbjogJ8OabHRpbW9zIDMwIGRpYXMnfSxcclxuICAgICAge3ZhbHVlOidjdXJyZW50LW1vbnRoJywgZGVzY3JpcHRpb246ICdNw6pzIGF0dWFsJ30sXHJcbiAgICAgIHt2YWx1ZTonY3VycmVudC15ZWFyJywgZGVzY3JpcHRpb246ICdBbm8gYXR1YWwnfVxyXG4gICAgXVxyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGlmKCB0aGlzLmRlZmF1bHRWYWx1ZVBlcmlvZFN0YXJ0U3RvcCAhPT0gJycgKXtcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlT3B0aW9uc0RhdGVUaW1lKCB0aGlzLmRlZmF1bHRWYWx1ZVBlcmlvZFN0YXJ0U3RvcCApO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIFxyXG4gIH1cclxuXHJcbiAgb25DaGFuZ2VPcHRpb25zRGF0ZVRpbWUoZXZlbnQ6IGFueSl7XHJcbiAgICB0aGlzLmlzVmFsaWQgPSBmYWxzZTtcclxuICAgIC8vIHRoaXMuZGVzY3JpcHRpb25fb3B0aW9uc19kYXRlX3RpbWUgPSAnJztcclxuICAgIC8vIHRoaXMudmFsdWVfb3B0aW9uc19kYXRlX3RpbWUgPSAnJztcclxuICAgIGV2ZW50ID0gKGV2ZW50LnZhbHVlKSA/IGV2ZW50LnZhbHVlIDogZXZlbnQ7XHJcblxyXG4gICAgbGV0IG5vdyA9IG5ldyBEYXRlKCk7XHJcbiAgICBsZXQgY3VycmVudF9kYXRlID0gbmV3IERhdGUoKTtcclxuICAgIGxldCBmaWx0ZXJfZGF0ZTogYW55ID0gdW5kZWZpbmVkO1xyXG5cclxuXHJcbiAgICBpZiggZXZlbnQgPT09ICcxLWxhc3QtdGltZScgKXtcclxuICAgICAgZmlsdGVyX2RhdGUgPSBuZXcgRGF0ZShjdXJyZW50X2RhdGUuZ2V0VGltZSgpIC0gMSAqIDYwICogNjAgKiAxMDAwKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiggZXZlbnQgPT09ICczLWxhc3QtdGltZScgKXtcclxuICAgICAgZmlsdGVyX2RhdGUgPSBuZXcgRGF0ZShjdXJyZW50X2RhdGUuZ2V0VGltZSgpIC0gMyAqIDYwICogNjAgKiAxMDAwKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiggZXZlbnQgPT09ICcyNC1sYXN0LXRpbWUnICl7XHJcbiAgICAgIGZpbHRlcl9kYXRlID0gbmV3IERhdGUoY3VycmVudF9kYXRlLmdldFRpbWUoKSAtIDI0ICogNjAgKiA2MCAqIDEwMDApO1xyXG4gICAgfVxyXG5cclxuICAgIGlmKCBldmVudCA9PT0gJzctZGF5cycgKXtcclxuICAgICAgZmlsdGVyX2RhdGUgPSBuZXcgRGF0ZSggKG5ldyBEYXRlKGN1cnJlbnRfZGF0ZSkpLnNldERhdGUoIG5vdy5nZXREYXRlKCkgLSA3ICkgKTsgIFxyXG4gICAgICBmaWx0ZXJfZGF0ZSA9IG5ldyBEYXRlKCAoZmlsdGVyX2RhdGUpLnNldFNlY29uZHMoMCkgKTsgICAgICBcclxuICAgIH1cclxuXHJcbiAgICBpZiggZXZlbnQgPT09ICcxNS1kYXlzJyApe1xyXG4gICAgICBmaWx0ZXJfZGF0ZSA9IG5ldyBEYXRlKCAobmV3IERhdGUoY3VycmVudF9kYXRlKSkuc2V0RGF0ZSggbm93LmdldERhdGUoKSAtIDE1ICkgKTtcclxuICAgICAgZmlsdGVyX2RhdGUgPSBuZXcgRGF0ZSggKGZpbHRlcl9kYXRlKS5zZXRTZWNvbmRzKDApICk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYoIGV2ZW50ID09PSAnMzAtZGF5cycgKXtcclxuICAgICAgZmlsdGVyX2RhdGUgPSBuZXcgRGF0ZSggKG5ldyBEYXRlKGN1cnJlbnRfZGF0ZSkpLnNldERhdGUoIG5vdy5nZXREYXRlKCkgLSAzMCApICk7XHJcbiAgICAgIGZpbHRlcl9kYXRlID0gbmV3IERhdGUoIChmaWx0ZXJfZGF0ZSkuc2V0U2Vjb25kcygwKSApO1xyXG4gICAgfVxyXG5cclxuICAgIGlmKCBldmVudCA9PT0gJ2N1cnJlbnQtbW9udGgnICl7XHJcbiAgICAgIGZpbHRlcl9kYXRlID0gbmV3IERhdGUobm93LmdldEZ1bGxZZWFyKCksIG5vdy5nZXRNb250aCgpLCAxKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiggZXZlbnQgPT09ICdjdXJyZW50LXllYXInICl7XHJcbiAgICAgIGZpbHRlcl9kYXRlID0gbmV3IERhdGUobm93LmdldEZ1bGxZZWFyKCksIDAsIDEpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmKGZpbHRlcl9kYXRlKXsgICAgICAgIFxyXG4gICAgICB0aGlzLnJlc3VsdCA9IHtcclxuICAgICAgICBzdGFydDogdGhpcy5nZXRUcmFuc2Zvcm1EYXRlKGZpbHRlcl9kYXRlKSxcclxuICAgICAgICBzdG9wOiB0aGlzLmdldFRyYW5zZm9ybURhdGUobm93KVxyXG4gICAgICB9IGFzIElSZXN1bHREYXRlVGltZTtcclxuXHJcbiAgICAgIHRoaXMub25DaGFuZ2UuZW1pdCh0aGlzLnJlc3VsdCk7XHJcbiAgICAgIHRoaXMuaXNWYWxpZCA9IHRydWU7XHJcbiAgICB9ZWxzZXtcclxuICAgICAgIFxyXG4gICAgICB0aGlzLnJlc3VsdCA9IHt9IGFzIElSZXN1bHREYXRlVGltZTtcclxuICAgICAgdGhpcy5vbkNoYW5nZS5lbWl0KHRoaXMucmVzdWx0KTtcclxuICAgICAgdGhpcy5pc1ZhbGlkID0gZmFsc2U7XHJcbiAgICAgIFxyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIGdldFRyYW5zZm9ybURhdGUoZHQ6IGFueSl7XHJcbiAgICAvL3JldHVybiAoZHQpLnRvTG9jYWxlU3RyaW5nKCdwdC1CUicpO1xyXG4gICAgcmV0dXJuIGR0O1xyXG4gICAgLypcclxuICAgIGNvbnN0IGFubyA9IGR0LmdldEZ1bGxZZWFyKCk7XHJcbiAgICBjb25zdCBtZXMgPSBkdC5nZXRNb250aCgpO1xyXG4gICAgY29uc3QgZGlhID0gZHQuZ2V0RGF0ZSgpO1xyXG4gICAgY29uc3QgaG9yYXMgPSBkdC5nZXRIb3VycygpO1xyXG4gICAgY29uc3QgbWludXRvcyA9IGR0LmdldE1pbnV0ZXMoKTtcclxuICAgIHJldHVybiBuZXcgRGF0ZShEYXRlLlVUQyhhbm8sIG1lcywgZGlhLCBob3JhcywgbWludXRvcykpO1xyXG4gICAgKi9cclxuICB9XHJcblxyXG4gIG9uQ2hhbmdlU3RhcnREYXRlVGltZShldmVudDogYW55KXtcclxuICAgIHRoaXMuaXNWYWxpZCA9IGZhbHNlO1xyXG4gICAgaWYoIHRoaXMucmVzdWx0ICYmIHRoaXMucmVzdWx0LnN0YXJ0KXtcclxuICAgICAgdGhpcy5yZXN1bHQuc3RhcnQgPSBldmVudC52YWx1ZSA9IHRoaXMuZ2V0VHJhbnNmb3JtRGF0ZShldmVudC52YWx1ZSk7XHJcbiAgICAgIHRoaXMub25DaGFuZ2UuZW1pdCh0aGlzLnJlc3VsdCk7XHJcbiAgICAgIHRoaXMuaXNWYWxpZCA9IHRydWU7XHJcbiAgICB9ZWxzZXtcclxuICAgICAgdGhpcy5yZXN1bHQgPSB7fSBhcyBJUmVzdWx0RGF0ZVRpbWU7XHJcbiAgICAgIHRoaXMub25DaGFuZ2UuZW1pdCh0aGlzLnJlc3VsdCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkNoYW5nZVN0b3BEYXRlVGltZShldmVudDogYW55KXtcclxuICAgIHRoaXMuaXNWYWxpZCA9IGZhbHNlO1xyXG4gICAgaWYoIHRoaXMucmVzdWx0ICYmIHRoaXMucmVzdWx0LnN0b3AgKXtcclxuICAgICAgdGhpcy5yZXN1bHQuc3RvcCA9IGV2ZW50LnZhbHVlID0gdGhpcy5nZXRUcmFuc2Zvcm1EYXRlKGV2ZW50LnZhbHVlKTtcclxuICAgICAgdGhpcy5vbkNoYW5nZS5lbWl0KHRoaXMucmVzdWx0KTtcclxuICAgICAgdGhpcy5pc1ZhbGlkID0gdHJ1ZTtcclxuICAgIH1lbHNle1xyXG4gICAgICB0aGlzLnJlc3VsdCA9IHt9IGFzIElSZXN1bHREYXRlVGltZTtcclxuICAgICAgdGhpcy5vbkNoYW5nZS5lbWl0KHRoaXMucmVzdWx0KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRvZ2dsZSgpe1xyXG4gICAgY29uc3QgbW9kZSA9ICggYCR7dGhpcy5tb2RlfWAgPT09ICdzZWxlY3QnICkgPyAnZGF0ZXBpY2tlcnMnIDogJ3NlbGVjdCc7XHJcbiAgICB0aGlzLmRlZmF1bHRWYWx1ZVBlcmlvZFN0YXJ0U3RvcCA9ICcnO1xyXG4gICAgdGhpcy5pc1ZhbGlkID0gZmFsc2U7XHJcbiAgICB0aGlzLnJlc3VsdCA9IHt9IGFzIElSZXN1bHREYXRlVGltZTtcclxuICAgIHRoaXMubW9kZSA9IG1vZGU7XHJcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQodGhpcy5yZXN1bHQpO1xyXG4gIH1cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuICBpbm5lclZhbHVlOiBhbnkgfCB1bmRlZmluZWQ7XHJcbiAgLy9QbGFjZWhvbGRlcnMgZm9yIHRoZSBjYWxsYmFja3Mgd2hpY2ggYXJlIGxhdGVyIHByb3ZpZGVzZFxyXG4gIC8vYnkgdGhlIENvbnRyb2wgVmFsdWUgQWNjZXNzb3JcclxuICBwcml2YXRlIG9uVG91Y2hlZENhbGxiYWNrOiAoKSA9PiB2b2lkID0gbm9vcDtcclxuICBwcml2YXRlIG9uQ2hhbmdlQ2FsbGJhY2s6IChfOiBhbnkpID0+IHZvaWQgPSBub29wO1xyXG5cclxuICAvL2dldCBhY2Nlc3NvclxyXG4gIGdldCB2YWx1ZSgpOiBhbnkge1xyXG4gICAgICByZXR1cm4gdGhpcy5pbm5lclZhbHVlO1xyXG4gIH07XHJcblxyXG4gIC8vc2V0IGFjY2Vzc29yIGluY2x1ZGluZyBjYWxsIHRoZSBvbmNoYW5nZSBjYWxsYmFja1xyXG4gIHNldCB2YWx1ZSh2OiBhbnkpIHtcclxuICAgIGlmICh2ICE9PSB0aGlzLmlubmVyVmFsdWUpIHtcclxuICAgICAgdGhpcy5pbm5lclZhbHVlID0gdjsgICAgICBcclxuICAgICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrKHYpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy9TZXQgdG91Y2hlZCBvbiBibHVyXHJcbiAgb25CbHVyKCkge1xyXG4gICAgdGhpcy5vblRvdWNoZWRDYWxsYmFjaygpO1xyXG4gIH1cclxuXHJcbiAgLy9Gcm9tIENvbnRyb2xWYWx1ZUFjY2Vzc29yIGludGVyZmFjZVxyXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSkge1xyXG4gICAgaWYgKHZhbHVlICE9PSB0aGlzLmlubmVyVmFsdWUpIHtcclxuICAgICAgdGhpcy5pbm5lclZhbHVlID0gdmFsdWU7XHJcbiAgICAgIC8vdGhpcy50b1NldERlZmF1bHQodmFsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy9Gcm9tIENvbnRyb2xWYWx1ZUFjY2Vzc29yIGludGVyZmFjZVxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xyXG4gICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrID0gZm47XHJcbiAgfVxyXG5cclxuICAvL0Zyb20gQ29udHJvbFZhbHVlQWNjZXNzb3IgaW50ZXJmYWNlXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xyXG4gICAgdGhpcy5vblRvdWNoZWRDYWxsYmFjayA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHZhbGlkYXRlKGM6IEZvcm1Db250cm9sKTogYW55IHtcclxuICAgIGlmKCBjICYmICggdHlwZW9mIHRoaXMucmVxdWlyZWQgIT09ICd1bmRlZmluZWQnICkgKXtcclxuICAgICAgdGhpcy51c2VfdmFsaWRhdGlvbl9yZXF1aXJlZCA9IHRydWU7XHJcbiAgICAgIHJldHVybiAodGhpcy5jaGVja19pc192YWxpZCgpKSA/IG51bGwgOiAncmVxdWlyZWQnO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICBjaGVja19pc192YWxpZCgpOiBib29sZWFue1xyXG4gICAgaWYoIHRoaXMucmVzdWx0ICYmIHRoaXMucmVzdWx0LnN0YXJ0ICYmIHRoaXMucmVzdWx0LnN0b3AgKXtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8dGFibGUgY2xhc3M9XCJ0Y2xvdWQtdWktZmlsdGVycy1yYW5nZS1kYXRlIGFyZWEtcmFuZ2UtZGF0ZVwiPlxyXG4gICAgPHRyPlxyXG5cclxuICAgICAgICA8dGQ+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJtb2RlID09PSAnc2VsZWN0J1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRlc2NyaXB0aW9uLXBlcmlvZFwiPlBlcsOtb2RvPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8c2VsZWN0IG5hbWU9XCJwZXJpb2RvXCIgY2xhc3M9XCJ0Yy1mb3JtLWNvbnRyb2xcIiAoY2hhbmdlKT1cIm9uQ2hhbmdlT3B0aW9uc0RhdGVUaW1lKCRldmVudC50YXJnZXQpXCIgWyhuZ01vZGVsKV09XCJkZWZhdWx0VmFsdWVQZXJpb2RTdGFydFN0b3BcIiAgPlxyXG4gICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJcIj48L29wdGlvbj4gXHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBvcHRpb25zX2RhdGVfdGltZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIFt2YWx1ZV09XCJpdGVtLnZhbHVlXCI+e3sgaXRlbS5kZXNjcmlwdGlvbiB9fTwvb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPC9zZWxlY3Q+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibW9kZSA9PT0gJ2RhdGVwaWNrZXJzJ1wiPlxyXG5cclxuICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cImFyZWEtcmFuZ2UtZGF0ZXBpY2tlcnNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkZXNjcmlwdGlvbi1zdGFydFwiPnt7IGRlc2NyaXB0aW9uU3RhcnQgfX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0Y2xvdWQtdWktZGF0ZXBpY2tlci10aW1lIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNfaW5wdXRfc3RhcnQgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJyZXN1bHQuc3RhcnRcIiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwiaW5wdXRfc3RhcnRcIiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZXZlbnRDaGFuZ2UpPVwib25DaGFuZ2VTdGFydERhdGVUaW1lKF9pbnB1dF9zdGFydClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGNsb3VkLXVpLWRhdGVwaWNrZXItdGltZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRlc2NyaXB0aW9uLXN0b3BcIj57eyBkZXNjcmlwdGlvblN0b3AgfX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0Y2xvdWQtdWktZGF0ZXBpY2tlci10aW1lIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNfaW5wdXRfc3RvcFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwicmVzdWx0LnN0b3BcIiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwiaW5wdXRfc3RvcFwiIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChldmVudENoYW5nZSk9XCJvbkNoYW5nZVN0b3BEYXRlVGltZShfaW5wdXRfc3RvcClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGNsb3VkLXVpLWRhdGVwaWNrZXItdGltZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgPC90YWJsZT5cclxuXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvdGQ+XHJcblxyXG4gICAgICAgIDx0ZD5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0bi1tb2RlLXJhbmdlLWRhdGVcIiBbY2xhc3MuYWN0aXZlXT1cIm1vZGUgPT09ICdzZWxlY3QnXCIgKGNsaWNrKT1cInRvZ2dsZSgpXCIgdHlwZT1cImJ1dHRvblwiPlxyXG5cclxuICAgICAgICAgICAgICAgIDxpICpuZ0lmPVwibW9kZSA9PT0gJ3NlbGVjdCdcIiBjbGFzcz1cImZhciBmYS1jYWxlbmRhci1hbHRcIiB0aXRsZT1cIkFsdGVyYXIgcGFyYSBjYWxlbmTDoXJpb1wiPjwvaT5cclxuICAgICAgICAgICAgICAgIDxpICpuZ0lmPVwibW9kZSAhPT0gJ3NlbGVjdCdcIiBjbGFzcz1cImZhcyBmYS1jYWxlbmRhci13ZWVrXCIgdGl0bGU9XCJTZWxlY2lvbmFyIHBlcsOtb2RvXCI+PC9pPlxyXG5cclxuICAgICAgICAgICAgICAgIDwhLS0gPGRpdiAqbmdJZj1cIm1vZGUgPT09ICdzZWxlY3QnXCI+RXhpYmlyPGJyPkNhbGVuZMOhcmlvPC9kaXY+IC0tPlxyXG4gICAgICAgICAgICAgICAgPCEtLSA8ZGl2ICpuZ0lmPVwibW9kZSAhPT0gJ3NlbGVjdCdcIj5FeGliaXI8YnI+UGVyw61vZG88L2Rpdj4gLS0+XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDwvdGQ+XHJcblxyXG4gICAgPC90cj5cclxuPC90YWJsZT4iXX0=
|
|
209
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFuZ2UtZGF0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Y2xvdWQtdWkvc3JjL2xpYi9fbW9kdWxlcy90Y2xvdWQtdWktZmlsdGVycy9jb21wb25lbnRzL3JhbmdlLWRhdGUvcmFuZ2UtZGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Y2xvdWQtdWkvc3JjL2xpYi9fbW9kdWxlcy90Y2xvdWQtdWktZmlsdGVycy9jb21wb25lbnRzL3JhbmdlLWRhdGUvcmFuZ2UtZGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQWUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7O0FBRS9FLE1BQU8sdUJBQXVCLEdBQVE7SUFDcEMsT0FBTyxFQUFFLGFBQWE7SUFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztJQUN6RCxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUE7QUFFRCxNQUFNLG1DQUFtQyxHQUFRO0lBQy9DLE9BQU8sRUFBRSxpQkFBaUI7SUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztJQUN6RCxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFFRixNQUFNLElBQUksR0FBRyxHQUFHLEVBQUU7QUFDbEIsQ0FBQyxDQUFDO0FBY0YsTUFBTSxPQUFPLDBCQUEwQjtJQW1CckM7UUFqQkEsV0FBTSxHQUFHLEVBQXFCLENBQUM7UUFFL0Isc0JBQWlCLEdBQVEsRUFBRSxDQUFDO1FBQzVCLDRCQUF1QixHQUFZLEtBQUss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QUNmLENBQUM7K0dBclBVLDBCQUEwQjttR0FBMUIsMEJBQTBCLGdQQUYxQixDQUFDLG1DQUFtQyxFQUFFLHVCQUF1QixDQUFDLDBCQzVCM0UsNG1GQXFEUTs7NEZEdkJLLDBCQUEwQjtrQkFOdEMsU0FBUzsrQkFDRSxZQUFZLGFBR1gsQ0FBQyxtQ0FBbUMsRUFBRSx1QkFBdUIsQ0FBQzswRUFTL0QsUUFBUTtzQkFBakIsTUFBTTtnQkFFRSwyQkFBMkI7c0JBQW5DLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFFRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuY29uc3QgIENVU1RPTV9JTlBVVF9WQUxJREFUT1JTOiBhbnkgPSB7IFxyXG4gIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsIFxyXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRDbG91ZFVpUmFuZ2VEYXRlQ29tcG9uZW50KSxcclxuICBtdWx0aTogdHJ1ZVxyXG59XHJcblxyXG5jb25zdCBDVVNUT01fSU5QVVRfQ09OVFJPTF9WQUxVRV9BQ0NFU1NPUjogYW55ID0ge1xyXG4gIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRDbG91ZFVpUmFuZ2VEYXRlQ29tcG9uZW50KSxcclxuICBtdWx0aTogdHJ1ZVxyXG59O1xyXG5cclxuY29uc3Qgbm9vcCA9ICgpID0+IHtcclxufTtcclxuXHJcblxyXG5pbnRlcmZhY2UgSVJlc3VsdERhdGVUaW1le1xyXG4gIHN0YXJ0OiBhbnk7XHJcbiAgc3RvcDogYW55O1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3JhbmdlLWRhdGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9yYW5nZS1kYXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9yYW5nZS1kYXRlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbQ1VTVE9NX0lOUFVUX0NPTlRST0xfVkFMVUVfQUNDRVNTT1IsIENVU1RPTV9JTlBVVF9WQUxJREFUT1JTXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVENsb3VkVWlSYW5nZURhdGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICByZXN1bHQgPSB7fSBhcyBJUmVzdWx0RGF0ZVRpbWU7XHJcblxyXG4gIG9wdGlvbnNfZGF0ZV90aW1lOiBhbnkgPSBbXTtcclxuICB1c2VfdmFsaWRhdGlvbl9yZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBAT3V0cHV0KCkgb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPElSZXN1bHREYXRlVGltZT4oKTtcclxuXHJcbiAgQElucHV0KCkgZGVmYXVsdFZhbHVlUGVyaW9kU3RhcnRTdG9wOiBzdHJpbmcgPSAnJztcclxuICBASW5wdXQoKSByZXF1aXJlZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG5cclxuICBASW5wdXQoKSBkZXNjcmlwdGlvblN0YXJ0OiBzdHJpbmcgPSAnJztcclxuICBASW5wdXQoKSBkZXNjcmlwdGlvblN0b3A6IHN0cmluZyA9ICcnO1xyXG5cclxuICBtb2RlOiBzdHJpbmcgPSAnc2VsZWN0JztcclxuXHJcbiAgaXNWYWxpZCA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2V0T3B0aW9uc0RhdGVUaW1lKCk7XHJcbiAgfVxyXG5cclxuICBzZXRPcHRpb25zRGF0ZVRpbWUoKXtcclxuICAgIHRoaXMub3B0aW9uc19kYXRlX3RpbWUgPSBbXHJcbiAgICAgIHt2YWx1ZTonMS1sYXN0LXRpbWUnLCBkZXNjcmlwdGlvbjogJ8OabHRpbWEgMSBob3JhJ30sXHJcbiAgICAgIHt2YWx1ZTonMy1sYXN0LXRpbWUnLCBkZXNjcmlwdGlvbjogJ8OabHRpbWFzIDMgaG9yYXMnfSxcclxuICAgICAge3ZhbHVlOicyNC1sYXN0LXRpbWUnLCBkZXNjcmlwdGlvbjogJ8OabHRpbWFzIDI0IGhvcmFzJ30sXHJcblxyXG4gICAgICB7dmFsdWU6JzctZGF5cycsIGRlc2NyaXB0aW9uOiAnw5psdGltb3MgNyBkaWFzJ30sXHJcbiAgICAgIHt2YWx1ZTonMTUtZGF5cycsIGRlc2NyaXB0aW9uOiAnw5psdGltb3MgMTUgZGlhcyd9LFxyXG4gICAgICB7dmFsdWU6JzMwLWRheXMnLCBkZXNjcmlwdGlvbjogJ8OabHRpbW9zIDMwIGRpYXMnfSxcclxuICAgICAge3ZhbHVlOidjdXJyZW50LW1vbnRoJywgZGVzY3JpcHRpb246ICdNw6pzIGF0dWFsJ30sXHJcbiAgICAgIHt2YWx1ZTonY3VycmVudC15ZWFyJywgZGVzY3JpcHRpb246ICdBbm8gYXR1YWwnfVxyXG4gICAgXVxyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGlmKCB0aGlzLmRlZmF1bHRWYWx1ZVBlcmlvZFN0YXJ0U3RvcCAhPT0gJycgKXtcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlT3B0aW9uc0RhdGVUaW1lKCB0aGlzLmRlZmF1bHRWYWx1ZVBlcmlvZFN0YXJ0U3RvcCApO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIFxyXG4gIH1cclxuXHJcbiAgb25DaGFuZ2VPcHRpb25zRGF0ZVRpbWUoZXZlbnQ/OiBhbnkpe1xyXG4gICAgdGhpcy5pc1ZhbGlkID0gZmFsc2U7XHJcbiAgICAvLyB0aGlzLmRlc2NyaXB0aW9uX29wdGlvbnNfZGF0ZV90aW1lID0gJyc7XHJcbiAgICAvLyB0aGlzLnZhbHVlX29wdGlvbnNfZGF0ZV90aW1lID0gJyc7XHJcbiAgICBldmVudCA9IChldmVudCAmJiBldmVudC52YWx1ZSkgPyBgJHtldmVudC52YWx1ZX1gIDogYCR7ZXZlbnR9YDtcclxuXHJcbiAgICBsZXQgbm93ID0gbmV3IERhdGUoKTtcclxuICAgIGxldCBjdXJyZW50X2RhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgbGV0IGZpbHRlcl9kYXRlOiBhbnkgPSB1bmRlZmluZWQ7XHJcblxyXG5cclxuICAgIGlmKCBldmVudCA9PT0gJzEtbGFzdC10aW1lJyApe1xyXG4gICAgICBmaWx0ZXJfZGF0ZSA9IG5ldyBEYXRlKGN1cnJlbnRfZGF0ZS5nZXRUaW1lKCkgLSAxICogNjAgKiA2MCAqIDEwMDApO1xyXG4gICAgfVxyXG5cclxuICAgIGlmKCBldmVudCA9PT0gJzMtbGFzdC10aW1lJyApe1xyXG4gICAgICBmaWx0ZXJfZGF0ZSA9IG5ldyBEYXRlKGN1cnJlbnRfZGF0ZS5nZXRUaW1lKCkgLSAzICogNjAgKiA2MCAqIDEwMDApO1xyXG4gICAgfVxyXG5cclxuICAgIGlmKCBldmVudCA9PT0gJzI0LWxhc3QtdGltZScgKXtcclxuICAgICAgZmlsdGVyX2RhdGUgPSBuZXcgRGF0ZShjdXJyZW50X2RhdGUuZ2V0VGltZSgpIC0gMjQgKiA2MCAqIDYwICogMTAwMCk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYoIGV2ZW50ID09PSAnNy1kYXlzJyApe1xyXG4gICAgICBmaWx0ZXJfZGF0ZSA9IG5ldyBEYXRlKCAobmV3IERhdGUoY3VycmVudF9kYXRlKSkuc2V0RGF0ZSggbm93LmdldERhdGUoKSAtIDcgKSApOyAgXHJcbiAgICAgIGZpbHRlcl9kYXRlID0gbmV3IERhdGUoIChmaWx0ZXJfZGF0ZSkuc2V0U2Vjb25kcygwKSApOyAgICAgIFxyXG4gICAgfVxyXG5cclxuICAgIGlmKCBldmVudCA9PT0gJzE1LWRheXMnICl7XHJcbiAgICAgIGZpbHRlcl9kYXRlID0gbmV3IERhdGUoIChuZXcgRGF0ZShjdXJyZW50X2RhdGUpKS5zZXREYXRlKCBub3cuZ2V0RGF0ZSgpIC0gMTUgKSApO1xyXG4gICAgICBmaWx0ZXJfZGF0ZSA9IG5ldyBEYXRlKCAoZmlsdGVyX2RhdGUpLnNldFNlY29uZHMoMCkgKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiggZXZlbnQgPT09ICczMC1kYXlzJyApe1xyXG4gICAgICBmaWx0ZXJfZGF0ZSA9IG5ldyBEYXRlKCAobmV3IERhdGUoY3VycmVudF9kYXRlKSkuc2V0RGF0ZSggbm93LmdldERhdGUoKSAtIDMwICkgKTtcclxuICAgICAgZmlsdGVyX2RhdGUgPSBuZXcgRGF0ZSggKGZpbHRlcl9kYXRlKS5zZXRTZWNvbmRzKDApICk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYoIGV2ZW50ID09PSAnY3VycmVudC1tb250aCcgKXtcclxuICAgICAgZmlsdGVyX2RhdGUgPSBuZXcgRGF0ZShub3cuZ2V0RnVsbFllYXIoKSwgbm93LmdldE1vbnRoKCksIDEpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmKCBldmVudCA9PT0gJ2N1cnJlbnQteWVhcicgKXtcclxuICAgICAgZmlsdGVyX2RhdGUgPSBuZXcgRGF0ZShub3cuZ2V0RnVsbFllYXIoKSwgMCwgMSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYoZmlsdGVyX2RhdGUpeyAgICAgICAgXHJcbiAgICAgIHRoaXMucmVzdWx0ID0ge1xyXG4gICAgICAgIHN0YXJ0OiB0aGlzLmdldFRyYW5zZm9ybURhdGUoZmlsdGVyX2RhdGUpLFxyXG4gICAgICAgIHN0b3A6IHRoaXMuZ2V0VHJhbnNmb3JtRGF0ZShub3cpXHJcbiAgICAgIH0gYXMgSVJlc3VsdERhdGVUaW1lO1xyXG5cclxuICAgICAgdGhpcy5vbkNoYW5nZS5lbWl0KHRoaXMucmVzdWx0KTtcclxuICAgICAgdGhpcy5pc1ZhbGlkID0gdHJ1ZTtcclxuICAgIH1lbHNle1xyXG4gICAgICAgXHJcbiAgICAgIHRoaXMucmVzdWx0ID0ge30gYXMgSVJlc3VsdERhdGVUaW1lO1xyXG4gICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQodGhpcy5yZXN1bHQpO1xyXG4gICAgICB0aGlzLmlzVmFsaWQgPSBmYWxzZTtcclxuICAgICAgXHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgZ2V0VHJhbnNmb3JtRGF0ZShkdDogYW55KXtcclxuICAgIC8vcmV0dXJuIChkdCkudG9Mb2NhbGVTdHJpbmcoJ3B0LUJSJyk7XHJcbiAgICByZXR1cm4gZHQ7XHJcbiAgICAvKlxyXG4gICAgY29uc3QgYW5vID0gZHQuZ2V0RnVsbFllYXIoKTtcclxuICAgIGNvbnN0IG1lcyA9IGR0LmdldE1vbnRoKCk7XHJcbiAgICBjb25zdCBkaWEgPSBkdC5nZXREYXRlKCk7XHJcbiAgICBjb25zdCBob3JhcyA9IGR0LmdldEhvdXJzKCk7XHJcbiAgICBjb25zdCBtaW51dG9zID0gZHQuZ2V0TWludXRlcygpO1xyXG4gICAgcmV0dXJuIG5ldyBEYXRlKERhdGUuVVRDKGFubywgbWVzLCBkaWEsIGhvcmFzLCBtaW51dG9zKSk7XHJcbiAgICAqL1xyXG4gIH1cclxuXHJcbiAgb25DaGFuZ2VTdGFydERhdGVUaW1lKGV2ZW50OiBhbnkpe1xyXG4gICAgdGhpcy5pc1ZhbGlkID0gZmFsc2U7XHJcbiAgICBpZiggdGhpcy5yZXN1bHQgJiYgdGhpcy5yZXN1bHQuc3RhcnQpe1xyXG4gICAgICB0aGlzLnJlc3VsdC5zdGFydCA9IGV2ZW50LnZhbHVlID0gdGhpcy5nZXRUcmFuc2Zvcm1EYXRlKGV2ZW50LnZhbHVlKTtcclxuICAgICAgdGhpcy5vbkNoYW5nZS5lbWl0KHRoaXMucmVzdWx0KTtcclxuICAgICAgdGhpcy5pc1ZhbGlkID0gdHJ1ZTtcclxuICAgIH1lbHNle1xyXG4gICAgICB0aGlzLnJlc3VsdCA9IHt9IGFzIElSZXN1bHREYXRlVGltZTtcclxuICAgICAgdGhpcy5vbkNoYW5nZS5lbWl0KHRoaXMucmVzdWx0KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uQ2hhbmdlU3RvcERhdGVUaW1lKGV2ZW50OiBhbnkpe1xyXG4gICAgdGhpcy5pc1ZhbGlkID0gZmFsc2U7XHJcbiAgICBpZiggdGhpcy5yZXN1bHQgJiYgdGhpcy5yZXN1bHQuc3RvcCApe1xyXG4gICAgICB0aGlzLnJlc3VsdC5zdG9wID0gZXZlbnQudmFsdWUgPSB0aGlzLmdldFRyYW5zZm9ybURhdGUoZXZlbnQudmFsdWUpO1xyXG4gICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQodGhpcy5yZXN1bHQpO1xyXG4gICAgICB0aGlzLmlzVmFsaWQgPSB0cnVlO1xyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMucmVzdWx0ID0ge30gYXMgSVJlc3VsdERhdGVUaW1lO1xyXG4gICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQodGhpcy5yZXN1bHQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdG9nZ2xlKCl7XHJcbiAgICBjb25zdCBtb2RlID0gKCBgJHt0aGlzLm1vZGV9YCA9PT0gJ3NlbGVjdCcgKSA/ICdkYXRlcGlja2VycycgOiAnc2VsZWN0JztcclxuICAgIHRoaXMuZGVmYXVsdFZhbHVlUGVyaW9kU3RhcnRTdG9wID0gJyc7XHJcbiAgICB0aGlzLmlzVmFsaWQgPSBmYWxzZTtcclxuICAgIHRoaXMucmVzdWx0ID0ge30gYXMgSVJlc3VsdERhdGVUaW1lO1xyXG4gICAgdGhpcy5tb2RlID0gbW9kZTtcclxuICAgIHRoaXMub25DaGFuZ2UuZW1pdCh0aGlzLnJlc3VsdCk7XHJcbiAgfVxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG4gIGlubmVyVmFsdWU6IGFueSB8IHVuZGVmaW5lZDtcclxuICAvL1BsYWNlaG9sZGVycyBmb3IgdGhlIGNhbGxiYWNrcyB3aGljaCBhcmUgbGF0ZXIgcHJvdmlkZXNkXHJcbiAgLy9ieSB0aGUgQ29udHJvbCBWYWx1ZSBBY2Nlc3NvclxyXG4gIHByaXZhdGUgb25Ub3VjaGVkQ2FsbGJhY2s6ICgpID0+IHZvaWQgPSBub29wO1xyXG4gIHByaXZhdGUgb25DaGFuZ2VDYWxsYmFjazogKF86IGFueSkgPT4gdm9pZCA9IG5vb3A7XHJcblxyXG4gIC8vZ2V0IGFjY2Vzc29yXHJcbiAgZ2V0IHZhbHVlKCk6IGFueSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmlubmVyVmFsdWU7XHJcbiAgfTtcclxuXHJcbiAgLy9zZXQgYWNjZXNzb3IgaW5jbHVkaW5nIGNhbGwgdGhlIG9uY2hhbmdlIGNhbGxiYWNrXHJcbiAgc2V0IHZhbHVlKHY6IGFueSkge1xyXG4gICAgaWYgKHYgIT09IHRoaXMuaW5uZXJWYWx1ZSkge1xyXG4gICAgICB0aGlzLmlubmVyVmFsdWUgPSB2OyAgICAgIFxyXG4gICAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sodik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvL1NldCB0b3VjaGVkIG9uIGJsdXJcclxuICBvbkJsdXIoKSB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrKCk7XHJcbiAgfVxyXG5cclxuICAvL0Zyb20gQ29udHJvbFZhbHVlQWNjZXNzb3IgaW50ZXJmYWNlXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XHJcbiAgICBpZiAodmFsdWUgIT09IHRoaXMuaW5uZXJWYWx1ZSkge1xyXG4gICAgICB0aGlzLmlubmVyVmFsdWUgPSB2YWx1ZTtcclxuICAgICAgLy90aGlzLnRvU2V0RGVmYXVsdCh2YWx1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvL0Zyb20gQ29udHJvbFZhbHVlQWNjZXNzb3IgaW50ZXJmYWNlXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KSB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sgPSBmbjtcclxuICB9XHJcblxyXG4gIC8vRnJvbSBDb250cm9sVmFsdWVBY2Nlc3NvciBpbnRlcmZhY2VcclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrID0gZm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdmFsaWRhdGUoYzogRm9ybUNvbnRyb2wpOiBhbnkge1xyXG4gICAgaWYoIGMgJiYgKCB0eXBlb2YgdGhpcy5yZXF1aXJlZCAhPT0gJ3VuZGVmaW5lZCcgKSApe1xyXG4gICAgICB0aGlzLnVzZV92YWxpZGF0aW9uX3JlcXVpcmVkID0gdHJ1ZTtcclxuICAgICAgcmV0dXJuICh0aGlzLmNoZWNrX2lzX3ZhbGlkKCkpID8gbnVsbCA6ICdyZXF1aXJlZCc7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIGNoZWNrX2lzX3ZhbGlkKCk6IGJvb2xlYW57XHJcbiAgICBpZiggdGhpcy5yZXN1bHQgJiYgdGhpcy5yZXN1bHQuc3RhcnQgJiYgdGhpcy5yZXN1bHQuc3RvcCApe1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG59XHJcbiIsIjx0YWJsZSBjbGFzcz1cInRjbG91ZC11aS1maWx0ZXJzLXJhbmdlLWRhdGUgYXJlYS1yYW5nZS1kYXRlXCI+XHJcbiAgICA8dHI+XHJcblxyXG4gICAgICAgIDx0ZD5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm1vZGUgPT09ICdzZWxlY3QnXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGVzY3JpcHRpb24tcGVyaW9kXCI+UGVyw61vZG88L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxzZWxlY3QgbmFtZT1cInBlcmlvZG9cIiBjbGFzcz1cInRjLWZvcm0tY29udHJvbFwiIChjaGFuZ2UpPVwib25DaGFuZ2VPcHRpb25zRGF0ZVRpbWUoJGV2ZW50LnRhcmdldClcIiBbKG5nTW9kZWwpXT1cImRlZmF1bHRWYWx1ZVBlcmlvZFN0YXJ0U3RvcFwiICA+XHJcbiAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIlwiPjwvb3B0aW9uPiBcclxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIG9wdGlvbnNfZGF0ZV90aW1lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gW3ZhbHVlXT1cIml0ZW0udmFsdWVcIj57eyBpdGVtLmRlc2NyaXB0aW9uIH19PC9vcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8L3NlbGVjdD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJtb2RlID09PSAnZGF0ZXBpY2tlcnMnXCI+XHJcblxyXG4gICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPVwiYXJlYS1yYW5nZS1kYXRlcGlja2Vyc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRlc2NyaXB0aW9uLXN0YXJ0XCI+e3sgZGVzY3JpcHRpb25TdGFydCB9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRjbG91ZC11aS1kYXRlcGlja2VyLXRpbWUgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI19pbnB1dF9zdGFydCBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cInJlc3VsdC5zdGFydFwiIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJpbnB1dF9zdGFydFwiIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChldmVudENoYW5nZSk9XCJvbkNoYW5nZVN0YXJ0RGF0ZVRpbWUoX2lucHV0X3N0YXJ0KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90Y2xvdWQtdWktZGF0ZXBpY2tlci10aW1lPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGVzY3JpcHRpb24tc3RvcFwiPnt7IGRlc2NyaXB0aW9uU3RvcCB9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRjbG91ZC11aS1kYXRlcGlja2VyLXRpbWUgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI19pbnB1dF9zdG9wXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJyZXN1bHQuc3RvcFwiIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJpbnB1dF9zdG9wXCIgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGV2ZW50Q2hhbmdlKT1cIm9uQ2hhbmdlU3RvcERhdGVUaW1lKF9pbnB1dF9zdG9wKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90Y2xvdWQtdWktZGF0ZXBpY2tlci10aW1lPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICA8L3RhYmxlPlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC90ZD5cclxuXHJcbiAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuLW1vZGUtcmFuZ2UtZGF0ZVwiIFtjbGFzcy5hY3RpdmVdPVwibW9kZSA9PT0gJ3NlbGVjdCdcIiAoY2xpY2spPVwidG9nZ2xlKClcIiB0eXBlPVwiYnV0dG9uXCI+XHJcblxyXG4gICAgICAgICAgICAgICAgPGkgKm5nSWY9XCJtb2RlID09PSAnc2VsZWN0J1wiIGNsYXNzPVwiZmFyIGZhLWNhbGVuZGFyLWFsdFwiIHRpdGxlPVwiQWx0ZXJhciBwYXJhIGNhbGVuZMOhcmlvXCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgPGkgKm5nSWY9XCJtb2RlICE9PSAnc2VsZWN0J1wiIGNsYXNzPVwiZmFzIGZhLWNhbGVuZGFyLXdlZWtcIiB0aXRsZT1cIlNlbGVjaW9uYXIgcGVyw61vZG9cIj48L2k+XHJcblxyXG4gICAgICAgICAgICAgICAgPCEtLSA8ZGl2ICpuZ0lmPVwibW9kZSA9PT0gJ3NlbGVjdCdcIj5FeGliaXI8YnI+Q2FsZW5kw6FyaW88L2Rpdj4gLS0+XHJcbiAgICAgICAgICAgICAgICA8IS0tIDxkaXYgKm5nSWY9XCJtb2RlICE9PSAnc2VsZWN0J1wiPkV4aWJpcjxicj5QZXLDrW9kbzwvZGl2PiAtLT5cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPC90ZD5cclxuXHJcbiAgICA8L3RyPlxyXG48L3RhYmxlPiJdfQ==
|