@coreui/angular-pro 4.2.39 → 4.2.41

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.
Files changed (32) hide show
  1. package/esm2020/lib/calendar/calendar.service.mjs +3 -5
  2. package/esm2020/lib/calendar/calendar.utils.mjs +9 -6
  3. package/esm2020/lib/date-picker/date-picker.component.mjs +5 -4
  4. package/esm2020/lib/date-picker/public_api.mjs +1 -1
  5. package/esm2020/lib/date-range-picker/date-range-picker/custom-range-key.pipe.mjs +16 -0
  6. package/esm2020/lib/date-range-picker/date-range-picker/date-range-picker.component.mjs +51 -26
  7. package/esm2020/lib/date-range-picker/date-range-picker.module.mjs +10 -5
  8. package/esm2020/lib/date-range-picker/date-range-picker.type.mjs +2 -0
  9. package/esm2020/lib/date-range-picker/public_api.mjs +2 -1
  10. package/esm2020/lib/form/form-check/form-check-input.directive.mjs +19 -6
  11. package/esm2020/lib/multi-select/multi-select/multi-select.component.mjs +3 -3
  12. package/esm2020/lib/smart-table/smart-table/smart-table.component.mjs +31 -17
  13. package/esm2020/lib/smart-table/smart-table-head/smart-table-head.component.mjs +35 -3
  14. package/esm2020/lib/smart-table/smart-table.type.mjs +1 -1
  15. package/esm2020/lib/time-picker/time.utils.mjs +13 -13
  16. package/fesm2015/coreui-angular-pro.mjs +305 -206
  17. package/fesm2015/coreui-angular-pro.mjs.map +1 -1
  18. package/fesm2020/coreui-angular-pro.mjs +301 -202
  19. package/fesm2020/coreui-angular-pro.mjs.map +1 -1
  20. package/lib/calendar/calendar.utils.d.ts +1 -1
  21. package/lib/date-picker/public_api.d.ts +0 -1
  22. package/lib/date-range-picker/date-range-picker/custom-range-key.pipe.d.ts +8 -0
  23. package/lib/date-range-picker/date-range-picker/date-range-picker.component.d.ts +9 -9
  24. package/lib/date-range-picker/date-range-picker.module.d.ts +10 -9
  25. package/lib/date-range-picker/date-range-picker.type.d.ts +4 -0
  26. package/lib/date-range-picker/public_api.d.ts +3 -1
  27. package/lib/form/form-check/form-check-input.directive.d.ts +3 -1
  28. package/lib/smart-table/smart-table/smart-table.component.d.ts +14 -11
  29. package/lib/smart-table/smart-table-head/smart-table-head.component.d.ts +11 -5
  30. package/lib/smart-table/smart-table.type.d.ts +6 -0
  31. package/lib/time-picker/time.utils.d.ts +11 -11
  32. package/package.json +4 -2
@@ -18,10 +18,14 @@ export class FormCheckInputDirective {
18
18
  * @type boolean
19
19
  */
20
20
  set indeterminate(value) {
21
- const newValue = coerceBooleanProperty(value);
22
- if (this._indeterminate !== newValue) {
23
- this._indeterminate = newValue;
24
- this.renderer.setProperty(this.hostElement.nativeElement, 'indeterminate', newValue);
21
+ const indeterminate = coerceBooleanProperty(value);
22
+ if (this._indeterminate !== indeterminate) {
23
+ this._indeterminate = indeterminate;
24
+ const htmlInputElement = this.hostElement.nativeElement;
25
+ if (indeterminate) {
26
+ this.renderer.setProperty(htmlInputElement, 'checked', false);
27
+ }
28
+ this.renderer.setProperty(htmlInputElement, 'indeterminate', indeterminate);
25
29
  }
26
30
  }
27
31
  ;
@@ -35,12 +39,19 @@ export class FormCheckInputDirective {
35
39
  'is-invalid': this.valid === false
36
40
  };
37
41
  }
42
+ set checked(value) {
43
+ const checked = coerceBooleanProperty(value);
44
+ const htmlInputElement = this.hostElement?.nativeElement;
45
+ if (htmlInputElement) {
46
+ this.renderer.setProperty(htmlInputElement, 'checked', checked);
47
+ }
48
+ }
38
49
  get checked() {
39
50
  return this.hostElement?.nativeElement?.checked;
40
51
  }
41
52
  }
