ng-smn-ui 4.2.11 → 4.2.13
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/bundles/ng-smn-ui.umd.js +18 -3
- package/bundles/ng-smn-ui.umd.js.map +1 -1
- package/bundles/ng-smn-ui.umd.min.js +1 -1
- package/bundles/ng-smn-ui.umd.min.js.map +1 -1
- package/esm2015/lib/utils/masks/cnpj-novo/mask-cnpj-novo.directive.js +18 -4
- package/esm5/lib/utils/masks/cnpj-novo/mask-cnpj-novo.directive.js +19 -4
- package/fesm2015/ng-smn-ui.js +17 -3
- package/fesm2015/ng-smn-ui.js.map +1 -1
- package/fesm5/ng-smn-ui.js +18 -3
- package/fesm5/ng-smn-ui.js.map +1 -1
- package/ng-smn-ui.metadata.json +1 -1
- package/package.json +1 -1
|
@@ -31,7 +31,14 @@ let UiMaskCnpjNovoDirective = UiMaskCnpjNovoDirective_1 = class UiMaskCnpjNovoDi
|
|
|
31
31
|
const value = this.ngModel.toString().toUpperCase();
|
|
32
32
|
const cleanValue = value.replace(/[^0-9A-Z]+/g, '');
|
|
33
33
|
const isNumericOnly = /^[0-9]*$/.test(cleanValue);
|
|
34
|
-
|
|
34
|
+
const paddedValue = isNumericOnly ? cleanValue.padStart(14, '0') : cleanValue;
|
|
35
|
+
if (paddedValue !== cleanValue) {
|
|
36
|
+
this.ngModel = paddedValue;
|
|
37
|
+
setTimeout(() => this.ngModelChange.emit(this.ngModel));
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
this.ngModel = paddedValue;
|
|
41
|
+
}
|
|
35
42
|
}
|
|
36
43
|
else {
|
|
37
44
|
this.ngModel = '';
|
|
@@ -66,8 +73,15 @@ let UiMaskCnpjNovoDirective = UiMaskCnpjNovoDirective_1 = class UiMaskCnpjNovoDi
|
|
|
66
73
|
return { parse: true };
|
|
67
74
|
}
|
|
68
75
|
}
|
|
69
|
-
if (this.uiMaskCnpjNovo === true && control.value
|
|
70
|
-
|
|
76
|
+
if (this.uiMaskCnpjNovo === true && control.value) {
|
|
77
|
+
let value = control.value.toString().toUpperCase().replace(/[^0-9A-Z]+/g, '');
|
|
78
|
+
const isNumericOnly = /^[0-9]*$/.test(value);
|
|
79
|
+
if (isNumericOnly) {
|
|
80
|
+
value = value.padStart(14, '0');
|
|
81
|
+
}
|
|
82
|
+
if (!this.cnpjIsValid(value)) {
|
|
83
|
+
return { parse: true };
|
|
84
|
+
}
|
|
71
85
|
}
|
|
72
86
|
this.input = false;
|
|
73
87
|
return null;
|
|
@@ -215,4 +229,4 @@ UiMaskCnpjNovoDirective = UiMaskCnpjNovoDirective_1 = __decorate([
|
|
|
215
229
|
__metadata("design:paramtypes", [ElementRef, UiCnpjNovoPipe])
|
|
216
230
|
], UiMaskCnpjNovoDirective);
|
|
217
231
|
export { UiMaskCnpjNovoDirective };
|
|
218
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFzay1jbnBqLW5vdm8uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmctc21uLXVpLyIsInNvdXJjZXMiOlsibGliL3V0aWxzL21hc2tzL2NucGotbm92by9tYXNrLWNucGotbm92by5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQ0gsYUFBYSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFDOUYsTUFBTSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBcUMsYUFBYSxFQUFFLGlCQUFpQixFQUFhLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEgsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQWM3RCxJQUFhLHVCQUF1QiwrQkFBcEMsTUFBYSx1QkFBdUI7SUFjaEMsWUFBbUIsVUFBc0IsRUFBUyxRQUF3QjtRQUF2RCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQVMsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFOMUUscUJBQWdCLEdBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFdkMsZUFBVSxHQUFZLElBQUksQ0FBQztRQUUxQixrQkFBYSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBR2hFLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBTztRQUNmLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFdBQVcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsWUFBWSxLQUFLLElBQUksSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLFlBQVksS0FBSyxTQUFTLENBQUMsRUFBRTtZQUN2SCxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxL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Q3JDLFNBQVMsRUFBRSxDQUFDO2dCQUNSLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMseUJBQXVCLENBQUM7Z0JBQ3RELEtBQUssRUFBRSxJQUFJO2FBQ2QsRUFBRTtnQkFDQyxPQUFPLEVBQUUsYUFBYTtnQkFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx5QkFBdUIsQ0FBQztnQkFDdEQsS0FBSyxFQUFFLElBQUk7YUFDZCxFQUFFLGNBQWMsQ0FBQztLQUNyQixDQUFDO3FDQWVpQyxVQUFVLEVBQW1CLGNBQWM7R0FkakUsdUJBQXVCLENBaU1uQztTQWpNWSx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQWZ0ZXJWaWV3SW5pdCwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uQ2hhbmdlcyxcclxuICAgIE91dHB1dFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgRm9ybUNvbnRyb2wsIE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SLCBWYWxpZGF0b3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFVpQ25wak5vdm9QaXBlIH0gZnJvbSAnLi9jbnBqLW5vdm8ucGlwZSc7XHJcbmltcG9ydCB7IFVpRWxlbWVudCB9IGZyb20gJy4uLy4uL3Byb3ZpZGVycy9lbGVtZW50LnByb3ZpZGVyJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6ICdbdWlNYXNrQ25wak5vdm9dW25nTW9kZWxdJyxcclxuICAgIHByb3ZpZGVyczogW3tcclxuICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBVaU1hc2tDbnBqTm92b0RpcmVjdGl2ZSksXHJcbiAgICAgICAgbXVsdGk6IHRydWVcclxuICAgIH0sIHtcclxuICAgICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxyXG4gICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFVpTWFza0NucGpOb3ZvRGlyZWN0aXZlKSxcclxuICAgICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfSwgVWlDbnBqTm92b1BpcGVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVaU1hc2tDbnBqTm92b0RpcmVjdGl2ZSBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBWYWxpZGF0b3IsIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcyB7XHJcblxyXG4gICAgbG9hZGVkOiBib29sZWFuO1xyXG4gICAgaW5wdXQ6IGJvb2xlYW47XHJcbiAgICBiZWZvcmVTZWxJbmRleDtcclxuICAgIG9uQ2hhbmdlOiBGdW5jdGlvbjtcclxuICAgIG9uVG91Y2hlZDogRnVuY3Rpb247XHJcbiAgICBjb250cm9sOiBGb3JtQ29udHJvbDtcclxuICAgIHN5bWJvbHNQb3NpdGlvbnM6IG51bWJlcltdID0gWzIsIDYsIDEwLCAxNSwgMThdO1xyXG4gICAgQElucHV0KCkgbmdNb2RlbDogYW55O1xyXG4gICAgQElucHV0KCkgcGFkT25QYXN0ZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBASW5wdXQoJ3VpTWFza0NucGpOb3ZvJykgdWlNYXNrQ25wak5vdm87XHJcbiAgICBAT3V0cHV0KCkgbmdNb2RlbENoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIHB1YmxpYyBjbnBqUGlwZTogVWlDbnBqTm92b1BpcGUpIHtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCFjaGFuZ2VzLm5nTW9kZWwuZmlyc3RDaGFuZ2UgJiYgKGNoYW5nZXMubmdNb2RlbC5jdXJyZW50VmFsdWUgPT09IG51bGwgfHwgY2hhbmdlcy5uZ01vZGVsLmN1cnJlbnRWYWx1ZSA9PT0gdW5kZWZpbmVkKSkge1xyXG4gICAgICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZGVkID0gdHJ1ZTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICB3cml0ZVZhbHVlKHJhd1ZhbHVlOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5jb250cm9sICYmIHRoaXMubG9hZGVkICYmIHJhd1ZhbHVlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY29udHJvbC5tYXJrQXNEaXJ0eSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoIXRoaXMuaW5wdXQpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMubmdNb2RlbCkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLm5nTW9kZWwudG9TdHJpbmcoKS50b1VwcGVyQ2FzZSgpO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgY2xlYW5WYWx1ZSA9IHZhbHVlLnJlcGxhY2UoL1teMC05QS1aXSsvZywgJycpO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgaXNOdW1lcmljT25seSA9IC9eWzAtOV0qJC8udGVzdChjbGVhblZhbHVlKTtcclxuICAgICAgICAgICAgICAgIHRoaXMubmdNb2RlbCA9IGlzTnVtZXJpY09ubHkgPyBjbGVhblZhbHVlLnBhZFN0YXJ0KDE0LCAnMCcpIDogY2xlYW5WYWx1ZTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubmdNb2RlbCA9ICcnO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy5jbnBqUGlwZS50cmFuc2Zvcm0odGhpcy5uZ01vZGVsLCB0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5pbnB1dCA9IGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIHJlbmRlclZpYUlucHV0KHJhd1ZhbHVlOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICBpZiAocmF3VmFsdWUpIHtcclxuICAgICAgICAgICAgdGhpcy5jb250cm9sLm1hcmtBc0RpcnR5KCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubmdNb2RlbCA9IHRoaXMuZm9ybWF0KHJhd1ZhbHVlKTtcclxuICAgICAgICB0aGlzLm5nTW9kZWxDaGFuZ2UuZW1pdCh0aGlzLm5nTW9kZWwpO1xyXG4gICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy5jbnBqUGlwZS50cmFuc2Zvcm0odGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUsIHRydWUpO1xyXG4gICAgfVxyXG5cclxuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICAgIH1cclxuXHJcbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICAgIH1cclxuXHJcbiAgICBmb3JtYXQodmFsdWUpIHtcclxuICAgICAgICAvLyBBY2VpdGEgbsO6bWVyb3MgZSBsZXRyYXMgKEEtWiksIG5vcm1hbGl6YSBwYXJhIG1hacO6c2N1bGFzXHJcbiAgICAgICAgdmFsdWUgPSB2YWx1ZS50b1N0cmluZygpLnRvVXBwZXJDYXNlKCkucmVwbGFjZSgvW14wLTlBLVpdKy9nLCAnJyk7XHJcbiAgICAgICAgcmV0dXJuIHZhbHVlLnN1YnN0cmluZygwLCAxNCk7XHJcbiAgICB9XHJcblxyXG4gICAgdmFsaWRhdGUoY29udHJvbDogRm9ybUNvbnRyb2wpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9IHtcclxuXHJcbiAgICAgICAgdGhpcy5jb250cm9sID0gY29udHJvbDtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuaW5wdXQpIHtcclxuICAgICAgICAgICAgaWYgKGNvbnRyb2wudmFsdWUgJiYgdGhpcy5mb3JtYXQoY29udHJvbC52YWx1ZSkubGVuZ3RoIDwgMTQpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB7IHBhcnNlOiB0cnVlIH07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh0aGlzLnVpTWFza0NucGpOb3ZvID09PSB0cnVlICYmIGNvbnRyb2wudmFsdWUgJiYgIXRoaXMuY25waklzVmFsaWQoY29udHJvbC52YWx1ZSkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHsgcGFyc2U6IHRydWUgfTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuaW5wdXQgPSBmYWxzZTtcclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcclxuICAgICAgICBjb25zdCBtZXRob2QgPSBpc0Rpc2FibGVkID8gJ3NldEF0dHJpYnV0ZScgOiAncmVtb3ZlQXR0cmlidXRlJztcclxuICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudFttZXRob2RdKCdkaXNhYmxlZCcsICdkaXNhYmxlZCcpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ29udmVydGUgdW0gY2FyYWN0ZXJlIHBhcmEgc2V1IHZhbG9yIG51bcOpcmljby5cclxuICAgICAqIFVzYSBjw7NkaWdvIEFTQ0lJIC0gNDggcGFyYSB0b2RvcyBvcyBjYXJhY3RlcmVzOlxyXG4gICAgICogLSBEw61naXRvcyAwLTkgcmV0b3JuYW0gMC05XHJcbiAgICAgKiAtIExldHJhcyBBLVogcmV0b3JuYW0gMTctNDIgKEE9MTcsIEI9MTgsIC4uLiwgWj00MilcclxuICAgICAqIFJlZmVyw6puY2lhOiBodHRwczovL3d3dy5nb3YuYnIvcmVjZWl0YWZlZGVyYWwvcHQtYnIvY2VudHJhaXMtZGUtY29udGV1ZG8vcHVibGljYWNvZXMvcGVyZ3VudGFzLWUtcmVzcG9zdGFzL2NucGovY25wai1hbGZhbnVtZXJpY28ucGRmXHJcbiAgICAgKi9cclxuICAgIGNoYXJUb1ZhbHVlKGNoYXI6IHN0cmluZyk6IG51bWJlciB7XHJcbiAgICAgICAgcmV0dXJuIGNoYXIudG9VcHBlckNhc2UoKS5jaGFyQ29kZUF0KDApIC0gNDg7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWYWxpZGEgQ05QSiBhbGZhbnVtw6lyaWNvIGNvbmZvcm1lIGVzcGVjaWZpY2HDp8Ojby5cclxuICAgICAqIFN1cG9ydGEgdGFudG8gQ05QSnMgbnVtw6lyaWNvcyB0cmFkaWNpb25haXMgcXVhbnRvIG9zIG5vdm9zIGFsZmFudW3DqXJpY29zLlxyXG4gICAgICogQSBjb252ZXJzw6NvIHVzYSBBU0NJSSAtIDQ4IHBhcmEgdG9kb3Mgb3MgY2FyYWN0ZXJlcyAoQT0xNywgQj0xOCwgLi4uLCBaPTQyKS5cclxuICAgICAqL1xyXG4gICAgY25waklzVmFsaWQoY25wajogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKCFjbnBqIHx8IGNucGoubGVuZ3RoICE9PSAxNCkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBOb3JtYWxpemEgcGFyYSBtYWnDunNjdWxhc1xyXG4gICAgICAgIGNucGogPSBjbnBqLnRvVXBwZXJDYXNlKCk7XHJcblxyXG4gICAgICAgIC8vIFZlcmlmaWNhIHNlIGNvbnTDqW0gYXBlbmFzIGNhcmFjdGVyZXMgdsOhbGlkb3MgKDAtOSBlIEEtWilcclxuICAgICAgICBpZiAoIS9eWzAtOUEtWl17MTR9JC8udGVzdChjbnBqKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBWZXJpZmljYSBDTlBKcyBjb20gdG9kb3Mgb3MgY2FyYWN0ZXJlcyBpZ3VhaXNcclxuICAgICAgICBpZiAoL14oLilcXDF7MTN9JC8udGVzdChjbnBqKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBiYXNlID0gY25wai5zdWJzdHJpbmcoMCwgMTIpO1xyXG4gICAgICAgIGNvbnN0IGRpZ2l0cyA9IGNucGouc3Vic3RyaW5nKDEyKTtcclxuXHJcbiAgICAgICAgLy8gQ2FsY3VsYSBvIHByaW1laXJvIGTDrWdpdG8gdmVyaWZpY2Fkb3JcclxuICAgICAgICBsZXQgc3VtID0gMDtcclxuICAgICAgICBsZXQgcG9zID0gNTtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDEyOyBpKyspIHtcclxuICAgICAgICAgICAgc3VtICs9IHRoaXMuY2hhclRvVmFsdWUoYmFzZS5jaGFyQXQoaSkpICogcG9zLS07XHJcbiAgICAgICAgICAgIGlmIChwb3MgPCAyKSB7XHJcbiAgICAgICAgICAgICAgICBwb3MgPSA5O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCByZXN1bHQgPSBzdW0gJSAxMSA8IDIgPyAwIDogMTEgLSAoc3VtICUgMTEpO1xyXG4gICAgICAgIGlmIChyZXN1bHQgIT09IHRoaXMuY2hhclRvVmFsdWUoZGlnaXRzLmNoYXJBdCgwKSkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gQ2FsY3VsYSBvIHNlZ3VuZG8gZMOtZ2l0byB2ZXJpZmljYWRvclxyXG4gICAgICAgIGNvbnN0IGJhc2VXaXRoRmlyc3REaWdpdCA9IGJhc2UgKyBkaWdpdHMuY2hhckF0KDApO1xyXG4gICAgICAgIHN1bSA9IDA7XHJcbiAgICAgICAgcG9zID0gNjtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDEzOyBpKyspIHtcclxuICAgICAgICAgICAgc3VtICs9IHRoaXMuY2hhclRvVmFsdWUoYmFzZVdpdGhGaXJzdERpZ2l0LmNoYXJBdChpKSkgKiBwb3MtLTtcclxuICAgICAgICAgICAgaWYgKHBvcyA8IDIpIHtcclxuICAgICAgICAgICAgICAgIHBvcyA9IDk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmVzdWx0ID0gc3VtICUgMTEgPCAyID8gMCA6IDExIC0gKHN1bSAlIDExKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdCA9PT0gdGhpcy5jaGFyVG9WYWx1ZShkaWdpdHMuY2hhckF0KDEpKTtcclxuICAgIH1cclxuXHJcbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duJylcclxuICAgIG9uS2V5ZG93bigpIHtcclxuICAgICAgICB0aGlzLmJlZm9yZVNlbEluZGV4ID0gVWlFbGVtZW50LmNhcmV0UG9zaXRpb24uZ2V0KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcclxuICAgIH1cclxuXHJcbiAgICBASG9zdExpc3RlbmVyKCdpbnB1dCcsIFsnJGV2ZW50J10pXHJcbiAgICBvbklucHV0KCRldmVudCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGFmdGVyU2VsSW5kZXggPSBVaUVsZW1lbnQuY2FyZXRQb3NpdGlvbi5nZXQodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgICAgIGNvbnN0IHJhd1ZhbHVlOiBzdHJpbmcgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWx1ZTtcclxuICAgICAgICB0aGlzLmlucHV0ID0gdGhpcy5mb3JtYXQocmF3VmFsdWUpICE9PSB0aGlzLm5nTW9kZWw7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJWaWFJbnB1dChyYXdWYWx1ZSk7XHJcbiAgICAgICAgVWlFbGVtZW50LmNhcmV0UG9zaXRpb24uc2V0KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCB0aGlzLmJlZm9yZVNlbEluZGV4LCBhZnRlclNlbEluZGV4LCB0aGlzLnN5bWJvbHNQb3NpdGlvbnMpO1xyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ3Bhc3RlJywgWyckZXZlbnQnXSlcclxuICAgIHBhZExlZnQoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLnBhZE9uUGFzdGUpIHtcclxuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuXHJcbiAgICAgICAgICAgIGxldCBkYXRhOiBhbnk7XHJcblxyXG4gICAgICAgICAgICBpZiAod2luZG93WydjbGlwYm9hcmREYXRhJ10pIHtcclxuICAgICAgICAgICAgICAgIGRhdGEgPSB3aW5kb3dbJ2NsaXBib2FyZERhdGEnXTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmIChldmVudC5jbGlwYm9hcmREYXRhICYmIGV2ZW50LmNsaXBib2FyZERhdGEuZ2V0RGF0YSkge1xyXG4gICAgICAgICAgICAgICAgZGF0YSA9IGV2ZW50LmNsaXBib2FyZERhdGE7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC8vIEFjZWl0YSBuw7ptZXJvcyBlIGxldHJhcywgbm9ybWFsaXphIHBhcmEgbWFpw7pzY3VsYXNcclxuICAgICAgICAgICAgY29uc3QgdGV4dCA9IGRhdGEuZ2V0RGF0YSgndGV4dCcpLnRvU3RyaW5nKCkudG9VcHBlckNhc2UoKS5yZXBsYWNlKC9bXjAtOUEtWl0rL2csICcnKTtcclxuICAgICAgICAgICAgLy8gU8OzIGZheiBwYWRTdGFydCBzZSBmb3IgQ05QSiBudW3DqXJpY28gcHVybyAocmV0cm9jb21wYXRpYmlsaWRhZGUpXHJcbiAgICAgICAgICAgIGNvbnN0IGlzTnVtZXJpY09ubHkgPSAvXlswLTldKiQvLnRlc3QodGV4dCk7XHJcbiAgICAgICAgICAgIHRoaXMucmVuZGVyVmlhSW5wdXQoaXNOdW1lcmljT25seSA/IHRleHQucGFkU3RhcnQoMTQsICcwJykgOiB0ZXh0KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
232
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFzay1jbnBqLW5vdm8uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmctc21uLXVpLyIsInNvdXJjZXMiOlsibGliL3V0aWxzL21hc2tzL2NucGotbm92by9tYXNrLWNucGotbm92by5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQ0gsYUFBYSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFDOUYsTUFBTSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBcUMsYUFBYSxFQUFFLGlCQUFpQixFQUFhLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEgsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQWM3RCxJQUFhLHVCQUF1QiwrQkFBcEMsTUFBYSx1QkFBdUI7SUFjaEMsWUFBbUIsVUFBc0IsRUFBUyxRQUF3QjtRQUF2RCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQVMsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFOMUUscUJBQWdCLEdBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFdkMsZUFBVSxHQUFZLElBQUksQ0FBQztRQUUxQixrQkFBYSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBR2hFLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBTztRQUNmLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFdBQVcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsWUFBWSxLQUFLLElBQUksSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLFlBQVksS0FBSyxTQUFTLENBQUMsRUFBRTtZQUN2SCxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxL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QUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdEU7SUFDTCxDQUFDO0NBQ0osQ0FBQTs7WUFqTWtDLFVBQVU7WUFBbUIsY0FBYzs7QUFMakU7SUFBUixLQUFLLEVBQUU7O3dEQUFjO0FBQ2I7SUFBUixLQUFLLEVBQUU7OzJEQUE0QjtBQUNYO0lBQXhCLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQzs7K0RBQWdCO0FBQzlCO0lBQVQsTUFBTSxFQUFFOzhCQUFnQixZQUFZOzhEQUEyQjtBQWtLaEU7SUFEQyxZQUFZLENBQUMsU0FBUyxDQUFDOzs7O3dEQUd2QjtBQUdEO0lBREMsWUFBWSxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDOzs7O3NEQU9qQztBQUdEO0lBREMsWUFBWSxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDOzs7O3NEQW1CakM7QUE5TVEsdUJBQXVCO0lBWm5DLFNBQVMsQ0FBQztRQUNQLFFBQVEsRUFBRSwyQkFBMkI7UUFDckMsU0FBUyxFQUFFLENBQUM7Z0JBQ1IsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx5QkFBdUIsQ0FBQztnQkFDdEQsS0FBSyxFQUFFLElBQUk7YUFDZCxFQUFFO2dCQUNDLE9BQU8sRUFBRSxhQUFhO2dCQUN0QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHlCQUF1QixDQUFDO2dCQUN0RCxLQUFLLEVBQUUsSUFBSTthQUNkLEVBQUUsY0FBYyxDQUFDO0tBQ3JCLENBQUM7cUNBZWlDLFVBQVUsRUFBbUIsY0FBYztHQWRqRSx1QkFBdUIsQ0ErTW5DO1NBL01ZLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBBZnRlclZpZXdJbml0LCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgZm9yd2FyZFJlZiwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25DaGFuZ2VzLFxyXG4gICAgT3V0cHV0XHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBGb3JtQ29udHJvbCwgTkdfVkFMSURBVE9SUywgTkdfVkFMVUVfQUNDRVNTT1IsIFZhbGlkYXRvciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgVWlDbnBqTm92b1BpcGUgfSBmcm9tICcuL2NucGotbm92by5waXBlJztcclxuaW1wb3J0IHsgVWlFbGVtZW50IH0gZnJvbSAnLi4vLi4vcHJvdmlkZXJzL2VsZW1lbnQucHJvdmlkZXInO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogJ1t1aU1hc2tDbnBqTm92b11bbmdNb2RlbF0nLFxyXG4gICAgcHJvdmlkZXJzOiBbe1xyXG4gICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFVpTWFza0NucGpOb3ZvRGlyZWN0aXZlKSxcclxuICAgICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfSwge1xyXG4gICAgICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXHJcbiAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVWlNYXNrQ25wak5vdm9EaXJlY3RpdmUpLFxyXG4gICAgICAgIG11bHRpOiB0cnVlXHJcbiAgICB9LCBVaUNucGpOb3ZvUGlwZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIFVpTWFza0NucGpOb3ZvRGlyZWN0aXZlIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIFZhbGlkYXRvciwgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzIHtcclxuXHJcbiAgICBsb2FkZWQ6IGJvb2xlYW47XHJcbiAgICBpbnB1dDogYm9vbGVhbjtcclxuICAgIGJlZm9yZVNlbEluZGV4O1xyXG4gICAgb25DaGFuZ2U6IEZ1bmN0aW9uO1xyXG4gICAgb25Ub3VjaGVkOiBGdW5jdGlvbjtcclxuICAgIGNvbnRyb2w6IEZvcm1Db250cm9sO1xyXG4gICAgc3ltYm9sc1Bvc2l0aW9uczogbnVtYmVyW10gPSBbMiwgNiwgMTAsIDE1LCAxOF07XHJcbiAgICBASW5wdXQoKSBuZ01vZGVsOiBhbnk7XHJcbiAgICBASW5wdXQoKSBwYWRPblBhc3RlOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgndWlNYXNrQ25wak5vdm8nKSB1aU1hc2tDbnBqTm92bztcclxuICAgIEBPdXRwdXQoKSBuZ01vZGVsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcHVibGljIGNucGpQaXBlOiBVaUNucGpOb3ZvUGlwZSkge1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXMpOiB2b2lkIHtcclxuICAgICAgICBpZiAoIWNoYW5nZXMubmdNb2RlbC5maXJzdENoYW5nZSAmJiAoY2hhbmdlcy5uZ01vZGVsLmN1cnJlbnRWYWx1ZSA9PT0gbnVsbCB8fCBjaGFuZ2VzLm5nTW9kZWwuY3VycmVudFZhbHVlID09PSB1bmRlZmluZWQpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkZWQgPSB0cnVlO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHdyaXRlVmFsdWUocmF3VmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLmNvbnRyb2wgJiYgdGhpcy5sb2FkZWQgJiYgcmF3VmFsdWUpIHtcclxuICAgICAgICAgICAgdGhpcy5jb250cm9sLm1hcmtBc0RpcnR5KCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICghdGhpcy5pbnB1dCkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5uZ01vZGVsKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHRoaXMubmdNb2RlbC50b1N0cmluZygpLnRvVXBwZXJDYXNlKCk7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBjbGVhblZhbHVlID0gdmFsdWUucmVwbGFjZSgvW14wLTlBLVpdKy9nLCAnJyk7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBpc051bWVyaWNPbmx5ID0gL15bMC05XSokLy50ZXN0KGNsZWFuVmFsdWUpO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgcGFkZGVkVmFsdWUgPSBpc051bWVyaWNPbmx5ID8gY2xlYW5WYWx1ZS5wYWRTdGFydCgxNCwgJzAnKSA6IGNsZWFuVmFsdWU7XHJcbiAgICAgICAgICAgICAgICBpZiAocGFkZGVkVmFsdWUgIT09IGNsZWFuVmFsdWUpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm5nTW9kZWwgPSBwYWRkZWRWYWx1ZTtcclxuICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMubmdNb2RlbENoYW5nZS5lbWl0KHRoaXMubmdNb2RlbCkpO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm5nTW9kZWwgPSBwYWRkZWRWYWx1ZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubmdNb2RlbCA9ICcnO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy5jbnBqUGlwZS50cmFuc2Zvcm0odGhpcy5uZ01vZGVsLCB0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5pbnB1dCA9IGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIHJlbmRlclZpYUlucHV0KHJhd1ZhbHVlOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICBpZiAocmF3VmFsdWUpIHtcclxuICAgICAgICAgICAgdGhpcy5jb250cm9sLm1hcmtBc0RpcnR5KCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLm5nTW9kZWwgPSB0aGlzLmZvcm1hdChyYXdWYWx1ZSk7XHJcbiAgICAgICAgdGhpcy5uZ01vZGVsQ2hhbmdlLmVtaXQodGhpcy5uZ01vZGVsKTtcclxuICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWx1ZSA9IHRoaXMuY25walBpcGUudHJhbnNmb3JtKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlLCB0cnVlKTtcclxuICAgIH1cclxuXHJcbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgICB9XHJcblxyXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XHJcbiAgICB9XHJcblxyXG4gICAgZm9ybWF0KHZhbHVlKSB7XHJcbiAgICAgICAgLy8gQWNlaXRhIG7Dum1lcm9zIGUgbGV0cmFzIChBLVopLCBub3JtYWxpemEgcGFyYSBtYWnDunNjdWxhc1xyXG4gICAgICAgIHZhbHVlID0gdmFsdWUudG9TdHJpbmcoKS50b1VwcGVyQ2FzZSgpLnJlcGxhY2UoL1teMC05QS1aXSsvZywgJycpO1xyXG4gICAgICAgIHJldHVybiB2YWx1ZS5zdWJzdHJpbmcoMCwgMTQpO1xyXG4gICAgfVxyXG5cclxuICAgIHZhbGlkYXRlKGNvbnRyb2w6IEZvcm1Db250cm9sKTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSB7XHJcblxyXG4gICAgICAgIHRoaXMuY29udHJvbCA9IGNvbnRyb2w7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmlucHV0KSB7XHJcbiAgICAgICAgICAgIGlmIChjb250cm9sLnZhbHVlICYmIHRoaXMuZm9ybWF0KGNvbnRyb2wudmFsdWUpLmxlbmd0aCA8IDE0KSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4geyBwYXJzZTogdHJ1ZSB9O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodGhpcy51aU1hc2tDbnBqTm92byA9PT0gdHJ1ZSAmJiBjb250cm9sLnZhbHVlKSB7XHJcbiAgICAgICAgICAgIGxldCB2YWx1ZSA9IGNvbnRyb2wudmFsdWUudG9TdHJpbmcoKS50b1VwcGVyQ2FzZSgpLnJlcGxhY2UoL1teMC05QS1aXSsvZywgJycpO1xyXG4gICAgICAgICAgICBjb25zdCBpc051bWVyaWNPbmx5ID0gL15bMC05XSokLy50ZXN0KHZhbHVlKTtcclxuICAgICAgICAgICAgaWYgKGlzTnVtZXJpY09ubHkpIHtcclxuICAgICAgICAgICAgICAgIHZhbHVlID0gdmFsdWUucGFkU3RhcnQoMTQsICcwJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYgKCF0aGlzLmNucGpJc1ZhbGlkKHZhbHVlKSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgcGFyc2U6IHRydWUgfTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5pbnB1dCA9IGZhbHNlO1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbikge1xyXG4gICAgICAgIGNvbnN0IG1ldGhvZCA9IGlzRGlzYWJsZWQgPyAnc2V0QXR0cmlidXRlJyA6ICdyZW1vdmVBdHRyaWJ1dGUnO1xyXG4gICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50W21ldGhvZF0oJ2Rpc2FibGVkJywgJ2Rpc2FibGVkJyk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDb252ZXJ0ZSB1bSBjYXJhY3RlcmUgcGFyYSBzZXUgdmFsb3IgbnVtw6lyaWNvLlxyXG4gICAgICogVXNhIGPDs2RpZ28gQVNDSUkgLSA0OCBwYXJhIHRvZG9zIG9zIGNhcmFjdGVyZXM6XHJcbiAgICAgKiAtIETDrWdpdG9zIDAtOSByZXRvcm5hbSAwLTlcclxuICAgICAqIC0gTGV0cmFzIEEtWiByZXRvcm5hbSAxNy00MiAoQT0xNywgQj0xOCwgLi4uLCBaPTQyKVxyXG4gICAgICogUmVmZXLDqm5jaWE6IGh0dHBzOi8vd3d3Lmdvdi5ici9yZWNlaXRhZmVkZXJhbC9wdC1ici9jZW50cmFpcy1kZS1jb250ZXVkby9wdWJsaWNhY29lcy9wZXJndW50YXMtZS1yZXNwb3N0YXMvY25wai9jbnBqLWFsZmFudW1lcmljby5wZGZcclxuICAgICAqL1xyXG4gICAgY2hhclRvVmFsdWUoY2hhcjogc3RyaW5nKTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gY2hhci50b1VwcGVyQ2FzZSgpLmNoYXJDb2RlQXQoMCkgLSA0ODtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZhbGlkYSBDTlBKIGFsZmFudW3DqXJpY28gY29uZm9ybWUgZXNwZWNpZmljYcOnw6NvLlxyXG4gICAgICogU3Vwb3J0YSB0YW50byBDTlBKcyBudW3DqXJpY29zIHRyYWRpY2lvbmFpcyBxdWFudG8gb3Mgbm92b3MgYWxmYW51bcOpcmljb3MuXHJcbiAgICAgKiBBIGNvbnZlcnPDo28gdXNhIEFTQ0lJIC0gNDggcGFyYSB0b2RvcyBvcyBjYXJhY3RlcmVzIChBPTE3LCBCPTE4LCAuLi4sIFo9NDIpLlxyXG4gICAgICovXHJcbiAgICBjbnBqSXNWYWxpZChjbnBqOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoIWNucGogfHwgY25wai5sZW5ndGggIT09IDE0KSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIE5vcm1hbGl6YSBwYXJhIG1hacO6c2N1bGFzXHJcbiAgICAgICAgY25waiA9IGNucGoudG9VcHBlckNhc2UoKTtcclxuXHJcbiAgICAgICAgLy8gVmVyaWZpY2Egc2UgY29udMOpbSBhcGVuYXMgY2FyYWN0ZXJlcyB2w6FsaWRvcyAoMC05IGUgQS1aKVxyXG4gICAgICAgIGlmICghL15bMC05QS1aXXsxNH0kLy50ZXN0KGNucGopKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIFZlcmlmaWNhIENOUEpzIGNvbSB0b2RvcyBvcyBjYXJhY3RlcmVzIGlndWFpc1xyXG4gICAgICAgIGlmICgvXiguKVxcMXsxM30kLy50ZXN0KGNucGopKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IGJhc2UgPSBjbnBqLnN1YnN0cmluZygwLCAxMik7XHJcbiAgICAgICAgY29uc3QgZGlnaXRzID0gY25wai5zdWJzdHJpbmcoMTIpO1xyXG5cclxuICAgICAgICAvLyBDYWxjdWxhIG8gcHJpbWVpcm8gZMOtZ2l0byB2ZXJpZmljYWRvclxyXG4gICAgICAgIGxldCBzdW0gPSAwO1xyXG4gICAgICAgIGxldCBwb3MgPSA1O1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMTI7IGkrKykge1xyXG4gICAgICAgICAgICBzdW0gKz0gdGhpcy5jaGFyVG9WYWx1ZShiYXNlLmNoYXJBdChpKSkgKiBwb3MtLTtcclxuICAgICAgICAgICAgaWYgKHBvcyA8IDIpIHtcclxuICAgICAgICAgICAgICAgIHBvcyA9IDk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgbGV0IHJlc3VsdCA9IHN1bSAlIDExIDwgMiA/IDAgOiAxMSAtIChzdW0gJSAxMSk7XHJcbiAgICAgICAgaWYgKHJlc3VsdCAhPT0gdGhpcy5jaGFyVG9WYWx1ZShkaWdpdHMuY2hhckF0KDApKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBDYWxjdWxhIG8gc2VndW5kbyBkw61naXRvIHZlcmlmaWNhZG9yXHJcbiAgICAgICAgY29uc3QgYmFzZVdpdGhGaXJzdERpZ2l0ID0gYmFzZSArIGRpZ2l0cy5jaGFyQXQoMCk7XHJcbiAgICAgICAgc3VtID0gMDtcclxuICAgICAgICBwb3MgPSA2O1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMTM7IGkrKykge1xyXG4gICAgICAgICAgICBzdW0gKz0gdGhpcy5jaGFyVG9WYWx1ZShiYXNlV2l0aEZpcnN0RGlnaXQuY2hhckF0KGkpKSAqIHBvcy0tO1xyXG4gICAgICAgICAgICBpZiAocG9zIDwgMikge1xyXG4gICAgICAgICAgICAgICAgcG9zID0gOTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXN1bHQgPSBzdW0gJSAxMSA8IDIgPyAwIDogMTEgLSAoc3VtICUgMTEpO1xyXG5cclxuICAgICAgICByZXR1cm4gcmVzdWx0ID09PSB0aGlzLmNoYXJUb1ZhbHVlKGRpZ2l0cy5jaGFyQXQoMSkpO1xyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nKVxyXG4gICAgb25LZXlkb3duKCkge1xyXG4gICAgICAgIHRoaXMuYmVmb3JlU2VsSW5kZXggPSBVaUVsZW1lbnQuY2FyZXRQb3NpdGlvbi5nZXQodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ2lucHV0JywgWyckZXZlbnQnXSlcclxuICAgIG9uSW5wdXQoJGV2ZW50KTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgYWZ0ZXJTZWxJbmRleCA9IFVpRWxlbWVudC5jYXJldFBvc2l0aW9uLmdldCh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XHJcbiAgICAgICAgY29uc3QgcmF3VmFsdWU6IHN0cmluZyA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlO1xyXG4gICAgICAgIHRoaXMuaW5wdXQgPSB0aGlzLmZvcm1hdChyYXdWYWx1ZSkgIT09IHRoaXMubmdNb2RlbDtcclxuICAgICAgICB0aGlzLnJlbmRlclZpYUlucHV0KHJhd1ZhbHVlKTtcclxuICAgICAgICBVaUVsZW1lbnQuY2FyZXRQb3NpdGlvbi5zZXQodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIHRoaXMuYmVmb3JlU2VsSW5kZXgsIGFmdGVyU2VsSW5kZXgsIHRoaXMuc3ltYm9sc1Bvc2l0aW9ucyk7XHJcbiAgICB9XHJcblxyXG4gICAgQEhvc3RMaXN0ZW5lcigncGFzdGUnLCBbJyRldmVudCddKVxyXG4gICAgcGFkTGVmdChldmVudDogYW55KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMucGFkT25QYXN0ZSkge1xyXG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG5cclxuICAgICAgICAgICAgbGV0IGRhdGE6IGFueTtcclxuXHJcbiAgICAgICAgICAgIGlmICh3aW5kb3dbJ2NsaXBib2FyZERhdGEnXSkge1xyXG4gICAgICAgICAgICAgICAgZGF0YSA9IHdpbmRvd1snY2xpcGJvYXJkRGF0YSddO1xyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGV2ZW50LmNsaXBib2FyZERhdGEgJiYgZXZlbnQuY2xpcGJvYXJkRGF0YS5nZXREYXRhKSB7XHJcbiAgICAgICAgICAgICAgICBkYXRhID0gZXZlbnQuY2xpcGJvYXJkRGF0YTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLy8gQWNlaXRhIG7Dum1lcm9zIGUgbGV0cmFzLCBub3JtYWxpemEgcGFyYSBtYWnDunNjdWxhc1xyXG4gICAgICAgICAgICBjb25zdCB0ZXh0ID0gZGF0YS5nZXREYXRhKCd0ZXh0JykudG9TdHJpbmcoKS50b1VwcGVyQ2FzZSgpLnJlcGxhY2UoL1teMC05QS1aXSsvZywgJycpO1xyXG4gICAgICAgICAgICAvLyBTw7MgZmF6IHBhZFN0YXJ0IHNlIGZvciBDTlBKIG51bcOpcmljbyBwdXJvIChyZXRyb2NvbXBhdGliaWxpZGFkZSlcclxuICAgICAgICAgICAgY29uc3QgaXNOdW1lcmljT25seSA9IC9eWzAtOV0qJC8udGVzdCh0ZXh0KTtcclxuICAgICAgICAgICAgdGhpcy5yZW5kZXJWaWFJbnB1dChpc051bWVyaWNPbmx5ID8gdGV4dC5wYWRTdGFydCgxNCwgJzAnKSA6IHRleHQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -24,6 +24,7 @@ var UiMaskCnpjNovoDirective = /** @class */ (function () {
|
|
|
24
24
|
});
|
|
25
25
|
};
|
|
26
26
|
UiMaskCnpjNovoDirective.prototype.writeValue = function (rawValue) {
|
|
27
|
+
var _this = this;
|
|
27
28
|
if (this.control && this.loaded && rawValue) {
|
|
28
29
|
this.control.markAsDirty();
|
|
29
30
|
}
|
|
@@ -32,7 +33,14 @@ var UiMaskCnpjNovoDirective = /** @class */ (function () {
|
|
|
32
33
|
var value = this.ngModel.toString().toUpperCase();
|
|
33
34
|
var cleanValue = value.replace(/[^0-9A-Z]+/g, '');
|
|
34
35
|
var isNumericOnly = /^[0-9]*$/.test(cleanValue);
|
|
35
|
-
|
|
36
|
+
var paddedValue = isNumericOnly ? cleanValue.padStart(14, '0') : cleanValue;
|
|
37
|
+
if (paddedValue !== cleanValue) {
|
|
38
|
+
this.ngModel = paddedValue;
|
|
39
|
+
setTimeout(function () { return _this.ngModelChange.emit(_this.ngModel); });
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
this.ngModel = paddedValue;
|
|
43
|
+
}
|
|
36
44
|
}
|
|
37
45
|
else {
|
|
38
46
|
this.ngModel = '';
|
|
@@ -67,8 +75,15 @@ var UiMaskCnpjNovoDirective = /** @class */ (function () {
|
|
|
67
75
|
return { parse: true };
|
|
68
76
|
}
|
|
69
77
|
}
|
|
70
|
-
if (this.uiMaskCnpjNovo === true && control.value
|
|
71
|
-
|
|
78
|
+
if (this.uiMaskCnpjNovo === true && control.value) {
|
|
79
|
+
var value = control.value.toString().toUpperCase().replace(/[^0-9A-Z]+/g, '');
|
|
80
|
+
var isNumericOnly = /^[0-9]*$/.test(value);
|
|
81
|
+
if (isNumericOnly) {
|
|
82
|
+
value = value.padStart(14, '0');
|
|
83
|
+
}
|
|
84
|
+
if (!this.cnpjIsValid(value)) {
|
|
85
|
+
return { parse: true };
|
|
86
|
+
}
|
|
72
87
|
}
|
|
73
88
|
this.input = false;
|
|
74
89
|
return null;
|
|
@@ -218,4 +233,4 @@ var UiMaskCnpjNovoDirective = /** @class */ (function () {
|
|
|
218
233
|
return UiMaskCnpjNovoDirective;
|
|
219
234
|
}());
|
|
220
235
|
export { UiMaskCnpjNovoDirective };
|
|
221
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFzay1jbnBqLW5vdm8uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmctc21uLXVpLyIsInNvdXJjZXMiOlsibGliL3V0aWxzL21hc2tzL2NucGotbm92by9tYXNrLWNucGotbm92by5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDSCxhQUFhLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUM5RixNQUFNLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFxQyxhQUFhLEVBQUUsaUJBQWlCLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoSCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBYzdEO0lBY0ksaUNBQW1CLFVBQXNCLEVBQVMsUUFBd0I7UUFBdkQsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUFTLGFBQVEsR0FBUixRQUFRLENBQWdCO1FBTjFFLHFCQUFnQixHQUFhLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRXZDLGVBQVUsR0FBWSxJQUFJLENBQUM7UUFFMUIsa0JBQWEsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUdoRSxDQUFDO2dDQWZRLHVCQUF1QjtJQWlCaEMsNkNBQVcsR0FBWCxVQUFZLE9BQU87UUFDZixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFlBQVksS0FBSyxJQUFJLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEtBQUssU0FBUyxDQUFDLEVBQUU7WUFDdkgsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLEVB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Q0FBQzs7OzswREFtQmpDO0lBaE1RLHVCQUF1QjtRQVpuQyxTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsMkJBQTJCO1lBQ3JDLFNBQVMsRUFBRSxDQUFDO29CQUNSLE9BQU8sRUFBRSxpQkFBaUI7b0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsY0FBTSxPQUFBLHlCQUF1QixFQUF2QixDQUF1QixDQUFDO29CQUN0RCxLQUFLLEVBQUUsSUFBSTtpQkFDZCxFQUFFO29CQUNDLE9BQU8sRUFBRSxhQUFhO29CQUN0QixXQUFXLEVBQUUsVUFBVSxDQUFDLGNBQU0sT0FBQSx5QkFBdUIsRUFBdkIsQ0FBdUIsQ0FBQztvQkFDdEQsS0FBSyxFQUFFLElBQUk7aUJBQ2QsRUFBRSxjQUFjLENBQUM7U0FDckIsQ0FBQzt5Q0FlaUMsVUFBVSxFQUFtQixjQUFjO09BZGpFLHVCQUF1QixDQWlNbkM7SUFBRCw4QkFBQztDQUFBLEFBak1ELElBaU1DO1NBak1ZLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBBZnRlclZpZXdJbml0LCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgZm9yd2FyZFJlZiwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25DaGFuZ2VzLFxyXG4gICAgT3V0cHV0XHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBGb3JtQ29udHJvbCwgTkdfVkFMSURBVE9SUywgTkdfVkFMVUVfQUNDRVNTT1IsIFZhbGlkYXRvciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgVWlDbnBqTm92b1BpcGUgfSBmcm9tICcuL2NucGotbm92by5waXBlJztcclxuaW1wb3J0IHsgVWlFbGVtZW50IH0gZnJvbSAnLi4vLi4vcHJvdmlkZXJzL2VsZW1lbnQucHJvdmlkZXInO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogJ1t1aU1hc2tDbnBqTm92b11bbmdNb2RlbF0nLFxyXG4gICAgcHJvdmlkZXJzOiBbe1xyXG4gICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFVpTWFza0NucGpOb3ZvRGlyZWN0aXZlKSxcclxuICAgICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfSwge1xyXG4gICAgICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXHJcbiAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVWlNYXNrQ25wak5vdm9EaXJlY3RpdmUpLFxyXG4gICAgICAgIG11bHRpOiB0cnVlXHJcbiAgICB9LCBVaUNucGpOb3ZvUGlwZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIFVpTWFza0NucGpOb3ZvRGlyZWN0aXZlIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIFZhbGlkYXRvciwgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzIHtcclxuXHJcbiAgICBsb2FkZWQ6IGJvb2xlYW47XHJcbiAgICBpbnB1dDogYm9vbGVhbjtcclxuICAgIGJlZm9yZVNlbEluZGV4O1xyXG4gICAgb25DaGFuZ2U6IEZ1bmN0aW9uO1xyXG4gICAgb25Ub3VjaGVkOiBGdW5jdGlvbjtcclxuICAgIGNvbnRyb2w6IEZvcm1Db250cm9sO1xyXG4gICAgc3ltYm9sc1Bvc2l0aW9uczogbnVtYmVyW10gPSBbMiwgNiwgMTAsIDE1LCAxOF07XHJcbiAgICBASW5wdXQoKSBuZ01vZGVsOiBhbnk7XHJcbiAgICBASW5wdXQoKSBwYWRPblBhc3RlOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgndWlNYXNrQ25wak5vdm8nKSB1aU1hc2tDbnBqTm92bztcclxuICAgIEBPdXRwdXQoKSBuZ01vZGVsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcHVibGljIGNucGpQaXBlOiBVaUNucGpOb3ZvUGlwZSkge1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXMpOiB2b2lkIHtcclxuICAgICAgICBpZiAoIWNoYW5nZXMubmdNb2RlbC5maXJzdENoYW5nZSAmJiAoY2hhbmdlcy5uZ01vZGVsLmN1cnJlbnRWYWx1ZSA9PT0gbnVsbCB8fCBjaGFuZ2VzLm5nTW9kZWwuY3VycmVudFZhbHVlID09PSB1bmRlZmluZWQpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkZWQgPSB0cnVlO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHdyaXRlVmFsdWUocmF3VmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLmNvbnRyb2wgJiYgdGhpcy5sb2FkZWQgJiYgcmF3VmFsdWUpIHtcclxuICAgICAgICAgICAgdGhpcy5jb250cm9sLm1hcmtBc0RpcnR5KCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICghdGhpcy5pbnB1dCkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5uZ01vZGVsKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHRoaXMubmdNb2RlbC50b1N0cmluZygpLnRvVXBwZXJDYXNlKCk7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBjbGVhblZhbHVlID0gdmFsdWUucmVwbGFjZSgvW14wLTlBLVpdKy9nLCAnJyk7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBpc051bWVyaWNPbmx5ID0gL15bMC05XSokLy50ZXN0KGNsZWFuVmFsdWUpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5uZ01vZGVsID0gaXNOdW1lcmljT25seSA/IGNsZWFuVmFsdWUucGFkU3RhcnQoMTQsICcwJykgOiBjbGVhblZhbHVlO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5uZ01vZGVsID0gJyc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB0aGlzLmNucGpQaXBlLnRyYW5zZm9ybSh0aGlzLm5nTW9kZWwsIHRydWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmlucHV0ID0gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgcmVuZGVyVmlhSW5wdXQocmF3VmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGlmIChyYXdWYWx1ZSkge1xyXG4gICAgICAgICAgICB0aGlzLmNvbnRyb2wubWFya0FzRGlydHkoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5uZ01vZGVsID0gdGhpcy5mb3JtYXQocmF3VmFsdWUpO1xyXG4gICAgICAgIHRoaXMubmdNb2RlbENoYW5nZS5lbWl0KHRoaXMubmdNb2RlbCk7XHJcbiAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB0aGlzLmNucGpQaXBlLnRyYW5zZm9ybSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWx1ZSwgdHJ1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xyXG4gICAgfVxyXG5cclxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xyXG4gICAgfVxyXG5cclxuICAgIGZvcm1hdCh2YWx1ZSkge1xyXG4gICAgICAgIC8vIEFjZWl0YSBuw7ptZXJvcyBlIGxldHJhcyAoQS1aKSwgbm9ybWFsaXphIHBhcmEgbWFpw7pzY3VsYXNcclxuICAgICAgICB2YWx1ZSA9IHZhbHVlLnRvU3RyaW5nKCkudG9VcHBlckNhc2UoKS5yZXBsYWNlKC9bXjAtOUEtWl0rL2csICcnKTtcclxuICAgICAgICByZXR1cm4gdmFsdWUuc3Vic3RyaW5nKDAsIDE0KTtcclxuICAgIH1cclxuXHJcbiAgICB2YWxpZGF0ZShjb250cm9sOiBGb3JtQ29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xyXG5cclxuICAgICAgICB0aGlzLmNvbnRyb2wgPSBjb250cm9sO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5pbnB1dCkge1xyXG4gICAgICAgICAgICBpZiAoY29udHJvbC52YWx1ZSAmJiB0aGlzLmZvcm1hdChjb250cm9sLnZhbHVlKS5sZW5ndGggPCAxNCkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgcGFyc2U6IHRydWUgfTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMudWlNYXNrQ25wak5vdm8gPT09IHRydWUgJiYgY29udHJvbC52YWx1ZSAmJiAhdGhpcy5jbnBqSXNWYWxpZChjb250cm9sLnZhbHVlKSkge1xyXG4gICAgICAgICAgICByZXR1cm4geyBwYXJzZTogdHJ1ZSB9O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5pbnB1dCA9IGZhbHNlO1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbikge1xyXG4gICAgICAgIGNvbnN0IG1ldGhvZCA9IGlzRGlzYWJsZWQgPyAnc2V0QXR0cmlidXRlJyA6ICdyZW1vdmVBdHRyaWJ1dGUnO1xyXG4gICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50W21ldGhvZF0oJ2Rpc2FibGVkJywgJ2Rpc2FibGVkJyk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDb252ZXJ0ZSB1bSBjYXJhY3RlcmUgcGFyYSBzZXUgdmFsb3IgbnVtw6lyaWNvLlxyXG4gICAgICogVXNhIGPDs2RpZ28gQVNDSUkgLSA0OCBwYXJhIHRvZG9zIG9zIGNhcmFjdGVyZXM6XHJcbiAgICAgKiAtIETDrWdpdG9zIDAtOSByZXRvcm5hbSAwLTlcclxuICAgICAqIC0gTGV0cmFzIEEtWiByZXRvcm5hbSAxNy00MiAoQT0xNywgQj0xOCwgLi4uLCBaPTQyKVxyXG4gICAgICogUmVmZXLDqm5jaWE6IGh0dHBzOi8vd3d3Lmdvdi5ici9yZWNlaXRhZmVkZXJhbC9wdC1ici9jZW50cmFpcy1kZS1jb250ZXVkby9wdWJsaWNhY29lcy9wZXJndW50YXMtZS1yZXNwb3N0YXMvY25wai9jbnBqLWFsZmFudW1lcmljby5wZGZcclxuICAgICAqL1xyXG4gICAgY2hhclRvVmFsdWUoY2hhcjogc3RyaW5nKTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gY2hhci50b1VwcGVyQ2FzZSgpLmNoYXJDb2RlQXQoMCkgLSA0ODtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZhbGlkYSBDTlBKIGFsZmFudW3DqXJpY28gY29uZm9ybWUgZXNwZWNpZmljYcOnw6NvLlxyXG4gICAgICogU3Vwb3J0YSB0YW50byBDTlBKcyBudW3DqXJpY29zIHRyYWRpY2lvbmFpcyBxdWFudG8gb3Mgbm92b3MgYWxmYW51bcOpcmljb3MuXHJcbiAgICAgKiBBIGNvbnZlcnPDo28gdXNhIEFTQ0lJIC0gNDggcGFyYSB0b2RvcyBvcyBjYXJhY3RlcmVzIChBPTE3LCBCPTE4LCAuLi4sIFo9NDIpLlxyXG4gICAgICovXHJcbiAgICBjbnBqSXNWYWxpZChjbnBqOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoIWNucGogfHwgY25wai5sZW5ndGggIT09IDE0KSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIE5vcm1hbGl6YSBwYXJhIG1hacO6c2N1bGFzXHJcbiAgICAgICAgY25waiA9IGNucGoudG9VcHBlckNhc2UoKTtcclxuXHJcbiAgICAgICAgLy8gVmVyaWZpY2Egc2UgY29udMOpbSBhcGVuYXMgY2FyYWN0ZXJlcyB2w6FsaWRvcyAoMC05IGUgQS1aKVxyXG4gICAgICAgIGlmICghL15bMC05QS1aXXsxNH0kLy50ZXN0KGNucGopKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIFZlcmlmaWNhIENOUEpzIGNvbSB0b2RvcyBvcyBjYXJhY3RlcmVzIGlndWFpc1xyXG4gICAgICAgIGlmICgvXiguKVxcMXsxM30kLy50ZXN0KGNucGopKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IGJhc2UgPSBjbnBqLnN1YnN0cmluZygwLCAxMik7XHJcbiAgICAgICAgY29uc3QgZGlnaXRzID0gY25wai5zdWJzdHJpbmcoMTIpO1xyXG5cclxuICAgICAgICAvLyBDYWxjdWxhIG8gcHJpbWVpcm8gZMOtZ2l0byB2ZXJpZmljYWRvclxyXG4gICAgICAgIGxldCBzdW0gPSAwO1xyXG4gICAgICAgIGxldCBwb3MgPSA1O1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMTI7IGkrKykge1xyXG4gICAgICAgICAgICBzdW0gKz0gdGhpcy5jaGFyVG9WYWx1ZShiYXNlLmNoYXJBdChpKSkgKiBwb3MtLTtcclxuICAgICAgICAgICAgaWYgKHBvcyA8IDIpIHtcclxuICAgICAgICAgICAgICAgIHBvcyA9IDk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgbGV0IHJlc3VsdCA9IHN1bSAlIDExIDwgMiA/IDAgOiAxMSAtIChzdW0gJSAxMSk7XHJcbiAgICAgICAgaWYgKHJlc3VsdCAhPT0gdGhpcy5jaGFyVG9WYWx1ZShkaWdpdHMuY2hhckF0KDApKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBDYWxjdWxhIG8gc2VndW5kbyBkw61naXRvIHZlcmlmaWNhZG9yXHJcbiAgICAgICAgY29uc3QgYmFzZVdpdGhGaXJzdERpZ2l0ID0gYmFzZSArIGRpZ2l0cy5jaGFyQXQoMCk7XHJcbiAgICAgICAgc3VtID0gMDtcclxuICAgICAgICBwb3MgPSA2O1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMTM7IGkrKykge1xyXG4gICAgICAgICAgICBzdW0gKz0gdGhpcy5jaGFyVG9WYWx1ZShiYXNlV2l0aEZpcnN0RGlnaXQuY2hhckF0KGkpKSAqIHBvcy0tO1xyXG4gICAgICAgICAgICBpZiAocG9zIDwgMikge1xyXG4gICAgICAgICAgICAgICAgcG9zID0gOTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXN1bHQgPSBzdW0gJSAxMSA8IDIgPyAwIDogMTEgLSAoc3VtICUgMTEpO1xyXG5cclxuICAgICAgICByZXR1cm4gcmVzdWx0ID09PSB0aGlzLmNoYXJUb1ZhbHVlKGRpZ2l0cy5jaGFyQXQoMSkpO1xyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nKVxyXG4gICAgb25LZXlkb3duKCkge1xyXG4gICAgICAgIHRoaXMuYmVmb3JlU2VsSW5kZXggPSBVaUVsZW1lbnQuY2FyZXRQb3NpdGlvbi5nZXQodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ2lucHV0JywgWyckZXZlbnQnXSlcclxuICAgIG9uSW5wdXQoJGV2ZW50KTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgYWZ0ZXJTZWxJbmRleCA9IFVpRWxlbWVudC5jYXJldFBvc2l0aW9uLmdldCh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XHJcbiAgICAgICAgY29uc3QgcmF3VmFsdWU6IHN0cmluZyA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlO1xyXG4gICAgICAgIHRoaXMuaW5wdXQgPSB0aGlzLmZvcm1hdChyYXdWYWx1ZSkgIT09IHRoaXMubmdNb2RlbDtcclxuICAgICAgICB0aGlzLnJlbmRlclZpYUlucHV0KHJhd1ZhbHVlKTtcclxuICAgICAgICBVaUVsZW1lbnQuY2FyZXRQb3NpdGlvbi5zZXQodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIHRoaXMuYmVmb3JlU2VsSW5kZXgsIGFmdGVyU2VsSW5kZXgsIHRoaXMuc3ltYm9sc1Bvc2l0aW9ucyk7XHJcbiAgICB9XHJcblxyXG4gICAgQEhvc3RMaXN0ZW5lcigncGFzdGUnLCBbJyRldmVudCddKVxyXG4gICAgcGFkTGVmdChldmVudDogYW55KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMucGFkT25QYXN0ZSkge1xyXG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG5cclxuICAgICAgICAgICAgbGV0IGRhdGE6IGFueTtcclxuXHJcbiAgICAgICAgICAgIGlmICh3aW5kb3dbJ2NsaXBib2FyZERhdGEnXSkge1xyXG4gICAgICAgICAgICAgICAgZGF0YSA9IHdpbmRvd1snY2xpcGJvYXJkRGF0YSddO1xyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGV2ZW50LmNsaXBib2FyZERhdGEgJiYgZXZlbnQuY2xpcGJvYXJkRGF0YS5nZXREYXRhKSB7XHJcbiAgICAgICAgICAgICAgICBkYXRhID0gZXZlbnQuY2xpcGJvYXJkRGF0YTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLy8gQWNlaXRhIG7Dum1lcm9zIGUgbGV0cmFzLCBub3JtYWxpemEgcGFyYSBtYWnDunNjdWxhc1xyXG4gICAgICAgICAgICBjb25zdCB0ZXh0ID0gZGF0YS5nZXREYXRhKCd0ZXh0JykudG9TdHJpbmcoKS50b1VwcGVyQ2FzZSgpLnJlcGxhY2UoL1teMC05QS1aXSsvZywgJycpO1xyXG4gICAgICAgICAgICAvLyBTw7MgZmF6IHBhZFN0YXJ0IHNlIGZvciBDTlBKIG51bcOpcmljbyBwdXJvIChyZXRyb2NvbXBhdGliaWxpZGFkZSlcclxuICAgICAgICAgICAgY29uc3QgaXNOdW1lcmljT25seSA9IC9eWzAtOV0qJC8udGVzdCh0ZXh0KTtcclxuICAgICAgICAgICAgdGhpcy5yZW5kZXJWaWFJbnB1dChpc051bWVyaWNPbmx5ID8gdGV4dC5wYWRTdGFydCgxNCwgJzAnKSA6IHRleHQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
|
|
236
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFzay1jbnBqLW5vdm8uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmctc21uLXVpLyIsInNvdXJjZXMiOlsibGliL3V0aWxzL21hc2tzL2NucGotbm92by9tYXNrLWNucGotbm92by5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDSCxhQUFhLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUM5RixNQUFNLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFxQyxhQUFhLEVBQUUsaUJBQWlCLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoSCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBYzdEO0lBY0ksaUNBQW1CLFVBQXNCLEVBQVMsUUFBd0I7UUFBdkQsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUFTLGFBQVEsR0FBUixRQUFRLENBQWdCO1FBTjFFLHFCQUFnQixHQUFhLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRXZDLGVBQVUsR0FBWSxJQUFJLENBQUM7UUFFMUIsa0JBQWEsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUdoRSxDQUFDO2dDQWZRLHVCQUF1QjtJQWlCaEMsNkNBQVcsR0FBWCxVQUFZLE9BQU87UUFDZixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFlBQVksS0FBSyxJQUFJLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEtBQUssU0FBUyxDQUFDLEVBQUU7WUFDdkgsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLEVB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QS9NWSx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQWZ0ZXJWaWV3SW5pdCwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uQ2hhbmdlcyxcclxuICAgIE91dHB1dFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgRm9ybUNvbnRyb2wsIE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SLCBWYWxpZGF0b3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFVpQ25wak5vdm9QaXBlIH0gZnJvbSAnLi9jbnBqLW5vdm8ucGlwZSc7XHJcbmltcG9ydCB7IFVpRWxlbWVudCB9IGZyb20gJy4uLy4uL3Byb3ZpZGVycy9lbGVtZW50LnByb3ZpZGVyJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6ICdbdWlNYXNrQ25wak5vdm9dW25nTW9kZWxdJyxcclxuICAgIHByb3ZpZGVyczogW3tcclxuICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBVaU1hc2tDbnBqTm92b0RpcmVjdGl2ZSksXHJcbiAgICAgICAgbXVsdGk6IHRydWVcclxuICAgIH0sIHtcclxuICAgICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxyXG4gICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFVpTWFza0NucGpOb3ZvRGlyZWN0aXZlKSxcclxuICAgICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfSwgVWlDbnBqTm92b1BpcGVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVaU1hc2tDbnBqTm92b0RpcmVjdGl2ZSBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBWYWxpZGF0b3IsIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcyB7XHJcblxyXG4gICAgbG9hZGVkOiBib29sZWFuO1xyXG4gICAgaW5wdXQ6IGJvb2xlYW47XHJcbiAgICBiZWZvcmVTZWxJbmRleDtcclxuICAgIG9uQ2hhbmdlOiBGdW5jdGlvbjtcclxuICAgIG9uVG91Y2hlZDogRnVuY3Rpb247XHJcbiAgICBjb250cm9sOiBGb3JtQ29udHJvbDtcclxuICAgIHN5bWJvbHNQb3NpdGlvbnM6IG51bWJlcltdID0gWzIsIDYsIDEwLCAxNSwgMThdO1xyXG4gICAgQElucHV0KCkgbmdNb2RlbDogYW55O1xyXG4gICAgQElucHV0KCkgcGFkT25QYXN0ZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBASW5wdXQoJ3VpTWFza0NucGpOb3ZvJykgdWlNYXNrQ25wak5vdm87XHJcbiAgICBAT3V0cHV0KCkgbmdNb2RlbENoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIHB1YmxpYyBjbnBqUGlwZTogVWlDbnBqTm92b1BpcGUpIHtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCFjaGFuZ2VzLm5nTW9kZWwuZmlyc3RDaGFuZ2UgJiYgKGNoYW5nZXMubmdNb2RlbC5jdXJyZW50VmFsdWUgPT09IG51bGwgfHwgY2hhbmdlcy5uZ01vZGVsLmN1cnJlbnRWYWx1ZSA9PT0gdW5kZWZpbmVkKSkge1xyXG4gICAgICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZGVkID0gdHJ1ZTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICB3cml0ZVZhbHVlKHJhd1ZhbHVlOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5jb250cm9sICYmIHRoaXMubG9hZGVkICYmIHJhd1ZhbHVlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY29udHJvbC5tYXJrQXNEaXJ0eSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoIXRoaXMuaW5wdXQpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMubmdNb2RlbCkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLm5nTW9kZWwudG9TdHJpbmcoKS50b1VwcGVyQ2FzZSgpO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgY2xlYW5WYWx1ZSA9IHZhbHVlLnJlcGxhY2UoL1teMC05QS1aXSsvZywgJycpO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgaXNOdW1lcmljT25seSA9IC9eWzAtOV0qJC8udGVzdChjbGVhblZhbHVlKTtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHBhZGRlZFZhbHVlID0gaXNOdW1lcmljT25seSA/IGNsZWFuVmFsdWUucGFkU3RhcnQoMTQsICcwJykgOiBjbGVhblZhbHVlO1xyXG4gICAgICAgICAgICAgICAgaWYgKHBhZGRlZFZhbHVlICE9PSBjbGVhblZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5uZ01vZGVsID0gcGFkZGVkVmFsdWU7XHJcbiAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLm5nTW9kZWxDaGFuZ2UuZW1pdCh0aGlzLm5nTW9kZWwpKTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5uZ01vZGVsID0gcGFkZGVkVmFsdWU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5nTW9kZWwgPSAnJztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWx1ZSA9IHRoaXMuY25walBpcGUudHJhbnNmb3JtKHRoaXMubmdNb2RlbCwgdHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuaW5wdXQgPSBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICByZW5kZXJWaWFJbnB1dChyYXdWYWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHJhd1ZhbHVlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY29udHJvbC5tYXJrQXNEaXJ0eSgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5uZ01vZGVsID0gdGhpcy5mb3JtYXQocmF3VmFsdWUpO1xyXG4gICAgICAgIHRoaXMubmdNb2RlbENoYW5nZS5lbWl0KHRoaXMubmdNb2RlbCk7XHJcbiAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB0aGlzLmNucGpQaXBlLnRyYW5zZm9ybSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWx1ZSwgdHJ1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xyXG4gICAgfVxyXG5cclxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xyXG4gICAgfVxyXG5cclxuICAgIGZvcm1hdCh2YWx1ZSkge1xyXG4gICAgICAgIC8vIEFjZWl0YSBuw7ptZXJvcyBlIGxldHJhcyAoQS1aKSwgbm9ybWFsaXphIHBhcmEgbWFpw7pzY3VsYXNcclxuICAgICAgICB2YWx1ZSA9IHZhbHVlLnRvU3RyaW5nKCkudG9VcHBlckNhc2UoKS5yZXBsYWNlKC9bXjAtOUEtWl0rL2csICcnKTtcclxuICAgICAgICByZXR1cm4gdmFsdWUuc3Vic3RyaW5nKDAsIDE0KTtcclxuICAgIH1cclxuXHJcbiAgICB2YWxpZGF0ZShjb250cm9sOiBGb3JtQ29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xyXG5cclxuICAgICAgICB0aGlzLmNvbnRyb2wgPSBjb250cm9sO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5pbnB1dCkge1xyXG4gICAgICAgICAgICBpZiAoY29udHJvbC52YWx1ZSAmJiB0aGlzLmZvcm1hdChjb250cm9sLnZhbHVlKS5sZW5ndGggPCAxNCkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgcGFyc2U6IHRydWUgfTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMudWlNYXNrQ25wak5vdm8gPT09IHRydWUgJiYgY29udHJvbC52YWx1ZSkge1xyXG4gICAgICAgICAgICBsZXQgdmFsdWUgPSBjb250cm9sLnZhbHVlLnRvU3RyaW5nKCkudG9VcHBlckNhc2UoKS5yZXBsYWNlKC9bXjAtOUEtWl0rL2csICcnKTtcclxuICAgICAgICAgICAgY29uc3QgaXNOdW1lcmljT25seSA9IC9eWzAtOV0qJC8udGVzdCh2YWx1ZSk7XHJcbiAgICAgICAgICAgIGlmIChpc051bWVyaWNPbmx5KSB7XHJcbiAgICAgICAgICAgICAgICB2YWx1ZSA9IHZhbHVlLnBhZFN0YXJ0KDE0LCAnMCcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmICghdGhpcy5jbnBqSXNWYWxpZCh2YWx1ZSkpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB7IHBhcnNlOiB0cnVlIH07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuaW5wdXQgPSBmYWxzZTtcclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcclxuICAgICAgICBjb25zdCBtZXRob2QgPSBpc0Rpc2FibGVkID8gJ3NldEF0dHJpYnV0ZScgOiAncmVtb3ZlQXR0cmlidXRlJztcclxuICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudFttZXRob2RdKCdkaXNhYmxlZCcsICdkaXNhYmxlZCcpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ29udmVydGUgdW0gY2FyYWN0ZXJlIHBhcmEgc2V1IHZhbG9yIG51bcOpcmljby5cclxuICAgICAqIFVzYSBjw7NkaWdvIEFTQ0lJIC0gNDggcGFyYSB0b2RvcyBvcyBjYXJhY3RlcmVzOlxyXG4gICAgICogLSBEw61naXRvcyAwLTkgcmV0b3JuYW0gMC05XHJcbiAgICAgKiAtIExldHJhcyBBLVogcmV0b3JuYW0gMTctNDIgKEE9MTcsIEI9MTgsIC4uLiwgWj00MilcclxuICAgICAqIFJlZmVyw6puY2lhOiBodHRwczovL3d3dy5nb3YuYnIvcmVjZWl0YWZlZGVyYWwvcHQtYnIvY2VudHJhaXMtZGUtY29udGV1ZG8vcHVibGljYWNvZXMvcGVyZ3VudGFzLWUtcmVzcG9zdGFzL2NucGovY25wai1hbGZhbnVtZXJpY28ucGRmXHJcbiAgICAgKi9cclxuICAgIGNoYXJUb1ZhbHVlKGNoYXI6IHN0cmluZyk6IG51bWJlciB7XHJcbiAgICAgICAgcmV0dXJuIGNoYXIudG9VcHBlckNhc2UoKS5jaGFyQ29kZUF0KDApIC0gNDg7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWYWxpZGEgQ05QSiBhbGZhbnVtw6lyaWNvIGNvbmZvcm1lIGVzcGVjaWZpY2HDp8Ojby5cclxuICAgICAqIFN1cG9ydGEgdGFudG8gQ05QSnMgbnVtw6lyaWNvcyB0cmFkaWNpb25haXMgcXVhbnRvIG9zIG5vdm9zIGFsZmFudW3DqXJpY29zLlxyXG4gICAgICogQSBjb252ZXJzw6NvIHVzYSBBU0NJSSAtIDQ4IHBhcmEgdG9kb3Mgb3MgY2FyYWN0ZXJlcyAoQT0xNywgQj0xOCwgLi4uLCBaPTQyKS5cclxuICAgICAqL1xyXG4gICAgY25waklzVmFsaWQoY25wajogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKCFjbnBqIHx8IGNucGoubGVuZ3RoICE9PSAxNCkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBOb3JtYWxpemEgcGFyYSBtYWnDunNjdWxhc1xyXG4gICAgICAgIGNucGogPSBjbnBqLnRvVXBwZXJDYXNlKCk7XHJcblxyXG4gICAgICAgIC8vIFZlcmlmaWNhIHNlIGNvbnTDqW0gYXBlbmFzIGNhcmFjdGVyZXMgdsOhbGlkb3MgKDAtOSBlIEEtWilcclxuICAgICAgICBpZiAoIS9eWzAtOUEtWl17MTR9JC8udGVzdChjbnBqKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBWZXJpZmljYSBDTlBKcyBjb20gdG9kb3Mgb3MgY2FyYWN0ZXJlcyBpZ3VhaXNcclxuICAgICAgICBpZiAoL14oLilcXDF7MTN9JC8udGVzdChjbnBqKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBiYXNlID0gY25wai5zdWJzdHJpbmcoMCwgMTIpO1xyXG4gICAgICAgIGNvbnN0IGRpZ2l0cyA9IGNucGouc3Vic3RyaW5nKDEyKTtcclxuXHJcbiAgICAgICAgLy8gQ2FsY3VsYSBvIHByaW1laXJvIGTDrWdpdG8gdmVyaWZpY2Fkb3JcclxuICAgICAgICBsZXQgc3VtID0gMDtcclxuICAgICAgICBsZXQgcG9zID0gNTtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDEyOyBpKyspIHtcclxuICAgICAgICAgICAgc3VtICs9IHRoaXMuY2hhclRvVmFsdWUoYmFzZS5jaGFyQXQoaSkpICogcG9zLS07XHJcbiAgICAgICAgICAgIGlmIChwb3MgPCAyKSB7XHJcbiAgICAgICAgICAgICAgICBwb3MgPSA5O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCByZXN1bHQgPSBzdW0gJSAxMSA8IDIgPyAwIDogMTEgLSAoc3VtICUgMTEpO1xyXG4gICAgICAgIGlmIChyZXN1bHQgIT09IHRoaXMuY2hhclRvVmFsdWUoZGlnaXRzLmNoYXJBdCgwKSkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gQ2FsY3VsYSBvIHNlZ3VuZG8gZMOtZ2l0byB2ZXJpZmljYWRvclxyXG4gICAgICAgIGNvbnN0IGJhc2VXaXRoRmlyc3REaWdpdCA9IGJhc2UgKyBkaWdpdHMuY2hhckF0KDApO1xyXG4gICAgICAgIHN1bSA9IDA7XHJcbiAgICAgICAgcG9zID0gNjtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDEzOyBpKyspIHtcclxuICAgICAgICAgICAgc3VtICs9IHRoaXMuY2hhclRvVmFsdWUoYmFzZVdpdGhGaXJzdERpZ2l0LmNoYXJBdChpKSkgKiBwb3MtLTtcclxuICAgICAgICAgICAgaWYgKHBvcyA8IDIpIHtcclxuICAgICAgICAgICAgICAgIHBvcyA9IDk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmVzdWx0ID0gc3VtICUgMTEgPCAyID8gMCA6IDExIC0gKHN1bSAlIDExKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdCA9PT0gdGhpcy5jaGFyVG9WYWx1ZShkaWdpdHMuY2hhckF0KDEpKTtcclxuICAgIH1cclxuXHJcbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duJylcclxuICAgIG9uS2V5ZG93bigpIHtcclxuICAgICAgICB0aGlzLmJlZm9yZVNlbEluZGV4ID0gVWlFbGVtZW50LmNhcmV0UG9zaXRpb24uZ2V0KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcclxuICAgIH1cclxuXHJcbiAgICBASG9zdExpc3RlbmVyKCdpbnB1dCcsIFsnJGV2ZW50J10pXHJcbiAgICBvbklucHV0KCRldmVudCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGFmdGVyU2VsSW5kZXggPSBVaUVsZW1lbnQuY2FyZXRQb3NpdGlvbi5nZXQodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgICAgIGNvbnN0IHJhd1ZhbHVlOiBzdHJpbmcgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWx1ZTtcclxuICAgICAgICB0aGlzLmlucHV0ID0gdGhpcy5mb3JtYXQocmF3VmFsdWUpICE9PSB0aGlzLm5nTW9kZWw7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJWaWFJbnB1dChyYXdWYWx1ZSk7XHJcbiAgICAgICAgVWlFbGVtZW50LmNhcmV0UG9zaXRpb24uc2V0KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCB0aGlzLmJlZm9yZVNlbEluZGV4LCBhZnRlclNlbEluZGV4LCB0aGlzLnN5bWJvbHNQb3NpdGlvbnMpO1xyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ3Bhc3RlJywgWyckZXZlbnQnXSlcclxuICAgIHBhZExlZnQoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLnBhZE9uUGFzdGUpIHtcclxuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuXHJcbiAgICAgICAgICAgIGxldCBkYXRhOiBhbnk7XHJcblxyXG4gICAgICAgICAgICBpZiAod2luZG93WydjbGlwYm9hcmREYXRhJ10pIHtcclxuICAgICAgICAgICAgICAgIGRhdGEgPSB3aW5kb3dbJ2NsaXBib2FyZERhdGEnXTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmIChldmVudC5jbGlwYm9hcmREYXRhICYmIGV2ZW50LmNsaXBib2FyZERhdGEuZ2V0RGF0YSkge1xyXG4gICAgICAgICAgICAgICAgZGF0YSA9IGV2ZW50LmNsaXBib2FyZERhdGE7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC8vIEFjZWl0YSBuw7ptZXJvcyBlIGxldHJhcywgbm9ybWFsaXphIHBhcmEgbWFpw7pzY3VsYXNcclxuICAgICAgICAgICAgY29uc3QgdGV4dCA9IGRhdGEuZ2V0RGF0YSgndGV4dCcpLnRvU3RyaW5nKCkudG9VcHBlckNhc2UoKS5yZXBsYWNlKC9bXjAtOUEtWl0rL2csICcnKTtcclxuICAgICAgICAgICAgLy8gU8OzIGZheiBwYWRTdGFydCBzZSBmb3IgQ05QSiBudW3DqXJpY28gcHVybyAocmV0cm9jb21wYXRpYmlsaWRhZGUpXHJcbiAgICAgICAgICAgIGNvbnN0IGlzTnVtZXJpY09ubHkgPSAvXlswLTldKiQvLnRlc3QodGV4dCk7XHJcbiAgICAgICAgICAgIHRoaXMucmVuZGVyVmlhSW5wdXQoaXNOdW1lcmljT25seSA/IHRleHQucGFkU3RhcnQoMTQsICcwJykgOiB0ZXh0KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19
|
package/fesm2015/ng-smn-ui.js
CHANGED
|
@@ -3975,7 +3975,14 @@ let UiMaskCnpjNovoDirective = UiMaskCnpjNovoDirective_1 = class UiMaskCnpjNovoDi
|
|
|
3975
3975
|
const value = this.ngModel.toString().toUpperCase();
|
|
3976
3976
|
const cleanValue = value.replace(/[^0-9A-Z]+/g, '');
|
|
3977
3977
|
const isNumericOnly = /^[0-9]*$/.test(cleanValue);
|
|
3978
|
-
|
|
3978
|
+
const paddedValue = isNumericOnly ? cleanValue.padStart(14, '0') : cleanValue;
|
|
3979
|
+
if (paddedValue !== cleanValue) {
|
|
3980
|
+
this.ngModel = paddedValue;
|
|
3981
|
+
setTimeout(() => this.ngModelChange.emit(this.ngModel));
|
|
3982
|
+
}
|
|
3983
|
+
else {
|
|
3984
|
+
this.ngModel = paddedValue;
|
|
3985
|
+
}
|
|
3979
3986
|
}
|
|
3980
3987
|
else {
|
|
3981
3988
|
this.ngModel = '';
|
|
@@ -4010,8 +4017,15 @@ let UiMaskCnpjNovoDirective = UiMaskCnpjNovoDirective_1 = class UiMaskCnpjNovoDi
|
|
|
4010
4017
|
return { parse: true };
|
|
4011
4018
|
}
|
|
4012
4019
|
}
|
|
4013
|
-
if (this.uiMaskCnpjNovo === true && control.value
|
|
4014
|
-
|
|
4020
|
+
if (this.uiMaskCnpjNovo === true && control.value) {
|
|
4021
|
+
let value = control.value.toString().toUpperCase().replace(/[^0-9A-Z]+/g, '');
|
|
4022
|
+
const isNumericOnly = /^[0-9]*$/.test(value);
|
|
4023
|
+
if (isNumericOnly) {
|
|
4024
|
+
value = value.padStart(14, '0');
|
|
4025
|
+
}
|
|
4026
|
+
if (!this.cnpjIsValid(value)) {
|
|
4027
|
+
return { parse: true };
|
|
4028
|
+
}
|
|
4015
4029
|
}
|
|
4016
4030
|
this.input = false;
|
|
4017
4031
|
return null;
|