@jooler/inputs 0.0.55 → 0.0.56

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 (21) hide show
  1. package/esm2022/lib/choose-general-item/choose-general-item.component.mjs +75 -14
  2. package/esm2022/lib/choose-general-item-renderer/choose-general-item-renderer-change-event.interface.mjs +2 -0
  3. package/esm2022/lib/choose-general-item-renderer/choose-general-item-renderer-validation-type.enum.mjs +6 -0
  4. package/esm2022/lib/choose-general-item-renderer/choose-general-item-renderer.component.mjs +112 -18
  5. package/esm2022/lib/formcontrol-validation-msg-for-ng-select.directive.mjs +126 -0
  6. package/esm2022/lib/inputs.module.mjs +21 -15
  7. package/esm2022/lib/tooltip-msg-error/tooltip-message-type.enum.mjs +8 -0
  8. package/esm2022/lib/tooltip-msg-error/tooltip-msg-error.component.mjs +213 -0
  9. package/esm2022/public-api.mjs +16 -12
  10. package/fesm2022/inputs.mjs +953 -459
  11. package/fesm2022/inputs.mjs.map +1 -1
  12. package/lib/choose-general-item/choose-general-item.component.d.ts +8 -3
  13. package/lib/choose-general-item-renderer/choose-general-item-renderer-change-event.interface.d.ts +9 -0
  14. package/lib/choose-general-item-renderer/choose-general-item-renderer-validation-type.enum.d.ts +4 -0
  15. package/lib/choose-general-item-renderer/choose-general-item-renderer.component.d.ts +19 -4
  16. package/lib/formcontrol-validation-msg-for-ng-select.directive.d.ts +23 -0
  17. package/lib/inputs.module.d.ts +9 -7
  18. package/lib/tooltip-msg-error/tooltip-message-type.enum.d.ts +6 -0
  19. package/lib/tooltip-msg-error/tooltip-msg-error.component.d.ts +49 -0
  20. package/package.json +2 -2
  21. package/public-api.d.ts +15 -11
