ngwr 1.2.2 → 1.3.1

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/_grid.scss ADDED
@@ -0,0 +1,2 @@
1
+ @forward './styles/maps';
2
+ @forward './styles/grid' show media-up, media-down;
package/_index.scss CHANGED
@@ -7,11 +7,11 @@
7
7
  * https://github.com/thekhegay/ngwr
8
8
  */
9
9
 
10
- @forward 'styles/maps';
10
+ @forward './styles/maps';
11
11
 
12
12
  @forward './styles/root';
13
13
  @forward './styles/reset';
14
- @forward './grid/index';
14
+ @forward './styles/grid' show media-up, media-down;
15
15
  @forward './styles/animations';
16
16
  @forward './styles/cdk';
17
17
 
@@ -23,7 +23,9 @@
23
23
  @forward './form/form';
24
24
  @forward './icon/icon';
25
25
  @forward './input/input';
26
+ @forward './qrcode/qrcode';
26
27
  @forward './skeleton/skeleton';
27
28
  @forward './spinner/spinner';
28
29
  @forward './tag/tag';
30
+ @forward './tooltip/tooltip';
29
31
 
@@ -1,2 +1,2 @@
1
1
  export declare const wrThemeColors: readonly ["primary", "secondary", "success", "warning", "danger", "light", "medium", "dark"];
2
- export type WrThemeColor = typeof wrThemeColors[number];
2
+ export type WrThemeColor = (typeof wrThemeColors)[number];
@@ -1,5 +1,3 @@
1
- export * from './ng-style-interface';
2
1
  export * from './on-change-type';
3
2
  export * from './on-touched-type';
4
- export * from './property-mapping';
5
3
  export * from './safe-any';
@@ -139,7 +139,7 @@ export class WrButton extends WrAbstractBase {
139
139
  this.elRef.nativeElement.removeEventListener('click', this.preventEventsWhenDisabled);
140
140
  }
141
141
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
142
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: WrButton, selector: "wr-btn, button[wr-btn], a[wr-btn]", inputs: { color: "color", size: "size", outlined: "outlined", rounded: "rounded", fullwidth: "fullwidth", loading: "loading", disabled: "disabled", icon: "icon", iconPosition: "iconPosition" }, host: { properties: { "attr.disabled": "this.nativeDisabled", "class": "this.elClasses" } }, exportAs: ["wrBtn"], usesInheritance: true, ngImport: i0, template: "<wr-spin *ngIf=\"loading\" class=\"wr-btn__spin\"></wr-spin>\n<wr-icon *ngIf=\"icon && iconPosition === 'start'\" class=\"wr-btn__icon\" [name]=\"icon\"></wr-icon>\n<span class=\"wr-btn__text\"><ng-content></ng-content></span>\n<wr-icon *ngIf=\"icon && iconPosition === 'end'\" class=\"wr-btn__icon\" [name]=\"icon\"></wr-icon>\n", styles: [".wr-btn{display:inline-block;padding:var(--wr-btn-padding-y-base) var(--wr-btn-padding-x-base);font-family:var(--wr-btn-font-family-base);font-size:var(--wr-btn-font-size-base);font-weight:var(--wr-btn-font-weight-base);line-height:var(--wr-btn-line-height-base);text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;border:none;border-radius:var(--wr-btn-border-radius-base);transition:var(--wr-transition-short);position:relative}.wr-btn:hover{text-decoration:none}.wr-btn[disabled],.wr-btn:disabled,.wr-btn.disabled,fieldset:disabled .wr-btn{color:var(--wr-color-medium)!important;background-color:var(--wr-color-light)!important;background-image:none;border:none;box-shadow:none!important;pointer-events:none}.wr-btn[disabled] .wr-btn__icon,.wr-btn[disabled] .wr-btn__spin,.wr-btn:disabled .wr-btn__icon,.wr-btn:disabled .wr-btn__spin,.wr-btn.disabled .wr-btn__icon,.wr-btn.disabled .wr-btn__spin,fieldset:disabled .wr-btn .wr-btn__icon,fieldset:disabled .wr-btn .wr-btn__spin{color:var(--wr-color-medium)}.wr-btn__text{display:inline-block;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;word-break:break-all;padding:0;transition:var(--wr-transition-base)}.wr-btn__spin{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%)}.wr-btn__icon{width:1rem!important;height:1rem!important;min-width:1rem!important;min-height:1rem!important;transition:var(--wr-transition-base)}.wr-btn--icon-start{padding-left:calc(var(--wr-btn-padding-x-base) - .0825rem)}.wr-btn--icon-start .wr-btn__icon{margin-right:.375rem}.wr-btn--icon-end .wr-btn__icon{margin-left:.25rem}.wr-btn--loading{pointer-events:none}.wr-btn--loading .wr-btn__text,.wr-btn--loading .wr-btn__icon{opacity:0}.wr-btn--rounded{border-radius:var(--wr-btn-rounded-border-radius);padding:var(--wr-btn-rounded-padding-y) var(--wr-btn-rounded-padding-x)}.wr-btn--small{padding:var(--wr-btn-padding-y-small) var(--wr-btn-padding-x-small);border-radius:var(--wr-btn-border-radius-small);font-size:var(--wr-btn-font-size-small);line-height:var(--wr-btn-line-height-small)}.wr-btn--small .wr-btn__icon,.wr-btn--small .wr-btn__spin{height:var(--wr-btn-font-size-small)!important;width:var(--wr-btn-font-size-small)!important;min-height:var(--wr-btn-font-size-small)!important;min-width:var(--wr-btn-font-size-small)!important}.wr-btn--small .wr-btn--icon-start .wr-btn__icon{margin-right:.2rem!important}.wr-btn--small .wr-btn--icon-end .wr-btn__icon{margin-left:.2rem!important}.wr-btn--full{display:block;width:100%}.wr-btn--primary{color:var(--wr-color-primary-contrast);background-color:var(--wr-color-primary)}.wr-btn--primary:hover{color:var(--wr-color-primary-contrast);background-color:var(--wr-color-primary-shade)}.wr-btn--primary.wr-btn--outlined{color:var(--wr-color-primary);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-primary-rgb),.375)}.wr-btn--primary.wr-btn--outlined:hover{color:var(--wr-color-primary-contrast);background-color:var(--wr-color-primary);box-shadow:none}.wr-btn--secondary{color:var(--wr-color-secondary-contrast);background-color:var(--wr-color-secondary)}.wr-btn--secondary:hover{color:var(--wr-color-secondary-contrast);background-color:var(--wr-color-secondary-shade)}.wr-btn--secondary.wr-btn--outlined{color:var(--wr-color-secondary);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-secondary-rgb),.375)}.wr-btn--secondary.wr-btn--outlined:hover{color:var(--wr-color-secondary-contrast);background-color:var(--wr-color-secondary);box-shadow:none}.wr-btn--light{color:var(--wr-color-light-contrast);background-color:var(--wr-color-light)}.wr-btn--light:hover{color:var(--wr-color-light-contrast);background-color:var(--wr-color-light-shade)}.wr-btn--light.wr-btn--outlined{color:var(--wr-color-light);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-light-rgb),.375)}.wr-btn--light.wr-btn--outlined:hover{color:var(--wr-color-light-contrast);background-color:var(--wr-color-light);box-shadow:none}.wr-btn--medium{color:var(--wr-color-medium-contrast);background-color:var(--wr-color-medium)}.wr-btn--medium:hover{color:var(--wr-color-medium-contrast);background-color:var(--wr-color-medium-shade)}.wr-btn--medium.wr-btn--outlined{color:var(--wr-color-medium);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-medium-rgb),.375)}.wr-btn--medium.wr-btn--outlined:hover{color:var(--wr-color-medium-contrast);background-color:var(--wr-color-medium);box-shadow:none}.wr-btn--dark{color:var(--wr-color-dark-contrast);background-color:var(--wr-color-dark)}.wr-btn--dark:hover{color:var(--wr-color-dark-contrast);background-color:var(--wr-color-dark-shade)}.wr-btn--dark.wr-btn--outlined{color:var(--wr-color-dark);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-dark-rgb),.375)}.wr-btn--dark.wr-btn--outlined:hover{color:var(--wr-color-dark-contrast);background-color:var(--wr-color-dark);box-shadow:none}.wr-btn--success{color:var(--wr-color-success-contrast);background-color:var(--wr-color-success)}.wr-btn--success:hover{color:var(--wr-color-success-contrast);background-color:var(--wr-color-success-shade)}.wr-btn--success.wr-btn--outlined{color:var(--wr-color-success);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-success-rgb),.375)}.wr-btn--success.wr-btn--outlined:hover{color:var(--wr-color-success-contrast);background-color:var(--wr-color-success);box-shadow:none}.wr-btn--warning{color:var(--wr-color-warning-contrast);background-color:var(--wr-color-warning)}.wr-btn--warning:hover{color:var(--wr-color-warning-contrast);background-color:var(--wr-color-warning-shade)}.wr-btn--warning.wr-btn--outlined{color:var(--wr-color-warning);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-warning-rgb),.375)}.wr-btn--warning.wr-btn--outlined:hover{color:var(--wr-color-warning-contrast);background-color:var(--wr-color-warning);box-shadow:none}.wr-btn--danger{color:var(--wr-color-danger-contrast);background-color:var(--wr-color-danger)}.wr-btn--danger:hover{color:var(--wr-color-danger-contrast);background-color:var(--wr-color-danger-shade)}.wr-btn--danger.wr-btn--outlined{color:var(--wr-color-danger);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-danger-rgb),.375)}.wr-btn--danger.wr-btn--outlined:hover{color:var(--wr-color-danger-contrast);background-color:var(--wr-color-danger);box-shadow:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.WrSpinner, selector: "wr-spin", exportAs: ["wrSpin"] }, { kind: "directive", type: i3.WrIcon, selector: "wr-icon[name]", inputs: ["name"], exportAs: ["wrIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
142
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: WrButton, selector: "wr-btn, button[wr-btn], a[wr-btn]", inputs: { color: "color", size: "size", outlined: "outlined", rounded: "rounded", fullwidth: "fullwidth", loading: "loading", disabled: "disabled", icon: "icon", iconPosition: "iconPosition" }, host: { properties: { "attr.disabled": "this.nativeDisabled", "class": "this.elClasses" } }, exportAs: ["wrBtn"], usesInheritance: true, ngImport: i0, template: "<wr-spin *ngIf=\"loading\" class=\"wr-btn__spin\"></wr-spin>\n<wr-icon *ngIf=\"icon && iconPosition === 'start'\" class=\"wr-btn__icon\" [name]=\"icon\"></wr-icon>\n<span class=\"wr-btn__text\"><ng-content></ng-content></span>\n<wr-icon *ngIf=\"icon && iconPosition === 'end'\" class=\"wr-btn__icon\" [name]=\"icon\"></wr-icon>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.WrSpinner, selector: "wr-spin", exportAs: ["wrSpin"] }, { kind: "directive", type: i3.WrIcon, selector: "wr-icon[name]", inputs: ["name"], exportAs: ["wrIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
143
143
  }