42
53
  FormCheckInputDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FormCheckInputDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
43
- FormCheckInputDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: FormCheckInputDirective, selector: "input[cFormCheckInput]", inputs: { type: "type", indeterminate: "indeterminate", valid: "valid" }, host: { properties: { "attr.type": "this.type", "class": "this.hostClasses" } }, ngImport: i0 });
54
+ FormCheckInputDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: FormCheckInputDirective, selector: "input[cFormCheckInput]", inputs: { type: "type", indeterminate: "indeterminate", valid: "valid", checked: "checked" }, host: { properties: { "attr.type": "this.type", "class": "this.hostClasses" } }, ngImport: i0 });
44
55
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FormCheckInputDirective, decorators: [{
45
56
  type: Directive,
46
57
  args: [{
@@ -58,5 +69,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
58
69
  }], hostClasses: [{
59
70
  type: HostBinding,
60
71
  args: ['class']
72
+ }], checked: [{
73
+ type: Input
61
74
  }] } });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jaGVjay1pbnB1dC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL2Zvcm0vZm9ybS1jaGVjay9mb3JtLWNoZWNrLWlucHV0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFdBQVcsRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDckYsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQUs1RSxNQUFNLE9BQU8sdUJBQXVCO0lBZ0RsQyxZQUNVLFFBQW1CLEVBQ25CLFdBQXVCO1FBRHZCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUE5Q2pDOzs7O1dBSUc7UUFFTSxTQUFJLEdBQTJCLFVBQVUsQ0FBQztRQWlCM0MsbUJBQWMsR0FBRyxLQUFLLENBQUM7SUF3QjNCLENBQUM7SUF2Q0w7OztPQUdHO0lBQ0gsSUFDSSxhQUFhLENBQUMsS0FBYztRQUM5QixNQUFNLFFBQVEsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QyxJQUFJLElBQUksQ0FBQyxjQUFjLEtBQUssUUFBUSxFQUFFO1lBQ3BDLElBQUksQ0FBQyxjQUFjLEdBQUcsUUFBUSxDQUFDO1lBQy9CLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLGVBQWUsRUFBRSxRQUFRLENBQUMsQ0FBQztTQUN0RjtJQUNILENBQUM7SUFBQSxDQUFDO0lBQ0YsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQzdCLENBQUM7SUFTRCxJQUNJLFdBQVc7UUFDYixPQUFPO1lBQ0wsa0JBQWtCLEVBQUUsSUFBSTtZQUN4QixVQUFVLEVBQUUsSUFBSSxDQUFDLEtBQUssS0FBSyxJQUFJO1lBQy9CLFlBQVksRUFBRSxJQUFJLENBQUMsS0FBSyxLQUFLLEtBQUs7U0FDbkMsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsYUFBYSxFQUFFLE9BQU8sQ0FBQztJQUNsRCxDQUFDOztvSEE5Q1UsdUJBQXVCO3dHQUF2Qix1QkFBdUI7MkZBQXZCLHVCQUF1QjtrQkFIbkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsd0JBQXdCO2lCQUNuQzt5SEFXVSxJQUFJO3NCQURaLFdBQVc7dUJBQUMsV0FBVzs7c0JBQ3ZCLEtBQUs7Z0JBT0YsYUFBYTtzQkFEaEIsS0FBSztnQkFpQkcsS0FBSztzQkFBYixLQUFLO2dCQUdGLFdBQVc7c0JBRGQsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0QmluZGluZywgSW5wdXQsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdpbnB1dFtjRm9ybUNoZWNrSW5wdXRdJ1xufSlcbmV4cG9ydCBjbGFzcyBGb3JtQ2hlY2tJbnB1dERpcmVjdGl2ZSB7XG5cbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX2luZGV0ZXJtaW5hdGU6IEJvb2xlYW5JbnB1dDtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSB0eXBlIG9mIGNvbXBvbmVudC5cbiAgICogQHR5cGUgeydjaGVja2JveCcgfCAncmFkaW8nfVxuICAgKiBAZGVmYXVsdCAnY2hlY2tib3gnXG4gICAqL1xuICBASG9zdEJpbmRpbmcoJ2F0dHIudHlwZScpXG4gIEBJbnB1dCgpIHR5cGU6ICgnY2hlY2tib3gnIHwgJ3JhZGlvJykgPSAnY2hlY2tib3gnO1xuXG4gIC8qKlxuICAgKiBTZXQgY29tcG9uZW50IGluZGV0ZXJtaW5hdGUgc3RhdGUuXG4gICAqIEB0eXBlIGJvb2xlYW5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBpbmRldGVybWluYXRlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgY29uc3QgbmV3VmFsdWUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIGlmICh0aGlzLl9pbmRldGVybWluYXRlICE9PSBuZXdWYWx1ZSkge1xuICAgICAgdGhpcy5faW5kZXRlcm1pbmF0ZSA9IG5ld1ZhbHVlO1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdpbmRldGVybWluYXRlJywgbmV3VmFsdWUpO1xuICAgIH1cbiAgfTtcbiAgZ2V0IGluZGV0ZXJtaW5hdGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2luZGV0ZXJtaW5hdGU7XG4gIH1cbiAgcHJpdmF0ZSBfaW5kZXRlcm1pbmF0ZSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBTZXQgY29tcG9uZW50IHZhbGlkYXRpb24gc3RhdGUgdG8gdmFsaWQuXG4gICAqIEB0eXBlIGJvb2xlYW5cbiAgICovXG4gIEBJbnB1dCgpIHZhbGlkPzogYm9vbGVhbjtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IGhvc3RDbGFzc2VzKCk6IGFueSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICdmb3JtLWNoZWNrLWlucHV0JzogdHJ1ZSxcbiAgICAgICdpcy12YWxpZCc6IHRoaXMudmFsaWQgPT09IHRydWUsXG4gICAgICAnaXMtaW52YWxpZCc6IHRoaXMudmFsaWQgPT09IGZhbHNlXG4gICAgfTtcbiAgfVxuXG4gIGdldCBjaGVja2VkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmhvc3RFbGVtZW50Py5uYXRpdmVFbGVtZW50Py5jaGVja2VkO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgaG9zdEVsZW1lbnQ6IEVsZW1lbnRSZWZcbiAgKSB7IH1cblxufVxuIl19
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jaGVjay1pbnB1dC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL2Zvcm0vZm9ybS1jaGVjay9mb3JtLWNoZWNrLWlucHV0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFdBQVcsRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDckYsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQUs1RSxNQUFNLE9BQU8sdUJBQXVCO0lBZ0VsQyxZQUNVLFFBQW1CLEVBQ25CLFdBQXVCO1FBRHZCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUE3RGpDOzs7O1dBSUc7UUFFTSxTQUFJLEdBQTJCLFVBQVUsQ0FBQztRQXVCM0MsbUJBQWMsR0FBRyxLQUFLLENBQUM7SUFpQzNCLENBQUM7SUF0REw7OztPQUdHO0lBQ0gsSUFDSSxhQUFhLENBQUMsS0FBYztRQUM5QixNQUFNLGFBQWEsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuRCxJQUFJLElBQUksQ0FBQyxjQUFjLEtBQUssYUFBYSxFQUFFO1lBQ3pDLElBQUksQ0FBQyxjQUFjLEdBQUcsYUFBYSxDQUFDO1lBQ3BDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFpQyxDQUFDO1lBQzVFLElBQUksYUFBYSxFQUFFO2dCQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7YUFDL0Q7WUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsYUFBYSxDQUFDLENBQUM7U0FDN0U7SUFDSCxDQUFDO0lBQUEsQ0FBQztJQUVGLElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUM3QixDQUFDO0lBVUQsSUFDSSxXQUFXO1FBQ2IsT0FBTztZQUNMLGtCQUFrQixFQUFFLElBQUk7WUFDeEIsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSTtZQUMvQixZQUFZLEVBQUUsSUFBSSxDQUFDLEtBQUssS0FBSyxLQUFLO1NBQ25DLENBQUM7SUFDSixDQUFDO0lBRUQsSUFDSSxPQUFPLENBQUMsS0FBYztRQUN4QixNQUFNLE9BQU8sR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QyxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsYUFBaUMsQ0FBQztRQUM3RSxJQUFJLGdCQUFnQixFQUFFO1lBQ3BCLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztTQUNqRTtJQUNILENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsYUFBYSxFQUFFLE9BQU8sQ0FBQztJQUNsRCxDQUFDOztvSEE5RFUsdUJBQXVCO3dHQUF2Qix1QkFBdUI7MkZBQXZCLHVCQUF1QjtrQkFIbkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsd0JBQXdCO2lCQUNuQzt5SEFZVSxJQUFJO3NCQURaLFdBQVc7dUJBQUMsV0FBVzs7c0JBQ3ZCLEtBQUs7Z0JBT0YsYUFBYTtzQkFEaEIsS0FBSztnQkF1QkcsS0FBSztzQkFBYixLQUFLO2dCQUdGLFdBQVc7c0JBRGQsV0FBVzt1QkFBQyxPQUFPO2dCQVVoQixPQUFPO3NCQURWLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBJbnB1dCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ2lucHV0W2NGb3JtQ2hlY2tJbnB1dF0nXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1DaGVja0lucHV0RGlyZWN0aXZlIHtcblxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfY2hlY2tlZDogQm9vbGVhbklucHV0O1xuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfaW5kZXRlcm1pbmF0ZTogQm9vbGVhbklucHV0O1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIHR5cGUgb2YgY29tcG9uZW50LlxuICAgKiBAdHlwZSB7J2NoZWNrYm94JyB8ICdyYWRpbyd9XG4gICAqIEBkZWZhdWx0ICdjaGVja2JveCdcbiAgICovXG4gIEBIb3N0QmluZGluZygnYXR0ci50eXBlJylcbiAgQElucHV0KCkgdHlwZTogKCdjaGVja2JveCcgfCAncmFkaW8nKSA9ICdjaGVja2JveCc7XG5cbiAgLyoqXG4gICAqIFNldCBjb21wb25lbnQgaW5kZXRlcm1pbmF0ZSBzdGF0ZS5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IGluZGV0ZXJtaW5hdGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBpbmRldGVybWluYXRlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICBpZiAodGhpcy5faW5kZXRlcm1pbmF0ZSAhPT0gaW5kZXRlcm1pbmF0ZSkge1xuICAgICAgdGhpcy5faW5kZXRlcm1pbmF0ZSA9IGluZGV0ZXJtaW5hdGU7XG4gICAgICBjb25zdCBodG1sSW5wdXRFbGVtZW50ID0gdGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgICBpZiAoaW5kZXRlcm1pbmF0ZSkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KGh0bWxJbnB1dEVsZW1lbnQsICdjaGVja2VkJywgZmFsc2UpO1xuICAgICAgfVxuICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eShodG1sSW5wdXRFbGVtZW50LCAnaW5kZXRlcm1pbmF0ZScsIGluZGV0ZXJtaW5hdGUpO1xuICAgIH1cbiAgfTtcblxuICBnZXQgaW5kZXRlcm1pbmF0ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5faW5kZXRlcm1pbmF0ZTtcbiAgfVxuXG4gIHByaXZhdGUgX2luZGV0ZXJtaW5hdGUgPSBmYWxzZTtcblxuICAvKipcbiAgICogU2V0IGNvbXBvbmVudCB2YWxpZGF0aW9uIHN0YXRlIHRvIHZhbGlkLlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqL1xuICBASW5wdXQoKSB2YWxpZD86IGJvb2xlYW47XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3NlcygpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICAnZm9ybS1jaGVjay1pbnB1dCc6IHRydWUsXG4gICAgICAnaXMtdmFsaWQnOiB0aGlzLnZhbGlkID09PSB0cnVlLFxuICAgICAgJ2lzLWludmFsaWQnOiB0aGlzLnZhbGlkID09PSBmYWxzZVxuICAgIH07XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgY2hlY2tlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGNvbnN0IGNoZWNrZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIGNvbnN0IGh0bWxJbnB1dEVsZW1lbnQgPSB0aGlzLmhvc3RFbGVtZW50Py5uYXRpdmVFbGVtZW50IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgaWYgKGh0bWxJbnB1dEVsZW1lbnQpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkoaHRtbElucHV0RWxlbWVudCwgJ2NoZWNrZWQnLCBjaGVja2VkKTtcbiAgICB9XG4gIH1cblxuICBnZXQgY2hlY2tlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5ob3N0RWxlbWVudD8ubmF0aXZlRWxlbWVudD8uY2hlY2tlZDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIGhvc3RFbGVtZW50OiBFbGVtZW50UmVmXG4gICkgeyB9XG5cbn1cbiJdfQ==