@@ -0,0 +1,126 @@
1
+ import { Directive, HostListener, Input } from '@angular/core';
2
+ import { NgModel } from '@angular/forms';
3
+ import { PrimaryColors } from './primary-colors';
4
+ import { ValidationError } from './services/validation-message.service';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/forms";
7
+ export class FormControlValidationMsgDirectiveForNgSelect {
8
+ elRef;
9
+ control;
10
+ errorMessage;
11
+ showDot;
12
+ errorDivId;
13
+ afterEnd = true;
14
+ showBoxError = true;
15
+ validationError = ValidationError;
16
+ statusChangeSubscription;
17
+ constructor(elRef, control) {
18
+ this.elRef = elRef;
19
+ this.control = control;
20
+ }
21
+ ngOnInit() {
22
+ if (!this.errorDivId) {
23
+ this.errorDivId = this.control.name;
24
+ }
25
+ this.statusChangeSubscription = this.control.statusChanges.subscribe(status => {
26
+ if (status == 'INVALID' && this.control.touched) {
27
+ this.showNgSelectError();
28
+ }
29
+ else {
30
+ this.removeError();
31
+ }
32
+ });
33
+ this.control.valueChanges.subscribe({
34
+ next: () => {
35
+ if (this.control.errors && this.control.touched) {
36
+ this.showNgSelectError();
37
+ }
38
+ else {
39
+ this.removeError();
40
+ }
41
+ },
42
+ });
43
+ }
44
+ onFocusout() {
45
+ if (this.control.errors && this.control.touched) {
46
+ this.showNgSelectError();
47
+ }
48
+ else {
49
+ this.removeError();
50
+ }
51
+ }
52
+ removeError() {
53
+ this.errorMessage = '';
54
+ const errorElement = document.getElementById(this.errorDivId);
55
+ if (errorElement)
56
+ errorElement.remove();
57
+ }
58
+ showNgSelectError() {
59
+ this.removeError();
60
+ const valErrors = this.control.errors;
61
+ if (this.control.errors.length > 1) {
62
+ this.showDot = true;
63
+ }
64
+ else {
65
+ this.showDot = false;
66
+ }
67
+ if (valErrors) {
68
+ const keys = Object.keys(valErrors);
69
+ for (let i = 0; i < keys.length; i++) {
70
+ switch (keys[i]) {
71
+ case 'required': {
72
+ let message = this.validationError.getRelevantError(keys[i], valErrors);
73
+ this.errorMessage += ` ${this.errorMessage ? '<br>' : ''}${this.showDot ? '\u25CF ' + message : message}`;
74
+ this.control.control.setErrors({ required: true, message: message }, { emitEvent: false });
75
+ break;
76
+ }
77
+ case 'validatePhoneNumber': {
78
+ let message = this.validationError.getRelevantError(keys[i], valErrors);
79
+ this.errorMessage += ` ${this.errorMessage ? '<br>' : ''}${this.showDot ? '\u25CF ' + message : message}`;
80
+ this.control.control.setErrors({ validatePhoneNumber: true, message: message }, { emitEvent: false });
81
+ break;
82
+ }
83
+ case 'customMessage': {
84
+ console.log('valErrors', valErrors);
85
+ let message = valErrors.message;
86
+ this.errorMessage += ` ${this.errorMessage ? '<br>' : ''}${this.showDot ? '\u25CF ' + message : message}`;
87
+ }
88
+ }
89
+ }
90
+ if (this.showBoxError) {
91
+ const errDiv = `<div style="color:${PrimaryColors.$primaryRedColor}; width: ${this.afterEnd ? this.elRef.nativeElement.offsetWidth + 'px' : '100%'}; min-width: 100%; background-color: ${PrimaryColors.$primaryLightRedColor}; padding: .5rem; border-radius: .5rem; border: .1rem solid ${PrimaryColors.$primaryRedColor} ;border-left: .75rem solid ${PrimaryColors.$primaryRedColor}; margin-top:.5rem; font-size: 1.2rem; " id="` +
92
+ this.errorDivId +
93
+ '">' +
94
+ `<h3 style= " font-size: 1.3rem; margin-bottom:.5rem; margin:0; color: ${PrimaryColors.$primaryRedColor}; font-weight: 700; line-height: 1.6rem;">` +
95
+ 'Please Complete all details' +
96
+ '</h3>' +
97
+ this.errorMessage +
98
+ '</div>';
99
+ if (!this.afterEnd)
100
+ this.elRef.nativeElement.parentElement.insertAdjacentHTML('afterend', errDiv);
101
+ else {
102
+ this.elRef.nativeElement.insertAdjacentHTML('afterend', errDiv);
103
+ }
104
+ }
105
+ }
106
+ }
107
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormControlValidationMsgDirectiveForNgSelect, deps: [{ token: i0.ElementRef }, { token: i1.NgControl }], target: i0.ɵɵFactoryTarget.Directive });
108
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: FormControlValidationMsgDirectiveForNgSelect, selector: "[appFormControlValidationMsgForNgSelect]", inputs: { afterEnd: "afterEnd", showBoxError: "showBoxError" }, host: { listeners: { "focusout": "onFocusout()" } }, providers: [NgModel], ngImport: i0 });
109
+ }
110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormControlValidationMsgDirectiveForNgSelect, decorators: [{
111
+ type: Directive,
112
+ args: [{
113
+ selector: '[appFormControlValidationMsgForNgSelect]',
114
+ providers: [NgModel],
115
+ }]
116
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.NgControl }]; }, propDecorators: { afterEnd: [{
117
+ type: Input,
118
+ args: ['afterEnd']
119
+ }], showBoxError: [{
120
+ type: Input,
121
+ args: ['showBoxError']
122
+ }], onFocusout: [{
123
+ type: HostListener,
124
+ args: ['focusout']
125
+ }] } });
126
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWNvbnRyb2wtdmFsaWRhdGlvbi1tc2ctZm9yLW5nLXNlbGVjdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2xpYi9mb3JtY29udHJvbC12YWxpZGF0aW9uLW1zZy1mb3Itbmctc2VsZWN0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUFhLE9BQU8sRUFBb0IsTUFBTSxnQkFBZ0IsQ0FBQztBQUV0RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVDQUF1QyxDQUFDOzs7QUFNeEUsTUFBTSxPQUFPLDRDQUE0QztJQVU3QztJQUNBO0lBVlYsWUFBWSxDQUFNO0lBQ2xCLE9BQU8sQ0FBVTtJQUNqQixVQUFVLENBQWtCO0lBQ1QsUUFBUSxHQUFZLElBQUksQ0FBQztJQUNyQixZQUFZLEdBQVksSUFBSSxDQUFDO0lBQ3BELGVBQWUsR0FBRyxlQUFlLENBQUM7SUFDbEMsd0JBQXdCLENBQWU7SUFFdkMsWUFDVSxLQUFpQixFQUNqQixPQUFrQjtRQURsQixVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ2pCLFlBQU8sR0FBUCxPQUFPLENBQVc7SUFDeEIsQ0FBQztJQUVMLFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNwQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO1NBQ3JDO1FBQ0QsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUM1RSxJQUFJLE1BQU0sSUFBSSxTQUFTLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUU7Z0JBQy9DLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO2FBQzFCO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQzthQUNwQjtRQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDO1lBQ2xDLElBQUksRUFBRSxHQUFHLEVBQUU7Z0JBQ1QsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRTtvQkFDL0MsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7aUJBQzFCO3FCQUFNO29CQUNMLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztpQkFDcEI7WUFDSCxDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUdELFVBQVU7UUFDUixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFO1lBQy9DLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1NBQzFCO2FBQU07WUFDTCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDcEI7SUFDSCxDQUFDO0lBRU8sV0FBVztRQUNqQixJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUUsQ0FBQztRQUN2QixNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxVQUFvQixDQUFDLENBQUM7UUFDeEUsSUFBSSxZQUFZO1lBQUUsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQzFDLENBQUM7SUFFTyxpQkFBaUI7UUFDdkIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLE1BQU0sU0FBUyxHQUFxQixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztRQUV4RCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDbEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7U0FDckI7YUFBTTtZQUNMLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1NBQ3RCO1FBQ0QsSUFBSSxTQUFTLEVBQUU7WUFDYixNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3BDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO2dCQUNwQyxRQUFRLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRTtvQkFDZixLQUFLLFVBQVUsQ0FBQyxDQUFDO3dCQUNmLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO3dCQUN4RSxJQUFJLENBQUMsWUFBWSxJQUFJLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7d0JBQzFHLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FDNUIsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsRUFDcEMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQ3JCLENBQUM7d0JBQ0YsTUFBTTtxQkFDUDtvQkFDRCxLQUFLLHFCQUFxQixDQUFDLENBQUM7d0JBQzFCLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO3dCQUN4RSxJQUFJLENBQUMsWUFBWSxJQUFJLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7d0JBQzFHLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FDNUIsRUFBRSxtQkFBbUIsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxFQUMvQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FDckIsQ0FBQzt3QkFDRixNQUFNO3FCQUNQO29CQUNELEtBQUssZUFBZSxDQUFDLENBQUM7d0JBQ3BCLE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxDQUFDO3dCQUNwQyxJQUFJLE9BQU8sR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDO3dCQUNoQyxJQUFJLENBQUMsWUFBWSxJQUFJLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7cUJBQzNHO2lCQUNGO2FBQ0Y7WUFDRCxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7Z0JBQ3JCLE1BQU0sTUFBTSxHQUNWLHFCQUFxQixhQUFhLENBQUMsZ0JBQWdCLFlBQVksSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSx3Q0FBd0MsYUFBYSxDQUFDLHFCQUFxQiwrREFBK0QsYUFBYSxDQUFDLGdCQUFnQiwrQkFBK0IsYUFBYSxDQUFDLGdCQUFnQixpREFBaUQ7b0JBQ3paLElBQUksQ0FBQyxVQUFVO29CQUNmLElBQUk7b0JBQ0osOEVBQThFLGFBQWEsQ0FBQyxnQkFBZ0IsNENBQTRDO29CQUN4Siw2QkFBNkI7b0JBQzdCLE9BQU87b0JBQ1AsSUFBSSxDQUFDLFlBQVk7b0JBQ2pCLFFBQVEsQ0FBQztnQkFDWCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVE7b0JBQ2hCLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUM7cUJBQzNFO29CQUNILElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztpQkFDakU7YUFDRjtTQUNGO0lBQ0gsQ0FBQzt3R0ExR1UsNENBQTRDOzRGQUE1Qyw0Q0FBNEMsd0xBRjVDLENBQUMsT0FBTyxDQUFDOzs0RkFFVCw0Q0FBNEM7a0JBSnhELFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDBDQUEwQztvQkFDcEQsU0FBUyxFQUFFLENBQUMsT0FBTyxDQUFDO2lCQUNyQjt5SEFLb0IsUUFBUTtzQkFBMUIsS0FBSzt1QkFBQyxVQUFVO2dCQUNNLFlBQVk7c0JBQWxDLEtBQUs7dUJBQUMsY0FBYztnQkFnQ3JCLFVBQVU7c0JBRFQsWUFBWTt1QkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTmdDb250cm9sLCBOZ01vZGVsLCBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgUHJpbWFyeUNvbG9ycyB9IGZyb20gJy4vcHJpbWFyeS1jb2xvcnMnO1xyXG5pbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3IgfSBmcm9tICcuL3NlcnZpY2VzL3ZhbGlkYXRpb24tbWVzc2FnZS5zZXJ2aWNlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2FwcEZvcm1Db250cm9sVmFsaWRhdGlvbk1zZ0Zvck5nU2VsZWN0XScsXHJcbiAgcHJvdmlkZXJzOiBbTmdNb2RlbF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGb3JtQ29udHJvbFZhbGlkYXRpb25Nc2dEaXJlY3RpdmVGb3JOZ1NlbGVjdCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgZXJyb3JNZXNzYWdlOiBhbnk7XHJcbiAgc2hvd0RvdDogYm9vbGVhbjtcclxuICBlcnJvckRpdklkOiBzdHJpbmcgfCBudW1iZXI7XHJcbiAgQElucHV0KCdhZnRlckVuZCcpIGFmdGVyRW5kOiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoJ3Nob3dCb3hFcnJvcicpIHNob3dCb3hFcnJvcjogYm9vbGVhbiA9IHRydWU7XHJcbiAgdmFsaWRhdGlvbkVycm9yID0gVmFsaWRhdGlvbkVycm9yO1xyXG4gIHN0YXR1c0NoYW5nZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgZWxSZWY6IEVsZW1lbnRSZWYsXHJcbiAgICBwcml2YXRlIGNvbnRyb2w6IE5nQ29udHJvbFxyXG4gICkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmVycm9yRGl2SWQpIHtcclxuICAgICAgdGhpcy5lcnJvckRpdklkID0gdGhpcy5jb250cm9sLm5hbWU7XHJcbiAgICB9XHJcbiAgICB0aGlzLnN0YXR1c0NoYW5nZVN1YnNjcmlwdGlvbiA9IHRoaXMuY29udHJvbC5zdGF0dXNDaGFuZ2VzLnN1YnNjcmliZShzdGF0dXMgPT4ge1xyXG4gICAgICBpZiAoc3RhdHVzID09ICdJTlZBTElEJyAmJiB0aGlzLmNvbnRyb2wudG91Y2hlZCkge1xyXG4gICAgICAgIHRoaXMuc2hvd05nU2VsZWN0RXJyb3IoKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnJlbW92ZUVycm9yKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgdGhpcy5jb250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiAoKSA9PiB7XHJcbiAgICAgICAgaWYgKHRoaXMuY29udHJvbC5lcnJvcnMgJiYgdGhpcy5jb250cm9sLnRvdWNoZWQpIHtcclxuICAgICAgICAgIHRoaXMuc2hvd05nU2VsZWN0RXJyb3IoKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5yZW1vdmVFcnJvcigpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignZm9jdXNvdXQnKVxyXG4gIG9uRm9jdXNvdXQoKSB7XHJcbiAgICBpZiAodGhpcy5jb250cm9sLmVycm9ycyAmJiB0aGlzLmNvbnRyb2wudG91Y2hlZCkge1xyXG4gICAgICB0aGlzLnNob3dOZ1NlbGVjdEVycm9yKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnJlbW92ZUVycm9yKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlbW92ZUVycm9yKCk6IHZvaWQge1xyXG4gICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnJztcclxuICAgIGNvbnN0IGVycm9yRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuZXJyb3JEaXZJZCBhcyBzdHJpbmcpO1xyXG4gICAgaWYgKGVycm9yRWxlbWVudCkgZXJyb3JFbGVtZW50LnJlbW92ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzaG93TmdTZWxlY3RFcnJvcigpIHtcclxuICAgIHRoaXMucmVtb3ZlRXJyb3IoKTtcclxuICAgIGNvbnN0IHZhbEVycm9yczogVmFsaWRhdGlvbkVycm9ycyA9IHRoaXMuY29udHJvbC5lcnJvcnM7XHJcblxyXG4gICAgaWYgKHRoaXMuY29udHJvbC5lcnJvcnMubGVuZ3RoID4gMSkge1xyXG4gICAgICB0aGlzLnNob3dEb3QgPSB0cnVlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zaG93RG90ID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBpZiAodmFsRXJyb3JzKSB7XHJcbiAgICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyh2YWxFcnJvcnMpO1xyXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGtleXMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICBzd2l0Y2ggKGtleXNbaV0pIHtcclxuICAgICAgICAgIGNhc2UgJ3JlcXVpcmVkJzoge1xyXG4gICAgICAgICAgICBsZXQgbWVzc2FnZSA9IHRoaXMudmFsaWRhdGlvbkVycm9yLmdldFJlbGV2YW50RXJyb3Ioa2V5c1tpXSwgdmFsRXJyb3JzKTtcclxuICAgICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgKz0gYCAke3RoaXMuZXJyb3JNZXNzYWdlID8gJzxicj4nIDogJyd9JHt0aGlzLnNob3dEb3QgPyAnXFx1MjVDRiAnICsgbWVzc2FnZSA6IG1lc3NhZ2V9YDtcclxuICAgICAgICAgICAgdGhpcy5jb250cm9sLmNvbnRyb2wuc2V0RXJyb3JzKFxyXG4gICAgICAgICAgICAgIHsgcmVxdWlyZWQ6IHRydWUsIG1lc3NhZ2U6IG1lc3NhZ2UgfSxcclxuICAgICAgICAgICAgICB7IGVtaXRFdmVudDogZmFsc2UgfVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGNhc2UgJ3ZhbGlkYXRlUGhvbmVOdW1iZXInOiB7XHJcbiAgICAgICAgICAgIGxldCBtZXNzYWdlID0gdGhpcy52YWxpZGF0aW9uRXJyb3IuZ2V0UmVsZXZhbnRFcnJvcihrZXlzW2ldLCB2YWxFcnJvcnMpO1xyXG4gICAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSArPSBgICR7dGhpcy5lcnJvck1lc3NhZ2UgPyAnPGJyPicgOiAnJ30ke3RoaXMuc2hvd0RvdCA/ICdcXHUyNUNGICcgKyBtZXNzYWdlIDogbWVzc2FnZX1gO1xyXG4gICAgICAgICAgICB0aGlzLmNvbnRyb2wuY29udHJvbC5zZXRFcnJvcnMoXHJcbiAgICAgICAgICAgICAgeyB2YWxpZGF0ZVBob25lTnVtYmVyOiB0cnVlLCBtZXNzYWdlOiBtZXNzYWdlIH0sXHJcbiAgICAgICAgICAgICAgeyBlbWl0RXZlbnQ6IGZhbHNlIH1cclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBjYXNlICdjdXN0b21NZXNzYWdlJzoge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZygndmFsRXJyb3JzJywgdmFsRXJyb3JzKTtcclxuICAgICAgICAgICAgbGV0IG1lc3NhZ2UgPSB2YWxFcnJvcnMubWVzc2FnZTtcclxuICAgICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgKz0gYCAke3RoaXMuZXJyb3JNZXNzYWdlID8gJzxicj4nIDogJyd9JHt0aGlzLnNob3dEb3QgPyAnXFx1MjVDRiAnICsgbWVzc2FnZSA6IG1lc3NhZ2V9YDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuc2hvd0JveEVycm9yKSB7XHJcbiAgICAgICAgY29uc3QgZXJyRGl2ID1cclxuICAgICAgICAgIGA8ZGl2IHN0eWxlPVwiY29sb3I6JHtQcmltYXJ5Q29sb3JzLiRwcmltYXJ5UmVkQ29sb3J9OyB3aWR0aDogJHt0aGlzLmFmdGVyRW5kID8gdGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoICsgJ3B4JyA6ICcxMDAlJ307IG1pbi13aWR0aDogMTAwJTsgYmFja2dyb3VuZC1jb2xvcjogJHtQcmltYXJ5Q29sb3JzLiRwcmltYXJ5TGlnaHRSZWRDb2xvcn07IHBhZGRpbmc6IC41cmVtOyBib3JkZXItcmFkaXVzOiAuNXJlbTsgYm9yZGVyOiAuMXJlbSBzb2xpZCAke1ByaW1hcnlDb2xvcnMuJHByaW1hcnlSZWRDb2xvcn0gO2JvcmRlci1sZWZ0OiAuNzVyZW0gc29saWQgJHtQcmltYXJ5Q29sb3JzLiRwcmltYXJ5UmVkQ29sb3J9OyAgbWFyZ2luLXRvcDouNXJlbTsgIGZvbnQtc2l6ZTogMS4ycmVtOyBcIiBpZD1cImAgK1xyXG4gICAgICAgICAgdGhpcy5lcnJvckRpdklkICtcclxuICAgICAgICAgICdcIj4nICtcclxuICAgICAgICAgIGA8aDMgICBzdHlsZT0gXCIgZm9udC1zaXplOiAxLjNyZW07ICBtYXJnaW4tYm90dG9tOi41cmVtOyBtYXJnaW46MDsgIGNvbG9yOiAgJHtQcmltYXJ5Q29sb3JzLiRwcmltYXJ5UmVkQ29sb3J9OyBmb250LXdlaWdodDogNzAwOyBsaW5lLWhlaWdodDogMS42cmVtO1wiPmAgK1xyXG4gICAgICAgICAgJ1BsZWFzZSBDb21wbGV0ZSBhbGwgZGV0YWlscycgK1xyXG4gICAgICAgICAgJzwvaDM+JyArXHJcbiAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSArXHJcbiAgICAgICAgICAnPC9kaXY+JztcclxuICAgICAgICBpZiAoIXRoaXMuYWZ0ZXJFbmQpXHJcbiAgICAgICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQucGFyZW50RWxlbWVudC5pbnNlcnRBZGphY2VudEhUTUwoJ2FmdGVyZW5kJywgZXJyRGl2KTtcclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5pbnNlcnRBZGphY2VudEhUTUwoJ2FmdGVyZW5kJywgZXJyRGl2KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
@@ -1,26 +1,28 @@
1
1
  import { CommonModule } from '@angular/common';
2
2
  import { NgModule } from '@angular/core';
3
3
  import { FormsModule, ReactiveFormsModule } from '@angular/forms';
4
- import { NgSelectModule } from '@ng-select/ng-select';
4
+ import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
5
+ import { AppMaterialModule } from '@jooler/app-material';
5
6
  import { SharedGeneralComponentsModule } from '@jooler/shared-general-components';
6
- import { ChooseEnumComponent } from './choose-enum/choose-enum.component';
7
+ import { NgSelectModule } from '@ng-select/ng-select';
8
+ import { AddAsteriskDirective } from './add-asterisk.directive';
7
9
  import { ChooseEnumRendererComponent } from './choose-enum-renderer/choose-enum-renderer.component';
10
+ import { ChooseEnumComponent } from './choose-enum/choose-enum.component';
11
+ import { ChooseGeneralItemRendererComponent } from './choose-general-item-renderer/choose-general-item-renderer.component';
8
12
  import { ChooseGeneralItemComponent } from './choose-general-item/choose-general-item.component';
13
+ import { ChooseGeneralItemService } from './choose-general-item/choose-general-item.service';
9
14
  import { ChooseLineTypeComponent } from './choose-line-type/choose-line-type.component';
10
- import { ChooseYesOrNoComponent } from './choose-yes-or-no/choose-yes-or-no.component';
11
15
  import { ChooseYesOrNoRendererComponent } from './choose-yes-or-no-renderer/choose-yes-or-no-renderer.component';