144
144
  __decorate([
145
145
  InputBoolean()
@@ -158,7 +158,7 @@ __decorate([
158
158
  ], WrButton.prototype, "disabled", null);
159
159
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrButton, decorators: [{
160
160
  type: Component,
161
- args: [{ selector: 'wr-btn, button[wr-btn], a[wr-btn]', exportAs: 'wrBtn', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<wr-spin *ngIf=\"loading\" class=\"wr-btn__spin\"></wr-spin>\n<wr-icon *ngIf=\"icon && iconPosition === 'start'\" class=\"wr-btn__icon\" [name]=\"icon\"></wr-icon>\n<span class=\"wr-btn__text\"><ng-content></ng-content></span>\n<wr-icon *ngIf=\"icon && iconPosition === 'end'\" class=\"wr-btn__icon\" [name]=\"icon\"></wr-icon>\n", styles: [".wr-btn{display:inline-block;padding:var(--wr-btn-padding-y-base) var(--wr-btn-padding-x-base);font-family:var(--wr-btn-font-family-base);font-size:var(--wr-btn-font-size-base);font-weight:var(--wr-btn-font-weight-base);line-height:var(--wr-btn-line-height-base);text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;border:none;border-radius:var(--wr-btn-border-radius-base);transition:var(--wr-transition-short);position:relative}.wr-btn:hover{text-decoration:none}.wr-btn[disabled],.wr-btn:disabled,.wr-btn.disabled,fieldset:disabled .wr-btn{color:var(--wr-color-medium)!important;background-color:var(--wr-color-light)!important;background-image:none;border:none;box-shadow:none!important;pointer-events:none}.wr-btn[disabled] .wr-btn__icon,.wr-btn[disabled] .wr-btn__spin,.wr-btn:disabled .wr-btn__icon,.wr-btn:disabled .wr-btn__spin,.wr-btn.disabled .wr-btn__icon,.wr-btn.disabled .wr-btn__spin,fieldset:disabled .wr-btn .wr-btn__icon,fieldset:disabled .wr-btn .wr-btn__spin{color:var(--wr-color-medium)}.wr-btn__text{display:inline-block;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;word-break:break-all;padding:0;transition:var(--wr-transition-base)}.wr-btn__spin{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%)}.wr-btn__icon{width:1rem!important;height:1rem!important;min-width:1rem!important;min-height:1rem!important;transition:var(--wr-transition-base)}.wr-btn--icon-start{padding-left:calc(var(--wr-btn-padding-x-base) - .0825rem)}.wr-btn--icon-start .wr-btn__icon{margin-right:.375rem}.wr-btn--icon-end .wr-btn__icon{margin-left:.25rem}.wr-btn--loading{pointer-events:none}.wr-btn--loading .wr-btn__text,.wr-btn--loading .wr-btn__icon{opacity:0}.wr-btn--rounded{border-radius:var(--wr-btn-rounded-border-radius);padding:var(--wr-btn-rounded-padding-y) var(--wr-btn-rounded-padding-x)}.wr-btn--small{padding:var(--wr-btn-padding-y-small) var(--wr-btn-padding-x-small);border-radius:var(--wr-btn-border-radius-small);font-size:var(--wr-btn-font-size-small);line-height:var(--wr-btn-line-height-small)}.wr-btn--small .wr-btn__icon,.wr-btn--small .wr-btn__spin{height:var(--wr-btn-font-size-small)!important;width:var(--wr-btn-font-size-small)!important;min-height:var(--wr-btn-font-size-small)!important;min-width:var(--wr-btn-font-size-small)!important}.wr-btn--small .wr-btn--icon-start .wr-btn__icon{margin-right:.2rem!important}.wr-btn--small .wr-btn--icon-end .wr-btn__icon{margin-left:.2rem!important}.wr-btn--full{display:block;width:100%}.wr-btn--primary{color:var(--wr-color-primary-contrast);background-color:var(--wr-color-primary)}.wr-btn--primary:hover{color:var(--wr-color-primary-contrast);background-color:var(--wr-color-primary-shade)}.wr-btn--primary.wr-btn--outlined{color:var(--wr-color-primary);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-primary-rgb),.375)}.wr-btn--primary.wr-btn--outlined:hover{color:var(--wr-color-primary-contrast);background-color:var(--wr-color-primary);box-shadow:none}.wr-btn--secondary{color:var(--wr-color-secondary-contrast);background-color:var(--wr-color-secondary)}.wr-btn--secondary:hover{color:var(--wr-color-secondary-contrast);background-color:var(--wr-color-secondary-shade)}.wr-btn--secondary.wr-btn--outlined{color:var(--wr-color-secondary);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-secondary-rgb),.375)}.wr-btn--secondary.wr-btn--outlined:hover{color:var(--wr-color-secondary-contrast);background-color:var(--wr-color-secondary);box-shadow:none}.wr-btn--light{color:var(--wr-color-light-contrast);background-color:var(--wr-color-light)}.wr-btn--light:hover{color:var(--wr-color-light-contrast);background-color:var(--wr-color-light-shade)}.wr-btn--light.wr-btn--outlined{color:var(--wr-color-light);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-light-rgb),.375)}.wr-btn--light.wr-btn--outlined:hover{color:var(--wr-color-light-contrast);background-color:var(--wr-color-light);box-shadow:none}.wr-btn--medium{color:var(--wr-color-medium-contrast);background-color:var(--wr-color-medium)}.wr-btn--medium:hover{color:var(--wr-color-medium-contrast);background-color:var(--wr-color-medium-shade)}.wr-btn--medium.wr-btn--outlined{color:var(--wr-color-medium);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-medium-rgb),.375)}.wr-btn--medium.wr-btn--outlined:hover{color:var(--wr-color-medium-contrast);background-color:var(--wr-color-medium);box-shadow:none}.wr-btn--dark{color:var(--wr-color-dark-contrast);background-color:var(--wr-color-dark)}.wr-btn--dark:hover{color:var(--wr-color-dark-contrast);background-color:var(--wr-color-dark-shade)}.wr-btn--dark.wr-btn--outlined{color:var(--wr-color-dark);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-dark-rgb),.375)}.wr-btn--dark.wr-btn--outlined:hover{color:var(--wr-color-dark-contrast);background-color:var(--wr-color-dark);box-shadow:none}.wr-btn--success{color:var(--wr-color-success-contrast);background-color:var(--wr-color-success)}.wr-btn--success:hover{color:var(--wr-color-success-contrast);background-color:var(--wr-color-success-shade)}.wr-btn--success.wr-btn--outlined{color:var(--wr-color-success);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-success-rgb),.375)}.wr-btn--success.wr-btn--outlined:hover{color:var(--wr-color-success-contrast);background-color:var(--wr-color-success);box-shadow:none}.wr-btn--warning{color:var(--wr-color-warning-contrast);background-color:var(--wr-color-warning)}.wr-btn--warning:hover{color:var(--wr-color-warning-contrast);background-color:var(--wr-color-warning-shade)}.wr-btn--warning.wr-btn--outlined{color:var(--wr-color-warning);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-warning-rgb),.375)}.wr-btn--warning.wr-btn--outlined:hover{color:var(--wr-color-warning-contrast);background-color:var(--wr-color-warning);box-shadow:none}.wr-btn--danger{color:var(--wr-color-danger-contrast);background-color:var(--wr-color-danger)}.wr-btn--danger:hover{color:var(--wr-color-danger-contrast);background-color:var(--wr-color-danger-shade)}.wr-btn--danger.wr-btn--outlined{color:var(--wr-color-danger);background-color:transparent;box-shadow:inset 0 0 0 1.25px rgba(var(--wr-color-danger-rgb),.375)}.wr-btn--danger.wr-btn--outlined:hover{color:var(--wr-color-danger-contrast);background-color:var(--wr-color-danger);box-shadow:none}\n"] }]
161
+ args: [{ selector: 'wr-btn, button[wr-btn], a[wr-btn]', exportAs: 'wrBtn', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<wr-spin *ngIf=\"loading\" class=\"wr-btn__spin\"></wr-spin>\n<wr-icon *ngIf=\"icon && iconPosition === 'start'\" class=\"wr-btn__icon\" [name]=\"icon\"></wr-icon>\n<span class=\"wr-btn__text\"><ng-content></ng-content></span>\n<wr-icon *ngIf=\"icon && iconPosition === 'end'\" class=\"wr-btn__icon\" [name]=\"icon\"></wr-icon>\n" }]
162
162
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { color: [{
163
163
  type: Input
164
164
  }], size: [{
@@ -184,4 +184,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImpor
184
184
  type: HostBinding,
185
185
  args: ['class']
186
186
  }] } });
187
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliL2J1dHRvbi9idXR0b24udHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9saWIvYnV0dG9uL2J1dHRvbi5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWdCLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUUsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsV0FBVyxFQUNYLEtBQUssRUFJTCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQWdCLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7OztBQVlwRCxNQUFNLE9BQU8sUUFBUyxTQUFRLGNBQWM7SUFDMUMsNkJBQTZCO0lBQzdCLElBQ0ksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBbUI7UUFDM0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQ3RELElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUdELDRCQUE0QjtJQUM1QixJQUNJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUNELElBQUksSUFBSSxDQUFDLEtBQTBCO1FBQ2pDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUdELHND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QixTQUFTO3NCQURaLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBIb3N0QmluZGluZyxcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgV3JBYnN0cmFjdEJhc2UgfSBmcm9tICduZ3dyL2NvcmUvYWJzdHJhY3QnO1xuaW1wb3J0IHsgaXNUaGVtZUNvbG9yLCBXclRoZW1lQ29sb3IgfSBmcm9tICduZ3dyL2NvcmUvY29sb3InO1xuaW1wb3J0IHsgSW5wdXRCb29sZWFuIH0gZnJvbSAnbmd3ci9jb3JlL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgU2FmZUFueSB9IGZyb20gJ25nd3IvY29yZS90eXBlcyc7XG5pbXBvcnQgeyB3ckljb25OYW1lIH0gZnJvbSAnbmd3ci9pY29uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnd3ItYnRuLCBidXR0b25bd3ItYnRuXSwgYVt3ci1idG5dJyxcbiAgZXhwb3J0QXM6ICd3ckJ0bicsXG4gIHRlbXBsYXRlVXJsOiAnLi9idXR0b24uaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2J1dHRvbi5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBXckJ1dHRvbiBleHRlbmRzIFdyQWJzdHJhY3RCYXNlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAvKiogU2V0IGNvbG9yIG9mIGB3ci1idG5gOyAqL1xuICBASW5wdXQoKVxuICBnZXQgY29sb3IoKTogV3JUaGVtZUNvbG9yIHtcbiAgICByZXR1cm4gdGhpcy5fY29sb3I7XG4gIH1cbiAgc2V0IGNvbG9yKHZhbHVlOiBXclRoZW1lQ29sb3IpIHtcbiAgICB0aGlzLl9jb2xvciA9IGlzVGhlbWVDb2xvcih2YWx1ZSkgPyB2YWx1ZSA6ICdwcmltYXJ5JztcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuICBwcml2YXRlIF9jb2xvcjogV3JUaGVtZUNvbG9yID0gJ3ByaW1hcnknO1xuXG4gIC8qKiBTZXQgc2l6ZSBvZiBgd3ItYnRuYDsgKi9cbiAgQElucHV0KClcbiAgZ2V0IHNpemUoKTogJ2RlZmF1bHQnIHwgJ3NtYWxsJyB7XG4gICAgcmV0dXJuIHRoaXMuX3NpemU7XG4gIH1cbiAgc2V0IHNpemUodmFsdWU6ICdkZWZhdWx0JyB8ICdzbWFsbCcpIHtcbiAgICB0aGlzLl9zaXplID0gdmFsdWU7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cbiAgcHJpdmF0ZSBfc2l6ZTogJ2RlZmF1bHQnIHwgJ3NtYWxsJyA9ICdkZWZhdWx0JztcblxuICAvKiogU2V0IG91dGxpbmVkIHN0YXRlIG9mIGB3ci1idG5gOyAqL1xuICBASW5wdXQoKVxuICBASW5wdXRCb29sZWFuKClcbiAgZ2V0IG91dGxpbmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9vdXRsaW5lZDtcbiAgfVxuICBzZXQgb3V0bGluZWQodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgIHRoaXMuX291dGxpbmVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuICBwcml2YXRlIF9vdXRsaW5lZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBTZXQgcm91bmRlZCBzdGF0ZSBvZiBgd3ItYnRuYDsgKi9cbiAgQElucHV0KClcbiAgQElucHV0Qm9vbGVhbigpXG4gIGdldCByb3VuZGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9yb3VuZGVkO1xuICB9XG4gIHNldCByb3VuZGVkKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICB0aGlzLl9yb3VuZGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuICBwcml2YXRlIF9yb3VuZGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIFNldCBmdWxsd2lkdGggc3RhdGUgb2YgYHdyLWJ0bmA7ICovXG4gIEBJbnB1dCgpXG4gIEBJbnB1dEJvb2xlYW4oKVxuICBnZXQgZnVsbHdpZHRoKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9mdWxsd2lkdGg7XG4gIH1cbiAgc2V0IGZ1bGx3aWR0aCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5fZnVsbHdpZHRoID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuICBwcml2YXRlIF9mdWxsd2lkdGg6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKiogU2V0IGxvYWRpbmcgc3RhdGUgb2YgYHdyLWJ0bmA7ICovXG4gIEBJbnB1dCgpXG4gIEBJbnB1dEJvb2xlYW4oKVxuICBnZXQgbG9hZGluZygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fbG9hZGluZztcbiAgfVxuICBzZXQgbG9hZGluZyh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5fbG9hZGluZyA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cbiAgcHJpdmF0ZSBfbG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBTZXQgZGlzYWJsZWQgc3RhdGUgb2YgYHdyLWJ0bmA7ICovXG4gIEBJbnB1dCgpXG4gIEBJbnB1dEJvb2xlYW4oKVxuICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xuICB9XG4gIHNldCBkaXNhYmxlZCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG4gIHByaXZhdGUgX2Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIFNldCBpY29uIG9mIGB3ci1idG5gOyAqL1xuICBASW5wdXQoKVxuICBnZXQgaWNvbigpOiB3ckljb25OYW1lIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX2ljb247XG4gIH1cbiAgc2V0IGljb24odmFsdWU6IHdySWNvbk5hbWUgfCBudWxsKSB7XG4gICAgdGhpcy5faWNvbiA9IHZhbHVlO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG4gIHByaXZhdGUgX2ljb246IHdySWNvbk5hbWUgfCBudWxsID0gbnVsbDtcblxuICAvKiogU2V0IGljb24gcG9zaXRpb24gb2YgYHdyLWJ0bmA7ICovXG4gIEBJbnB1dCgpXG4gIGdldCBpY29uUG9zaXRpb24oKTogJ3N0YXJ0JyB8ICdlbmQnIHtcbiAgICByZXR1cm4gdGhpcy5faWNvblBvc2l0aW9uO1xuICB9XG4gIHNldCBpY29uUG9zaXRpb24odmFsdWU6ICdzdGFydCcgfCAnZW5kJykge1xuICAgIHRoaXMuX2ljb25Qb3NpdGlvbiA9IHZhbHVlO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG4gIHByaXZhdGUgX2ljb25Qb3NpdGlvbjogJ3N0YXJ0JyB8ICdlbmQnID0gJ3N0YXJ0JztcblxuICAvKiogU2V0IGVsZW1lbnQgZGlzYWJsZWQgYXR0cmlidXRlICovXG4gIEBIb3N0QmluZGluZygnYXR0ci5kaXNhYmxlZCcpXG4gIGdldCBuYXRpdmVEaXNhYmxlZCgpOiAnJyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZCA/ICcnIDogbnVsbDtcbiAgfVxuXG4gIC8qKiBTZXQgZWxlbWVudCBjbGFzc2VzICovXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgZWxDbGFzc2VzKCk6IFNhZmVBbnkge1xuICAgIHJldHVybiB7XG4gICAgICAnd3ItYnRuJzogdHJ1ZSxcbiAgICAgICd3ci1idG4tLXByaW1hcnknOiB0aGlzLmNvbG9yID09PSAncHJpbWFyeScsXG4gICAgICAnd3ItYnRuLS1zZWNvbmRhcnknOiB0aGlzLmNvbG9yID09PSAnc2Vjb25kYXJ5JyxcbiAgICAgICd3ci1idG4tLXN1Y2Nlc3MnOiB0aGlzLmNvbG9yID09PSAnc3VjY2VzcycsXG4gICAgICAnd3ItYnRuLS13YXJuaW5nJzogdGhpcy5jb2xvciA9PT0gJ3dhcm5pbmcnLFxuICAgICAgJ3dyLWJ0bi0tZGFuZ2VyJzogdGhpcy5jb2xvciA9PT0gJ2RhbmdlcicsXG4gICAgICAnd3ItYnRuLS1saWdodCc6IHRoaXMuY29sb3IgPT09ICdsaWdodCcsXG4gICAgICAnd3ItYnRuLS1tZWRpdW0nOiB0aGlzLmNvbG9yID09PSAnbWVkaXVtJyxcbiAgICAgICd3ci1idG4tLWRhcmsnOiB0aGlzLmNvbG9yID09PSAnZGFyaycsXG4gICAgICAnd3ItYnRuLS1kZWZhdWx0JzogdGhpcy5zaXplID09PSAnZGVmYXVsdCcsXG4gICAgICAnd3ItYnRuLS1zbWFsbCc6IHRoaXMuc2l6ZSA9PT0gJ3NtYWxsJyxcbiAgICAgICd3ci1idG4tLWljb24tc3RhcnQnOiB0aGlzLmljb24gJiYgdGhpcy5pY29uUG9zaXRpb24gPT09ICdzdGFydCcsXG4gICAgICAnd3ItYnRuLS1pY29uLWVuZCc6IHRoaXMuaWNvbiAmJiB0aGlzLmljb25Qb3NpdGlvbiA9PT0gJ2VuZCcsXG4gICAgICAnd3ItYnRuLS1vdXRsaW5lZCc6IHRoaXMub3V0bGluZWQsXG4gICAgICAnd3ItYnRuLS1yb3VuZGVkJzogdGhpcy5yb3VuZGVkLFxuICAgICAgJ3dyLWJ0bi0tbG9hZGluZyc6IHRoaXMubG9hZGluZyxcbiAgICAgICd3ci1idG4tLWZ1bGwnOiB0aGlzLmZ1bGx3aWR0aCxcbiAgICB9O1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZWxSZWY6IEVsZW1lbnRSZWY8SFRNTEJ1dHRvbkVsZW1lbnQgfCBIVE1MTGlua0VsZW1lbnQgfCBIVE1MQW5jaG9yRWxlbWVudCB8IEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5nWm9uZTogTmdab25lXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLnByZXZlbnRFdmVudHNXaGVuRGlzYWJsZWQpO1xuICAgIH0pO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLnByZXZlbnRFdmVudHNXaGVuRGlzYWJsZWQpO1xuICB9XG5cbiAgLyogQSBkaXNhYmxlZCBidXR0b24gc2hvdWxkbid0IGFwcGx5IGFueSBhY3Rpb25zICovXG4gIHByaXZhdGUgcHJldmVudEV2ZW50c1doZW5EaXNhYmxlZCA9IChldmVudDogRXZlbnQpOiB2b2lkID0+IHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO1xuICAgIH1cbiAgfTtcbn1cbiIsIjx3ci1zcGluICpuZ0lmPVwibG9hZGluZ1wiIGNsYXNzPVwid3ItYnRuX19zcGluXCI+PC93ci1zcGluPlxuPHdyLWljb24gKm5nSWY9XCJpY29uICYmIGljb25Qb3NpdGlvbiA9PT0gJ3N0YXJ0J1wiIGNsYXNzPVwid3ItYnRuX19pY29uXCIgW25hbWVdPVwiaWNvblwiPjwvd3ItaWNvbj5cbjxzcGFuIGNsYXNzPVwid3ItYnRuX190ZXh0XCI+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50Pjwvc3Bhbj5cbjx3ci1pY29uICpuZ0lmPVwiaWNvbiAmJiBpY29uUG9zaXRpb24gPT09ICdlbmQnXCIgY2xhc3M9XCJ3ci1idG5fX2ljb25cIiBbbmFtZV09XCJpY29uXCI+PC93ci1pY29uPlxuIl19
187
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliL2J1dHRvbi9idXR0b24udHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9saWIvYnV0dG9uL2J1dHRvbi5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWdCLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUUsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBRVQsV0FBVyxFQUNYLEtBQUssRUFJTCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQWdCLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7OztBQVdwRCxNQUFNLE9BQU8sUUFBUyxTQUFRLGNBQWM7SUFDMUMsNkJBQTZCO0lBQzdCLElBQ0ksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBbUI7UUFDM0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQ3RELElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUdELDRCQUE0QjtJQUM1QixJQUNJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUNELElBQUksSUFBSSxDQUFDLEtBQTBCO1FBQ2pDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUdELHNDQUFzQztJQUd0QyxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUNELElBQUksUUFBUSxDQUFDLEtBQW1CO1FBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBR0QscUNBQXFDO0lBR3JDLElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBQ0QsSUFBSSxPQUFPLENBQUMsS0FBbUI7UUFDN0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFHRCx1Q0FBdUM7SUFHdkMsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFDRCxJQUFJLFNBQVMsQ0FBQyxLQUFtQjtRQUMvQixJQUFJLENBQUMsVUFBVSxHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUdELHFDQUFxQztJQUdyQyxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUNELElBQUksT0FBTyxDQUFDLEtBQW1CO1FBQzdCLElBQUksQ0FBQyxRQUFRLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBR0Qsc0NBQXNDO0lBR3RDLElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBQ0QsSUFBSSxRQUFRLENBQUMsS0FBbUI7UUFDOUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFHRCw0QkFBNEI7SUFDNUIsSUFDSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxJQUFJLElBQUksQ0FBQyxLQUF3QjtRQUMvQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFHRCxxQ0FBcUM7SUFDckMsSUFDSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFDRCxJQUFJLFlBQVksQ0FBQyxLQUFzQjtRQUNyQyxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztRQUMzQixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFHRCxxQ0FBcUM7SUFDckMsSUFDSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDcEMsQ0FBQztJQUVELDBCQUEwQjtJQUMxQixJQUNJLFNBQVM7UUFDWCxPQUFPO1lBQ0wsUUFBUSxFQUFFLElBQUk7WUFDZCxpQkFBaUIsRUFBRSxJQUFJLENBQUMsS0FBSyxLQUFLLFNBQVM7WUFDM0MsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLEtBQUssS0FBSyxXQUFXO1lBQy9DLGlCQUFpQixFQUFFLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUztZQUMzQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsS0FBSyxLQUFLLFNBQVM7WUFDM0MsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLEtBQUssS0FBSyxRQUFRO1lBQ3pDLGVBQWUsRUFBRSxJQUFJLENBQUMsS0FBSyxLQUFLLE9BQU87WUFDdkMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLEtBQUssS0FBSyxRQUFRO1lBQ3pDLGNBQWMsRUFBRSxJQUFJLENBQUMsS0FBSyxLQUFLLE1BQU07WUFDckMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLElBQUksS0FBSyxTQUFTO1lBQzFDLGVBQWUsRUFBRSxJQUFJLENBQUMsSUFBSSxLQUFLLE9BQU87WUFDdEMsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsWUFBWSxLQUFLLE9BQU87WUFDaEUsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsWUFBWSxLQUFLLEtBQUs7WUFDNUQsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDakMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDL0IsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDL0IsY0FBYyxFQUFFLElBQUksQ0FBQyxTQUFTO1NBQy9CLENBQUM7SUFDSixDQUFDO0lBRUQsWUFDbUIsR0FBc0IsRUFDdEIsS0FBd0YsRUFDeEYsTUFBYztRQUUvQixLQUFLLEVBQUUsQ0FBQztRQUpTLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3RCLFVBQUssR0FBTCxLQUFLLENBQW1GO1FBQ3hGLFdBQU0sR0FBTixNQUFNLENBQVE7UUFoSXpCLFdBQU0sR0FBaUIsU0FBUyxDQUFDO1FBV2pDLFVBQUssR0FBd0IsU0FBUyxDQUFDO1FBWXZDLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFZM0IsYUFBUSxHQUFZLEtBQUssQ0FBQztRQVkxQixlQUFVLEdBQVksS0FBSyxDQUFDO1FBWTVCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFZMUIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQVczQixVQUFLLEdBQXNCLElBQUksQ0FBQztRQVdoQyxrQkFBYSxHQUFvQixPQUFPLENBQUM7UUFtRGpELG1EQUFtRDtRQUMzQyw4QkFBeUIsR0FBRyxDQUFDLEtBQVksRUFBUSxFQUFFO1lBQ3pELElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtnQkFDakIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUN2QixLQUFLLENBQUMsd0JBQXdCLEVBQUUsQ0FBQzthQUNsQztRQUNILENBQUMsQ0FBQztJQW5CRixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFO1lBQ2pDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMseUJBQXlCLENBQUMsQ0FBQztRQUNyRixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUSxXQUFXO1FBQ2xCLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDeEYsQ0FBQzs4R0F4SlUsUUFBUTtrR0FBUixRQUFRLG9aQzNCckIsMlVBSUE7O0FEaURFO0lBREMsWUFBWSxFQUFFO3dDQUdkO0FBVUQ7SUFEQyxZQUFZLEVBQUU7dUNBR2Q7QUFVRDtJQURDLFlBQVksRUFBRTt5Q0FHZDtBQVVEO0lBREMsWUFBWSxFQUFFO3VDQUdkO0FBVUQ7SUFEQyxZQUFZLEVBQUU7d0NBR2Q7MkZBNUVVLFFBQVE7a0JBUHBCLFNBQVM7K0JBQ0UsbUNBQW1DLFlBQ25DLE9BQU8sbUJBRUEsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSTtzSkFLakMsS0FBSztzQkFEUixLQUFLO2dCQVlGLElBQUk7c0JBRFAsS0FBSztnQkFhRixRQUFRO3NCQUZYLEtBQUs7Z0JBY0YsT0FBTztzQkFGVixLQUFLO2dCQWNGLFNBQVM7c0JBRlosS0FBSztnQkFjRixPQUFPO3NCQUZWLEtBQUs7Z0JBY0YsUUFBUTtzQkFGWCxLQUFLO2dCQWFGLElBQUk7c0JBRFAsS0FBSztnQkFZRixZQUFZO3NCQURmLEtBQUs7Z0JBWUYsY0FBYztzQkFEakIsV0FBVzt1QkFBQyxlQUFlO2dCQU94QixTQUFTO3NCQURaLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBIb3N0QmluZGluZyxcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgV3JBYnN0cmFjdEJhc2UgfSBmcm9tICduZ3dyL2NvcmUvYWJzdHJhY3QnO1xuaW1wb3J0IHsgaXNUaGVtZUNvbG9yLCBXclRoZW1lQ29sb3IgfSBmcm9tICduZ3dyL2NvcmUvY29sb3InO1xuaW1wb3J0IHsgSW5wdXRCb29sZWFuIH0gZnJvbSAnbmd3ci9jb3JlL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgU2FmZUFueSB9IGZyb20gJ25nd3IvY29yZS90eXBlcyc7XG5pbXBvcnQgeyB3ckljb25OYW1lIH0gZnJvbSAnbmd3ci9pY29uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnd3ItYnRuLCBidXR0b25bd3ItYnRuXSwgYVt3ci1idG5dJyxcbiAgZXhwb3J0QXM6ICd3ckJ0bicsXG4gIHRlbXBsYXRlVXJsOiAnLi9idXR0b24uaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBXckJ1dHRvbiBleHRlbmRzIFdyQWJzdHJhY3RCYXNlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAvKiogU2V0IGNvbG9yIG9mIGB3ci1idG5gOyAqL1xuICBASW5wdXQoKVxuICBnZXQgY29sb3IoKTogV3JUaGVtZUNvbG9yIHtcbiAgICByZXR1cm4gdGhpcy5fY29sb3I7XG4gIH1cbiAgc2V0IGNvbG9yKHZhbHVlOiBXclRoZW1lQ29sb3IpIHtcbiAgICB0aGlzLl9jb2xvciA9IGlzVGhlbWVDb2xvcih2YWx1ZSkgPyB2YWx1ZSA6ICdwcmltYXJ5JztcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuICBwcml2YXRlIF9jb2xvcjogV3JUaGVtZUNvbG9yID0gJ3ByaW1hcnknO1xuXG4gIC8qKiBTZXQgc2l6ZSBvZiBgd3ItYnRuYDsgKi9cbiAgQElucHV0KClcbiAgZ2V0IHNpemUoKTogJ2RlZmF1bHQnIHwgJ3NtYWxsJyB7XG4gICAgcmV0dXJuIHRoaXMuX3NpemU7XG4gIH1cbiAgc2V0IHNpemUodmFsdWU6ICdkZWZhdWx0JyB8ICdzbWFsbCcpIHtcbiAgICB0aGlzLl9zaXplID0gdmFsdWU7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cbiAgcHJpdmF0ZSBfc2l6ZTogJ2RlZmF1bHQnIHwgJ3NtYWxsJyA9ICdkZWZhdWx0JztcblxuICAvKiogU2V0IG91dGxpbmVkIHN0YXRlIG9mIGB3ci1idG5gOyAqL1xuICBASW5wdXQoKVxuICBASW5wdXRCb29sZWFuKClcbiAgZ2V0IG91dGxpbmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9vdXRsaW5lZDtcbiAgfVxuICBzZXQgb3V0bGluZWQodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgIHRoaXMuX291dGxpbmVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuICBwcml2YXRlIF9vdXRsaW5lZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBTZXQgcm91bmRlZCBzdGF0ZSBvZiBgd3ItYnRuYDsgKi9cbiAgQElucHV0KClcbiAgQElucHV0Qm9vbGVhbigpXG4gIGdldCByb3VuZGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9yb3VuZGVkO1xuICB9XG4gIHNldCByb3VuZGVkKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICB0aGlzLl9yb3VuZGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuICBwcml2YXRlIF9yb3VuZGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIFNldCBmdWxsd2lkdGggc3RhdGUgb2YgYHdyLWJ0bmA7ICovXG4gIEBJbnB1dCgpXG4gIEBJbnB1dEJvb2xlYW4oKVxuICBnZXQgZnVsbHdpZHRoKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9mdWxsd2lkdGg7XG4gIH1cbiAgc2V0IGZ1bGx3aWR0aCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5fZnVsbHdpZHRoID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuICBwcml2YXRlIF9mdWxsd2lkdGg6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKiogU2V0IGxvYWRpbmcgc3RhdGUgb2YgYHdyLWJ0bmA7ICovXG4gIEBJbnB1dCgpXG4gIEBJbnB1dEJvb2xlYW4oKVxuICBnZXQgbG9hZGluZygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fbG9hZGluZztcbiAgfVxuICBzZXQgbG9hZGluZyh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5fbG9hZGluZyA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cbiAgcHJpdmF0ZSBfbG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBTZXQgZGlzYWJsZWQgc3RhdGUgb2YgYHdyLWJ0bmA7ICovXG4gIEBJbnB1dCgpXG4gIEBJbnB1dEJvb2xlYW4oKVxuICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xuICB9XG4gIHNldCBkaXNhYmxlZCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG4gIHByaXZhdGUgX2Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIFNldCBpY29uIG9mIGB3ci1idG5gOyAqL1xuICBASW5wdXQoKVxuICBnZXQgaWNvbigpOiB3ckljb25OYW1lIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX2ljb247XG4gIH1cbiAgc2V0IGljb24odmFsdWU6IHdySWNvbk5hbWUgfCBudWxsKSB7XG4gICAgdGhpcy5faWNvbiA9IHZhbHVlO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG4gIHByaXZhdGUgX2ljb246IHdySWNvbk5hbWUgfCBudWxsID0gbnVsbDtcblxuICAvKiogU2V0IGljb24gcG9zaXRpb24gb2YgYHdyLWJ0bmA7ICovXG4gIEBJbnB1dCgpXG4gIGdldCBpY29uUG9zaXRpb24oKTogJ3N0YXJ0JyB8ICdlbmQnIHtcbiAgICByZXR1cm4gdGhpcy5faWNvblBvc2l0aW9uO1xuICB9XG4gIHNldCBpY29uUG9zaXRpb24odmFsdWU6ICdzdGFydCcgfCAnZW5kJykge1xuICAgIHRoaXMuX2ljb25Qb3NpdGlvbiA9IHZhbHVlO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG4gIHByaXZhdGUgX2ljb25Qb3NpdGlvbjogJ3N0YXJ0JyB8ICdlbmQnID0gJ3N0YXJ0JztcblxuICAvKiogU2V0IGVsZW1lbnQgZGlzYWJsZWQgYXR0cmlidXRlICovXG4gIEBIb3N0QmluZGluZygnYXR0ci5kaXNhYmxlZCcpXG4gIGdldCBuYXRpdmVEaXNhYmxlZCgpOiAnJyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZCA/ICcnIDogbnVsbDtcbiAgfVxuXG4gIC8qKiBTZXQgZWxlbWVudCBjbGFzc2VzICovXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgZWxDbGFzc2VzKCk6IFNhZmVBbnkge1xuICAgIHJldHVybiB7XG4gICAgICAnd3ItYnRuJzogdHJ1ZSxcbiAgICAgICd3ci1idG4tLXByaW1hcnknOiB0aGlzLmNvbG9yID09PSAncHJpbWFyeScsXG4gICAgICAnd3ItYnRuLS1zZWNvbmRhcnknOiB0aGlzLmNvbG9yID09PSAnc2Vjb25kYXJ5JyxcbiAgICAgICd3ci1idG4tLXN1Y2Nlc3MnOiB0aGlzLmNvbG9yID09PSAnc3VjY2VzcycsXG4gICAgICAnd3ItYnRuLS13YXJuaW5nJzogdGhpcy5jb2xvciA9PT0gJ3dhcm5pbmcnLFxuICAgICAgJ3dyLWJ0bi0tZGFuZ2VyJzogdGhpcy5jb2xvciA9PT0gJ2RhbmdlcicsXG4gICAgICAnd3ItYnRuLS1saWdodCc6IHRoaXMuY29sb3IgPT09ICdsaWdodCcsXG4gICAgICAnd3ItYnRuLS1tZWRpdW0nOiB0aGlzLmNvbG9yID09PSAnbWVkaXVtJyxcbiAgICAgICd3ci1idG4tLWRhcmsnOiB0aGlzLmNvbG9yID09PSAnZGFyaycsXG4gICAgICAnd3ItYnRuLS1kZWZhdWx0JzogdGhpcy5zaXplID09PSAnZGVmYXVsdCcsXG4gICAgICAnd3ItYnRuLS1zbWFsbCc6IHRoaXMuc2l6ZSA9PT0gJ3NtYWxsJyxcbiAgICAgICd3ci1idG4tLWljb24tc3RhcnQnOiB0aGlzLmljb24gJiYgdGhpcy5pY29uUG9zaXRpb24gPT09ICdzdGFydCcsXG4gICAgICAnd3ItYnRuLS1pY29uLWVuZCc6IHRoaXMuaWNvbiAmJiB0aGlzLmljb25Qb3NpdGlvbiA9PT0gJ2VuZCcsXG4gICAgICAnd3ItYnRuLS1vdXRsaW5lZCc6IHRoaXMub3V0bGluZWQsXG4gICAgICAnd3ItYnRuLS1yb3VuZGVkJzogdGhpcy5yb3VuZGVkLFxuICAgICAgJ3dyLWJ0bi0tbG9hZGluZyc6IHRoaXMubG9hZGluZyxcbiAgICAgICd3ci1idG4tLWZ1bGwnOiB0aGlzLmZ1bGx3aWR0aCxcbiAgICB9O1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZWxSZWY6IEVsZW1lbnRSZWY8SFRNTEJ1dHRvbkVsZW1lbnQgfCBIVE1MTGlua0VsZW1lbnQgfCBIVE1MQW5jaG9yRWxlbWVudCB8IEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5nWm9uZTogTmdab25lXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLnByZXZlbnRFdmVudHNXaGVuRGlzYWJsZWQpO1xuICAgIH0pO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLnByZXZlbnRFdmVudHNXaGVuRGlzYWJsZWQpO1xuICB9XG5cbiAgLyogQSBkaXNhYmxlZCBidXR0b24gc2hvdWxkbid0IGFwcGx5IGFueSBhY3Rpb25zICovXG4gIHByaXZhdGUgcHJldmVudEV2ZW50c1doZW5EaXNhYmxlZCA9IChldmVudDogRXZlbnQpOiB2b2lkID0+IHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO1xuICAgIH1cbiAgfTtcbn1cbiIsIjx3ci1zcGluICpuZ0lmPVwibG9hZGluZ1wiIGNsYXNzPVwid3ItYnRuX19zcGluXCI+PC93ci1zcGluPlxuPHdyLWljb24gKm5nSWY9XCJpY29uICYmIGljb25Qb3NpdGlvbiA9PT0gJ3N0YXJ0J1wiIGNsYXNzPVwid3ItYnRuX19pY29uXCIgW25hbWVdPVwiaWNvblwiPjwvd3ItaWNvbj5cbjxzcGFuIGNsYXNzPVwid3ItYnRuX190ZXh0XCI+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50Pjwvc3Bhbj5cbjx3ci1pY29uICpuZ0lmPVwiaWNvbiAmJiBpY29uUG9zaXRpb24gPT09ICdlbmQnXCIgY2xhc3M9XCJ3ci1idG5fX2ljb25cIiBbbmFtZV09XCJpY29uXCI+PC93ci1pY29uPlxuIl19
@@ -8,4 +8,4 @@ export const wrThemeColors = [
8
8
  'medium',
9
9
  'dark',
10
10
  ];
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saWIvY29yZS9jb2xvci9jb2xvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUc7SUFDM0IsU0FBUztJQUNULFdBQVc7SUFDWCxTQUFTO0lBQ1QsU0FBUztJQUNULFFBQVE7SUFDUixPQUFPO0lBQ1AsUUFBUTtJQUNSLE1BQU07Q0FDRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IHdyVGhlbWVDb2xvcnMgPSBbXG4gICdwcmltYXJ5JyxcbiAgJ3NlY29uZGFyeScsXG4gICdzdWNjZXNzJyxcbiAgJ3dhcm5pbmcnLFxuICAnZGFuZ2VyJyxcbiAgJ2xpZ2h0JyxcbiAgJ21lZGl1bScsXG4gICdkYXJrJyxcbl0gYXMgY29uc3Q7XG5cbmV4cG9ydCB0eXBlIFdyVGhlbWVDb2xvciA9IHR5cGVvZiB3clRoZW1lQ29sb3JzW251bWJlcl07XG4iXX0=
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saWIvY29yZS9jb2xvci9jb2xvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUc7SUFDM0IsU0FBUztJQUNULFdBQVc7SUFDWCxTQUFTO0lBQ1QsU0FBUztJQUNULFFBQVE7SUFDUixPQUFPO0lBQ1AsUUFBUTtJQUNSLE1BQU07Q0FDRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IHdyVGhlbWVDb2xvcnMgPSBbXG4gICdwcmltYXJ5JyxcbiAgJ3NlY29uZGFyeScsXG4gICdzdWNjZXNzJyxcbiAgJ3dhcm5pbmcnLFxuICAnZGFuZ2VyJyxcbiAgJ2xpZ2h0JyxcbiAgJ21lZGl1bScsXG4gICdkYXJrJyxcbl0gYXMgY29uc3Q7XG5cbmV4cG9ydCB0eXBlIFdyVGhlbWVDb2xvciA9ICh0eXBlb2Ygd3JUaGVtZUNvbG9ycylbbnVtYmVyXTtcbiJdfQ==
@@ -1,6 +1,4 @@
1
- export * from './ng-style-interface';
2
1
  export * from './on-change-type';
3
2
  export * from './on-touched-type';
4
- export * from './property-mapping';
5
3
  export * from './safe-any';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saWIvY29yZS90eXBlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsWUFBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9uZy1zdHlsZS1pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9vbi1jaGFuZ2UtdHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL29uLXRvdWNoZWQtdHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3Byb3BlcnR5LW1hcHBpbmcnO1xuZXhwb3J0ICogZnJvbSAnLi9zYWZlLWFueSc7XG4iXX0=
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saWIvY29yZS90eXBlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL29uLWNoYW5nZS10eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vb24tdG91Y2hlZC10eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vc2FmZS1hbnknO1xuIl19
@@ -0,0 +1,84 @@
1
+ import qrcodegen from './qrcodegen';
2
+ export const ERROR_LEVEL_MAP = {
3
+ L: qrcodegen.QrCode.Ecc.LOW,
4
+ M: qrcodegen.QrCode.Ecc.MEDIUM,
5
+ Q: qrcodegen.QrCode.Ecc.QUARTILE,
6
+ H: qrcodegen.QrCode.Ecc.HIGH,
7
+ };
8
+ const DEFAULT_SIZE = 160;
9
+ const DEFAULT_SCALE = 10;
10
+ const DEFAULT_PADDING = 10;
11
+ const DEFAULT_COLOR = '#000000';
12
+ const DEFAULT_BACKGROUND_COLOR = '#FFFFFF';
13
+ const DEFAULT_ICONSIZE = 40;
14
+ const DEFAULT_LEVEL = 'M';
15
+ export const plotQRCodeData = (value, level = DEFAULT_LEVEL) => {
16
+ if (!value) {
17
+ return null;
18
+ }
19
+ return qrcodegen.QrCode.encodeText(value, ERROR_LEVEL_MAP[level]);
20
+ };
21
+ export function drawCanvas(canvas, value, size = DEFAULT_SIZE, scale = DEFAULT_SCALE, padding = DEFAULT_PADDING, color = DEFAULT_COLOR, backgroundColor = DEFAULT_BACKGROUND_COLOR, iconSize = DEFAULT_ICONSIZE, icon) {
22
+ const ctx = canvas.getContext('2d');
23
+ const formattedPadding = formatPadding(padding);
24
+ canvas.style.width = `${size}px`;
25
+ canvas.style.height = `${size}px`;
26
+ if (!value) {
27
+ ctx.fillStyle = 'rgba(0, 0, 0, 0)';
28
+ ctx.fillRect(0, 0, canvas.width, canvas.height);
29
+ return;
30
+ }
31
+ canvas.width = value.size * scale + formattedPadding[1] + formattedPadding[3];
32
+ canvas.height = value.size * scale + formattedPadding[0] + formattedPadding[2];
33
+ if (!icon) {
34
+ drawCanvasBackground(ctx, canvas.width, canvas.height, scale, backgroundColor);
35
+ drawCanvasColor(ctx, value, scale, formattedPadding, backgroundColor, color);
36
+ }
37
+ else {
38
+ const iconImg = new Image();
39
+ iconImg.src = icon;
40
+ iconImg.crossOrigin = 'anonymous';
41
+ iconImg.width = iconSize * (canvas.width / size);
42
+ iconImg.height = iconSize * (canvas.width / size);
43
+ iconImg.onload = () => {
44
+ drawCanvasBackground(ctx, canvas.width, canvas.height, scale, backgroundColor);
45
+ drawCanvasColor(ctx, value, scale, formattedPadding, backgroundColor, color);
46
+ const iconCoordinate = canvas.width / 2 - (iconSize * (canvas.width / size)) / 2;
47
+ ctx.fillStyle = backgroundColor;
48
+ ctx.fillRect(iconCoordinate, iconCoordinate, iconSize * (canvas.width / size), iconSize * (canvas.width / size));
49
+ ctx.drawImage(iconImg, iconCoordinate + 10, iconCoordinate + 10, iconSize * (canvas.width / size) - 20, iconSize * (canvas.width / size) - 20);
50
+ };
51
+ iconImg.onerror = () => {
52
+ drawCanvasBackground(ctx, canvas.width, canvas.height, scale, backgroundColor);
53
+ drawCanvasColor(ctx, value, scale, formattedPadding, backgroundColor, color);
54
+ };
55
+ }
56
+ }
57
+ export function drawCanvasColor(ctx, value, scale, padding, backgroundColor, color) {
58
+ for (let y = 0; y < value.size; y++) {
59
+ for (let x = 0; x < value.size; x++) {
60
+ ctx.fillStyle = value.getModule(x, y) ? color : backgroundColor;
61
+ ctx.fillRect(padding[3] + x * scale, padding[0] + y * scale, scale, scale);
62
+ }
63
+ }
64
+ }
65
+ export function drawCanvasBackground(ctx, width, height, scale, backgroundColor) {
66
+ for (let y = 0; y < height; y++) {
67
+ for (let x = 0; x < width; x++) {
68
+ ctx.fillStyle = backgroundColor;
69
+ ctx.fillRect(x * scale, y * scale, scale, scale);
70
+ }
71
+ }
72
+ }
73
+ export function formatPadding(padding) {
74
+ if (Array.isArray(padding)) {
75
+ // Build an array of 4 elements and repeat values from padding as necessary to set the value of the array
76
+ return Array(4)
77
+ .fill(0)
78
+ .map((_, index) => padding[index % padding.length]);
79
+ }
80
+ else {
81
+ return [padding, padding, padding, padding];
82
+ }
83
+ }
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliL3FyY29kZS9nZW5lcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxTQUFTLE1BQU0sYUFBYSxDQUFDO0FBRXBDLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBK0Q7SUFDekYsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUc7SUFDM0IsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU07SUFDOUIsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVE7SUFDaEMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUk7Q0FDcEIsQ0FBQztBQUVYLE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQztBQUN6QixNQUFNLGFBQWEsR0FBRyxFQUFFLENBQUM7QUFDekIsTUFBTSxlQUFlLEdBQUcsRUFBRSxDQUFDO0FBQzNCLE1BQU0sYUFBYSxHQUFHLFNBQVMsQ0FBQztBQUNoQyxNQUFNLHdCQUF3QixHQUFHLFNBQVMsQ0FBQztBQUMzQyxNQUFNLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztBQUM1QixNQUFNLGFBQWEsR0FBaUMsR0FBRyxDQUFDO0FBRXhELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUM1QixLQUFhLEVBQ2IsUUFBc0MsYUFBYSxFQUMxQixFQUFFO0lBQzNCLElBQUksQ0FBQyxLQUFLLEVBQUU7UUFDVixPQUFPLElBQUksQ0FBQztLQUNiO0lBQ0QsT0FBTyxTQUFTLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFDcEUsQ0FBQyxDQUFDO0FBRUYsTUFBTSxVQUFVLFVBQVUsQ0FDeEIsTUFBeUIsRUFDekIsS0FBOEIsRUFDOUIsSUFB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QUNGO0FBQ0gsQ0FBQztBQUVELE1BQU0sVUFBVSxvQkFBb0IsQ0FDbEMsR0FBNkIsRUFDN0IsS0FBYSxFQUNiLE1BQWMsRUFDZCxLQUFhLEVBQ2IsZUFBdUI7SUFFdkIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUMvQixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQzlCLEdBQUcsQ0FBQyxTQUFTLEdBQUcsZUFBZSxDQUFDO1lBQ2hDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLEdBQUcsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztTQUNsRDtLQUNGO0FBQ0gsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsT0FBMEI7SUFDdEQsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQzFCLHlHQUF5RztRQUN6RyxPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUM7YUFDWixJQUFJLENBQUMsQ0FBQyxDQUFDO2FBQ1AsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztLQUN2RDtTQUFNO1FBQ0wsT0FBTyxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0tBQzdDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBxcmNvZGVnZW4gZnJvbSAnLi9xcmNvZGVnZW4nO1xuXG5leHBvcnQgY29uc3QgRVJST1JfTEVWRUxfTUFQOiB7IFtpbmRleCBpbiAnTCcgfCAnTScgfCAnUScgfCAnSCddOiBxcmNvZGVnZW4uUXJDb2RlLkVjYyB9ID0ge1xuICBMOiBxcmNvZGVnZW4uUXJDb2RlLkVjYy5MT1csXG4gIE06IHFyY29kZWdlbi5RckNvZGUuRWNjLk1FRElVTSxcbiAgUTogcXJjb2RlZ2VuLlFyQ29kZS5FY2MuUVVBUlRJTEUsXG4gIEg6IHFyY29kZWdlbi5RckNvZGUuRWNjLkhJR0gsXG59IGFzIGNvbnN0O1xuXG5jb25zdCBERUZBVUxUX1NJWkUgPSAxNjA7XG5jb25zdCBERUZBVUxUX1NDQUxFID0gMTA7XG5jb25zdCBERUZBVUxUX1BBRERJTkcgPSAxMDtcbmNvbnN0IERFRkFVTFRfQ09MT1IgPSAnIzAwMDAwMCc7XG5jb25zdCBERUZBVUxUX0JBQ0tHUk9VTkRfQ09MT1IgPSAnI0ZGRkZGRic7XG5jb25zdCBERUZBVUxUX0lDT05TSVpFID0gNDA7XG5jb25zdCBERUZBVUxUX0xFVkVMOiBrZXlvZiB0eXBlb2YgRVJST1JfTEVWRUxfTUFQID0gJ00nO1xuXG5leHBvcnQgY29uc3QgcGxvdFFSQ29kZURhdGEgPSAoXG4gIHZhbHVlOiBzdHJpbmcsXG4gIGxldmVsOiBrZXlvZiB0eXBlb2YgRVJST1JfTEVWRUxfTUFQID0gREVGQVVMVF9MRVZFTFxuKTogcXJjb2RlZ2VuLlFyQ29kZSB8IG51bGwgPT4ge1xuICBpZiAoIXZhbHVlKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgcmV0dXJuIHFyY29kZWdlbi5RckNvZGUuZW5jb2RlVGV4dCh2YWx1ZSwgRVJST1JfTEVWRUxfTUFQW2xldmVsXSk7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gZHJhd0NhbnZhcyhcbiAgY2FudmFzOiBIVE1MQ2FudmFzRWxlbWVudCxcbiAgdmFsdWU6IHFyY29kZWdlbi5RckNvZGUgfCBudWxsLFxuICBzaXplID0gREVGQVVMVF9TSVpFLFxuICBzY2FsZSA9IERFRkFVTFRfU0NBTEUsXG4gIHBhZGRpbmc6IG51bWJlciB8IG51bWJlcltdID0gREVGQVVMVF9QQURESU5HLFxuICBjb2xvciA9IERFRkFVTFRfQ09MT1IsXG4gIGJhY2tncm91bmRDb2xvciA9IERFRkFVTFRfQkFDS0dST1VORF9DT0xPUixcbiAgaWNvblNpemUgPSBERUZBVUxUX0lDT05TSVpFLFxuICBpY29uPzogc3RyaW5nXG4pOiB2b2lkIHtcbiAgY29uc3QgY3R4ID0gY2FudmFzLmdldENvbnRleHQoJzJkJykgYXMgQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEO1xuICBjb25zdCBmb3JtYXR0ZWRQYWRkaW5nID0gZm9ybWF0UGFkZGluZyhwYWRkaW5nKTtcbiAgY2FudmFzLnN0eWxlLndpZHRoID0gYCR7c2l6ZX1weGA7XG4gIGNhbnZhcy5zdHlsZS5oZWlnaHQgPSBgJHtzaXplfXB4YDtcbiAgaWYgKCF2YWx1ZSkge1xuICAgIGN0eC5maWxsU3R5bGUgPSAncmdiYSgwLCAwLCAwLCAwKSc7XG4gICAgY3R4LmZpbGxSZWN0KDAsIDAsIGNhbnZhcy53aWR0aCwgY2FudmFzLmhlaWdodCk7XG4gICAgcmV0dXJuO1xuICB9XG4gIGNhbnZhcy53aWR0aCA9IHZhbHVlLnNpemUgKiBzY2FsZSArIGZvcm1hdHRlZFBhZGRpbmdbMV0gKyBmb3JtYXR0ZWRQYWRkaW5nWzNdO1xuICBjYW52YXMuaGVpZ2h0ID0gdmFsdWUuc2l6ZSAqIHNjYWxlICsgZm9ybWF0dGVkUGFkZGluZ1swXSArIGZvcm1hdHRlZFBhZGRpbmdbMl07XG4gIGlmICghaWNvbikge1xuICAgIGRyYXdDYW52YXNCYWNrZ3JvdW5kKGN0eCwgY2FudmFzLndpZHRoLCBjYW52YXMuaGVpZ2h0LCBzY2FsZSwgYmFja2dyb3VuZENvbG9yKTtcbiAgICBkcmF3Q2FudmFzQ29sb3IoY3R4LCB2YWx1ZSwgc2NhbGUsIGZvcm1hdHRlZFBhZGRpbmcsIGJhY2tncm91bmRDb2xvciwgY29sb3IpO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IGljb25JbWcgPSBuZXcgSW1hZ2UoKTtcbiAgICBpY29uSW1nLnNyYyA9IGljb247XG4gICAgaWNvbkltZy5jcm9zc09yaWdpbiA9ICdhbm9ueW1vdXMnO1xuICAgIGljb25JbWcud2lkdGggPSBpY29uU2l6ZSAqIChjYW52YXMud2lkdGggLyBzaXplKTtcbiAgICBpY29uSW1nLmhlaWdodCA9IGljb25TaXplICogKGNhbnZhcy53aWR0aCAvIHNpemUpO1xuICAgIGljb25JbWcub25sb2FkID0gKCkgPT4ge1xuICAgICAgZHJhd0NhbnZhc0JhY2tncm91bmQoY3R4LCBjYW52YXMud2lkdGgsIGNhbnZhcy5oZWlnaHQsIHNjYWxlLCBiYWNrZ3JvdW5kQ29sb3IpO1xuICAgICAgZHJhd0NhbnZhc0NvbG9yKGN0eCwgdmFsdWUsIHNjYWxlLCBmb3JtYXR0ZWRQYWRkaW5nLCBiYWNrZ3JvdW5kQ29sb3IsIGNvbG9yKTtcbiAgICAgIGNvbnN0IGljb25Db29yZGluYXRlID0gY2FudmFzLndpZHRoIC8gMiAtIChpY29uU2l6ZSAqIChjYW52YXMud2lkdGggLyBzaXplKSkgLyAyO1xuXG4gICAgICBjdHguZmlsbFN0eWxlID0gYmFja2dyb3VuZENvbG9yO1xuICAgICAgY3R4LmZpbGxSZWN0KGljb25Db29yZGluYXRlLCBpY29uQ29vcmRpbmF0ZSwgaWNvblNpemUgKiAoY2FudmFzLndpZHRoIC8gc2l6ZSksIGljb25TaXplICogKGNhbnZhcy53aWR0aCAvIHNpemUpKTtcbiAgICAgIGN0eC5kcmF3SW1hZ2UoXG4gICAgICAgIGljb25JbWcsXG4gICAgICAgIGljb25Db29yZGluYXRlICsgMTAsXG4gICAgICAgIGljb25Db29yZGluYXRlICsgMTAsXG4gICAgICAgIGljb25TaXplICogKGNhbnZhcy53aWR0aCAvIHNpemUpIC0gMjAsXG4gICAgICAgIGljb25TaXplICogKGNhbnZhcy53aWR0aCAvIHNpemUpIC0gMjBcbiAgICAgICk7XG4gICAgfTtcbiAgICBpY29uSW1nLm9uZXJyb3IgPSAoKSA9PiB7XG4gICAgICBkcmF3Q2FudmFzQmFja2dyb3VuZChjdHgsIGNhbnZhcy53aWR0aCwgY2FudmFzLmhlaWdodCwgc2NhbGUsIGJhY2tncm91bmRDb2xvcik7XG4gICAgICBkcmF3Q2FudmFzQ29sb3IoY3R4LCB2YWx1ZSwgc2NhbGUsIGZvcm1hdHRlZFBhZGRpbmcsIGJhY2tncm91bmRDb2xvciwgY29sb3IpO1xuICAgIH07XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRyYXdDYW52YXNDb2xvcihcbiAgY3R4OiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQsXG4gIHZhbHVlOiBxcmNvZGVnZW4uUXJDb2RlLFxuICBzY2FsZTogbnVtYmVyLFxuICBwYWRkaW5nOiBudW1iZXJbXSxcbiAgYmFja2dyb3VuZENvbG9yOiBzdHJpbmcsXG4gIGNvbG9yOiBzdHJpbmdcbik6IHZvaWQge1xuICBmb3IgKGxldCB5ID0gMDsgeSA8IHZhbHVlLnNpemU7IHkrKykge1xuICAgIGZvciAobGV0IHggPSAwOyB4IDwgdmFsdWUuc2l6ZTsgeCsrKSB7XG4gICAgICBjdHguZmlsbFN0eWxlID0gdmFsdWUuZ2V0TW9kdWxlKHgsIHkpID8gY29sb3IgOiBiYWNrZ3JvdW5kQ29sb3I7XG4gICAgICBjdHguZmlsbFJlY3QocGFkZGluZ1szXSArIHggKiBzY2FsZSwgcGFkZGluZ1swXSArIHkgKiBzY2FsZSwgc2NhbGUsIHNjYWxlKTtcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRyYXdDYW52YXNCYWNrZ3JvdW5kKFxuICBjdHg6IENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRCxcbiAgd2lkdGg6IG51bWJlcixcbiAgaGVpZ2h0OiBudW1iZXIsXG4gIHNjYWxlOiBudW1iZXIsXG4gIGJhY2tncm91bmRDb2xvcjogc3RyaW5nXG4pOiB2b2lkIHtcbiAgZm9yIChsZXQgeSA9IDA7IHkgPCBoZWlnaHQ7IHkrKykge1xuICAgIGZvciAobGV0IHggPSAwOyB4IDwgd2lkdGg7IHgrKykge1xuICAgICAgY3R4LmZpbGxTdHlsZSA9IGJhY2tncm91bmRDb2xvcjtcbiAgICAgIGN0eC5maWxsUmVjdCh4ICogc2NhbGUsIHkgKiBzY2FsZSwgc2NhbGUsIHNjYWxlKTtcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdFBhZGRpbmcocGFkZGluZzogbnVtYmVyIHwgbnVtYmVyW10pOiBudW1iZXJbXSB7XG4gIGlmIChBcnJheS5pc0FycmF5KHBhZGRpbmcpKSB7XG4gICAgLy8gQnVpbGQgYW4gYXJyYXkgb2YgNCBlbGVtZW50cyBhbmQgcmVwZWF0IHZhbHVlcyBmcm9tIHBhZGRpbmcgYXMgbmVjZXNzYXJ5IHRvIHNldCB0aGUgdmFsdWUgb2YgdGhlIGFycmF5XG4gICAgcmV0dXJuIEFycmF5KDQpXG4gICAgICAuZmlsbCgwKVxuICAgICAgLm1hcCgoXywgaW5kZXgpID0+IHBhZGRpbmdbaW5kZXggJSBwYWRkaW5nLmxlbmd0aF0pO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBbcGFkZGluZywgcGFkZGluZywgcGFkZGluZywgcGFkZGluZ107XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export { WrQRCode } from './qrcode';
2
+ export { WrQRCodeModule } from './qrcode-module';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9saWIvcXJjb2RlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDcEMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgV3JRUkNvZGUgfSBmcm9tICcuL3FyY29kZSc7XG5leHBvcnQgeyBXclFSQ29kZU1vZHVsZSB9IGZyb20gJy4vcXJjb2RlLW1vZHVsZSc7XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd3ci1xcmNvZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9saWIvcXJjb2RlL25nd3ItcXJjb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -0,0 +1,19 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { WrIconModule } from 'ngwr/icon';
4
+ import { WrQRCode } from './qrcode';
5
+ import * as i0 from "@angular/core";
6
+ export class WrQRCodeModule {
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrQRCodeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.3", ngImport: i0, type: WrQRCodeModule, declarations: [WrQRCode], imports: [CommonModule, WrIconModule], exports: [WrQRCode] }); }
9
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrQRCodeModule, imports: [CommonModule, WrIconModule] }); }
10
+ }
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrQRCodeModule, decorators: [{
12
+ type: NgModule,
13
+ args: [{
14
+ imports: [CommonModule, WrIconModule],
15
+ declarations: [WrQRCode],
16
+ exports: [WrQRCode],
17
+ }]
18
+ }] });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXJjb2RlLW1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2xpYi9xcmNvZGUvcXJjb2RlLW1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXpDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBT3BDLE1BQU0sT0FBTyxjQUFjOzhHQUFkLGNBQWM7K0dBQWQsY0FBYyxpQkFIVixRQUFRLGFBRGIsWUFBWSxFQUFFLFlBQVksYUFFMUIsUUFBUTsrR0FFUCxjQUFjLFlBSmYsWUFBWSxFQUFFLFlBQVk7OzJGQUl6QixjQUFjO2tCQUwxQixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxZQUFZLENBQUM7b0JBQ3JDLFlBQVksRUFBRSxDQUFDLFFBQVEsQ0FBQztvQkFDeEIsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDO2lCQUNwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBXckljb25Nb2R1bGUgfSBmcm9tICduZ3dyL2ljb24nO1xuXG5pbXBvcnQgeyBXclFSQ29kZSB9IGZyb20gJy4vcXJjb2RlJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgV3JJY29uTW9kdWxlXSxcbiAgZGVjbGFyYXRpb25zOiBbV3JRUkNvZGVdLFxuICBleHBvcnRzOiBbV3JRUkNvZGVdLFxufSlcbmV4cG9ydCBjbGFzcyBXclFSQ29kZU1vZHVsZSB7fVxuIl19
@@ -0,0 +1,142 @@
1
+ import { isPlatformBrowser } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, HostBinding, Inject, Input, PLATFORM_ID, ViewChild, ViewEncapsulation, } from '@angular/core';
3
+ import { WrAbstractBase } from 'ngwr/core/abstract';
4
+ import { drawCanvas, plotQRCodeData } from './generator';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "ngwr/icon";
7
+ import * as i2 from "@angular/common";
8
+ export class WrQRCode extends WrAbstractBase {
9
+ get value() {
10
+ return this._value;
11
+ }
12
+ set value(value) {
13
+ this._value = value;
14
+ this.cdr.markForCheck();
15
+ }
16
+ get level() {
17
+ return this._level;
18
+ }
19
+ set level(level) {
20
+ this._level = level;
21
+ this.cdr.markForCheck();
22
+ }
23
+ get padding() {
24
+ return this._padding;
25
+ }
26
+ set padding(padding) {
27
+ this._padding = padding;
28
+ this.cdr.markForCheck();
29
+ }
30
+ get color() {
31
+ return this._color;
32
+ }
33
+ set color(color) {
34
+ this._color = color;
35
+ this.cdr.markForCheck();
36
+ }
37
+ get bgColor() {
38
+ return this._bgColor;
39
+ }
40
+ set bgColor(color) {
41
+ this._bgColor = color;
42
+ this.cdr.markForCheck();
43
+ }
44
+ get size() {
45
+ return this._size;
46
+ }
47
+ set size(size) {
48
+ this._size = size;
49
+ this.cdr.markForCheck();
50
+ }
51
+ get icon() {
52
+ return this._icon;
53
+ }
54
+ set icon(icon) {
55
+ this._icon = icon;
56
+ this.cdr.markForCheck();
57
+ }
58
+ get iconSize() {
59
+ return this._iconSize;
60
+ }
61
+ set iconSize(size) {
62
+ this._iconSize = size;
63
+ this.cdr.markForCheck();
64
+ }
65
+ constructor(pid, cdr, el, wrIconService) {
66
+ super();
67
+ this.pid = pid;
68
+ this.cdr = cdr;
69
+ this.el = el;
70
+ this.wrIconService = wrIconService;
71
+ this.class = 'wr-qrcode';
72
+ this._value = '';
73
+ this._level = 'M';
74
+ this._padding = 10;
75
+ this._color = '#000000';
76
+ this._bgColor = '#ffffff';
77
+ this._size = 150;
78
+ this._icon = '';
79
+ this._iconSize = 42;
80
+ this.isBrowser = true;
81
+ this.isBrowser = isPlatformBrowser(this.pid);
82
+ }
83
+ ngOnInit() {
84
+ this.setElBg();
85
+ }
86
+ ngAfterViewInit() {
87
+ this.drawCanvas();
88
+ }
89
+ ngOnChanges(changes) {
90
+ const { value, level, padding, color, bgColor, size, icon, iconSize } = changes;
91
+ if ((value || level || padding || color || bgColor || size || icon || iconSize) && this.canvas) {
92
+ this.drawCanvas();
93
+ }
94
+ if (bgColor) {
95
+ this.setElBg();
96
+ }
97
+ }
98
+ setElBg() {
99
+ this.el.nativeElement.style.backgroundColor = this.bgColor;
100
+ }
101
+ drawCanvas() {
102
+ if (this.canvas) {
103
+ let icon = this.wrIconService.registry.get(this.icon) || this.icon;
104
+ if (this.wrIconService.registry.has(this.icon)) {
105
+ icon = `data:image/svg+xml;base64,${btoa(icon)}`;
106
+ }
107
+ drawCanvas(this.canvas.nativeElement, plotQRCodeData(this.value, this.level), this.size, 10, this.padding, this.color, this.bgColor, this.iconSize, icon);
108
+ }
109
+ }
110
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrQRCode, deps: [{ token: PLATFORM_ID }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.WrIconService }], target: i0.ɵɵFactoryTarget.Component }); }
111
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: WrQRCode, selector: "wr-qrcode", inputs: { value: "value", level: "level", padding: "padding", color: "color", bgColor: "bgColor", size: "size", icon: "icon", iconSize: "iconSize" }, host: { properties: { "class": "this.class" } }, viewQueries: [{ propertyName: "canvas", first: true, predicate: ["canvas"], descendants: true }], exportAs: ["wrQrCode"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"isBrowser\">\n <canvas #canvas></canvas>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
112
+ }
113
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrQRCode, decorators: [{
114
+ type: Component,
115
+ args: [{ selector: 'wr-qrcode', exportAs: 'wrQrCode', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ng-container *ngIf=\"isBrowser\">\n <canvas #canvas></canvas>\n</ng-container>\n" }]
116
+ }], ctorParameters: function () { return [{ type: Object, decorators: [{
117
+ type: Inject,
118
+ args: [PLATFORM_ID]
119
+ }] }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i1.WrIconService }]; }, propDecorators: { class: [{
120
+ type: HostBinding,
121
+ args: ['class']
122
+ }], canvas: [{
123
+ type: ViewChild,
124
+ args: ['canvas', { static: false }]
125
+ }], value: [{
126
+ type: Input
127
+ }], level: [{
128
+ type: Input
129
+ }], padding: [{
130
+ type: Input
131
+ }], color: [{
132
+ type: Input
133
+ }], bgColor: [{
134
+ type: Input
135
+ }], size: [{
136
+ type: Input
137
+ }], icon: [{
138
+ type: Input
139
+ }], iconSize: [{
140
+ type: Input
141
+ }] } });
142
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXJjb2RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliL3FyY29kZS9xcmNvZGUudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9saWIvcXJjb2RlL3FyY29kZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFFTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUVULFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUdMLFdBQVcsRUFFWCxTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUdwRCxPQUFPLEVBQUUsVUFBVSxFQUFtQixjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7QUFTMUUsTUFBTSxPQUFPLFFBQVMsU0FBUSxjQUFjO0lBSzFDLElBQ0ksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBYTtRQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFHRCxJQUNJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUNELElBQUksS0FBSyxDQUFDLEtBQW1DO1FBQzNDLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUdELElBQ0ksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBQ0QsSUFBSSxPQUFPLENBQUMsT0FBZTtRQUN6QixJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztRQUN4QixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFHRCxJQUNJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUNELElBQUksS0FBSyxDQUFDLEtBQWE7UUFDckIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBR0QsSUFDSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFDRCxJQUFJLE9BQU8sQ0FBQyxLQUFhO1FBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUdELElBQ0ksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFBSSxJQUFJLENBQUMsSUFBWTtRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFHRCxJQUNJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUNELElBQUksSUFBSSxDQUFDLElBQXlCO1FBQ2hDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUdELElBQ0ksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBQ0QsSUFBSSxRQUFRLENBQUMsSUFBWTtRQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUN0QixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFLRCxZQUMrQixHQUFXLEVBQ3ZCLEdBQXNCLEVBQ3RCLEVBQWMsRUFDZCxhQUE0QjtRQUU3QyxLQUFLLEVBQUUsQ0FBQztRQUxxQixRQUFHLEdBQUgsR0FBRyxDQUFRO1FBQ3ZCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3RCLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDZCxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQTFGekIsVUFBSyxHQUFHLFdBQVcsQ0FBQztRQVlsQyxXQUFNLEdBQVcsRUFBRSxDQUFDO1FBVXBCLFdBQU0sR0FBaUMsR0FBRyxDQUFDO1FBVTNDLGFBQVEsR0FBVyxFQUFFLENBQUM7UUFVdEIsV0FBTSxHQUFXLFNBQVMsQ0FBQztRQVUzQixhQUFRLEdBQVcsU0FBUyxDQUFDO1FBVTdCLFVBQUssR0FBVyxHQUFHLENBQUM7UUFVcEIsVUFBSyxHQUF3QixFQUFFLENBQUM7UUFVaEMsY0FBUyxHQUFXLEVBQUUsQ0FBQztRQUUvQixjQUFTLEdBQUcsSUFBSSxDQUFDO1FBU2YsSUFBSSxDQUFDLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxHQUFHLE9BQU8sQ0FBQztRQUVoRixJQUFJLENBQUMsS0FBSyxJQUFJLEtBQUssSUFBSSxPQUFPLElBQUksS0FBSyxJQUFJLE9BQU8sSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLFFBQVEsQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDOUYsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1NBQ25CO1FBRUQsSUFBSSxPQUFPLEVBQUU7WUFDWCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDaEI7SUFDSCxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUM3RCxDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNmLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQztZQUVuRSxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQzlDLElBQUksR0FBRyw2QkFBNkIsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7YUFDbEQ7WUFFRCxVQUFVLENBQ1IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQ3pCLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsRUFDdEMsSUFBSSxDQUFDLElBQUksRUFDVCxFQUFFLEVBQ0YsSUFBSSxDQUFDLE9BQU8sRUFDWixJQUFJLENBQUMsS0FBSyxFQUNWLElBQUksQ0FBQyxPQUFPLEVBQ1osSUFBSSxDQUFDLFFBQVEsRUFDYixJQUFJLENBQ0wsQ0FBQztTQUNIO0lBQ0gsQ0FBQzs4R0E3SVUsUUFBUSxrQkF3RlQsV0FBVztrR0F4RlYsUUFBUSw4WkM5QnJCLG9GQUdBOzsyRkQyQmEsUUFBUTtrQkFQcEIsU0FBUzsrQkFDRSxXQUFXLFlBQ1gsVUFBVSxtQkFFSCx1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJOzswQkEwRmxDLE1BQU07MkJBQUMsV0FBVztpSUF2RkMsS0FBSztzQkFBMUIsV0FBVzt1QkFBQyxPQUFPO2dCQUVvQixNQUFNO3NCQUE3QyxTQUFTO3VCQUFDLFFBQVEsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBR2xDLEtBQUs7c0JBRFIsS0FBSztnQkFXRixLQUFLO3NCQURSLEtBQUs7Z0JBV0YsT0FBTztzQkFEVixLQUFLO2dCQVdGLEtBQUs7c0JBRFIsS0FBSztnQkFXRixPQUFPO3NCQURWLEtBQUs7Z0JBV0YsSUFBSTtzQkFEUCxLQUFLO2dCQVdGLElBQUk7c0JBRFAsS0FBSztnQkFXRixRQUFRO3NCQURYLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBQTEFURk9STV9JRCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFdyQWJzdHJhY3RCYXNlIH0gZnJvbSAnbmd3ci9jb3JlL2Fic3RyYWN0JztcbmltcG9ydCB7IHdySWNvbk5hbWUsIFdySWNvblNlcnZpY2UgfSBmcm9tICduZ3dyL2ljb24nO1xuXG5pbXBvcnQgeyBkcmF3Q2FudmFzLCBFUlJPUl9MRVZFTF9NQVAsIHBsb3RRUkNvZGVEYXRhIH0gZnJvbSAnLi9nZW5lcmF0b3InO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd3ci1xcmNvZGUnLFxuICBleHBvcnRBczogJ3dyUXJDb2RlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3FyY29kZS5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIFdyUVJDb2RlIGV4dGVuZHMgV3JBYnN0cmFjdEJhc2UgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcyB7XG4gIEBIb3N0QmluZGluZygnY2xhc3MnKSBjbGFzcyA9ICd3ci1xcmNvZGUnO1xuXG4gIEBWaWV3Q2hpbGQoJ2NhbnZhcycsIHsgc3RhdGljOiBmYWxzZSB9KSBjYW52YXMhOiBFbGVtZW50UmVmPEhUTUxDYW52YXNFbGVtZW50PjtcblxuICBASW5wdXQoKVxuICBnZXQgdmFsdWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gIH1cbiAgc2V0IHZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG4gIHByaXZhdGUgX3ZhbHVlOiBzdHJpbmcgPSAnJztcblxuICBASW5wdXQoKVxuICBnZXQgbGV2ZWwoKToga2V5b2YgdHlwZW9mIEVSUk9SX0xFVkVMX01BUCB7XG4gICAgcmV0dXJuIHRoaXMuX2xldmVsO1xuICB9XG4gIHNldCBsZXZlbChsZXZlbDoga2V5b2YgdHlwZW9mIEVSUk9SX0xFVkVMX01BUCkge1xuICAgIHRoaXMuX2xldmVsID0gbGV2ZWw7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cbiAgcHJpdmF0ZSBfbGV2ZWw6IGtleW9mIHR5cGVvZiBFUlJPUl9MRVZFTF9NQVAgPSAnTSc7XG5cbiAgQElucHV0KClcbiAgZ2V0IHBhZGRpbmcoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fcGFkZGluZztcbiAgfVxuICBzZXQgcGFkZGluZyhwYWRkaW5nOiBudW1iZXIpIHtcbiAgICB0aGlzLl9wYWRkaW5nID0gcGFkZGluZztcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuICBwcml2YXRlIF9wYWRkaW5nOiBudW1iZXIgPSAxMDtcblxuICBASW5wdXQoKVxuICBnZXQgY29sb3IoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fY29sb3I7XG4gIH1cbiAgc2V0IGNvbG9yKGNvbG9yOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9jb2xvciA9IGNvbG9yO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG4gIHByaXZhdGUgX2NvbG9yOiBzdHJpbmcgPSAnIzAwMDAwMCc7XG5cbiAgQElucHV0KClcbiAgZ2V0IGJnQ29sb3IoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fYmdDb2xvcjtcbiAgfVxuICBzZXQgYmdDb2xvcihjb2xvcjogc3RyaW5nKSB7XG4gICAgdGhpcy5fYmdDb2xvciA9IGNvbG9yO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG4gIHByaXZhdGUgX2JnQ29sb3I6IHN0cmluZyA9ICcjZmZmZmZmJztcblxuICBASW5wdXQoKVxuICBnZXQgc2l6ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9zaXplO1xuICB9XG4gIHNldCBzaXplKHNpemU6IG51bWJlcikge1xuICAgIHRoaXMuX3NpemUgPSBzaXplO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG4gIHByaXZhdGUgX3NpemU6IG51bWJlciA9IDE1MDtcblxuICBASW5wdXQoKVxuICBnZXQgaWNvbigpOiBzdHJpbmcgfCB3ckljb25OYW1lIHtcbiAgICByZXR1cm4gdGhpcy5faWNvbjtcbiAgfVxuICBzZXQgaWNvbihpY29uOiBzdHJpbmcgfCB3ckljb25OYW1lKSB7XG4gICAgdGhpcy5faWNvbiA9IGljb247XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cbiAgcHJpdmF0ZSBfaWNvbjogc3RyaW5nIHwgd3JJY29uTmFtZSA9ICcnO1xuXG4gIEBJbnB1dCgpXG4gIGdldCBpY29uU2l6ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9pY29uU2l6ZTtcbiAgfVxuICBzZXQgaWNvblNpemUoc2l6ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5faWNvblNpemUgPSBzaXplO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG4gIHByaXZhdGUgX2ljb25TaXplOiBudW1iZXIgPSA0MjtcblxuICBpc0Jyb3dzZXIgPSB0cnVlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoUExBVEZPUk1fSUQpIHByaXZhdGUgcGlkOiBPYmplY3QsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZWw6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSB3ckljb25TZXJ2aWNlOiBXckljb25TZXJ2aWNlLFxuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuaXNCcm93c2VyID0gaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5waWQpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRFbEJnKCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5kcmF3Q2FudmFzKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgY29uc3QgeyB2YWx1ZSwgbGV2ZWwsIHBhZGRpbmcsIGNvbG9yLCBiZ0NvbG9yLCBzaXplLCBpY29uLCBpY29uU2l6ZSB9ID0gY2hhbmdlcztcblxuICAgIGlmICgodmFsdWUgfHwgbGV2ZWwgfHwgcGFkZGluZyB8fCBjb2xvciB8fCBiZ0NvbG9yIHx8IHNpemUgfHwgaWNvbiB8fCBpY29uU2l6ZSkgJiYgdGhpcy5jYW52YXMpIHtcbiAgICAgIHRoaXMuZHJhd0NhbnZhcygpO1xuICAgIH1cblxuICAgIGlmIChiZ0NvbG9yKSB7XG4gICAgICB0aGlzLnNldEVsQmcoKTtcbiAgICB9XG4gIH1cblxuICBzZXRFbEJnKCk6IHZvaWQge1xuICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5iYWNrZ3JvdW5kQ29sb3IgPSB0aGlzLmJnQ29sb3I7XG4gIH1cblxuICBkcmF3Q2FudmFzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNhbnZhcykge1xuICAgICAgbGV0IGljb24gPSB0aGlzLndySWNvblNlcnZpY2UucmVnaXN0cnkuZ2V0KHRoaXMuaWNvbikgfHwgdGhpcy5pY29uO1xuXG4gICAgICBpZiAodGhpcy53ckljb25TZXJ2aWNlLnJlZ2lzdHJ5Lmhhcyh0aGlzLmljb24pKSB7XG4gICAgICAgIGljb24gPSBgZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCwke2J0b2EoaWNvbil9YDtcbiAgICAgIH1cblxuICAgICAgZHJhd0NhbnZhcyhcbiAgICAgICAgdGhpcy5jYW52YXMubmF0aXZlRWxlbWVudCxcbiAgICAgICAgcGxvdFFSQ29kZURhdGEodGhpcy52YWx1ZSwgdGhpcy5sZXZlbCksXG4gICAgICAgIHRoaXMuc2l6ZSxcbiAgICAgICAgMTAsXG4gICAgICAgIHRoaXMucGFkZGluZyxcbiAgICAgICAgdGhpcy5jb2xvcixcbiAgICAgICAgdGhpcy5iZ0NvbG9yLFxuICAgICAgICB0aGlzLmljb25TaXplLFxuICAgICAgICBpY29uXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzQnJvd3NlclwiPlxuICA8Y2FudmFzICNjYW52YXM+PC9jYW52YXM+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==