@mediusinc/mng-commons 0.3.0 → 0.3.3
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/action/action.component.mjs +29 -7
- package/esm2020/lib/components/action/editor/action-editor.component.mjs +7 -6
- package/esm2020/lib/components/action/models/action-execution.model.mjs +1 -1
- package/esm2020/lib/components/form/autocomplete/autocomplete.component.mjs +186 -32
- package/esm2020/lib/components/form/editor/form-editor.component.mjs +3 -3
- package/esm2020/lib/components/form/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.mjs +1 -1
- package/esm2020/lib/components/form/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.mjs +8 -8
- package/esm2020/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +4 -6
- package/esm2020/lib/components/tableview/route/tableview-route.component.mjs +9 -6
- package/esm2020/lib/components/tableview/table/column-filter/column-filter.component.mjs +18 -23
- package/esm2020/lib/components/tableview/table/table.component.mjs +3 -3
- package/esm2020/lib/descriptors/action.descriptor.mjs +87 -4
- package/esm2020/lib/descriptors/editor.descriptor.mjs +32 -11
- package/esm2020/lib/descriptors/table.descriptor.mjs +28 -10
- package/esm2020/lib/mng-commons.module.mjs +6 -2
- package/esm2020/lib/models/error.model.mjs +1 -1
- package/esm2020/lib/pipes/index.mjs +2 -1
- package/esm2020/lib/pipes/link-formatter.pipe.mjs +39 -0
- package/esm2020/lib/services/action-executor.service.mjs +36 -41
- package/esm2020/lib/utils/index.mjs +2 -2
- package/esm2020/lib/utils/notification.util.mjs +47 -0
- package/fesm2015/mediusinc-mng-commons.mjs +617 -283
- package/fesm2015/mediusinc-mng-commons.mjs.map +1 -1
- package/fesm2020/mediusinc-mng-commons.mjs +611 -281
- package/fesm2020/mediusinc-mng-commons.mjs.map +1 -1
- package/lib/components/action/action.component.d.ts +12 -1
- package/lib/components/action/models/action-execution.model.d.ts +2 -0
- package/lib/components/form/autocomplete/autocomplete.component.d.ts +20 -5
- package/lib/components/tableview/table/column-filter/column-filter.component.d.ts +1 -0
- package/lib/descriptors/action.descriptor.d.ts +35 -1
- package/lib/descriptors/editor.descriptor.d.ts +12 -5
- package/lib/descriptors/table.descriptor.d.ts +15 -10
- package/lib/mng-commons.module.d.ts +69 -68
- package/lib/models/error.model.d.ts +2 -0
- package/lib/pipes/index.d.ts +1 -0
- package/lib/pipes/link-formatter.pipe.d.ts +11 -0
- package/lib/services/action-executor.service.d.ts +5 -3
- package/lib/utils/index.d.ts +1 -1
- package/lib/utils/{toast.util.d.ts → notification.util.d.ts} +7 -10
- package/package.json +1 -1
- package/scss/mng-overrides/_theme_button.scss +4 -0
- package/esm2020/lib/utils/toast.util.mjs +0 -44
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { I18nUtil } from './i18n.util';
|
|
2
|
-
export class ToastUtil {
|
|
3
|
-
static notification(viewContainer, title, message, severity = 'success') {
|
|
4
|
-
const messageService = viewContainer?.getMessageService();
|
|
5
|
-
if (!messageService) {
|
|
6
|
-
console.warn(`No message service was provided through view container, message will not be displayed.`);
|
|
7
|
-
return;
|
|
8
|
-
}
|
|
9
|
-
messageService.add({ severity: severity, summary: title, detail: message, life: severity === 'error' ? 10000 : 5000 });
|
|
10
|
-
}
|
|
11
|
-
static tableNotificationError(translationService, table, error, viewContainer) {
|
|
12
|
-
const params = {};
|
|
13
|
-
if (error?.message) {
|
|
14
|
-
params.errorMessage = `: ${error.message}`;
|
|
15
|
-
}
|
|
16
|
-
else {
|
|
17
|
-
params.errorMessage = '.';
|
|
18
|
-
}
|
|
19
|
-
console.log(params);
|
|
20
|
-
const tableErrorTitle = I18nUtil.instantModelTranslation(translationService, table.model, 'table.error.title', undefined, undefined, 'general.error', params) ?? undefined;
|
|
21
|
-
const tableErrorMessage = I18nUtil.instantModelTranslation(translationService, table.model, 'table.error.message', undefined, undefined, 'general.errorMessage', params) ?? undefined;
|
|
22
|
-
ToastUtil.notification(viewContainer, tableErrorTitle, tableErrorMessage, 'error');
|
|
23
|
-
}
|
|
24
|
-
static actionNotificationSuccess(translationService, action, functionName, customTitleKey, customMessageKey, viewContainer, item) {
|
|
25
|
-
const actionSuccessTitle = I18nUtil.instantActionTranslation(translationService, action, 'success.title', customTitleKey, item, 'general.success', functionName) ?? undefined;
|
|
26
|
-
const actionSuccessMessage = I18nUtil.instantActionTranslation(translationService, action, 'success.message', customMessageKey, item, 'general.successMessage', functionName) ?? undefined;
|
|
27
|
-
ToastUtil.notification(viewContainer, actionSuccessTitle, actionSuccessMessage);
|
|
28
|
-
}
|
|
29
|
-
static actionNotificationError(translationService, action, error, functionName, viewContainer, item) {
|
|
30
|
-
const params = {
|
|
31
|
-
errorMessage: I18nUtil.instantErrorI18nTranslation(translationService, error)
|
|
32
|
-
};
|
|
33
|
-
const actionErrorTitle = I18nUtil.instantActionTranslation(translationService, action, 'error.title', action.runNotificationErrorTitle, item, 'general.error', functionName, params) ??
|
|
34
|
-
undefined;
|
|
35
|
-
const actionErrorMessage = I18nUtil.instantActionTranslation(translationService, action, 'error.message', action.runNotificationErrorMessage, item, 'general.errorMessage', functionName, params) ?? undefined;
|
|
36
|
-
ToastUtil.notification(viewContainer, actionErrorTitle, actionErrorMessage, 'error');
|
|
37
|
-
}
|
|
38
|
-
static getFormEditorWarningMessage(translationService, title, message) {
|
|
39
|
-
const actionErrorTitle = translationService.instant(title) ?? undefined;
|
|
40
|
-
const actionErrorMessage = translationService.instant(message) ?? undefined;
|
|
41
|
-
return { severity: 'warn', summary: actionErrorTitle, detail: actionErrorMessage };
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QudXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdXRpbHMvdG9hc3QudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBRXJDLE1BQU0sT0FBTyxTQUFTO0lBQ1gsTUFBTSxDQUFDLFlBQVksQ0FBQyxhQUF3QyxFQUFFLEtBQWMsRUFBRSxPQUFnQixFQUFFLFdBQXlDLFNBQVM7UUFDckosTUFBTSxjQUFjLEdBQUcsYUFBYSxFQUFFLGlCQUFpQixFQUFFLENBQUM7UUFDMUQsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUNqQixPQUFPLENBQUMsSUFBSSxDQUFDLHdGQUF3RixDQUFDLENBQUM7WUFDdkcsT0FBTztTQUNWO1FBQ0QsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBQyxDQUFDLENBQUM7SUFDekgsQ0FBQztJQUVNLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxrQkFBb0MsRUFBRSxLQUEyQixFQUFFLEtBQVUsRUFBRSxhQUF3QztRQUN4SixNQUFNLE1BQU0sR0FBUSxFQUFFLENBQUM7UUFDdkIsSUFBSSxLQUFLLEVBQUUsT0FBTyxFQUFFO1lBQ2hCLE1BQU0sQ0FBQyxZQUFZLEdBQUcsS0FBSyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDOUM7YUFBTTtZQUNILE1BQU0sQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDO1NBQzdCO1FBQ0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNwQixNQUFNLGVBQWUsR0FBRyxRQUFRLENBQUMsdUJBQXVCLENBQUMsa0JBQWtCLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxtQkFBbUIsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxNQUFNLENBQUMsSUFBSSxTQUFTLENBQUM7UUFDM0ssTUFBTSxpQkFBaUIsR0FDbkIsUUFBUSxDQUFDLHVCQUF1QixDQUFDLGtCQUFrQixFQUFFLEtBQUssQ0FBQyxLQUFLLEVBQUUscUJBQXFCLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLENBQUMsSUFBSSxTQUFTLENBQUM7UUFDaEssU0FBUyxDQUFDLFlBQVksQ0FBQyxhQUFhLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7SUFFTSxNQUFNLENBQUMseUJBQXlCLENBQ25DLGtCQUFvQyxFQUNwQyxNQUE2QixFQUM3QixZQUFvQixFQUNwQixjQUF1QixFQUN2QixnQkFBeUIsRUFDekIsYUFBd0MsRUFDeEMsSUFBVTtRQUVWLE1BQU0sa0JBQWtCLEdBQ3BCLFFBQVEsQ0FBQyx3QkFBd0IsQ0FBQyxrQkFBa0IsRUFBRSxNQUFNLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsWUFBWSxDQUFDLElBQUksU0FBUyxDQUFDO1FBQ3ZKLE1BQU0sb0JBQW9CLEdBQ3RCLFFBQVEsQ0FBQyx3QkFBd0IsQ0FBQyxrQkFBa0IsRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLHdCQUF3QixFQUFFLFlBQVksQ0FBQyxJQUFJLFNBQVMsQ0FBQztRQUNsSyxTQUFTLENBQUMsWUFBWSxDQUFDLGFBQWEsRUFBRSxrQkFBa0IsRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO0lBQ3BGLENBQUM7SUFFTSxNQUFNLENBQUMsdUJBQXVCLENBQ2pDLGtCQUFvQyxFQUNwQyxNQUE2QixFQUM3QixLQUFlLEVBQ2YsWUFBb0IsRUFDcEIsYUFBd0MsRUFDeEMsSUFBVTtRQUVWLE1BQU0sTUFBTSxHQUFHO1lBQ1gsWUFBWSxFQUFFLFFBQVEsQ0FBQywyQkFBMkIsQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLENBQUM7U0FDaEYsQ0FBQztRQUNGLE1BQU0sZ0JBQWdCLEdBQ2xCLFFBQVEsQ0FBQyx3QkFBd0IsQ0FBQyxrQkFBa0IsRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLE1BQU0sQ0FBQyx5QkFBeUIsRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxNQUFNLENBQUM7WUFDM0osU0FBUyxDQUFDO1FBQ2QsTUFBTSxrQkFBa0IsR0FDcEIsUUFBUSxDQUFDLHdCQUF3QixDQUM3QixrQkFBa0IsRUFDbEIsTUFBTSxFQUNOLGVBQWUsRUFDZixNQUFNLENBQUMsMkJBQTJCLEVBQ2xDLElBQUksRUFDSixzQkFBc0IsRUFDdEIsWUFBWSxFQUNaLE1BQU0sQ0FDVCxJQUFJLFNBQVMsQ0FBQztRQUNuQixTQUFTLENBQUMsWUFBWSxDQUFDLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxrQkFBa0IsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN6RixDQUFDO0lBRU0sTUFBTSxDQUFDLDJCQUEyQixDQUFDLGtCQUFvQyxFQUFFLEtBQWEsRUFBRSxPQUFlO1FBQzFHLE1BQU0sZ0JBQWdCLEdBQUcsa0JBQWtCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLFNBQVMsQ0FBQztRQUN4RSxNQUFNLGtCQUFrQixHQUFHLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxTQUFTLENBQUM7UUFDNUUsT0FBTyxFQUFDLFFBQVEsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxrQkFBa0IsRUFBQyxDQUFDO0lBQ3JGLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5cbmltcG9ydCB7QWN0aW9uRGVzY3JpcHRvciwgVGFibGVEZXNjcmlwdG9yfSBmcm9tICcuLi9kZXNjcmlwdG9ycyc7XG5pbXBvcnQge0lWaWV3Q29udGFpbmVyLCBNbmdFcnJvcn0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCB7STE4blV0aWx9IGZyb20gJy4vaTE4bi51dGlsJztcblxuZXhwb3J0IGNsYXNzIFRvYXN0VXRpbCB7XG4gICAgcHVibGljIHN0YXRpYyBub3RpZmljYXRpb24odmlld0NvbnRhaW5lcj86IElWaWV3Q29udGFpbmVyPGFueSwgYW55PiwgdGl0bGU/OiBzdHJpbmcsIG1lc3NhZ2U/OiBzdHJpbmcsIHNldmVyaXR5OiAnc3VjY2VzcycgfCAnd2FybicgfCAnZXJyb3InID0gJ3N1Y2Nlc3MnKSB7XG4gICAgICAgIGNvbnN0IG1lc3NhZ2VTZXJ2aWNlID0gdmlld0NvbnRhaW5lcj8uZ2V0TWVzc2FnZVNlcnZpY2UoKTtcbiAgICAgICAgaWYgKCFtZXNzYWdlU2VydmljZSkge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKGBObyBtZXNzYWdlIHNlcnZpY2Ugd2FzIHByb3ZpZGVkIHRocm91Z2ggdmlldyBjb250YWluZXIsIG1lc3NhZ2Ugd2lsbCBub3QgYmUgZGlzcGxheWVkLmApO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIG1lc3NhZ2VTZXJ2aWNlLmFkZCh7c2V2ZXJpdHk6IHNldmVyaXR5LCBzdW1tYXJ5OiB0aXRsZSwgZGV0YWlsOiBtZXNzYWdlLCBsaWZlOiBzZXZlcml0eSA9PT0gJ2Vycm9yJyA/IDEwMDAwIDogNTAwMH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgdGFibGVOb3RpZmljYXRpb25FcnJvcih0cmFuc2xhdGlvblNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsIHRhYmxlOiBUYWJsZURlc2NyaXB0b3I8YW55PiwgZXJyb3I6IGFueSwgdmlld0NvbnRhaW5lcj86IElWaWV3Q29udGFpbmVyPGFueSwgYW55Pikge1xuICAgICAgICBjb25zdCBwYXJhbXM6IGFueSA9IHt9O1xuICAgICAgICBpZiAoZXJyb3I/Lm1lc3NhZ2UpIHtcbiAgICAgICAgICAgIHBhcmFtcy5lcnJvck1lc3NhZ2UgPSBgOiAke2Vycm9yLm1lc3NhZ2V9YDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBhcmFtcy5lcnJvck1lc3NhZ2UgPSAnLic7XG4gICAgICAgIH1cbiAgICAgICAgY29uc29sZS5sb2cocGFyYW1zKTtcbiAgICAgICAgY29uc3QgdGFibGVFcnJvclRpdGxlID0gSTE4blV0aWwuaW5zdGFudE1vZGVsVHJhbnNsYXRpb24odHJhbnNsYXRpb25TZXJ2aWNlLCB0YWJsZS5tb2RlbCwgJ3RhYmxlLmVycm9yLnRpdGxlJywgdW5kZWZpbmVkLCB1bmRlZmluZWQsICdnZW5lcmFsLmVycm9yJywgcGFyYW1zKSA/PyB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IHRhYmxlRXJyb3JNZXNzYWdlID1cbiAgICAgICAgICAgIEkxOG5VdGlsLmluc3RhbnRNb2RlbFRyYW5zbGF0aW9uKHRyYW5zbGF0aW9uU2VydmljZSwgdGFibGUubW9kZWwsICd0YWJsZS5lcnJvci5tZXNzYWdlJywgdW5kZWZpbmVkLCB1bmRlZmluZWQsICdnZW5lcmFsLmVycm9yTWVzc2FnZScsIHBhcmFtcykgPz8gdW5kZWZpbmVkO1xuICAgICAgICBUb2FzdFV0aWwubm90aWZpY2F0aW9uKHZpZXdDb250YWluZXIsIHRhYmxlRXJyb3JUaXRsZSwgdGFibGVFcnJvck1lc3NhZ2UsICdlcnJvcicpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgYWN0aW9uTm90aWZpY2F0aW9uU3VjY2VzcyhcbiAgICAgICAgdHJhbnNsYXRpb25TZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgICAgICBhY3Rpb246IEFjdGlvbkRlc2NyaXB0b3I8YW55PixcbiAgICAgICAgZnVuY3Rpb25OYW1lOiBzdHJpbmcsXG4gICAgICAgIGN1c3RvbVRpdGxlS2V5Pzogc3RyaW5nLFxuICAgICAgICBjdXN0b21NZXNzYWdlS2V5Pzogc3RyaW5nLFxuICAgICAgICB2aWV3Q29udGFpbmVyPzogSVZpZXdDb250YWluZXI8YW55LCBhbnk+LFxuICAgICAgICBpdGVtPzogYW55XG4gICAgKSB7XG4gICAgICAgIGNvbnN0IGFjdGlvblN1Y2Nlc3NUaXRsZSA9XG4gICAgICAgICAgICBJMThuVXRpbC5pbnN0YW50QWN0aW9uVHJhbnNsYXRpb24odHJhbnNsYXRpb25TZXJ2aWNlLCBhY3Rpb24sICdzdWNjZXNzLnRpdGxlJywgY3VzdG9tVGl0bGVLZXksIGl0ZW0sICdnZW5lcmFsLnN1Y2Nlc3MnLCBmdW5jdGlvbk5hbWUpID8/IHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgYWN0aW9uU3VjY2Vzc01lc3NhZ2UgPVxuICAgICAgICAgICAgSTE4blV0aWwuaW5zdGFudEFjdGlvblRyYW5zbGF0aW9uKHRyYW5zbGF0aW9uU2VydmljZSwgYWN0aW9uLCAnc3VjY2Vzcy5tZXNzYWdlJywgY3VzdG9tTWVzc2FnZUtleSwgaXRlbSwgJ2dlbmVyYWwuc3VjY2Vzc01lc3NhZ2UnLCBmdW5jdGlvbk5hbWUpID8/IHVuZGVmaW5lZDtcbiAgICAgICAgVG9hc3RVdGlsLm5vdGlmaWNhdGlvbih2aWV3Q29udGFpbmVyLCBhY3Rpb25TdWNjZXNzVGl0bGUsIGFjdGlvblN1Y2Nlc3NNZXNzYWdlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGFjdGlvbk5vdGlmaWNhdGlvbkVycm9yKFxuICAgICAgICB0cmFuc2xhdGlvblNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgICAgIGFjdGlvbjogQWN0aW9uRGVzY3JpcHRvcjxhbnk+LFxuICAgICAgICBlcnJvcjogTW5nRXJyb3IsXG4gICAgICAgIGZ1bmN0aW9uTmFtZTogc3RyaW5nLFxuICAgICAgICB2aWV3Q29udGFpbmVyPzogSVZpZXdDb250YWluZXI8YW55LCBhbnk+LFxuICAgICAgICBpdGVtPzogYW55XG4gICAgKSB7XG4gICAgICAgIGNvbnN0IHBhcmFtcyA9IHtcbiAgICAgICAgICAgIGVycm9yTWVzc2FnZTogSTE4blV0aWwuaW5zdGFudEVycm9ySTE4blRyYW5zbGF0aW9uKHRyYW5zbGF0aW9uU2VydmljZSwgZXJyb3IpXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IGFjdGlvbkVycm9yVGl0bGUgPVxuICAgICAgICAgICAgSTE4blV0aWwuaW5zdGFudEFjdGlvblRyYW5zbGF0aW9uKHRyYW5zbGF0aW9uU2VydmljZSwgYWN0aW9uLCAnZXJyb3IudGl0bGUnLCBhY3Rpb24ucnVuTm90aWZpY2F0aW9uRXJyb3JUaXRsZSwgaXRlbSwgJ2dlbmVyYWwuZXJyb3InLCBmdW5jdGlvbk5hbWUsIHBhcmFtcykgPz9cbiAgICAgICAgICAgIHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgYWN0aW9uRXJyb3JNZXNzYWdlID1cbiAgICAgICAgICAgIEkxOG5VdGlsLmluc3RhbnRBY3Rpb25UcmFuc2xhdGlvbihcbiAgICAgICAgICAgICAgICB0cmFuc2xhdGlvblNlcnZpY2UsXG4gICAgICAgICAgICAgICAgYWN0aW9uLFxuICAgICAgICAgICAgICAgICdlcnJvci5tZXNzYWdlJyxcbiAgICAgICAgICAgICAgICBhY3Rpb24ucnVuTm90aWZpY2F0aW9uRXJyb3JNZXNzYWdlLFxuICAgICAgICAgICAgICAgIGl0ZW0sXG4gICAgICAgICAgICAgICAgJ2dlbmVyYWwuZXJyb3JNZXNzYWdlJyxcbiAgICAgICAgICAgICAgICBmdW5jdGlvbk5hbWUsXG4gICAgICAgICAgICAgICAgcGFyYW1zXG4gICAgICAgICAgICApID8/IHVuZGVmaW5lZDtcbiAgICAgICAgVG9hc3RVdGlsLm5vdGlmaWNhdGlvbih2aWV3Q29udGFpbmVyLCBhY3Rpb25FcnJvclRpdGxlLCBhY3Rpb25FcnJvck1lc3NhZ2UsICdlcnJvcicpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0Rm9ybUVkaXRvcldhcm5pbmdNZXNzYWdlKHRyYW5zbGF0aW9uU2VydmljZTogVHJhbnNsYXRlU2VydmljZSwgdGl0bGU6IHN0cmluZywgbWVzc2FnZTogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IGFjdGlvbkVycm9yVGl0bGUgPSB0cmFuc2xhdGlvblNlcnZpY2UuaW5zdGFudCh0aXRsZSkgPz8gdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBhY3Rpb25FcnJvck1lc3NhZ2UgPSB0cmFuc2xhdGlvblNlcnZpY2UuaW5zdGFudChtZXNzYWdlKSA/PyB1bmRlZmluZWQ7XG4gICAgICAgIHJldHVybiB7c2V2ZXJpdHk6ICd3YXJuJywgc3VtbWFyeTogYWN0aW9uRXJyb3JUaXRsZSwgZGV0YWlsOiBhY3Rpb25FcnJvck1lc3NhZ2V9O1xuICAgIH1cbn1cbiJdfQ==
|