monkey-front-components 0.0.680 → 0.0.682
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/esm2020/lib/components/base/base-component.mjs +10 -3
- package/esm2020/lib/components/base/base-validators.mjs +3 -1
- package/fesm2015/monkey-front-components.mjs +11 -2
- package/fesm2015/monkey-front-components.mjs.map +1 -1
- package/fesm2020/monkey-front-components.mjs +11 -2
- package/fesm2020/monkey-front-components.mjs.map +1 -1
- package/monkey-front-components-0.0.682.tgz +0 -0
- package/package.json +3 -3
- package/monkey-front-components-0.0.680.tgz +0 -0
|
@@ -303,8 +303,15 @@ export class BaseComponent {
|
|
|
303
303
|
cl: {
|
|
304
304
|
governmentId: ValidateUtils.DocumentRutValidator,
|
|
305
305
|
zipCode: Validators.zipCodeByCountry(country)
|
|
306
|
-
}
|
|
307
|
-
|
|
306
|
+
},
|
|
307
|
+
mx: {
|
|
308
|
+
governmentId: ValidateUtils.DocumentRFCValidator,
|
|
309
|
+
zipCode: Validators.zipCodeByCountry(country)
|
|
310
|
+
},
|
|
311
|
+
}[country] || {
|
|
312
|
+
governmentId: ValidateUtils.DocumentValidator,
|
|
313
|
+
zipCode: Validators.zipCodeByCountry('br')
|
|
314
|
+
};
|
|
308
315
|
}
|
|
309
316
|
isAbleToHandlePagination() {
|
|
310
317
|
const { __paginationOptions } = this;
|
|
@@ -332,4 +339,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
332
339
|
selector: '[baseComponent]'
|
|
333
340
|
}]
|
|
334
341
|
}], ctorParameters: function () { return []; } });
|
|
335
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktZnJvbnQtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvYmFzZS9iYXNlLWNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw0QkFBNEI7QUFDNUIsT0FBTyxFQUFFLFNBQVMsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUVyRCxPQUFPLEVBQ0wsdUJBQXVCLEVBTXZCLGNBQWMsRUFDZCxhQUFhLEVBQ2IsVUFBVSxFQUNYLE1BQU0sbUJBQW1CLENBQUM7QUFDM0IsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUszQyxNQUFNLE9BQWdCLGFBQWE7SUFlakM7UUFWQSx3QkFBbUIsR0FBc0MsSUFBSSxDQUFDO1FBSTlELGVBQVUsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFN0IsY0FBUyxHQUFHLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztRQUt0QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRU8sUUFBUTtRQUNkLE1BQU0sYUFBYSxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLElBQUksR0FBRyxDQUFDO1lBQ2hELENBQUMsTUFBTSxDQUFDLFVBQVU7Z0JBQ2hCLE1BQU0sQ0FBQyxVQUFVLENBQUMsb0NBQW9DLENBQUMsQ0FBQyxPQUFPLENBQ2hFLENBQUM7UUFDSixPQUFPLENBQUMsbURBQW1ELENBQUMsSUFBSSxDQUM5RCxTQUFTLENBQUMsU0FBUyxDQUNwQixDQUFDLElBQUksYUFBYSxDQUFDO0lBQ3RC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QUFDO1NBQ3ZDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRU0sa0JBQWtCO1FBQ3ZCLE1BQU0sRUFBRSxtQkFBbUIsRUFBRSxHQUFHLElBQUksQ0FBQztRQUVyQyxJQUFJLG1CQUFtQixFQUFFO1lBQ3ZCLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxtQkFBbUIsQ0FBQztZQUN4QyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDeEI7SUFDSCxDQUFDOzswR0E5Vm1CLGFBQWE7OEZBQWIsYUFBYTsyRkFBYixhQUFhO2tCQUhsQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7aUJBQzVCIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiAqL1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgTW9ua2V5RWN4Q29tbW9uc1NlcnZpY2UsXG4gIE1vbmtleUVjeEVycm9yUmVzcG9uc2UsXG4gIE1vbmtleUVjeFBhZ2luYXRpb25PcHRpb25zLFxuICBNb25rZXlFY3hTY3JvbGxPcHRpb25zLFxuICBNb25rZXlFY3hTdXBwb3J0T3B0aW9ucyxcbiAgTW9ua2V5RWN4VHJhbnNsYXRlT3B0aW9ucyxcbiAgTW9ua2V5RWN4VXRpbHMsXG4gIFZhbGlkYXRlVXRpbHMsXG4gIFZhbGlkYXRvcnNcbn0gZnJvbSAnbW9ua2V5LWZyb250LWNvcmUnO1xuaW1wb3J0IHsgTW9ua2V5VXRpbHMgfSBmcm9tICdtb25rZXktc3R5bGUtZ3VpZGUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYmFzZUNvbXBvbmVudF0nXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBfX21vbmtleWVjeEZvcm1FcnJvcnM6IGFueSB8IGFueVtdO1xuXG4gIF9fdW5zdWJzY3JpYmVBbGw6IFN1YmplY3Q8YW55PjtcblxuICBfX3BhZ2luYXRpb25PcHRpb25zOiBNb25rZXlFY3hQYWdpbmF0aW9uT3B0aW9ucyB8IG51bGwgPSBudWxsO1xuXG4gIF9faTE4bjogYW55O1xuXG4gIF9faXNNb2JpbGUgPSB0aGlzLmlzTW9iaWxlKCk7XG5cbiAgX19sb2NhbGVzID0gWydwdC1CUicsICdlcy1DTCcsICdlbi1VUyddO1xuXG4gIHByaXZhdGUgcGFnaW5hdGlvbkZ1bmM6IGFueTtcblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5fX3Vuc3Vic2NyaWJlQWxsID0gbmV3IFN1YmplY3QoKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNNb2JpbGUoKSB7XG4gICAgY29uc3QgaXNNb2JpbGVXaWR0aCA9ICh3aW5kb3cuc2NyZWVuLndpZHRoIDw9IDY0MCkgfHxcbiAgICAgICh3aW5kb3cubWF0Y2hNZWRpYSAmJlxuICAgICAgICB3aW5kb3cubWF0Y2hNZWRpYSgnb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KScpLm1hdGNoZXNcbiAgICAgICk7XG4gICAgcmV0dXJuICgvQW5kcm9pZHx3ZWJPU3xpUGhvbmV8aVBhZHxpUG9kfEJsYWNrQmVycnl8TW9iaWxlL2kudGVzdChcbiAgICAgIG5hdmlnYXRvci51c2VyQWdlbnRcbiAgICApKSB8fCBpc01vYmlsZVdpZHRoO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVQYWdpbmF0aW9uKGNyZWF0ZSA9IHRydWUpIHtcbiAgICBjb25zdCB7IF9fcGFnaW5hdGlvbk9wdGlvbnMgfSA9IHRoaXM7XG5cbiAgICBpZiAoX19wYWdpbmF0aW9uT3B0aW9ucykge1xuICAgICAgY29uc3QgeyBtYWluRWxlbWVudCwgc2VydmljZSB9ID0gX19wYWdpbmF0aW9uT3B0aW9ucztcblxuICAgICAgY29uc3QgZWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKG1haW5FbGVtZW50KTtcblxuICAgICAgaWYgKGVsZW1lbnQpIHtcbiAgICAgICAgZWxlbWVudC5zY3JvbGwgPSBudWxsO1xuICAgICAgICBlbGVtZW50Lm9uc2Nyb2xsID0gbnVsbDtcblxuICAgICAgICBlbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIChlbGVtZW50IGFzIGFueSkuZXZlbnRMaXN0ZW5lcnMoJ3Njcm9sbCcpKTtcbiAgICAgICAgZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCAoZWxlbWVudCBhcyBhbnkpLmV2ZW50TGlzdGVuZXJzKCdzY3JvbGwnKVswXSk7XG4gICAgICAgIGlmIChjcmVhdGUpIHtcbiAgICAgICAgICBlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHsgc2Nyb2xsVG9wLCBzY3JvbGxIZWlnaHQsIG9mZnNldEhlaWdodCB9ID0gZWxlbWVudDtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRlbnRIZWlnaHQgPSBzY3JvbGxIZWlnaHQgLSBvZmZzZXRIZWlnaHQ7XG5cbiAgICAgICAgICAgIGlmIChjb250ZW50SGVpZ2h0IDw9IHNjcm9sbFRvcCkge1xuICAgICAgICAgICAgICBzZXJ2aWNlLmRvUGFnaW5hdGlvbigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVTdXBwb3J0KHN1cHBvcnRDb250cm9sczogTW9ua2V5RWN4U3VwcG9ydE9wdGlvbnMpIHtcbiAgICBjb25zdCB7IHNlcnZpY2UsIHNob3cgfSA9IHN1cHBvcnRDb250cm9scztcbiAgICBjb25zdCBtZXRob2QgPSBzaG93ID8gJ3Nob3cnIDogJ2hpZGUnO1xuICAgIHNlcnZpY2VbbWV0aG9kLnRvTG93ZXJDYXNlKCldKCk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZVRyYW5zbGF0ZSh0cmFuc2xhdGVPcHRpb25zOiBNb25rZXlFY3hUcmFuc2xhdGVPcHRpb25zKSB7XG4gICAgY29uc3QgeyBzZXJ2aWNlIH0gPSB0cmFuc2xhdGVPcHRpb25zO1xuICAgIHNlcnZpY2UuX19vbmkxOG5EYXRhQ2hhbmdlZCRcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9fdW5zdWJzY3JpYmVBbGwpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSBzZXJ2aWNlLl9faTE4bjtcbiAgICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgICB0aGlzLl9faTE4biA9IGRhdGE7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVWaWV3U2Nyb2xsKG9wdGlvbnM6IE1vbmtleUVjeFNjcm9sbE9wdGlvbnMpIHtcbiAgICBjb25zdCB7IGVsZW1lbnRJZCwgc2VydmljZSB9ID0gb3B0aW9ucztcblxuICAgIGlmIChlbGVtZW50SWQgPT09IHNlcnZpY2U/Ll9fc2F2ZWRTdGF0ZT8uc2Nyb2xsRWxlbWVudElkKSB7XG4gICAgICB0aGlzLmdvU2Nyb2xsKGVsZW1lbnRJZCk7XG5cbiAgICAgIHNlcnZpY2UuX19zYXZlZFN0YXRlLnNjcm9sbEVsZW1lbnRJZCA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRFcnJvckZpcnN0TWVzc2FnZVRyYW5zbGF0ZWQoZm9ybUNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCB8IG51bGwgPSBudWxsKSB7XG4gICAgaWYgKGZvcm1Db250cm9sPy5oYXNFcnJvcigncmVxdWlyZWQnKSkgcmV0dXJuICdGSUVMRC1SRVFVSVJFRCc7XG4gICAgaWYgKGZvcm1Db250cm9sPy5oYXNFcnJvcignaW52YWxpZCcpKSByZXR1cm4gJ0ZJRUxELUlOVkFMSUQnO1xuICAgIGlmIChmb3JtQ29udHJvbD8uaGFzRXJyb3IoJ2VtYWlsJykpIHJldHVybiAnSU5WQUxJRC1FTUFJTCc7XG4gICAgaWYgKGZvcm1Db250cm9sPy5oYXNFcnJvcignbWlubGVuZ3RoJykpIHJldHVybiAnTUlOLUxFTkdUSCc7XG4gICAgaWYgKGZvcm1Db250cm9sPy5oYXNFcnJvcignbWF4bGVuZ3RoJykpIHJldHVybiAnTUFYLUxFTkdUSCc7XG4gICAgaWYgKGZvcm1Db250cm9sPy5oYXNFcnJvcignbWF4JykpIHJldHVybiAnTUFYJztcbiAgICBpZiAoZm9ybUNvbnRyb2w/Lmhhc0Vycm9yKCdtaW4nKSkgcmV0dXJuICdNSU4nO1xuICAgIGlmIChmb3JtQ29udHJvbD8uaGFzRXJyb3IoJ3Bhc3N3b3Jkc05vdE1hdGNoaW5nJykpIHJldHVybiAnTUFUQ0gtUEFTU1dPUkQnO1xuICAgIGlmIChmb3JtQ29udHJvbD8uaGFzRXJyb3IoJ2ludmFsaWREYXRlJykpIHJldHVybiAnSU5WQUxJRC1EQVRFJztcbiAgICBpZiAoZm9ybUNvbnRyb2w/Lmhhc0Vycm9yKCdpbnZhbGlkVHJ1ZScpKSByZXR1cm4gJ0lOVkFMSUQtVFJVRSc7XG4gICAgaWYgKGZvcm1Db250cm9sPy5oYXNFcnJvcignaW52YWxpZENwZkNucGonKSkgcmV0dXJuICdJTlZBTElELURPQ1VNRU5UJztcbiAgICBpZiAoZm9ybUNvbnRyb2w/Lmhhc0Vycm9yKCdpbnZhbGlkWmlwQ29kZScpKSByZXR1cm4gJ0lOVkFMSUQtWklQQ09ERSc7XG4gICAgaWYgKGZvcm1Db250cm9sPy5oYXNFcnJvcignaW52YWxpZENvbWJvJykpIHJldHVybiAnSU5WQUxJRC1DT01CTyc7XG4gICAgaWYgKGZvcm1Db250cm9sPy5oYXNFcnJvcignaW52YWxpZFVybCcpKSByZXR1cm4gJ0lOVkFMSUQtVVJMJztcbiAgICBpZiAoZm9ybUNvbnRyb2w/Lmhhc0Vycm9yKCdpbnZhbGlkVW5sb2NrUmVnaXN0ZXInKSkgeyByZXR1cm4gJ0lOVkFMSUQtVU5MT0NLLVJFR0lTVEVSJzsgfVxuICAgIGlmIChmb3JtQ29udHJvbD8uaGFzRXJyb3IoJ2RhdGVTdGFydE11c3RCZUxlc3NUaGFuQW5kJykpIHtcbiAgICAgIHJldHVybiAnREFURS1TVEFSVC1NVVNULUJFLUxFU1MtVEhBTi1BTkQnO1xuICAgIH1cbiAgICBpZiAoZm9ybUNvbnRyb2w/Lmhhc0Vycm9yKCdkYXRlRW5kTXVzdEJlR3JlYXRlclRoYW5TdGFydCcpKSB7XG4gICAgICByZXR1cm4gJ0RBVEUtRU5ELU1VU1QtQkUtR1JFQVRFUi1USEFOLVNBUlQnO1xuICAgIH1cbiAgICBpZiAoZm9ybUNvbnRyb2w/Lmhhc0Vycm9yKCdwaG9uZScpKSByZXR1cm4gJ0lOVkFMSUQtUEhPTkUnO1xuICAgIGlmIChmb3JtQ29udHJvbD8uaGFzRXJyb3IoJ2ludmFsaWRWYWx1ZUdyZWF0ZXJUaGFuWmVybycpKSByZXR1cm4gJ0lOVkFMSUQtR1JFQVRFUi1USEFOLVpFUk8nO1xuICAgIGlmIChmb3JtQ29udHJvbD8uaGFzRXJyb3IoJ2RhdGVSYW5nZScpKSByZXR1cm4gJ0lOVkFMSUQtREFURVJBTkdFJztcbiAgICBpZiAoZm9ybUNvbnRyb2w/Lmhhc0Vycm9yKCdkaWZmZXJlbnRGcm9tWmVybycpKSByZXR1cm4gJ0RJRkZFUkVOVC1GUk9NVC1aRVJPJztcblxuICAgIHJldHVybiAnRklFTEQtSU5WQUxJRCc7XG4gIH1cblxuICBwcml2YXRlIGdldEVycm9yTGFzdE1lc3NhZ2VOb3RUcmFuc2xhdGVkKGZvcm1Db250cm9sOiBBYnN0cmFjdENvbnRyb2wgfCBudWxsID0gbnVsbCkge1xuICAgIGlmIChmb3JtQ29udHJvbD8uaGFzRXJyb3IoJ21pbmxlbmd0aCcpKSB7XG4gICAgICByZXR1cm4gYCR7Zm9ybUNvbnRyb2w/LmdldEVycm9yKCdtaW5sZW5ndGgnKS5yZXF1aXJlZExlbmd0aH0gY2FyYWN0ZXJlcy5gO1xuICAgIH1cbiAgICBpZiAoZm9ybUNvbnRyb2w/Lmhhc0Vycm9yKCdtYXhsZW5ndGgnKSkge1xuICAgICAgcmV0dXJuIGAke2Zvcm1Db250cm9sPy5nZXRFcnJvcignbWF4bGVuZ3RoJykucmVxdWlyZWRMZW5ndGh9IGNhcmFjdGVyZXMuYDtcbiAgICB9XG4gICAgaWYgKGZvcm1Db250cm9sPy5oYXNFcnJvcignbWF4JykpIHsgcmV0dXJuIGAke2Zvcm1Db250cm9sPy5nZXRFcnJvcignbWF4JykubWF4fWA7IH1cbiAgICBpZiAoZm9ybUNvbnRyb2w/Lmhhc0Vycm9yKCdtaW4nKSkgeyByZXR1cm4gYCR7Zm9ybUNvbnRyb2w/LmdldEVycm9yKCdtaW4nKS5taW59YDsgfVxuXG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgcHVibGljIHZhbGlkYXRlRm9ybVdpdGhUcmFuc2xhdGUoZjogRm9ybUdyb3VwLCBpbmRleD86IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGZvcm1FcnJvcnM6IGFueSA9IGYudmFsdWU7XG5cbiAgICBpZiAoZi5zdGF0dXMgPT09ICdWQUxJRCcpIHJldHVybiB0cnVlO1xuXG4gICAgaWYgKCFmb3JtRXJyb3JzKSByZXR1cm4gdHJ1ZTtcbiAgICBPYmplY3QuZW50cmllcyhmb3JtRXJyb3JzKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgIGNvbnN0IGNvbnRyb2wgPSBmLmdldChrZXkpO1xuICAgICAgZm9ybUVycm9yc1trZXldID0gJyc7XG4gICAgICBpZiAoY29udHJvbCAmJiAhY29udHJvbC52YWxpZCkge1xuICAgICAgICBjb25zdCBtc2cgPSB7XG4gICAgICAgICAgZmlyc3Q6IGBFUlJPUlMuJHt0aGlzLmdldEVycm9yRmlyc3RNZXNzYWdlVHJhbnNsYXRlZChmLmdldChrZXkpKX1gLFxuICAgICAgICAgIGxhc3Q6IHRoaXMuZ2V0RXJyb3JMYXN0TWVzc2FnZU5vdFRyYW5zbGF0ZWQoZi5nZXQoa2V5KSlcbiAgICAgICAgfTtcbiAgICAgICAgZm9ybUVycm9yc1trZXldID0gbXNnO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYgKE1vbmtleVV0aWxzLnBlcnNpc3ROdWxsRW1wdHlVbmRlZmluZWQoaW5kZXgpKSB7IHRoaXMuX19tb25rZXllY3hGb3JtRXJyb3JzW2luZGV4IHx8IDBdID0gZm9ybUVycm9yczsgfSBlbHNlIHtcbiAgICAgIHRoaXMuX19tb25rZXllY3hGb3JtRXJyb3JzID0gZm9ybUVycm9ycztcbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBwdWJsaWMgY29weVRvQ2xpcGJvYXJkKHZhbDogc3RyaW5nKSB7XG4gICAgY29uc3Qgc2VsQm94ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndGV4dGFyZWEnKTtcbiAgICBzZWxCb3guc3R5bGUucG9zaXRpb24gPSAnZml4ZWQnO1xuICAgIHNlbEJveC5zdHlsZS5sZWZ0ID0gJzAnO1xuICAgIHNlbEJveC5zdHlsZS50b3AgPSAnMCc7XG4gICAgc2VsQm94LnN0eWxlLm9wYWNpdHkgPSAnMCc7XG4gICAgc2VsQm94LnZhbHVlID0gdmFsO1xuICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoc2VsQm94KTtcbiAgICBzZWxCb3guZm9jdXMoKTtcbiAgICBzZWxCb3guc2VsZWN0KCk7XG4gICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoJ2NvcHknKTtcbiAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHNlbEJveCk7XG4gIH1cblxuICBwdWJsaWMgdmFsaWRhdGVGb3JtKGY6IEZvcm1Hcm91cCwgaW5kZXg/OiBudW1iZXIsIGFsaWFzPzogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgZm9ybUVycm9yczogYW55ID0gZi52YWx1ZTtcbiAgICBpZiAoZi5zdGF0dXMgPT09ICdWQUxJRCcpIHJldHVybiB0cnVlO1xuXG4gICAgaWYgKCFmb3JtRXJyb3JzKSByZXR1cm4gdHJ1ZTtcbiAgICBPYmplY3QuZW50cmllcyhmb3JtRXJyb3JzKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgIGNvbnN0IGNvbnRyb2wgPSBmLmdldChrZXkpO1xuICAgICAgZm9ybUVycm9yc1trZXldID0gJyc7XG4gICAgICBpZiAoY29udHJvbCAmJiAhY29udHJvbC52YWxpZCkge1xuICAgICAgICBjb25zdCBtc2cgPSB7XG4gICAgICAgICAgZmlyc3RNZXNzYWdlOiBgRVJST1JTLiR7dGhpcy5nZXRFcnJvckZpcnN0TWVzc2FnZVRyYW5zbGF0ZWQoXG4gICAgICAgICAgICBmLmdldChrZXkpXG4gICAgICAgICAgKX1gLFxuICAgICAgICAgIGxhc3RNZXNzYWdlOiB0aGlzLmdldEVycm9yTGFzdE1lc3NhZ2VOb3RUcmFuc2xhdGVkKGYuZ2V0KGtleSkpXG4gICAgICAgIH07XG4gICAgICAgIGZvcm1FcnJvcnNba2V5XSA9IG1zZztcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGlmIChNb25rZXlVdGlscy5wZXJzaXN0TnVsbEVtcHR5VW5kZWZpbmVkKGluZGV4KSkge1xuICAgICAgdGhpcy5fX21vbmtleWVjeEZvcm1FcnJvcnNbaW5kZXggfHwgMF0gPSBmb3JtRXJyb3JzO1xuICAgIH0gZWxzZSB7XG4gICAgICBsZXQgb2JqOiBhbnk7XG5cbiAgICAgIGlmIChhbGlhcykge1xuICAgICAgICBvYmogPSB7XG4gICAgICAgICAgW2FsaWFzXToge1xuICAgICAgICAgICAgLi4uZm9ybUVycm9yc1xuICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG9iaiA9IGZvcm1FcnJvcnM7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuX19tb25rZXllY3hGb3JtRXJyb3JzID0ge1xuICAgICAgICAuLi50aGlzLl9fbW9ua2V5ZWN4Rm9ybUVycm9ycyxcbiAgICAgICAgLi4ub2JqXG4gICAgICB9O1xuICAgIH1cbiAgICBmLm1hcmtBbGxBc1RvdWNoZWQoKTtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJBbGxTZXJ2aWNlRGF0YShjbGVhckRhdGE6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBjb250ZXh0ID0gdGhpcztcbiAgICBPYmplY3QudmFsdWVzKGNvbnRleHQpLmZvckVhY2goKGN0eDogYW55KSA9PiB7XG4gICAgICBpZiAoY3R4IGluc3RhbmNlb2YgTW9ua2V5RWN4Q29tbW9uc1NlcnZpY2UpIHtcbiAgICAgICAgY3R4LmNsZWFyKGNsZWFyRGF0YSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoYXJnczoge1xuICAgIHBhZ2luYXRpb25PcHRpb25zPzogTW9ua2V5RWN4UGFnaW5hdGlvbk9wdGlvbnM7XG4gICAgc3VwcG9ydENvbnRyb2xzPzogTW9ua2V5RWN4U3VwcG9ydE9wdGlvbnM7XG4gICAgc2Nyb2xsT3B0aW9ucz86IE1vbmtleUVjeFNjcm9sbE9wdGlvbnM7XG4gICAgdHJhbnNsYXRlT3B0aW9ucz86IE1vbmtleUVjeFRyYW5zbGF0ZU9wdGlvbnM7XG4gIH0pIHtcbiAgICBpZiAoYXJncz8ucGFnaW5hdGlvbk9wdGlvbnMpIHtcbiAgICAgIHRoaXMuX19wYWdpbmF0aW9uT3B0aW9ucyA9IGFyZ3M/LnBhZ2luYXRpb25PcHRpb25zO1xuICAgICAgdGhpcy5oYW5kbGVQYWdpbmF0aW9uKCk7XG4gICAgfVxuICAgIGlmIChhcmdzPy5zdXBwb3J0Q29udHJvbHMpIHtcbiAgICAgIHRoaXMuaGFuZGxlU3VwcG9ydChhcmdzPy5zdXBwb3J0Q29udHJvbHMpO1xuICAgIH1cbiAgICBpZiAoYXJncz8udHJhbnNsYXRlT3B0aW9ucykge1xuICAgICAgdGhpcy5oYW5kbGVUcmFuc2xhdGUoYXJncz8udHJhbnNsYXRlT3B0aW9ucyk7XG4gICAgfVxuICAgIGlmIChhcmdzPy5zY3JvbGxPcHRpb25zKSB7XG4gICAgICB0aGlzLmhhbmRsZVZpZXdTY3JvbGwoYXJncy5zY3JvbGxPcHRpb25zKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koY2xlYXJEYXRhOiBib29sZWFuID0gdHJ1ZSkge1xuICAgIHRoaXMuX191bnN1YnNjcmliZUFsbC5uZXh0KCk7XG4gICAgdGhpcy5fX3Vuc3Vic2NyaWJlQWxsLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5jbGVhckFsbFNlcnZpY2VEYXRhKGNsZWFyRGF0YSk7XG4gICAgdGhpcy5oYW5kbGVQYWdpbmF0aW9uKGZhbHNlKTtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGVFcnJvckZyb21TZXJ2aWNlcyhlcnJvcjogTW9ua2V5RWN4RXJyb3JSZXNwb25zZSwgZjogRm9ybUdyb3VwKSB7XG4gICAgdGhpcy5fX21vbmtleWVjeEZvcm1FcnJvcnMgPSBudWxsO1xuICAgIGlmIChlcnJvci50eXBlID09PSAnUGFyYW1ldGVyX0Vycm9yJykge1xuICAgICAgT2JqZWN0LmVudHJpZXMoZi52YWx1ZSkuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgIGVycm9yLm5vdGlmaWNhdGlvbnMuZm9yRWFjaCgoXzogYW55KSA9PiB7XG4gICAgICAgICAgY29uc3QgZmllbGQgPSBfLnNwbGl0KCc6JylbMF07XG4gICAgICAgICAgY29uc3QgZGVzY3JpcHRpb24gPSBfLnNwbGl0KCc6JylbMV07XG4gICAgICAgICAgaWYgKGZpZWxkID09PSBrZXkpIHtcbiAgICAgICAgICAgIGNvbnN0IG1zZyA9IHtcbiAgICAgICAgICAgICAgZmlyc3RNZXNzYWdlOiAnJyxcbiAgICAgICAgICAgICAgbGFzdE1lc3NhZ2U6IGRlc2NyaXB0aW9uXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgdGhpcy5fX21vbmtleWVjeEZvcm1FcnJvcnMgPSB7XG4gICAgICAgICAgICAgIC4uLnRoaXMuX19tb25rZXllY3hGb3JtRXJyb3JzLFxuICAgICAgICAgICAgICBba2V5XTogbXNnXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgZi5jb250cm9sc1trZXldLnNldEVycm9ycyh7XG4gICAgICAgICAgICAgIGluY29ycmVjdDogdHJ1ZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGYubWFya0FsbEFzVG91Y2hlZCgpO1xuICB9XG5cbiAgcHVibGljIGdvQmFjaygpIHtcbiAgICB3aW5kb3cuaGlzdG9yeS5iYWNrKCk7XG4gIH1cblxuICBwdWJsaWMgZ29TY3JvbGwoaWQ6IHN0cmluZykge1xuICAgIGNvbnN0IGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCk7XG4gICAgaWYgKGVsZW1lbnQpIGVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRFbWJlZGRlZERhdGEoZGF0YTogYW55LCBmaWVsZDogc3RyaW5nKTogYW55W10gfCBhbnkge1xuICAgIGNvbnN0IHsgX2VtYmVkZGVkIH0gPSBkYXRhO1xuICAgIHJldHVybiBfZW1iZWRkZWQgPyBfZW1iZWRkZWRbZmllbGRdIDogbnVsbDtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuV2luZG93KHVybDogc3RyaW5nKSB7XG4gICAgd2luZG93Lm9wZW4oYCR7dXJsfWAsICdfYmxhbmsnKTtcbiAgfVxuXG4gIHB1YmxpYyBmaWxsSTE4bihkYXRhOiBhbnkpIHtcbiAgICB0aGlzLl9faTE4biA9IGRhdGE7XG4gIH1cblxuICBwdWJsaWMgZ2V0Q291bnRyeVByZWZpeChjb3VudHJ5OiBzdHJpbmcpIHtcbiAgICByZXR1cm4ge1xuICAgICAgYnI6IDU1LFxuICAgICAgY2w6IDU2XG4gICAgfVtjb3VudHJ5XTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDb3VudHJ5Q3VycmVuY3lDaGFydEZvcm1hdChjb3VudHJ5OiBzdHJpbmcpIHtcbiAgICByZXR1cm4ge1xuICAgICAgYnI6ICdSJCAjLCMjIywjIzAuMDAnLFxuICAgICAgY2w6ICdDTFAgIywjIyMsIyMwJ1xuICAgIH1bY291bnRyeV07XG4gIH1cblxuICBwdWJsaWMgZ2V0Q291bnRyeURvY3VtZW50TWFzayh0eXBlOiAnQ1BGJyB8ICdDUE5KJyB8ICcnLCBjb3VudHJ5OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gTW9ua2V5RWN4VXRpbHMuZ2V0RG9jdW1lbnRNYXNrKHR5cGUsIGNvdW50cnkpO1xuICB9XG5cbiAgcHVibGljIGdldENvdW50cnlEb2N1bWVudFBsYWNlaG9sZGVyKHR5cGU6ICdDUEYnIHwgJ0NQTkonIHwgJycsIGNvdW50cnk6IHN0cmluZykge1xuICAgIHJldHVybiBNb25rZXlFY3hVdGlscy5nZXREb2N1bWVudFBsYWNlaG9sZGVyKHR5cGUsIGNvdW50cnkpO1xuICB9XG5cbiAgcHVibGljIGdldENvdW50cnlWYWxpZGF0b3JzKGNvdW50cnk6IHN0cmluZykge1xuICAgIHJldHVybiB7XG4gICAgICBicjoge1xuICAgICAgICBnb3Zlcm5tZW50SWQ6IFZhbGlkYXRlVXRpbHMuRG9jdW1lbnRWYWxpZGF0b3IsXG4gICAgICAgIHppcENvZGU6IFZhbGlkYXRvcnMuemlwQ29kZUJ5Q291bnRyeShjb3VudHJ5KVxuICAgICAgfSxcbiAgICAgIGNsOiB7XG4gICAgICAgIGdvdmVybm1lbnRJZDogVmFsaWRhdGVVdGlscy5Eb2N1bWVudFJ1dFZhbGlkYXRvcixcbiAgICAgICAgemlwQ29kZTogVmFsaWRhdG9ycy56aXBDb2RlQnlDb3VudHJ5KGNvdW50cnkpXG4gICAgICB9XG4gICAgfVtjb3VudHJ5XTtcbiAgfVxuXG4gIHB1YmxpYyBpc0FibGVUb0hhbmRsZVBhZ2luYXRpb24oKSB7XG4gICAgY29uc3QgeyBfX3BhZ2luYXRpb25PcHRpb25zIH0gPSB0aGlzO1xuXG4gICAgaWYgKF9fcGFnaW5hdGlvbk9wdGlvbnMpIHtcbiAgICAgIGNvbnN0IHsgc2VydmljZSB9ID0gX19wYWdpbmF0aW9uT3B0aW9ucztcblxuICAgICAgY29uc3QgbGlua3MgPSBzZXJ2aWNlLl9fbGlua3M7XG4gICAgICBpZiAobGlua3MgJiYgbGlua3M/Lm5leHQpIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBwdWJsaWMgb25IYW5kbGVQYWdpbmF0aW9uKCkge1xuICAgIGNvbnN0IHsgX19wYWdpbmF0aW9uT3B0aW9ucyB9ID0gdGhpcztcblxuICAgIGlmIChfX3BhZ2luYXRpb25PcHRpb25zKSB7XG4gICAgICBjb25zdCB7IHNlcnZpY2UgfSA9IF9fcGFnaW5hdGlvbk9wdGlvbnM7XG4gICAgICBzZXJ2aWNlLmRvUGFnaW5hdGlvbigpO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
342
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktZnJvbnQtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvYmFzZS9iYXNlLWNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw0QkFBNEI7QUFDNUIsT0FBTyxFQUFFLFNBQVMsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUVyRCxPQUFPLEVBQ0wsdUJBQXVCLEVBTXZCLGNBQWMsRUFDZCxhQUFhLEVBQ2IsVUFBVSxFQUNYLE1BQU0sbUJBQW1CLENBQUM7QUFDM0IsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUszQyxNQUFNLE9BQWdCLGFBQWE7SUFlakM7UUFWQSx3QkFBbUIsR0FBc0MsSUFBSSxDQUFDO1FBSTlELGVBQVUsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFN0IsY0FBUyxHQUFHLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztRQUt0QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRU8sUUFBUTtRQUNkLE1BQU0sYUFBYSxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLElBQUksR0FBRyxDQUFDO1lBQ2hELENBQUMsTUFBTSxDQUFDLFVBQVU7Z0JBQ2hCLE1BQU0sQ0FBQyxVQUFVLENBQUMsb0NBQW9DLENBQUMsQ0FBQyxPQUFPLENBQ2hFLENBQUM7UUFDSixPQUFPLENBQUMsbURBQW1ELENBQUMsSUFBSSxDQUM5RCxTQUFTLENBQUMsU0FBUyxDQUNwQixDQUFDLElBQUksYUFBYSxDQUFDO0lBQ3RC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TSxFQUFFLG1CQUFtQixFQUFFLEdBQUcsSUFBSSxDQUFDO1FBRXJDLElBQUksbUJBQW1CLEVBQUU7WUFDdkIsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLG1CQUFtQixDQUFDO1lBRXhDLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUM7WUFDOUIsSUFBSSxLQUFLLElBQUksS0FBSyxFQUFFLElBQUk7Z0JBQUUsT0FBTyxJQUFJLENBQUM7U0FDdkM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFTSxrQkFBa0I7UUFDdkIsTUFBTSxFQUFFLG1CQUFtQixFQUFFLEdBQUcsSUFBSSxDQUFDO1FBRXJDLElBQUksbUJBQW1CLEVBQUU7WUFDdkIsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLG1CQUFtQixDQUFDO1lBQ3hDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztTQUN4QjtJQUNILENBQUM7OzBHQXJXbUIsYUFBYTs4RkFBYixhQUFhOzJGQUFiLGFBQWE7a0JBSGxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtpQkFDNUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuICovXG5pbXBvcnQgeyBEaXJlY3RpdmUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICBNb25rZXlFY3hDb21tb25zU2VydmljZSxcbiAgTW9ua2V5RWN4RXJyb3JSZXNwb25zZSxcbiAgTW9ua2V5RWN4UGFnaW5hdGlvbk9wdGlvbnMsXG4gIE1vbmtleUVjeFNjcm9sbE9wdGlvbnMsXG4gIE1vbmtleUVjeFN1cHBvcnRPcHRpb25zLFxuICBNb25rZXlFY3hUcmFuc2xhdGVPcHRpb25zLFxuICBNb25rZXlFY3hVdGlscyxcbiAgVmFsaWRhdGVVdGlscyxcbiAgVmFsaWRhdG9yc1xufSBmcm9tICdtb25rZXktZnJvbnQtY29yZSc7XG5pbXBvcnQgeyBNb25rZXlVdGlscyB9IGZyb20gJ21vbmtleS1zdHlsZS1ndWlkZSc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tiYXNlQ29tcG9uZW50XSdcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIF9fbW9ua2V5ZWN4Rm9ybUVycm9yczogYW55IHwgYW55W107XG5cbiAgX191bnN1YnNjcmliZUFsbDogU3ViamVjdDxhbnk+O1xuXG4gIF9fcGFnaW5hdGlvbk9wdGlvbnM6IE1vbmtleUVjeFBhZ2luYXRpb25PcHRpb25zIHwgbnVsbCA9IG51bGw7XG5cbiAgX19pMThuOiBhbnk7XG5cbiAgX19pc01vYmlsZSA9IHRoaXMuaXNNb2JpbGUoKTtcblxuICBfX2xvY2FsZXMgPSBbJ3B0LUJSJywgJ2VzLUNMJywgJ2VuLVVTJ107XG5cbiAgcHJpdmF0ZSBwYWdpbmF0aW9uRnVuYzogYW55O1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLl9fdW5zdWJzY3JpYmVBbGwgPSBuZXcgU3ViamVjdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc01vYmlsZSgpIHtcbiAgICBjb25zdCBpc01vYmlsZVdpZHRoID0gKHdpbmRvdy5zY3JlZW4ud2lkdGggPD0gNjQwKSB8fFxuICAgICAgKHdpbmRvdy5tYXRjaE1lZGlhICYmXG4gICAgICAgIHdpbmRvdy5tYXRjaE1lZGlhKCdvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpJykubWF0Y2hlc1xuICAgICAgKTtcbiAgICByZXR1cm4gKC9BbmRyb2lkfHdlYk9TfGlQaG9uZXxpUGFkfGlQb2R8QmxhY2tCZXJyeXxNb2JpbGUvaS50ZXN0KFxuICAgICAgbmF2aWdhdG9yLnVzZXJBZ2VudFxuICAgICkpIHx8IGlzTW9iaWxlV2lkdGg7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZVBhZ2luYXRpb24oY3JlYXRlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHsgX19wYWdpbmF0aW9uT3B0aW9ucyB9ID0gdGhpcztcblxuICAgIGlmIChfX3BhZ2luYXRpb25PcHRpb25zKSB7XG4gICAgICBjb25zdCB7IG1haW5FbGVtZW50LCBzZXJ2aWNlIH0gPSBfX3BhZ2luYXRpb25PcHRpb25zO1xuXG4gICAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQobWFpbkVsZW1lbnQpO1xuXG4gICAgICBpZiAoZWxlbWVudCkge1xuICAgICAgICBlbGVtZW50LnNjcm9sbCA9IG51bGw7XG4gICAgICAgIGVsZW1lbnQub25zY3JvbGwgPSBudWxsO1xuXG4gICAgICAgIGVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgKGVsZW1lbnQgYXMgYW55KS5ldmVudExpc3RlbmVycygnc2Nyb2xsJykpO1xuICAgICAgICBlbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIChlbGVtZW50IGFzIGFueSkuZXZlbnRMaXN0ZW5lcnMoJ3Njcm9sbCcpWzBdKTtcbiAgICAgICAgaWYgKGNyZWF0ZSkge1xuICAgICAgICAgIGVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyBzY3JvbGxUb3AsIHNjcm9sbEhlaWdodCwgb2Zmc2V0SGVpZ2h0IH0gPSBlbGVtZW50O1xuICAgICAgICAgICAgY29uc3QgY29udGVudEhlaWdodCA9IHNjcm9sbEhlaWdodCAtIG9mZnNldEhlaWdodDtcblxuICAgICAgICAgICAgaWYgKGNvbnRlbnRIZWlnaHQgPD0gc2Nyb2xsVG9wKSB7XG4gICAgICAgICAgICAgIHNlcnZpY2UuZG9QYWdpbmF0aW9uKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZVN1cHBvcnQoc3VwcG9ydENvbnRyb2xzOiBNb25rZXlFY3hTdXBwb3J0T3B0aW9ucykge1xuICAgIGNvbnN0IHsgc2VydmljZSwgc2hvdyB9ID0gc3VwcG9ydENvbnRyb2xzO1xuICAgIGNvbnN0IG1ldGhvZCA9IHNob3cgPyAnc2hvdycgOiAnaGlkZSc7XG4gICAgc2VydmljZVttZXRob2QudG9Mb3dlckNhc2UoKV0oKTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlVHJhbnNsYXRlKHRyYW5zbGF0ZU9wdGlvbnM6IE1vbmtleUVjeFRyYW5zbGF0ZU9wdGlvbnMpIHtcbiAgICBjb25zdCB7IHNlcnZpY2UgfSA9IHRyYW5zbGF0ZU9wdGlvbnM7XG4gICAgc2VydmljZS5fX29uaTE4bkRhdGFDaGFuZ2VkJFxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX191bnN1YnNjcmliZUFsbCkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgY29uc3QgZGF0YSA9IHNlcnZpY2UuX19pMThuO1xuICAgICAgICBpZiAoZGF0YSkge1xuICAgICAgICAgIHRoaXMuX19pMThuID0gZGF0YTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZVZpZXdTY3JvbGwob3B0aW9uczogTW9ua2V5RWN4U2Nyb2xsT3B0aW9ucykge1xuICAgIGNvbnN0IHsgZWxlbWVudElkLCBzZXJ2aWNlIH0gPSBvcHRpb25zO1xuXG4gICAgaWYgKGVsZW1lbnRJZCA9PT0gc2VydmljZT8uX19zYXZlZFN0YXRlPy5zY3JvbGxFbGVtZW50SWQpIHtcbiAgICAgIHRoaXMuZ29TY3JvbGwoZWxlbWVudElkKTtcblxuICAgICAgc2VydmljZS5fX3NhdmVkU3RhdGUuc2Nyb2xsRWxlbWVudElkID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldEVycm9yRmlyc3RNZXNzYWdlVHJhbnNsYXRlZChmb3JtQ29udHJvbDogQWJzdHJhY3RDb250cm9sIHwgbnVsbCA9IG51bGwpIHtcbiAgICBpZiAoZm9ybUNvbnRyb2w/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpKSByZXR1cm4gJ0ZJRUxELVJFUVVJUkVEJztcbiAgICBpZiAoZm9ybUNvbnRyb2w/Lmhhc0Vycm9yKCdpbnZhbGlkJykpIHJldHVybiAnRklFTEQtSU5WQUxJRCc7XG4gICAgaWYgKGZvcm1Db250cm9sPy5oYXNFcnJvcignZW1haWwnKSkgcmV0dXJuICdJTlZBTElELUVNQUlMJztcbiAgICBpZiAoZm9ybUNvbnRyb2w/Lmhhc0Vycm9yKCdtaW5sZW5ndGgnKSkgcmV0dXJuICdNSU4tTEVOR1RIJztcbiAgICBpZiAoZm9ybUNvbnRyb2w/Lmhhc0Vycm9yKCdtYXhsZW5ndGgnKSkgcmV0dXJuICdNQVgtTEVOR1RIJztcbiAgICBpZiAoZm9ybUNvbnRyb2w/Lmhhc0Vycm9yKCdtYXgnKSkgcmV0dXJuICdNQVgnO1xuICAgIGlmIChmb3JtQ29udHJvbD8uaGFzRXJyb3IoJ21pbicpKSByZXR1cm4gJ01JTic7XG4gICAgaWYgKGZvcm1Db250cm9sPy5oYXNFcnJvcigncGFzc3dvcmRzTm90TWF0Y2hpbmcnKSkgcmV0dXJuICdNQVRDSC1QQVNTV09SRCc7XG4gICAgaWYgKGZvcm1Db250cm9sPy5oYXNFcnJvcignaW52YWxpZERhdGUnKSkgcmV0dXJuICdJTlZBTElELURBVEUnO1xuICAgIGlmIChmb3JtQ29udHJvbD8uaGFzRXJyb3IoJ2ludmFsaWRUcnVlJykpIHJldHVybiAnSU5WQUxJRC1UUlVFJztcbiAgICBpZiAoZm9ybUNvbnRyb2w/Lmhhc0Vycm9yKCdpbnZhbGlkQ3BmQ25waicpKSByZXR1cm4gJ0lOVkFMSUQtRE9DVU1FTlQnO1xuICAgIGlmIChmb3JtQ29udHJvbD8uaGFzRXJyb3IoJ2ludmFsaWRaaXBDb2RlJykpIHJldHVybiAnSU5WQUxJRC1aSVBDT0RFJztcbiAgICBpZiAoZm9ybUNvbnRyb2w/Lmhhc0Vycm9yKCdpbnZhbGlkQ29tYm8nKSkgcmV0dXJuICdJTlZBTElELUNPTUJPJztcbiAgICBpZiAoZm9ybUNvbnRyb2w/Lmhhc0Vycm9yKCdpbnZhbGlkVXJsJykpIHJldHVybiAnSU5WQUxJRC1VUkwnO1xuICAgIGlmIChmb3JtQ29udHJvbD8uaGFzRXJyb3IoJ2ludmFsaWRVbmxvY2tSZWdpc3RlcicpKSB7IHJldHVybiAnSU5WQUxJRC1VTkxPQ0stUkVHSVNURVInOyB9XG4gICAgaWYgKGZvcm1Db250cm9sPy5oYXNFcnJvcignZGF0ZVN0YXJ0TXVzdEJlTGVzc1RoYW5BbmQnKSkge1xuICAgICAgcmV0dXJuICdEQVRFLVNUQVJULU1VU1QtQkUtTEVTUy1USEFOLUFORCc7XG4gICAgfVxuICAgIGlmIChmb3JtQ29udHJvbD8uaGFzRXJyb3IoJ2RhdGVFbmRNdXN0QmVHcmVhdGVyVGhhblN0YXJ0JykpIHtcbiAgICAgIHJldHVybiAnREFURS1FTkQtTVVTVC1CRS1HUkVBVEVSLVRIQU4tU0FSVCc7XG4gICAgfVxuICAgIGlmIChmb3JtQ29udHJvbD8uaGFzRXJyb3IoJ3Bob25lJykpIHJldHVybiAnSU5WQUxJRC1QSE9ORSc7XG4gICAgaWYgKGZvcm1Db250cm9sPy5oYXNFcnJvcignaW52YWxpZFZhbHVlR3JlYXRlclRoYW5aZXJvJykpIHJldHVybiAnSU5WQUxJRC1HUkVBVEVSLVRIQU4tWkVSTyc7XG4gICAgaWYgKGZvcm1Db250cm9sPy5oYXNFcnJvcignZGF0ZVJhbmdlJykpIHJldHVybiAnSU5WQUxJRC1EQVRFUkFOR0UnO1xuICAgIGlmIChmb3JtQ29udHJvbD8uaGFzRXJyb3IoJ2RpZmZlcmVudEZyb21aZXJvJykpIHJldHVybiAnRElGRkVSRU5ULUZST01ULVpFUk8nO1xuXG4gICAgcmV0dXJuICdGSUVMRC1JTlZBTElEJztcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RXJyb3JMYXN0TWVzc2FnZU5vdFRyYW5zbGF0ZWQoZm9ybUNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCB8IG51bGwgPSBudWxsKSB7XG4gICAgaWYgKGZvcm1Db250cm9sPy5oYXNFcnJvcignbWlubGVuZ3RoJykpIHtcbiAgICAgIHJldHVybiBgJHtmb3JtQ29udHJvbD8uZ2V0RXJyb3IoJ21pbmxlbmd0aCcpLnJlcXVpcmVkTGVuZ3RofSBjYXJhY3RlcmVzLmA7XG4gICAgfVxuICAgIGlmIChmb3JtQ29udHJvbD8uaGFzRXJyb3IoJ21heGxlbmd0aCcpKSB7XG4gICAgICByZXR1cm4gYCR7Zm9ybUNvbnRyb2w/LmdldEVycm9yKCdtYXhsZW5ndGgnKS5yZXF1aXJlZExlbmd0aH0gY2FyYWN0ZXJlcy5gO1xuICAgIH1cbiAgICBpZiAoZm9ybUNvbnRyb2w/Lmhhc0Vycm9yKCdtYXgnKSkgeyByZXR1cm4gYCR7Zm9ybUNvbnRyb2w/LmdldEVycm9yKCdtYXgnKS5tYXh9YDsgfVxuICAgIGlmIChmb3JtQ29udHJvbD8uaGFzRXJyb3IoJ21pbicpKSB7IHJldHVybiBgJHtmb3JtQ29udHJvbD8uZ2V0RXJyb3IoJ21pbicpLm1pbn1gOyB9XG5cbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICBwdWJsaWMgdmFsaWRhdGVGb3JtV2l0aFRyYW5zbGF0ZShmOiBGb3JtR3JvdXAsIGluZGV4PzogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgY29uc3QgZm9ybUVycm9yczogYW55ID0gZi52YWx1ZTtcblxuICAgIGlmIChmLnN0YXR1cyA9PT0gJ1ZBTElEJykgcmV0dXJuIHRydWU7XG5cbiAgICBpZiAoIWZvcm1FcnJvcnMpIHJldHVybiB0cnVlO1xuICAgIE9iamVjdC5lbnRyaWVzKGZvcm1FcnJvcnMpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgY29uc3QgY29udHJvbCA9IGYuZ2V0KGtleSk7XG4gICAgICBmb3JtRXJyb3JzW2tleV0gPSAnJztcbiAgICAgIGlmIChjb250cm9sICYmICFjb250cm9sLnZhbGlkKSB7XG4gICAgICAgIGNvbnN0IG1zZyA9IHtcbiAgICAgICAgICBmaXJzdDogYEVSUk9SUy4ke3RoaXMuZ2V0RXJyb3JGaXJzdE1lc3NhZ2VUcmFuc2xhdGVkKGYuZ2V0KGtleSkpfWAsXG4gICAgICAgICAgbGFzdDogdGhpcy5nZXRFcnJvckxhc3RNZXNzYWdlTm90VHJhbnNsYXRlZChmLmdldChrZXkpKVxuICAgICAgICB9O1xuICAgICAgICBmb3JtRXJyb3JzW2tleV0gPSBtc2c7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAoTW9ua2V5VXRpbHMucGVyc2lzdE51bGxFbXB0eVVuZGVmaW5lZChpbmRleCkpIHsgdGhpcy5fX21vbmtleWVjeEZvcm1FcnJvcnNbaW5kZXggfHwgMF0gPSBmb3JtRXJyb3JzOyB9IGVsc2Uge1xuICAgICAgdGhpcy5fX21vbmtleWVjeEZvcm1FcnJvcnMgPSBmb3JtRXJyb3JzO1xuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBjb3B5VG9DbGlwYm9hcmQodmFsOiBzdHJpbmcpIHtcbiAgICBjb25zdCBzZWxCb3ggPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0ZXh0YXJlYScpO1xuICAgIHNlbEJveC5zdHlsZS5wb3NpdGlvbiA9ICdmaXhlZCc7XG4gICAgc2VsQm94LnN0eWxlLmxlZnQgPSAnMCc7XG4gICAgc2VsQm94LnN0eWxlLnRvcCA9ICcwJztcbiAgICBzZWxCb3guc3R5bGUub3BhY2l0eSA9ICcwJztcbiAgICBzZWxCb3gudmFsdWUgPSB2YWw7XG4gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChzZWxCb3gpO1xuICAgIHNlbEJveC5mb2N1cygpO1xuICAgIHNlbEJveC5zZWxlY3QoKTtcbiAgICBkb2N1bWVudC5leGVjQ29tbWFuZCgnY29weScpO1xuICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoc2VsQm94KTtcbiAgfVxuXG4gIHB1YmxpYyB2YWxpZGF0ZUZvcm0oZjogRm9ybUdyb3VwLCBpbmRleD86IG51bWJlciwgYWxpYXM/OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBmb3JtRXJyb3JzOiBhbnkgPSBmLnZhbHVlO1xuICAgIGlmIChmLnN0YXR1cyA9PT0gJ1ZBTElEJykgcmV0dXJuIHRydWU7XG5cbiAgICBpZiAoIWZvcm1FcnJvcnMpIHJldHVybiB0cnVlO1xuICAgIE9iamVjdC5lbnRyaWVzKGZvcm1FcnJvcnMpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgY29uc3QgY29udHJvbCA9IGYuZ2V0KGtleSk7XG4gICAgICBmb3JtRXJyb3JzW2tleV0gPSAnJztcbiAgICAgIGlmIChjb250cm9sICYmICFjb250cm9sLnZhbGlkKSB7XG4gICAgICAgIGNvbnN0IG1zZyA9IHtcbiAgICAgICAgICBmaXJzdE1lc3NhZ2U6IGBFUlJPUlMuJHt0aGlzLmdldEVycm9yRmlyc3RNZXNzYWdlVHJhbnNsYXRlZChcbiAgICAgICAgICAgIGYuZ2V0KGtleSlcbiAgICAgICAgICApfWAsXG4gICAgICAgICAgbGFzdE1lc3NhZ2U6IHRoaXMuZ2V0RXJyb3JMYXN0TWVzc2FnZU5vdFRyYW5zbGF0ZWQoZi5nZXQoa2V5KSlcbiAgICAgICAgfTtcbiAgICAgICAgZm9ybUVycm9yc1trZXldID0gbXNnO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYgKE1vbmtleVV0aWxzLnBlcnNpc3ROdWxsRW1wdHlVbmRlZmluZWQoaW5kZXgpKSB7XG4gICAgICB0aGlzLl9fbW9ua2V5ZWN4Rm9ybUVycm9yc1tpbmRleCB8fCAwXSA9IGZvcm1FcnJvcnM7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxldCBvYmo6IGFueTtcblxuICAgICAgaWYgKGFsaWFzKSB7XG4gICAgICAgIG9iaiA9IHtcbiAgICAgICAgICBbYWxpYXNdOiB7XG4gICAgICAgICAgICAuLi5mb3JtRXJyb3JzXG4gICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgb2JqID0gZm9ybUVycm9ycztcbiAgICAgIH1cblxuICAgICAgdGhpcy5fX21vbmtleWVjeEZvcm1FcnJvcnMgPSB7XG4gICAgICAgIC4uLnRoaXMuX19tb25rZXllY3hGb3JtRXJyb3JzLFxuICAgICAgICAuLi5vYmpcbiAgICAgIH07XG4gICAgfVxuICAgIGYubWFya0FsbEFzVG91Y2hlZCgpO1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBjbGVhckFsbFNlcnZpY2VEYXRhKGNsZWFyRGF0YTogYm9vbGVhbikge1xuICAgIGNvbnN0IGNvbnRleHQgPSB0aGlzO1xuICAgIE9iamVjdC52YWx1ZXMoY29udGV4dCkuZm9yRWFjaCgoY3R4OiBhbnkpID0+IHtcbiAgICAgIGlmIChjdHggaW5zdGFuY2VvZiBNb25rZXlFY3hDb21tb25zU2VydmljZSkge1xuICAgICAgICBjdHguY2xlYXIoY2xlYXJEYXRhKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdChhcmdzOiB7XG4gICAgcGFnaW5hdGlvbk9wdGlvbnM/OiBNb25rZXlFY3hQYWdpbmF0aW9uT3B0aW9ucztcbiAgICBzdXBwb3J0Q29udHJvbHM/OiBNb25rZXlFY3hTdXBwb3J0T3B0aW9ucztcbiAgICBzY3JvbGxPcHRpb25zPzogTW9ua2V5RWN4U2Nyb2xsT3B0aW9ucztcbiAgICB0cmFuc2xhdGVPcHRpb25zPzogTW9ua2V5RWN4VHJhbnNsYXRlT3B0aW9ucztcbiAgfSkge1xuICAgIGlmIChhcmdzPy5wYWdpbmF0aW9uT3B0aW9ucykge1xuICAgICAgdGhpcy5fX3BhZ2luYXRpb25PcHRpb25zID0gYXJncz8ucGFnaW5hdGlvbk9wdGlvbnM7XG4gICAgICB0aGlzLmhhbmRsZVBhZ2luYXRpb24oKTtcbiAgICB9XG4gICAgaWYgKGFyZ3M/LnN1cHBvcnRDb250cm9scykge1xuICAgICAgdGhpcy5oYW5kbGVTdXBwb3J0KGFyZ3M/LnN1cHBvcnRDb250cm9scyk7XG4gICAgfVxuICAgIGlmIChhcmdzPy50cmFuc2xhdGVPcHRpb25zKSB7XG4gICAgICB0aGlzLmhhbmRsZVRyYW5zbGF0ZShhcmdzPy50cmFuc2xhdGVPcHRpb25zKTtcbiAgICB9XG4gICAgaWYgKGFyZ3M/LnNjcm9sbE9wdGlvbnMpIHtcbiAgICAgIHRoaXMuaGFuZGxlVmlld1Njcm9sbChhcmdzLnNjcm9sbE9wdGlvbnMpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveShjbGVhckRhdGE6IGJvb2xlYW4gPSB0cnVlKSB7XG4gICAgdGhpcy5fX3Vuc3Vic2NyaWJlQWxsLm5leHQoKTtcbiAgICB0aGlzLl9fdW5zdWJzY3JpYmVBbGwuY29tcGxldGUoKTtcbiAgICB0aGlzLmNsZWFyQWxsU2VydmljZURhdGEoY2xlYXJEYXRhKTtcbiAgICB0aGlzLmhhbmRsZVBhZ2luYXRpb24oZmFsc2UpO1xuICB9XG5cbiAgcHVibGljIGhhbmRsZUVycm9yRnJvbVNlcnZpY2VzKGVycm9yOiBNb25rZXlFY3hFcnJvclJlc3BvbnNlLCBmOiBGb3JtR3JvdXApIHtcbiAgICB0aGlzLl9fbW9ua2V5ZWN4Rm9ybUVycm9ycyA9IG51bGw7XG4gICAgaWYgKGVycm9yLnR5cGUgPT09ICdQYXJhbWV0ZXJfRXJyb3InKSB7XG4gICAgICBPYmplY3QuZW50cmllcyhmLnZhbHVlKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgICAgZXJyb3Iubm90aWZpY2F0aW9ucy5mb3JFYWNoKChfOiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zdCBmaWVsZCA9IF8uc3BsaXQoJzonKVswXTtcbiAgICAgICAgICBjb25zdCBkZXNjcmlwdGlvbiA9IF8uc3BsaXQoJzonKVsxXTtcbiAgICAgICAgICBpZiAoZmllbGQgPT09IGtleSkge1xuICAgICAgICAgICAgY29uc3QgbXNnID0ge1xuICAgICAgICAgICAgICBmaXJzdE1lc3NhZ2U6ICcnLFxuICAgICAgICAgICAgICBsYXN0TWVzc2FnZTogZGVzY3JpcHRpb25cbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICB0aGlzLl9fbW9ua2V5ZWN4Rm9ybUVycm9ycyA9IHtcbiAgICAgICAgICAgICAgLi4udGhpcy5fX21vbmtleWVjeEZvcm1FcnJvcnMsXG4gICAgICAgICAgICAgIFtrZXldOiBtc2dcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBmLmNvbnRyb2xzW2tleV0uc2V0RXJyb3JzKHtcbiAgICAgICAgICAgICAgaW5jb3JyZWN0OiB0cnVlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgZi5tYXJrQWxsQXNUb3VjaGVkKCk7XG4gIH1cblxuICBwdWJsaWMgZ29CYWNrKCkge1xuICAgIHdpbmRvdy5oaXN0b3J5LmJhY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBnb1Njcm9sbChpZDogc3RyaW5nKSB7XG4gICAgY29uc3QgZWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTtcbiAgICBpZiAoZWxlbWVudCkgZWxlbWVudC5zY3JvbGxJbnRvVmlldygpO1xuICB9XG5cbiAgcHVibGljIGdldEVtYmVkZGVkRGF0YShkYXRhOiBhbnksIGZpZWxkOiBzdHJpbmcpOiBhbnlbXSB8IGFueSB7XG4gICAgY29uc3QgeyBfZW1iZWRkZWQgfSA9IGRhdGE7XG4gICAgcmV0dXJuIF9lbWJlZGRlZCA/IF9lbWJlZGRlZFtmaWVsZF0gOiBudWxsO1xuICB9XG5cbiAgcHVibGljIG9wZW5XaW5kb3codXJsOiBzdHJpbmcpIHtcbiAgICB3aW5kb3cub3BlbihgJHt1cmx9YCwgJ19ibGFuaycpO1xuICB9XG5cbiAgcHVibGljIGZpbGxJMThuKGRhdGE6IGFueSkge1xuICAgIHRoaXMuX19pMThuID0gZGF0YTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDb3VudHJ5UHJlZml4KGNvdW50cnk6IHN0cmluZykge1xuICAgIHJldHVybiB7XG4gICAgICBicjogNTUsXG4gICAgICBjbDogNTZcbiAgICB9W2NvdW50cnldO1xuICB9XG5cbiAgcHVibGljIGdldENvdW50cnlDdXJyZW5jeUNoYXJ0Rm9ybWF0KGNvdW50cnk6IHN0cmluZykge1xuICAgIHJldHVybiB7XG4gICAgICBicjogJ1IkICMsIyMjLCMjMC4wMCcsXG4gICAgICBjbDogJ0NMUCAjLCMjIywjIzAnXG4gICAgfVtjb3VudHJ5XTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDb3VudHJ5RG9jdW1lbnRNYXNrKHR5cGU6ICdDUEYnIHwgJ0NQTkonIHwgJycsIGNvdW50cnk6IHN0cmluZykge1xuICAgIHJldHVybiBNb25rZXlFY3hVdGlscy5nZXREb2N1bWVudE1hc2sodHlwZSwgY291bnRyeSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0Q291bnRyeURvY3VtZW50UGxhY2Vob2xkZXIodHlwZTogJ0NQRicgfCAnQ1BOSicgfCAnJywgY291bnRyeTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIE1vbmtleUVjeFV0aWxzLmdldERvY3VtZW50UGxhY2Vob2xkZXIodHlwZSwgY291bnRyeSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0Q291bnRyeVZhbGlkYXRvcnMoY291bnRyeTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGJyOiB7XG4gICAgICAgIGdvdmVybm1lbnRJZDogVmFsaWRhdGVVdGlscy5Eb2N1bWVudFZhbGlkYXRvcixcbiAgICAgICAgemlwQ29kZTogVmFsaWRhdG9ycy56aXBDb2RlQnlDb3VudHJ5KGNvdW50cnkpXG4gICAgICB9LFxuICAgICAgY2w6IHtcbiAgICAgICAgZ292ZXJubWVudElkOiBWYWxpZGF0ZVV0aWxzLkRvY3VtZW50UnV0VmFsaWRhdG9yLFxuICAgICAgICB6aXBDb2RlOiBWYWxpZGF0b3JzLnppcENvZGVCeUNvdW50cnkoY291bnRyeSlcbiAgICAgIH0sXG4gICAgICBteDoge1xuICAgICAgICBnb3Zlcm5tZW50SWQ6IFZhbGlkYXRlVXRpbHMuRG9jdW1lbnRSRkNWYWxpZGF0b3IsXG4gICAgICAgIHppcENvZGU6IFZhbGlkYXRvcnMuemlwQ29kZUJ5Q291bnRyeShjb3VudHJ5KVxuICAgICAgfSxcbiAgICB9W2NvdW50cnldIHx8IHtcbiAgICAgIGdvdmVybm1lbnRJZDogVmFsaWRhdGVVdGlscy5Eb2N1bWVudFZhbGlkYXRvcixcbiAgICAgIHppcENvZGU6IFZhbGlkYXRvcnMuemlwQ29kZUJ5Q291bnRyeSgnYnInKVxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgaXNBYmxlVG9IYW5kbGVQYWdpbmF0aW9uKCkge1xuICAgIGNvbnN0IHsgX19wYWdpbmF0aW9uT3B0aW9ucyB9ID0gdGhpcztcblxuICAgIGlmIChfX3BhZ2luYXRpb25PcHRpb25zKSB7XG4gICAgICBjb25zdCB7IHNlcnZpY2UgfSA9IF9fcGFnaW5hdGlvbk9wdGlvbnM7XG5cbiAgICAgIGNvbnN0IGxpbmtzID0gc2VydmljZS5fX2xpbmtzO1xuICAgICAgaWYgKGxpbmtzICYmIGxpbmtzPy5uZXh0KSByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHVibGljIG9uSGFuZGxlUGFnaW5hdGlvbigpIHtcbiAgICBjb25zdCB7IF9fcGFnaW5hdGlvbk9wdGlvbnMgfSA9IHRoaXM7XG5cbiAgICBpZiAoX19wYWdpbmF0aW9uT3B0aW9ucykge1xuICAgICAgY29uc3QgeyBzZXJ2aWNlIH0gPSBfX3BhZ2luYXRpb25PcHRpb25zO1xuICAgICAgc2VydmljZS5kb1BhZ2luYXRpb24oKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -5,8 +5,10 @@ export const validators = {
|
|
|
5
5
|
email: Validators.email,
|
|
6
6
|
governmentId: Validators.documentBR,
|
|
7
7
|
governmentIdRut: Validators.documentCL,
|
|
8
|
+
governmentIdRfc: Validators.documentMX,
|
|
8
9
|
documentBR: Validators.documentBR,
|
|
9
10
|
documentCL: Validators.documentCL,
|
|
11
|
+
documentMX: Validators.documentMX,
|
|
10
12
|
date: Validators.date,
|
|
11
13
|
zipCode: Validators.zipCode,
|
|
12
14
|
minLength: (param) => {
|
|
@@ -17,4 +19,4 @@ export const validators = {
|
|
|
17
19
|
},
|
|
18
20
|
differentFromZero: Validators.differentFromZero
|
|
19
21
|
};
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS12YWxpZGF0b3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LWZyb250LWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2Jhc2UvYmFzZS12YWxpZGF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLElBQUksV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRS9DLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBUTtJQUM3QixRQUFRLEVBQUUsV0FBVyxDQUFDLFFBQVE7SUFDOUIsS0FBSyxFQUFFLFVBQVUsQ0FBQyxLQUFLO0lBQ3ZCLFlBQVksRUFBRSxVQUFVLENBQUMsVUFBVTtJQUNuQyxlQUFlLEVBQUUsVUFBVSxDQUFDLFVBQVU7SUFDdEMsZUFBZSxFQUFFLFVBQVUsQ0FBQyxVQUFVO0lBQ3RDLFVBQVUsRUFBRSxVQUFVLENBQUMsVUFBVTtJQUNqQyxVQUFVLEVBQUUsVUFBVSxDQUFDLFVBQVU7SUFDakMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxVQUFVO0lBQ2pDLElBQUksRUFBRSxVQUFVLENBQUMsSUFBSTtJQUNyQixPQUFPLEVBQUUsVUFBVSxDQUFDLE9BQU87SUFDM0IsU0FBUyxFQUFFLENBQUMsS0FBYSxFQUFFLEVBQUU7UUFDM0IsT0FBTyxXQUFXLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFDRCxTQUFTLEVBQUUsQ0FBQyxLQUFhLEVBQUUsRUFBRTtRQUMzQixPQUFPLFdBQVcsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUNELGlCQUFpQixFQUFFLFVBQVUsQ0FBQyxpQkFBaUI7Q0FDaEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZhbGlkYXRvcnMgYXMgVmFsaWRhdG9yc18gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBWYWxpZGF0b3JzIH0gZnJvbSAnbW9ua2V5LWZyb250LWNvcmUnO1xuXG5leHBvcnQgY29uc3QgdmFsaWRhdG9yczogYW55ID0ge1xuICByZXF1aXJlZDogVmFsaWRhdG9yc18ucmVxdWlyZWQsXG4gIGVtYWlsOiBWYWxpZGF0b3JzLmVtYWlsLFxuICBnb3Zlcm5tZW50SWQ6IFZhbGlkYXRvcnMuZG9jdW1lbnRCUixcbiAgZ292ZXJubWVudElkUnV0OiBWYWxpZGF0b3JzLmRvY3VtZW50Q0wsXG4gIGdvdmVybm1lbnRJZFJmYzogVmFsaWRhdG9ycy5kb2N1bWVudE1YLFxuICBkb2N1bWVudEJSOiBWYWxpZGF0b3JzLmRvY3VtZW50QlIsXG4gIGRvY3VtZW50Q0w6IFZhbGlkYXRvcnMuZG9jdW1lbnRDTCxcbiAgZG9jdW1lbnRNWDogVmFsaWRhdG9ycy5kb2N1bWVudE1YLFxuICBkYXRlOiBWYWxpZGF0b3JzLmRhdGUsXG4gIHppcENvZGU6IFZhbGlkYXRvcnMuemlwQ29kZSxcbiAgbWluTGVuZ3RoOiAocGFyYW06IG51bWJlcikgPT4ge1xuICAgIHJldHVybiBWYWxpZGF0b3JzXy5taW5MZW5ndGgocGFyYW0pO1xuICB9LFxuICBtYXhMZW5ndGg6IChwYXJhbTogbnVtYmVyKSA9PiB7XG4gICAgcmV0dXJuIFZhbGlkYXRvcnNfLm1heExlbmd0aChwYXJhbSk7XG4gIH0sXG4gIGRpZmZlcmVudEZyb21aZXJvOiBWYWxpZGF0b3JzLmRpZmZlcmVudEZyb21aZXJvXG59O1xuIl19
|
|
@@ -308,8 +308,15 @@ class BaseComponent {
|
|
|
308
308
|
cl: {
|
|
309
309
|
governmentId: ValidateUtils.DocumentRutValidator,
|
|
310
310
|
zipCode: Validators.zipCodeByCountry(country)
|
|
311
|
-
}
|
|
312
|
-
|
|
311
|
+
},
|
|
312
|
+
mx: {
|
|
313
|
+
governmentId: ValidateUtils.DocumentRFCValidator,
|
|
314
|
+
zipCode: Validators.zipCodeByCountry(country)
|
|
315
|
+
},
|
|
316
|
+
}[country] || {
|
|
317
|
+
governmentId: ValidateUtils.DocumentValidator,
|
|
318
|
+
zipCode: Validators.zipCodeByCountry('br')
|
|
319
|
+
};
|
|
313
320
|
}
|
|
314
321
|
isAbleToHandlePagination() {
|
|
315
322
|
const { __paginationOptions } = this;
|
|
@@ -343,8 +350,10 @@ const validators = {
|
|
|
343
350
|
email: Validators.email,
|
|
344
351
|
governmentId: Validators.documentBR,
|
|
345
352
|
governmentIdRut: Validators.documentCL,
|
|
353
|
+
governmentIdRfc: Validators.documentMX,
|
|
346
354
|
documentBR: Validators.documentBR,
|
|
347
355
|
documentCL: Validators.documentCL,
|
|
356
|
+
documentMX: Validators.documentMX,
|
|
348
357
|
date: Validators.date,
|
|
349
358
|
zipCode: Validators.zipCode,
|
|
350
359
|
minLength: (param) => {
|