12
- import { EditableSavableInputComponent } from './editable-savable-input/editable-savable-input.component';
13
- import { GeneralInputRendererComponent } from './general-input-renderer/general-input-renderer.component';
14
- import { AppMaterialModule } from '@jooler/app-material';
16
+ import { ChooseYesOrNoComponent } from './choose-yes-or-no/choose-yes-or-no.component';
17
+ import { DropdownActionsComponent } from './dropdown-actions/dropdown-actions.component';
15
18
  import { DynamicPipe } from './editable-savable-input/dynamicPipe';
16
- import { ChooseGeneralItemRendererComponent } from './choose-general-item-renderer/choose-general-item-renderer.component';
19
+ import { EditableSavableInputComponent } from './editable-savable-input/editable-savable-input.component';
20
+ import { FormControlValidationMsgDirectiveForNgSelect } from './formcontrol-validation-msg-for-ng-select.directive';
21
+ import { FormControlValidationMsgDirectiveForInput } from './formcontrol-validation-msg.directive';
17
22
  import { CustomDecimalPointTwoDigitsDirective } from './general-input-renderer/custom-decimal-point-two-digits.directive';
23
+ import { GeneralInputRendererComponent } from './general-input-renderer/general-input-renderer.component';
18
24
  import { ShowTableErrorsComponent } from './show-table-errors/show-table-errors.component';
19
- import { FormControlValidationMsgDirectiveForInput } from './formcontrol-validation-msg.directive';
20
- import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
21
- import { ChooseGeneralItemService } from './choose-general-item/choose-general-item.service';
22
- import { DropdownActionsComponent } from './dropdown-actions/dropdown-actions.component';
23
- import { AddAsteriskDirective } from './add-asterisk.directive';
25
+ import { TooltipMsgError } from './tooltip-msg-error/tooltip-msg-error.component';
24
26
  import * as i0 from "@angular/core";
25
27
  export class InputsModule {
26
28
  static forRoot(environment) {
@@ -50,7 +52,9 @@ export class InputsModule {
50
52
  ShowTableErrorsComponent,
51
53
  FormControlValidationMsgDirectiveForInput,
52
54
  DropdownActionsComponent,
53
- AddAsteriskDirective], imports: [CommonModule,
55
+ AddAsteriskDirective,
56
+ FormControlValidationMsgDirectiveForNgSelect,
57
+ TooltipMsgError], imports: [CommonModule,
54
58
  NgSelectModule,
55
59
  FormsModule,
56
60
  ReactiveFormsModule,
@@ -93,7 +97,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
93
97
  ShowTableErrorsComponent,
94
98
  FormControlValidationMsgDirectiveForInput,
95
99
  DropdownActionsComponent,
96
- AddAsteriskDirective
100
+ AddAsteriskDirective,
101
+ FormControlValidationMsgDirectiveForNgSelect,
102
+ TooltipMsgError
97
103
  ],
98
104
  imports: [
99
105
  CommonModule,
@@ -119,4 +125,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
119
125
  ]
120
126
  }]
