@sd-angular/core 1.0.39 → 1.0.42
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/assets/scss/quill-mention/quill-mention.css +7 -4
- package/bundles/sd-angular-core-comment.umd.js +2 -2
- package/bundles/sd-angular-core-comment.umd.js.map +1 -1
- package/bundles/sd-angular-core-comment.umd.min.js +2 -2
- package/bundles/sd-angular-core-comment.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-form.umd.js +2 -0
- package/bundles/sd-angular-core-form.umd.js.map +1 -1
- package/bundles/sd-angular-core-form.umd.min.js +1 -1
- package/bundles/sd-angular-core-form.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-input-currency.umd.js +3 -3
- package/bundles/sd-angular-core-input-currency.umd.js.map +1 -1
- package/bundles/sd-angular-core-input-currency.umd.min.js +1 -1
- package/bundles/sd-angular-core-input-currency.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-input.umd.js +33 -10
- package/bundles/sd-angular-core-input.umd.js.map +1 -1
- package/bundles/sd-angular-core-input.umd.min.js +2 -2
- package/bundles/sd-angular-core-input.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-notify.umd.js +72 -31
- package/bundles/sd-angular-core-notify.umd.js.map +1 -1
- package/bundles/sd-angular-core-notify.umd.min.js +2 -2
- package/bundles/sd-angular-core-notify.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-utility.umd.js +3 -0
- package/bundles/sd-angular-core-utility.umd.js.map +1 -1
- package/bundles/sd-angular-core-utility.umd.min.js +1 -1
- package/bundles/sd-angular-core-utility.umd.min.js.map +1 -1
- package/comment/sd-angular-core-comment.metadata.json +1 -1
- package/comment/src/lib/comment.model.d.ts +2 -0
- package/esm2015/comment/src/lib/comment.component.js +3 -3
- package/esm2015/comment/src/lib/comment.model.js +1 -1
- package/esm2015/form/src/lib/form.module.js +4 -1
- package/esm2015/input/src/lib/input.component.js +25 -7
- package/esm2015/input/src/lib/input.module.js +4 -2
- package/esm2015/input-currency/src/lib/input-currency.component.js +4 -4
- package/esm2015/notify/src/lib/notify.service.js +71 -29
- package/esm2015/utility/src/lib/utility.service.js +4 -1
- package/fesm2015/sd-angular-core-comment.js +2 -2
- package/fesm2015/sd-angular-core-comment.js.map +1 -1
- package/fesm2015/sd-angular-core-form.js +3 -1
- package/fesm2015/sd-angular-core-form.js.map +1 -1
- package/fesm2015/sd-angular-core-input-currency.js +3 -3
- package/fesm2015/sd-angular-core-input-currency.js.map +1 -1
- package/fesm2015/sd-angular-core-input.js +27 -7
- package/fesm2015/sd-angular-core-input.js.map +1 -1
- package/fesm2015/sd-angular-core-notify.js +70 -28
- package/fesm2015/sd-angular-core-notify.js.map +1 -1
- package/fesm2015/sd-angular-core-utility.js +3 -0
- package/fesm2015/sd-angular-core-utility.js.map +1 -1
- package/form/sd-angular-core-form.metadata.json +1 -1
- package/input/sd-angular-core-input.metadata.json +1 -1
- package/input/src/lib/input.component.d.ts +7 -1
- package/input-currency/sd-angular-core-input-currency.metadata.json +1 -1
- package/notify/sd-angular-core-notify.metadata.json +1 -1
- package/package.json +1 -1
- package/{sd-angular-core-1.0.39.tgz → sd-angular-core-1.0.42.tgz} +0 -0
- package/utility/src/lib/utility.service.d.ts +1 -0
|
@@ -16,7 +16,7 @@ export class SdInputCurrency {
|
|
|
16
16
|
_form.set(this, void 0);
|
|
17
17
|
_model.set(this, void 0);
|
|
18
18
|
this.modelChange = new EventEmitter();
|
|
19
|
-
_align.set(this, '
|
|
19
|
+
_align.set(this, 'left');
|
|
20
20
|
_allowNegative.set(this, true);
|
|
21
21
|
_decimal.set(this, ',');
|
|
22
22
|
_precision.set(this, 0);
|
|
@@ -141,7 +141,7 @@ export class SdInputCurrency {
|
|
|
141
141
|
}
|
|
142
142
|
}
|
|
143
143
|
set align(val) {
|
|
144
|
-
__classPrivateFieldSet(this, _align, val || '
|
|
144
|
+
__classPrivateFieldSet(this, _align, val || 'left');
|
|
145
145
|
__classPrivateFieldGet(this, _generateOption).call(this);
|
|
146
146
|
}
|
|
147
147
|
set allowNegative(val) {
|
|
@@ -224,7 +224,7 @@ _name = new WeakMap(), _form = new WeakMap(), _model = new WeakMap(), _align = n
|
|
|
224
224
|
SdInputCurrency.decorators = [
|
|
225
225
|
{ type: Component, args: [{
|
|
226
226
|
selector: 'sd-input-currency',
|
|
227
|
-
template: "<div class=\"d-flex align-items-center\">\r\n <mat-form-field class=\"sd-md\"\r\n [ngClass]=\"{'sd-form-tooltip':tooltip, 'sd-sm': size === 'sm', 'no-padding-wrapper': disableErrorMessage}\"\r\n appearance=\"outline\">\r\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\r\n <input currencyMask [options]=\"options\" [formControl]=\"formControl\" #control matInput\r\n [placeholder]=\"placeholder || label\" (keyup.enter)=\"onKeyupEnter()\" (focus)=\"onFocus()\" [required]=\"isRequired\"\r\n autocomplete=\"off\">\r\n <
|
|
227
|
+
template: "<div class=\"d-flex align-items-center\">\r\n <mat-form-field class=\"sd-md\"\r\n [ngClass]=\"{'sd-form-tooltip':tooltip, 'sd-sm': size === 'sm', 'no-padding-wrapper': disableErrorMessage}\"\r\n appearance=\"outline\">\r\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\r\n <input currencyMask [options]=\"options\" [formControl]=\"formControl\" #control matInput\r\n [placeholder]=\"placeholder || label\" (keyup.enter)=\"onKeyupEnter()\" (focus)=\"onFocus()\" [required]=\"isRequired\"\r\n autocomplete=\"off\">\r\n <ng-container *ngIf=\"sdSuffix?.templateRef\" matSuffix>\r\n <ng-container *ngTemplateOutlet=\"sdSuffix.templateRef\">\r\n </ng-container>\r\n </ng-container>\r\n <mat-error *ngIf=\"formControl.errors?.required && !disableErrorMessage\">\r\n {{'This field is required' | sdTranslate}}\r\n </mat-error>\r\n <mat-error *ngIf=\"formControl.errors?.pattern && !disableErrorMessage\">\r\n {{'Pattern error' | sdTranslate}}\r\n </mat-error>\r\n <mat-error *ngIf=\"formControl.errors?.customValidator && !disableErrorMessage\">\r\n <strong>{{formControl.errors?.customValidator}}</strong>\r\n </mat-error>\r\n </mat-form-field>\r\n <div *ngIf=\"tooltip\" class=\"sd-tooltip\">\r\n <mat-icon (click)=\"sdTooltip.toggle()\" [matTooltip]=\"formControl.value | sdInputCurrencyTooltipPipe:tooltip\"\r\n matSuffix #sdTooltip=\"matTooltip\">info</mat-icon>\r\n </div>\r\n</div>",
|
|
228
228
|
styles: [":host ::ng-deep .mat-form-field.sd-form-tooltip{width:calc(100% - 30px)}.sd-tooltip{display:inline-block;margin:auto;text-align:center;width:30px}:host{display:block;padding-top:5px}:host ::ng-deep .mat-form-field.no-padding-wrapper .mat-form-field-wrapper{padding-bottom:0}:host ::ng-deep .mat-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-outline{background:#f6f6f6;color:#e9e9e9}:host ::ng-deep .mat-form-field input.mat-input-element:disabled{color:#4d4d4d!important}:host ::ng-deep .mat-form-field .mat-placeholder-required{color:#f82c13}"]
|
|
229
229
|
},] }
|
|
230
230
|
];
|
|
@@ -261,4 +261,4 @@ SdInputCurrency.propDecorators = {
|
|
|
261
261
|
keyupEnter: [{ type: Output }],
|
|
262
262
|
control: [{ type: ViewChild, args: ['control',] }]
|
|
263
263
|
};
|
|
264
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtY3VycmVuY3kuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNS9EZXNrdG9wL1dvcmtpbmcvMU1HL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvaW5wdXQtY3VycmVuY3kvIiwic291cmNlcyI6WyJzcmMvbGliL2lucHV0LWN1cnJlbmN5LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFNBQVMsRUFDVCxNQUFNLEVBQ04sWUFBWSxFQUNaLGlCQUFpQixFQUtqQixZQUFZLEVBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFnQyxNQUFNLEVBQWUsVUFBVSxFQUErQixNQUFNLGdCQUFnQixDQUFDO0FBQzVILE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxZQUFZLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFPNUQsTUFBTSxPQUFPLGVBQWU7SUFzSTFCLFlBQW9CLEdBQXNCO1FBQXRCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBckkxQyxnQkFBUSxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUM7UUFNbEIsd0JBQW1CLEdBQUcsS0FBSyxDQUFDO1FBTTVCLHdCQUFpQjtRQWFqQix5QkFBWTtRQVNGLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUUzQyxpQkFBMkIsT0FBTyxFQUFDO1FBTW5DLHlCQUFpQixJQUFJLEVBQUM7UUFNdEIsbUJBQXNCLEdBQUcsRUFBQztRQU0x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TixLQUFLOzRCQU1MLEtBQUs7c0JBTUwsS0FBSzt3QkFNTCxLQUFLO3FCQU1MLEtBQUs7cUJBTUwsS0FBSzt3QkFNTCxLQUFLO3VCQU1MLEtBQUs7a0JBTUwsS0FBSztrQkFNTCxLQUFLO3VCQU9MLEtBQUs7c0JBTUwsS0FBSzt3QkFLTCxLQUFLO3VCQU1MLEtBQUs7dUJBUUwsWUFBWSxTQUFDLGlCQUFpQjtzQkFDOUIsS0FBSzt1QkFDTCxNQUFNO3NCQUNOLE1BQU07eUJBQ04sTUFBTTtzQkFFTixTQUFTLFNBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIElucHV0LFxyXG4gIFZpZXdDaGlsZCxcclxuICBPdXRwdXQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIE9uRGVzdHJveSxcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgT25Jbml0LFxyXG4gIENvbnRlbnRDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1Db250cm9sLCBOZ0Zvcm0sIFZhbGlkYXRvckZuLCBWYWxpZGF0b3JzLCBBc3luY1ZhbGlkYXRvckZuLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCAqIGFzIHV1aWQgZnJvbSAndXVpZCc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgc3RhcnRXaXRoIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ3VycmVuY3lNYXNrSW5wdXRNb2RlIH0gZnJvbSAnbmd4LWN1cnJlbmN5JztcclxuaW1wb3J0IHsgU2RGb3JtQ29udHJvbCB9IGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvY29tbW9uJztcclxuaW1wb3J0IHsgU2RTdWZmaXhEaXJlY3RpdmUgfSBmcm9tICdAc2QtYW5ndWxhci9jb3JlL2NvbW1vbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NkLWlucHV0LWN1cnJlbmN5JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtY3VycmVuY3kuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2lucHV0LWN1cnJlbmN5LmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFNkSW5wdXRDdXJyZW5jeSBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuICAjbmFtZSA9IHV1aWQudjQoKTtcclxuICBASW5wdXQoKSBzZXQgbmFtZSh2YWw6IHN0cmluZykge1xyXG4gICAgaWYgKHZhbCkge1xyXG4gICAgICB0aGlzLiNuYW1lID0gdmFsO1xyXG4gICAgfVxyXG4gIH1cclxuICBkaXNhYmxlRXJyb3JNZXNzYWdlID0gZmFsc2U7XHJcbiAgQElucHV0KCdkaXNhYmxlRXJyb3JNZXNzYWdlJykgc2V0IF9kaXNhYmxlRXJyb3JNZXNzYWdlKHZhbDogYm9vbGVhbiB8ICcnKSB7XHJcbiAgICB0aGlzLmRpc2FibGVFcnJvck1lc3NhZ2UgPSAodmFsID09PSAnJykgfHwgdmFsO1xyXG4gICAgdmFsID0gKHZhbCA9PT0gJycpIHx8IHZhbDtcclxuICB9XHJcbiAgQElucHV0KCkgc2l6ZTogJ3NtJyB8ICdsZyc7XHJcbiAgI2Zvcm06IEZvcm1Hcm91cDtcclxuICBASW5wdXQoKSBzZXQgZm9ybSh2YWw6IE5nRm9ybSB8IEZvcm1Hcm91cCkge1xyXG4gICAgaWYgKHZhbCkge1xyXG4gICAgICBpZiAodmFsIGluc3RhbmNlb2YgTmdGb3JtKSB7XHJcbiAgICAgICAgdGhpcy4jZm9ybSA9IHZhbC5mb3JtO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuI2Zvcm0gPSB2YWw7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcclxuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nO1xyXG5cclxuICAjbW9kZWw6IGFueTtcclxuICBASW5wdXQoKSBzZXQgbW9kZWwodmFsdWU6IGFueSkge1xyXG4gICAgaWYgKHRoaXMuI21vZGVsICE9PSB2YWx1ZSkge1xyXG4gICAgICB0aGlzLiNtb2RlbCA9IHZhbHVlO1xyXG4gICAgICB0aGlzLmZvcm1Db250cm9sLnNldFZhbHVlKHZhbHVlKTtcclxuICAgICAgdGhpcy5yZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQE91dHB1dCgpIG1vZGVsQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAjYWxpZ246ICdsZWZ0JyB8ICdyaWdodCcgPSAncmlnaHQnO1xyXG4gIEBJbnB1dCgpIHNldCBhbGlnbih2YWw6ICdsZWZ0JyB8ICdyaWdodCcgfCAnJykge1xyXG4gICAgdGhpcy4jYWxpZ24gPSB2YWwgfHwgJ3JpZ2h0JztcclxuICAgIHRoaXMuI2dlbmVyYXRlT3B0aW9uKCk7XHJcbiAgfVxyXG5cclxuICAjYWxsb3dOZWdhdGl2ZSA9IHRydWU7XHJcbiAgQElucHV0KCkgc2V0IGFsbG93TmVnYXRpdmUodmFsOiBib29sZWFuIHwgJycpIHtcclxuICAgIHRoaXMuI2FsbG93TmVnYXRpdmUgPSAodmFsID09PSAnJykgfHwgdmFsO1xyXG4gICAgdGhpcy4jZ2VuZXJhdGVPcHRpb24oKTtcclxuICB9XHJcblxyXG4gICNkZWNpbWFsOiAnLicgfCAnLCcgPSAnLCc7XHJcbiAgQElucHV0KCkgc2V0IGRlY2ltYWwodmFsOiAnLicgfCAnLCcgfCAnJykge1xyXG4gICAgdGhpcy4jZGVjaW1hbCA9IHZhbCB8fCAnLCc7XHJcbiAgICB0aGlzLiNnZW5lcmF0ZU9wdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgI3ByZWNpc2lvbjogbnVtYmVyID0gMDtcclxuICBASW5wdXQoKSBzZXQgcHJlY2lzaW9uKHZhbDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLiNwcmVjaXNpb24gPSB2YWwgfHwgMDtcclxuICAgIHRoaXMuI2dlbmVyYXRlT3B0aW9uKCk7XHJcbiAgfVxyXG5cclxuICAjcHJlZml4OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgc2V0IHByZWZpeCh2YWw6IHN0cmluZykge1xyXG4gICAgdGhpcy4jcHJlZml4ID0gdmFsO1xyXG4gICAgdGhpcy4jZ2VuZXJhdGVPcHRpb24oKTtcclxuICB9XHJcblxyXG4gICNzdWZmaXg6IHN0cmluZztcclxuICBASW5wdXQoKSBzZXQgc3VmZml4KHZhbDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLiNzdWZmaXggPSB2YWw7XHJcbiAgICB0aGlzLiNnZW5lcmF0ZU9wdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgI3Rob3VzYW5kczogJy4nIHwgJywnID0gJy4nO1xyXG4gIEBJbnB1dCgpIHNldCB0aG91c2FuZHModmFsOiAnLicgfCAnLCcgfCAnJykge1xyXG4gICAgdGhpcy4jdGhvdXNhbmRzID0gdmFsIHx8ICcuJztcclxuICAgIHRoaXMuI2dlbmVyYXRlT3B0aW9uKCk7XHJcbiAgfVxyXG5cclxuICAjbnVsbGFibGU6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgc2V0IG51bGxhYmxlKHZhbDogYm9vbGVhbiB8IGZhbHNlKSB7XHJcbiAgICB0aGlzLiNudWxsYWJsZSA9IHZhbDtcclxuICAgIHRoaXMuI2dlbmVyYXRlT3B0aW9uKCk7XHJcbiAgfVxyXG5cclxuICAjbWluOiBudW1iZXI7XHJcbiAgQElucHV0KCkgc2V0IG1pbih2YWw6IG51bWJlcikge1xyXG4gICAgdGhpcy4jbWluID0gdmFsO1xyXG4gICAgdGhpcy4jZ2VuZXJhdGVPcHRpb24oKTtcclxuICB9XHJcblxyXG4gICNtYXg6IG51bWJlcjtcclxuICBASW5wdXQoKSBzZXQgbWF4KHZhbDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLiNtYXggPSB2YWw7XHJcbiAgICB0aGlzLiNnZW5lcmF0ZU9wdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgLy8gVmFsaWRhdG9yXHJcbiAgaXNSZXF1aXJlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNldCByZXF1aXJlZCh2YWw6IGJvb2xlYW4gfCAnJykge1xyXG4gICAgdGhpcy5pc1JlcXVpcmVkID0gKHZhbCA9PT0gJycpIHx8IHZhbDtcclxuICAgIHRoaXMuI3VwZGF0ZVZhbGlkYXRvcigpO1xyXG4gIH1cclxuXHJcbiAgI3BhdHRlcm46IHN0cmluZztcclxuICBASW5wdXQoKSBzZXQgcGF0dGVybih2YWw6IHN0cmluZykge1xyXG4gICAgdGhpcy4jcGF0dGVybiA9IHZhbDtcclxuICAgIHRoaXMuI3VwZGF0ZVZhbGlkYXRvcigpO1xyXG4gIH1cclxuICAjdmFsaWRhdG9yOiAodmFsdWU6IGFueSkgPT4gc3RyaW5nIHwgUHJvbWlzZTxzdHJpbmc+O1xyXG4gIEBJbnB1dCgpIHNldCB2YWxpZGF0b3IodmFsaWRhdG9yOiAodmFsdWU6IGFueSkgPT4gc3RyaW5nIHwgUHJvbWlzZTxzdHJpbmc+KSB7XHJcbiAgICB0aGlzLiN2YWxpZGF0b3IgPSB2YWxpZGF0b3I7XHJcbiAgICB0aGlzLiN1cGRhdGVWYWxpZGF0b3IoKTtcclxuICB9XHJcblxyXG4gIC8vIE9wdGlvbmFsXHJcbiAgQElucHV0KCkgc2V0IGRpc2FibGVkKHZhbDogYm9vbGVhbiB8ICcnKSB7XHJcbiAgICB2YWwgPSAodmFsID09PSAnJykgfHwgdmFsO1xyXG4gICAgaWYgKHZhbCkge1xyXG4gICAgICB0aGlzLmZvcm1Db250cm9sLmRpc2FibGUoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wuZW5hYmxlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBDb250ZW50Q2hpbGQoU2RTdWZmaXhEaXJlY3RpdmUpIHNkU3VmZml4OiBTZFN1ZmZpeERpcmVjdGl2ZTtcclxuICBASW5wdXQoKSB0b29sdGlwOiBzdHJpbmcgfCAoKGlucHV0VmFsdWU6IHN0cmluZykgPT4gc3RyaW5nKTtcclxuICBAT3V0cHV0KCkgc2RDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KCkgc2RGb2N1cyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBrZXl1cEVudGVyID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBAVmlld0NoaWxkKCdjb250cm9sJykgY29udHJvbDogRWxlbWVudFJlZjtcclxuICBmb3JtQ29udHJvbCA9IG5ldyBTZEZvcm1Db250cm9sKCk7XHJcbiAgI3N1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcclxuICBvcHRpb25zID0ge307XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWY6IENoYW5nZURldGVjdG9yUmVmKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuI3N1YnNjcmlwdGlvbi5hZGQodGhpcy5mb3JtQ29udHJvbC50b3VjaGVkQ2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB0aGlzLnJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgIH0pKTtcclxuICAgIHRoaXMuI2dlbmVyYXRlT3B0aW9uKCk7XHJcbiAgfVxyXG5cclxuICAjZ2VuZXJhdGVPcHRpb24gPSAoKSA9PiB7XHJcbiAgICB0aGlzLm9wdGlvbnMgPSB7XHJcbiAgICAgIGFsaWduOiB0aGlzLiNhbGlnbiB8fCAnJyxcclxuICAgICAgYWxsb3dOZWdhdGl2ZTogdGhpcy4jYWxsb3dOZWdhdGl2ZSxcclxuICAgICAgZGVjaW1hbDogdGhpcy4jZGVjaW1hbCxcclxuICAgICAgcHJlY2lzaW9uOiB0aGlzLiNwcmVjaXNpb24sXHJcbiAgICAgIHByZWZpeDogdGhpcy4jcHJlZml4IHx8ICcnLFxyXG4gICAgICBzdWZmaXg6IHRoaXMuI3N1ZmZpeCB8fCAnJyxcclxuICAgICAgdGhvdXNhbmRzOiB0aGlzLiN0aG91c2FuZHMsXHJcbiAgICAgIG51bGxhYmxlOiB0aGlzLiNudWxsYWJsZSxcclxuICAgICAgbWluOiB0aGlzLiNtaW4sXHJcbiAgICAgIG1heDogdGhpcy4jbWF4LFxyXG4gICAgICBpbnB1dE1vZGU6IEN1cnJlbmN5TWFza0lucHV0TW9kZS5OQVRVUkFMXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLiNzdWJzY3JpcHRpb24uYWRkKHRoaXMuZm9ybUNvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoZGVib3VuY2VUaW1lKDIwMCkpLnN1YnNjcmliZSh0aGlzLiNvbkNoYW5nZSkpO1xyXG4gICAgdGhpcy4jZm9ybT8uYWRkQ29udHJvbCh0aGlzLiNuYW1lLCB0aGlzLmZvcm1Db250cm9sKTtcclxuICAgIHRoaXMucmVmLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy4jZm9ybT8ucmVtb3ZlQ29udHJvbCh0aGlzLiNuYW1lKTtcclxuICAgIHRoaXMuI3N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgcmVWYWxpZGF0ZSA9ICgpID0+IHtcclxuICAgIHRoaXMuZm9ybUNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gIH1cclxuXHJcbiAgI3VwZGF0ZVZhbGlkYXRvciA9ICgpID0+IHtcclxuICAgIHRoaXMuZm9ybUNvbnRyb2wuY2xlYXJWYWxpZGF0b3JzKCk7XHJcbiAgICB0aGlzLmZvcm1Db250cm9sLmNsZWFyQXN5bmNWYWxpZGF0b3JzKCk7XHJcbiAgICBjb25zdCB2YWxpZGF0b3JzOiBWYWxpZGF0b3JGbltdID0gW107XHJcbiAgICBjb25zdCBhc3luY1ZhbGlkYXRvcnM6IEFzeW5jVmFsaWRhdG9yRm5bXSA9IFtdO1xyXG4gICAgaWYgKHRoaXMuaXNSZXF1aXJlZCkge1xyXG4gICAgICB2YWxpZGF0b3JzLnB1c2goVmFsaWRhdG9ycy5yZXF1aXJlZCk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy4jcGF0dGVybikge1xyXG4gICAgICB2YWxpZGF0b3JzLnB1c2goVmFsaWRhdG9ycy5wYXR0ZXJuKHRoaXMuI3BhdHRlcm4pKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLiN2YWxpZGF0b3IpIHtcclxuICAgICAgYXN5bmNWYWxpZGF0b3JzLnB1c2godGhpcy4jY3VzdG9tVmFsaWRhdG9yKHRoaXMuI3ZhbGlkYXRvcikpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWxpZGF0b3JzKHZhbGlkYXRvcnMpO1xyXG4gICAgdGhpcy5mb3JtQ29udHJvbC5zZXRBc3luY1ZhbGlkYXRvcnMoYXN5bmNWYWxpZGF0b3JzKTtcclxuICAgIHRoaXMuZm9ybUNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gIH1cclxuXHJcbiAgI29uQ2hhbmdlID0gYXN5bmMgKHZhbHVlOiBhbnkpID0+IHtcclxuICAgIHRoaXMubW9kZWxDaGFuZ2UuZW1pdCh2YWx1ZSk7XHJcbiAgICB0aGlzLnNkQ2hhbmdlLmVtaXQodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgb25LZXl1cEVudGVyID0gKCkgPT4ge1xyXG4gICAgdGhpcy5rZXl1cEVudGVyLmVtaXQodGhpcy5mb3JtQ29udHJvbC52YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBvbkZvY3VzID0gKCkgPT4ge1xyXG4gICAgdGhpcy5zZEZvY3VzLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIG9uQmx1ciA9ICgpID0+IHtcclxuICAgIGNvbnN0IHZhbDogc3RyaW5nID0gKHRoaXMuZm9ybUNvbnRyb2wudmFsdWUgPz8gJycpLnRvU3RyaW5nKCk7XHJcbiAgICBpZiAodmFsLmxlbmd0aCA+IHZhbC50cmltKCkubGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wuc2V0VmFsdWUodmFsLnRyaW0oKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjY3VzdG9tVmFsaWRhdG9yID0gKGZ1bmM6ICh2YWx1ZTogYW55KSA9PiBzdHJpbmcgfCBQcm9taXNlPHN0cmluZz4pOiBBc3luY1ZhbGlkYXRvckZuID0+IHtcclxuICAgIHJldHVybiBhc3luYyAoYzogQWJzdHJhY3RDb250cm9sKTogUHJvbWlzZTx7IFtrZXk6IHN0cmluZ106IGFueSB9IHwgbnVsbD4gPT4ge1xyXG4gICAgICBjb25zdCB2YWx1ZSA9IGMudmFsdWUgfHwgbnVsbDtcclxuICAgICAgaWYgKGZ1bmMgJiYgdHlwZW9mIChmdW5jKSA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGZ1bmModmFsdWUpO1xyXG4gICAgICAgIGlmIChyZXN1bHQgaW5zdGFuY2VvZiBQcm9taXNlKSB7XHJcbiAgICAgICAgICBjb25zdCBtZXNzYWdlID0gYXdhaXQgcmVzdWx0O1xyXG4gICAgICAgICAgaWYgKG1lc3NhZ2UpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICBjdXN0b21WYWxpZGF0b3I6IG1lc3NhZ2VcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBjdXN0b21WYWxpZGF0b3I6IHJlc3VsdFxyXG4gICAgICAgICAgfTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
264
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtY3VycmVuY3kuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNS9EZXNrdG9wL1dvcmtpbmcvMU1HL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvaW5wdXQtY3VycmVuY3kvIiwic291cmNlcyI6WyJzcmMvbGliL2lucHV0LWN1cnJlbmN5LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFNBQVMsRUFDVCxNQUFNLEVBQ04sWUFBWSxFQUNaLGlCQUFpQixFQUtqQixZQUFZLEVBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFnQyxNQUFNLEVBQWUsVUFBVSxFQUErQixNQUFNLGdCQUFnQixDQUFDO0FBQzVILE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxZQUFZLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFPNUQsTUFBTSxPQUFPLGVBQWU7SUFzSTFCLFlBQW9CLEdBQXNCO1FBQXRCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBckkxQyxnQkFBUSxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUM7UUFNbEIsd0JBQW1CLEdBQUcsS0FBSyxDQUFDO1FBTTVCLHdCQUFpQjtRQWFqQix5QkFBWTtRQVNGLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUUzQyxpQkFBMkIsTUFBTSxFQUFDO1FBTWxDLHlCQUFpQixJQUFJLEVBQUM7UUFNdEIsbUJBQXNCLEdBQUcsRUFBQztRQU0x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TixLQUFLOzRCQU1MLEtBQUs7c0JBTUwsS0FBSzt3QkFNTCxLQUFLO3FCQU1MLEtBQUs7cUJBTUwsS0FBSzt3QkFNTCxLQUFLO3VCQU1MLEtBQUs7a0JBTUwsS0FBSztrQkFNTCxLQUFLO3VCQU9MLEtBQUs7c0JBTUwsS0FBSzt3QkFLTCxLQUFLO3VCQU1MLEtBQUs7dUJBUUwsWUFBWSxTQUFDLGlCQUFpQjtzQkFDOUIsS0FBSzt1QkFDTCxNQUFNO3NCQUNOLE1BQU07eUJBQ04sTUFBTTtzQkFFTixTQUFTLFNBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIElucHV0LFxyXG4gIFZpZXdDaGlsZCxcclxuICBPdXRwdXQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIE9uRGVzdHJveSxcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgT25Jbml0LFxyXG4gIENvbnRlbnRDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1Db250cm9sLCBOZ0Zvcm0sIFZhbGlkYXRvckZuLCBWYWxpZGF0b3JzLCBBc3luY1ZhbGlkYXRvckZuLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCAqIGFzIHV1aWQgZnJvbSAndXVpZCc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgc3RhcnRXaXRoIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ3VycmVuY3lNYXNrSW5wdXRNb2RlIH0gZnJvbSAnbmd4LWN1cnJlbmN5JztcclxuaW1wb3J0IHsgU2RGb3JtQ29udHJvbCB9IGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvY29tbW9uJztcclxuaW1wb3J0IHsgU2RTdWZmaXhEaXJlY3RpdmUgfSBmcm9tICdAc2QtYW5ndWxhci9jb3JlL2NvbW1vbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NkLWlucHV0LWN1cnJlbmN5JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtY3VycmVuY3kuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2lucHV0LWN1cnJlbmN5LmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFNkSW5wdXRDdXJyZW5jeSBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuICAjbmFtZSA9IHV1aWQudjQoKTtcclxuICBASW5wdXQoKSBzZXQgbmFtZSh2YWw6IHN0cmluZykge1xyXG4gICAgaWYgKHZhbCkge1xyXG4gICAgICB0aGlzLiNuYW1lID0gdmFsO1xyXG4gICAgfVxyXG4gIH1cclxuICBkaXNhYmxlRXJyb3JNZXNzYWdlID0gZmFsc2U7XHJcbiAgQElucHV0KCdkaXNhYmxlRXJyb3JNZXNzYWdlJykgc2V0IF9kaXNhYmxlRXJyb3JNZXNzYWdlKHZhbDogYm9vbGVhbiB8ICcnKSB7XHJcbiAgICB0aGlzLmRpc2FibGVFcnJvck1lc3NhZ2UgPSAodmFsID09PSAnJykgfHwgdmFsO1xyXG4gICAgdmFsID0gKHZhbCA9PT0gJycpIHx8IHZhbDtcclxuICB9XHJcbiAgQElucHV0KCkgc2l6ZTogJ3NtJyB8ICdsZyc7XHJcbiAgI2Zvcm06IEZvcm1Hcm91cDtcclxuICBASW5wdXQoKSBzZXQgZm9ybSh2YWw6IE5nRm9ybSB8IEZvcm1Hcm91cCkge1xyXG4gICAgaWYgKHZhbCkge1xyXG4gICAgICBpZiAodmFsIGluc3RhbmNlb2YgTmdGb3JtKSB7XHJcbiAgICAgICAgdGhpcy4jZm9ybSA9IHZhbC5mb3JtO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuI2Zvcm0gPSB2YWw7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcclxuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nO1xyXG5cclxuICAjbW9kZWw6IGFueTtcclxuICBASW5wdXQoKSBzZXQgbW9kZWwodmFsdWU6IGFueSkge1xyXG4gICAgaWYgKHRoaXMuI21vZGVsICE9PSB2YWx1ZSkge1xyXG4gICAgICB0aGlzLiNtb2RlbCA9IHZhbHVlO1xyXG4gICAgICB0aGlzLmZvcm1Db250cm9sLnNldFZhbHVlKHZhbHVlKTtcclxuICAgICAgdGhpcy5yZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQE91dHB1dCgpIG1vZGVsQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAjYWxpZ246ICdsZWZ0JyB8ICdyaWdodCcgPSAnbGVmdCc7XHJcbiAgQElucHV0KCkgc2V0IGFsaWduKHZhbDogJ2xlZnQnIHwgJ3JpZ2h0JyB8ICcnKSB7XHJcbiAgICB0aGlzLiNhbGlnbiA9IHZhbCB8fCAnbGVmdCc7XHJcbiAgICB0aGlzLiNnZW5lcmF0ZU9wdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgI2FsbG93TmVnYXRpdmUgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNldCBhbGxvd05lZ2F0aXZlKHZhbDogYm9vbGVhbiB8ICcnKSB7XHJcbiAgICB0aGlzLiNhbGxvd05lZ2F0aXZlID0gKHZhbCA9PT0gJycpIHx8IHZhbDtcclxuICAgIHRoaXMuI2dlbmVyYXRlT3B0aW9uKCk7XHJcbiAgfVxyXG5cclxuICAjZGVjaW1hbDogJy4nIHwgJywnID0gJywnO1xyXG4gIEBJbnB1dCgpIHNldCBkZWNpbWFsKHZhbDogJy4nIHwgJywnIHwgJycpIHtcclxuICAgIHRoaXMuI2RlY2ltYWwgPSB2YWwgfHwgJywnO1xyXG4gICAgdGhpcy4jZ2VuZXJhdGVPcHRpb24oKTtcclxuICB9XHJcblxyXG4gICNwcmVjaXNpb246IG51bWJlciA9IDA7XHJcbiAgQElucHV0KCkgc2V0IHByZWNpc2lvbih2YWw6IG51bWJlcikge1xyXG4gICAgdGhpcy4jcHJlY2lzaW9uID0gdmFsIHx8IDA7XHJcbiAgICB0aGlzLiNnZW5lcmF0ZU9wdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgI3ByZWZpeDogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHNldCBwcmVmaXgodmFsOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuI3ByZWZpeCA9IHZhbDtcclxuICAgIHRoaXMuI2dlbmVyYXRlT3B0aW9uKCk7XHJcbiAgfVxyXG5cclxuICAjc3VmZml4OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgc2V0IHN1ZmZpeCh2YWw6IHN0cmluZykge1xyXG4gICAgdGhpcy4jc3VmZml4ID0gdmFsO1xyXG4gICAgdGhpcy4jZ2VuZXJhdGVPcHRpb24oKTtcclxuICB9XHJcblxyXG4gICN0aG91c2FuZHM6ICcuJyB8ICcsJyA9ICcuJztcclxuICBASW5wdXQoKSBzZXQgdGhvdXNhbmRzKHZhbDogJy4nIHwgJywnIHwgJycpIHtcclxuICAgIHRoaXMuI3Rob3VzYW5kcyA9IHZhbCB8fCAnLic7XHJcbiAgICB0aGlzLiNnZW5lcmF0ZU9wdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgI251bGxhYmxlOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHNldCBudWxsYWJsZSh2YWw6IGJvb2xlYW4gfCBmYWxzZSkge1xyXG4gICAgdGhpcy4jbnVsbGFibGUgPSB2YWw7XHJcbiAgICB0aGlzLiNnZW5lcmF0ZU9wdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgI21pbjogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIHNldCBtaW4odmFsOiBudW1iZXIpIHtcclxuICAgIHRoaXMuI21pbiA9IHZhbDtcclxuICAgIHRoaXMuI2dlbmVyYXRlT3B0aW9uKCk7XHJcbiAgfVxyXG5cclxuICAjbWF4OiBudW1iZXI7XHJcbiAgQElucHV0KCkgc2V0IG1heCh2YWw6IG51bWJlcikge1xyXG4gICAgdGhpcy4jbWF4ID0gdmFsO1xyXG4gICAgdGhpcy4jZ2VuZXJhdGVPcHRpb24oKTtcclxuICB9XHJcblxyXG4gIC8vIFZhbGlkYXRvclxyXG4gIGlzUmVxdWlyZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzZXQgcmVxdWlyZWQodmFsOiBib29sZWFuIHwgJycpIHtcclxuICAgIHRoaXMuaXNSZXF1aXJlZCA9ICh2YWwgPT09ICcnKSB8fCB2YWw7XHJcbiAgICB0aGlzLiN1cGRhdGVWYWxpZGF0b3IoKTtcclxuICB9XHJcblxyXG4gICNwYXR0ZXJuOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgc2V0IHBhdHRlcm4odmFsOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuI3BhdHRlcm4gPSB2YWw7XHJcbiAgICB0aGlzLiN1cGRhdGVWYWxpZGF0b3IoKTtcclxuICB9XHJcbiAgI3ZhbGlkYXRvcjogKHZhbHVlOiBhbnkpID0+IHN0cmluZyB8IFByb21pc2U8c3RyaW5nPjtcclxuICBASW5wdXQoKSBzZXQgdmFsaWRhdG9yKHZhbGlkYXRvcjogKHZhbHVlOiBhbnkpID0+IHN0cmluZyB8IFByb21pc2U8c3RyaW5nPikge1xyXG4gICAgdGhpcy4jdmFsaWRhdG9yID0gdmFsaWRhdG9yO1xyXG4gICAgdGhpcy4jdXBkYXRlVmFsaWRhdG9yKCk7XHJcbiAgfVxyXG5cclxuICAvLyBPcHRpb25hbFxyXG4gIEBJbnB1dCgpIHNldCBkaXNhYmxlZCh2YWw6IGJvb2xlYW4gfCAnJykge1xyXG4gICAgdmFsID0gKHZhbCA9PT0gJycpIHx8IHZhbDtcclxuICAgIGlmICh2YWwpIHtcclxuICAgICAgdGhpcy5mb3JtQ29udHJvbC5kaXNhYmxlKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmZvcm1Db250cm9sLmVuYWJsZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuICBAQ29udGVudENoaWxkKFNkU3VmZml4RGlyZWN0aXZlKSBzZFN1ZmZpeDogU2RTdWZmaXhEaXJlY3RpdmU7XHJcbiAgQElucHV0KCkgdG9vbHRpcDogc3RyaW5nIHwgKChpbnB1dFZhbHVlOiBzdHJpbmcpID0+IHN0cmluZyk7XHJcbiAgQE91dHB1dCgpIHNkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpIHNkRm9jdXMgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KCkga2V5dXBFbnRlciA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnY29udHJvbCcpIGNvbnRyb2w6IEVsZW1lbnRSZWY7XHJcbiAgZm9ybUNvbnRyb2wgPSBuZXcgU2RGb3JtQ29udHJvbCgpO1xyXG4gICNzdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XHJcbiAgb3B0aW9ucyA9IHt9O1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLiNzdWJzY3JpcHRpb24uYWRkKHRoaXMuZm9ybUNvbnRyb2wudG91Y2hlZENoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICB9KSk7XHJcbiAgICB0aGlzLiNnZW5lcmF0ZU9wdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgI2dlbmVyYXRlT3B0aW9uID0gKCkgPT4ge1xyXG4gICAgdGhpcy5vcHRpb25zID0ge1xyXG4gICAgICBhbGlnbjogdGhpcy4jYWxpZ24gfHwgJycsXHJcbiAgICAgIGFsbG93TmVnYXRpdmU6IHRoaXMuI2FsbG93TmVnYXRpdmUsXHJcbiAgICAgIGRlY2ltYWw6IHRoaXMuI2RlY2ltYWwsXHJcbiAgICAgIHByZWNpc2lvbjogdGhpcy4jcHJlY2lzaW9uLFxyXG4gICAgICBwcmVmaXg6IHRoaXMuI3ByZWZpeCB8fCAnJyxcclxuICAgICAgc3VmZml4OiB0aGlzLiNzdWZmaXggfHwgJycsXHJcbiAgICAgIHRob3VzYW5kczogdGhpcy4jdGhvdXNhbmRzLFxyXG4gICAgICBudWxsYWJsZTogdGhpcy4jbnVsbGFibGUsXHJcbiAgICAgIG1pbjogdGhpcy4jbWluLFxyXG4gICAgICBtYXg6IHRoaXMuI21heCxcclxuICAgICAgaW5wdXRNb2RlOiBDdXJyZW5jeU1hc2tJbnB1dE1vZGUuTkFUVVJBTFxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy4jc3Vic2NyaXB0aW9uLmFkZCh0aGlzLmZvcm1Db250cm9sLnZhbHVlQ2hhbmdlcy5waXBlKGRlYm91bmNlVGltZSgyMDApKS5zdWJzY3JpYmUodGhpcy4jb25DaGFuZ2UpKTtcclxuICAgIHRoaXMuI2Zvcm0/LmFkZENvbnRyb2wodGhpcy4jbmFtZSwgdGhpcy5mb3JtQ29udHJvbCk7XHJcbiAgICB0aGlzLnJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuI2Zvcm0/LnJlbW92ZUNvbnRyb2wodGhpcy4jbmFtZSk7XHJcbiAgICB0aGlzLiNzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIHJlVmFsaWRhdGUgPSAoKSA9PiB7XHJcbiAgICB0aGlzLmZvcm1Db250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICB9XHJcblxyXG4gICN1cGRhdGVWYWxpZGF0b3IgPSAoKSA9PiB7XHJcbiAgICB0aGlzLmZvcm1Db250cm9sLmNsZWFyVmFsaWRhdG9ycygpO1xyXG4gICAgdGhpcy5mb3JtQ29udHJvbC5jbGVhckFzeW5jVmFsaWRhdG9ycygpO1xyXG4gICAgY29uc3QgdmFsaWRhdG9yczogVmFsaWRhdG9yRm5bXSA9IFtdO1xyXG4gICAgY29uc3QgYXN5bmNWYWxpZGF0b3JzOiBBc3luY1ZhbGlkYXRvckZuW10gPSBbXTtcclxuICAgIGlmICh0aGlzLmlzUmVxdWlyZWQpIHtcclxuICAgICAgdmFsaWRhdG9ycy5wdXNoKFZhbGlkYXRvcnMucmVxdWlyZWQpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuI3BhdHRlcm4pIHtcclxuICAgICAgdmFsaWRhdG9ycy5wdXNoKFZhbGlkYXRvcnMucGF0dGVybih0aGlzLiNwYXR0ZXJuKSk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy4jdmFsaWRhdG9yKSB7XHJcbiAgICAgIGFzeW5jVmFsaWRhdG9ycy5wdXNoKHRoaXMuI2N1c3RvbVZhbGlkYXRvcih0aGlzLiN2YWxpZGF0b3IpKTtcclxuICAgIH1cclxuICAgIHRoaXMuZm9ybUNvbnRyb2wuc2V0VmFsaWRhdG9ycyh2YWxpZGF0b3JzKTtcclxuICAgIHRoaXMuZm9ybUNvbnRyb2wuc2V0QXN5bmNWYWxpZGF0b3JzKGFzeW5jVmFsaWRhdG9ycyk7XHJcbiAgICB0aGlzLmZvcm1Db250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICB9XHJcblxyXG4gICNvbkNoYW5nZSA9IGFzeW5jICh2YWx1ZTogYW55KSA9PiB7XHJcbiAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQodmFsdWUpO1xyXG4gICAgdGhpcy5zZENoYW5nZS5lbWl0KHZhbHVlKTtcclxuICB9XHJcblxyXG4gIG9uS2V5dXBFbnRlciA9ICgpID0+IHtcclxuICAgIHRoaXMua2V5dXBFbnRlci5lbWl0KHRoaXMuZm9ybUNvbnRyb2wudmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgb25Gb2N1cyA9ICgpID0+IHtcclxuICAgIHRoaXMuc2RGb2N1cy5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBvbkJsdXIgPSAoKSA9PiB7XHJcbiAgICBjb25zdCB2YWw6IHN0cmluZyA9ICh0aGlzLmZvcm1Db250cm9sLnZhbHVlID8/ICcnKS50b1N0cmluZygpO1xyXG4gICAgaWYgKHZhbC5sZW5ndGggPiB2YWwudHJpbSgpLmxlbmd0aCkge1xyXG4gICAgICB0aGlzLmZvcm1Db250cm9sLnNldFZhbHVlKHZhbC50cmltKCkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI2N1c3RvbVZhbGlkYXRvciA9IChmdW5jOiAodmFsdWU6IGFueSkgPT4gc3RyaW5nIHwgUHJvbWlzZTxzdHJpbmc+KTogQXN5bmNWYWxpZGF0b3JGbiA9PiB7XHJcbiAgICByZXR1cm4gYXN5bmMgKGM6IEFic3RyYWN0Q29udHJvbCk6IFByb21pc2U8eyBba2V5OiBzdHJpbmddOiBhbnkgfSB8IG51bGw+ID0+IHtcclxuICAgICAgY29uc3QgdmFsdWUgPSBjLnZhbHVlIHx8IG51bGw7XHJcbiAgICAgIGlmIChmdW5jICYmIHR5cGVvZiAoZnVuYykgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgICBjb25zdCByZXN1bHQgPSBmdW5jKHZhbHVlKTtcclxuICAgICAgICBpZiAocmVzdWx0IGluc3RhbmNlb2YgUHJvbWlzZSkge1xyXG4gICAgICAgICAgY29uc3QgbWVzc2FnZSA9IGF3YWl0IHJlc3VsdDtcclxuICAgICAgICAgIGlmIChtZXNzYWdlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgY3VzdG9tVmFsaWRhdG9yOiBtZXNzYWdlXHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHJlc3VsdCkge1xyXG4gICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgY3VzdG9tVmFsaWRhdG9yOiByZXN1bHRcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var _delayDuration, _cache, _buildToastMultiMesssage;
|
|
1
|
+
var _delayDuration, _warningKey, _errorKey, _cache, _notifyWarning, _notifyError, _buildToastMultiMesssage;
|
|
2
2
|
import { __classPrivateFieldGet } from "tslib";
|
|
3
3
|
import "@sd-angular/core/common";
|
|
4
4
|
import { Injectable } from "@angular/core";
|
|
@@ -6,15 +6,17 @@ import { MatDialog } from "@angular/material/dialog";
|
|
|
6
6
|
import { DialogConfirmComponent } from "./components/dialog-confirm/dialog-confirm.component";
|
|
7
7
|
import { ToastrService } from "ngx-toastr";
|
|
8
8
|
import { SdTranslateService } from "@sd-angular/core/translate";
|
|
9
|
-
import { takeUntil } from "rxjs/operators";
|
|
9
|
+
import { take, takeUntil } from "rxjs/operators";
|
|
10
|
+
import { timer } from "rxjs";
|
|
10
11
|
import * as uuid from 'uuid';
|
|
11
|
-
let notifyId = 0;
|
|
12
12
|
export class SdNotifyService {
|
|
13
13
|
constructor(dialog, toastr, translateService) {
|
|
14
14
|
this.dialog = dialog;
|
|
15
15
|
this.toastr = toastr;
|
|
16
16
|
this.translateService = translateService;
|
|
17
17
|
_delayDuration.set(this, 500); // Các error/warning message sẽ tự động gộp sau khoảng thời gian trên
|
|
18
|
+
_warningKey.set(this, uuid.v4());
|
|
19
|
+
_errorKey.set(this, uuid.v4());
|
|
18
20
|
_cache.set(this, {});
|
|
19
21
|
this.alert = {
|
|
20
22
|
info: (message, title, yesTitle, icon) => {
|
|
@@ -77,42 +79,82 @@ export class SdNotifyService {
|
|
|
77
79
|
});
|
|
78
80
|
},
|
|
79
81
|
warning: (message, delay, title) => {
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
82
|
+
if (!__classPrivateFieldGet(this, _cache)[__classPrivateFieldGet(this, _warningKey)] || Date.addMiliseconds(__classPrivateFieldGet(this, _cache)[__classPrivateFieldGet(this, _warningKey)].createdDate, __classPrivateFieldGet(this, _delayDuration)) < new Date()) {
|
|
83
|
+
__classPrivateFieldGet(this, _cache)[__classPrivateFieldGet(this, _warningKey)] = {
|
|
84
|
+
createdDate: new Date(),
|
|
85
|
+
data: {
|
|
86
|
+
title: title,
|
|
87
|
+
messages: [],
|
|
88
|
+
}
|
|
89
|
+
};
|
|
90
|
+
timer(__classPrivateFieldGet(this, _delayDuration)).pipe(take(1)).subscribe(() => {
|
|
91
|
+
__classPrivateFieldGet(this, _notifyWarning).call(this, {
|
|
92
|
+
title: __classPrivateFieldGet(this, _cache)[__classPrivateFieldGet(this, _warningKey)].data.title,
|
|
93
|
+
message: __classPrivateFieldGet(this, _cache)[__classPrivateFieldGet(this, _warningKey)].data.messages,
|
|
94
|
+
delay: delay
|
|
95
|
+
});
|
|
96
|
+
});
|
|
97
|
+
}
|
|
85
98
|
if (Array.isArray(message)) {
|
|
86
|
-
__classPrivateFieldGet(this,
|
|
99
|
+
__classPrivateFieldGet(this, _cache)[__classPrivateFieldGet(this, _warningKey)].data.messages = [...__classPrivateFieldGet(this, _cache)[__classPrivateFieldGet(this, _warningKey)].data.messages, ...message];
|
|
87
100
|
}
|
|
88
101
|
else {
|
|
89
|
-
|
|
90
|
-
this.toastr.warning(content, title, {
|
|
91
|
-
enableHtml: true,
|
|
92
|
-
timeOut: delay || 3000,
|
|
93
|
-
closeButton: true,
|
|
94
|
-
});
|
|
102
|
+
__classPrivateFieldGet(this, _cache)[__classPrivateFieldGet(this, _warningKey)].data.messages.push(message);
|
|
95
103
|
}
|
|
96
104
|
},
|
|
97
105
|
error: (message, delay, title) => {
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
106
|
+
if (!__classPrivateFieldGet(this, _cache)[__classPrivateFieldGet(this, _errorKey)] || Date.addMiliseconds(__classPrivateFieldGet(this, _cache)[__classPrivateFieldGet(this, _errorKey)].createdDate, __classPrivateFieldGet(this, _delayDuration)) < new Date()) {
|
|
107
|
+
__classPrivateFieldGet(this, _cache)[__classPrivateFieldGet(this, _errorKey)] = {
|
|
108
|
+
createdDate: new Date(),
|
|
109
|
+
data: {
|
|
110
|
+
title: title,
|
|
111
|
+
messages: [],
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
|
+
timer(__classPrivateFieldGet(this, _delayDuration)).pipe(take(1)).subscribe(() => {
|
|
115
|
+
__classPrivateFieldGet(this, _notifyError).call(this, {
|
|
116
|
+
title: __classPrivateFieldGet(this, _cache)[__classPrivateFieldGet(this, _errorKey)].data.title,
|
|
117
|
+
message: __classPrivateFieldGet(this, _cache)[__classPrivateFieldGet(this, _errorKey)].data.messages,
|
|
118
|
+
delay: delay
|
|
119
|
+
});
|
|
120
|
+
});
|
|
121
|
+
}
|
|
103
122
|
if (Array.isArray(message)) {
|
|
104
|
-
__classPrivateFieldGet(this,
|
|
123
|
+
__classPrivateFieldGet(this, _cache)[__classPrivateFieldGet(this, _errorKey)].data.messages = [...__classPrivateFieldGet(this, _cache)[__classPrivateFieldGet(this, _errorKey)].data.messages, ...message];
|
|
105
124
|
}
|
|
106
125
|
else {
|
|
107
|
-
|
|
108
|
-
this.toastr.error(content, title, {
|
|
109
|
-
enableHtml: true,
|
|
110
|
-
timeOut: delay || 3000,
|
|
111
|
-
closeButton: true,
|
|
112
|
-
});
|
|
126
|
+
__classPrivateFieldGet(this, _cache)[__classPrivateFieldGet(this, _errorKey)].data.messages.push(message);
|
|
113
127
|
}
|
|
114
128
|
},
|
|
115
129
|
};
|
|
130
|
+
_notifyWarning.set(this, (args) => {
|
|
131
|
+
const { message, delay, title } = args;
|
|
132
|
+
if (Array.isArray(message)) {
|
|
133
|
+
__classPrivateFieldGet(this, _buildToastMultiMesssage).call(this, 'warning', message, delay, title);
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
const content = message || this.translate('Warning');
|
|
137
|
+
this.toastr.warning(content, title, {
|
|
138
|
+
enableHtml: true,
|
|
139
|
+
timeOut: delay || 3000,
|
|
140
|
+
closeButton: true,
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
});
|
|
144
|
+
_notifyError.set(this, (args) => {
|
|
145
|
+
const { message, delay, title } = args;
|
|
146
|
+
if (Array.isArray(message)) {
|
|
147
|
+
__classPrivateFieldGet(this, _buildToastMultiMesssage).call(this, 'error', message, delay, title);
|
|
148
|
+
}
|
|
149
|
+
else {
|
|
150
|
+
const content = message || this.translate('Error');
|
|
151
|
+
this.toastr.error(content, title, {
|
|
152
|
+
enableHtml: true,
|
|
153
|
+
timeOut: delay || 3000,
|
|
154
|
+
closeButton: true,
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
});
|
|
116
158
|
_buildToastMultiMesssage.set(this, (type, messages, delay, title) => {
|
|
117
159
|
/** số lượng item hiển thị mặc định */
|
|
118
160
|
const showNum = 2;
|
|
@@ -254,7 +296,7 @@ export class SdNotifyService {
|
|
|
254
296
|
};
|
|
255
297
|
}
|
|
256
298
|
}
|
|
257
|
-
_delayDuration = new WeakMap(), _cache = new WeakMap(), _buildToastMultiMesssage = new WeakMap();
|
|
299
|
+
_delayDuration = new WeakMap(), _warningKey = new WeakMap(), _errorKey = new WeakMap(), _cache = new WeakMap(), _notifyWarning = new WeakMap(), _notifyError = new WeakMap(), _buildToastMultiMesssage = new WeakMap();
|
|
258
300
|
SdNotifyService.decorators = [
|
|
259
301
|
{ type: Injectable }
|
|
260
302
|
];
|
|
@@ -263,4 +305,4 @@ SdNotifyService.ctorParameters = () => [
|
|
|
263
305
|
{ type: ToastrService },
|
|
264
306
|
{ type: SdTranslateService }
|
|
265
307
|
];
|
|
266
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZ5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1L0Rlc2t0b3AvV29ya2luZy8xTUcvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS9ub3RpZnkvIiwic291cmNlcyI6WyJzcmMvbGliL25vdGlmeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUM5RixPQUFPLEVBQWUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3hELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEtBQUssSUFBSSxNQUFNLE1BQU0sQ0FBQztBQUU3QixJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUM7QUFHakIsTUFBTSxPQUFPLGVBQWU7SUFZMUIsWUFDVSxNQUFpQixFQUNqQixNQUFxQixFQUNyQixnQkFBb0M7UUFGcEMsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNqQixXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQ3JCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBb0I7UUFkOUMseUJBQWlCLEdBQUcsRUFBQyxDQUFDLHFFQUFxRTtRQUMzRixpQkFTSSxFQUFFLEVBQUM7UUFPUCxVQUFLLEdBQUc7WUFDTixJQUFJLEVBQUUsQ0FDSixPQUFnQixFQUNoQixLQUFjLEVBQ2QsUUFBaUIsRUFDakIsSUFBYSxFQUNiLEVBQUU7Z0JBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEVBQUU7b0JBQ3ZDLEtBQUssRUFBRSxPQUFP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UUFBUSxFQUFFLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxRQUFRO3dCQUMxQixZQUFZLEVBQUUsQ0FBQSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsWUFBWSxLQUFJLEVBQUU7cUJBQ3pDO2lCQUNGO2FBQ0YsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtnQkFDckMsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO29CQUMzQyxJQUFJLE1BQU0sRUFBRTt3QkFDVixJQUFJLE1BQU0sS0FBSyxRQUFRLEVBQUU7NEJBQ3ZCLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQzt5QkFDakI7NkJBQU0sSUFBSSxNQUFNLEtBQUssUUFBUSxFQUFFOzRCQUM5QixNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7eUJBQ2hCOzZCQUFNOzRCQUNMLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQzt5QkFDakI7cUJBQ0Y7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQztRQUVNLGNBQVMsR0FBRyxDQUFDLEtBQWEsRUFBVSxFQUFFO1lBQzVDLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoRCxDQUFDLENBQUM7SUFsU0MsQ0FBQzs7OztZQWpCTCxVQUFVOzs7WUFWRixTQUFTO1lBRUksYUFBYTtZQUMxQixrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXCJAc2QtYW5ndWxhci9jb3JlL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2RpYWxvZ1wiO1xyXG5pbXBvcnQgeyBEaWFsb2dDb25maXJtQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9kaWFsb2ctY29uZmlybS9kaWFsb2ctY29uZmlybS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQWN0aXZlVG9hc3QsIFRvYXN0clNlcnZpY2UgfSBmcm9tIFwibmd4LXRvYXN0clwiO1xyXG5pbXBvcnQgeyBTZFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tIFwiQHNkLWFuZ3VsYXIvY29yZS90cmFuc2xhdGVcIjtcclxuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgKiBhcyB1dWlkIGZyb20gJ3V1aWQnO1xyXG5cclxubGV0IG5vdGlmeUlkID0gMDtcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFNkTm90aWZ5U2VydmljZSB7XHJcbiAgI2RlbGF5RHVyYXRpb24gPSA1MDA7IC8vIEPDoWMgZXJyb3Ivd2FybmluZyBtZXNzYWdlIHPhur0gdOG7sSDEkeG7mW5nIGfhu5lwIHNhdSBraG/huqNuZyB0aOG7nWkgZ2lhbiB0csOqblxyXG4gICNjYWNoZToge1xyXG4gICAgW2tleTogc3RyaW5nXToge1xyXG4gICAgICBjcmVhdGVkRGF0ZTogRGF0ZTtcclxuICAgICAgc3ViamVjdDogU3ViamVjdDxhbnk+O1xyXG4gICAgICByZXNwb25zZT86IHtcclxuICAgICAgICBzdGF0dXM/OiAnc3VjY2VzcycgfCAnZXJyb3InO1xyXG4gICAgICAgIHJlc3VsdDogYW55LFxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfSA9IHt9O1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZyxcclxuICAgIHByaXZhdGUgdG9hc3RyOiBUb2FzdHJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBTZFRyYW5zbGF0ZVNlcnZpY2VcclxuICApIHt9XHJcblxyXG4gIGFsZXJ0ID0ge1xyXG4gICAgaW5mbzogKFxyXG4gICAgICBtZXNzYWdlPzogc3RyaW5nLFxyXG4gICAgICB0aXRsZT86IHN0cmluZyxcclxuICAgICAgeWVzVGl0bGU/OiBzdHJpbmcsXHJcbiAgICAgIGljb24/OiBzdHJpbmdcclxuICAgICkgPT4ge1xyXG4gICAgICB0aGlzLmRpYWxvZy5vcGVuKERpYWxvZ0NvbmZpcm1Db21wb25lbnQsIHtcclxuICAgICAgICB3aWR0aDogXCI0MDBweFwiLFxyXG4gICAgICAgIGRhdGE6IHtcclxuICAgICAgICAgIGljb246IGljb24gfHwgXCJpbmZvXCIsXHJcbiAgICAgICAgICB0aXRsZTogdGl0bGUgfHwgdGhpcy50cmFuc2xhdGUoXCJOb3RpY2VcIiksXHJcbiAgICAgICAgICBtZXNzYWdlOiBtZXNzYWdlIHx8IFwiRG9uZSFcIixcclxuICAgICAgICAgIHllc1RpdGxlOiB5ZXNUaXRsZSB8fCB0aGlzLnRyYW5zbGF0ZShcIk9rXCIpLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH0pO1xyXG4gICAgfSxcclxuICAgIHN1Y2Nlc3M6IChcclxuICAgICAgbWVzc2FnZT86IHN0cmluZyxcclxuICAgICAgdGl0bGU/OiBzdHJpbmcsXHJcbiAgICAgIHllc1RpdGxlPzogc3RyaW5nLFxyXG4gICAgICBpY29uPzogc3RyaW5nXHJcbiAgICApID0+IHtcclxuICAgICAgdGhpcy5kaWFsb2cub3BlbihEaWFsb2dDb25maXJtQ29tcG9uZW50LCB7XHJcbiAgICAgICAgd2lkdGg6IFwiNDAwcHhcIixcclxuICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICBpY29uOiBpY29uIHx8IFwiZG9uZVwiLFxyXG4gICAgICAgICAgdGl0bGU6IHRpdGxlIHx8IHRoaXMudHJhbnNsYXRlKFwiU3VjY2Vzc1wiKSxcclxuICAgICAgICAgIG1lc3NhZ2U6IG1lc3NhZ2UgfHwgXCJEb25lIVwiLFxyXG4gICAgICAgICAgeWVzVGl0bGU6IHllc1RpdGxlIHx8IHRoaXMudHJhbnNsYXRlKFwiT2tcIiksXHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgICB9LFxyXG4gICAgd2FybmluZzogKFxyXG4gICAgICBtZXNzYWdlPzogc3RyaW5nLFxyXG4gICAgICB0aXRsZT86IHN0cmluZyxcclxuICAgICAgeWVzVGl0bGU/OiBzdHJpbmcsXHJcbiAgICAgIGljb24/OiBzdHJpbmdcclxuICAgICkgPT4ge1xyXG4gICAgICB0aGlzLmRpYWxvZy5vcGVuKERpYWxvZ0NvbmZpcm1Db21wb25lbnQsIHtcclxuICAgICAgICB3aWR0aDogXCI0MDBweFwiLFxyXG4gICAgICAgIGRhdGE6IHtcclxuICAgICAgICAgIGljb246IGljb24gfHwgXCJ3YXJuaW5nXCIsXHJcbiAgICAgICAgICB0aXRsZTogdGl0bGUgfHwgdGhpcy50cmFuc2xhdGUoXCJXYXJuaW5nXCIpLFxyXG4gICAgICAgICAgbWVzc2FnZTogbWVzc2FnZSB8fCBcIlNvbWV0aGluZyB3ZW50IHdyb25nIVwiLFxyXG4gICAgICAgICAgeWVzVGl0bGU6IHllc1RpdGxlIHx8IHRoaXMudHJhbnNsYXRlKFwiT2tcIiksXHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgICB9LFxyXG4gICAgZXJyb3I6IChcclxuICAgICAgbWVzc2FnZT86IHN0cmluZyxcclxuICAgICAgdGl0bGU/OiBzdHJpbmcsXHJcbiAgICAgIHllc1RpdGxlPzogc3RyaW5nLFxyXG4gICAgICBpY29uPzogc3RyaW5nXHJcbiAgICApID0+IHtcclxuICAgICAgdGhpcy5kaWFsb2cub3BlbihEaWFsb2dDb25maXJtQ29tcG9uZW50LCB7XHJcbiAgICAgICAgd2lkdGg6IFwiNDAwcHhcIixcclxuICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICBpY29uOiBpY29uIHx8IFwiZXJyb3JcIixcclxuICAgICAgICAgIHRpdGxlOiB0aXRsZSB8fCB0aGlzLnRyYW5zbGF0ZShcIkVycm9yXCIpLFxyXG4gICAgICAgICAgbWVzc2FnZTogbWVzc2FnZSB8fCBcIlNvbWV0aGluZyB3ZW50IHdyb25nIVwiLFxyXG4gICAgICAgICAgeWVzVGl0bGU6IHllc1RpdGxlIHx8IHRoaXMudHJhbnNsYXRlKFwiT2tcIiksXHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgICB9LFxyXG4gIH07XHJcblxyXG4gIG5vdGlmeSA9IHtcclxuICAgIHN1Y2Nlc3M6IChtZXNzYWdlPzogc3RyaW5nLCBkZWxheT86IG51bWJlciwgdGl0bGU/OiBzdHJpbmcpID0+IHtcclxuICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBtYXgtbGluZS1sZW5ndGhcclxuICAgICAgLy8gY29uc3Qgc3R5bGUgPSBgYm9yZGVyLXJhZGl1czogNXB4OyBtYXJnaW46IDA7IHBhZGRpbmc6IDEycHg7IHotaW5kZXg6IDk5OTk5OyB0b3A6IDVweDsgcmlnaHQ6IDVweDsgZGlzcGxheTogbm9uZTsgcG9zaXRpb246IGZpeGVkO2NvbG9yOiAjNEY4QTEwOyBiYWNrZ3JvdW5kLWNvbG9yOiAjREZGMkJGYDtcclxuICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBtYXgtbGluZS1sZW5ndGhcclxuICAgICAgLy8gY29uc3QgaHRtbCA9IGA8ZGl2IGlkPVwiJHt0aGlzLm5vdGlmeUlkfVwiIHN0eWxlPVwiJHtzdHlsZX1cIj48aSBjbGFzcz1cImZhIGZhLWNoZWNrXCI+PC9pPiAke21lc3NhZ2UgfHwgdGhpcy50cmFuc2xhdGUoJ1N1Y2Nlc3MnKX08L2Rpdj5gO1xyXG4gICAgICAvLyB0aGlzLnNob3dOb3RpZnkoaHRtbCwgZGVsYXkpO1xyXG4gICAgICBjb25zdCBjb250ZW50ID0gbWVzc2FnZSB8fCB0aGlzLnRyYW5zbGF0ZShcIlN1Y2Nlc3NcIik7XHJcbiAgICAgIHRoaXMudG9hc3RyLnN1Y2Nlc3MoY29udGVudCwgdGl0bGUsIHtcclxuICAgICAgICBlbmFibGVIdG1sOiB0cnVlLFxyXG4gICAgICAgIHRpbWVPdXQ6IGRlbGF5IHx8IDMwMDAsXHJcbiAgICAgICAgY2xvc2VCdXR0b246IHRydWUsXHJcbiAgICAgIH0pO1xyXG4gICAgfSxcclxuICAgIHdhcm5pbmc6IChtZXNzYWdlPzogc3RyaW5nIHwgc3RyaW5nW10sIGRlbGF5PzogbnVtYmVyLCB0aXRsZT86IHN0cmluZykgPT4ge1xyXG4gICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG1heC1saW5lLWxlbmd0aFxyXG4gICAgICAvLyBjb25zdCBzdHlsZSA9IGBib3JkZXItcmFkaXVzOiA1cHg7IG1hcmdpbjogMDsgcGFkZGluZzogMTJweDsgei1pbmRleDogOTk5OTk7IHRvcDogNXB4OyByaWdodDogNXB4OyBkaXNwbGF5OiBub25lOyBwb3NpdGlvbjogZml4ZWQ7Y29sb3I6ICM5RjYwMDA7IGJhY2tncm91bmQtY29sb3I6ICNGRUVGQjNgO1xyXG4gICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG1heC1saW5lLWxlbmd0aFxyXG4gICAgICAvLyBjb25zdCBodG1sID0gYDxkaXYgaWQ9XCIke3RoaXMubm90aWZ5SWR9XCIgc3R5bGU9XCIke3N0eWxlfVwiPjxpIGNsYXNzPVwiZmEgZmEtZXhjbGFtYXRpb24tdHJpYW5nbGVcIj48L2k+ICR7bWVzc2FnZSB8fCB0aGlzLnRyYW5zbGF0ZSgnV2FybmluZycpfTwvZGl2PmA7XHJcbiAgICAgIC8vIHRoaXMuc2hvd05vdGlmeShodG1sLCBkZWxheSk7XHJcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KG1lc3NhZ2UpKXtcclxuICAgICAgICB0aGlzLiNidWlsZFRvYXN0TXVsdGlNZXNzc2FnZSgnd2FybmluZycsIG1lc3NhZ2UsIGRlbGF5LCB0aXRsZSk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgY29uc3QgY29udGVudCA9IG1lc3NhZ2UgfHwgdGhpcy50cmFuc2xhdGUoXCJXYXJuaW5nXCIpO1xyXG4gICAgICAgIHRoaXMudG9hc3RyLndhcm5pbmcoY29udGVudCwgdGl0bGUsIHtcclxuICAgICAgICAgIGVuYWJsZUh0bWw6IHRydWUsXHJcbiAgICAgICAgICB0aW1lT3V0OiBkZWxheSB8fCAzMDAwLFxyXG4gICAgICAgICAgY2xvc2VCdXR0b246IHRydWUsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0sXHJcbiAgICBlcnJvcjogKG1lc3NhZ2U/OiBzdHJpbmcgfCBzdHJpbmdbXSwgZGVsYXk/OiBudW1iZXIsIHRpdGxlPzogc3RyaW5nKSA9PiB7XHJcbiAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbWF4LWxpbmUtbGVuZ3RoXHJcbiAgICAgIC8vIGNvbnN0IHN0eWxlID0gYGJvcmRlci1yYWRpdXM6IDVweDsgbWFyZ2luOiAwOyBwYWRkaW5nOiAxMnB4OyB6LWluZGV4OiA5OTk5OTsgdG9wOiA1cHg7IHJpZ2h0OiA1cHg7IGRpc3BsYXk6IG5vbmU7IHBvc2l0aW9uOiBmaXhlZDtjb2xvcjogI0Q4MDAwQzsgYmFja2dyb3VuZC1jb2xvcjogI0ZGRDJEMmA7XHJcbiAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbWF4LWxpbmUtbGVuZ3RoXHJcbiAgICAgIC8vIGNvbnN0IGh0bWwgPSBgPGRpdiBpZD1cIiR7dGhpcy5ub3RpZnlJZH1cIiBzdHlsZT1cIiR7c3R5bGV9XCI+PGkgY2xhc3M9XCJmYSBmYS10aW1lc1wiPjwvaT4gJHttZXNzYWdlIHx8IHRoaXMudHJhbnNsYXRlKCdFcnJvcicpfTwvZGl2PmA7XHJcbiAgICAgIC8vIHRoaXMuc2hvd05vdGlmeShodG1sLCBkZWxheSk7XHJcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KG1lc3NhZ2UpKXtcclxuICAgICAgICB0aGlzLiNidWlsZFRvYXN0TXVsdGlNZXNzc2FnZSgnZXJyb3InLCBtZXNzYWdlLCBkZWxheSwgdGl0bGUpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIGNvbnN0IGNvbnRlbnQgPSBtZXNzYWdlIHx8IHRoaXMudHJhbnNsYXRlKFwiRXJyb3JcIik7XHJcbiAgICAgICAgdGhpcy50b2FzdHIuZXJyb3IoY29udGVudCwgdGl0bGUsIHtcclxuICAgICAgICAgIGVuYWJsZUh0bWw6IHRydWUsXHJcbiAgICAgICAgICB0aW1lT3V0OiBkZWxheSB8fCAzMDAwLFxyXG4gICAgICAgICAgY2xvc2VCdXR0b246IHRydWUsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0sXHJcbiAgfTtcclxuXHJcbiAgI2J1aWxkVG9hc3RNdWx0aU1lc3NzYWdlID0gKHR5cGU6ICd3YXJuaW5nJyB8ICdlcnJvcicsIG1lc3NhZ2VzOiBzdHJpbmdbXSwgZGVsYXk/OiBudW1iZXIsIHRpdGxlPzogc3RyaW5nKSA9PiB7XHJcbiAgICAvKiogc+G7kSBsxrDhu6NuZyBpdGVtIGhp4buDbiB0aOG7iyBt4bq3YyDEkeG7i25oICovXHJcbiAgICBjb25zdCBzaG93TnVtID0gMjtcclxuICAgIGNvbnN0IGlkID0gYHNkLW5vdGlmeS1ja2ItJHt1dWlkLnY0KCl9YDtcclxuICAgIGNvbnN0IG1lc3NhZ2VMZW5ndGggPSBtZXNzYWdlcy5sZW5ndGg7XHJcbiAgICBjb25zdCBtZXNzYWdlUmVzdHMgPSBtZXNzYWdlcy5zcGxpY2Uoc2hvd051bSk7XHJcbiAgICBjb25zdCBtZXNzYWdlQ29udGFpbmVyID0gYDx1bCBjbGFzcz1cInNkLW5vdGlmeV9fbGlzdFwiPnswfXsxfTwvdWw+YDtcclxuICAgIGNvbnN0IG1lc3NhZ2VUZW1wID0gYDxsaSBjbGFzcz1cInNkLW5vdGlmeV9faXRlbVwiPi0gezB9PC9saT5gO1xyXG4gICAgbGV0IGNvbnRlbnRSZXN0ID0gJyc7XHJcbiAgICBpZiAobWVzc2FnZVJlc3RzPy5sZW5ndGgpIHtcclxuICAgICAgY29udGVudFJlc3QgPSBgPGlucHV0IGlkPVwiJHtpZH1cIiBjbGFzcz1cImNkay12aXN1YWxseS1oaWRkZW4gc2Qtbm90aWZ5X19jaGVja2JveFwiIHR5cGU9XCJjaGVja2JveFwiIC8+XHJcbiAgICAgIDxsYWJlbCBjbGFzcz1cInNkLW5vdGlmeV9fdGV4dCBzZC1ub3RpZnlfX3RleHQtLXNob3cgdGV4dC1zZWNvbmRhcnlcIiBmb3I9XCIke2lkfVwiPiR7dGhpcy50cmFuc2xhdGUoJ1Nob3cgbW9yZScpfTwvbGFiZWw+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzZC1ub3RpZnlfX2l0ZW0tLXJlc3RcIj5cclxuICAgICAgICAke21lc3NhZ2VSZXN0cy5tYXAobSA9PiBTdHJpbmcuZm9ybWF0KG1lc3NhZ2VUZW1wLCBtKSkuam9pbignJyl9XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8bGFiZWwgY2xhc3M9XCJzZC1ub3RpZnlfX3RleHQgc2Qtbm90aWZ5X190ZXh0LS1sZXNzIHRleHQtc2Vjb25kYXJ5XCIgZm9yPVwiJHtpZH1cIj4ke3RoaXMudHJhbnNsYXRlKCdTaG93IGxlc3MnKX08L2xhYmVsPmA7XHJcbiAgICB9XHJcbiAgICBjb25zdCBjb250ZW50ID0gU3RyaW5nLmZvcm1hdChtZXNzYWdlQ29udGFpbmVyLCBtZXNzYWdlcy5tYXAobSA9PiBTdHJpbmcuZm9ybWF0KG1lc3NhZ2VUZW1wLCBtKSkuam9pbignJyksIGNvbnRlbnRSZXN0KTtcclxuICAgIGxldCB0b2FzdDogQWN0aXZlVG9hc3Q8YW55PjtcclxuICAgIC8vIGtoaSB0cnV54buBbiBtZXNzYWdlIGh0bWwgc+G6vSBi4buLIHNhbml0aXplIG7Dqm4gcGjhuqNpIHRydXnhu4FuIGlubmVySFRNTCBraGkgdG9hc3QgaGnhu4duIGzDqm5cclxuICAgIC8vIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3NjdHRjcGVyL25neC10b2FzdHIvYmxvYi92MTIuMS4wL3NyYy9saWIvdG9hc3RyL3RvYXN0ci5zZXJ2aWNlLnRzI0wyNzFcclxuICAgIHN3aXRjaCAodHlwZSkge1xyXG4gICAgICBjYXNlICdlcnJvcic6XHJcbiAgICAgICAgdG9hc3QgPSB0aGlzLnRvYXN0ci5lcnJvcihjb250ZW50LCBgJHt0aXRsZSB8fCB0aGlzLnRyYW5zbGF0ZSgnRXJyb3InKX0gKCR7bWVzc2FnZUxlbmd0aH0pYCwge1xyXG4gICAgICAgICAgZW5hYmxlSHRtbDogdHJ1ZSxcclxuICAgICAgICAgIHRpbWVPdXQ6IGRlbGF5IHx8IDMwMDAsXHJcbiAgICAgICAgICBtZXNzYWdlQ2xhc3M6IGB0b2FzdC1tZXNzYWdlIHRvYXN0LW1lc3NhZ2UtJHtpZH1gLFxyXG4gICAgICAgICAgY2xvc2VCdXR0b246IHRydWUsXHJcbiAgICAgICAgICB0YXBUb0Rpc21pc3M6IGZhbHNlXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ3dhcm5pbmcnOlxyXG4gICAgICAgIHRvYXN0ID0gdGhpcy50b2FzdHIud2FybmluZyhjb250ZW50LCBgJHt0aXRsZSB8fCB0aGlzLnRyYW5zbGF0ZSgnV2FybmluZycpfSAoJHttZXNzYWdlTGVuZ3RofSlgLCB7XHJcbiAgICAgICAgICBlbmFibGVIdG1sOiB0cnVlLFxyXG4gICAgICAgICAgdGltZU91dDogZGVsYXkgfHwgMzAwMCxcclxuICAgICAgICAgIG1lc3NhZ2VDbGFzczogYHRvYXN0LW1lc3NhZ2UgdG9hc3QtbWVzc2FnZS0ke2lkfWAsXHJcbiAgICAgICAgICBjbG9zZUJ1dHRvbjogdHJ1ZSxcclxuICAgICAgICAgIHRhcFRvRGlzbWlzczogZmFsc2VcclxuICAgICAgICB9KTtcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuICAgIFxyXG4gICAgaWYgKHRvYXN0KSB7XHJcbiAgICAgIHRvYXN0Lm9uU2hvd25cclxuICAgICAgICAucGlwZShcclxuICAgICAgICAgIHRha2VVbnRpbCh0b2FzdC5vbkhpZGRlbilcclxuICAgICAgICApXHJcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBtZXNzYWdlRWxlOiBIVE1MRGl2RWxlbWVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYC50b2FzdC1tZXNzYWdlLSR7aWR9YCk7XHJcbiAgICAgICAgICBtZXNzYWdlRWxlLmlubmVySFRNTCA9IGNvbnRlbnQ7XHJcbiAgICAgICAgfSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGhhbmRsZSA9IHtcclxuICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHR5cGVvZiBlcnIgPT09IFwic3RyaW5nXCIpIHtcclxuICAgICAgICB0aGlzLm5vdGlmeS53YXJuaW5nKGVycik7XHJcbiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGVyciA9PT0gXCJvYmplY3RcIikge1xyXG4gICAgICAgIGxldCBtZXNzYWdlID1cclxuICAgICAgICAgIGVycj8uZXJyb3IgfHxcclxuICAgICAgICAgIGVycj8ubWVzc2FnZSB8fFxyXG4gICAgICAgICAgZXJyPy5FeGNlcHRpb25NZXNzYWdlIHx8XHJcbiAgICAgICAgICBlcnI/Lk1lc3NhZ2UgfHxcclxuICAgICAgICAgIFwiVW5rbm93biBlcnJvclwiO1xyXG4gICAgICAgIGlmICh0eXBlb2YgZXJyLmpzb24gPT09IFwiZnVuY3Rpb25cIikge1xyXG4gICAgICAgICAgZXJyID0gZXJyLmpzb24oKTtcclxuICAgICAgICAgIGlmIChlcnIpIHtcclxuICAgICAgICAgICAgbWVzc2FnZSA9XHJcbiAgICAgICAgICAgICAgZXJyPy5lcnJvciB8fFxyXG4gICAgICAgICAgICAgIGVycj8ubWVzc2FnZSB8fFxyXG4gICAgICAgICAgICAgIGVycj8uRXhjZXB0aW9uTWVzc2FnZSB8fFxyXG4gICAgICAgICAgICAgIGVycj8uTWVzc2FnZSB8fFxyXG4gICAgICAgICAgICAgIFwiVW5rbm93biBlcnJvclwiO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm5vdGlmeS53YXJuaW5nKG1lc3NhZ2UpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMubm90aWZ5Lndhcm5pbmcoXCJVbmtub3duIGVycm9yXCIpO1xyXG4gICAgICB9XHJcbiAgICB9LFxyXG4gIH07XHJcblxyXG4gIGNvbmZpcm0gPSAoXHJcbiAgICBtZXNzYWdlOiBzdHJpbmcsXHJcbiAgICBvcHRpb246IHtcclxuICAgICAgdGl0bGU/OiBzdHJpbmc7XHJcbiAgICAgIHllc1RpdGxlPzogc3RyaW5nO1xyXG4gICAgICBub1RpdGxlPzogc3RyaW5nO1xyXG4gICAgICB5ZXNCdXR0b25Db2xvcj86IHN0cmluZztcclxuICAgICAgbm9CdXR0b25Db2xvcj86IHN0cmluZztcclxuICAgIH0gPSB7fVxyXG4gICkgPT4ge1xyXG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihEaWFsb2dDb25maXJtQ29tcG9uZW50LCB7XHJcbiAgICAgIHdpZHRoOiBcIjQwMHB4XCIsXHJcbiAgICAgIGRhdGE6IHtcclxuICAgICAgICB0aXRsZTogb3B0aW9uPy50aXRsZSB8fCB0aGlzLnRyYW5zbGF0ZShcIkNvbmZpcm1cIiksXHJcbiAgICAgICAgbWVzc2FnZSxcclxuICAgICAgICB5ZXNUaXRsZTogb3B0aW9uPy55ZXNUaXRsZSB8fCB0aGlzLnRyYW5zbGF0ZShcIlllc1wiKSxcclxuICAgICAgICBub1RpdGxlOiBvcHRpb24/Lm5vVGl0bGUgfHwgdGhpcy50cmFuc2xhdGUoXCJOb1wiKSxcclxuICAgICAgICBub0J1dHRvbkNvbG9yOiBvcHRpb24/Lm5vQnV0dG9uQ29sb3IgfHwgXCJzZWNvbmRhcnlcIixcclxuICAgICAgICB5ZXNCdXR0b25Db2xvcjogb3B0aW9uPy55ZXNCdXR0b25Db2xvciB8fCBcInByaW1hcnlcIixcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKChyZXN1bHQpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICBpZiAocmVzdWx0ID09PSBcIkFDQ0VQVFwiKSB7XHJcbiAgICAgICAgICAgIHJlc29sdmUobnVsbCk7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKHJlc3VsdCA9PT0gXCJDQU5DRUxcIikge1xyXG4gICAgICAgICAgICByZWplY3QocmVzdWx0KTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJlc29sdmUobnVsbCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH07XHJcblxyXG4gIGNvbmZpcm1EZWxldGUgPSAoKSA9PiB0aGlzLmNvbmZpcm0odGhpcy50cmFuc2xhdGUoXCJEZWxldGUgcmVjb3JkKHMpXCIpKTtcclxuXHJcbiAgY29uZmlybUFwcHJvdmUgPSAoKSA9PiB0aGlzLmNvbmZpcm0odGhpcy50cmFuc2xhdGUoXCJBcHByb3ZlIHJlY29yZChzKVwiKSk7XHJcblxyXG4gIGNvbmZpcm1XaXRoSW5wdXQgPSAoXHJcbiAgICB0aXRsZTogc3RyaW5nLFxyXG4gICAgb3B0aW9uOiB7XHJcbiAgICAgIG1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgICAgIHllc1RpdGxlPzogc3RyaW5nO1xyXG4gICAgICBub1RpdGxlPzogc3RyaW5nO1xyXG4gICAgICByZXF1aXJlZD86IGJvb2xlYW47XHJcbiAgICAgIG1heGxlbmd0aD86IG51bWJlcjtcclxuICAgICAgeWVzQnV0dG9uQ29sb3I/OiBzdHJpbmc7XHJcbiAgICAgIG5vQnV0dG9uQ29sb3I/OiBzdHJpbmc7XHJcbiAgICAgIGRlZmF1bHRWYWx1ZT86IHN0cmluZztcclxuICAgIH0gPSB7fVxyXG4gICk6IFByb21pc2U8c3RyaW5nPiA9PiB7XHJcbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKERpYWxvZ0NvbmZpcm1Db21wb25lbnQsIHtcclxuICAgICAgd2lkdGg6IFwiNDAwcHhcIixcclxuICAgICAgZGF0YToge1xyXG4gICAgICAgIHRpdGxlOiB0aXRsZSB8fCB0aGlzLnRyYW5zbGF0ZShcIkNvbmZpcm1cIiksXHJcbiAgICAgICAgbWVzc2FnZTogb3B0aW9uPy5tZXNzYWdlLFxyXG4gICAgICAgIHllc1RpdGxlOiBvcHRpb24/Lnllc1RpdGxlIHx8IHRoaXMudHJhbnNsYXRlKFwiWWVzXCIpLFxyXG4gICAgICAgIG5vVGl0bGU6IG9wdGlvbj8ubm9UaXRsZSB8fCB0aGlzLnRyYW5zbGF0ZShcIk5vXCIpLFxyXG4gICAgICAgIG5vQnV0dG9uQ29sb3I6IG9wdGlvbj8ubm9CdXR0b25Db2xvciB8fCBcInNlY29uZGFyeVwiLFxyXG4gICAgICAgIHllc0J1dHRvbkNvbG9yOiBvcHRpb24/Lnllc0J1dHRvbkNvbG9yIHx8IFwicHJpbWFyeVwiLFxyXG4gICAgICAgIGlucHV0OiB7XHJcbiAgICAgICAgICBtYXhsZW5ndGg6IG9wdGlvbj8ubWF4bGVuZ3RoIHx8IDI1NSxcclxuICAgICAgICAgIHJlcXVpcmVkOiBvcHRpb24/LnJlcXVpcmVkLFxyXG4gICAgICAgICAgZGVmYXVsdFZhbHVlOiBvcHRpb24/LmRlZmF1bHRWYWx1ZSB8fCAnJ1xyXG4gICAgICAgIH0sXHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3VsdCkge1xyXG4gICAgICAgICAgaWYgKHJlc3VsdCA9PT0gXCJBQ0NFUFRcIikge1xyXG4gICAgICAgICAgICByZXNvbHZlKHJlc3VsdCk7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKHJlc3VsdCA9PT0gXCJDQU5DRUxcIikge1xyXG4gICAgICAgICAgICByZWplY3QocmVzdWx0KTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJlc29sdmUocmVzdWx0KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfTtcclxuXHJcbiAgcHJpdmF0ZSB0cmFuc2xhdGUgPSAodmFsdWU6IHN0cmluZyk6IHN0cmluZyA9PiB7XHJcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnRyYW5zbGF0ZSh2YWx1ZSk7XHJcbiAgfTtcclxufVxyXG4iXX0=
|
|
308
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZ5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1L0Rlc2t0b3AvV29ya2luZy8xTUcvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS9ub3RpZnkvIiwic291cmNlcyI6WyJzcmMvbGliL25vdGlmeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUM5RixPQUFPLEVBQWUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3hELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBZ0IsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQy9ELE9BQU8sRUFBVyxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxLQUFLLElBQUksTUFBTSxNQUFNLENBQUM7QUFHN0IsTUFBTSxPQUFPLGVBQWU7SUFhMUIsWUFDVSxNQUFpQixFQUNqQixNQUFxQixFQUNyQixnQkFBb0M7UUFGcEMsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNqQixXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQ3JCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBb0I7UUFmOUMseUJBQWlCLEdBQUcsRUFBQyxDQUFDLHFFQUFxRTtRQUMzRixzQkFBYyxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUM7UUFDeEIsb0JBQVksSUFBSSxDQUFDLEVBQUUsRUFBRSxFQUFDO1FBQ3RCLGlCQVFJLEVBQUUsRUFBQztRQU9QLFVBQUssR0FBRztZQUNOLElBQUksRUFBRSxDQUNKLE9BQWdCLEVBQ2hCLEtBQWMsRUFDZCxRQUFpQixFQUNqQixJQUFhLEVBQ2IsRUFBRTtnQkFDRixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRTtvQkFDdkMsS0FBSyxFQUFFLE9BQU87b0JBQ2QsSUFBSSxFQUFFO3dCQUNKLElBQUksRUFBRSxJQUFJLElBQUksTUFBTTt3QkFDcEIsS0FBSyxFQUFFLEtBQUssSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQzt3QkFDeEMsT0FBTyxFQUFFLE9BQU8sSUFBSSxPQUFPO3dCQUMzQixRQUFRLEVBQUUsUUFBUSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO3FCQUMzQztpQkFDRixDQUFDLENBQUM7WUFDTCxDQUFDO1lBQ0QsT0FBTyxFQUFFLENBQ1AsT0FBZ0IsRUFDaEIsS0FBYyxFQUNkLFFBQWlCLEVBQ2pCLElBQWEsRUFDYixFQUFFO2dCQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFO29CQUN2QyxLQUFLLEVBQUUsT0FBTztvQkFDZCxJQUFJLEVBQUU7d0JBQ0osSUFBSSxFQUFFLElBQUksSUFBSSxNQUFNO3dCQUNwQixLQUFLLEVBQUUsS0FBSyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDO3dCQUN6QyxPQUFPLEVBQUUsT0FBTyxJQUFJLE9BQU87d0JBQzNCLFFBQVEsRUFBRSxRQUFRLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7cUJBQzNDO2lCQUNGLENBQUMsQ0FBQztZQUNMLENBQUM7WUFDRCxPQUFPLEVBQUUsQ0FDUCxPQUFnQixFQUNoQixLQUFjLEVBQ2QsUUFBaUIsRUFDakIsSUFBYSxFQUNiLEVBQUU7Z0JBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEVBQUU7b0JBQ3ZDLEtBQUssRUFBRSxPQUFPO29CQUNkLElBQUksRUFBRTt3QkFDSixJQUFJLEVBQUUsSUFBSSxJQUFJLFNBQVM7d0JBQ3ZCLEtBQUssRUFBRSxLQUFLLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUM7d0JBQ3pDLE9BQU8sRUFBRSxPQUFPLElBQUksdUJBQXVCO3dCQUMzQyxRQUFRLEVBQUUsUUFBUSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO3FCQUMzQztpQkFDRixDQUFDLENBQUM7WUFDTCxDQUFDO1lBQ0QsS0FBSyxFQUFFLENBQ0wsT0FBZ0IsRUFDaEIsS0FBYyxFQUNkLFFBQWlCLEVBQ2pCLElBQWEsRUFDYixFQUFFO2dCQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFO29CQUN2QyxLQUFLLEVBQUUsT0FBTztvQkFDZCxJQUFJLEVBQUU7d0JBQ0osSUFBSSxFQUFFLElBQUksSUFBSSxPQUFPO3dCQUNyQixLQUFLLEVBQUUsS0FBSyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDO3dCQUN2QyxPQUFPLEVBQUUsT0FBTyxJQUFJLHVCQUF1Qjt3QkFDM0MsUUFBUSxFQUFFLFFBQVEsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQztxQkFDM0M7aUJBQ0YsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztTQUNGLENBQUM7UUFFRixXQUFNLEdBQUc7WUFDUCxPQUFPLEVBQUUsQ0FBQyxPQUFnQixFQUFFLEtBQWMsRUFBRSxLQUFjLEVBQUUsRUFBRTtnQkFDNUQsNENBQTRDO2dCQUM1QyxnTEFBZ0w7Z0JBQ2hMLDRDQUE0QztnQkFDNUMsd0lBQXdJO2dCQUN4SSxnQ0FBZ0M7Z0JBQ2hDLE1BQU0sT0FBTyxHQUFHLE9BQU8sSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUNyRCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFO29CQUNsQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLEtBQUssSUFBSSxJQUFJO29CQUN0QixXQUFXLEVBQUUsSUFBSTtpQkFDbEIsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztZQUNELE9BQU8sRUFBRSxDQUFDLE9BQTJCLEVBQUUsS0FBYyxFQUFFLEtBQWMsRUFBRSxFQUFFO2dCQUN2RSxJQUFJLENBQUMsK0VBQTZCLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQywrRUFBNkIsQ0FBQyxXQUFXLCtDQUFzQixHQUFHLElBQUksSUFBSSxFQUFFLEVBQUU7b0JBQ3RJLCtFQUE2QixHQUFHO3dCQUM5QixXQUFXLEVBQUUsSUFBSSxJQUFJLEVBQUU7d0JBQ3ZCLElBQUksRUFBRTs0QkFDSixLQUFLLEVBQUUsS0FBSzs0QkFDWixRQUFRLEVBQUUsRUFBRTt5QkFDYjtxQkFDRixDQUFDO29CQUNGLEtBQUssOENBQXFCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7d0JBQ3RELGtEQUFBLElBQUksRUFBZ0I7NEJBQ2xCLEtBQUssRUFBRSwrRUFBNkIsQ0FBQyxJQUFJLENBQUMsS0FBSzs0QkFDL0MsT0FBTyxFQUFFLCtFQUE2QixDQUFDLElBQUksQ0FBQyxRQUFROzRCQUNwRCxLQUFLLEVBQUUsS0FBSzt5QkFDYixDQUFDLENBQUE7b0JBQ0osQ0FBQyxDQUFDLENBQUM7aUJBQ0o7Z0JBQ0QsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO29CQUMxQiwrRUFBNkIsQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsR0FBRywrRUFBNkIsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsT0FBTyxDQUFDLENBQUM7aUJBQzVHO3FCQUFNO29CQUNMLCtFQUE2QixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2lCQUMzRDtZQUNILENBQUM7WUFDRCxLQUFLLEVBQUUsQ0FBQyxPQUEyQixFQUFFLEtBQWMsRUFBRSxLQUFjLEVBQUUsRUFBRTtnQkFDckUsSUFBSSxDQUFDLDZFQUEyQixJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsNkVBQTJCLENBQUMsV0FBVywrQ0FBc0IsR0FBRyxJQUFJLElBQUksRUFBRSxFQUFFO29CQUNsSSw2RUFBMkIsR0FBRzt3QkFDNUIsV0FBVyxFQUFFLElBQUksSUFBSSxFQUFFO3dCQUN2QixJQUFJLEVBQUU7NEJBQ0osS0FBSyxFQUFFLEtBQUs7NEJBQ1osUUFBUSxFQUFFLEVBQUU7eUJBQ2I7cUJBQ0YsQ0FBQztvQkFDRixLQUFLLDhDQUFxQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO3dCQUN0RCxnREFBQSxJQUFJLEVBQWM7NEJBQ2hCLEtBQUssRUFBRSw2RUFBMkIsQ0FBQyxJQUFJLENBQUMsS0FBSzs0QkFDN0MsT0FBTyxFQUFFLDZFQUEyQixDQUFDLElBQUksQ0FBQyxRQUFROzRCQUNsRCxLQUFLLEVBQUUsS0FBSzt5QkFDYixDQUFDLENBQUE7b0JBQ0osQ0FBQyxDQUFDLENBQUM7aUJBQ0o7Z0JBQ0QsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO29CQUMxQiw2RUFBMkIsQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsR0FBRyw2RUFBMkIsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsT0FBTyxDQUFDLENBQUM7aUJBQ3hHO3FCQUFNO29CQUNMLDZFQUEyQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2lCQUN6RDtZQUNILENBQUM7U0FDRixDQUFDO1FBRUYseUJBQWlCLENBQUMsSUFJakIsRUFBRSxFQUFFO1lBQ0gsTUFBTSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDO1lBQ3ZDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDMUIsNERBQUEsSUFBSSxFQUEwQixTQUFTLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQzthQUNqRTtpQkFDSTtnQkFDSCxNQUFNLE9BQU8sR0FBRyxPQUFPLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDckQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRTtvQkFDbEMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxLQUFLLElBQUksSUFBSTtvQkFDdEIsV0FBVyxFQUFFLElBQUk7aUJBQ2xCLENBQUMsQ0FBQzthQUNKO1FBQ0gsQ0FBQyxFQUFBO1FBRUQsdUJBQWUsQ0FBQyxJQUlmLEVBQUUsRUFBRTtZQUNILE1BQU0sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxHQUFHLElBQUksQ0FBQztZQUN2QyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQzFCLDREQUFBLElBQUksRUFBMEIsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7YUFDL0Q7aUJBQ0k7Z0JBQ0gsTUFBTSxPQUFPLEdBQUcsT0FBTyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ25ELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUU7b0JBQ2hDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsS0FBSyxJQUFJLElBQUk7b0JBQ3RCLFdBQVcsRUFBRSxJQUFJO2lCQUNsQixDQUFDLENBQUM7YUFDSjtRQUNILENBQUMsRUFBQTtRQUVELG1DQUEyQixDQUFDLElBQXlCLEVBQUUsUUFBa0IsRUFBRSxLQUFjLEVBQUUsS0FBYyxFQUFFLEVBQUU7WUFDM0csc0NBQXNDO1lBQ3RDLE1BQU0sT0FBTyxHQUFHLENBQUMsQ0FBQztZQUNsQixNQUFNLEVBQUUsR0FBRyxpQkFBaUIsSUFBSSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDeEMsTUFBTSxhQUFhLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUN0QyxNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzlDLE1BQU0sZ0JBQWdCLEdBQUcseUNBQXlDLENBQUM7WUFDbkUsTUFBTSxXQUFXLEdBQUcsd0NBQXdDLENBQUM7WUFDN0QsSUFBSSxXQUFXLEdBQUcsRUFBRSxDQUFDO1lBQ3JCLElBQUksWUFBWSxhQUFaLFlBQVksdUJBQVosWUFBWSxDQUFFLE1BQU0sRUFBRTtnQkFDeEIsV0FBVyxHQUFHLGNBQWMsRUFBRTtpRkFDNkMsRUFBRSxLQUFLLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDOztVQUV6RyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDOztpRkFFVSxFQUFFLEtBQUssSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDO2FBQ3pIO1lBQ0QsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsV0FBVyxDQUFDLENBQUM7WUFDeEgsSUFBSSxLQUF1QixDQUFDO1lBQzVCLHNGQUFzRjtZQUN0RixpR0FBaUc7WUFDakcsUUFBUSxJQUFJLEVBQUU7Z0JBQ1osS0FBSyxPQUFPO29CQUNWLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsR0FBRyxLQUFLLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxhQUFhLEdBQUcsRUFBRTt3QkFDM0YsVUFBVSxFQUFFLElBQUk7d0JBQ2hCLE9BQU8sRUFBRSxLQUFLLElBQUksSUFBSTt3QkFDdEIsWUFBWSxFQUFFLCtCQUErQixFQUFFLEVBQUU7d0JBQ2pELFdBQVcsRUFBRSxJQUFJO3dCQUNqQixZQUFZLEVBQUUsS0FBSztxQkFDcEIsQ0FBQyxDQUFDO29CQUNILE1BQU07Z0JBQ1IsS0FBSyxTQUFTO29CQUNaLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsR0FBRyxLQUFLLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsS0FBSyxhQUFhLEdBQUcsRUFBRTt3QkFDL0YsVUFBVSxFQUFFLElBQUk7d0JBQ2hCLE9BQU8sRUFBRSxLQUFLLElBQUksSUFBSTt3QkFDdEIsWUFBWSxFQUFFLCtCQUErQixFQUFFLEVBQUU7d0JBQ2pELFdBQVcsRUFBRSxJQUFJO3dCQUNqQixZQUFZLEVBQUUsS0FBSztxQkFDcEIsQ0FBQyxDQUFDO29CQUNILE1BQU07YUFDVDtZQUVELElBQUksS0FBSyxFQUFFO2dCQUNULEtBQUssQ0FBQyxPQUFPO3FCQUNWLElBQUksQ0FDSCxTQUFTLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUMxQjtxQkFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO29CQUNkLE1BQU0sVUFBVSxHQUFtQixRQUFRLENBQUMsYUFBYSxDQUFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxDQUFDO29CQUNsRixVQUFVLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQztnQkFDakMsQ0FBQyxDQUFDLENBQUE7YUFDTDtRQUNILENBQUMsRUFBQTtRQUVELFdBQU0sR0FBRztZQUNQLEtBQUssRUFBRSxDQUFDLEdBQVEsRUFBRSxFQUFFO2dCQUNsQixJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRTtvQkFDM0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQzFCO3FCQUFNLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFO29CQUNsQyxJQUFJLE9BQU8sR0FDVCxDQUFBLEdBQUcsYUFBSCxHQUFHLHVCQUFILEdBQUcsQ0FBRSxLQUFLLE1BQ1YsR0FBRyxhQUFILEdBQUcsdUJBQUgsR0FBRyxDQUFFLE9BQU8sQ0FBQSxLQUNaLEdBQUcsYUFBSCxHQUFHLHVCQUFILEdBQUcsQ0FBRSxnQkFBZ0IsQ0FBQSxLQUNyQixHQUFHLGFBQUgsR0FBRyx1QkFBSCxHQUFHLENBQUUsT0FBTyxDQUFBO3dCQUNaLGVBQWUsQ0FBQztvQkFDbEIsSUFBSSxPQUFPLEdBQUcsQ0FBQyxJQUFJLEtBQUssVUFBVSxFQUFFO3dCQUNsQyxHQUFHLEdBQUcsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO3dCQUNqQixJQUFJLEdBQUcsRUFBRTs0QkFDUCxPQUFPO2dDQUNMLENBQUEsR0FBRyxhQUFILEdBQUcsdUJBQUgsR0FBRyxDQUFFLEtBQUssTUFDVixHQUFHLGFBQUgsR0FBRyx1QkFBSCxHQUFHLENBQUUsT0FBTyxDQUFBLEtBQ1osR0FBRyxhQUFILEdBQUcsdUJBQUgsR0FBRyxDQUFFLGdCQUFnQixDQUFBLEtBQ3JCLEdBQUcsYUFBSCxHQUFHLHVCQUFILEdBQUcsQ0FBRSxPQUFPLENBQUE7b0NBQ1osZUFBZSxDQUFDO3lCQUNuQjtxQkFDRjtvQkFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztpQkFDOUI7cUJBQU07b0JBQ0wsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7aUJBQ3RDO1lBQ0gsQ0FBQztTQUNGLENBQUM7UUFFRixZQUFPLEdBQUcsQ0FDUixPQUFlLEVBQ2YsU0FNSSxFQUFFLEVBQ04sRUFBRTtZQUNGLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFO2dCQUN6RCxLQUFLLEVBQUUsT0FBTztnQkFDZCxJQUFJLEVBQUU7b0JBQ0osS0FBSyxFQUFFLENBQUEsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLEtBQUssS0FBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQztvQkFDakQsT0FBTztvQkFDUCxRQUFRLEVBQUUsQ0FBQSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsUUFBUSxLQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO29CQUNuRCxPQUFPLEVBQUUsQ0FBQSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsT0FBTyxLQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO29CQUNoRCxhQUFhLEVBQUUsQ0FBQSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsYUFBYSxLQUFJLFdBQVc7b0JBQ25ELGNBQWMsRUFBRSxDQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxjQUFjLEtBQUksU0FBUztpQkFDcEQ7YUFDRixDQUFDLENBQUM7WUFDSCxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO2dCQUNyQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7b0JBQzNDLElBQUksTUFBTSxFQUFFO3dCQUNWLElBQUksTUFBTSxLQUFLLFFBQVEsRUFBRTs0QkFDdkIsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO3lCQUNmOzZCQUFNLElBQUksTUFBTSxLQUFLLFFBQVEsRUFBRTs0QkFDOUIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO3lCQUNoQjs2QkFBTTs0QkFDTCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7eUJBQ2Y7cUJBQ0Y7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQztRQUVGLGtCQUFhLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQztRQUV2RSxtQkFBYyxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7UUFFekUscUJBQWdCLEdBQUcsQ0FDakIsS0FBYSxFQUNiLFNBU0ksRUFBRSxFQUNXLEVBQUU7WUFDbkIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEVBQUU7Z0JBQ3pELEtBQUssRUFBRSxPQUFPO2dCQUNkLElBQUksRUFBRTtvQkFDSixLQUFLLEVBQUUsS0FBSyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDO29CQUN6QyxPQUFPLEVBQUUsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLE9BQU87b0JBQ3hCLFFBQVEsRUFBRSxDQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxRQUFRLEtBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7b0JBQ25ELE9BQU8sRUFBRSxDQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxPQUFPLEtBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7b0JBQ2hELGFBQWEsRUFBRSxDQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxhQUFhLEtBQUksV0FBVztvQkFDbkQsY0FBYyxFQUFFLENBQUEsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLGNBQWMsS0FBSSxTQUFTO29CQUNuRCxLQUFLLEVBQUU7d0JBQ0wsU0FBUyxFQUFFLENBQUEsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLFNBQVMsS0FBSSxHQUFHO3dCQUNuQyxRQUFRLEVBQUUsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLFFBQVE7d0JBQzFCLFlBQVksRUFBRSxDQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxZQUFZLEtBQUksRUFBRTtxQkFDekM7aUJBQ0Y7YUFDRixDQUFDLENBQUM7WUFDSCxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO2dCQUNyQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7b0JBQzNDLElBQUksTUFBTSxFQUFFO3dCQUNWLElBQUksTUFBTSxLQUFLLFFBQVEsRUFBRTs0QkFDdkIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO3lCQUNqQjs2QkFBTSxJQUFJLE1BQU0sS0FBSyxRQUFRLEVBQUU7NEJBQzlCLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQzt5QkFDaEI7NkJBQU07NEJBQ0wsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO3lCQUNqQjtxQkFDRjtnQkFDSCxDQUFDLENBQUMsQ0FBQztZQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDO1FBRU0sY0FBUyxHQUFHLENBQUMsS0FBYSxFQUFVLEVBQUU7WUFDNUMsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hELENBQUMsQ0FBQztJQWxWRSxDQUFDOzs7O1lBbEJOLFVBQVU7OztZQVJGLFNBQVM7WUFFSSxhQUFhO1lBQzFCLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBcIkBzZC1hbmd1bGFyL2NvcmUvY29tbW9uXCI7XHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nXCI7XHJcbmltcG9ydCB7IERpYWxvZ0NvbmZpcm1Db21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL2RpYWxvZy1jb25maXJtL2RpYWxvZy1jb25maXJtLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBBY3RpdmVUb2FzdCwgVG9hc3RyU2VydmljZSB9IGZyb20gXCJuZ3gtdG9hc3RyXCI7XHJcbmltcG9ydCB7IFNkVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAc2QtYW5ndWxhci9jb3JlL3RyYW5zbGF0ZVwiO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHRha2UsIHRha2VVbnRpbCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCB0aW1lciB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCAqIGFzIHV1aWQgZnJvbSAndXVpZCc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBTZE5vdGlmeVNlcnZpY2Uge1xyXG4gICNkZWxheUR1cmF0aW9uID0gNTAwOyAvLyBDw6FjIGVycm9yL3dhcm5pbmcgbWVzc2FnZSBz4bq9IHThu7EgxJHhu5luZyBn4buZcCBzYXUga2hv4bqjbmcgdGjhu51pIGdpYW4gdHLDqm5cclxuICAjd2FybmluZ0tleSA9IHV1aWQudjQoKTtcclxuICAjZXJyb3JLZXkgPSB1dWlkLnY0KCk7XHJcbiAgI2NhY2hlOiB7XHJcbiAgICBba2V5OiBzdHJpbmddOiB7XHJcbiAgICAgIGNyZWF0ZWREYXRlOiBEYXRlO1xyXG4gICAgICBkYXRhPzoge1xyXG4gICAgICAgIHRpdGxlOiBzdHJpbmcsXHJcbiAgICAgICAgbWVzc2FnZXM6IHN0cmluZ1tdXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9ID0ge307XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLFxyXG4gICAgcHJpdmF0ZSB0b2FzdHI6IFRvYXN0clNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFNkVHJhbnNsYXRlU2VydmljZVxyXG4gICkgeyB9XHJcblxyXG4gIGFsZXJ0ID0ge1xyXG4gICAgaW5mbzogKFxyXG4gICAgICBtZXNzYWdlPzogc3RyaW5nLFxyXG4gICAgICB0aXRsZT86IHN0cmluZyxcclxuICAgICAgeWVzVGl0bGU/OiBzdHJpbmcsXHJcbiAgICAgIGljb24/OiBzdHJpbmdcclxuICAgICkgPT4ge1xyXG4gICAgICB0aGlzLmRpYWxvZy5vcGVuKERpYWxvZ0NvbmZpcm1Db21wb25lbnQsIHtcclxuICAgICAgICB3aWR0aDogXCI0MDBweFwiLFxyXG4gICAgICAgIGRhdGE6IHtcclxuICAgICAgICAgIGljb246IGljb24gfHwgXCJpbmZvXCIsXHJcbiAgICAgICAgICB0aXRsZTogdGl0bGUgfHwgdGhpcy50cmFuc2xhdGUoXCJOb3RpY2VcIiksXHJcbiAgICAgICAgICBtZXNzYWdlOiBtZXNzYWdlIHx8IFwiRG9uZSFcIixcclxuICAgICAgICAgIHllc1RpdGxlOiB5ZXNUaXRsZSB8fCB0aGlzLnRyYW5zbGF0ZShcIk9rXCIpLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH0pO1xyXG4gICAgfSxcclxuICAgIHN1Y2Nlc3M6IChcclxuICAgICAgbWVzc2FnZT86IHN0cmluZyxcclxuICAgICAgdGl0bGU/OiBzdHJpbmcsXHJcbiAgICAgIHllc1RpdGxlPzogc3RyaW5nLFxyXG4gICAgICBpY29uPzogc3RyaW5nXHJcbiAgICApID0+IHtcclxuICAgICAgdGhpcy5kaWFsb2cub3BlbihEaWFsb2dDb25maXJtQ29tcG9uZW50LCB7XHJcbiAgICAgICAgd2lkdGg6IFwiNDAwcHhcIixcclxuICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICBpY29uOiBpY29uIHx8IFwiZG9uZVwiLFxyXG4gICAgICAgICAgdGl0bGU6IHRpdGxlIHx8IHRoaXMudHJhbnNsYXRlKFwiU3VjY2Vzc1wiKSxcclxuICAgICAgICAgIG1lc3NhZ2U6IG1lc3NhZ2UgfHwgXCJEb25lIVwiLFxyXG4gICAgICAgICAgeWVzVGl0bGU6IHllc1RpdGxlIHx8IHRoaXMudHJhbnNsYXRlKFwiT2tcIiksXHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgICB9LFxyXG4gICAgd2FybmluZzogKFxyXG4gICAgICBtZXNzYWdlPzogc3RyaW5nLFxyXG4gICAgICB0aXRsZT86IHN0cmluZyxcclxuICAgICAgeWVzVGl0bGU/OiBzdHJpbmcsXHJcbiAgICAgIGljb24/OiBzdHJpbmdcclxuICAgICkgPT4ge1xyXG4gICAgICB0aGlzLmRpYWxvZy5vcGVuKERpYWxvZ0NvbmZpcm1Db21wb25lbnQsIHtcclxuICAgICAgICB3aWR0aDogXCI0MDBweFwiLFxyXG4gICAgICAgIGRhdGE6IHtcclxuICAgICAgICAgIGljb246IGljb24gfHwgXCJ3YXJuaW5nXCIsXHJcbiAgICAgICAgICB0aXRsZTogdGl0bGUgfHwgdGhpcy50cmFuc2xhdGUoXCJXYXJuaW5nXCIpLFxyXG4gICAgICAgICAgbWVzc2FnZTogbWVzc2FnZSB8fCBcIlNvbWV0aGluZyB3ZW50IHdyb25nIVwiLFxyXG4gICAgICAgICAgeWVzVGl0bGU6IHllc1RpdGxlIHx8IHRoaXMudHJhbnNsYXRlKFwiT2tcIiksXHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgICB9LFxyXG4gICAgZXJyb3I6IChcclxuICAgICAgbWVzc2FnZT86IHN0cmluZyxcclxuICAgICAgdGl0bGU/OiBzdHJpbmcsXHJcbiAgICAgIHllc1RpdGxlPzogc3RyaW5nLFxyXG4gICAgICBpY29uPzogc3RyaW5nXHJcbiAgICApID0+IHtcclxuICAgICAgdGhpcy5kaWFsb2cub3BlbihEaWFsb2dDb25maXJtQ29tcG9uZW50LCB7XHJcbiAgICAgICAgd2lkdGg6IFwiNDAwcHhcIixcclxuICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICBpY29uOiBpY29uIHx8IFwiZXJyb3JcIixcclxuICAgICAgICAgIHRpdGxlOiB0aXRsZSB8fCB0aGlzLnRyYW5zbGF0ZShcIkVycm9yXCIpLFxyXG4gICAgICAgICAgbWVzc2FnZTogbWVzc2FnZSB8fCBcIlNvbWV0aGluZyB3ZW50IHdyb25nIVwiLFxyXG4gICAgICAgICAgeWVzVGl0bGU6IHllc1RpdGxlIHx8IHRoaXMudHJhbnNsYXRlKFwiT2tcIiksXHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgICB9LFxyXG4gIH07XHJcblxyXG4gIG5vdGlmeSA9IHtcclxuICAgIHN1Y2Nlc3M6IChtZXNzYWdlPzogc3RyaW5nLCBkZWxheT86IG51bWJlciwgdGl0bGU/OiBzdHJpbmcpID0+IHtcclxuICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBtYXgtbGluZS1sZW5ndGhcclxuICAgICAgLy8gY29uc3Qgc3R5bGUgPSBgYm9yZGVyLXJhZGl1czogNXB4OyBtYXJnaW46IDA7IHBhZGRpbmc6IDEycHg7IHotaW5kZXg6IDk5OTk5OyB0b3A6IDVweDsgcmlnaHQ6IDVweDsgZGlzcGxheTogbm9uZTsgcG9zaXRpb246IGZpeGVkO2NvbG9yOiAjNEY4QTEwOyBiYWNrZ3JvdW5kLWNvbG9yOiAjREZGMkJGYDtcclxuICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBtYXgtbGluZS1sZW5ndGhcclxuICAgICAgLy8gY29uc3QgaHRtbCA9IGA8ZGl2IGlkPVwiJHt0aGlzLm5vdGlmeUlkfVwiIHN0eWxlPVwiJHtzdHlsZX1cIj48aSBjbGFzcz1cImZhIGZhLWNoZWNrXCI+PC9pPiAke21lc3NhZ2UgfHwgdGhpcy50cmFuc2xhdGUoJ1N1Y2Nlc3MnKX08L2Rpdj5gO1xyXG4gICAgICAvLyB0aGlzLnNob3dOb3RpZnkoaHRtbCwgZGVsYXkpO1xyXG4gICAgICBjb25zdCBjb250ZW50ID0gbWVzc2FnZSB8fCB0aGlzLnRyYW5zbGF0ZShcIlN1Y2Nlc3NcIik7XHJcbiAgICAgIHRoaXMudG9hc3RyLnN1Y2Nlc3MoY29udGVudCwgdGl0bGUsIHtcclxuICAgICAgICBlbmFibGVIdG1sOiB0cnVlLFxyXG4gICAgICAgIHRpbWVPdXQ6IGRlbGF5IHx8IDMwMDAsXHJcbiAgICAgICAgY2xvc2VCdXR0b246IHRydWUsXHJcbiAgICAgIH0pO1xyXG4gICAgfSxcclxuICAgIHdhcm5pbmc6IChtZXNzYWdlPzogc3RyaW5nIHwgc3RyaW5nW10sIGRlbGF5PzogbnVtYmVyLCB0aXRsZT86IHN0cmluZykgPT4ge1xyXG4gICAgICBpZiAoIXRoaXMuI2NhY2hlW3RoaXMuI3dhcm5pbmdLZXldIHx8IERhdGUuYWRkTWlsaXNlY29uZHModGhpcy4jY2FjaGVbdGhpcy4jd2FybmluZ0tleV0uY3JlYXRlZERhdGUsIHRoaXMuI2RlbGF5RHVyYXRpb24pIDwgbmV3IERhdGUoKSkge1xyXG4gICAgICAgIHRoaXMuI2NhY2hlW3RoaXMuI3dhcm5pbmdLZXldID0ge1xyXG4gICAgICAgICAgY3JlYXRlZERhdGU6IG5ldyBEYXRlKCksXHJcbiAgICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICAgIHRpdGxlOiB0aXRsZSxcclxuICAgICAgICAgICAgbWVzc2FnZXM6IFtdLFxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH07XHJcbiAgICAgICAgdGltZXIodGhpcy4jZGVsYXlEdXJhdGlvbikucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy4jbm90aWZ5V2FybmluZyh7XHJcbiAgICAgICAgICAgIHRpdGxlOiB0aGlzLiNjYWNoZVt0aGlzLiN3YXJuaW5nS2V5XS5kYXRhLnRpdGxlLFxyXG4gICAgICAgICAgICBtZXNzYWdlOiB0aGlzLiNjYWNoZVt0aGlzLiN3YXJuaW5nS2V5XS5kYXRhLm1lc3NhZ2VzLFxyXG4gICAgICAgICAgICBkZWxheTogZGVsYXlcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkobWVzc2FnZSkpIHtcclxuICAgICAgICB0aGlzLiNjYWNoZVt0aGlzLiN3YXJuaW5nS2V5XS5kYXRhLm1lc3NhZ2VzID0gWy4uLnRoaXMuI2NhY2hlW3RoaXMuI3dhcm5pbmdLZXldLmRhdGEubWVzc2FnZXMsIC4uLm1lc3NhZ2VdO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuI2NhY2hlW3RoaXMuI3dhcm5pbmdLZXldLmRhdGEubWVzc2FnZXMucHVzaChtZXNzYWdlKTtcclxuICAgICAgfVxyXG4gICAgfSxcclxuICAgIGVycm9yOiAobWVzc2FnZT86IHN0cmluZyB8IHN0cmluZ1tdLCBkZWxheT86IG51bWJlciwgdGl0bGU/OiBzdHJpbmcpID0+IHtcclxuICAgICAgaWYgKCF0aGlzLiNjYWNoZVt0aGlzLiNlcnJvcktleV0gfHwgRGF0ZS5hZGRNaWxpc2Vjb25kcyh0aGlzLiNjYWNoZVt0aGlzLiNlcnJvcktleV0uY3JlYXRlZERhdGUsIHRoaXMuI2RlbGF5RHVyYXRpb24pIDwgbmV3IERhdGUoKSkge1xyXG4gICAgICAgIHRoaXMuI2NhY2hlW3RoaXMuI2Vycm9yS2V5XSA9IHtcclxuICAgICAgICAgIGNyZWF0ZWREYXRlOiBuZXcgRGF0ZSgpLFxyXG4gICAgICAgICAgZGF0YToge1xyXG4gICAgICAgICAgICB0aXRsZTogdGl0bGUsXHJcbiAgICAgICAgICAgIG1lc3NhZ2VzOiBbXSxcclxuICAgICAgICAgIH1cclxuICAgICAgICB9O1xyXG4gICAgICAgIHRpbWVyKHRoaXMuI2RlbGF5RHVyYXRpb24pLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgIHRoaXMuI25vdGlmeUVycm9yKHtcclxuICAgICAgICAgICAgdGl0bGU6IHRoaXMuI2NhY2hlW3RoaXMuI2Vycm9yS2V5XS5kYXRhLnRpdGxlLFxyXG4gICAgICAgICAgICBtZXNzYWdlOiB0aGlzLiNjYWNoZVt0aGlzLiNlcnJvcktleV0uZGF0YS5tZXNzYWdlcyxcclxuICAgICAgICAgICAgZGVsYXk6IGRlbGF5XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KG1lc3NhZ2UpKSB7XHJcbiAgICAgICAgdGhpcy4jY2FjaGVbdGhpcy4jZXJyb3JLZXldLmRhdGEubWVzc2FnZXMgPSBbLi4udGhpcy4jY2FjaGVbdGhpcy4jZXJyb3JLZXldLmRhdGEubWVzc2FnZXMsIC4uLm1lc3NhZ2VdO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuI2NhY2hlW3RoaXMuI2Vycm9yS2V5XS5kYXRhLm1lc3NhZ2VzLnB1c2gobWVzc2FnZSk7XHJcbiAgICAgIH1cclxuICAgIH0sXHJcbiAgfTtcclxuXHJcbiAgI25vdGlmeVdhcm5pbmcgPSAoYXJnczoge1xyXG4gICAgbWVzc2FnZT86IHN0cmluZyB8IHN0cmluZ1tdLFxyXG4gICAgZGVsYXk/OiBudW1iZXIsXHJcbiAgICB0aXRsZT86IHN0cmluZ1xyXG4gIH0pID0+IHtcclxuICAgIGNvbnN0IHsgbWVzc2FnZSwgZGVsYXksIHRpdGxlIH0gPSBhcmdzO1xyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkobWVzc2FnZSkpIHtcclxuICAgICAgdGhpcy4jYnVpbGRUb2FzdE11bHRpTWVzc3NhZ2UoJ3dhcm5pbmcnLCBtZXNzYWdlLCBkZWxheSwgdGl0bGUpO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIGNvbnN0IGNvbnRlbnQgPSBtZXNzYWdlIHx8IHRoaXMudHJhbnNsYXRlKCdXYXJuaW5nJyk7XHJcbiAgICAgIHRoaXMudG9hc3RyLndhcm5pbmcoY29udGVudCwgdGl0bGUsIHtcclxuICAgICAgICBlbmFibGVIdG1sOiB0cnVlLFxyXG4gICAgICAgIHRpbWVPdXQ6IGRlbGF5IHx8IDMwMDAsXHJcbiAgICAgICAgY2xvc2VCdXR0b246IHRydWUsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI25vdGlmeUVycm9yID0gKGFyZ3M6IHtcclxuICAgIG1lc3NhZ2U/OiBzdHJpbmcgfCBzdHJpbmdbXSxcclxuICAgIGRlbGF5PzogbnVtYmVyLFxyXG4gICAgdGl0bGU/OiBzdHJpbmdcclxuICB9KSA9PiB7XHJcbiAgICBjb25zdCB7IG1lc3NhZ2UsIGRlbGF5LCB0aXRsZSB9ID0gYXJncztcclxuICAgIGlmIChBcnJheS5pc0FycmF5KG1lc3NhZ2UpKSB7XHJcbiAgICAgIHRoaXMuI2J1aWxkVG9hc3RNdWx0aU1lc3NzYWdlKCdlcnJvcicsIG1lc3NhZ2UsIGRlbGF5LCB0aXRsZSk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgY29uc3QgY29udGVudCA9IG1lc3NhZ2UgfHwgdGhpcy50cmFuc2xhdGUoJ0Vycm9yJyk7XHJcbiAgICAgIHRoaXMudG9hc3RyLmVycm9yKGNvbnRlbnQsIHRpdGxlLCB7XHJcbiAgICAgICAgZW5hYmxlSHRtbDogdHJ1ZSxcclxuICAgICAgICB0aW1lT3V0OiBkZWxheSB8fCAzMDAwLFxyXG4gICAgICAgIGNsb3NlQnV0dG9uOiB0cnVlLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNidWlsZFRvYXN0TXVsdGlNZXNzc2FnZSA9ICh0eXBlOiAnd2FybmluZycgfCAnZXJyb3InLCBtZXNzYWdlczogc3RyaW5nW10sIGRlbGF5PzogbnVtYmVyLCB0aXRsZT86IHN0cmluZykgPT4ge1xyXG4gICAgLyoqIHPhu5EgbMaw4bujbmcgaXRlbSBoaeG7g24gdGjhu4sgbeG6t2MgxJHhu4tuaCAqL1xyXG4gICAgY29uc3Qgc2hvd051bSA9IDI7XHJcbiAgICBjb25zdCBpZCA9IGBzZC1ub3RpZnktY2tiLSR7dXVpZC52NCgpfWA7XHJcbiAgICBjb25zdCBtZXNzYWdlTGVuZ3RoID0gbWVzc2FnZXMubGVuZ3RoO1xyXG4gICAgY29uc3QgbWVzc2FnZVJlc3RzID0gbWVzc2FnZXMuc3BsaWNlKHNob3dOdW0pO1xyXG4gICAgY29uc3QgbWVzc2FnZUNvbnRhaW5lciA9IGA8dWwgY2xhc3M9XCJzZC1ub3RpZnlfX2xpc3RcIj57MH17MX08L3VsPmA7XHJcbiAgICBjb25zdCBtZXNzYWdlVGVtcCA9IGA8bGkgY2xhc3M9XCJzZC1ub3RpZnlfX2l0ZW1cIj4tIHswfTwvbGk+YDtcclxuICAgIGxldCBjb250ZW50UmVzdCA9ICcnO1xyXG4gICAgaWYgKG1lc3NhZ2VSZXN0cz8ubGVuZ3RoKSB7XHJcbiAgICAgIGNvbnRlbnRSZXN0ID0gYDxpbnB1dCBpZD1cIiR7aWR9XCIgY2xhc3M9XCJjZGstdmlzdWFsbHktaGlkZGVuIHNkLW5vdGlmeV9fY2hlY2tib3hcIiB0eXBlPVwiY2hlY2tib3hcIiAvPlxyXG4gICAgICA8bGFiZWwgY2xhc3M9XCJzZC1ub3RpZnlfX3RleHQgc2Qtbm90aWZ5X190ZXh0LS1zaG93IHRleHQtc2Vjb25kYXJ5XCIgZm9yPVwiJHtpZH1cIj4ke3RoaXMudHJhbnNsYXRlKCdTaG93IG1vcmUnKX08L2xhYmVsPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwic2Qtbm90aWZ5X19pdGVtLS1yZXN0XCI+XHJcbiAgICAgICAgJHttZXNzYWdlUmVzdHMubWFwKG0gPT4gU3RyaW5nLmZvcm1hdChtZXNzYWdlVGVtcCwgbSkpLmpvaW4oJycpfVxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGxhYmVsIGNsYXNzPVwic2Qtbm90aWZ5X190ZXh0IHNkLW5vdGlmeV9fdGV4dC0tbGVzcyB0ZXh0LXNlY29uZGFyeVwiIGZvcj1cIiR7aWR9XCI+JHt0aGlzLnRyYW5zbGF0ZSgnU2hvdyBsZXNzJyl9PC9sYWJlbD5gO1xyXG4gICAgfVxyXG4gICAgY29uc3QgY29udGVudCA9IFN0cmluZy5mb3JtYXQobWVzc2FnZUNvbnRhaW5lciwgbWVzc2FnZXMubWFwKG0gPT4gU3RyaW5nLmZvcm1hdChtZXNzYWdlVGVtcCwgbSkpLmpvaW4oJycpLCBjb250ZW50UmVzdCk7XHJcbiAgICBsZXQgdG9hc3Q6IEFjdGl2ZVRvYXN0PGFueT47XHJcbiAgICAvLyBraGkgdHJ1eeG7gW4gbWVzc2FnZSBodG1sIHPhur0gYuG7iyBzYW5pdGl6ZSBuw6puIHBo4bqjaSB0cnV54buBbiBpbm5lckhUTUwga2hpIHRvYXN0IGhp4buHbiBsw6puXHJcbiAgICAvLyBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zY3R0Y3Blci9uZ3gtdG9hc3RyL2Jsb2IvdjEyLjEuMC9zcmMvbGliL3RvYXN0ci90b2FzdHIuc2VydmljZS50cyNMMjcxXHJcbiAgICBzd2l0Y2ggKHR5cGUpIHtcclxuICAgICAgY2FzZSAnZXJyb3InOlxyXG4gICAgICAgIHRvYXN0ID0gdGhpcy50b2FzdHIuZXJyb3IoY29udGVudCwgYCR7dGl0bGUgfHwgdGhpcy50cmFuc2xhdGUoJ0Vycm9yJyl9ICgke21lc3NhZ2VMZW5ndGh9KWAsIHtcclxuICAgICAgICAgIGVuYWJsZUh0bWw6IHRydWUsXHJcbiAgICAgICAgICB0aW1lT3V0OiBkZWxheSB8fCAzMDAwLFxyXG4gICAgICAgICAgbWVzc2FnZUNsYXNzOiBgdG9hc3QtbWVzc2FnZSB0b2FzdC1tZXNzYWdlLSR7aWR9YCxcclxuICAgICAgICAgIGNsb3NlQnV0dG9uOiB0cnVlLFxyXG4gICAgICAgICAgdGFwVG9EaXNtaXNzOiBmYWxzZVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICd3YXJuaW5nJzpcclxuICAgICAgICB0b2FzdCA9IHRoaXMudG9hc3RyLndhcm5pbmcoY29udGVudCwgYCR7dGl0bGUgfHwgdGhpcy50cmFuc2xhdGUoJ1dhcm5pbmcnKX0gKCR7bWVzc2FnZUxlbmd0aH0pYCwge1xyXG4gICAgICAgICAgZW5hYmxlSHRtbDogdHJ1ZSxcclxuICAgICAgICAgIHRpbWVPdXQ6IGRlbGF5IHx8IDMwMDAsXHJcbiAgICAgICAgICBtZXNzYWdlQ2xhc3M6IGB0b2FzdC1tZXNzYWdlIHRvYXN0LW1lc3NhZ2UtJHtpZH1gLFxyXG4gICAgICAgICAgY2xvc2VCdXR0b246IHRydWUsXHJcbiAgICAgICAgICB0YXBUb0Rpc21pc3M6IGZhbHNlXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRvYXN0KSB7XHJcbiAgICAgIHRvYXN0Lm9uU2hvd25cclxuICAgICAgICAucGlwZShcclxuICAgICAgICAgIHRha2VVbnRpbCh0b2FzdC5vbkhpZGRlbilcclxuICAgICAgICApXHJcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBtZXNzYWdlRWxlOiBIVE1MRGl2RWxlbWVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYC50b2FzdC1tZXNzYWdlLSR7aWR9YCk7XHJcbiAgICAgICAgICBtZXNzYWdlRWxlLmlubmVySFRNTCA9IGNvbnRlbnQ7XHJcbiAgICAgICAgfSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGhhbmRsZSA9IHtcclxuICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHR5cGVvZiBlcnIgPT09IFwic3RyaW5nXCIpIHtcclxuICAgICAgICB0aGlzLm5vdGlmeS53YXJuaW5nKGVycik7XHJcbiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGVyciA9PT0gXCJvYmplY3RcIikge1xyXG4gICAgICAgIGxldCBtZXNzYWdlID1cclxuICAgICAgICAgIGVycj8uZXJyb3IgfHxcclxuICAgICAgICAgIGVycj8ubWVzc2FnZSB8fFxyXG4gICAgICAgICAgZXJyPy5FeGNlcHRpb25NZXNzYWdlIHx8XHJcbiAgICAgICAgICBlcnI/Lk1lc3NhZ2UgfHxcclxuICAgICAgICAgIFwiVW5rbm93biBlcnJvclwiO1xyXG4gICAgICAgIGlmICh0eXBlb2YgZXJyLmpzb24gPT09IFwiZnVuY3Rpb25cIikge1xyXG4gICAgICAgICAgZXJyID0gZXJyLmpzb24oKTtcclxuICAgICAgICAgIGlmIChlcnIpIHtcclxuICAgICAgICAgICAgbWVzc2FnZSA9XHJcbiAgICAgICAgICAgICAgZXJyPy5lcnJvciB8fFxyXG4gICAgICAgICAgICAgIGVycj8ubWVzc2FnZSB8fFxyXG4gICAgICAgICAgICAgIGVycj8uRXhjZXB0aW9uTWVzc2FnZSB8fFxyXG4gICAgICAgICAgICAgIGVycj8uTWVzc2FnZSB8fFxyXG4gICAgICAgICAgICAgIFwiVW5rbm93biBlcnJvclwiO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm5vdGlmeS53YXJuaW5nKG1lc3NhZ2UpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMubm90aWZ5Lndhcm5pbmcoXCJVbmtub3duIGVycm9yXCIpO1xyXG4gICAgICB9XHJcbiAgICB9LFxyXG4gIH07XHJcblxyXG4gIGNvbmZpcm0gPSAoXHJcbiAgICBtZXNzYWdlOiBzdHJpbmcsXHJcbiAgICBvcHRpb246IHtcclxuICAgICAgdGl0bGU/OiBzdHJpbmc7XHJcbiAgICAgIHllc1RpdGxlPzogc3RyaW5nO1xyXG4gICAgICBub1RpdGxlPzogc3RyaW5nO1xyXG4gICAgICB5ZXNCdXR0b25Db2xvcj86IHN0cmluZztcclxuICAgICAgbm9CdXR0b25Db2xvcj86IHN0cmluZztcclxuICAgIH0gPSB7fVxyXG4gICkgPT4ge1xyXG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihEaWFsb2dDb25maXJtQ29tcG9uZW50LCB7XHJcbiAgICAgIHdpZHRoOiBcIjQwMHB4XCIsXHJcbiAgICAgIGRhdGE6IHtcclxuICAgICAgICB0aXRsZTogb3B0aW9uPy50aXRsZSB8fCB0aGlzLnRyYW5zbGF0ZShcIkNvbmZpcm1cIiksXHJcbiAgICAgICAgbWVzc2FnZSxcclxuICAgICAgICB5ZXNUaXRsZTogb3B0aW9uPy55ZXNUaXRsZSB8fCB0aGlzLnRyYW5zbGF0ZShcIlllc1wiKSxcclxuICAgICAgICBub1RpdGxlOiBvcHRpb24/Lm5vVGl0bGUgfHwgdGhpcy50cmFuc2xhdGUoXCJOb1wiKSxcclxuICAgICAgICBub0J1dHRvbkNvbG9yOiBvcHRpb24/Lm5vQnV0dG9uQ29sb3IgfHwgXCJzZWNvbmRhcnlcIixcclxuICAgICAgICB5ZXNCdXR0b25Db2xvcjogb3B0aW9uPy55ZXNCdXR0b25Db2xvciB8fCBcInByaW1hcnlcIixcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKChyZXN1bHQpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICBpZiAocmVzdWx0ID09PSBcIkFDQ0VQVFwiKSB7XHJcbiAgICAgICAgICAgIHJlc29sdmUobnVsbCk7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKHJlc3VsdCA9PT0gXCJDQU5DRUxcIikge1xyXG4gICAgICAgICAgICByZWplY3QocmVzdWx0KTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJlc29sdmUobnVsbCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH07XHJcblxyXG4gIGNvbmZpcm1EZWxldGUgPSAoKSA9PiB0aGlzLmNvbmZpcm0odGhpcy50cmFuc2xhdGUoXCJEZWxldGUgcmVjb3JkKHMpXCIpKTtcclxuXHJcbiAgY29uZmlybUFwcHJvdmUgPSAoKSA9PiB0aGlzLmNvbmZpcm0odGhpcy50cmFuc2xhdGUoXCJBcHByb3ZlIHJlY29yZChzKVwiKSk7XHJcblxyXG4gIGNvbmZpcm1XaXRoSW5wdXQgPSAoXHJcbiAgICB0aXRsZTogc3RyaW5nLFxyXG4gICAgb3B0aW9uOiB7XHJcbiAgICAgIG1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgICAgIHllc1RpdGxlPzogc3RyaW5nO1xyXG4gICAgICBub1RpdGxlPzogc3RyaW5nO1xyXG4gICAgICByZXF1aXJlZD86IGJvb2xlYW47XHJcbiAgICAgIG1heGxlbmd0aD86IG51bWJlcjtcclxuICAgICAgeWVzQnV0dG9uQ29sb3I/OiBzdHJpbmc7XHJcbiAgICAgIG5vQnV0dG9uQ29sb3I/OiBzdHJpbmc7XHJcbiAgICAgIGRlZmF1bHRWYWx1ZT86IHN0cmluZztcclxuICAgIH0gPSB7fVxyXG4gICk6IFByb21pc2U8c3RyaW5nPiA9PiB7XHJcbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKERpYWxvZ0NvbmZpcm1Db21wb25lbnQsIHtcclxuICAgICAgd2lkdGg6IFwiNDAwcHhcIixcclxuICAgICAgZGF0YToge1xyXG4gICAgICAgIHRpdGxlOiB0aXRsZSB8fCB0aGlzLnRyYW5zbGF0ZShcIkNvbmZpcm1cIiksXHJcbiAgICAgICAgbWVzc2FnZTogb3B0aW9uPy5tZXNzYWdlLFxyXG4gICAgICAgIHllc1RpdGxlOiBvcHRpb24/Lnllc1RpdGxlIHx8IHRoaXMudHJhbnNsYXRlKFwiWWVzXCIpLFxyXG4gICAgICAgIG5vVGl0bGU6IG9wdGlvbj8ubm9UaXRsZSB8fCB0aGlzLnRyYW5zbGF0ZShcIk5vXCIpLFxyXG4gICAgICAgIG5vQnV0dG9uQ29sb3I6IG9wdGlvbj8ubm9CdXR0b25Db2xvciB8fCBcInNlY29uZGFyeVwiLFxyXG4gICAgICAgIHllc0J1dHRvbkNvbG9yOiBvcHRpb24/Lnllc0J1dHRvbkNvbG9yIHx8IFwicHJpbWFyeVwiLFxyXG4gICAgICAgIGlucHV0OiB7XHJcbiAgICAgICAgICBtYXhsZW5ndGg6IG9wdGlvbj8ubWF4bGVuZ3RoIHx8IDI1NSxcclxuICAgICAgICAgIHJlcXVpcmVkOiBvcHRpb24/LnJlcXVpcmVkLFxyXG4gICAgICAgICAgZGVmYXVsdFZhbHVlOiBvcHRpb24/LmRlZmF1bHRWYWx1ZSB8fCAnJ1xyXG4gICAgICAgIH0sXHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3VsdCkge1xyXG4gICAgICAgICAgaWYgKHJlc3VsdCA9PT0gXCJBQ0NFUFRcIikge1xyXG4gICAgICAgICAgICByZXNvbHZlKHJlc3VsdCk7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKHJlc3VsdCA9PT0gXCJDQU5DRUxcIikge1xyXG4gICAgICAgICAgICByZWplY3QocmVzdWx0KTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJlc29sdmUocmVzdWx0KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfTtcclxuXHJcbiAgcHJpdmF0ZSB0cmFuc2xhdGUgPSAodmFsdWU6IHN0cmluZyk6IHN0cmluZyA9PiB7XHJcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnRyYW5zbGF0ZSh2YWx1ZSk7XHJcbiAgfTtcclxufVxyXG4iXX0=
|
|
@@ -112,6 +112,9 @@ export class SdUtilityService {
|
|
|
112
112
|
link.click();
|
|
113
113
|
document.body.removeChild(link);
|
|
114
114
|
};
|
|
115
|
+
this.copyToClipboard = (text) => {
|
|
116
|
+
navigator.clipboard.writeText(text);
|
|
117
|
+
};
|
|
115
118
|
}
|
|
116
119
|
}
|
|
117
120
|
_uploadId = new WeakMap(), _translate = new WeakMap();
|
|
@@ -122,4 +125,4 @@ SdUtilityService.decorators = [
|
|
|
122
125
|
},] }
|
|
123
126
|
];
|
|
124
127
|
SdUtilityService.ctorParameters = () => [];
|
|
125
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbGl0eS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNS9EZXNrdG9wL1dvcmtpbmcvMU1HL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvdXRpbGl0eS8iLCJzb3VyY2VzIjpbInNyYy9saWIvdXRpbGl0eS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUM7QUFDdEIsT0FBTyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQ3ZCLE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDOztBQUs3QixNQUFNLE9BQU8sZ0JBQWdCO0lBRzNCO1FBRkEsb0JBQVksdUNBQXVDLEVBQUM7UUFHcEQscUJBQWEsQ0FBQyxLQUFhLEVBQUUsRUFBRSxDQUFDLEtBQUssRUFBQztRQUV0QyxZQUFPLEdBQUcsQ0FBQyxHQUFXLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUVwQyxrQkFBYSxHQUFHLENBQUksS0FBVSxFQUFFLEdBQVcsRUFBd0IsRUFBRTtZQUNuRSxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDakYsQ0FBQyxDQUFBO1FBRUQseUJBQW9CLEdBQUcsQ0FBQyxLQUFhLEVBQUUsRUFBRTs7WUFDdkMsSUFBSSxHQUFHLFNBQUcsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLFFBQVEscUNBQU0sRUFBRSxDQUFDO1lBQ2xDLEdBQUcsR0FBRyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7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QyxNQUFNLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2lDQUMxQjs2QkFDRjs0QkFDRCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7eUJBQ2Y7cUJBQ0Y7b0JBQUMsT0FBTyxLQUFLLEVBQUU7d0JBQ2QsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO3FCQUNmO2dCQUNILENBQUMsQ0FBQyxDQUFDO2dCQUNILENBQUMsQ0FBQyxJQUFJLHVDQUFjLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMzQyxDQUFDLENBQUMsQ0FBQztZQUNILE9BQU8sT0FBTyxDQUFDO1FBQ2pCLENBQUMsQ0FBQTtRQUVELGFBQVEsR0FBRyxDQUFDLFFBQWdCLEVBQUUsUUFBaUIsRUFBRSxFQUFFO1lBQ2pELE1BQU0sSUFBSSxHQUFRLFFBQVEsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDOUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLFFBQVEsSUFBSSxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUMzQyxJQUFJLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQztZQUNyQixRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNoQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDYixRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQyxDQUFDLENBQUE7SUFwSGUsQ0FBQzs7Ozs7WUFObEIsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgbWQ1IGZyb20gJ21kNSc7XHJcbmltcG9ydCAkIGZyb20gJ2pxdWVyeSc7XHJcbmltcG9ydCAqIGFzIHV1aWQgZnJvbSAndXVpZCc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZFV0aWxpdHlTZXJ2aWNlIHtcclxuICAjdXBsb2FkSWQgPSAnVTFlMDljMWMwLWI2NDctNDM3ZS05OTVlLWQ3YTFhMWI2MDU1MCc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcbiAgI3RyYW5zbGF0ZSA9ICh2YWx1ZTogc3RyaW5nKSA9PiB2YWx1ZTtcclxuXHJcbiAgaGFzaE1ENSA9IChrZXk6IHN0cmluZykgPT4gbWQ1KGtleSk7XHJcblxyXG4gIGFycmF5VG9PYmplY3QgPSA8VD4oaXRlbXM6IFRbXSwga2V5OiBzdHJpbmcpOiB7IFtrZXk6IHN0cmluZ106IFQgfSA9PiB7XHJcbiAgICByZXR1cm4gaXRlbXMucmVkdWNlKChvYmosIGl0ZW0pID0+IHsgb2JqW2l0ZW1ba2V5XV0gPSBpdGVtOyByZXR1cm4gb2JqOyB9LCB7fSk7XHJcbiAgfVxyXG5cclxuICBjaGFuZ2VBbGlhc0xvd2VyQ2FzZSA9IChhbGlhczogc3RyaW5nKSA9PiB7XHJcbiAgICBsZXQgc3RyID0gYWxpYXM/LnRvU3RyaW5nKCkgPz8gJyc7XHJcbiAgICBzdHIgPSBzdHIudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpO1xyXG4gICAgc3RyID0gc3RyLnJlcGxhY2UoL8OgfMOhfOG6oXzhuqN8w6N8w6J84bqnfOG6pXzhuq184bqpfOG6q3zEg3zhurF84bqvfOG6t3zhurN84bq1L2csICdhJyk7XHJcbiAgICBzdHIgPSBzdHIucmVwbGFjZSgvw6h8w6l84bq5fOG6u3zhur18w6p84buBfOG6v3zhu4d84buDfOG7hS9nLCAnZScpO1xyXG4gICAgc3RyID0gc3RyLnJlcGxhY2UoL8OsfMOtfOG7i3zhu4l8xKkvZywgJ2knKTtcclxuICAgIHN0ciA9IHN0ci5yZXBsYWNlKC/DsnzDs3zhu4184buPfMO1fMO0fOG7k3zhu5F84buZfOG7lXzhu5d8xqF84budfOG7m3zhu6N84buffOG7oS9nLCAnbycpO1xyXG4gICAgc3RyID0gc3RyLnJlcGxhY2UoL8O5fMO6fOG7pXzhu6d8xal8xrB84burfOG7qXzhu7F84butfOG7ry9nLCAndScpO1xyXG4gICAgc3RyID0gc3RyLnJlcGxhY2UoL+G7s3zDvXzhu7V84bu3fOG7uS9nLCAneScpO1xyXG4gICAgc3RyID0gc3RyLnJlcGxhY2UoL8SRL2csICdkJyk7XHJcbiAgICBzdHIgPSBzdHIucmVwbGFjZSgvIXxAfCV8XFxefFxcKnxcXCh8XFwpfFxcK3xcXD18XFw8fFxcPnxcXD98XFwvfCx8XFwufFxcOnxcXDt8XFwnfFxcXCJ8XFwmfFxcI3xcXFt8XFxdfH58XFwkfF98YHwtfHt8fXxcXHx8XFxcXC9nLCAnICcpO1xyXG4gICAgc3RyID0gc3RyLnJlcGxhY2UoLyArIC9nLCAnICcpO1xyXG4gICAgc3RyID0gc3RyLnRyaW0oKTtcclxuICAgIHJldHVybiBzdHI7XHJcbiAgfVxyXG5cclxuICB0aW1lRGlmZmVyZW5jZSA9IChwcmV2aW91czogYW55LCBjdXJyZW50OiBhbnkgPSBuZXcgRGF0ZSgpKSA9PiB7XHJcbiAgICBpZiAoIURhdGUuaXNEYXRlKHByZXZpb3VzKSkge1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcbiAgICBpZiAoIURhdGUuaXNEYXRlKGN1cnJlbnQpKSB7XHJcbiAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuICAgIGNvbnN0IGZyb20gPSBuZXcgRGF0ZShwcmV2aW91cyk7XHJcbiAgICBjb25zdCB0byA9IG5ldyBEYXRlKGN1cnJlbnQpO1xyXG4gICAgY29uc3QgbXNQZXJNaW51dGUgPSA2MCAqIDEwMDA7XHJcbiAgICBjb25zdCBtc1BlckhvdXIgPSBtc1Blck1pbnV0ZSAqIDYwO1xyXG4gICAgY29uc3QgbXNQZXJEYXkgPSBtc1BlckhvdXIgKiAyNDtcclxuICAgIGNvbnN0IG1zUGVyTW9udGggPSBtc1BlckRheSAqIDMwO1xyXG4gICAgY29uc3QgbXNQZXJZZWFyID0gbXNQZXJEYXkgKiAzNjU7XHJcbiAgICBjb25zdCBlbGFwc2VkID0gdG8uZ2V0VGltZSgpIC0gZnJvbS5nZXRUaW1lKCk7XHJcblxyXG4gICAgaWYgKGVsYXBzZWQgPCBtc1Blck1pbnV0ZSkge1xyXG4gICAgICByZXR1cm4gYCR7TWF0aC5yb3VuZChlbGFwc2VkIC8gMTAwMCl9ICR7dGhpcy4jdHJhbnNsYXRlKCdzZWNvbmRzIGFnbycpfWA7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGVsYXBzZWQgPCBtc1BlckhvdXIpIHtcclxuICAgICAgcmV0dXJuIGAke01hdGgucm91bmQoZWxhcHNlZCAvIG1zUGVyTWludXRlKX0gJHt0aGlzLiN0cmFuc2xhdGUoJ21pbnV0ZXMgYWdvJyl9YDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoZWxhcHNlZCA8IG1zUGVyRGF5KSB7XHJcbiAgICAgIHJldHVybiBgJHtNYXRoLnJvdW5kKGVsYXBzZWQgLyBtc1BlckhvdXIpfSAke3RoaXMuI3RyYW5zbGF0ZSgnaG91cnMgYWdvJyl9YDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoZWxhcHNlZCA8IG1zUGVyTW9udGgpIHtcclxuICAgICAgcmV0dXJuIGAke01hdGgucm91bmQoZWxhcHNlZCAvIG1zUGVyRGF5KX0gJHt0aGlzLiN0cmFuc2xhdGUoJ2RheXMgYWdvJyl9YDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoZWxhcHNlZCA8IG1zUGVyWWVhcikge1xyXG4gICAgICByZXR1cm4gYCR7TWF0aC5yb3VuZChlbGFwc2VkIC8gbXNQZXJNb250aCl9ICR7dGhpcy4jdHJhbnNsYXRlKCdtb250aHMgYWdvJyl9YDtcclxuICAgIH1cclxuICAgIHJldHVybiBgJHtNYXRoLnJvdW5kKGVsYXBzZWQgLyBtc1BlclllYXIpfSAke3RoaXMuI3RyYW5zbGF0ZSgneWVhcnMgYWdvJyl9YDtcclxuICB9XHJcblxyXG4gIHVwbG9hZCA9IChvcHRpb24/OiB7XHJcbiAgICBleHRlbnNpb25zPzogc3RyaW5nW10sXHJcbiAgICBtYXhTaXplSW5NYj86IG51bWJlcixcclxuICAgIHZhbGlkYXRvcj86IChmaWxlTmFtZTogc3RyaW5nKSA9PiBzdHJpbmdcclxuICB9KTogUHJvbWlzZTxGaWxlPiA9PiB7XHJcbiAgICBjb25zdCBwcm9taXNlID0gbmV3IFByb21pc2U8RmlsZT4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICBpZiAoJChgIyR7dGhpcy4jdXBsb2FkSWR9YCkubGVuZ3RoKSB7XHJcbiAgICAgICAgJCgnYm9keScpLmNoaWxkcmVuKGAjJHt0aGlzLiN1cGxvYWRJZH1gKS5yZW1vdmUoKTtcclxuICAgICAgfVxyXG4gICAgICAkKCdib2R5JykuYXBwZW5kKGA8aW5wdXQgaWQ9XCIke3RoaXMuI3VwbG9hZElkfVwiIHN0eWxlPVwiZGlzcGxheTogbm9uZVwiIHR5cGU9XCJmaWxlXCIgLz5gKTtcclxuICAgICAgJChgIyR7dGhpcy4jdXBsb2FkSWR9YCkub24oJ2NoYW5nZScsIChldnQ6IGFueSkgPT4ge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICBjb25zdCB0YXJnZXQ6IERhdGFUcmFuc2ZlciA9IGV2dC50YXJnZXQ7XHJcbiAgICAgICAgICBjb25zdCBmaWxlID0gdGFyZ2V0LmZpbGVzLml0ZW0oMCk7XHJcbiAgICAgICAgICBpZiAoZmlsZSkge1xyXG4gICAgICAgICAgICBjb25zdCBsYXN0RG90ID0gZmlsZS5uYW1lLmxhc3RJbmRleE9mKCcuJyk7XHJcbiAgICAgICAgICAgIGlmIChsYXN0RG90ID09PSAtMSkge1xyXG4gICAgICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSB0aGlzLiN0cmFuc2xhdGUoYEludmFsaWQgZmlsZSBleHRlbnNpb25gKTtcclxuICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IobWVzc2FnZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgY29uc3QgZXh0ZW5zaW9uID0gZmlsZS5uYW1lLnN1YnN0cmluZyhsYXN0RG90ICsgMSk7XHJcbiAgICAgICAgICAgIGlmIChvcHRpb24pIHtcclxuICAgICAgICAgICAgICBpZiAob3B0aW9uLmV4dGVuc2lvbnM/Lmxlbmd0aCAmJiAhb3B0aW9uLmV4dGVuc2lvbnMuc29tZShlID0+IGUudG9VcHBlckNhc2UoKSA9PT0gZXh0ZW5zaW9uLnRvVXBwZXJDYXNlKCkpKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBtZXNzYWdlID0gYFske2ZpbGUubmFtZX1dICR7dGhpcy4jdHJhbnNsYXRlKCdVcGxvYWRlZCBmaWxlIGlzIG5vdCBtYXRjaCBleHRlbnNpb24nKX0gJHtvcHRpb24uZXh0ZW5zaW9ucy5qb2luKCcsICcpfWA7XHJcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IobWVzc2FnZSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIGlmIChvcHRpb24ubWF4U2l6ZUluTWIgPiAwICYmIG9wdGlvbi5tYXhTaXplSW5NYiAqIDEwMjQgKiAxMDI0IDwgZmlsZS5zaXplKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBtZXNzYWdlID0gYFske2ZpbGUubmFtZX1dICR7dGhpcy4jdHJhbnNsYXRlKCdNYXggZmlsZSBzaXplJyl9ICR7b3B0aW9uLm1heFNpemVJbk1ifSBNYnNgO1xyXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1lc3NhZ2UpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBpZiAob3B0aW9uLnZhbGlkYXRvciAmJiBvcHRpb24udmFsaWRhdG9yKGZpbGUubmFtZSkpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSBvcHRpb24udmFsaWRhdG9yKGZpbGUubmFtZSk7XHJcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IobWVzc2FnZSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJlc29sdmUoZmlsZSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICAgIHJlamVjdChlcnJvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgJChgIyR7dGhpcy4jdXBsb2FkSWR9YCkudHJpZ2dlcignY2xpY2snKTtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIHByb21pc2U7XHJcbiAgfVxyXG5cclxuICBkb3dubG9hZCA9IChmaWxlUGF0aDogc3RyaW5nLCBmaWxlTmFtZT86IHN0cmluZykgPT4ge1xyXG4gICAgY29uc3QgbGluazogYW55ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xyXG4gICAgbGluay5kb3dubG9hZCA9IGAke2ZpbGVOYW1lIHx8IHV1aWQudjQoKX1gO1xyXG4gICAgbGluay5ocmVmID0gZmlsZVBhdGg7XHJcbiAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGxpbmspO1xyXG4gICAgbGluay5jbGljaygpO1xyXG4gICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChsaW5rKTtcclxuICB9XHJcbn1cclxuIl19
|
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbGl0eS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNS9EZXNrdG9wL1dvcmtpbmcvMU1HL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvdXRpbGl0eS8iLCJzb3VyY2VzIjpbInNyYy9saWIvdXRpbGl0eS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUM7QUFDdEIsT0FBTyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQ3ZCLE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDOztBQUs3QixNQUFNLE9BQU8sZ0JBQWdCO0lBRzNCO1FBRkEsb0JBQVksdUNBQXVDLEVBQUM7UUFHcEQscUJBQWEsQ0FBQyxLQUFhLEVBQUUsRUFBRSxDQUFDLEtBQUssRUFBQztRQUV0QyxZQUFPLEdBQUcsQ0FBQyxHQUFXLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUVwQyxrQkFBYSxHQUFHLENBQUksS0FBVSxFQUFFLEdBQVcsRUFBd0IsRUFBRTtZQUNuRSxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDakYsQ0FBQyxDQUFBO1FBRUQseUJBQW9CLEdBQUcsQ0FBQyxLQUFhLEVBQUUsRUFBRTs7WUFDdkMsSUFBSSxHQUFHLFNBQUcsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLFFBQVEscUNBQU0sRUFBRSxDQUFDO1lBQ2xDLEdBQUcsR0FBRyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7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QyxNQUFNLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2lDQUMxQjs2QkFDRjs0QkFDRCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7eUJBQ2Y7cUJBQ0Y7b0JBQUMsT0FBTyxLQUFLLEVBQUU7d0JBQ2QsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO3FCQUNmO2dCQUNILENBQUMsQ0FBQyxDQUFDO2dCQUNILENBQUMsQ0FBQyxJQUFJLHVDQUFjLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMzQyxDQUFDLENBQUMsQ0FBQztZQUNILE9BQU8sT0FBTyxDQUFDO1FBQ2pCLENBQUMsQ0FBQTtRQUVELGFBQVEsR0FBRyxDQUFDLFFBQWdCLEVBQUUsUUFBaUIsRUFBRSxFQUFFO1lBQ2pELE1BQU0sSUFBSSxHQUFRLFFBQVEsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDOUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLFFBQVEsSUFBSSxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUMzQyxJQUFJLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQztZQUNyQixRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNoQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDYixRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQyxDQUFDLENBQUE7UUFFRCxvQkFBZSxHQUFHLENBQUMsSUFBWSxFQUFFLEVBQUU7WUFDakMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEMsQ0FBQyxDQUFBO0lBeEhlLENBQUM7Ozs7O1lBTmxCLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IG1kNSBmcm9tICdtZDUnO1xyXG5pbXBvcnQgJCBmcm9tICdqcXVlcnknO1xyXG5pbXBvcnQgKiBhcyB1dWlkIGZyb20gJ3V1aWQnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU2RVdGlsaXR5U2VydmljZSB7XHJcbiAgI3VwbG9hZElkID0gJ1UxZTA5YzFjMC1iNjQ3LTQzN2UtOTk1ZS1kN2ExYTFiNjA1NTAnO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG4gICN0cmFuc2xhdGUgPSAodmFsdWU6IHN0cmluZykgPT4gdmFsdWU7XHJcblxyXG4gIGhhc2hNRDUgPSAoa2V5OiBzdHJpbmcpID0+IG1kNShrZXkpO1xyXG5cclxuICBhcnJheVRvT2JqZWN0ID0gPFQ+KGl0ZW1zOiBUW10sIGtleTogc3RyaW5nKTogeyBba2V5OiBzdHJpbmddOiBUIH0gPT4ge1xyXG4gICAgcmV0dXJuIGl0ZW1zLnJlZHVjZSgob2JqLCBpdGVtKSA9PiB7IG9ialtpdGVtW2tleV1dID0gaXRlbTsgcmV0dXJuIG9iajsgfSwge30pO1xyXG4gIH1cclxuXHJcbiAgY2hhbmdlQWxpYXNMb3dlckNhc2UgPSAoYWxpYXM6IHN0cmluZykgPT4ge1xyXG4gICAgbGV0IHN0ciA9IGFsaWFzPy50b1N0cmluZygpID8/ICcnO1xyXG4gICAgc3RyID0gc3RyLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKTtcclxuICAgIHN0ciA9IHN0ci5yZXBsYWNlKC/DoHzDoXzhuqF84bqjfMOjfMOifOG6p3zhuqV84bqtfOG6qXzhuqt8xIN84bqxfOG6r3zhurd84bqzfOG6tS9nLCAnYScpO1xyXG4gICAgc3RyID0gc3RyLnJlcGxhY2UoL8OofMOpfOG6uXzhurt84bq9fMOqfOG7gXzhur984buHfOG7g3zhu4UvZywgJ2UnKTtcclxuICAgIHN0ciA9IHN0ci5yZXBsYWNlKC/DrHzDrXzhu4t84buJfMSpL2csICdpJyk7XHJcbiAgICBzdHIgPSBzdHIucmVwbGFjZSgvw7J8w7N84buNfOG7j3zDtXzDtHzhu5N84buRfOG7mXzhu5V84buXfMahfOG7nXzhu5t84bujfOG7n3zhu6EvZywgJ28nKTtcclxuICAgIHN0ciA9IHN0ci5yZXBsYWNlKC/DuXzDunzhu6V84bunfMWpfMawfOG7q3zhu6l84buxfOG7rXzhu68vZywgJ3UnKTtcclxuICAgIHN0ciA9IHN0ci5yZXBsYWNlKC/hu7N8w7184bu1fOG7t3zhu7kvZywgJ3knKTtcclxuICAgIHN0ciA9IHN0ci5yZXBsYWNlKC/EkS9nLCAnZCcpO1xyXG4gICAgc3RyID0gc3RyLnJlcGxhY2UoLyF8QHwlfFxcXnxcXCp8XFwofFxcKXxcXCt8XFw9fFxcPHxcXD58XFw/fFxcL3wsfFxcLnxcXDp8XFw7fFxcJ3xcXFwifFxcJnxcXCN8XFxbfFxcXXx+fFxcJHxffGB8LXx7fH18XFx8fFxcXFwvZywgJyAnKTtcclxuICAgIHN0ciA9IHN0ci5yZXBsYWNlKC8gKyAvZywgJyAnKTtcclxuICAgIHN0ciA9IHN0ci50cmltKCk7XHJcbiAgICByZXR1cm4gc3RyO1xyXG4gIH1cclxuXHJcbiAgdGltZURpZmZlcmVuY2UgPSAocHJldmlvdXM6IGFueSwgY3VycmVudDogYW55ID0gbmV3IERhdGUoKSkgPT4ge1xyXG4gICAgaWYgKCFEYXRlLmlzRGF0ZShwcmV2aW91cykpIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gICAgaWYgKCFEYXRlLmlzRGF0ZShjdXJyZW50KSkge1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcbiAgICBjb25zdCBmcm9tID0gbmV3IERhdGUocHJldmlvdXMpO1xyXG4gICAgY29uc3QgdG8gPSBuZXcgRGF0ZShjdXJyZW50KTtcclxuICAgIGNvbnN0IG1zUGVyTWludXRlID0gNjAgKiAxMDAwO1xyXG4gICAgY29uc3QgbXNQZXJIb3VyID0gbXNQZXJNaW51dGUgKiA2MDtcclxuICAgIGNvbnN0IG1zUGVyRGF5ID0gbXNQZXJIb3VyICogMjQ7XHJcbiAgICBjb25zdCBtc1Blck1vbnRoID0gbXNQZXJEYXkgKiAzMDtcclxuICAgIGNvbnN0IG1zUGVyWWVhciA9IG1zUGVyRGF5ICogMzY1O1xyXG4gICAgY29uc3QgZWxhcHNlZCA9IHRvLmdldFRpbWUoKSAtIGZyb20uZ2V0VGltZSgpO1xyXG5cclxuICAgIGlmIChlbGFwc2VkIDwgbXNQZXJNaW51dGUpIHtcclxuICAgICAgcmV0dXJuIGAke01hdGgucm91bmQoZWxhcHNlZCAvIDEwMDApfSAke3RoaXMuI3RyYW5zbGF0ZSgnc2Vjb25kcyBhZ28nKX1gO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChlbGFwc2VkIDwgbXNQZXJIb3VyKSB7XHJcbiAgICAgIHJldHVybiBgJHtNYXRoLnJvdW5kKGVsYXBzZWQgLyBtc1Blck1pbnV0ZSl9ICR7dGhpcy4jdHJhbnNsYXRlKCdtaW51dGVzIGFnbycpfWA7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGVsYXBzZWQgPCBtc1BlckRheSkge1xyXG4gICAgICByZXR1cm4gYCR7TWF0aC5yb3VuZChlbGFwc2VkIC8gbXNQZXJIb3VyKX0gJHt0aGlzLiN0cmFuc2xhdGUoJ2hvdXJzIGFnbycpfWA7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGVsYXBzZWQgPCBtc1Blck1vbnRoKSB7XHJcbiAgICAgIHJldHVybiBgJHtNYXRoLnJvdW5kKGVsYXBzZWQgLyBtc1BlckRheSl9ICR7dGhpcy4jdHJhbnNsYXRlKCdkYXlzIGFnbycpfWA7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGVsYXBzZWQgPCBtc1BlclllYXIpIHtcclxuICAgICAgcmV0dXJuIGAke01hdGgucm91bmQoZWxhcHNlZCAvIG1zUGVyTW9udGgpfSAke3RoaXMuI3RyYW5zbGF0ZSgnbW9udGhzIGFnbycpfWA7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gYCR7TWF0aC5yb3VuZChlbGFwc2VkIC8gbXNQZXJZZWFyKX0gJHt0aGlzLiN0cmFuc2xhdGUoJ3llYXJzIGFnbycpfWA7XHJcbiAgfVxyXG5cclxuICB1cGxvYWQgPSAob3B0aW9uPzoge1xyXG4gICAgZXh0ZW5zaW9ucz86IHN0cmluZ1tdLFxyXG4gICAgbWF4U2l6ZUluTWI/OiBudW1iZXIsXHJcbiAgICB2YWxpZGF0b3I/OiAoZmlsZU5hbWU6IHN0cmluZykgPT4gc3RyaW5nXHJcbiAgfSk6IFByb21pc2U8RmlsZT4gPT4ge1xyXG4gICAgY29uc3QgcHJvbWlzZSA9IG5ldyBQcm9taXNlPEZpbGU+KChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgaWYgKCQoYCMke3RoaXMuI3VwbG9hZElkfWApLmxlbmd0aCkge1xyXG4gICAgICAgICQoJ2JvZHknKS5jaGlsZHJlbihgIyR7dGhpcy4jdXBsb2FkSWR9YCkucmVtb3ZlKCk7XHJcbiAgICAgIH1cclxuICAgICAgJCgnYm9keScpLmFwcGVuZChgPGlucHV0IGlkPVwiJHt0aGlzLiN1cGxvYWRJZH1cIiBzdHlsZT1cImRpc3BsYXk6IG5vbmVcIiB0eXBlPVwiZmlsZVwiIC8+YCk7XHJcbiAgICAgICQoYCMke3RoaXMuI3VwbG9hZElkfWApLm9uKCdjaGFuZ2UnLCAoZXZ0OiBhbnkpID0+IHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgY29uc3QgdGFyZ2V0OiBEYXRhVHJhbnNmZXIgPSBldnQudGFyZ2V0O1xyXG4gICAgICAgICAgY29uc3QgZmlsZSA9IHRhcmdldC5maWxlcy5pdGVtKDApO1xyXG4gICAgICAgICAgaWYgKGZpbGUpIHtcclxuICAgICAgICAgICAgY29uc3QgbGFzdERvdCA9IGZpbGUubmFtZS5sYXN0SW5kZXhPZignLicpO1xyXG4gICAgICAgICAgICBpZiAobGFzdERvdCA9PT0gLTEpIHtcclxuICAgICAgICAgICAgICBjb25zdCBtZXNzYWdlID0gdGhpcy4jdHJhbnNsYXRlKGBJbnZhbGlkIGZpbGUgZXh0ZW5zaW9uYCk7XHJcbiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1lc3NhZ2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGNvbnN0IGV4dGVuc2lvbiA9IGZpbGUubmFtZS5zdWJzdHJpbmcobGFzdERvdCArIDEpO1xyXG4gICAgICAgICAgICBpZiAob3B0aW9uKSB7XHJcbiAgICAgICAgICAgICAgaWYgKG9wdGlvbi5leHRlbnNpb25zPy5sZW5ndGggJiYgIW9wdGlvbi5leHRlbnNpb25zLnNvbWUoZSA9PiBlLnRvVXBwZXJDYXNlKCkgPT09IGV4dGVuc2lvbi50b1VwcGVyQ2FzZSgpKSkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgbWVzc2FnZSA9IGBbJHtmaWxlLm5hbWV9XSAke3RoaXMuI3RyYW5zbGF0ZSgnVXBsb2FkZWQgZmlsZSBpcyBub3QgbWF0Y2ggZXh0ZW5zaW9uJyl9ICR7b3B0aW9uLmV4dGVuc2lvbnMuam9pbignLCAnKX1gO1xyXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1lc3NhZ2UpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBpZiAob3B0aW9uLm1heFNpemVJbk1iID4gMCAmJiBvcHRpb24ubWF4U2l6ZUluTWIgKiAxMDI0ICogMTAyNCA8IGZpbGUuc2l6ZSkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgbWVzc2FnZSA9IGBbJHtmaWxlLm5hbWV9XSAke3RoaXMuI3RyYW5zbGF0ZSgnTWF4IGZpbGUgc2l6ZScpfSAke29wdGlvbi5tYXhTaXplSW5NYn0gTWJzYDtcclxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgaWYgKG9wdGlvbi52YWxpZGF0b3IgJiYgb3B0aW9uLnZhbGlkYXRvcihmaWxlLm5hbWUpKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBtZXNzYWdlID0gb3B0aW9uLnZhbGlkYXRvcihmaWxlLm5hbWUpO1xyXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1lc3NhZ2UpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXNvbHZlKGZpbGUpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgICByZWplY3QoZXJyb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICAgICQoYCMke3RoaXMuI3VwbG9hZElkfWApLnRyaWdnZXIoJ2NsaWNrJyk7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBwcm9taXNlO1xyXG4gIH1cclxuXHJcbiAgZG93bmxvYWQgPSAoZmlsZVBhdGg6IHN0cmluZywgZmlsZU5hbWU/OiBzdHJpbmcpID0+IHtcclxuICAgIGNvbnN0IGxpbms6IGFueSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTtcclxuICAgIGxpbmsuZG93bmxvYWQgPSBgJHtmaWxlTmFtZSB8fCB1dWlkLnY0KCl9YDtcclxuICAgIGxpbmsuaHJlZiA9IGZpbGVQYXRoO1xyXG4gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsaW5rKTtcclxuICAgIGxpbmsuY2xpY2soKTtcclxuICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQobGluayk7XHJcbiAgfVxyXG5cclxuICBjb3B5VG9DbGlwYm9hcmQgPSAodGV4dDogc3RyaW5nKSA9PiB7XHJcbiAgICBuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dCh0ZXh0KTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -61,9 +61,9 @@ _items = new WeakMap(), _send = new WeakMap(), _load = new WeakMap();
|
|
|
61
61
|
SdComment.decorators = [
|
|
62
62
|
{ type: Component, args: [{
|
|
63
63
|
selector: 'sd-comment',
|
|
64
|
-
template: "<div class=\"c-container\">\r\n <div class=\"c-header\">\r\n <div class=\"c-title\">{{'Comments' | sdTranslate}} <a href=\"javascript:;\">({{count | async}})</a></div>\r\n </div>\r\n <div class=\"c-body\">\r\n <ng-container *ngFor=\"let item of items | async\">\r\n <div class=\"d-flex my-8\">\r\n <div class=\"c-avatar mr-12\">\r\n <img height=\"32\" width=\"32px\" [src]=\"item.picture\">\r\n </div>\r\n <div class=\"c-comment\">\r\n <div class=\"c-info mb-4\">\r\n {{'By' | sdTranslate}}\r\n <span class=\"c-creator ml-2\">\r\n {{item.creator}}\r\n </span>\r\n <ng-container *ngIf=\"item.createdDate\">\r\n <span class=\"mx-4\">\u2022</span>\r\n <span\r\n [matTooltip]=\"item.createdDate | date:'dd/MM/yyyy HH:mm'\">{{item.createdDate | sdTimeDifferent:'dd/MM/yyyy HH:mm':'hour' | async}}</span>\r\n </ng-container>\r\n </div>\r\n <div class=\"c-content\" [innerHtml]=\"item.content\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"c-footer p-16\">\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <ng-container *ngIf=\"commentOption?.editor?.enabled else noUseEditor\">\r\n <div class=\"mb-8\">\r\n <sd-editor [(model)]=\"message\" [styles]=\"commentOption?.editor?.styles\"\r\n [toolbar]=\"commentOption?.editor?.toolbar\"\r\n [urlUploadImage]=\"commentOption?.editor?.urlUploadImage\"\r\n [mentionValues]=\"commentOption?.editor?.mentionValues\"></sd-editor>\r\n </div>\r\n </ng-container>\r\n <ng-template #noUseEditor>\r\n <sd-textarea [(model)]=\"message\" rows=\"1\" autoHeight></sd-textarea>\r\n </ng-template>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <sd-button class=\"float-right\" title=\"G\u1EEDi\" (action)=\"onSend()\" [disabled]=\"!message\" color=\"primary\" type=\"fill\"\r\n size=\"sm\">\r\n </sd-button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
64
|
+
template: "<div class=\"c-container\">\r\n <div class=\"c-header\">\r\n <div class=\"c-title\">{{'Comments' | sdTranslate}} <a href=\"javascript:;\">({{count | async}})</a></div>\r\n </div>\r\n <div class=\"c-body\" *ngIf=\"commentOption?.style==='basic'\">\r\n <ng-container *ngFor=\"let item of items | async\">\r\n <div class=\"d-flex my-8\">\r\n <div class=\"c-avatar mr-12\">\r\n <img height=\"32\" width=\"32px\" [src]=\"item.picture\">\r\n </div>\r\n <div class=\"c-comment\">\r\n <div class=\"c-info mb-4\">\r\n {{'By' | sdTranslate}}\r\n <span class=\"c-creator ml-2\">\r\n {{item.creator}}\r\n </span>\r\n <ng-container *ngIf=\"item.createdDate\">\r\n <span class=\"mx-4\">\u2022</span>\r\n <span\r\n [matTooltip]=\"item.createdDate | date:'dd/MM/yyyy HH:mm'\">{{item.createdDate | sdTimeDifferent:'dd/MM/yyyy HH:mm':'hour' | async}}</span>\r\n </ng-container>\r\n </div>\r\n <div class=\"c-content\" [innerHtml]=\"item.content\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"c-body-style1\" *ngIf=\"commentOption?.style==='style1'\">\r\n <ng-container *ngFor=\"let item of items | async; let i = index\">\r\n <div class=\"d-flex my-8\">\r\n <div class=\"c-avatar mr-12\">\r\n <img height=\"32\" width=\"32px\" [src]=\"item.picture\">\r\n </div>\r\n <div class=\"c-comment {{i + 1 === (count | async) ? 'c-comment-border': ''}}\">\r\n <div class=\"c-info mb-4\">\r\n <div class=\"c-col-left\">\r\n <div class=\"c-creator\">\r\n {{item.creator}}\r\n </div>\r\n <div class=\"c-email\">\r\n {{item.email}}\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"item.createdDate\">\r\n <div class=\"c-col-right\"\r\n [matTooltip]=\"item.createdDate | date:'dd/MM/yyyy H:mm'\">{{item.createdDate | date:'dd/MM/yyyy H:mm'}}</div>\r\n </ng-container>\r\n </div>\r\n <div class=\"c-content\" [innerHtml]=\"item.content\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"c-footer p-16\">\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <ng-container *ngIf=\"commentOption?.editor?.enabled else noUseEditor\">\r\n <div class=\"mb-8\">\r\n <sd-editor [(model)]=\"message\" [styles]=\"commentOption?.editor?.styles\"\r\n [toolbar]=\"commentOption?.editor?.toolbar\"\r\n [urlUploadImage]=\"commentOption?.editor?.urlUploadImage\"\r\n [mentionValues]=\"commentOption?.editor?.mentionValues\"></sd-editor>\r\n </div>\r\n </ng-container>\r\n <ng-template #noUseEditor>\r\n <sd-textarea [(model)]=\"message\" rows=\"1\" autoHeight></sd-textarea>\r\n </ng-template>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <sd-button class=\"float-right\" title=\"G\u1EEDi\" (action)=\"onSend()\" [disabled]=\"!message\" color=\"primary\" type=\"fill\"\r\n size=\"sm\">\r\n </sd-button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
65
65
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
66
|
-
styles: [".text-black400{color:#757575}.c-container{display:flex;flex-direction:column;height:100%}.c-container .c-header{align-items:center;background-color:#fff;display:flex;height:40px;padding:0 16px}.c-container .c-header .c-title{font-weight:500}.c-container .c-body{background:#f8f9fa;flex:1;overflow-y:hidden;padding:16px}.c-container .c-body:hover{overflow-y:auto}.c-container .c-body .c-comment{background:#fff;border:1px solid #f2f2f2;border-radius:4px;flex:1;overflow-wrap:break-word;padding:12px 16px;white-space:pre-wrap;word-break:break-word}.c-container .c-body .c-comment .c-info{color:#757575}.c-container .c-body .c-comment .c-info .c-creator{color:#000;font-weight:500}.c-container .c-footer{background:#fff;min-height:120px}"]
|
|
66
|
+
styles: [".text-black400{color:#757575}.c-container{display:flex;flex-direction:column;height:100%}.c-container .c-header{align-items:center;background-color:#fff;display:flex;height:40px;padding:0 16px}.c-container .c-header .c-title{font-weight:500}.c-container .c-body{background:#f8f9fa;flex:1;overflow-y:hidden;padding:16px}.c-container .c-body:hover{overflow-y:auto}.c-container .c-body .c-comment{background:#fff;border:1px solid #f2f2f2;border-radius:4px;flex:1;overflow-wrap:break-word;padding:12px 16px;white-space:pre-wrap;word-break:break-word}.c-container .c-body .c-comment .c-info{color:#757575}.c-container .c-body .c-comment .c-info .c-creator{color:#000;font-weight:500}.c-container .c-body-style1{background:#fff;flex:1;overflow-y:hidden;padding:16px}.c-container .c-body-style1:hover{overflow-y:auto}.c-container .c-body-style1 .c-comment{background:#fff;border-bottom:3px solid #f2f2f2;border-radius:4px;flex:1;overflow-wrap:break-word;white-space:pre-wrap;word-break:break-word}.c-container .c-body-style1 .c-comment .c-info{color:#757575}.c-container .c-body-style1 .c-comment .c-info .c-creator{color:#000;font-weight:500;white-space:nowrap}.c-container .c-body-style1 .c-comment .c-info .c-email{color:#000;font-weight:400;white-space:nowrap}.c-container .c-body-style1 .c-comment .c-info .c-col-left{display:inline-block;overflow:hidden;vertical-align:top;width:calc(100% - 128px)}.c-container .c-body-style1 .c-comment .c-info .c-col-right{display:inline-block;margin-left:8px;width:120px}.c-container .c-body-style1 .c-comment-border{border-bottom:none}.c-container .c-footer{background:#fff;min-height:120px}"]
|
|
67
67
|
},] }
|
|
68
68
|
];
|
|
69
69
|
SdComment.ctorParameters = () => [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sd-angular-core-comment.js","sources":["../../../../projects/sd-core/comment/src/lib/comment.component.ts","../../../../projects/sd-core/comment/src/lib/comment.module.ts","../../../../projects/sd-core/comment/src/public-api.ts","../../../../projects/sd-core/comment/sd-angular-core-comment.ts"],"sourcesContent":["import {\r\n Component,\r\n AfterViewInit,\r\n OnInit,\r\n OnDestroy,\r\n Input,\r\n ChangeDetectionStrategy,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { SdTextarea } from '@sd-angular/core/textarea';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { map, switchMap } from 'rxjs/operators';\r\nimport { Comment, SdCommentOption } from './comment.model';\r\n\r\n@Component({\r\n selector: 'sd-comment',\r\n templateUrl: './comment.component.html',\r\n styleUrls: ['./comment.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SdComment implements OnInit, AfterViewInit, OnDestroy {\r\n @ViewChild(SdTextarea) textarea: SdTextarea;\r\n #items = new BehaviorSubject<Comment[]>([]);\r\n #send = new BehaviorSubject<string>('');\r\n commentOption: SdCommentOption;\r\n @Input() set option(option: SdCommentOption) {\r\n this.commentOption = option;\r\n this.reload();\r\n };\r\n\r\n items: Observable<Comment[]>;\r\n count: Observable<number>;\r\n message: string;\r\n constructor() {\r\n }\r\n ngOnInit(): void {\r\n this.items = this.#items.pipe(map(items => {\r\n return items.map(e => ({\r\n ...e,\r\n picture: e.picture ?? `https://ui-avatars.com/api/?size=32&rounded=true&background=random&name=${e.creator}`\r\n }))
|
|
1
|
+
{"version":3,"file":"sd-angular-core-comment.js","sources":["../../../../projects/sd-core/comment/src/lib/comment.component.ts","../../../../projects/sd-core/comment/src/lib/comment.module.ts","../../../../projects/sd-core/comment/src/public-api.ts","../../../../projects/sd-core/comment/sd-angular-core-comment.ts"],"sourcesContent":["import {\r\n Component,\r\n AfterViewInit,\r\n OnInit,\r\n OnDestroy,\r\n Input,\r\n ChangeDetectionStrategy,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { SdTextarea } from '@sd-angular/core/textarea';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { map, switchMap } from 'rxjs/operators';\r\nimport { Comment, SdCommentOption } from './comment.model';\r\n\r\n@Component({\r\n selector: 'sd-comment',\r\n templateUrl: './comment.component.html',\r\n styleUrls: ['./comment.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SdComment implements OnInit, AfterViewInit, OnDestroy {\r\n @ViewChild(SdTextarea) textarea: SdTextarea;\r\n #items = new BehaviorSubject<Comment[]>([]);\r\n #send = new BehaviorSubject<string>('');\r\n commentOption: SdCommentOption;\r\n @Input() set option(option: SdCommentOption) {\r\n this.commentOption = option;\r\n this.reload();\r\n };\r\n\r\n items: Observable<Comment[]>;\r\n count: Observable<number>;\r\n message: string;\r\n constructor() {\r\n }\r\n ngOnInit(): void {\r\n this.items = this.#items.pipe(map(items => {\r\n return items.map(e => ({\r\n ...e,\r\n picture: e.picture ?? `https://ui-avatars.com/api/?size=32&rounded=true&background=random&name=${e.creator}`\r\n }));\r\n }));\r\n this.count = this.items.pipe(map(items => items.length));\r\n }\r\n ngOnDestroy(): void {\r\n }\r\n ngAfterViewInit(): void {\r\n }\r\n\r\n onSend = () => {\r\n if (this.message) {\r\n this.commentOption?.event?.onSend(this.message);\r\n this.message = null;\r\n this.textarea?.focus();\r\n }\r\n }\r\n\r\n #load = async () => {\r\n const { items } = this.commentOption;\r\n const results = items();\r\n if (results instanceof Promise) {\r\n return await results;\r\n }\r\n return results;\r\n }\r\n\r\n reload = async () => {\r\n this.#items.next(await this.#load());\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdTranslateModule } from '@sd-angular/core/translate';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { SdComment } from './comment.component';\r\nimport { SdButtonModule } from '@sd-angular/core/button';\r\nimport { SdInputModule } from '@sd-angular/core/input';\r\nimport { SdTextareaModule } from '@sd-angular/core/textarea';\r\nimport { SdUtilityModule } from '@sd-angular/core/utility';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport {SdEditorModule} from '@sd-angular/core/editor';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n MatButtonModule,\r\n MatIconModule,\r\n MatTooltipModule,\r\n SdTranslateModule,\r\n SdButtonModule,\r\n SdInputModule,\r\n SdTextareaModule,\r\n SdEditorModule,\r\n SdUtilityModule,\r\n SdTranslateModule\r\n ],\r\n declarations: [\r\n SdComment\r\n ],\r\n exports: [\r\n SdComment\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdCommentModule { }\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport * from './lib/comment.module';\r\nexport * from './lib/comment.model';\r\nexport * from './lib/comment.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;MAoBa,SAAS;IAapB;QAXA,iBAAS,IAAI,eAAe,CAAY,EAAE,CAAC,EAAC;QAC5C,gBAAQ,IAAI,eAAe,CAAS,EAAE,CAAC,EAAC;QA0BxC,WAAM,GAAG;;YACP,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,YAAA,IAAI,CAAC,aAAa,0CAAE,KAAK,0CAAE,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE;gBAChD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBACpB,MAAA,IAAI,CAAC,QAAQ,0CAAE,KAAK,GAAG;aACxB;SACF,CAAA;QAED,gBAAQ;YACN,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YACrC,MAAM,OAAO,GAAG,KAAK,EAAE,CAAC;YACxB,IAAI,OAAO,YAAY,OAAO,EAAE;gBAC9B,OAAO,MAAM,OAAO,CAAC;aACtB;YACD,OAAO,OAAO,CAAC;SAChB,CAAA,EAAA;QAED,WAAM,GAAG;YACP,qCAAY,IAAI,CAAC,MAAM,yCAAA,IAAI,CAAQ,CAAC,CAAC;SACtC,CAAA,CAAA;KAlCA;IATD,IAAa,MAAM,CAAC,MAAuB;QACzC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC;QAC5B,IAAI,CAAC,MAAM,EAAE,CAAC;KACf;;IAOD,QAAQ;QACN,IAAI,CAAC,KAAK,GAAG,qCAAY,IAAI,CAAC,GAAG,CAAC,KAAK;YACrC,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC;;gBAAI,wCACjB,CAAC,KACJ,OAAO,QAAE,CAAC,CAAC,OAAO,mCAAI,2EAA2E,CAAC,CAAC,OAAO,EAAE,KAC5G;aAAA,CAAC,CAAC;SACL,CAAC,CAAC,CAAC;QACJ,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;KAC1D;IACD,WAAW;KACV;IACD,eAAe;KACd;;;;YAjCF,SAAS,SAAC;gBACT,QAAQ,EAAE,YAAY;gBACtB,u4GAAuC;gBAEvC,eAAe,EAAE,uBAAuB,CAAC,MAAM;;aAChD;;;;uBAEE,SAAS,SAAC,UAAU;qBAIpB,KAAK;;;MCWK,eAAe;;;YAvB3B,QAAQ,SAAC;gBACR,OAAO,EAAE;oBACP,YAAY;oBACZ,eAAe;oBACf,aAAa;oBACb,gBAAgB;oBAChB,iBAAiB;oBACjB,cAAc;oBACd,aAAa;oBACb,gBAAgB;oBAChB,cAAc;oBACd,eAAe;oBACf,iBAAiB;iBAClB;gBACD,YAAY,EAAE;oBACZ,SAAS;iBACV;gBACD,OAAO,EAAE;oBACP,SAAS;iBACV;gBACD,SAAS,EAAE,EACV;aACF;;;ACnCD;;;;ACAA;;;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import '@sd-angular/core/common';
|
|
1
|
+
import { SdCommonModule } from '@sd-angular/core/common';
|
|
2
2
|
import { NgModule } from '@angular/core';
|
|
3
3
|
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
4
4
|
import { SdAutocompleteModule } from '@sd-angular/core/autocomplete';
|
|
@@ -32,6 +32,7 @@ SdFormModule.decorators = [
|
|
|
32
32
|
imports: [
|
|
33
33
|
FormsModule,
|
|
34
34
|
ReactiveFormsModule,
|
|
35
|
+
SdCommonModule,
|
|
35
36
|
SdModalModule,
|
|
36
37
|
SdSideDrawerModule,
|
|
37
38
|
SdLabelModule,
|
|
@@ -61,6 +62,7 @@ SdFormModule.decorators = [
|
|
|
61
62
|
exports: [
|
|
62
63
|
FormsModule,
|
|
63
64
|
ReactiveFormsModule,
|
|
65
|
+
SdCommonModule,
|
|
64
66
|
SdModalModule,
|
|
65
67
|
SdSideDrawerModule,
|
|
66
68
|
SdLabelModule,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sd-angular-core-form.js","sources":["../../../../projects/sd-core/form/src/lib/form.module.ts","../../../../projects/sd-core/form/sd-angular-core-form.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { SdAutocompleteModule } from '@sd-angular/core/autocomplete';\r\nimport { SdButtonModule } from '@sd-angular/core/button';\r\nimport { SdDateRangeModule } from '@sd-angular/core/date-range';\r\nimport { SdDateTimeModule } from '@sd-angular/core/date-time';\r\nimport { SdEditorModule } from '@sd-angular/core/editor';\r\nimport { SdInputModule } from '@sd-angular/core/input';\r\nimport { SdInputCurrencyModule } from '@sd-angular/core/input-currency';\r\nimport { SdModalModule } from '@sd-angular/core/modal';\r\nimport { SdRadioModule } from '@sd-angular/core/radio';\r\nimport { SdSelectModule } from '@sd-angular/core/select';\r\nimport { SdSelectEditorModule } from '@sd-angular/core/select-editor';\r\nimport { SdSwitchModule } from '@sd-angular/core/switch';\r\nimport { SdUploadFileModule } from '@sd-angular/core/upload-file';\r\nimport { SdChipModule } from '@sd-angular/core/chip';\r\nimport { SdTextareaModule } from '@sd-angular/core/textarea';\r\nimport { SdUtilityModule } from '@sd-angular/core/utility';\r\nimport { SdCheckboxModule } from '@sd-angular/core/checkbox';\r\nimport { SdLabelModule } from '@sd-angular/core/label';\r\nimport { SdTimeModule } from '@sd-angular/core/time';\r\nimport { SdSideDrawerModule } from '@sd-angular/core/side-drawer';\r\nimport { SdQuickActionModule } from '@sd-angular/core/quick-action';\r\nimport { SdBadgeModule } from '@sd-angular/core/badge';\r\nimport { SdModalResizableModule } from '@sd-angular/core/modal-resizable';\r\n\r\n@NgModule({\r\n imports: [\r\n FormsModule,\r\n ReactiveFormsModule,\r\n SdModalModule,\r\n SdSideDrawerModule,\r\n SdLabelModule,\r\n SdUploadFileModule,\r\n SdDateRangeModule,\r\n SdDateTimeModule,\r\n SdTimeModule,\r\n SdButtonModule,\r\n SdAutocompleteModule,\r\n SdInputModule,\r\n SdInputCurrencyModule,\r\n SdSelectModule,\r\n SdSelectEditorModule,\r\n SdEditorModule,\r\n SdSwitchModule,\r\n SdRadioModule,\r\n SdChipModule,\r\n SdTextareaModule,\r\n SdCheckboxModule,\r\n SdUtilityModule,\r\n SdQuickActionModule,\r\n SdBadgeModule,\r\n SdModalResizableModule\r\n ],\r\n declarations: [\r\n ],\r\n providers: [\r\n ],\r\n exports: [\r\n FormsModule,\r\n ReactiveFormsModule,\r\n SdModalModule,\r\n SdSideDrawerModule,\r\n SdLabelModule,\r\n SdUploadFileModule,\r\n SdDateRangeModule,\r\n SdDateTimeModule,\r\n SdTimeModule,\r\n SdButtonModule,\r\n SdAutocompleteModule,\r\n SdInputModule,\r\n SdInputCurrencyModule,\r\n SdSelectModule,\r\n SdSelectEditorModule,\r\n SdEditorModule,\r\n SdSwitchModule,\r\n SdRadioModule,\r\n SdChipModule,\r\n SdTextareaModule,\r\n SdCheckboxModule,\r\n SdUtilityModule,\r\n SdQuickActionModule,\r\n SdBadgeModule,\r\n SdModalResizableModule\r\n ]\r\n})\r\nexport class SdFormModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"sd-angular-core-form.js","sources":["../../../../projects/sd-core/form/src/lib/form.module.ts","../../../../projects/sd-core/form/sd-angular-core-form.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { SdAutocompleteModule } from '@sd-angular/core/autocomplete';\r\nimport { SdButtonModule } from '@sd-angular/core/button';\r\nimport { SdDateRangeModule } from '@sd-angular/core/date-range';\r\nimport { SdDateTimeModule } from '@sd-angular/core/date-time';\r\nimport { SdEditorModule } from '@sd-angular/core/editor';\r\nimport { SdInputModule } from '@sd-angular/core/input';\r\nimport { SdInputCurrencyModule } from '@sd-angular/core/input-currency';\r\nimport { SdModalModule } from '@sd-angular/core/modal';\r\nimport { SdRadioModule } from '@sd-angular/core/radio';\r\nimport { SdSelectModule } from '@sd-angular/core/select';\r\nimport { SdSelectEditorModule } from '@sd-angular/core/select-editor';\r\nimport { SdSwitchModule } from '@sd-angular/core/switch';\r\nimport { SdUploadFileModule } from '@sd-angular/core/upload-file';\r\nimport { SdChipModule } from '@sd-angular/core/chip';\r\nimport { SdTextareaModule } from '@sd-angular/core/textarea';\r\nimport { SdUtilityModule } from '@sd-angular/core/utility';\r\nimport { SdCheckboxModule } from '@sd-angular/core/checkbox';\r\nimport { SdLabelModule } from '@sd-angular/core/label';\r\nimport { SdTimeModule } from '@sd-angular/core/time';\r\nimport { SdSideDrawerModule } from '@sd-angular/core/side-drawer';\r\nimport { SdQuickActionModule } from '@sd-angular/core/quick-action';\r\nimport { SdBadgeModule } from '@sd-angular/core/badge';\r\nimport { SdModalResizableModule } from '@sd-angular/core/modal-resizable';\r\nimport { SdCommonModule } from '@sd-angular/core/common';\r\n\r\n@NgModule({\r\n imports: [\r\n FormsModule,\r\n ReactiveFormsModule,\r\n SdCommonModule,\r\n SdModalModule,\r\n SdSideDrawerModule,\r\n SdLabelModule,\r\n SdUploadFileModule,\r\n SdDateRangeModule,\r\n SdDateTimeModule,\r\n SdTimeModule,\r\n SdButtonModule,\r\n SdAutocompleteModule,\r\n SdInputModule,\r\n SdInputCurrencyModule,\r\n SdSelectModule,\r\n SdSelectEditorModule,\r\n SdEditorModule,\r\n SdSwitchModule,\r\n SdRadioModule,\r\n SdChipModule,\r\n SdTextareaModule,\r\n SdCheckboxModule,\r\n SdUtilityModule,\r\n SdQuickActionModule,\r\n SdBadgeModule,\r\n SdModalResizableModule\r\n ],\r\n declarations: [\r\n ],\r\n providers: [\r\n ],\r\n exports: [\r\n FormsModule,\r\n ReactiveFormsModule,\r\n SdCommonModule,\r\n SdModalModule,\r\n SdSideDrawerModule,\r\n SdLabelModule,\r\n SdUploadFileModule,\r\n SdDateRangeModule,\r\n SdDateTimeModule,\r\n SdTimeModule,\r\n SdButtonModule,\r\n SdAutocompleteModule,\r\n SdInputModule,\r\n SdInputCurrencyModule,\r\n SdSelectModule,\r\n SdSelectEditorModule,\r\n SdEditorModule,\r\n SdSwitchModule,\r\n SdRadioModule,\r\n SdChipModule,\r\n SdTextareaModule,\r\n SdCheckboxModule,\r\n SdUtilityModule,\r\n SdQuickActionModule,\r\n SdBadgeModule,\r\n SdModalResizableModule\r\n ]\r\n})\r\nexport class SdFormModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;MAyFa,YAAY;;;YA9DxB,QAAQ,SAAC;gBACR,OAAO,EAAE;oBACP,WAAW;oBACX,mBAAmB;oBACnB,cAAc;oBACd,aAAa;oBACb,kBAAkB;oBAClB,aAAa;oBACb,kBAAkB;oBAClB,iBAAiB;oBACjB,gBAAgB;oBAChB,YAAY;oBACZ,cAAc;oBACd,oBAAoB;oBACpB,aAAa;oBACb,qBAAqB;oBACrB,cAAc;oBACd,oBAAoB;oBACpB,cAAc;oBACd,cAAc;oBACd,aAAa;oBACb,YAAY;oBACZ,gBAAgB;oBAChB,gBAAgB;oBAChB,eAAe;oBACf,mBAAmB;oBACnB,aAAa;oBACb,sBAAsB;iBACvB;gBACD,YAAY,EAAE,EACb;gBACD,SAAS,EAAE,EACV;gBACD,OAAO,EAAE;oBACP,WAAW;oBACX,mBAAmB;oBACnB,cAAc;oBACd,aAAa;oBACb,kBAAkB;oBAClB,aAAa;oBACb,kBAAkB;oBAClB,iBAAiB;oBACjB,gBAAgB;oBAChB,YAAY;oBACZ,cAAc;oBACd,oBAAoB;oBACpB,aAAa;oBACb,qBAAqB;oBACrB,cAAc;oBACd,oBAAoB;oBACpB,cAAc;oBACd,cAAc;oBACd,aAAa;oBACb,YAAY;oBACZ,gBAAgB;oBAChB,gBAAgB;oBAChB,eAAe;oBACf,mBAAmB;oBACnB,aAAa;oBACb,sBAAsB;iBACvB;aACF;;;ACxFD;;;;;;"}
|