121
127
  }] });
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvbGliL2lucHV0cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdEQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDMUUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDcEcsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDakcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDdkYsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFDakgsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDMUcsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDMUcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLHVFQUF1RSxDQUFDO0FBQzNILE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLG9FQUFvRSxDQUFDO0FBQzFILE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSx5Q0FBeUMsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ25HLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQTRDaEUsTUFBTSxPQUFPLFlBQVk7SUFFaEIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFnQjtRQUVwQyxPQUFPO1lBQ0wsUUFBUSxFQUFFLFlBQVk7WUFDdEIsU0FBUyxFQUFFO2dCQUNULHdCQUF3QjtnQkFDeEI7b0JBQ0UsT0FBTyxFQUFFLEtBQUs7b0JBQ2QsUUFBUSxFQUFFLFdBQVc7aUJBQ3RCO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQzt3R0FkVSxZQUFZO3lHQUFaLFlBQVksaUJBdkNyQixtQkFBbUI7WUFDbkIsMkJBQTJCO1lBQzNCLDBCQUEwQjtZQUMxQiw2QkFBNkI7WUFDN0IsdUJBQXVCO1lBQ3ZCLHNCQUFzQjtZQUN0Qiw4QkFBOEI7WUFDOUIsNkJBQTZCO1lBQzdCLFdBQVc7WUFDWCxrQ0FBa0M7WUFDbEMsb0NBQW9DO1lBQ3BDLHdCQUF3QjtZQUN4Qix5Q0FBeUM7WUFDekMsd0JBQXdCO1lBQ3hCLG9CQUFvQixhQUdwQixZQUFZO1lBQ1osY0FBYztZQUNkLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsaUJBQWlCO1lBQ2pCLDZCQUE2QjtZQUM3QixpQkFBaUIsYUFHakIsbUJBQW1CO1lBQ25CLDJCQUEyQjtZQUMzQiwwQkFBMEI7WUFDMUIsNkJBQTZCO1lBQzdCLHVCQUF1QjtZQUN2QixzQkFBc0I7WUFDdEIsOEJBQThCO1lBQzlCLDZCQUE2QjtZQUM3Qix3QkFBd0I7WUFDeEIsV0FBVztZQUNYLG9CQUFvQjt5R0FHWCxZQUFZLFlBdEJyQixZQUFZO1lBQ1osY0FBYztZQUNkLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsaUJBQWlCO1lBQ2pCLDZCQUE2QjtZQUM3QixpQkFBaUI7OzRGQWdCUixZQUFZO2tCQXpDeEIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osbUJBQW1CO3dCQUNuQiwyQkFBMkI7d0JBQzNCLDBCQUEwQjt3QkFDMUIsNkJBQTZCO3dCQUM3Qix1QkFBdUI7d0JBQ3ZCLHNCQUFzQjt3QkFDdEIsOEJBQThCO3dCQUM5Qiw2QkFBNkI7d0JBQzdCLFdBQVc7d0JBQ1gsa0NBQWtDO3dCQUNsQyxvQ0FBb0M7d0JBQ3BDLHdCQUF3Qjt3QkFDeEIseUNBQXlDO3dCQUN6Qyx3QkFBd0I7d0JBQ3hCLG9CQUFvQjtxQkFDckI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxXQUFXO3dCQUNYLG1CQUFtQjt3QkFDbkIsaUJBQWlCO3dCQUNqQiw2QkFBNkI7d0JBQzdCLGlCQUFpQjtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG1CQUFtQjt3QkFDbkIsMkJBQTJCO3dCQUMzQiwwQkFBMEI7d0JBQzFCLDZCQUE2Qjt3QkFDN0IsdUJBQXVCO3dCQUN2QixzQkFBc0I7d0JBQ3RCLDhCQUE4Qjt3QkFDOUIsNkJBQTZCO3dCQUM3Qix3QkFBd0I7d0JBQ3hCLFdBQVc7d0JBQ1gsb0JBQW9CO3FCQUNyQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBOZ1NlbGVjdE1vZHVsZSB9IGZyb20gJ0BuZy1zZWxlY3Qvbmctc2VsZWN0JztcclxuaW1wb3J0IHsgU2hhcmVkR2VuZXJhbENvbXBvbmVudHNNb2R1bGUgfSBmcm9tICdAam9vbGVyL3NoYXJlZC1nZW5lcmFsLWNvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBDaG9vc2VFbnVtQ29tcG9uZW50IH0gZnJvbSAnLi9jaG9vc2UtZW51bS9jaG9vc2UtZW51bS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDaG9vc2VFbnVtUmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuL2Nob29zZS1lbnVtLXJlbmRlcmVyL2Nob29zZS1lbnVtLXJlbmRlcmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENob29zZUdlbmVyYWxJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9jaG9vc2UtZ2VuZXJhbC1pdGVtL2Nob29zZS1nZW5lcmFsLWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2hvb3NlTGluZVR5cGVDb21wb25lbnQgfSBmcm9tICcuL2Nob29zZS1saW5lLXR5cGUvY2hvb3NlLWxpbmUtdHlwZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDaG9vc2VZZXNPck5vQ29tcG9uZW50IH0gZnJvbSAnLi9jaG9vc2UteWVzLW9yLW5vL2Nob29zZS15ZXMtb3Itbm8uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2hvb3NlWWVzT3JOb1JlbmRlcmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jaG9vc2UteWVzLW9yLW5vLXJlbmRlcmVyL2Nob29zZS15ZXMtb3Itbm8tcmVuZGVyZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRWRpdGFibGVTYXZhYmxlSW5wdXRDb21wb25lbnQgfSBmcm9tICcuL2VkaXRhYmxlLXNhdmFibGUtaW5wdXQvZWRpdGFibGUtc2F2YWJsZS1pbnB1dC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBHZW5lcmFsSW5wdXRSZW5kZXJlckNvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC1pbnB1dC1yZW5kZXJlci9nZW5lcmFsLWlucHV0LXJlbmRlcmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFwcE1hdGVyaWFsTW9kdWxlIH0gZnJvbSAnQGpvb2xlci9hcHAtbWF0ZXJpYWwnO1xyXG5pbXBvcnQgeyBEeW5hbWljUGlwZSB9IGZyb20gJy4vZWRpdGFibGUtc2F2YWJsZS1pbnB1dC9keW5hbWljUGlwZSc7XHJcbmltcG9ydCB7IENob29zZUdlbmVyYWxJdGVtUmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuL2Nob29zZS1nZW5lcmFsLWl0ZW0tcmVuZGVyZXIvY2hvb3NlLWdlbmVyYWwtaXRlbS1yZW5kZXJlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdXN0b21EZWNpbWFsUG9pbnRUd29EaWdpdHNEaXJlY3RpdmUgfSBmcm9tICcuL2dlbmVyYWwtaW5wdXQtcmVuZGVyZXIvY3VzdG9tLWRlY2ltYWwtcG9pbnQtdHdvLWRpZ2l0cy5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBTaG93VGFibGVFcnJvcnNDb21wb25lbnQgfSBmcm9tICcuL3Nob3ctdGFibGUtZXJyb3JzL3Nob3ctdGFibGUtZXJyb3JzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sVmFsaWRhdGlvbk1zZ0RpcmVjdGl2ZUZvcklucHV0IH0gZnJvbSAnLi9mb3JtY29udHJvbC12YWxpZGF0aW9uLW1zZy5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBGb250QXdlc29tZU1vZHVsZSB9IGZyb20gJ0Bmb3J0YXdlc29tZS9hbmd1bGFyLWZvbnRhd2Vzb21lJztcclxuaW1wb3J0IHsgQ2hvb3NlR2VuZXJhbEl0ZW1TZXJ2aWNlIH0gZnJvbSAnLi9jaG9vc2UtZ2VuZXJhbC1pdGVtL2Nob29zZS1nZW5lcmFsLWl0ZW0uc2VydmljZSc7XHJcbmltcG9ydCB7IERyb3Bkb3duQWN0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vZHJvcGRvd24tYWN0aW9ucy9kcm9wZG93bi1hY3Rpb25zLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFkZEFzdGVyaXNrRGlyZWN0aXZlIH0gZnJvbSAnLi9hZGQtYXN0ZXJpc2suZGlyZWN0aXZlJztcclxuXHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgQ2hvb3NlRW51bUNvbXBvbmVudCxcclxuICAgIENob29zZUVudW1SZW5kZXJlckNvbXBvbmVudCxcclxuICAgIENob29zZUdlbmVyYWxJdGVtQ29tcG9uZW50LFxyXG4gICAgR2VuZXJhbElucHV0UmVuZGVyZXJDb21wb25lbnQsXHJcbiAgICBDaG9vc2VMaW5lVHlwZUNvbXBvbmVudCxcclxuICAgIENob29zZVllc09yTm9Db21wb25lbnQsXHJcbiAgICBDaG9vc2VZZXNPck5vUmVuZGVyZXJDb21wb25lbnQsXHJcbiAgICBFZGl0YWJsZVNhdmFibGVJbnB1dENvbXBvbmVudCxcclxuICAgIER5bmFtaWNQaXBlLFxyXG4gICAgQ2hvb3NlR2VuZXJhbEl0ZW1SZW5kZXJlckNvbXBvbmVudCxcclxuICAgIEN1c3RvbURlY2ltYWxQb2ludFR3b0RpZ2l0c0RpcmVjdGl2ZSxcclxuICAgIFNob3dUYWJsZUVycm9yc0NvbXBvbmVudCxcclxuICAgIEZvcm1Db250cm9sVmFsaWRhdGlvbk1zZ0RpcmVjdGl2ZUZvcklucHV0LFxyXG4gICAgRHJvcGRvd25BY3Rpb25zQ29tcG9uZW50LFxyXG4gICAgQWRkQXN0ZXJpc2tEaXJlY3RpdmVcclxuICBdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIE5nU2VsZWN0TW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgQXBwTWF0ZXJpYWxNb2R1bGUsXHJcbiAgICBTaGFyZWRHZW5lcmFsQ29tcG9uZW50c01vZHVsZSxcclxuICAgIEZvbnRBd2Vzb21lTW9kdWxlLFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgQ2hvb3NlRW51bUNvbXBvbmVudCxcclxuICAgIENob29zZUVudW1SZW5kZXJlckNvbXBvbmVudCxcclxuICAgIENob29zZUdlbmVyYWxJdGVtQ29tcG9uZW50LFxyXG4gICAgR2VuZXJhbElucHV0UmVuZGVyZXJDb21wb25lbnQsXHJcbiAgICBDaG9vc2VMaW5lVHlwZUNvbXBvbmVudCxcclxuICAgIENob29zZVllc09yTm9Db21wb25lbnQsXHJcbiAgICBDaG9vc2VZZXNPck5vUmVuZGVyZXJDb21wb25lbnQsXHJcbiAgICBFZGl0YWJsZVNhdmFibGVJbnB1dENvbXBvbmVudCxcclxuICAgIERyb3Bkb3duQWN0aW9uc0NvbXBvbmVudCxcclxuICAgIER5bmFtaWNQaXBlLFxyXG4gICAgQWRkQXN0ZXJpc2tEaXJlY3RpdmVcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbnB1dHNNb2R1bGUge1xyXG5cclxuICBwdWJsaWMgc3RhdGljIGZvclJvb3QoZW52aXJvbm1lbnQ6IGFueSk6IE1vZHVsZVdpdGhQcm92aWRlcnM8SW5wdXRzTW9kdWxlPiB7XHJcblxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgbmdNb2R1bGU6IElucHV0c01vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAgQ2hvb3NlR2VuZXJhbEl0ZW1TZXJ2aWNlLFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHByb3ZpZGU6ICdlbnYnLFxyXG4gICAgICAgICAgdXNlVmFsdWU6IGVudmlyb25tZW50XHJcbiAgICAgICAgfVxyXG4gICAgICBdXHJcbiAgICB9O1xyXG4gIH1cclxufSJdfQ==
128
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvbGliL2lucHV0cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNsRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDcEcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sdUVBQXVFLENBQUM7QUFDM0gsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDakcsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDN0YsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEYsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFDakgsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDdkYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDekYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQzFHLE9BQU8sRUFBRSw0Q0FBNEMsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ3BILE9BQU8sRUFBRSx5Q0FBeUMsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ25HLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLG9FQUFvRSxDQUFDO0FBQzFILE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQzFHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpREFBaUQsQ0FBQzs7QUE4Q2xGLE1BQU0sT0FBTyxZQUFZO0lBRWhCLE1BQU0sQ0FBQyxPQUFPLENBQUMsV0FBZ0I7UUFFcEMsT0FBTztZQUNMLFFBQVEsRUFBRSxZQUFZO1lBQ3RCLFNBQVMsRUFBRTtnQkFDVCx3QkFBd0I7Z0JBQ3hCO29CQUNFLE9BQU8sRUFBRSxLQUFLO29CQUNkLFFBQVEsRUFBRSxXQUFXO2lCQUN0QjthQUNGO1NBQ0YsQ0FBQztJQUNKLENBQUM7d0dBZFUsWUFBWTt5R0FBWixZQUFZLGlCQXpDckIsbUJBQW1CO1lBQ25CLDJCQUEyQjtZQUMzQiwwQkFBMEI7WUFDMUIsNkJBQTZCO1lBQzdCLHVCQUF1QjtZQUN2QixzQkFBc0I7WUFDdEIsOEJBQThCO1lBQzlCLDZCQUE2QjtZQUM3QixXQUFXO1lBQ1gsa0NBQWtDO1lBQ2xDLG9DQUFvQztZQUNwQyx3QkFBd0I7WUFDeEIseUNBQXlDO1lBQ3pDLHdCQUF3QjtZQUN4QixvQkFBb0I7WUFDcEIsNENBQTRDO1lBQzVDLGVBQWUsYUFHZixZQUFZO1lBQ1osY0FBYztZQUNkLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsaUJBQWlCO1lBQ2pCLDZCQUE2QjtZQUM3QixpQkFBaUIsYUFHakIsbUJBQW1CO1lBQ25CLDJCQUEyQjtZQUMzQiwwQkFBMEI7WUFDMUIsNkJBQTZCO1lBQzdCLHVCQUF1QjtZQUN2QixzQkFBc0I7WUFDdEIsOEJBQThCO1lBQzlCLDZCQUE2QjtZQUM3Qix3QkFBd0I7WUFDeEIsV0FBVztZQUNYLG9CQUFvQjt5R0FHWCxZQUFZLFlBdEJyQixZQUFZO1lBQ1osY0FBYztZQUNkLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsaUJBQWlCO1lBQ2pCLDZCQUE2QjtZQUM3QixpQkFBaUI7OzRGQWdCUixZQUFZO2tCQTNDeEIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osbUJBQW1CO3dCQUNuQiwyQkFBMkI7d0JBQzNCLDBCQUEwQjt3QkFDMUIsNkJBQTZCO3dCQUM3Qix1QkFBdUI7d0JBQ3ZCLHNCQUFzQjt3QkFDdEIsOEJBQThCO3dCQUM5Qiw2QkFBNkI7d0JBQzdCLFdBQVc7d0JBQ1gsa0NBQWtDO3dCQUNsQyxvQ0FBb0M7d0JBQ3BDLHdCQUF3Qjt3QkFDeEIseUNBQXlDO3dCQUN6Qyx3QkFBd0I7d0JBQ3hCLG9CQUFvQjt3QkFDcEIsNENBQTRDO3dCQUM1QyxlQUFlO3FCQUNoQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixjQUFjO3dCQUNkLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixpQkFBaUI7d0JBQ2pCLDZCQUE2Qjt3QkFDN0IsaUJBQWlCO3FCQUNsQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsbUJBQW1CO3dCQUNuQiwyQkFBMkI7d0JBQzNCLDBCQUEwQjt3QkFDMUIsNkJBQTZCO3dCQUM3Qix1QkFBdUI7d0JBQ3ZCLHNCQUFzQjt3QkFDdEIsOEJBQThCO3dCQUM5Qiw2QkFBNkI7d0JBQzdCLHdCQUF3Qjt3QkFDeEIsV0FBVzt3QkFDWCxvQkFBb0I7cUJBQ3JCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEZvbnRBd2Vzb21lTW9kdWxlIH0gZnJvbSAnQGZvcnRhd2Vzb21lL2FuZ3VsYXItZm9udGF3ZXNvbWUnO1xyXG5pbXBvcnQgeyBBcHBNYXRlcmlhbE1vZHVsZSB9IGZyb20gJ0Bqb29sZXIvYXBwLW1hdGVyaWFsJztcclxuaW1wb3J0IHsgU2hhcmVkR2VuZXJhbENvbXBvbmVudHNNb2R1bGUgfSBmcm9tICdAam9vbGVyL3NoYXJlZC1nZW5lcmFsLWNvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBOZ1NlbGVjdE1vZHVsZSB9IGZyb20gJ0BuZy1zZWxlY3Qvbmctc2VsZWN0JztcclxuaW1wb3J0IHsgQWRkQXN0ZXJpc2tEaXJlY3RpdmUgfSBmcm9tICcuL2FkZC1hc3Rlcmlzay5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDaG9vc2VFbnVtUmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuL2Nob29zZS1lbnVtLXJlbmRlcmVyL2Nob29zZS1lbnVtLXJlbmRlcmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENob29zZUVudW1Db21wb25lbnQgfSBmcm9tICcuL2Nob29zZS1lbnVtL2Nob29zZS1lbnVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENob29zZUdlbmVyYWxJdGVtUmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuL2Nob29zZS1nZW5lcmFsLWl0ZW0tcmVuZGVyZXIvY2hvb3NlLWdlbmVyYWwtaXRlbS1yZW5kZXJlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDaG9vc2VHZW5lcmFsSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY2hvb3NlLWdlbmVyYWwtaXRlbS9jaG9vc2UtZ2VuZXJhbC1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENob29zZUdlbmVyYWxJdGVtU2VydmljZSB9IGZyb20gJy4vY2hvb3NlLWdlbmVyYWwtaXRlbS9jaG9vc2UtZ2VuZXJhbC1pdGVtLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDaG9vc2VMaW5lVHlwZUNvbXBvbmVudCB9IGZyb20gJy4vY2hvb3NlLWxpbmUtdHlwZS9jaG9vc2UtbGluZS10eXBlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENob29zZVllc09yTm9SZW5kZXJlckNvbXBvbmVudCB9IGZyb20gJy4vY2hvb3NlLXllcy1vci1uby1yZW5kZXJlci9jaG9vc2UteWVzLW9yLW5vLXJlbmRlcmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENob29zZVllc09yTm9Db21wb25lbnQgfSBmcm9tICcuL2Nob29zZS15ZXMtb3Itbm8vY2hvb3NlLXllcy1vci1uby5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEcm9wZG93bkFjdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL2Ryb3Bkb3duLWFjdGlvbnMvZHJvcGRvd24tYWN0aW9ucy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEeW5hbWljUGlwZSB9IGZyb20gJy4vZWRpdGFibGUtc2F2YWJsZS1pbnB1dC9keW5hbWljUGlwZSc7XHJcbmltcG9ydCB7IEVkaXRhYmxlU2F2YWJsZUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9lZGl0YWJsZS1zYXZhYmxlLWlucHV0L2VkaXRhYmxlLXNhdmFibGUtaW5wdXQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2xWYWxpZGF0aW9uTXNnRGlyZWN0aXZlRm9yTmdTZWxlY3QgfSBmcm9tICcuL2Zvcm1jb250cm9sLXZhbGlkYXRpb24tbXNnLWZvci1uZy1zZWxlY3QuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2xWYWxpZGF0aW9uTXNnRGlyZWN0aXZlRm9ySW5wdXQgfSBmcm9tICcuL2Zvcm1jb250cm9sLXZhbGlkYXRpb24tbXNnLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEN1c3RvbURlY2ltYWxQb2ludFR3b0RpZ2l0c0RpcmVjdGl2ZSB9IGZyb20gJy4vZ2VuZXJhbC1pbnB1dC1yZW5kZXJlci9jdXN0b20tZGVjaW1hbC1wb2ludC10d28tZGlnaXRzLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEdlbmVyYWxJbnB1dFJlbmRlcmVyQ29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsLWlucHV0LXJlbmRlcmVyL2dlbmVyYWwtaW5wdXQtcmVuZGVyZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2hvd1RhYmxlRXJyb3JzQ29tcG9uZW50IH0gZnJvbSAnLi9zaG93LXRhYmxlLWVycm9ycy9zaG93LXRhYmxlLWVycm9ycy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUb29sdGlwTXNnRXJyb3IgfSBmcm9tICcuL3Rvb2x0aXAtbXNnLWVycm9yL3Rvb2x0aXAtbXNnLWVycm9yLmNvbXBvbmVudCc7XHJcblxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIENob29zZUVudW1Db21wb25lbnQsXHJcbiAgICBDaG9vc2VFbnVtUmVuZGVyZXJDb21wb25lbnQsXHJcbiAgICBDaG9vc2VHZW5lcmFsSXRlbUNvbXBvbmVudCxcclxuICAgIEdlbmVyYWxJbnB1dFJlbmRlcmVyQ29tcG9uZW50LFxyXG4gICAgQ2hvb3NlTGluZVR5cGVDb21wb25lbnQsXHJcbiAgICBDaG9vc2VZZXNPck5vQ29tcG9uZW50LFxyXG4gICAgQ2hvb3NlWWVzT3JOb1JlbmRlcmVyQ29tcG9uZW50LFxyXG4gICAgRWRpdGFibGVTYXZhYmxlSW5wdXRDb21wb25lbnQsXHJcbiAgICBEeW5hbWljUGlwZSxcclxuICAgIENob29zZUdlbmVyYWxJdGVtUmVuZGVyZXJDb21wb25lbnQsXHJcbiAgICBDdXN0b21EZWNpbWFsUG9pbnRUd29EaWdpdHNEaXJlY3RpdmUsXHJcbiAgICBTaG93VGFibGVFcnJvcnNDb21wb25lbnQsXHJcbiAgICBGb3JtQ29udHJvbFZhbGlkYXRpb25Nc2dEaXJlY3RpdmVGb3JJbnB1dCxcclxuICAgIERyb3Bkb3duQWN0aW9uc0NvbXBvbmVudCxcclxuICAgIEFkZEFzdGVyaXNrRGlyZWN0aXZlLFxyXG4gICAgRm9ybUNvbnRyb2xWYWxpZGF0aW9uTXNnRGlyZWN0aXZlRm9yTmdTZWxlY3QsXHJcbiAgICBUb29sdGlwTXNnRXJyb3JcclxuICBdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIE5nU2VsZWN0TW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgQXBwTWF0ZXJpYWxNb2R1bGUsXHJcbiAgICBTaGFyZWRHZW5lcmFsQ29tcG9uZW50c01vZHVsZSxcclxuICAgIEZvbnRBd2Vzb21lTW9kdWxlLFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgQ2hvb3NlRW51bUNvbXBvbmVudCxcclxuICAgIENob29zZUVudW1SZW5kZXJlckNvbXBvbmVudCxcclxuICAgIENob29zZUdlbmVyYWxJdGVtQ29tcG9uZW50LFxyXG4gICAgR2VuZXJhbElucHV0UmVuZGVyZXJDb21wb25lbnQsXHJcbiAgICBDaG9vc2VMaW5lVHlwZUNvbXBvbmVudCxcclxuICAgIENob29zZVllc09yTm9Db21wb25lbnQsXHJcbiAgICBDaG9vc2VZZXNPck5vUmVuZGVyZXJDb21wb25lbnQsXHJcbiAgICBFZGl0YWJsZVNhdmFibGVJbnB1dENvbXBvbmVudCxcclxuICAgIERyb3Bkb3duQWN0aW9uc0NvbXBvbmVudCxcclxuICAgIER5bmFtaWNQaXBlLFxyXG4gICAgQWRkQXN0ZXJpc2tEaXJlY3RpdmVcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbnB1dHNNb2R1bGUge1xyXG5cclxuICBwdWJsaWMgc3RhdGljIGZvclJvb3QoZW52aXJvbm1lbnQ6IGFueSk6IE1vZHVsZVdpdGhQcm92aWRlcnM8SW5wdXRzTW9kdWxlPiB7XHJcblxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgbmdNb2R1bGU6IElucHV0c01vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAgQ2hvb3NlR2VuZXJhbEl0ZW1TZXJ2aWNlLFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHByb3ZpZGU6ICdlbnYnLFxyXG4gICAgICAgICAgdXNlVmFsdWU6IGVudmlyb25tZW50XHJcbiAgICAgICAgfVxyXG4gICAgICBdXHJcbiAgICB9O1xyXG4gIH1cclxufSJdfQ==
@@ -0,0 +1,8 @@
1
+ export var ToolTipMessageType;
2
+ (function (ToolTipMessageType) {
3
+ ToolTipMessageType[ToolTipMessageType["ERROR"] = 0] = "ERROR";
4
+ ToolTipMessageType[ToolTipMessageType["WARNING"] = 1] = "WARNING";
5
+ ToolTipMessageType[ToolTipMessageType["HELP"] = 2] = "HELP";
6
+ ToolTipMessageType[ToolTipMessageType["DEFAULT"] = 3] = "DEFAULT";
7
+ })(ToolTipMessageType || (ToolTipMessageType = {}));
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC1tZXNzYWdlLXR5cGUuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvbGliL3Rvb2x0aXAtbXNnLWVycm9yL3Rvb2x0aXAtbWVzc2FnZS10eXBlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksa0JBS1g7QUFMRCxXQUFZLGtCQUFrQjtJQUM1Qiw2REFBUyxDQUFBO0lBQ1QsaUVBQVcsQ0FBQTtJQUNYLDJEQUFRLENBQUE7SUFDUixpRUFBVyxDQUFBO0FBQ2IsQ0FBQyxFQUxXLGtCQUFrQixLQUFsQixrQkFBa0IsUUFLN0IiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBUb29sVGlwTWVzc2FnZVR5cGUge1xyXG4gIEVSUk9SID0gMCxcclxuICBXQVJOSU5HID0gMSxcclxuICBIRUxQID0gMixcclxuICBERUZBVUxUID0gMyxcclxufVxyXG4iXX0=
@@ -0,0 +1,213 @@
1
+ import { Component, HostListener, Input, } from '@angular/core';
2
+ import { PrimaryColors } from '../primary-colors';
3
+ import { ToolTipMessageType } from './tooltip-message-type.enum';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ import * as i2 from "@fortawesome/angular-fontawesome";
7
+ export class TooltipMsgError {
8
+ cdr;
9
+ _El;
10
+ width;
11
+ control = null;
12
+ messageType = ToolTipMessageType.ERROR;
13
+ message;
14
+ iconElId;
15
+ messageElId;
16
+ isLeft = true;
17
+ showDetails;
18
+ tooltipIcon;
19
+ tooltipMessage;
20
+ iconStyle;
21
+ isDictionary;
22
+ onScrollY() {
23
+ this.onMouseLeave();
24
+ }
25
+ constructor(cdr, _El) {
26
+ this.cdr = cdr;
27
+ this._El = _El;
28
+ }
29
+ ngOnInit() {
30
+ this.iconElId = this.generateRandomString();
31
+ this.messageElId = this.generateRandomString();
32
+ this.setIconStyle();
33
+ this.checkErrorType();
34
+ }
35
+ ngOnChanges(changes) {
36
+ this.checkErrorType();
37
+ }
38
+ ngOnDestroy() {
39
+ if (document.getElementById(this.messageElId)) {
40
+ document.getElementById(this.messageElId).remove();
41
+ }
42
+ }
43
+ checkErrorType() {
44
+ if (this.message) {
45
+ if (this.message.constructor == Object) {
46
+ this.isDictionary = true;
47
+ }
48
+ else if (typeof this.message === 'string') {
49
+ this.isDictionary = false;
50
+ }
51
+ else {
52
+ this.isDictionary = false;
53
+ }
54
+ }
55
+ }
56
+ getThemedMessageStyle() {
57
+ let backgroundColor;
58
+ let fontBorderColor;
59
+ switch (this.messageType) {
60
+ case ToolTipMessageType.ERROR:
61
+ backgroundColor = '#fde5f0';
62
+ fontBorderColor = PrimaryColors.$primaryPinkColor;
63
+ break;
64
+ case ToolTipMessageType.WARNING:
65
+ backgroundColor = '#fdefdd';
66
+ fontBorderColor = PrimaryColors.$primaryOrangeColor;
67
+ break;
68
+ case ToolTipMessageType.HELP:
69
+ backgroundColor = '#d1f9f2';
70
+ fontBorderColor = PrimaryColors.$primaryTealColor;
71
+ break;
72
+ default:
73
+ backgroundColor = PrimaryColors.$primaryLightGrayColor;
74
+ fontBorderColor = PrimaryColors.$primaryGrayColor;
75
+ break;
76
+ }
77
+ let style = {
78
+ 'background-color': backgroundColor,
79
+ 'font-weight': 'bold',
80
+ color: fontBorderColor,
81
+ border: '0.2rem solid ' + fontBorderColor,
82
+ 'border-left': '0.5rem solid ' + fontBorderColor,
83
+ };
84
+ return style;
85
+ }
86
+ setMessageStyle() {
87
+ let style = {};
88
+ if (this.width) {
89
+ style['width'] = this.width;
90
+ }
91
+ }
92
+ get messageStyle() {
93
+ let commonMessageStyle = {};
94
+ if (this.width) {
95
+ commonMessageStyle['width'] = this.width;
96
+ }
97
+ return {
98
+ ...commonMessageStyle,
99
+ ...(this.showDetails ? this.getThemedMessageStyle() : {}),
100
+ };
101
+ }
102
+ setIconStyle() {
103
+ let backgroundColor;
104
+ switch (this.messageType) {
105
+ case ToolTipMessageType.ERROR:
106
+ backgroundColor = PrimaryColors.$primaryPinkColor;
107
+ break;
108
+ case ToolTipMessageType.WARNING:
109
+ backgroundColor = PrimaryColors.$primaryOrangeColor;
110
+ break;
111
+ case ToolTipMessageType.HELP:
112
+ backgroundColor = PrimaryColors.$primaryTealColor;
113
+ break;
114
+ default:
115
+ backgroundColor = PrimaryColors.$primaryGrayColor;
116
+ break;
117
+ }
118
+ let style = {
119
+ color: backgroundColor,
120
+ };
121
+ this.iconStyle = style;
122
+ }
123
+ onMouseEnter() {
124
+ this.showDetails = true;
125
+ // CDR is needed to let the DOM know the box error has a width
126
+ this.cdr.detectChanges();
127
+ this.tooltipMessage = document.getElementById(this.messageElId);
128
+ if (this.message) {
129
+ this.getDirection(this.tooltipMessage);
130
+ document.body.appendChild(this.tooltipMessage);
131
+ let messageElement = document.getElementById(this.messageElId);
132
+ let icon = document.getElementById(this.iconElId);
133
+ let rect = icon.getBoundingClientRect();
134
+ let top = rect.top;
135
+ let left = rect.left;
136
+ let right = rect.right;
137
+ let appendedLeft;
138
+ let appendedRight;
139
+ let appendedTop = top - messageElement.offsetHeight;
140
+ this.tooltipMessage.style.top = appendedTop + 'px';
141
+ this.tooltipMessage.style.zIndex = '1000';
142
+ if (this.isLeft) {
143
+ appendedLeft = left + icon.offsetWidth - 5;
144
+ this.tooltipMessage.style.left = appendedLeft + 'px';
145
+ }
146
+ else {
147
+ appendedRight = window.innerWidth - right + 5;
148
+ this.tooltipMessage.style.right = appendedRight + 'px';
149
+ }
150
+ }
151
+ }
152
+ onMouseLeave() {
153
+ this.showDetails = false;
154
+ }
155
+ getDirection(element) {
156
+ // Calculating the width difference between screen width minus the poistion of the icon from left to right (getBoundingClientRect().right)
157
+ let difference = window.innerWidth - element.getBoundingClientRect().right;
158
+ // hard coded + 12 is for the padding that has been added to router-outlet
159
+ // The if statment here check if there is enough space for the box error to show from left to right , if not enough space, the box error will pop up from right to left
160
+ if (difference <= element.offsetWidth + 12) {
161
+ this.isLeft = false;
162
+ }
163
+ else {
164
+ this.isLeft = true;
165
+ }
166
+ }
167
+ generateRandomString() {
168
+ let charsAndNumbs = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890';
169
+ let text = '';
170
+ for (let i = 0; i < 8; i++) {
171
+ text += charsAndNumbs.charAt(Math.floor(Math.random() * charsAndNumbs.length));
172
+ }
173
+ return text;
174
+ }
175
+ // Helper to decide how to display the value
176
+ formatValue(value) {
177
+ if (!value)
178
+ return '';
179
+ // 1. If it's an array (like your jurisdiction error)
180
+ if (Array.isArray(value)) {
181
+ // Map through the array and extract 'message' if it exists, otherwise stringify
182
+ return value
183
+ .map(item => {
184
+ return typeof item === 'object' && item.message ? item.message : JSON.stringify(item);
185
+ })
186
+ .join(', ');
187
+ }
188
+ // 2. If it's a single object (but not an array)
189
+ if (typeof value === 'object') {
190
+ return value.message || JSON.stringify(value);
191
+ }
192
+ // 3. It's a string or number
193
+ return value;
194
+ }
195
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TooltipMsgError, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
196
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TooltipMsgError, selector: "tooltip-msg-error", inputs: { width: "width", control: "control", messageType: "messageType", message: "message" }, host: { listeners: { "document:scroll ": "onScrollY()" } }, usesOnChanges: true, ngImport: i0, template: "<div\r\n *ngIf=\"message && !control\"\r\n class=\"container\"\r\n (mouseenter)=\"onMouseEnter()\"\r\n (mouseleave)=\"onMouseLeave()\">\r\n <fa-icon [id]=\"iconElId\" [ngStyle]=\"iconStyle\" icon=\"circle-exclamation\" class=\"icon\"></fa-icon>\r\n <div\r\n *ngIf=\"!isDictionary\"\r\n [ngStyle]=\"messageStyle\"\r\n [id]=\"messageElId\"\r\n class=\"message\"\r\n [ngClass]=\"{ 'no-details': !showDetails, details: showDetails }\">\r\n {{ message }}\r\n </div>\r\n\r\n <div\r\n *ngIf=\"isDictionary\"\r\n [ngStyle]=\"messageStyle\"\r\n [id]=\"messageElId\"\r\n class=\"message\"\r\n [ngClass]=\"{ 'no-details': !showDetails, details: showDetails }\">\r\n <div class=\"dict-cont\" *ngFor=\"let entry of message | keyvalue\">\r\n <strong>{{ entry.key }}: </strong>\r\n <span>{{ formatValue(entry.value) }}</span>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div\r\n *ngIf=\"control?.touched && control.errors\"\r\n class=\"container\"\r\n (mouseenter)=\"onMouseEnter()\"\r\n (mouseleave)=\"onMouseLeave()\">\r\n <fa-icon [ngStyle]=\"iconStyle\" [id]=\"iconElId\" icon=\"circle-exclamation\" class=\"icon\"></fa-icon>\r\n <div\r\n [ngStyle]=\"messageStyle\"\r\n [id]=\"messageElId\"\r\n class=\"message\"\r\n [ngClass]=\"{ 'no-details': !showDetails, details: showDetails }\">\r\n <div class=\"dict-cont\" *ngFor=\"let entry of message | keyvalue\">\r\n <strong>{{ entry.key }}: </strong>\r\n <span>{{ formatValue(entry.value) }}</span>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".no-details{display:none;position:unset}.icon{cursor:pointer;display:inline-block}.container{position:relative}.details{position:fixed;display:block;z-index:1000;border-radius:.5rem;padding:.75rem 1rem;width:max-content;max-width:500px;font-size:1.2rem;line-height:1.4}@media (max-width: 1024px){.details{max-width:320px}}@media (max-width: 768px){.details{max-width:90vw}}.right-section{right:0}.message{width:max-content;white-space:pre-line;pointer-events:none}.dict-cont{line-height:normal}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "pipe", type: i1.KeyValuePipe, name: "keyvalue" }] });
197
+ }
198
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TooltipMsgError, decorators: [{
199
+ type: Component,
200
+ args: [{ selector: 'tooltip-msg-error', template: "<div\r\n *ngIf=\"message && !control\"\r\n class=\"container\"\r\n (mouseenter)=\"onMouseEnter()\"\r\n (mouseleave)=\"onMouseLeave()\">\r\n <fa-icon [id]=\"iconElId\" [ngStyle]=\"iconStyle\" icon=\"circle-exclamation\" class=\"icon\"></fa-icon>\r\n <div\r\n *ngIf=\"!isDictionary\"\r\n [ngStyle]=\"messageStyle\"\r\n [id]=\"messageElId\"\r\n class=\"message\"\r\n [ngClass]=\"{ 'no-details': !showDetails, details: showDetails }\">\r\n {{ message }}\r\n </div>\r\n\r\n <div\r\n *ngIf=\"isDictionary\"\r\n [ngStyle]=\"messageStyle\"\r\n [id]=\"messageElId\"\r\n class=\"message\"\r\n [ngClass]=\"{ 'no-details': !showDetails, details: showDetails }\">\r\n <div class=\"dict-cont\" *ngFor=\"let entry of message | keyvalue\">\r\n <strong>{{ entry.key }}: </strong>\r\n <span>{{ formatValue(entry.value) }}</span>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div\r\n *ngIf=\"control?.touched && control.errors\"\r\n class=\"container\"\r\n (mouseenter)=\"onMouseEnter()\"\r\n (mouseleave)=\"onMouseLeave()\">\r\n <fa-icon [ngStyle]=\"iconStyle\" [id]=\"iconElId\" icon=\"circle-exclamation\" class=\"icon\"></fa-icon>\r\n <div\r\n [ngStyle]=\"messageStyle\"\r\n [id]=\"messageElId\"\r\n class=\"message\"\r\n [ngClass]=\"{ 'no-details': !showDetails, details: showDetails }\">\r\n <div class=\"dict-cont\" *ngFor=\"let entry of message | keyvalue\">\r\n <strong>{{ entry.key }}: </strong>\r\n <span>{{ formatValue(entry.value) }}</span>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".no-details{display:none;position:unset}.icon{cursor:pointer;display:inline-block}.container{position:relative}.details{position:fixed;display:block;z-index:1000;border-radius:.5rem;padding:.75rem 1rem;width:max-content;max-width:500px;font-size:1.2rem;line-height:1.4}@media (max-width: 1024px){.details{max-width:320px}}@media (max-width: 768px){.details{max-width:90vw}}.right-section{right:0}.message{width:max-content;white-space:pre-line;pointer-events:none}.dict-cont{line-height:normal}\n"] }]
201
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; }, propDecorators: { width: [{
202
+ type: Input
203
+ }], control: [{
204
+ type: Input
205
+ }], messageType: [{
206
+ type: Input
207
+ }], message: [{
208
+ type: Input
209
+ }], onScrollY: [{
210
+ type: HostListener,
211
+ args: ['document:scroll ']
212
+ }] } });
213
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC1tc2ctZXJyb3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5wdXRzL3NyYy9saWIvdG9vbHRpcC1tc2ctZXJyb3IvdG9vbHRpcC1tc2ctZXJyb3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5wdXRzL3NyYy9saWIvdG9vbHRpcC1tc2ctZXJyb3IvdG9vbHRpcC1tc2ctZXJyb3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxHQUtOLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7OztBQU9qRSxNQUFNLE9BQU8sZUFBZTtJQW9CaEI7SUFDQTtJQXBCRCxLQUFLLENBQVM7SUFDZCxPQUFPLEdBQTJCLElBQUksQ0FBQztJQUN2QyxXQUFXLEdBQXVCLGtCQUFrQixDQUFDLEtBQUssQ0FBQztJQUMzRCxPQUFPLENBQU07SUFDdEIsUUFBUSxDQUFTO0lBQ2pCLFdBQVcsQ0FBUztJQUNwQixNQUFNLEdBQVksSUFBSSxDQUFDO0lBQ3ZCLFdBQVcsQ0FBVTtJQUNyQixXQUFXLENBQWM7SUFDekIsY0FBYyxDQUFjO0lBQzVCLFNBQVMsQ0FBTTtJQUNmLFlBQVksQ0FBVTtJQUd0QixTQUFTO1FBQ1AsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxZQUNVLEdBQXNCLEVBQ3RCLEdBQWU7UUFEZixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN0QixRQUFHLEdBQUgsR0FBRyxDQUFZO0lBQ3JCLENBQUM7SUFFTCxRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsb0JBQW9CLEVB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QUM7d0dBL01VLGVBQWU7NEZBQWYsZUFBZSwwT0NwQjVCLHVoREE2Q0E7OzRGRHpCYSxlQUFlO2tCQUwzQixTQUFTOytCQUNFLG1CQUFtQjtpSUFLcEIsS0FBSztzQkFBYixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFXTixTQUFTO3NCQURSLFlBQVk7dUJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBIb3N0TGlzdGVuZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25DaGFuZ2VzLFxyXG4gIE9uRGVzdHJveSxcclxuICBPbkluaXQsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBQcmltYXJ5Q29sb3JzIH0gZnJvbSAnLi4vcHJpbWFyeS1jb2xvcnMnO1xyXG5pbXBvcnQgeyBUb29sVGlwTWVzc2FnZVR5cGUgfSBmcm9tICcuL3Rvb2x0aXAtbWVzc2FnZS10eXBlLmVudW0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd0b29sdGlwLW1zZy1lcnJvcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3Rvb2x0aXAtbXNnLWVycm9yLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90b29sdGlwLW1zZy1lcnJvci5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVG9vbHRpcE1zZ0Vycm9yIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XHJcbiAgQElucHV0KCkgd2lkdGg6IHN0cmluZztcclxuICBASW5wdXQoKSBjb250cm9sOiBBYnN0cmFjdENvbnRyb2wgfCBudWxsID0gbnVsbDtcclxuICBASW5wdXQoKSBtZXNzYWdlVHlwZTogVG9vbFRpcE1lc3NhZ2VUeXBlID0gVG9vbFRpcE1lc3NhZ2VUeXBlLkVSUk9SO1xyXG4gIEBJbnB1dCgpIG1lc3NhZ2U6IGFueTtcclxuICBpY29uRWxJZDogc3RyaW5nO1xyXG4gIG1lc3NhZ2VFbElkOiBzdHJpbmc7XHJcbiAgaXNMZWZ0OiBib29sZWFuID0gdHJ1ZTtcclxuICBzaG93RGV0YWlsczogYm9vbGVhbjtcclxuICB0b29sdGlwSWNvbjogSFRNTEVsZW1lbnQ7XHJcbiAgdG9vbHRpcE1lc3NhZ2U6IEhUTUxFbGVtZW50O1xyXG4gIGljb25TdHlsZTogYW55O1xyXG4gIGlzRGljdGlvbmFyeTogYm9vbGVhbjtcclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6c2Nyb2xsICcpXHJcbiAgb25TY3JvbGxZKCkge1xyXG4gICAgdGhpcy5vbk1vdXNlTGVhdmUoKTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBfRWw6IEVsZW1lbnRSZWZcclxuICApIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuaWNvbkVsSWQgPSB0aGlzLmdlbmVyYXRlUmFuZG9tU3RyaW5nKCk7XHJcbiAgICB0aGlzLm1lc3NhZ2VFbElkID0gdGhpcy5nZW5lcmF0ZVJhbmRvbVN0cmluZygpO1xyXG4gICAgdGhpcy5zZXRJY29uU3R5bGUoKTtcclxuICAgIHRoaXMuY2hlY2tFcnJvclR5cGUoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIHRoaXMuY2hlY2tFcnJvclR5cGUoKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgaWYgKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMubWVzc2FnZUVsSWQpKSB7XHJcbiAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMubWVzc2FnZUVsSWQpLnJlbW92ZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2hlY2tFcnJvclR5cGUoKSB7XHJcbiAgICBpZiAodGhpcy5tZXNzYWdlKSB7XHJcbiAgICAgIGlmICh0aGlzLm1lc3NhZ2UuY29uc3RydWN0b3IgPT0gT2JqZWN0KSB7XHJcbiAgICAgICAgdGhpcy5pc0RpY3Rpb25hcnkgPSB0cnVlO1xyXG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiB0aGlzLm1lc3NhZ2UgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgdGhpcy5pc0RpY3Rpb25hcnkgPSBmYWxzZTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmlzRGljdGlvbmFyeSA9IGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRUaGVtZWRNZXNzYWdlU3R5bGUoKSB7XHJcbiAgICBsZXQgYmFja2dyb3VuZENvbG9yOiBzdHJpbmc7XHJcbiAgICBsZXQgZm9udEJvcmRlckNvbG9yOiBzdHJpbmc7XHJcblxyXG4gICAgc3dpdGNoICh0aGlzLm1lc3NhZ2VUeXBlKSB7XHJcbiAgICAgIGNhc2UgVG9vbFRpcE1lc3NhZ2VUeXBlLkVSUk9SOlxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvciA9ICcjZmRlNWYwJztcclxuICAgICAgICBmb250Qm9yZGVyQ29sb3IgPSBQcmltYXJ5Q29sb3JzLiRwcmltYXJ5UGlua0NvbG9yO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIFRvb2xUaXBNZXNzYWdlVHlwZS5XQVJOSU5HOlxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvciA9ICcjZmRlZmRkJztcclxuICAgICAgICBmb250Qm9yZGVyQ29sb3IgPSBQcmltYXJ5Q29sb3JzLiRwcmltYXJ5T3JhbmdlQ29sb3I7XHJcblxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIFRvb2xUaXBNZXNzYWdlVHlwZS5IRUxQOlxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvciA9ICcjZDFmOWYyJztcclxuICAgICAgICBmb250Qm9yZGVyQ29sb3IgPSBQcmltYXJ5Q29sb3JzLiRwcmltYXJ5VGVhbENvbG9yO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvciA9IFByaW1hcnlDb2xvcnMuJHByaW1hcnlMaWdodEdyYXlDb2xvcjtcclxuICAgICAgICBmb250Qm9yZGVyQ29sb3IgPSBQcmltYXJ5Q29sb3JzLiRwcmltYXJ5R3JheUNvbG9yO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gICAgbGV0IHN0eWxlID0ge1xyXG4gICAgICAnYmFja2dyb3VuZC1jb2xvcic6IGJhY2tncm91bmRDb2xvcixcclxuICAgICAgJ2ZvbnQtd2VpZ2h0JzogJ2JvbGQnLFxyXG4gICAgICBjb2xvcjogZm9udEJvcmRlckNvbG9yLFxyXG4gICAgICBib3JkZXI6ICcwLjJyZW0gc29saWQgJyArIGZvbnRCb3JkZXJDb2xvcixcclxuICAgICAgJ2JvcmRlci1sZWZ0JzogJzAuNXJlbSBzb2xpZCAnICsgZm9udEJvcmRlckNvbG9yLFxyXG4gICAgfTtcclxuXHJcbiAgICByZXR1cm4gc3R5bGU7XHJcbiAgfVxyXG5cclxuICBzZXRNZXNzYWdlU3R5bGUoKSB7XHJcbiAgICBsZXQgc3R5bGUgPSB7fTtcclxuXHJcbiAgICBpZiAodGhpcy53aWR0aCkge1xyXG4gICAgICBzdHlsZVsnd2lkdGgnXSA9IHRoaXMud2lkdGg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXQgbWVzc2FnZVN0eWxlKCkge1xyXG4gICAgbGV0IGNvbW1vbk1lc3NhZ2VTdHlsZSA9IHt9O1xyXG5cclxuICAgIGlmICh0aGlzLndpZHRoKSB7XHJcbiAgICAgIGNvbW1vbk1lc3NhZ2VTdHlsZVsnd2lkdGgnXSA9IHRoaXMud2lkdGg7XHJcbiAgICB9XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAuLi5jb21tb25NZXNzYWdlU3R5bGUsXHJcbiAgICAgIC4uLih0aGlzLnNob3dEZXRhaWxzID8gdGhpcy5nZXRUaGVtZWRNZXNzYWdlU3R5bGUoKSA6IHt9KSxcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBzZXRJY29uU3R5bGUoKSB7XHJcbiAgICBsZXQgYmFja2dyb3VuZENvbG9yOiBzdHJpbmc7XHJcbiAgICBzd2l0Y2ggKHRoaXMubWVzc2FnZVR5cGUpIHtcclxuICAgICAgY2FzZSBUb29sVGlwTWVzc2FnZVR5cGUuRVJST1I6XHJcbiAgICAgICAgYmFja2dyb3VuZENvbG9yID0gUHJpbWFyeUNvbG9ycy4kcHJpbWFyeVBpbmtDb2xvcjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBUb29sVGlwTWVzc2FnZVR5cGUuV0FSTklORzpcclxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3IgPSBQcmltYXJ5Q29sb3JzLiRwcmltYXJ5T3JhbmdlQ29sb3I7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgVG9vbFRpcE1lc3NhZ2VUeXBlLkhFTFA6XHJcbiAgICAgICAgYmFja2dyb3VuZENvbG9yID0gUHJpbWFyeUNvbG9ycy4kcHJpbWFyeVRlYWxDb2xvcjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3IgPSBQcmltYXJ5Q29sb3JzLiRwcmltYXJ5R3JheUNvbG9yO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gICAgbGV0IHN0eWxlID0ge1xyXG4gICAgICBjb2xvcjogYmFja2dyb3VuZENvbG9yLFxyXG4gICAgfTtcclxuXHJcbiAgICB0aGlzLmljb25TdHlsZSA9IHN0eWxlO1xyXG4gIH1cclxuXHJcbiAgb25Nb3VzZUVudGVyKCkge1xyXG4gICAgdGhpcy5zaG93RGV0YWlscyA9IHRydWU7XHJcbiAgICAvLyAgQ0RSIGlzIG5lZWRlZCB0byBsZXQgdGhlIERPTSBrbm93IHRoZSBib3ggZXJyb3IgaGFzIGEgd2lkdGhcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIHRoaXMudG9vbHRpcE1lc3NhZ2UgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0aGlzLm1lc3NhZ2VFbElkKTtcclxuICAgIGlmICh0aGlzLm1lc3NhZ2UpIHtcclxuICAgICAgdGhpcy5nZXREaXJlY3Rpb24odGhpcy50b29sdGlwTWVzc2FnZSk7XHJcbiAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGhpcy50b29sdGlwTWVzc2FnZSk7XHJcbiAgICAgIGxldCBtZXNzYWdlRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMubWVzc2FnZUVsSWQpO1xyXG4gICAgICBsZXQgaWNvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuaWNvbkVsSWQpO1xyXG4gICAgICBsZXQgcmVjdCA9IGljb24uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcblxyXG4gICAgICBsZXQgdG9wID0gcmVjdC50b3A7XHJcbiAgICAgIGxldCBsZWZ0ID0gcmVjdC5sZWZ0O1xyXG4gICAgICBsZXQgcmlnaHQgPSByZWN0LnJpZ2h0O1xyXG4gICAgICBsZXQgYXBwZW5kZWRMZWZ0OiBudW1iZXI7XHJcbiAgICAgIGxldCBhcHBlbmRlZFJpZ2h0OiBudW1iZXI7XHJcbiAgICAgIGxldCBhcHBlbmRlZFRvcCA9IHRvcCAtIG1lc3NhZ2VFbGVtZW50Lm9mZnNldEhlaWdodDtcclxuICAgICAgdGhpcy50b29sdGlwTWVzc2FnZS5zdHlsZS50b3AgPSBhcHBlbmRlZFRvcCArICdweCc7XHJcbiAgICAgIHRoaXMudG9vbHRpcE1lc3NhZ2Uuc3R5bGUuekluZGV4ID0gJzEwMDAnO1xyXG5cclxuICAgICAgaWYgKHRoaXMuaXNMZWZ0KSB7XHJcbiAgICAgICAgYXBwZW5kZWRMZWZ0ID0gbGVmdCArIGljb24ub2Zmc2V0V2lkdGggLSA1O1xyXG4gICAgICAgIHRoaXMudG9vbHRpcE1lc3NhZ2Uuc3R5bGUubGVmdCA9IGFwcGVuZGVkTGVmdCArICdweCc7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgYXBwZW5kZWRSaWdodCA9IHdpbmRvdy5pbm5lcldpZHRoIC0gcmlnaHQgKyA1O1xyXG4gICAgICAgIHRoaXMudG9vbHRpcE1lc3NhZ2Uuc3R5bGUucmlnaHQgPSBhcHBlbmRlZFJpZ2h0ICsgJ3B4JztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25Nb3VzZUxlYXZlKCkge1xyXG4gICAgdGhpcy5zaG93RGV0YWlscyA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgZ2V0RGlyZWN0aW9uKGVsZW1lbnQpIHtcclxuICAgIC8vICBDYWxjdWxhdGluZyB0aGUgd2lkdGggZGlmZmVyZW5jZSBiZXR3ZWVuICBzY3JlZW4gd2lkdGggbWludXMgdGhlIHBvaXN0aW9uIG9mIHRoZSBpY29uIGZyb20gbGVmdCB0byByaWdodCAoZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkucmlnaHQpXHJcbiAgICBsZXQgZGlmZmVyZW5jZSA9IHdpbmRvdy5pbm5lcldpZHRoIC0gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5yaWdodDtcclxuICAgIC8vIGhhcmQgY29kZWQgKyAxMiBpcyBmb3IgdGhlIHBhZGRpbmcgdGhhdCBoYXMgYmVlbiBhZGRlZCB0byByb3V0ZXItb3V0bGV0XHJcbiAgICAvLyBUaGUgaWYgc3RhdG1lbnQgaGVyZSBjaGVjayBpZiB0aGVyZSBpcyBlbm91Z2ggc3BhY2UgZm9yIHRoZSBib3ggZXJyb3IgdG8gc2hvdyBmcm9tIGxlZnQgdG8gcmlnaHQgLCBpZiBub3QgZW5vdWdoIHNwYWNlLCB0aGUgYm94IGVycm9yIHdpbGwgcG9wIHVwIGZyb20gcmlnaHQgdG8gbGVmdFxyXG4gICAgaWYgKGRpZmZlcmVuY2UgPD0gZWxlbWVudC5vZmZzZXRXaWR0aCArIDEyKSB7XHJcbiAgICAgIHRoaXMuaXNMZWZ0ID0gZmFsc2U7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmlzTGVmdCA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZW5lcmF0ZVJhbmRvbVN0cmluZygpIHtcclxuICAgIGxldCBjaGFyc0FuZE51bWJzID0gJ0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMTIzNDU2Nzg5MCc7XHJcbiAgICBsZXQgdGV4dCA9ICcnO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCA4OyBpKyspIHtcclxuICAgICAgdGV4dCArPSBjaGFyc0FuZE51bWJzLmNoYXJBdChNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBjaGFyc0FuZE51bWJzLmxlbmd0aCkpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRleHQ7XHJcbiAgfVxyXG5cclxuICAvLyBIZWxwZXIgdG8gZGVjaWRlIGhvdyB0byBkaXNwbGF5IHRoZSB2YWx1ZVxyXG4gIGZvcm1hdFZhbHVlKHZhbHVlOiBhbnkpOiBzdHJpbmcge1xyXG4gICAgaWYgKCF2YWx1ZSkgcmV0dXJuICcnO1xyXG5cclxuICAgIC8vIDEuIElmIGl0J3MgYW4gYXJyYXkgKGxpa2UgeW91ciBqdXJpc2RpY3Rpb24gZXJyb3IpXHJcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcclxuICAgICAgLy8gTWFwIHRocm91Z2ggdGhlIGFycmF5IGFuZCBleHRyYWN0ICdtZXNzYWdlJyBpZiBpdCBleGlzdHMsIG90aGVyd2lzZSBzdHJpbmdpZnlcclxuICAgICAgcmV0dXJuIHZhbHVlXHJcbiAgICAgICAgLm1hcChpdGVtID0+IHtcclxuICAgICAgICAgIHJldHVybiB0eXBlb2YgaXRlbSA9PT0gJ29iamVjdCcgJiYgaXRlbS5tZXNzYWdlID8gaXRlbS5tZXNzYWdlIDogSlNPTi5zdHJpbmdpZnkoaXRlbSk7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuam9pbignLCAnKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyAyLiBJZiBpdCdzIGEgc2luZ2xlIG9iamVjdCAoYnV0IG5vdCBhbiBhcnJheSlcclxuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnKSB7XHJcbiAgICAgIHJldHVybiB2YWx1ZS5tZXNzYWdlIHx8IEpTT04uc3RyaW5naWZ5KHZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyAzLiBJdCdzIGEgc3RyaW5nIG9yIG51bWJlclxyXG4gICAgcmV0dXJuIHZhbHVlO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgKm5nSWY9XCJtZXNzYWdlICYmICFjb250cm9sXCJcclxuICBjbGFzcz1cImNvbnRhaW5lclwiXHJcbiAgKG1vdXNlZW50ZXIpPVwib25Nb3VzZUVudGVyKClcIlxyXG4gIChtb3VzZWxlYXZlKT1cIm9uTW91c2VMZWF2ZSgpXCI+XHJcbiAgPGZhLWljb24gW2lkXT1cImljb25FbElkXCIgW25nU3R5bGVdPVwiaWNvblN0eWxlXCIgaWNvbj1cImNpcmNsZS1leGNsYW1hdGlvblwiIGNsYXNzPVwiaWNvblwiPjwvZmEtaWNvbj5cclxuICA8ZGl2XHJcbiAgICAqbmdJZj1cIiFpc0RpY3Rpb25hcnlcIlxyXG4gICAgW25nU3R5bGVdPVwibWVzc2FnZVN0eWxlXCJcclxuICAgIFtpZF09XCJtZXNzYWdlRWxJZFwiXHJcbiAgICBjbGFzcz1cIm1lc3NhZ2VcIlxyXG4gICAgW25nQ2xhc3NdPVwieyAnbm8tZGV0YWlscyc6ICFzaG93RGV0YWlscywgZGV0YWlsczogc2hvd0RldGFpbHMgfVwiPlxyXG4gICAge3sgbWVzc2FnZSB9fVxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2XHJcbiAgICAqbmdJZj1cImlzRGljdGlvbmFyeVwiXHJcbiAgICBbbmdTdHlsZV09XCJtZXNzYWdlU3R5bGVcIlxyXG4gICAgW2lkXT1cIm1lc3NhZ2VFbElkXCJcclxuICAgIGNsYXNzPVwibWVzc2FnZVwiXHJcbiAgICBbbmdDbGFzc109XCJ7ICduby1kZXRhaWxzJzogIXNob3dEZXRhaWxzLCBkZXRhaWxzOiBzaG93RGV0YWlscyB9XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZGljdC1jb250XCIgKm5nRm9yPVwibGV0IGVudHJ5IG9mIG1lc3NhZ2UgfCBrZXl2YWx1ZVwiPlxyXG4gICAgICA8c3Ryb25nPnt7IGVudHJ5LmtleSB9fTogPC9zdHJvbmc+XHJcbiAgICAgIDxzcGFuPnt7IGZvcm1hdFZhbHVlKGVudHJ5LnZhbHVlKSB9fTwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjxkaXZcclxuICAqbmdJZj1cImNvbnRyb2w/LnRvdWNoZWQgJiYgY29udHJvbC5lcnJvcnNcIlxyXG4gIGNsYXNzPVwiY29udGFpbmVyXCJcclxuICAobW91c2VlbnRlcik9XCJvbk1vdXNlRW50ZXIoKVwiXHJcbiAgKG1vdXNlbGVhdmUpPVwib25Nb3VzZUxlYXZlKClcIj5cclxuICA8ZmEtaWNvbiBbbmdTdHlsZV09XCJpY29uU3R5bGVcIiBbaWRdPVwiaWNvbkVsSWRcIiBpY29uPVwiY2lyY2xlLWV4Y2xhbWF0aW9uXCIgY2xhc3M9XCJpY29uXCI+PC9mYS1pY29uPlxyXG4gIDxkaXZcclxuICAgIFtuZ1N0eWxlXT1cIm1lc3NhZ2VTdHlsZVwiXHJcbiAgICBbaWRdPVwibWVzc2FnZUVsSWRcIlxyXG4gICAgY2xhc3M9XCJtZXNzYWdlXCJcclxuICAgIFtuZ0NsYXNzXT1cInsgJ25vLWRldGFpbHMnOiAhc2hvd0RldGFpbHMsIGRldGFpbHM6IHNob3dEZXRhaWxzIH1cIj5cclxuICAgIDxkaXYgY2xhc3M9XCJkaWN0LWNvbnRcIiAqbmdGb3I9XCJsZXQgZW50cnkgb2YgbWVzc2FnZSB8IGtleXZhbHVlXCI+XHJcbiAgICAgIDxzdHJvbmc+e3sgZW50cnkua2V5IH19OiA8L3N0cm9uZz5cclxuICAgICAgPHNwYW4+e3sgZm9ybWF0VmFsdWUoZW50cnkudmFsdWUpIH19PC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -1,24 +1,28 @@
1
1
  /*
2
2
  * Public API Surface of inputs
3
3
  */
4
- export * from './lib/choose-enum/choose-enum.component';
5
- export * from './lib/show-table-errors/show-table-errors.component';
6
4
  export * from './lib/choose-enum-renderer/choose-enum-renderer.component';
5
+ export * from './lib/choose-enum/choose-enum.component';
6
+ export * from './lib/choose-general-item-renderer/choose-general-item-renderer-change-event.interface';
7
+ export * from './lib/choose-general-item-renderer/choose-general-item-renderer-validation-type.enum';
7
8
  export * from './lib/choose-general-item/choose-general-item.component';
9
+ export * from './lib/show-table-errors/show-table-errors.component';
10
+ export * from './lib/tooltip-msg-error/tooltip-message-type.enum';
11
+ export * from './lib/tooltip-msg-error/tooltip-msg-error.component';
12
+ export * from './lib/add-asterisk.directive';
8
13
  export * from './lib/choose-general-item-renderer/choose-general-item-renderer.component';
14
+ export * from './lib/choose-general-item/choose-general-item.service';
9
15
  export * from './lib/choose-line-type/choose-line-type.component';
10
- export * from './lib/choose-yes-or-no/choose-yes-or-no.component';
11
16
  export * from './lib/choose-yes-or-no-renderer/choose-yes-or-no-renderer.component';
12
- export * from './lib/editable-savable-input/editable-savable-input.component';
13
- export * from './lib/general-input-renderer/general-input-renderer.component';
17
+ export * from './lib/choose-yes-or-no/choose-yes-or-no.component';
18
+ export * from './lib/dropdown-actions/dropdown-action-type.model';
19
+ export * from './lib/dropdown-actions/dropdown-actions.component';
20
+ export * from './lib/dropdown-actions/label-and-route.model';
14
21
  export * from './lib/editable-savable-input/dynamicPipe';
15
- export * from './lib/choose-general-item/choose-general-item.service';
16
- export * from './lib/models/label-and-field.model';
22
+ export * from './lib/editable-savable-input/editable-savable-input.component';
17
23
  export * from './lib/formcontrol-validation-msg.directive';
24
+ export * from './lib/general-input-renderer/general-input-renderer.component';
18
25
  export * from './lib/inputs.module';
19
- export * from './lib/dropdown-actions/dropdown-actions.component';
20
- export * from './lib/dropdown-actions/label-and-route.model';
21
- export * from './lib/dropdown-actions/dropdown-action-type.model';
22
- export * from './lib/add-asterisk.directive';
26
+ export * from './lib/models/label-and-field.model';
23
27
  export * from './lib/primary-colors';
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxxREFBcUQsQ0FBQztBQUNwRSxjQUFjLDJEQUEyRCxDQUFDO0FBQzFFLGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYywyRUFBMkUsQ0FBQztBQUMxRixjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxxRUFBcUUsQ0FBQztBQUNwRixjQUFjLCtEQUErRCxDQUFDO0FBQzlFLGNBQWMsK0RBQStELENBQUM7QUFDOUUsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBpbnB1dHNcclxuICovXHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jaG9vc2UtZW51bS9jaG9vc2UtZW51bS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zaG93LXRhYmxlLWVycm9ycy9zaG93LXRhYmxlLWVycm9ycy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jaG9vc2UtZW51bS1yZW5kZXJlci9jaG9vc2UtZW51bS1yZW5kZXJlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jaG9vc2UtZ2VuZXJhbC1pdGVtL2Nob29zZS1nZW5lcmFsLWl0ZW0uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY2hvb3NlLWdlbmVyYWwtaXRlbS1yZW5kZXJlci9jaG9vc2UtZ2VuZXJhbC1pdGVtLXJlbmRlcmVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Nob29zZS1saW5lLXR5cGUvY2hvb3NlLWxpbmUtdHlwZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jaG9vc2UteWVzLW9yLW5vL2Nob29zZS15ZXMtb3Itbm8uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY2hvb3NlLXllcy1vci1uby1yZW5kZXJlci9jaG9vc2UteWVzLW9yLW5vLXJlbmRlcmVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VkaXRhYmxlLXNhdmFibGUtaW5wdXQvZWRpdGFibGUtc2F2YWJsZS1pbnB1dC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9nZW5lcmFsLWlucHV0LXJlbmRlcmVyL2dlbmVyYWwtaW5wdXQtcmVuZGVyZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZWRpdGFibGUtc2F2YWJsZS1pbnB1dC9keW5hbWljUGlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Nob29zZS1nZW5lcmFsLWl0ZW0vY2hvb3NlLWdlbmVyYWwtaXRlbS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2xhYmVsLWFuZC1maWVsZC5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Zvcm1jb250cm9sLXZhbGlkYXRpb24tbXNnLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lucHV0cy5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kcm9wZG93bi1hY3Rpb25zL2Ryb3Bkb3duLWFjdGlvbnMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZHJvcGRvd24tYWN0aW9ucy9sYWJlbC1hbmQtcm91dGUubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kcm9wZG93bi1hY3Rpb25zL2Ryb3Bkb3duLWFjdGlvbi10eXBlLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYWRkLWFzdGVyaXNrLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ByaW1hcnktY29sb3JzJztcclxuXHJcblxyXG4iXX0=
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsMkRBQTJELENBQUM7QUFDMUUsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHdGQUF3RixDQUFDO0FBQ3ZHLGNBQWMsc0ZBQXNGLENBQUM7QUFDckcsY0FBYyx5REFBeUQsQ0FBQztBQUN4RSxjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxxREFBcUQsQ0FBQztBQUVwRSxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsMkVBQTJFLENBQUM7QUFDMUYsY0FBYyx1REFBdUQsQ0FBQztBQUN0RSxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMscUVBQXFFLENBQUM7QUFDcEYsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsK0RBQStELENBQUM7QUFDOUUsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLCtEQUErRCxDQUFDO0FBQzlFLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHNCQUFzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGlucHV0c1xyXG4gKi9cclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Nob29zZS1lbnVtLXJlbmRlcmVyL2Nob29zZS1lbnVtLXJlbmRlcmVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Nob29zZS1lbnVtL2Nob29zZS1lbnVtLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Nob29zZS1nZW5lcmFsLWl0ZW0tcmVuZGVyZXIvY2hvb3NlLWdlbmVyYWwtaXRlbS1yZW5kZXJlci1jaGFuZ2UtZXZlbnQuaW50ZXJmYWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY2hvb3NlLWdlbmVyYWwtaXRlbS1yZW5kZXJlci9jaG9vc2UtZ2VuZXJhbC1pdGVtLXJlbmRlcmVyLXZhbGlkYXRpb24tdHlwZS5lbnVtJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY2hvb3NlLWdlbmVyYWwtaXRlbS9jaG9vc2UtZ2VuZXJhbC1pdGVtLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Nob3ctdGFibGUtZXJyb3JzL3Nob3ctdGFibGUtZXJyb3JzLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Rvb2x0aXAtbXNnLWVycm9yL3Rvb2x0aXAtbWVzc2FnZS10eXBlLmVudW0nO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi90b29sdGlwLW1zZy1lcnJvci90b29sdGlwLW1zZy1lcnJvci5jb21wb25lbnQnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYWRkLWFzdGVyaXNrLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Nob29zZS1nZW5lcmFsLWl0ZW0tcmVuZGVyZXIvY2hvb3NlLWdlbmVyYWwtaXRlbS1yZW5kZXJlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jaG9vc2UtZ2VuZXJhbC1pdGVtL2Nob29zZS1nZW5lcmFsLWl0ZW0uc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Nob29zZS1saW5lLXR5cGUvY2hvb3NlLWxpbmUtdHlwZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jaG9vc2UteWVzLW9yLW5vLXJlbmRlcmVyL2Nob29zZS15ZXMtb3Itbm8tcmVuZGVyZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY2hvb3NlLXllcy1vci1uby9jaG9vc2UteWVzLW9yLW5vLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Ryb3Bkb3duLWFjdGlvbnMvZHJvcGRvd24tYWN0aW9uLXR5cGUubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kcm9wZG93bi1hY3Rpb25zL2Ryb3Bkb3duLWFjdGlvbnMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZHJvcGRvd24tYWN0aW9ucy9sYWJlbC1hbmQtcm91dGUubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9lZGl0YWJsZS1zYXZhYmxlLWlucHV0L2R5bmFtaWNQaXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZWRpdGFibGUtc2F2YWJsZS1pbnB1dC9lZGl0YWJsZS1zYXZhYmxlLWlucHV0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Zvcm1jb250cm9sLXZhbGlkYXRpb24tbXNnLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2dlbmVyYWwtaW5wdXQtcmVuZGVyZXIvZ2VuZXJhbC1pbnB1dC1yZW5kZXJlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnB1dHMubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2xhYmVsLWFuZC1maWVsZC5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ByaW1hcnktY29sb3JzJztcclxuXHJcblxyXG4iXX0=