@esfaenza/core 15.2.109 → 15.2.112
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/components/jace-login/jace-login.component.d.ts +2 -0
- package/components/navbar/navbar.component.d.ts +2 -1
- package/domain/models/jace/JaceModule.d.ts +1 -0
- package/domain/models/jace/JacePermission.d.ts +1 -0
- package/domain/models/jace/JaceRole.d.ts +1 -0
- package/domain/tokens.d.ts +2 -0
- package/esm2020/components/external-page/external_pages.component.mjs +2 -1
- package/esm2020/components/jace-login/jace-login.component.mjs +17 -6
- package/esm2020/components/navbar/navbar.component.mjs +16 -6
- package/esm2020/domain/models/jace/JaceIdentity.mjs +6 -4
- package/esm2020/domain/models/jace/JaceModule.mjs +2 -1
- package/esm2020/domain/models/jace/JacePermission.mjs +1 -1
- package/esm2020/domain/models/jace/JaceRole.mjs +2 -1
- package/esm2020/domain/tokens.mjs +3 -1
- package/esm2020/lib/app.component.mjs +2 -2
- package/esm2020/lib/core.module.mjs +6 -5
- package/esm2020/modules/classes/_shared.module.mjs +6 -5
- package/fesm2015/esfaenza-core-components.mjs +32 -9
- package/fesm2015/esfaenza-core-components.mjs.map +1 -1
- package/fesm2015/esfaenza-core-domain.mjs +11 -5
- package/fesm2015/esfaenza-core-domain.mjs.map +1 -1
- package/fesm2015/esfaenza-core-modules.mjs +5 -4
- package/fesm2015/esfaenza-core-modules.mjs.map +1 -1
- package/fesm2015/esfaenza-core.mjs +9 -8
- package/fesm2015/esfaenza-core.mjs.map +1 -1
- package/fesm2020/esfaenza-core-components.mjs +30 -9
- package/fesm2020/esfaenza-core-components.mjs.map +1 -1
- package/fesm2020/esfaenza-core-domain.mjs +11 -5
- package/fesm2020/esfaenza-core-domain.mjs.map +1 -1
- package/fesm2020/esfaenza-core-modules.mjs +5 -4
- package/fesm2020/esfaenza-core-modules.mjs.map +1 -1
- package/fesm2020/esfaenza-core.mjs +9 -8
- package/fesm2020/esfaenza-core.mjs.map +1 -1
- package/lib/core.module.d.ts +2 -1
- package/modules/classes/_shared.module.d.ts +12 -11
- package/package.json +3 -3
|
@@ -13,13 +13,13 @@ import { CookieService } from "ngx-cookie-service";
|
|
|
13
13
|
import { ToastrModule } from "ngx-toastr";
|
|
14
14
|
import "widgster/widgster.js";
|
|
15
15
|
// ES
|
|
16
|
-
import {
|
|
16
|
+
import { PreferencesModule, PREF_DEBUG_MODE, PreferencesPersistor, LocalStoragePreferencesPersistor, CachePersistor, LocalStorageCachePersistor } from "@esfaenza/preferences";
|
|
17
17
|
import { LocalizationModule, LocalizationService, LocalizationMissingPolicy, LOC_DEBUG_MODE, BaseLocalization } from "@esfaenza/localizations";
|
|
18
|
+
import { HttpserviceModule, HttpServiceExtensions, HTTPService, HTTP_DEBUG_MODE, HTTP_INVALIDATION } from "@esfaenza/httpservice";
|
|
18
19
|
import { SignalrNotificationsModule, SGR_DEBUG_MODE, BaseMessageService } from "@esfaenza/signalr-notifications";
|
|
19
20
|
import { FormsAndValidationsModule, NgxExpandedDayJsDateAdapter } from "@esfaenza/forms-and-validations";
|
|
20
21
|
import { AccessControlModule, AccessControlService, ACC_DEBUG_MODE } from "@esfaenza/access-control";
|
|
21
22
|
import { BaseAdapter, EsChartsModule, ESC_DEBUG_MODE } from "@esfaenza/es-charts";
|
|
22
|
-
import { PreferencesModule, PREF_DEBUG_MODE, PreferencesPersistor, LocalStoragePreferencesPersistor, CachePersistor, LocalStorageCachePersistor } from "@esfaenza/preferences";
|
|
23
23
|
import { ExtensionsModule, EXT_DEBUG_MODE } from "@esfaenza/extensions";
|
|
24
24
|
import { ContextMenuModule } from "@esfaenza/ngx-contextmenu";
|
|
25
25
|
import { DragulaModule } from '@esfaenza/ngx-dragula';
|
|
@@ -27,7 +27,7 @@ import { EsTableModule } from "@esfaenza/es-table";
|
|
|
27
27
|
// Core
|
|
28
28
|
import { APPErrorHandler, HTTPServiceExtensions, ApplicationPreferencesPersistor, ApplicationCachePersistor, SessionRetriever, OutZoneEventPlugin, TokenService, GlobalSearchService, CompletedJobRedirectionService, MenuFilteringService } from "@esfaenza/core/services";
|
|
29
29
|
import { PageNotFoundComponent, ServerErrorComponent, AngularErrorComponent, ExternalPagesComponent, JaceLoginComponent, PagesComponent, RedirecterComponent, ComponentsModule } from "@esfaenza/core/components";
|
|
30
|
-
import { MENU, MENU_LOCALIZATION, REDIRECT_MAP, USE_FAKE_ACCESS_TOKEN, NAVBAR_EXTENSIONS } from "@esfaenza/core/domain";
|
|
30
|
+
import { MENU, MENU_LOCALIZATION, REDIRECT_MAP, USE_FAKE_ACCESS_TOKEN, NAVBAR_EXTENSIONS, LOGIN_URL_LEGACY } from "@esfaenza/core/domain";
|
|
31
31
|
import { ROUTE, EMBEDDED_ROUTE } from "@esfaenza/core/domain";
|
|
32
32
|
import { TemplateCommon } from "@esfaenza/core/modules";
|
|
33
33
|
// RxJs
|
|
@@ -181,6 +181,7 @@ export class EsFaenzaCoreModule {
|
|
|
181
181
|
{ provide: SGR_DEBUG_MODE, useValue: config.debugMode ? (config.debugMode & DebugFlags.SignalR) == DebugFlags.SignalR : false },
|
|
182
182
|
{ provide: PREF_DEBUG_MODE, useValue: config.debugMode ? (config.debugMode & DebugFlags.Preferences) == DebugFlags.Preferences : false },
|
|
183
183
|
{ provide: ESC_DEBUG_MODE, useValue: config.debugMode ? (config.debugMode & DebugFlags.Charts) == DebugFlags.Charts : false },
|
|
184
|
+
{ provide: LOGIN_URL_LEGACY, useValue: config.legacyLogin !== null && config.legacyLogin !== undefined ? config.legacyLogin : true },
|
|
184
185
|
{ provide: NAVBAR_EXTENSIONS, useValue: config.navbarExtensions ? config.navbarExtensions : [] },
|
|
185
186
|
{ provide: BaseAdapter, useClass: config?.chartsAdapter || BaseAdapter },
|
|
186
187
|
{ provide: BaseMessageService, useClass: config?.messageService || BaseMessageService },
|
|
@@ -191,7 +192,7 @@ export class EsFaenzaCoreModule {
|
|
|
191
192
|
{ provide: MENU, useValue: config.menu },
|
|
192
193
|
{ provide: USE_FAKE_ACCESS_TOKEN, useValue: !!config.fakeAccessToken },
|
|
193
194
|
{ provide: PreferencesPersistor, useClass: config.fakeAccessToken ? LocalStoragePreferencesPersistor : ApplicationPreferencesPersistor },
|
|
194
|
-
{ provide: CachePersistor, useClass: config.fakeAccessToken ? LocalStorageCachePersistor : ApplicationCachePersistor }
|
|
195
|
+
{ provide: CachePersistor, useClass: config.fakeAccessToken ? LocalStorageCachePersistor : ApplicationCachePersistor }
|
|
195
196
|
]
|
|
196
197
|
};
|
|
197
198
|
}
|
|
@@ -223,4 +224,4 @@ export var DebugFlags;
|
|
|
223
224
|
DebugFlags[DebugFlags["Charts"] = 64] = "Charts";
|
|
224
225
|
DebugFlags[DebugFlags["All"] = 127] = "All";
|
|
225
226
|
})(DebugFlags || (DebugFlags = {}));
|
|
226
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvY29yZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQTZCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6SCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMvRSxPQUFPLEVBQVUsWUFBWSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDM0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxtQ0FBbUMsQ0FBQztBQUUzQyxVQUFVO0FBQ1YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDdkcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDMUMsT0FBTyxzQkFBc0IsQ0FBQztBQUU5QixLQUFLO0FBQ0wsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHFCQUFxQixFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsSSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsbUJBQW1CLEVBQUUseUJBQXlCLEVBQUUsY0FBYyxFQUFFLGdCQUFnQixFQUFFLE1B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QUFDLFlBQVksQ0FBQztvQkFDNUIsT0FBTyxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUM7aUJBQ3hCOztBQWlGRCxNQUFNLE9BQU8sd0JBQXdCO0NBbUNwQztBQUVELE1BQU0sQ0FBTixJQUFZLFVBVVg7QUFWRCxXQUFZLFVBQVU7SUFDbEIsMkNBQVEsQ0FBQTtJQUNSLDZEQUFzQixDQUFBO0lBQ3RCLHVEQUFtQixDQUFBO0lBQ25CLDZEQUFzQixDQUFBO0lBQ3RCLDJDQUFhLENBQUE7SUFDYixrREFBZ0IsQ0FBQTtJQUNoQiwwREFBb0IsQ0FBQTtJQUNwQixnREFBZSxDQUFBO0lBQ2YsMkNBQWdCLENBQUE7QUFDcEIsQ0FBQyxFQVZXLFVBQVUsS0FBVixVQUFVLFFBVXJCIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5ndWxhclxyXG5pbXBvcnQgeyBOZ01vZHVsZSwgRXJyb3JIYW5kbGVyLCBMT0NBTEVfSUQsIEFQUF9JTklUSUFMSVpFUiwgTW9kdWxlV2l0aFByb3ZpZGVycywgVHlwZSwgaXNEZXZNb2RlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQnJvd3NlckFuaW1hdGlvbnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyL2FuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBSb3V0ZXMsIFJvdXRlck1vZHVsZSwgTm9QcmVsb2FkaW5nLCBST1VURVMgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcbmltcG9ydCB7IE1BVF9EQVRFX0ZPUk1BVFMsIE1BVF9EQVRFX0xPQ0FMRSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9jb3JlXCI7XHJcbmltcG9ydCB7IEVWRU5UX01BTkFHRVJfUExVR0lOUyB9IGZyb20gXCJAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyXCI7XHJcbmltcG9ydCB7IFNlcnZpY2VXb3JrZXJNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvc2VydmljZS13b3JrZXJcIjtcclxuaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgXCJAYW5ndWxhci9jb21tb24vbG9jYWxlcy9nbG9iYWwvaXRcIjtcclxuXHJcbi8vIFBsdWdpbnNcclxuaW1wb3J0IHsgTmd4TWF0RGF0ZUFkYXB0ZXIsIE5HWF9NQVRfREFURV9GT1JNQVRTIH0gZnJvbSBcIkBhbmd1bGFyLW1hdGVyaWFsLWNvbXBvbmVudHMvZGF0ZXRpbWUtcGlja2VyXCI7XHJcbmltcG9ydCB7IENvb2tpZVNlcnZpY2UgfSBmcm9tIFwibmd4LWNvb2tpZS1zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFRvYXN0ck1vZHVsZSB9IGZyb20gXCJuZ3gtdG9hc3RyXCI7XHJcbmltcG9ydCBcIndpZGdzdGVyL3dpZGdzdGVyLmpzXCI7XHJcblxyXG4vLyBFU1xyXG5pbXBvcnQgeyBIdHRwc2VydmljZU1vZHVsZSwgSHR0cFNlcnZpY2VFeHRlbnNpb25zLCBIVFRQU2VydmljZSwgSFRUUF9ERUJVR19NT0RFLCBIVFRQX0lOVkFMSURBVElPTiB9IGZyb20gXCJAZXNmYWVuemEvaHR0cHNlcnZpY2VcIjtcclxuaW1wb3J0IHsgTG9jYWxpemF0aW9uTW9kdWxlLCBMb2NhbGl6YXRpb25TZXJ2aWNlLCBMb2NhbGl6YXRpb25NaXNzaW5nUG9saWN5LCBMT0NfREVCVUdfTU9ERSwgQmFzZUxvY2FsaXphdGlvbiB9IGZyb20gXCJAZXNmYWVuemEvbG9jYWxpemF0aW9uc1wiO1xyXG5pbXBvcnQgeyBTaWduYWxyTm90aWZpY2F0aW9uc01vZHVsZSwgU0dSX0RFQlVHX01PREUsIEJhc2VNZXNzYWdlU2VydmljZSB9IGZyb20gXCJAZXNmYWVuemEvc2lnbmFsci1ub3RpZmljYXRpb25zXCI7XHJcbmltcG9ydCB7IEZvcm1zQW5kVmFsaWRhdGlvbnNNb2R1bGUsIE5neEV4cGFuZGVkRGF5SnNEYXRlQWRhcHRlciB9IGZyb20gXCJAZXNmYWVuemEvZm9ybXMtYW5kLXZhbGlkYXRpb25zXCI7XHJcbmltcG9ydCB7IEFjY2Vzc0NvbnRyb2xNb2R1bGUsIEFjY2Vzc0NvbnRyb2xTZXJ2aWNlLCBBQ0NfREVCVUdfTU9ERSB9IGZyb20gXCJAZXNmYWVuemEvYWNjZXNzLWNvbnRyb2xcIjtcclxuaW1wb3J0IHsgQmFzZUFkYXB0ZXIsIEVzQ2hhcnRzTW9kdWxlLCBFU0NfREVCVUdfTU9ERSB9IGZyb20gXCJAZXNmYWVuemEvZXMtY2hhcnRzXCI7XHJcbmltcG9ydCB7IFByZWZlcmVuY2VzTW9kdWxlLCBQUkVGX0RFQlVHX01PREUsIFByZWZlcmVuY2VzUGVyc2lzdG9yLCBMb2NhbFN0b3JhZ2VQcmVmZXJlbmNlc1BlcnNpc3RvciwgQ2FjaGVQZXJzaXN0b3IsIExvY2FsU3RvcmFnZUNhY2hlUGVyc2lzdG9yIH0gZnJvbSBcIkBlc2ZhZW56YS9wcmVmZXJlbmNlc1wiO1xyXG5pbXBvcnQgeyBFeHRlbnNpb25zTW9kdWxlLCBFWFRfREVCVUdfTU9ERSB9IGZyb20gXCJAZXNmYWVuemEvZXh0ZW5zaW9uc1wiO1xyXG5pbXBvcnQgeyBDb250ZXh0TWVudU1vZHVsZSB9IGZyb20gXCJAZXNmYWVuemEvbmd4LWNvbnRleHRtZW51XCI7XHJcbmltcG9ydCB7IERyYWd1bGFNb2R1bGUgfSBmcm9tICdAZXNmYWVuemEvbmd4LWRyYWd1bGEnO1xyXG5pbXBvcnQgeyBFc1RhYmxlTW9kdWxlIH0gZnJvbSBcIkBlc2ZhZW56YS9lcy10YWJsZVwiO1xyXG5cclxuLy8gQ29yZVxyXG5pbXBvcnQgeyBBUFBFcnJvckhhbmRsZXIsIEhUVFBTZXJ2aWNlRXh0ZW5zaW9ucywgQXBwbGljYXRpb25QcmVmZXJlbmNlc1BlcnNpc3RvciwgQXBwbGljYXRpb25DYWNoZVBlcnNpc3RvciwgU2Vzc2lvblJldHJpZXZlciwgT3V0Wm9uZUV2ZW50UGx1Z2luLCBUb2tlblNlcnZpY2UsIEdsb2JhbFNlYXJjaFNlcnZpY2UsIENvbXBsZXRlZEpvYlJlZGlyZWN0aW9uU2VydmljZSwgTWVudUZpbHRlcmluZ1NlcnZpY2UgfSBmcm9tIFwiQGVzZmFlbnphL2NvcmUvc2VydmljZXNcIjtcclxuaW1wb3J0IHsgUGFnZU5vdEZvdW5kQ29tcG9uZW50LCBTZXJ2ZXJFcnJvckNvbXBvbmVudCwgQW5ndWxhckVycm9yQ29tcG9uZW50LCBFeHRlcm5hbFBhZ2VzQ29tcG9uZW50LCBKYWNlTG9naW5Db21wb25lbnQsIFBhZ2VzQ29tcG9uZW50LCBSZWRpcmVjdGVyQ29tcG9uZW50LCBDb21wb25lbnRzTW9kdWxlIH0gZnJvbSBcIkBlc2ZhZW56YS9jb3JlL2NvbXBvbmVudHNcIjtcclxuaW1wb3J0IHsgQXBwbGljYXRpb25NZW51LCBFbnZPcHRpb25zLCBBY2NvdW50U2NvcGUsIE1FTlUsIE1FTlVfTE9DQUxJWkFUSU9OLCBSRURJUkVDVF9NQVAsIFVTRV9GQUtFX0FDQ0VTU19UT0tFTiwgTkFWQkFSX0VYVEVOU0lPTlMgfSBmcm9tIFwiQGVzZmFlbnphL2NvcmUvZG9tYWluXCJcclxuaW1wb3J0IHsgUk9VVEUsIEVNQkVEREVEX1JPVVRFIH0gZnJvbSBcIkBlc2ZhZW56YS9jb3JlL2RvbWFpblwiXHJcbmltcG9ydCB7IFRlbXBsYXRlQ29tbW9uIH0gZnJvbSBcIkBlc2ZhZW56YS9jb3JlL21vZHVsZXNcIjtcclxuXHJcbi8vIFJ4SnNcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciwgc3dpdGNoTWFwLCB0YWtlLCB0YXAgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuaW1wb3J0IHsgZm9ya0pvaW4sIE9ic2VydmFibGUsIG9mIH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbi8vIEJvb3RzdHJhcFxyXG5pbXBvcnQgeyBQcm9ncmVzc2Jhck1vZHVsZSB9IGZyb20gXCJuZ3gtYm9vdHN0cmFwL3Byb2dyZXNzYmFyXCI7XHJcbmltcG9ydCB7IFRpbWVwaWNrZXJNb2R1bGUgfSBmcm9tIFwibmd4LWJvb3RzdHJhcC90aW1lcGlja2VyXCI7XHJcbmltcG9ydCB7IEJzRHJvcGRvd25Nb2R1bGUgfSBmcm9tIFwibmd4LWJvb3RzdHJhcC9kcm9wZG93blwiO1xyXG5pbXBvcnQgeyBUb29sdGlwTW9kdWxlIH0gZnJvbSBcIm5neC1ib290c3RyYXAvdG9vbHRpcFwiO1xyXG5pbXBvcnQgeyBNb2RhbE1vZHVsZSB9IGZyb20gXCJuZ3gtYm9vdHN0cmFwL21vZGFsXCI7XHJcblxyXG4vLyBBcHBsaWNhemlvbmVcclxuaW1wb3J0IHsgQXBwQ29tcG9uZW50IH0gZnJvbSBcIi4vYXBwLmNvbXBvbmVudFwiO1xyXG5cclxuLy8gUmVwb3NpdG9yaWVzXHJcbmNvbnN0IEdFVF9KYWNlX0dldEFjY291bnRTY29wZTogc3RyaW5nID0gXCIvYXBpL0phY2UvR2V0QWNjb3VudFNjb3BlXCI7XHJcbmNvbnN0IEdFVF9BcHBDb25maWdfR2V0QXBwQ29uZmlnOiBzdHJpbmcgPSBcIi9hcGkvQXBwQ29uZmlnL0dldEFwcENvbmZpZ1wiO1xyXG5cclxuZGVjbGFyZSB2YXIgbXljb25maWc6IEVudk9wdGlvbnM7XHJcblxyXG5jb25zdCBiYXNlQXBwUm91dGVzOiBSb3V0ZXMgPSBbXHJcbiAgICB7IHBhdGg6IFwiXCIsIHJlZGlyZWN0VG86IFwicGFnZXMve2VtcHR5Um91dGVSZWRpcmVjdH1cIiwgcGF0aE1hdGNoOiBcImZ1bGxcIiB9LFxyXG4gICAgeyBwYXRoOiBFTUJFRERFRF9ST1VURSwgY29tcG9uZW50OiBFeHRlcm5hbFBhZ2VzQ29tcG9uZW50IH0sXHJcbiAgICB7IHBhdGg6IFJPVVRFLCBjb21wb25lbnQ6IFBhZ2VzQ29tcG9uZW50IH0sXHJcbiAgICB7IHBhdGg6IFwicmRcIiwgY29tcG9uZW50OiBSZWRpcmVjdGVyQ29tcG9uZW50IH0sXHJcbiAgICB7IHBhdGg6IFwibG9naW5cIiwgY29tcG9uZW50OiBKYWNlTG9naW5Db21wb25lbnQgfSxcclxuICAgIHsgcGF0aDogXCJpc2VyclwiLCBjb21wb25lbnQ6IFNlcnZlckVycm9yQ29tcG9uZW50IH0sXHJcbiAgICB7IHBhdGg6IFwiYW5lcnJcIiwgY29tcG9uZW50OiBBbmd1bGFyRXJyb3JDb21wb25lbnQgfSxcclxuICAgIHsgcGF0aDogXCIqKlwiLCBjb21wb25lbnQ6IFBhZ2VOb3RGb3VuZENvbXBvbmVudCB9XHJcbl07XHJcblxyXG5jb25zdCBNT0RVTEVTID0gW1xyXG4gICAgQnJvd3NlckFuaW1hdGlvbnNNb2R1bGUsXHJcbiAgICBIdHRwQ2xpZW50TW9kdWxlLFxyXG4gICAgVGVtcGxhdGVDb21tb24sXHJcbiAgICBDb21wb25lbnRzTW9kdWxlLFxyXG5cclxuICAgIC8vIEF0dGVuemlvbmUgYSBsYXNjaWFybG8gYXR0aXZvIGluIG5nIHNlcnZlOiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy80NzQ1NVxyXG4gICAgU2VydmljZVdvcmtlck1vZHVsZS5yZWdpc3Rlcignbmdzdy13b3JrZXIuanMnLCB7IGVuYWJsZWQ6ICFpc0Rldk1vZGUoKSB9KSxcclxuICAgIFJvdXRlck1vZHVsZS5mb3JSb290KFtdLCB7IHVzZUhhc2g6IHRydWUsIHByZWxvYWRpbmdTdHJhdGVneTogTm9QcmVsb2FkaW5nLCBvblNhbWVVcmxOYXZpZ2F0aW9uOiBcInJlbG9hZFwiIH0pLFxyXG5cclxuICAgIC8vIEVTXHJcbiAgICBFc1RhYmxlTW9kdWxlLmZvclJvb3QoKSxcclxuICAgIEZvcm1zQW5kVmFsaWRhdGlvbnNNb2R1bGUuZm9yUm9vdCh7IGFjb2N1c3RvbTogXCJPXCIsIHNsaWRlck1vZGU6IHRydWUgfSksXHJcbiAgICBFeHRlbnNpb25zTW9kdWxlLmZvclJvb3QoKSxcclxuICAgIExvY2FsaXphdGlvbk1vZHVsZS5mb3JSb290KHsgbG9jYWxpemF0aW9uTWlzc2luZ1BvbGljeTogTG9jYWxpemF0aW9uTWlzc2luZ1BvbGljeS5QcmludFNvdXJjZSwgZGVmYXVsdExvY2FsZTogJ2l0LUlUJyB9KSxcclxuICAgIEFjY2Vzc0NvbnRyb2xNb2R1bGUuZm9yUm9vdCh7IGNvbnRleHRBd2FyZUtleTogXCJPXCIsIGRlZmF1bHRDb25kaXRpb246ICcoUjpKYWNlIEFkbWluIHx8IFI6SmFjZSBTdXBwb3J0KScgfSksXHJcbiAgICBIdHRwc2VydmljZU1vZHVsZS5mb3JSb290KCksXHJcbiAgICBTaWduYWxyTm90aWZpY2F0aW9uc01vZHVsZS5mb3JSb290KHsgZW5kcG9pbnRVcmw6ICdub3RpZnknLCB1c2VNZXNzYWdlUGFjazogdHJ1ZSB9KSxcclxuICAgIFByZWZlcmVuY2VzTW9kdWxlLmZvclJvb3QoeyByZXRyaWV2ZUFsbEF0U3RhcnQ6IHRydWUsIHNlc3Npb25SZXRyaWV2ZXI6IFNlc3Npb25SZXRyaWV2ZXIsIHByZWZlcmVuY2VQZXJzaXN0b3I6IEFwcGxpY2F0aW9uUHJlZmVyZW5jZXNQZXJzaXN0b3IsIGNhY2hlUGVyc2lzdG9yOiBBcHBsaWNhdGlvbkNhY2hlUGVyc2lzdG9yIH0pLFxyXG4gICAgRXNDaGFydHNNb2R1bGUuZm9yUm9vdCgpLFxyXG5cclxuICAgIC8vIEJvb3RzdHJhcFxyXG4gICAgVG9vbHRpcE1vZHVsZS5mb3JSb290KCksXHJcbiAgICBNb2RhbE1vZHVsZS5mb3JSb290KCksXHJcbiAgICBQcm9ncmVzc2Jhck1vZHVsZS5mb3JSb290KCksXHJcbiAgICBCc0Ryb3Bkb3duTW9kdWxlLmZvclJvb3QoKSxcclxuICAgIFRvYXN0ck1vZHVsZS5mb3JSb290KCksXHJcbiAgICBUaW1lcGlja2VyTW9kdWxlLmZvclJvb3QoKSxcclxuICAgIENvbnRleHRNZW51TW9kdWxlLmZvclJvb3QoKSxcclxuICAgIERyYWd1bGFNb2R1bGUuZm9yUm9vdCgpXHJcbl07XHJcblxyXG4vLyBHZW5lcmF0b3JlIGRlaSBmb3JtYXRpIGRhdGFcclxudmFyIGZvcm1hdHMgPSAoc3R5bGU6ICdsb25nJyB8ICdzaG9ydCcpID0+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgICAgcGFyc2U6IHsgZGF0ZUlucHV0OiAnREQvTU0vWVlZWScgKyAoc3R5bGUgPT09ICdsb25nJyA/ICcgSEg6bW06c3MnIDogJycpIH0sXHJcbiAgICAgICAgZGlzcGxheToge1xyXG4gICAgICAgICAgICBkYXRlSW5wdXQ6ICdERC9NTS9ZWVlZJyArIChzdHlsZSA9PT0gJ2xvbmcnID8gJyBISDptbTpzcycgOiAnJyksXHJcbiAgICAgICAgICAgIG1vbnRoWWVhckxhYmVsOiAnTU0gWVlZWScsXHJcbiAgICAgICAgICAgIGRhdGVBMTF5TGFiZWw6ICdERC9NTS9ZWVlZJyArIChzdHlsZSA9PT0gJ2xvbmcnID8gJyBISDptbTpzcycgOiAnJyksXHJcbiAgICAgICAgICAgIG1vbnRoWWVhckExMXlMYWJlbDogJ01NIFlZWVknLFxyXG4gICAgICAgIH1cclxuICAgIH07XHJcbn1cclxuXHJcbmNvbnN0IGxvY2FsZUZhY3RvcnkgPSAobG9jOiBMb2NhbGl6YXRpb25TZXJ2aWNlKSA9PiBsb2MuU21hbGxMb2NhbGU7XHJcblxyXG5jb25zdCBQUk9WSURFUlMgPSBbXHJcbiAgICBDb29raWVTZXJ2aWNlLFxyXG5cclxuICAgIC8vIFByb3ZpZGVycyBhcHBsaWNhdGl2aVxyXG4gICAgeyBwcm92aWRlOiBFcnJvckhhbmRsZXIsIHVzZUNsYXNzOiBBUFBFcnJvckhhbmRsZXIgfSxcclxuICAgIHsgcHJvdmlkZTogRVZFTlRfTUFOQUdFUl9QTFVHSU5TLCB1c2VFeGlzdGluZzogT3V0Wm9uZUV2ZW50UGx1Z2luLCBtdWx0aTogdHJ1ZSB9LFxyXG4gICAgeyBwcm92aWRlOiBIdHRwU2VydmljZUV4dGVuc2lvbnMsIHVzZUNsYXNzOiBIVFRQU2VydmljZUV4dGVuc2lvbnMgfSxcclxuXHJcbiAgICAvLyBMb2NhbGUgZSBnZXN0aW9uaSBkZWxsZSBkYXRlXHJcbiAgICB7IHByb3ZpZGU6IExPQ0FMRV9JRCwgdXNlRmFjdG9yeTogbG9jYWxlRmFjdG9yeSwgZGVwczogW0xvY2FsaXphdGlvblNlcnZpY2VdIH0sXHJcbiAgICB7IHByb3ZpZGU6IE1BVF9EQVRFX0xPQ0FMRSwgdXNlRmFjdG9yeTogbG9jYWxlRmFjdG9yeSwgZGVwczogW0xvY2FsaXphdGlvblNlcnZpY2VdIH0sXHJcbiAgICB7IHByb3ZpZGU6IE1BVF9EQVRFX0ZPUk1BVFMsIHVzZVZhbHVlOiBmb3JtYXRzKCdzaG9ydCcpIH0sXHJcblxyXG4gICAgLy8gUXVlc3RpIGR1ZSBzb25vIHByb3ZpZGF0aSBkYWwgRm9ybXNBbmRWYWxpZGF0aW9uTW9kdWxlIHN0ZXNzbywgcGVyw7IgcXVlc3QndWx0aW1vIMOoIGRlZmluaXRvIGluIGZvclJvb3Qgc29sbyBsYXRvIGNvbXBvbmVudGkgc2hhcmVkLCBcclxuICAgIC8vIHF1aW5kaSBwZXIgcmVuZGVyZSBxdWVzdGkgcHJvdmlkZXIgZGlzcG9uaWJpbGkgYW5jaGUgYSBtb2R1bGkgZXN0ZXJuaSBkZXZvIHJpcHJvdmlkYXJsaSBhbmNoZSBxdWlcclxuICAgIHsgcHJvdmlkZTogTkdYX01BVF9EQVRFX0ZPUk1BVFMsIHVzZVZhbHVlOiBmb3JtYXRzKCdsb25nJykgfSxcclxuICAgIHsgcHJvdmlkZTogTmd4TWF0RGF0ZUFkYXB0ZXIsIHVzZUNsYXNzOiBOZ3hFeHBhbmRlZERheUpzRGF0ZUFkYXB0ZXIgfVxyXG5dO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIGRlY2xhcmF0aW9uczogW0FwcENvbXBvbmVudF0sXHJcbiAgICBpbXBvcnRzOiBbLi4uTU9EVUxFU11cclxufSlcclxuZXhwb3J0IGNsYXNzIEVzRmFlbnphQ29yZU1vZHVsZSB7XHJcbiAgICBzdGF0aWMgZm9yUm9vdChjb25maWc/OiBFc0ZhZW56YUNvcmVNb2R1bGVDb25maWcpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEVzRmFlbnphQ29yZU1vZHVsZT4ge1xyXG4gICAgICAgIGlmIChjb25maWcucm91dGVzKSB7XHJcbiAgICAgICAgICAgIGJhc2VBcHBSb3V0ZXNbMF0ucmVkaXJlY3RUbyA9IGBwYWdlcy8ke2NvbmZpZy5lbXB0eVJvdXRlUmVkaXJlY3QgfHwgJ2Rhc2hib2FyZCd9YDtcclxuICAgICAgICAgICAgYmFzZUFwcFJvdXRlcy5maWx0ZXIodCA9PiBbXCJwYWdlc1wiLCBcInBhZ2VzX2V4dFwiXS5pbmNsdWRlcyh0LnBhdGgpKS5mb3JFYWNoKHBhdGggPT4geyBwYXRoLmNoaWxkcmVuID0gY29uZmlnLnJvdXRlczsgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbmZpZy5kZWJ1Z01vZGUgPSAoIWlzRGV2TW9kZSgpICYmICFjb25maWcuZm9yY2VEZWJ1Z01vZGVGb3JQcm9kQnVpbGRzKSA/IERlYnVnRmxhZ3MuTm9uZSA6IChjb25maWcuZGVidWdNb2RlIHx8IERlYnVnRmxhZ3MuQWxsKTtcclxuXHJcbiAgICAgICAgbGV0IG1lcmdlZEFwcEluaXRpYWxpemVyID0gKGh0dHA6IEhUVFBTZXJ2aWNlLCBidHM6IFRva2VuU2VydmljZSwgYWFjOiBBY2Nlc3NDb250cm9sU2VydmljZSwgbG9jOiBCYXNlTG9jYWxpemF0aW9uKSA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcIiVjW0FQUF9JTklUSUFMSVpFUl0gTG9hZGluZyBBcHBDb25maWcgYW5kIEFjY291bnQgU2NvcGUuLi5cIiwgXCJiYWNrZ3JvdW5kLWNvbG9yOiB5ZWxsb3dcIik7XHJcbiAgICAgICAgICAgICAgICBsZXQgcmVhbE9ic2VydmFibGUgPSBmb3JrSm9pbihcclxuICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFwcENvbmZpZzogaHR0cC5nZXQ8RW52T3B0aW9ucz4oR0VUX0FwcENvbmZpZ19HZXRBcHBDb25maWcsIG51bGwsIG51bGwsIGZhbHNlKS5waXBlKGNhdGNoRXJyb3IoXyA9PiBvZih7fSkpKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc2NvcGU6IGh0dHAuZ2V0PEFjY291bnRTY29wZT4oR0VUX0phY2VfR2V0QWNjb3VudFNjb3BlLCBudWxsLCBudWxsLCBmYWxzZSkucGlwZShjYXRjaEVycm9yKF8gPT4gb2YobnVsbCkpKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxlOiBsb2MuTG9jYWxlLnBpcGUodGFrZSgxKSwgY2F0Y2hFcnJvcihfID0+IG9mKCdpdC1JVCcpKSksXHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgICAgICAgbGV0IHVzZWRPYnNlcnZhYmxlID0gY29uZmlnLm9wdGlvbnNBbmRTY29wZVByb3ZpZGVyIHx8IHJlYWxPYnNlcnZhYmxlO1xyXG5cclxuICAgICAgICAgICAgICAgIHJldHVybiB1c2VkT2JzZXJ2YWJsZS5waXBlKFxyXG4gICAgICAgICAgICAgICAgICAgIHRhcCgocmVzOiB7IGFwcENvbmZpZzogRW52T3B0aW9ucywgc2NvcGU6IEFjY291bnRTY29wZSwgbG9jYWxlOiBzdHJpbmcgfSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBteWNvbmZpZyA9IHJlcy5hcHBDb25maWc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIEwnYWNjb3VudCBzY29wZSBsbyBwcmVuZG8gZGFsbGEgUXVlcnkgYSBiYWNrZW5kIHNvbG8gc2Ugbm9uIHVzbyBpbCBGYWtlIHRva2VuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghYnRzLlVTRV9GQUtFX0FDQ0VTU19UT0tFTilcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ0cy5hY2NvdW50U2NvcGUgPSByZXMuc2NvcGU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcIiVjW0FQUF9JTklUSUFMSVpFUl0gYXBwQ29uZmlnIGFuZCBzY29wZSByZWdpc3RlcmVkXCIsIFwiYmFja2dyb3VuZC1jb2xvcjogeWVsbG93XCIpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGJ0cy5hY2NvdW50U2NvcGUpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhYWMuaW5pdGlhbGl6ZUlkZW50aXR5KGJ0cy5nZXRKYWNlSWRlbnRpdHkoKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICAgICAgc3dpdGNoTWFwKF8gPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWNvbmZpZy5pbml0aWFsaXplckZ1bmN0aW9uKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9mKCk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcIiVjW0FQUF9JTklUSUFMSVpFUl0gTG9hZGluZyBjdXN0b20gYXBwbGljYXRpb24gaW5pdGlhbGl6YXRpb25cIiwgXCJiYWNrZ3JvdW5kLWNvbG9yOiB5ZWxsb3dcIik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjb25maWcuaW5pdGlhbGl6ZXJGdW5jdGlvbihodHRwLCBidHMsIGFhYykoKS5waXBlKHRhcChfID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiJWNbQVBQX0lOSVRJQUxJWkVSXSBJbml0aWFsaXphdGlvbiBpcyBvdmVyXCIsIFwiYmFja2dyb3VuZC1jb2xvcjogeWVsbG93XCIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBuZ01vZHVsZTogRXNGYWVuemFDb3JlTW9kdWxlLFxyXG4gICAgICAgICAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICAgICAgICAgIC8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKiBQcm92aWRlciBzdGF0aWNpICoqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuICAgICAgICAgICAgICAgIC4uLlBST1ZJREVSUyxcclxuXHJcbiAgICAgICAgICAgICAgICAvLyAqKioqKioqKioqKioqKioqKioqKioqKiogUHJvdmlkZXIgY3VzdG9taXp6YWJpbGkgKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAgICAgICAgICAgICAgICAuLi4oIWNvbmZpZy5yZWRpcmVjdGlvbk1hcCA/IFtdIDogW3sgcHJvdmlkZTogUkVESVJFQ1RfTUFQLCB1c2VWYWx1ZTogY29uZmlnLnJlZGlyZWN0aW9uTWFwIH1dKSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLCB1c2VGYWN0b3J5OiBtZXJnZWRBcHBJbml0aWFsaXplciwgZGVwczogW0hUVFBTZXJ2aWNlLCBUb2tlblNlcnZpY2UsIEFjY2Vzc0NvbnRyb2xTZXJ2aWNlLCBCYXNlTG9jYWxpemF0aW9uXSwgbXVsdGk6IHRydWUgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogUk9VVEVTLCB1c2VWYWx1ZTogYmFzZUFwcFJvdXRlcywgbXVsdGk6IHRydWUgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogTE9DX0RFQlVHX01PREUsIHVzZVZhbHVlOiBjb25maWcuZGVidWdNb2RlID8gKGNvbmZpZy5kZWJ1Z01vZGUgJiBEZWJ1Z0ZsYWdzLkxvY2FsaXphdGlvbnMpID09IERlYnVnRmxhZ3MuTG9jYWxpemF0aW9ucyA6IGZhbHNlIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IEVYVF9ERUJVR19NT0RFLCB1c2VWYWx1ZTogY29uZmlnLmRlYnVnTW9kZSA/IChjb25maWcuZGVidWdNb2RlICYgRGVidWdGbGFncy5FeHRlbnNpb25zKSA9PSBEZWJ1Z0ZsYWdzLkV4dGVuc2lvbnMgOiBmYWxzZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBBQ0NfREVCVUdfTU9ERSwgdXNlVmFsdWU6IGNvbmZpZy5kZWJ1Z01vZGUgPyAoY29uZmlnLmRlYnVnTW9kZSAmIERlYnVnRmxhZ3MuQWNjZXNzQ29udHJvbCkgPT0gRGVidWdGbGFncy5BY2Nlc3NDb250cm9sIDogZmFsc2UgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogSFRUUF9ERUJVR19NT0RFLCB1c2VWYWx1ZTogY29uZmlnLmRlYnVnTW9kZSA/IChjb25maWcuZGVidWdNb2RlICYgRGVidWdGbGFncy5IdHRwKSA9PSBEZWJ1Z0ZsYWdzLkh0dHAgOiBmYWxzZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBIVFRQX0lOVkFMSURBVElPTiwgdXNlVmFsdWU6IGNvbmZpZz8uaHR0cEludmFsaWRhdGlvbkNhY2hlIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IFNHUl9ERUJVR19NT0RFLCB1c2VWYWx1ZTogY29uZmlnLmRlYnVnTW9kZSA/IChjb25maWcuZGVidWdNb2RlICYgRGVidWdGbGFncy5TaWduYWxSKSA9PSBEZWJ1Z0ZsYWdzLlNpZ25hbFIgOiBmYWxzZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBQUkVGX0RFQlVHX01PREUsIHVzZVZhbHVlOiBjb25maWcuZGVidWdNb2RlID8gKGNvbmZpZy5kZWJ1Z01vZGUgJiBEZWJ1Z0ZsYWdzLlByZWZlcmVuY2VzKSA9PSBEZWJ1Z0ZsYWdzLlByZWZlcmVuY2VzIDogZmFsc2UgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogRVNDX0RFQlVHX01PREUsIHVzZVZhbHVlOiBjb25maWcuZGVidWdNb2RlID8gKGNvbmZpZy5kZWJ1Z01vZGUgJiBEZWJ1Z0ZsYWdzLkNoYXJ0cykgPT0gRGVidWdGbGFncy5DaGFydHMgOiBmYWxzZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBOQVZCQVJfRVhURU5TSU9OUywgdXNlVmFsdWU6IGNvbmZpZy5uYXZiYXJFeHRlbnNpb25zID8gY29uZmlnLm5hdmJhckV4dGVuc2lvbnMgOiBbXSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBCYXNlQWRhcHRlciwgdXNlQ2xhc3M6IGNvbmZpZz8uY2hhcnRzQWRhcHRlciB8fCBCYXNlQWRhcHRlciB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBCYXNlTWVzc2FnZVNlcnZpY2UsIHVzZUNsYXNzOiBjb25maWc/Lm1lc3NhZ2VTZXJ2aWNlIHx8IEJhc2VNZXNzYWdlU2VydmljZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBHbG9iYWxTZWFyY2hTZXJ2aWNlLCB1c2VDbGFzczogY29uZmlnPy5nbG9iYWxTZWFyY2hTZXJ2aWNlIHx8IEdsb2JhbFNlYXJjaFNlcnZpY2UgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogQ29tcGxldGVkSm9iUmVkaXJlY3Rpb25TZXJ2aWNlLCB1c2VDbGFzczogY29uZmlnPy5jb21wbGV0ZWRKb2JSZWRpcmVjdGlvblNlcnZpY2UgfHwgQ29tcGxldGVkSm9iUmVkaXJlY3Rpb25TZXJ2aWNlIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IE1lbnVGaWx0ZXJpbmdTZXJ2aWNlLCB1c2VDbGFzczogY29uZmlnPy5tZW51RmlsdGVyaW5nU2VydmljZSB8fCBNZW51RmlsdGVyaW5nU2VydmljZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBNRU5VX0xPQ0FMSVpBVElPTiwgdXNlVmFsdWU6IGNvbmZpZy5tZW51TG9jIHx8IG51bGwgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogTUVOVSwgdXNlVmFsdWU6IGNvbmZpZy5tZW51IH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IFVTRV9GQUtFX0FDQ0VTU19UT0tFTiwgdXNlVmFsdWU6ICEhY29uZmlnLmZha2VBY2Nlc3NUb2tlbiB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBQcmVmZXJlbmNlc1BlcnNpc3RvciwgdXNlQ2xhc3M6IGNvbmZpZy5mYWtlQWNjZXNzVG9rZW4gPyBMb2NhbFN0b3JhZ2VQcmVmZXJlbmNlc1BlcnNpc3RvciA6IEFwcGxpY2F0aW9uUHJlZmVyZW5jZXNQZXJzaXN0b3IgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogQ2FjaGVQZXJzaXN0b3IsIHVzZUNsYXNzOiBjb25maWcuZmFrZUFjY2Vzc1Rva2VuID8gTG9jYWxTdG9yYWdlQ2FjaGVQZXJzaXN0b3IgOiBBcHBsaWNhdGlvbkNhY2hlUGVyc2lzdG9yIH0sXHJcbiAgICAgICAgICAgIF1cclxuICAgICAgICB9O1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgRXNGYWVuemFDb3JlTW9kdWxlQ29uZmlnIHtcclxuICAgIC8qIFJvdXRlIGFwcGxpY2F0aXZlLCBzb2xvIHF1ZWxsZSBkZW50cm8gYSAqKnBhZ2VzKiogKi9cclxuICAgIHJvdXRlcyE6IFJvdXRlcztcclxuICAgIC8qIE1lbsO5IGRlbGxhIHNpZGViYXIgZGVsbCdhcHBsaWNhemlvbmUgKi9cclxuICAgIG1lbnU6IEFwcGxpY2F0aW9uTWVudVtdO1xyXG4gICAgLyogSW5kaWNhIHNlIHV0aWxpenphcmUgbCdhY2Nlc3MgdG9rZW4gZmludG8gKi9cclxuICAgIGZha2VBY2Nlc3NUb2tlbj86IGJvb2xlYW47XHJcbiAgICAvKiBUaXBvIGRhIHVzYXJlIHBlciBnZW5lcmFyZSBsZSBsb2NhbGl6emFpem9uaSBkZWwgbWVuw7kgKi9cclxuICAgIG1lbnVMb2M/OiBUeXBlPExvY2FsaXphdGlvblNlcnZpY2U+O1xyXG4gICAgLyogUmVkaXJlY3QgcGVyIGxhIHJvb3QgZGVsbCdhcHBsaWNhemlvbmUsIGRpIGRlZmF1bHQgw6ggaW1wb3N0YXRvIGEgKipkYXNoYm9hcmQqKi4gU2UgYWxsJ2ludGVybm8gZGVsbGUgKipyb3V0ZXMqKiBub24gZXNpc3RlIGxhIHJvdXRlICoqZGFzaGJvYXJkKiogw6ggZGEgaW1wb3N0YXJlIGFkZWd1YXRhbWVudGUgKi9cclxuICAgIGVtcHR5Um91dGVSZWRpcmVjdD86IHN0cmluZztcclxuICAgIC8qIFNlIG5vbiBzcGVjaWZpY2F0YSB2aWVuZSBpbXBvc3RhdGEgYXV0b21hdGljYW1lbnRlIGFkIFwiQWxsXCIgaW4gZmFzZSBkaSBkZWJ1ZywgXCJOb25lXCIgaW4gcHJvZHV6aW9uZSAocXVlc3QndWx0aW1vIGEgcHJlc2NpbmRlcmUsIGEgbWVubyBjaGUgKipmb3JjZURlYnVnTW9kZUZvclByb2RCdWlsZHMqKiBub24gc2lhIHRydWUpKi9cclxuICAgIGRlYnVnTW9kZT86IERlYnVnRmxhZ3M7XHJcbiAgICAvKiBQZXJtZXR0ZSBkaSBmb3J6YXJlIGxhIG1vZGFsaXTDoCBkaSBkZWJ1ZyBzcGVjaWZpY2F0YSBhbmNoZSBwZXIgbGUgYnVpbGQgZGkgcHJvZHV6aW9uZSwgKipOT04gSU1QT1NUQVJFIEEgVFJVRSoqIGEgbWVubyBkaSByYXJpc3NpbWlzc2ltaXNzaW1pIGNhc2kgKi9cclxuICAgIGZvcmNlRGVidWdNb2RlRm9yUHJvZEJ1aWxkcz86IGJvb2xlYW47XHJcbiAgICAvKiBDYWNoZSBkaSBpbnZhbGlkYXppb25lIHBlciBsZSBjaGlhbWF0ZSBodHRwICovXHJcbiAgICBodHRwSW52YWxpZGF0aW9uQ2FjaGU/OiBhbnk7XHJcbiAgICAvKiBGdW56aW9uZSBkaSBpbml6aWFsaXp6YXppb25lIEFQUF9JTklUSUFMSVpFUi1saWtlIGNoZSB2aWVuZSByaWNoaWFtYXRhIGRvcG8gYWxsYSBmdW56aW9uZSBkaSBpbml6aWFsaXp6YXppb25lIGRpIGRlZmF1bHQgKi9cclxuICAgIGluaXRpYWxpemVyRnVuY3Rpb24/OiAoaHR0cDogSFRUUFNlcnZpY2UsIGJ0czogVG9rZW5TZXJ2aWNlLCBhYWM6IEFjY2Vzc0NvbnRyb2xTZXJ2aWNlKSA9PiAoKSA9PiBPYnNlcnZhYmxlPGFueT47XHJcbiAgICAvKiBNYXBwYSBkaSByZWRpcmVjdCBwZXIgcGVybWV0dGVyZSBhbCAqKlJlZGlyZWN0ZXJDb21wb25lbnQqKiBkaSBzYXBlcmUgZG92ZSBuYXZpZ2FyZSBpbiBiYXNlIGEgT2dnZXR0by1QYXJhbWV0cmkgKi9cclxuICAgIHJlZGlyZWN0aW9uTWFwPzogeyBbaW5kZXg6IHN0cmluZ106IHsgdXJsOiBzdHJpbmcsIHBhcmFtczogc3RyaW5nW10gfSB9O1xyXG4gICAgLyogQWRhdHRhdG9yZSBkZWkgZ3JhZmljaSBuZWwgY2FzbyB1biBwcm9nZXR0byBmb3NzZSB2ZWNjaGlvIChSaW11b3ZpYmlsZSBxdWFuZG8gdHV0dGkgaSBwcm9nZXR0aSB1c2FubyBuYXRpdmFtZW50ZSBlcy1jaGFydHMpICovXHJcbiAgICBjaGFydHNBZGFwdGVyPzogVHlwZTxCYXNlQWRhcHRlcj47XHJcbiAgICAvKiBTZXJ2aXppbyBjaGUgZXNwb25lIGkgbWVzc2FnZ2kgZGlzcG9uaWJpbGkgc3UgU2lnbmFsciAqL1xyXG4gICAgbWVzc2FnZVNlcnZpY2U/OiBUeXBlPEJhc2VNZXNzYWdlU2VydmljZT47XHJcbiAgICAvKiBTZXJ2aXppbyBwZXIgbGEgc2VhcmNoIGdsb2JhbGUgZGVsIG1vZHVsbyAqL1xyXG4gICAgZ2xvYmFsU2VhcmNoU2VydmljZT86IFR5cGU8R2xvYmFsU2VhcmNoU2VydmljZT47XHJcbiAgICAvKiBTZXJ2aXppbyBwZXIgZmlsdHJhcmUgbGUgdm9jaSBkaSBtZW7DuSAqL1xyXG4gICAgbWVudUZpbHRlcmluZ1NlcnZpY2U/OiBUeXBlPE1lbnVGaWx0ZXJpbmdTZXJ2aWNlPjtcclxuICAgIC8qIFNlcnZpemlvIGRpIHJpZGlyZXppb25lIHBlciBqb2IgY29tcGxldGF0aSAqL1xyXG4gICAgY29tcGxldGVkSm9iUmVkaXJlY3Rpb25TZXJ2aWNlPzogVHlwZTxDb21wbGV0ZWRKb2JSZWRpcmVjdGlvblNlcnZpY2U+O1xyXG4gICAgLyogRnVuemlvbmUgZGkgb3ZlcnJpZGUgcGVyIHJlY3VwZXJhcmUgYWNjb3VudCBzY29wZSBlIGVudm9wdGlvbnMuIFB1w7IgYW5jaGUgZXNzZXJlIHV0aWxpenphdGEgcGVyIGZvcm5pcmUgbW9kZWxsaSBmaW50aSBmaW5vIGFkIGltcGxlbWVudGF6aW9uZSAqL1xyXG4gICAgb3B0aW9uc0FuZFNjb3BlUHJvdmlkZXI/OiBPYnNlcnZhYmxlPHsgYXBwQ29uZmlnOiBFbnZPcHRpb25zLCBzY29wZTogQWNjb3VudFNjb3BlLCBsb2NhbGU6IHN0cmluZyB9PjtcclxuICAgIC8qIExpc3RhIGRlaSBjb21wb25lbnRpIGNvbiBjdWkgZXNwYW5kZXJlIGxhIG5hdmJhciAqL1xyXG4gICAgbmF2YmFyRXh0ZW5zaW9ucz86IFR5cGU8YW55PltdO1xyXG59XHJcblxyXG5leHBvcnQgZW51bSBEZWJ1Z0ZsYWdzIHtcclxuICAgIE5vbmUgPSAwLFxyXG4gICAgTG9jYWxpemF0aW9ucyA9IDEgPDwgMCxcclxuICAgIEV4dGVuc2lvbnMgPSAxIDw8IDEsXHJcbiAgICBBY2Nlc3NDb250cm9sID0gMSA8PCAyLFxyXG4gICAgSHR0cCA9IDEgPDwgMyxcclxuICAgIFNpZ25hbFIgPSAxIDw8IDQsXHJcbiAgICBQcmVmZXJlbmNlcyA9IDEgPDwgNSxcclxuICAgIENoYXJ0cyA9IDEgPDwgNixcclxuICAgIEFsbCA9IH4ofjAgPDwgNylcclxufSJdfQ==
|
|
227
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvY29yZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQTZCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6SCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMvRSxPQUFPLEVBQVUsWUFBWSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDM0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxtQ0FBbUMsQ0FBQztBQUUzQyxVQUFVO0FBQ1YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDdkcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDMUMsT0FBTyxzQkFBc0IsQ0FBQztBQUU5QixLQUFLO0FBQ0wsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGVBQWUsRUFBRSxvQkFBb0IsRUFBRSxnQ0FBZ0MsRUFBRSxjQUFjLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMvSyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsbUJBQW1CLEVBQUUseUJBQXlCLEVBQUUsY0FBYyxFQUFFLGdC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QUFDOzsrR0E5RVEsa0JBQWtCO2dIQUFsQixrQkFBa0IsaUJBSFosWUFBWSxhQWxFM0IsdUJBQXVCO1FBQ3ZCLGdCQUFnQjtRQUNoQixjQUFjO1FBQ2QsZ0JBQWdCO2dIQWtFUCxrQkFBa0IsWUFGZCxPQUFPOzJGQUVYLGtCQUFrQjtrQkFKOUIsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQzVCLE9BQU8sRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDO2lCQUN4Qjs7QUFrRkQsTUFBTSxPQUFPLHdCQUF3QjtDQXFDcEM7QUFFRCxNQUFNLENBQU4sSUFBWSxVQVVYO0FBVkQsV0FBWSxVQUFVO0lBQ2xCLDJDQUFRLENBQUE7SUFDUiw2REFBc0IsQ0FBQTtJQUN0Qix1REFBbUIsQ0FBQTtJQUNuQiw2REFBc0IsQ0FBQTtJQUN0QiwyQ0FBYSxDQUFBO0lBQ2Isa0RBQWdCLENBQUE7SUFDaEIsMERBQW9CLENBQUE7SUFDcEIsZ0RBQWUsQ0FBQTtJQUNmLDJDQUFnQixDQUFBO0FBQ3BCLENBQUMsRUFWVyxVQUFVLEtBQVYsVUFBVSxRQVVyQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIEFuZ3VsYXJcclxuaW1wb3J0IHsgTmdNb2R1bGUsIEVycm9ySGFuZGxlciwgTE9DQUxFX0lELCBBUFBfSU5JVElBTElaRVIsIE1vZHVsZVdpdGhQcm92aWRlcnMsIFR5cGUsIGlzRGV2TW9kZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEJyb3dzZXJBbmltYXRpb25zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlci9hbmltYXRpb25zJztcclxuaW1wb3J0IHsgUm91dGVzLCBSb3V0ZXJNb2R1bGUsIE5vUHJlbG9hZGluZywgUk9VVEVTIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBNQVRfREFURV9GT1JNQVRTLCBNQVRfREFURV9MT0NBTEUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZVwiO1xyXG5pbXBvcnQgeyBFVkVOVF9NQU5BR0VSX1BMVUdJTlMgfSBmcm9tIFwiQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3NlclwiO1xyXG5pbXBvcnQgeyBTZXJ2aWNlV29ya2VyTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL3NlcnZpY2Utd29ya2VyXCI7XHJcbmltcG9ydCB7IEh0dHBDbGllbnRNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IFwiQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZ2xvYmFsL2l0XCI7XHJcblxyXG4vLyBQbHVnaW5zXHJcbmltcG9ydCB7IE5neE1hdERhdGVBZGFwdGVyLCBOR1hfTUFUX0RBVEVfRk9STUFUUyB9IGZyb20gXCJAYW5ndWxhci1tYXRlcmlhbC1jb21wb25lbnRzL2RhdGV0aW1lLXBpY2tlclwiO1xyXG5pbXBvcnQgeyBDb29raWVTZXJ2aWNlIH0gZnJvbSBcIm5neC1jb29raWUtc2VydmljZVwiO1xyXG5pbXBvcnQgeyBUb2FzdHJNb2R1bGUgfSBmcm9tIFwibmd4LXRvYXN0clwiO1xyXG5pbXBvcnQgXCJ3aWRnc3Rlci93aWRnc3Rlci5qc1wiO1xyXG5cclxuLy8gRVNcclxuaW1wb3J0IHsgUHJlZmVyZW5jZXNNb2R1bGUsIFBSRUZfREVCVUdfTU9ERSwgUHJlZmVyZW5jZXNQZXJzaXN0b3IsIExvY2FsU3RvcmFnZVByZWZlcmVuY2VzUGVyc2lzdG9yLCBDYWNoZVBlcnNpc3RvciwgTG9jYWxTdG9yYWdlQ2FjaGVQZXJzaXN0b3IgfSBmcm9tIFwiQGVzZmFlbnphL3ByZWZlcmVuY2VzXCI7XHJcbmltcG9ydCB7IExvY2FsaXphdGlvbk1vZHVsZSwgTG9jYWxpemF0aW9uU2VydmljZSwgTG9jYWxpemF0aW9uTWlzc2luZ1BvbGljeSwgTE9DX0RFQlVHX01PREUsIEJhc2VMb2NhbGl6YXRpb24gfSBmcm9tIFwiQGVzZmFlbnphL2xvY2FsaXphdGlvbnNcIjtcclxuaW1wb3J0IHsgSHR0cHNlcnZpY2VNb2R1bGUsIEh0dHBTZXJ2aWNlRXh0ZW5zaW9ucywgSFRUUFNlcnZpY2UsIEhUVFBfREVCVUdfTU9ERSwgSFRUUF9JTlZBTElEQVRJT04gfSBmcm9tIFwiQGVzZmFlbnphL2h0dHBzZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFNpZ25hbHJOb3RpZmljYXRpb25zTW9kdWxlLCBTR1JfREVCVUdfTU9ERSwgQmFzZU1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSBcIkBlc2ZhZW56YS9zaWduYWxyLW5vdGlmaWNhdGlvbnNcIjtcclxuaW1wb3J0IHsgRm9ybXNBbmRWYWxpZGF0aW9uc01vZHVsZSwgTmd4RXhwYW5kZWREYXlKc0RhdGVBZGFwdGVyIH0gZnJvbSBcIkBlc2ZhZW56YS9mb3Jtcy1hbmQtdmFsaWRhdGlvbnNcIjtcclxuaW1wb3J0IHsgQWNjZXNzQ29udHJvbE1vZHVsZSwgQWNjZXNzQ29udHJvbFNlcnZpY2UsIEFDQ19ERUJVR19NT0RFIH0gZnJvbSBcIkBlc2ZhZW56YS9hY2Nlc3MtY29udHJvbFwiO1xyXG5pbXBvcnQgeyBCYXNlQWRhcHRlciwgRXNDaGFydHNNb2R1bGUsIEVTQ19ERUJVR19NT0RFIH0gZnJvbSBcIkBlc2ZhZW56YS9lcy1jaGFydHNcIjtcclxuaW1wb3J0IHsgRXh0ZW5zaW9uc01vZHVsZSwgRVhUX0RFQlVHX01PREUgfSBmcm9tIFwiQGVzZmFlbnphL2V4dGVuc2lvbnNcIjtcclxuaW1wb3J0IHsgQ29udGV4dE1lbnVNb2R1bGUgfSBmcm9tIFwiQGVzZmFlbnphL25neC1jb250ZXh0bWVudVwiO1xyXG5pbXBvcnQgeyBEcmFndWxhTW9kdWxlIH0gZnJvbSAnQGVzZmFlbnphL25neC1kcmFndWxhJztcclxuaW1wb3J0IHsgRXNUYWJsZU1vZHVsZSB9IGZyb20gXCJAZXNmYWVuemEvZXMtdGFibGVcIjtcclxuXHJcbi8vIENvcmVcclxuaW1wb3J0IHsgQVBQRXJyb3JIYW5kbGVyLCBIVFRQU2VydmljZUV4dGVuc2lvbnMsIEFwcGxpY2F0aW9uUHJlZmVyZW5jZXNQZXJzaXN0b3IsIEFwcGxpY2F0aW9uQ2FjaGVQZXJzaXN0b3IsIFNlc3Npb25SZXRyaWV2ZXIsIE91dFpvbmVFdmVudFBsdWdpbiwgVG9rZW5TZXJ2aWNlLCBHbG9iYWxTZWFyY2hTZXJ2aWNlLCBDb21wbGV0ZWRKb2JSZWRpcmVjdGlvblNlcnZpY2UsIE1lbnVGaWx0ZXJpbmdTZXJ2aWNlIH0gZnJvbSBcIkBlc2ZhZW56YS9jb3JlL3NlcnZpY2VzXCI7XHJcbmltcG9ydCB7IFBhZ2VOb3RGb3VuZENvbXBvbmVudCwgU2VydmVyRXJyb3JDb21wb25lbnQsIEFuZ3VsYXJFcnJvckNvbXBvbmVudCwgRXh0ZXJuYWxQYWdlc0NvbXBvbmVudCwgSmFjZUxvZ2luQ29tcG9uZW50LCBQYWdlc0NvbXBvbmVudCwgUmVkaXJlY3RlckNvbXBvbmVudCwgQ29tcG9uZW50c01vZHVsZSB9IGZyb20gXCJAZXNmYWVuemEvY29yZS9jb21wb25lbnRzXCI7XHJcbmltcG9ydCB7IEFwcGxpY2F0aW9uTWVudSwgRW52T3B0aW9ucywgQWNjb3VudFNjb3BlLCBNRU5VLCBNRU5VX0xPQ0FMSVpBVElPTiwgUkVESVJFQ1RfTUFQLCBVU0VfRkFLRV9BQ0NFU1NfVE9LRU4sIE5BVkJBUl9FWFRFTlNJT05TLCBMT0dJTl9VUkxfTEVHQUNZIH0gZnJvbSBcIkBlc2ZhZW56YS9jb3JlL2RvbWFpblwiXHJcbmltcG9ydCB7IFJPVVRFLCBFTUJFRERFRF9ST1VURSB9IGZyb20gXCJAZXNmYWVuemEvY29yZS9kb21haW5cIlxyXG5pbXBvcnQgeyBUZW1wbGF0ZUNvbW1vbiB9IGZyb20gXCJAZXNmYWVuemEvY29yZS9tb2R1bGVzXCI7XHJcblxyXG4vLyBSeEpzXHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIHN3aXRjaE1hcCwgdGFrZSwgdGFwIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7IGZvcmtKb2luLCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gXCJyeGpzXCI7XHJcblxyXG4vLyBCb290c3RyYXBcclxuaW1wb3J0IHsgUHJvZ3Jlc3NiYXJNb2R1bGUgfSBmcm9tIFwibmd4LWJvb3RzdHJhcC9wcm9ncmVzc2JhclwiO1xyXG5pbXBvcnQgeyBUaW1lcGlja2VyTW9kdWxlIH0gZnJvbSBcIm5neC1ib290c3RyYXAvdGltZXBpY2tlclwiO1xyXG5pbXBvcnQgeyBCc0Ryb3Bkb3duTW9kdWxlIH0gZnJvbSBcIm5neC1ib290c3RyYXAvZHJvcGRvd25cIjtcclxuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSB9IGZyb20gXCJuZ3gtYm9vdHN0cmFwL3Rvb2x0aXBcIjtcclxuaW1wb3J0IHsgTW9kYWxNb2R1bGUgfSBmcm9tIFwibmd4LWJvb3RzdHJhcC9tb2RhbFwiO1xyXG5cclxuLy8gQXBwbGljYXppb25lXHJcbmltcG9ydCB7IEFwcENvbXBvbmVudCB9IGZyb20gXCIuL2FwcC5jb21wb25lbnRcIjtcclxuXHJcbi8vIFJlcG9zaXRvcmllc1xyXG5jb25zdCBHRVRfSmFjZV9HZXRBY2NvdW50U2NvcGU6IHN0cmluZyA9IFwiL2FwaS9KYWNlL0dldEFjY291bnRTY29wZVwiO1xyXG5jb25zdCBHRVRfQXBwQ29uZmlnX0dldEFwcENvbmZpZzogc3RyaW5nID0gXCIvYXBpL0FwcENvbmZpZy9HZXRBcHBDb25maWdcIjtcclxuXHJcbmRlY2xhcmUgdmFyIG15Y29uZmlnOiBFbnZPcHRpb25zO1xyXG5cclxuY29uc3QgYmFzZUFwcFJvdXRlczogUm91dGVzID0gW1xyXG4gICAgeyBwYXRoOiBcIlwiLCByZWRpcmVjdFRvOiBcInBhZ2VzL3tlbXB0eVJvdXRlUmVkaXJlY3R9XCIsIHBhdGhNYXRjaDogXCJmdWxsXCIgfSxcclxuICAgIHsgcGF0aDogRU1CRURERURfUk9VVEUsIGNvbXBvbmVudDogRXh0ZXJuYWxQYWdlc0NvbXBvbmVudCB9LFxyXG4gICAgeyBwYXRoOiBST1VURSwgY29tcG9uZW50OiBQYWdlc0NvbXBvbmVudCB9LFxyXG4gICAgeyBwYXRoOiBcInJkXCIsIGNvbXBvbmVudDogUmVkaXJlY3RlckNvbXBvbmVudCB9LFxyXG4gICAgeyBwYXRoOiBcImxvZ2luXCIsIGNvbXBvbmVudDogSmFjZUxvZ2luQ29tcG9uZW50IH0sXHJcbiAgICB7IHBhdGg6IFwiaXNlcnJcIiwgY29tcG9uZW50OiBTZXJ2ZXJFcnJvckNvbXBvbmVudCB9LFxyXG4gICAgeyBwYXRoOiBcImFuZXJyXCIsIGNvbXBvbmVudDogQW5ndWxhckVycm9yQ29tcG9uZW50IH0sXHJcbiAgICB7IHBhdGg6IFwiKipcIiwgY29tcG9uZW50OiBQYWdlTm90Rm91bmRDb21wb25lbnQgfVxyXG5dO1xyXG5cclxuY29uc3QgTU9EVUxFUyA9IFtcclxuICAgIEJyb3dzZXJBbmltYXRpb25zTW9kdWxlLFxyXG4gICAgSHR0cENsaWVudE1vZHVsZSxcclxuICAgIFRlbXBsYXRlQ29tbW9uLFxyXG4gICAgQ29tcG9uZW50c01vZHVsZSxcclxuXHJcbiAgICAvLyBBdHRlbnppb25lIGEgbGFzY2lhcmxvIGF0dGl2byBpbiBuZyBzZXJ2ZTogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvNDc0NTVcclxuICAgIFNlcnZpY2VXb3JrZXJNb2R1bGUucmVnaXN0ZXIoJ25nc3ctd29ya2VyLmpzJywgeyBlbmFibGVkOiAhaXNEZXZNb2RlKCkgfSksXHJcbiAgICBSb3V0ZXJNb2R1bGUuZm9yUm9vdChbXSwgeyB1c2VIYXNoOiB0cnVlLCBwcmVsb2FkaW5nU3RyYXRlZ3k6IE5vUHJlbG9hZGluZywgb25TYW1lVXJsTmF2aWdhdGlvbjogXCJyZWxvYWRcIiB9KSxcclxuXHJcbiAgICAvLyBFU1xyXG4gICAgRXNUYWJsZU1vZHVsZS5mb3JSb290KCksXHJcbiAgICBGb3Jtc0FuZFZhbGlkYXRpb25zTW9kdWxlLmZvclJvb3QoeyBhY29jdXN0b206IFwiT1wiLCBzbGlkZXJNb2RlOiB0cnVlIH0pLFxyXG4gICAgRXh0ZW5zaW9uc01vZHVsZS5mb3JSb290KCksXHJcbiAgICBMb2NhbGl6YXRpb25Nb2R1bGUuZm9yUm9vdCh7IGxvY2FsaXphdGlvbk1pc3NpbmdQb2xpY3k6IExvY2FsaXphdGlvbk1pc3NpbmdQb2xpY3kuUHJpbnRTb3VyY2UsIGRlZmF1bHRMb2NhbGU6ICdpdC1JVCcgfSksXHJcbiAgICBBY2Nlc3NDb250cm9sTW9kdWxlLmZvclJvb3QoeyBjb250ZXh0QXdhcmVLZXk6IFwiT1wiLCBkZWZhdWx0Q29uZGl0aW9uOiAnKFI6SmFjZSBBZG1pbiB8fCBSOkphY2UgU3VwcG9ydCknIH0pLFxyXG4gICAgSHR0cHNlcnZpY2VNb2R1bGUuZm9yUm9vdCgpLFxyXG4gICAgU2lnbmFsck5vdGlmaWNhdGlvbnNNb2R1bGUuZm9yUm9vdCh7IGVuZHBvaW50VXJsOiAnbm90aWZ5JywgdXNlTWVzc2FnZVBhY2s6IHRydWUgfSksXHJcbiAgICBQcmVmZXJlbmNlc01vZHVsZS5mb3JSb290KHsgcmV0cmlldmVBbGxBdFN0YXJ0OiB0cnVlLCBzZXNzaW9uUmV0cmlldmVyOiBTZXNzaW9uUmV0cmlldmVyLCBwcmVmZXJlbmNlUGVyc2lzdG9yOiBBcHBsaWNhdGlvblByZWZlcmVuY2VzUGVyc2lzdG9yLCBjYWNoZVBlcnNpc3RvcjogQXBwbGljYXRpb25DYWNoZVBlcnNpc3RvciB9KSxcclxuICAgIEVzQ2hhcnRzTW9kdWxlLmZvclJvb3QoKSxcclxuXHJcbiAgICAvLyBCb290c3RyYXBcclxuICAgIFRvb2x0aXBNb2R1bGUuZm9yUm9vdCgpLFxyXG4gICAgTW9kYWxNb2R1bGUuZm9yUm9vdCgpLFxyXG4gICAgUHJvZ3Jlc3NiYXJNb2R1bGUuZm9yUm9vdCgpLFxyXG4gICAgQnNEcm9wZG93bk1vZHVsZS5mb3JSb290KCksXHJcbiAgICBUb2FzdHJNb2R1bGUuZm9yUm9vdCgpLFxyXG4gICAgVGltZXBpY2tlck1vZHVsZS5mb3JSb290KCksXHJcbiAgICBDb250ZXh0TWVudU1vZHVsZS5mb3JSb290KCksXHJcbiAgICBEcmFndWxhTW9kdWxlLmZvclJvb3QoKVxyXG5dO1xyXG5cclxuLy8gR2VuZXJhdG9yZSBkZWkgZm9ybWF0aSBkYXRhXHJcbnZhciBmb3JtYXRzID0gKHN0eWxlOiAnbG9uZycgfCAnc2hvcnQnKSA9PiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIHBhcnNlOiB7IGRhdGVJbnB1dDogJ0REL01NL1lZWVknICsgKHN0eWxlID09PSAnbG9uZycgPyAnIEhIOm1tOnNzJyA6ICcnKSB9LFxyXG4gICAgICAgIGRpc3BsYXk6IHtcclxuICAgICAgICAgICAgZGF0ZUlucHV0OiAnREQvTU0vWVlZWScgKyAoc3R5bGUgPT09ICdsb25nJyA/ICcgSEg6bW06c3MnIDogJycpLFxyXG4gICAgICAgICAgICBtb250aFllYXJMYWJlbDogJ01NIFlZWVknLFxyXG4gICAgICAgICAgICBkYXRlQTExeUxhYmVsOiAnREQvTU0vWVlZWScgKyAoc3R5bGUgPT09ICdsb25nJyA/ICcgSEg6bW06c3MnIDogJycpLFxyXG4gICAgICAgICAgICBtb250aFllYXJBMTF5TGFiZWw6ICdNTSBZWVlZJyxcclxuICAgICAgICB9XHJcbiAgICB9O1xyXG59XHJcblxyXG5jb25zdCBsb2NhbGVGYWN0b3J5ID0gKGxvYzogTG9jYWxpemF0aW9uU2VydmljZSkgPT4gbG9jLlNtYWxsTG9jYWxlO1xyXG5cclxuY29uc3QgUFJPVklERVJTID0gW1xyXG4gICAgQ29va2llU2VydmljZSxcclxuXHJcbiAgICAvLyBQcm92aWRlcnMgYXBwbGljYXRpdmlcclxuICAgIHsgcHJvdmlkZTogRXJyb3JIYW5kbGVyLCB1c2VDbGFzczogQVBQRXJyb3JIYW5kbGVyIH0sXHJcbiAgICB7IHByb3ZpZGU6IEVWRU5UX01BTkFHRVJfUExVR0lOUywgdXNlRXhpc3Rpbmc6IE91dFpvbmVFdmVudFBsdWdpbiwgbXVsdGk6IHRydWUgfSxcclxuICAgIHsgcHJvdmlkZTogSHR0cFNlcnZpY2VFeHRlbnNpb25zLCB1c2VDbGFzczogSFRUUFNlcnZpY2VFeHRlbnNpb25zIH0sXHJcblxyXG4gICAgLy8gTG9jYWxlIGUgZ2VzdGlvbmkgZGVsbGUgZGF0ZVxyXG4gICAgeyBwcm92aWRlOiBMT0NBTEVfSUQsIHVzZUZhY3Rvcnk6IGxvY2FsZUZhY3RvcnksIGRlcHM6IFtMb2NhbGl6YXRpb25TZXJ2aWNlXSB9LFxyXG4gICAgeyBwcm92aWRlOiBNQVRfREFURV9MT0NBTEUsIHVzZUZhY3Rvcnk6IGxvY2FsZUZhY3RvcnksIGRlcHM6IFtMb2NhbGl6YXRpb25TZXJ2aWNlXSB9LFxyXG4gICAgeyBwcm92aWRlOiBNQVRfREFURV9GT1JNQVRTLCB1c2VWYWx1ZTogZm9ybWF0cygnc2hvcnQnKSB9LFxyXG5cclxuICAgIC8vIFF1ZXN0aSBkdWUgc29ubyBwcm92aWRhdGkgZGFsIEZvcm1zQW5kVmFsaWRhdGlvbk1vZHVsZSBzdGVzc28sIHBlcsOyIHF1ZXN0J3VsdGltbyDDqCBkZWZpbml0byBpbiBmb3JSb290IHNvbG8gbGF0byBjb21wb25lbnRpIHNoYXJlZCwgXHJcbiAgICAvLyBxdWluZGkgcGVyIHJlbmRlcmUgcXVlc3RpIHByb3ZpZGVyIGRpc3BvbmliaWxpIGFuY2hlIGEgbW9kdWxpIGVzdGVybmkgZGV2byByaXByb3ZpZGFybGkgYW5jaGUgcXVpXHJcbiAgICB7IHByb3ZpZGU6IE5HWF9NQVRfREFURV9GT1JNQVRTLCB1c2VWYWx1ZTogZm9ybWF0cygnbG9uZycpIH0sXHJcbiAgICB7IHByb3ZpZGU6IE5neE1hdERhdGVBZGFwdGVyLCB1c2VDbGFzczogTmd4RXhwYW5kZWREYXlKc0RhdGVBZGFwdGVyIH1cclxuXTtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgICBkZWNsYXJhdGlvbnM6IFtBcHBDb21wb25lbnRdLFxyXG4gICAgaW1wb3J0czogWy4uLk1PRFVMRVNdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFc0ZhZW56YUNvcmVNb2R1bGUge1xyXG4gICAgc3RhdGljIGZvclJvb3QoY29uZmlnPzogRXNGYWVuemFDb3JlTW9kdWxlQ29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxFc0ZhZW56YUNvcmVNb2R1bGU+IHtcclxuICAgICAgICBpZiAoY29uZmlnLnJvdXRlcykge1xyXG4gICAgICAgICAgICBiYXNlQXBwUm91dGVzWzBdLnJlZGlyZWN0VG8gPSBgcGFnZXMvJHtjb25maWcuZW1wdHlSb3V0ZVJlZGlyZWN0IHx8ICdkYXNoYm9hcmQnfWA7XHJcbiAgICAgICAgICAgIGJhc2VBcHBSb3V0ZXMuZmlsdGVyKHQgPT4gW1wicGFnZXNcIiwgXCJwYWdlc19leHRcIl0uaW5jbHVkZXModC5wYXRoKSkuZm9yRWFjaChwYXRoID0+IHsgcGF0aC5jaGlsZHJlbiA9IGNvbmZpZy5yb3V0ZXM7IH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25maWcuZGVidWdNb2RlID0gKCFpc0Rldk1vZGUoKSAmJiAhY29uZmlnLmZvcmNlRGVidWdNb2RlRm9yUHJvZEJ1aWxkcykgPyBEZWJ1Z0ZsYWdzLk5vbmUgOiAoY29uZmlnLmRlYnVnTW9kZSB8fCBEZWJ1Z0ZsYWdzLkFsbCk7XHJcblxyXG4gICAgICAgIGxldCBtZXJnZWRBcHBJbml0aWFsaXplciA9IChodHRwOiBIVFRQU2VydmljZSwgYnRzOiBUb2tlblNlcnZpY2UsIGFhYzogQWNjZXNzQ29udHJvbFNlcnZpY2UsIGxvYzogQmFzZUxvY2FsaXphdGlvbikgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCIlY1tBUFBfSU5JVElBTElaRVJdIExvYWRpbmcgQXBwQ29uZmlnIGFuZCBBY2NvdW50IFNjb3BlLi4uXCIsIFwiYmFja2dyb3VuZC1jb2xvcjogeWVsbG93XCIpO1xyXG4gICAgICAgICAgICAgICAgbGV0IHJlYWxPYnNlcnZhYmxlID0gZm9ya0pvaW4oXHJcbiAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBhcHBDb25maWc6IGh0dHAuZ2V0PEVudk9wdGlvbnM+KEdFVF9BcHBDb25maWdfR2V0QXBwQ29uZmlnLCBudWxsLCBudWxsLCBmYWxzZSkucGlwZShjYXRjaEVycm9yKF8gPT4gb2Yoe30pKSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNjb3BlOiBodHRwLmdldDxBY2NvdW50U2NvcGU+KEdFVF9KYWNlX0dldEFjY291bnRTY29wZSwgbnVsbCwgbnVsbCwgZmFsc2UpLnBpcGUoY2F0Y2hFcnJvcihfID0+IG9mKG51bGwpKSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsZTogbG9jLkxvY2FsZS5waXBlKHRha2UoMSksIGNhdGNoRXJyb3IoXyA9PiBvZignaXQtSVQnKSkpLFxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgICAgIGxldCB1c2VkT2JzZXJ2YWJsZSA9IGNvbmZpZy5vcHRpb25zQW5kU2NvcGVQcm92aWRlciB8fCByZWFsT2JzZXJ2YWJsZTtcclxuXHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdXNlZE9ic2VydmFibGUucGlwZShcclxuICAgICAgICAgICAgICAgICAgICB0YXAoKHJlczogeyBhcHBDb25maWc6IEVudk9wdGlvbnMsIHNjb3BlOiBBY2NvdW50U2NvcGUsIGxvY2FsZTogc3RyaW5nIH0pID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbXljb25maWcgPSByZXMuYXBwQ29uZmlnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBMJ2FjY291bnQgc2NvcGUgbG8gcHJlbmRvIGRhbGxhIFF1ZXJ5IGEgYmFja2VuZCBzb2xvIHNlIG5vbiB1c28gaWwgRmFrZSB0b2tlblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWJ0cy5VU0VfRkFLRV9BQ0NFU1NfVE9LRU4pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBidHMuYWNjb3VudFNjb3BlID0gcmVzLnNjb3BlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCIlY1tBUFBfSU5JVElBTElaRVJdIGFwcENvbmZpZyBhbmQgc2NvcGUgcmVnaXN0ZXJlZFwiLCBcImJhY2tncm91bmQtY29sb3I6IHllbGxvd1wiKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChidHMuYWNjb3VudFNjb3BlKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWFjLmluaXRpYWxpemVJZGVudGl0eShidHMuZ2V0SmFjZUlkZW50aXR5KCkpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgICAgIHN3aXRjaE1hcChfID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFjb25maWcuaW5pdGlhbGl6ZXJGdW5jdGlvbilcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBvZigpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCIlY1tBUFBfSU5JVElBTElaRVJdIExvYWRpbmcgY3VzdG9tIGFwcGxpY2F0aW9uIGluaXRpYWxpemF0aW9uXCIsIFwiYmFja2dyb3VuZC1jb2xvcjogeWVsbG93XCIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gY29uZmlnLmluaXRpYWxpemVyRnVuY3Rpb24oaHR0cCwgYnRzLCBhYWMpKCkucGlwZSh0YXAoXyA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcIiVjW0FQUF9JTklUSUFMSVpFUl0gSW5pdGlhbGl6YXRpb24gaXMgb3ZlclwiLCBcImJhY2tncm91bmQtY29sb3I6IHllbGxvd1wiKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSkpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgbmdNb2R1bGU6IEVzRmFlbnphQ29yZU1vZHVsZSxcclxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAgICAgICAgICAvLyAqKioqKioqKioqKioqKioqKioqKioqKioqKiogUHJvdmlkZXIgc3RhdGljaSAqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbiAgICAgICAgICAgICAgICAuLi5QUk9WSURFUlMsXHJcblxyXG4gICAgICAgICAgICAgICAgLy8gKioqKioqKioqKioqKioqKioqKioqKioqIFByb3ZpZGVyIGN1c3RvbWl6emFiaWxpICoqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gICAgICAgICAgICAgICAgLi4uKCFjb25maWcucmVkaXJlY3Rpb25NYXAgPyBbXSA6IFt7IHByb3ZpZGU6IFJFRElSRUNUX01BUCwgdXNlVmFsdWU6IGNvbmZpZy5yZWRpcmVjdGlvbk1hcCB9XSksXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUiwgdXNlRmFjdG9yeTogbWVyZ2VkQXBwSW5pdGlhbGl6ZXIsIGRlcHM6IFtIVFRQU2VydmljZSwgVG9rZW5TZXJ2aWNlLCBBY2Nlc3NDb250cm9sU2VydmljZSwgQmFzZUxvY2FsaXphdGlvbl0sIG11bHRpOiB0cnVlIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IFJPVVRFUywgdXNlVmFsdWU6IGJhc2VBcHBSb3V0ZXMsIG11bHRpOiB0cnVlIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IExPQ19ERUJVR19NT0RFLCB1c2VWYWx1ZTogY29uZmlnLmRlYnVnTW9kZSA/IChjb25maWcuZGVidWdNb2RlICYgRGVidWdGbGFncy5Mb2NhbGl6YXRpb25zKSA9PSBEZWJ1Z0ZsYWdzLkxvY2FsaXphdGlvbnMgOiBmYWxzZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBFWFRfREVCVUdfTU9ERSwgdXNlVmFsdWU6IGNvbmZpZy5kZWJ1Z01vZGUgPyAoY29uZmlnLmRlYnVnTW9kZSAmIERlYnVnRmxhZ3MuRXh0ZW5zaW9ucykgPT0gRGVidWdGbGFncy5FeHRlbnNpb25zIDogZmFsc2UgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogQUNDX0RFQlVHX01PREUsIHVzZVZhbHVlOiBjb25maWcuZGVidWdNb2RlID8gKGNvbmZpZy5kZWJ1Z01vZGUgJiBEZWJ1Z0ZsYWdzLkFjY2Vzc0NvbnRyb2wpID09IERlYnVnRmxhZ3MuQWNjZXNzQ29udHJvbCA6IGZhbHNlIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IEhUVFBfREVCVUdfTU9ERSwgdXNlVmFsdWU6IGNvbmZpZy5kZWJ1Z01vZGUgPyAoY29uZmlnLmRlYnVnTW9kZSAmIERlYnVnRmxhZ3MuSHR0cCkgPT0gRGVidWdGbGFncy5IdHRwIDogZmFsc2UgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogSFRUUF9JTlZBTElEQVRJT04sIHVzZVZhbHVlOiBjb25maWc/Lmh0dHBJbnZhbGlkYXRpb25DYWNoZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBTR1JfREVCVUdfTU9ERSwgdXNlVmFsdWU6IGNvbmZpZy5kZWJ1Z01vZGUgPyAoY29uZmlnLmRlYnVnTW9kZSAmIERlYnVnRmxhZ3MuU2lnbmFsUikgPT0gRGVidWdGbGFncy5TaWduYWxSIDogZmFsc2UgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogUFJFRl9ERUJVR19NT0RFLCB1c2VWYWx1ZTogY29uZmlnLmRlYnVnTW9kZSA/IChjb25maWcuZGVidWdNb2RlICYgRGVidWdGbGFncy5QcmVmZXJlbmNlcykgPT0gRGVidWdGbGFncy5QcmVmZXJlbmNlcyA6IGZhbHNlIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IEVTQ19ERUJVR19NT0RFLCB1c2VWYWx1ZTogY29uZmlnLmRlYnVnTW9kZSA/IChjb25maWcuZGVidWdNb2RlICYgRGVidWdGbGFncy5DaGFydHMpID09IERlYnVnRmxhZ3MuQ2hhcnRzIDogZmFsc2UgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogTE9HSU5fVVJMX0xFR0FDWSwgdXNlVmFsdWU6IGNvbmZpZy5sZWdhY3lMb2dpbiAhPT0gbnVsbCAmJiBjb25maWcubGVnYWN5TG9naW4gIT09IHVuZGVmaW5lZCA/IGNvbmZpZy5sZWdhY3lMb2dpbiA6IHRydWUgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogTkFWQkFSX0VYVEVOU0lPTlMsIHVzZVZhbHVlOiBjb25maWcubmF2YmFyRXh0ZW5zaW9ucyA/IGNvbmZpZy5uYXZiYXJFeHRlbnNpb25zIDogW10gfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogQmFzZUFkYXB0ZXIsIHVzZUNsYXNzOiBjb25maWc/LmNoYXJ0c0FkYXB0ZXIgfHwgQmFzZUFkYXB0ZXIgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogQmFzZU1lc3NhZ2VTZXJ2aWNlLCB1c2VDbGFzczogY29uZmlnPy5tZXNzYWdlU2VydmljZSB8fCBCYXNlTWVzc2FnZVNlcnZpY2UgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogR2xvYmFsU2VhcmNoU2VydmljZSwgdXNlQ2xhc3M6IGNvbmZpZz8uZ2xvYmFsU2VhcmNoU2VydmljZSB8fCBHbG9iYWxTZWFyY2hTZXJ2aWNlIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IENvbXBsZXRlZEpvYlJlZGlyZWN0aW9uU2VydmljZSwgdXNlQ2xhc3M6IGNvbmZpZz8uY29tcGxldGVkSm9iUmVkaXJlY3Rpb25TZXJ2aWNlIHx8IENvbXBsZXRlZEpvYlJlZGlyZWN0aW9uU2VydmljZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBNZW51RmlsdGVyaW5nU2VydmljZSwgdXNlQ2xhc3M6IGNvbmZpZz8ubWVudUZpbHRlcmluZ1NlcnZpY2UgfHwgTWVudUZpbHRlcmluZ1NlcnZpY2UgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogTUVOVV9MT0NBTElaQVRJT04sIHVzZVZhbHVlOiBjb25maWcubWVudUxvYyB8fCBudWxsIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IE1FTlUsIHVzZVZhbHVlOiBjb25maWcubWVudSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBVU0VfRkFLRV9BQ0NFU1NfVE9LRU4sIHVzZVZhbHVlOiAhIWNvbmZpZy5mYWtlQWNjZXNzVG9rZW4gfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogUHJlZmVyZW5jZXNQZXJzaXN0b3IsIHVzZUNsYXNzOiBjb25maWcuZmFrZUFjY2Vzc1Rva2VuID8gTG9jYWxTdG9yYWdlUHJlZmVyZW5jZXNQZXJzaXN0b3IgOiBBcHBsaWNhdGlvblByZWZlcmVuY2VzUGVyc2lzdG9yIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IENhY2hlUGVyc2lzdG9yLCB1c2VDbGFzczogY29uZmlnLmZha2VBY2Nlc3NUb2tlbiA/IExvY2FsU3RvcmFnZUNhY2hlUGVyc2lzdG9yIDogQXBwbGljYXRpb25DYWNoZVBlcnNpc3RvciB9XHJcbiAgICAgICAgICAgIF1cclxuICAgICAgICB9O1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgRXNGYWVuemFDb3JlTW9kdWxlQ29uZmlnIHtcclxuICAgIC8qIFJvdXRlIGFwcGxpY2F0aXZlLCBzb2xvIHF1ZWxsZSBkZW50cm8gYSAqKnBhZ2VzKiogKi9cclxuICAgIHJvdXRlcyE6IFJvdXRlcztcclxuICAgIC8qIE1lbsO5IGRlbGxhIHNpZGViYXIgZGVsbCdhcHBsaWNhemlvbmUgKi9cclxuICAgIG1lbnU6IEFwcGxpY2F0aW9uTWVudVtdO1xyXG4gICAgLyogSW5kaWNhIHNlIHV0aWxpenphcmUgbCdhY2Nlc3MgdG9rZW4gZmludG8gKi9cclxuICAgIGZha2VBY2Nlc3NUb2tlbj86IGJvb2xlYW47XHJcbiAgICAvKiBUaXBvIGRhIHVzYXJlIHBlciBnZW5lcmFyZSBsZSBsb2NhbGl6emFpem9uaSBkZWwgbWVuw7kgKi9cclxuICAgIG1lbnVMb2M/OiBUeXBlPExvY2FsaXphdGlvblNlcnZpY2U+O1xyXG4gICAgLyogUmVkaXJlY3QgcGVyIGxhIHJvb3QgZGVsbCdhcHBsaWNhemlvbmUsIGRpIGRlZmF1bHQgw6ggaW1wb3N0YXRvIGEgKipkYXNoYm9hcmQqKi4gU2UgYWxsJ2ludGVybm8gZGVsbGUgKipyb3V0ZXMqKiBub24gZXNpc3RlIGxhIHJvdXRlICoqZGFzaGJvYXJkKiogw6ggZGEgaW1wb3N0YXJlIGFkZWd1YXRhbWVudGUgKi9cclxuICAgIGVtcHR5Um91dGVSZWRpcmVjdD86IHN0cmluZztcclxuICAgIC8qIFNlIG5vbiBzcGVjaWZpY2F0YSB2aWVuZSBpbXBvc3RhdGEgYXV0b21hdGljYW1lbnRlIGFkIFwiQWxsXCIgaW4gZmFzZSBkaSBkZWJ1ZywgXCJOb25lXCIgaW4gcHJvZHV6aW9uZSAocXVlc3QndWx0aW1vIGEgcHJlc2NpbmRlcmUsIGEgbWVubyBjaGUgKipmb3JjZURlYnVnTW9kZUZvclByb2RCdWlsZHMqKiBub24gc2lhIHRydWUpKi9cclxuICAgIGRlYnVnTW9kZT86IERlYnVnRmxhZ3M7XHJcbiAgICAvKiBQZXJtZXR0ZSBkaSBmb3J6YXJlIGxhIG1vZGFsaXTDoCBkaSBkZWJ1ZyBzcGVjaWZpY2F0YSBhbmNoZSBwZXIgbGUgYnVpbGQgZGkgcHJvZHV6aW9uZSwgKipOT04gSU1QT1NUQVJFIEEgVFJVRSoqIGEgbWVubyBkaSByYXJpc3NpbWlzc2ltaXNzaW1pIGNhc2kgKi9cclxuICAgIGZvcmNlRGVidWdNb2RlRm9yUHJvZEJ1aWxkcz86IGJvb2xlYW47XHJcbiAgICAvKiBDYWNoZSBkaSBpbnZhbGlkYXppb25lIHBlciBsZSBjaGlhbWF0ZSBodHRwICovXHJcbiAgICBodHRwSW52YWxpZGF0aW9uQ2FjaGU/OiBhbnk7XHJcbiAgICAvKiBGdW56aW9uZSBkaSBpbml6aWFsaXp6YXppb25lIEFQUF9JTklUSUFMSVpFUi1saWtlIGNoZSB2aWVuZSByaWNoaWFtYXRhIGRvcG8gYWxsYSBmdW56aW9uZSBkaSBpbml6aWFsaXp6YXppb25lIGRpIGRlZmF1bHQgKi9cclxuICAgIGluaXRpYWxpemVyRnVuY3Rpb24/OiAoaHR0cDogSFRUUFNlcnZpY2UsIGJ0czogVG9rZW5TZXJ2aWNlLCBhYWM6IEFjY2Vzc0NvbnRyb2xTZXJ2aWNlKSA9PiAoKSA9PiBPYnNlcnZhYmxlPGFueT47XHJcbiAgICAvKiBNYXBwYSBkaSByZWRpcmVjdCBwZXIgcGVybWV0dGVyZSBhbCAqKlJlZGlyZWN0ZXJDb21wb25lbnQqKiBkaSBzYXBlcmUgZG92ZSBuYXZpZ2FyZSBpbiBiYXNlIGEgT2dnZXR0by1QYXJhbWV0cmkgKi9cclxuICAgIHJlZGlyZWN0aW9uTWFwPzogeyBbaW5kZXg6IHN0cmluZ106IHsgdXJsOiBzdHJpbmcsIHBhcmFtczogc3RyaW5nW10gfSB9O1xyXG4gICAgLyogQWRhdHRhdG9yZSBkZWkgZ3JhZmljaSBuZWwgY2FzbyB1biBwcm9nZXR0byBmb3NzZSB2ZWNjaGlvIChSaW11b3ZpYmlsZSBxdWFuZG8gdHV0dGkgaSBwcm9nZXR0aSB1c2FubyBuYXRpdmFtZW50ZSBlcy1jaGFydHMpICovXHJcbiAgICBjaGFydHNBZGFwdGVyPzogVHlwZTxCYXNlQWRhcHRlcj47XHJcbiAgICAvKiBTZXJ2aXppbyBjaGUgZXNwb25lIGkgbWVzc2FnZ2kgZGlzcG9uaWJpbGkgc3UgU2lnbmFsciAqL1xyXG4gICAgbWVzc2FnZVNlcnZpY2U/OiBUeXBlPEJhc2VNZXNzYWdlU2VydmljZT47XHJcbiAgICAvKiBTZXJ2aXppbyBwZXIgbGEgc2VhcmNoIGdsb2JhbGUgZGVsIG1vZHVsbyAqL1xyXG4gICAgZ2xvYmFsU2VhcmNoU2VydmljZT86IFR5cGU8R2xvYmFsU2VhcmNoU2VydmljZT47XHJcbiAgICAvKiBTZXJ2aXppbyBwZXIgZmlsdHJhcmUgbGUgdm9jaSBkaSBtZW7DuSAqL1xyXG4gICAgbWVudUZpbHRlcmluZ1NlcnZpY2U/OiBUeXBlPE1lbnVGaWx0ZXJpbmdTZXJ2aWNlPjtcclxuICAgIC8qIFNlcnZpemlvIGRpIHJpZGlyZXppb25lIHBlciBqb2IgY29tcGxldGF0aSAqL1xyXG4gICAgY29tcGxldGVkSm9iUmVkaXJlY3Rpb25TZXJ2aWNlPzogVHlwZTxDb21wbGV0ZWRKb2JSZWRpcmVjdGlvblNlcnZpY2U+O1xyXG4gICAgLyogRnVuemlvbmUgZGkgb3ZlcnJpZGUgcGVyIHJlY3VwZXJhcmUgYWNjb3VudCBzY29wZSBlIGVudm9wdGlvbnMuIFB1w7IgYW5jaGUgZXNzZXJlIHV0aWxpenphdGEgcGVyIGZvcm5pcmUgbW9kZWxsaSBmaW50aSBmaW5vIGFkIGltcGxlbWVudGF6aW9uZSAqL1xyXG4gICAgb3B0aW9uc0FuZFNjb3BlUHJvdmlkZXI/OiBPYnNlcnZhYmxlPHsgYXBwQ29uZmlnOiBFbnZPcHRpb25zLCBzY29wZTogQWNjb3VudFNjb3BlLCBsb2NhbGU6IHN0cmluZyB9PjtcclxuICAgIC8qIExpc3RhIGRlaSBjb21wb25lbnRpIGNvbiBjdWkgZXNwYW5kZXJlIGxhIG5hdmJhciAqL1xyXG4gICAgbmF2YmFyRXh0ZW5zaW9ucz86IFR5cGU8YW55PltdO1xyXG4gICAgLyogaWRlbnRpZmljYSBzZSB1dGlsaXp6YXJlIGxhIHZlcnNpb25lIHZlY2NoaWEgZGVsbCd1cmwgZGkgYXV0aCAoJHtteWNvbmZpZy5BVVRIX1VSTH0vbG9naW4vZm9ybT9jbGllbnQ9JHtteWNvbmZpZy5DTElFTlRfTkFNRX0pIGludmVjZSBjaGUgbGEgbnVvdmEgKCR7bXljb25maWcuQVVUSF9VUkx9L2xvZ2luO2NsaWVudD0ke215Y29uZmlnLkNMSUVOVF9OQU1FfSkgKi9cclxuICAgIGxlZ2FjeUxvZ2luPzogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGVudW0gRGVidWdGbGFncyB7XHJcbiAgICBOb25lID0gMCxcclxuICAgIExvY2FsaXphdGlvbnMgPSAxIDw8IDAsXHJcbiAgICBFeHRlbnNpb25zID0gMSA8PCAxLFxyXG4gICAgQWNjZXNzQ29udHJvbCA9IDEgPDwgMixcclxuICAgIEh0dHAgPSAxIDw8IDMsXHJcbiAgICBTaWduYWxSID0gMSA8PCA0LFxyXG4gICAgUHJlZmVyZW5jZXMgPSAxIDw8IDUsXHJcbiAgICBDaGFydHMgPSAxIDw8IDYsXHJcbiAgICBBbGwgPSB+KH4wIDw8IDcpXHJcbn0iXX0=
|
|
@@ -6,6 +6,7 @@ import { EsChartsModule } from "@esfaenza/es-charts";
|
|
|
6
6
|
import { EsTableModule } from "@esfaenza/es-table";
|
|
7
7
|
import { ExtensionsModule } from "@esfaenza/extensions";
|
|
8
8
|
import { FormsAndValidationsModule } from "@esfaenza/forms-and-validations";
|
|
9
|
+
import { UtilityComponentsModule } from "@esfaenza/utility-components";
|
|
9
10
|
import { EsGertrudeModule } from "@esfaenza/gertrude";
|
|
10
11
|
import { LocalizationModule } from "@esfaenza/localizations";
|
|
11
12
|
import { EsMatrixValuesModule } from "@esfaenza/matrix-values";
|
|
@@ -23,22 +24,22 @@ import { TooltipModule } from "ngx-bootstrap/tooltip";
|
|
|
23
24
|
import * as i0 from "@angular/core";
|
|
24
25
|
const MODULES_TO_EXPORT = [
|
|
25
26
|
ContextMenuModule,
|
|
26
|
-
TimepickerModule, BsDropdownModule, TooltipModule, ProgressbarModule, DragulaModule, LocalizationModule, ExtensionsModule, AccessControlModule, EsChartsModule,
|
|
27
|
+
TimepickerModule, BsDropdownModule, TooltipModule, ProgressbarModule, DragulaModule, LocalizationModule, ExtensionsModule, AccessControlModule, EsChartsModule, UtilityComponentsModule,
|
|
27
28
|
EsWizardModule, EsCronModule, EsGertrudeModule, EsMatrixValuesModule, EsTagChooserModule, EsQueryBuilderModule, EsParametersModule, CurrencyMaskModule, FormsAndValidationsModule, EsTableModule
|
|
28
29
|
];
|
|
29
30
|
export class SharedCommon {
|
|
30
31
|
}
|
|
31
32
|
SharedCommon.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SharedCommon, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
32
33
|
SharedCommon.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: SharedCommon, imports: [ContextMenuModule,
|
|
33
|
-
TimepickerModule, BsDropdownModule, TooltipModule, ProgressbarModule, DragulaModule, LocalizationModule, ExtensionsModule, AccessControlModule, EsChartsModule,
|
|
34
|
+
TimepickerModule, BsDropdownModule, TooltipModule, ProgressbarModule, DragulaModule, LocalizationModule, ExtensionsModule, AccessControlModule, EsChartsModule, UtilityComponentsModule,
|
|
34
35
|
EsWizardModule, EsCronModule, EsGertrudeModule, EsMatrixValuesModule, EsTagChooserModule, EsQueryBuilderModule, EsParametersModule, CurrencyMaskModule, FormsAndValidationsModule, EsTableModule], exports: [ContextMenuModule,
|
|
35
|
-
TimepickerModule, BsDropdownModule, TooltipModule, ProgressbarModule, DragulaModule, LocalizationModule, ExtensionsModule, AccessControlModule, EsChartsModule,
|
|
36
|
+
TimepickerModule, BsDropdownModule, TooltipModule, ProgressbarModule, DragulaModule, LocalizationModule, ExtensionsModule, AccessControlModule, EsChartsModule, UtilityComponentsModule,
|
|
36
37
|
EsWizardModule, EsCronModule, EsGertrudeModule, EsMatrixValuesModule, EsTagChooserModule, EsQueryBuilderModule, EsParametersModule, CurrencyMaskModule, FormsAndValidationsModule, EsTableModule] });
|
|
37
38
|
SharedCommon.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SharedCommon, imports: [MODULES_TO_EXPORT, ContextMenuModule,
|
|
38
|
-
TimepickerModule, BsDropdownModule, TooltipModule, ProgressbarModule, DragulaModule, LocalizationModule, ExtensionsModule, AccessControlModule, EsChartsModule,
|
|
39
|
+
TimepickerModule, BsDropdownModule, TooltipModule, ProgressbarModule, DragulaModule, LocalizationModule, ExtensionsModule, AccessControlModule, EsChartsModule, UtilityComponentsModule,
|
|
39
40
|
EsWizardModule, EsCronModule, EsGertrudeModule, EsMatrixValuesModule, EsTagChooserModule, EsQueryBuilderModule, EsParametersModule, CurrencyMaskModule, FormsAndValidationsModule, EsTableModule] });
|
|
40
41
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SharedCommon, decorators: [{
|
|
41
42
|
type: NgModule,
|
|
42
43
|
args: [{ imports: [...MODULES_TO_EXPORT], exports: [...MODULES_TO_EXPORT] }]
|
|
43
44
|
}] });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiX3NoYXJlZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL21vZHVsZXMvc3JjL2NsYXNzZXMvX3NoYXJlZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDakUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzFELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBR3RELE1BQU0saUJBQWlCLEdBQUc7SUFDdEIsaUJBQWlCO0lBQ2pCLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsbUJBQW1CLEVBQUUsY0FBYyxFQUFFLHVCQUF1QjtJQUN2TCxjQUFjLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLHlCQUF5QixFQUFFLGFBQWE7Q0FDbk0sQ0FBQztBQUdGLE1BQU0sT0FBTyxZQUFZOzt5R0FBWixZQUFZOzBHQUFaLFlBQVksWUFOckIsaUJBQWlCO1FBQ2pCLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsbUJBQW1CLEVBQUUsY0FBYyxFQUFFLHVCQUF1QjtRQUN2TCxjQUFjLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLHlCQUF5QixFQUFFLGFBQWEsYUFGaE0saUJBQWlCO1FBQ2pCLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsbUJBQW1CLEVBQUUsY0FBYyxFQUFFLHVCQUF1QjtRQUN2TCxjQUFjLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLHlCQUF5QixFQUFFLGFBQWE7MEdBSXZMLFlBQVksWUFEQSxpQkFBaUIsRUFMdEMsaUJBQWlCO1FBQ2pCLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsbUJBQW1CLEVBQUUsY0FBYyxFQUFFLHVCQUF1QjtRQUN2TCxjQUFjLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLHlCQUF5QixFQUFFLGFBQWE7MkZBSXZMLFlBQVk7a0JBRHhCLFFBQVE7bUJBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxHQUFHLGlCQUFpQixDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsR0FBRyxpQkFBaUIsQ0FBQyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5ndWxhclxyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEFjY2Vzc0NvbnRyb2xNb2R1bGUgfSBmcm9tIFwiQGVzZmFlbnphL2FjY2Vzcy1jb250cm9sXCI7XHJcbmltcG9ydCB7IEVzQ3Jvbk1vZHVsZSB9IGZyb20gXCJAZXNmYWVuemEvY3JvblwiO1xyXG5pbXBvcnQgeyBFc0NoYXJ0c01vZHVsZSB9IGZyb20gXCJAZXNmYWVuemEvZXMtY2hhcnRzXCI7XHJcbmltcG9ydCB7IEVzVGFibGVNb2R1bGUgfSBmcm9tIFwiQGVzZmFlbnphL2VzLXRhYmxlXCI7XHJcbmltcG9ydCB7IEV4dGVuc2lvbnNNb2R1bGUgfSBmcm9tIFwiQGVzZmFlbnphL2V4dGVuc2lvbnNcIjtcclxuaW1wb3J0IHsgRm9ybXNBbmRWYWxpZGF0aW9uc01vZHVsZSB9IGZyb20gXCJAZXNmYWVuemEvZm9ybXMtYW5kLXZhbGlkYXRpb25zXCI7XHJcbmltcG9ydCB7IFV0aWxpdHlDb21wb25lbnRzTW9kdWxlIH0gZnJvbSBcIkBlc2ZhZW56YS91dGlsaXR5LWNvbXBvbmVudHNcIjtcclxuaW1wb3J0IHsgRXNHZXJ0cnVkZU1vZHVsZSB9IGZyb20gXCJAZXNmYWVuemEvZ2VydHJ1ZGVcIjtcclxuaW1wb3J0IHsgTG9jYWxpemF0aW9uTW9kdWxlIH0gZnJvbSBcIkBlc2ZhZW56YS9sb2NhbGl6YXRpb25zXCI7XHJcbmltcG9ydCB7IEVzTWF0cml4VmFsdWVzTW9kdWxlIH0gZnJvbSBcIkBlc2ZhZW56YS9tYXRyaXgtdmFsdWVzXCI7XHJcbmltcG9ydCB7IENvbnRleHRNZW51TW9kdWxlIH0gZnJvbSBcIkBlc2ZhZW56YS9uZ3gtY29udGV4dG1lbnVcIjtcclxuaW1wb3J0IHsgQ3VycmVuY3lNYXNrTW9kdWxlIH0gZnJvbSBcIkBlc2ZhZW56YS9uZ3gtY3VycmVuY3ktbWFza1wiO1xyXG5pbXBvcnQgeyBEcmFndWxhTW9kdWxlIH0gZnJvbSBcIkBlc2ZhZW56YS9uZ3gtZHJhZ3VsYVwiO1xyXG5pbXBvcnQgeyBFc1BhcmFtZXRlcnNNb2R1bGUgfSBmcm9tIFwiQGVzZmFlbnphL3BhcmFtZXRlcnNcIjtcclxuaW1wb3J0IHsgRXNRdWVyeUJ1aWxkZXJNb2R1bGUgfSBmcm9tIFwiQGVzZmFlbnphL3F1ZXJ5LWJ1aWxkZXJcIjtcclxuaW1wb3J0IHsgRXNUYWdDaG9vc2VyTW9kdWxlIH0gZnJvbSBcIkBlc2ZhZW56YS90YWctY2hvb3NlclwiO1xyXG5pbXBvcnQgeyBFc1dpemFyZE1vZHVsZSB9IGZyb20gXCJAZXNmYWVuemEvd2l6YXJkXCI7XHJcbmltcG9ydCB7IEJzRHJvcGRvd25Nb2R1bGUgfSBmcm9tIFwibmd4LWJvb3RzdHJhcC9kcm9wZG93blwiO1xyXG5pbXBvcnQgeyBQcm9ncmVzc2Jhck1vZHVsZSB9IGZyb20gXCJuZ3gtYm9vdHN0cmFwL3Byb2dyZXNzYmFyXCI7XHJcbmltcG9ydCB7IFRpbWVwaWNrZXJNb2R1bGUgfSBmcm9tIFwibmd4LWJvb3RzdHJhcC90aW1lcGlja2VyXCI7XHJcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tIFwibmd4LWJvb3RzdHJhcC90b29sdGlwXCI7XHJcblxyXG5cclxuY29uc3QgTU9EVUxFU19UT19FWFBPUlQgPSBbXHJcbiAgICBDb250ZXh0TWVudU1vZHVsZSwgXHJcbiAgICBUaW1lcGlja2VyTW9kdWxlLCBCc0Ryb3Bkb3duTW9kdWxlLCBUb29sdGlwTW9kdWxlLCBQcm9ncmVzc2Jhck1vZHVsZSwgRHJhZ3VsYU1vZHVsZSwgTG9jYWxpemF0aW9uTW9kdWxlLCBFeHRlbnNpb25zTW9kdWxlLCBBY2Nlc3NDb250cm9sTW9kdWxlLCBFc0NoYXJ0c01vZHVsZSwgVXRpbGl0eUNvbXBvbmVudHNNb2R1bGUsXHJcbiAgICBFc1dpemFyZE1vZHVsZSwgRXNDcm9uTW9kdWxlLCBFc0dlcnRydWRlTW9kdWxlLCBFc01hdHJpeFZhbHVlc01vZHVsZSwgRXNUYWdDaG9vc2VyTW9kdWxlLCBFc1F1ZXJ5QnVpbGRlck1vZHVsZSwgRXNQYXJhbWV0ZXJzTW9kdWxlLCBDdXJyZW5jeU1hc2tNb2R1bGUsIEZvcm1zQW5kVmFsaWRhdGlvbnNNb2R1bGUsIEVzVGFibGVNb2R1bGVcclxuXTtcclxuXHJcbkBOZ01vZHVsZSh7IGltcG9ydHM6IFsuLi5NT0RVTEVTX1RPX0VYUE9SVF0sIGV4cG9ydHM6IFsuLi5NT0RVTEVTX1RPX0VYUE9SVF0gfSlcclxuZXhwb3J0IGNsYXNzIFNoYXJlZENvbW1vbiB7IH0iXX0=
|
|
@@ -13,7 +13,7 @@ import * as i2$1 from '@esfaenza/httpservice';
|
|
|
13
13
|
import { __awaiter } from 'tslib';
|
|
14
14
|
import * as i1$2 from '@esfaenza/localizations';
|
|
15
15
|
import { LocalizationModule, LocalizationService } from '@esfaenza/localizations';
|
|
16
|
-
import { MENU_LOCALIZATION, MENU, CategoriesWithModules, NAVBAR_EXTENSIONS, REDIRECT_MAP, EMBEDDED_ROUTE, ROUTE } from '@esfaenza/core/domain';
|
|
16
|
+
import { MENU_LOCALIZATION, MENU, CategoriesWithModules, NAVBAR_EXTENSIONS, LOGIN_URL_LEGACY, REDIRECT_MAP, EMBEDDED_ROUTE, ROUTE } from '@esfaenza/core/domain';
|
|
17
17
|
import { SlimScroll, ComponentHostDirective, EsModalDirective, Draggable, DirectivesModule } from '@esfaenza/core/directives';
|
|
18
18
|
import { firstValueFrom, ReplaySubject, interval, startWith, takeUntil, takeWhile } from 'rxjs';
|
|
19
19
|
import * as i5 from '@esfaenza/access-control';
|
|
@@ -517,7 +517,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
517
517
|
const GET_Jace_GetActiveJaceModules = "/api/Jace/GetActiveJaceModules";
|
|
518
518
|
const GET_Cache_ClearAllCaches = "/api/Cache/ClearAllCaches";
|
|
519
519
|
class Navbar extends ReactiveComponent {
|
|
520
|
-
constructor(prefsService, cacheService, globalSearchService, MessageDef, notifications, msgExts, lc, http, cdr, _state, sr, router, cjrService, extensionComponents) {
|
|
520
|
+
constructor(prefsService, cacheService, globalSearchService, MessageDef, notifications, msgExts, lc, http, cdr, _state, sr, router, cjrService, extensionComponents, loginUrlLegacy) {
|
|
521
521
|
super();
|
|
522
522
|
this.prefsService = prefsService;
|
|
523
523
|
this.cacheService = cacheService;
|
|
@@ -533,6 +533,7 @@ class Navbar extends ReactiveComponent {
|
|
|
533
533
|
this.router = router;
|
|
534
534
|
this.cjrService = cjrService;
|
|
535
535
|
this.extensionComponents = extensionComponents;
|
|
536
|
+
this.loginUrlLegacy = loginUrlLegacy;
|
|
536
537
|
this.applicationVersion = myconfig.AppData.ComponentVersion;
|
|
537
538
|
this.applicationEnvironment = myconfig.AppData.ComponentEnvironment;
|
|
538
539
|
this.isMenuCollapsed = false;
|
|
@@ -606,13 +607,19 @@ class Navbar extends ReactiveComponent {
|
|
|
606
607
|
this._state.notifyDataChanged("menu.isCollapsed", this.isMenuCollapsed);
|
|
607
608
|
}
|
|
608
609
|
logout() {
|
|
609
|
-
|
|
610
|
+
if (this.loginUrlLegacy)
|
|
611
|
+
window.location.href = `${myconfig.AuthUrl}/logout?client=${myconfig.Client}`;
|
|
612
|
+
else
|
|
613
|
+
window.location.href = `${myconfig.AuthUrl}/#/logout;client=${myconfig.Client}`;
|
|
610
614
|
}
|
|
611
615
|
changeModule() {
|
|
612
616
|
window.location.href = myconfig.JaceDashboardUrl;
|
|
613
617
|
}
|
|
614
618
|
changeTenant() {
|
|
615
|
-
|
|
619
|
+
if (this.loginUrlLegacy)
|
|
620
|
+
window.location.href = `${myconfig.AuthUrl}/login/tenant?client=${myconfig.Client}`;
|
|
621
|
+
else
|
|
622
|
+
window.location.href = `${myconfig.AuthUrl}/#/login;client=${myconfig.Client}`;
|
|
616
623
|
}
|
|
617
624
|
clearUserPreferences() {
|
|
618
625
|
this.prefsService.clear().subscribe();
|
|
@@ -679,7 +686,7 @@ class Navbar extends ReactiveComponent {
|
|
|
679
686
|
});
|
|
680
687
|
}
|
|
681
688
|
}
|
|
682
|
-
Navbar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: Navbar, deps: [{ token: i1$3.PreferencesService }, { token: i1$3.CacheService }, { token: i1.GlobalSearchService }, { token: i3$1.BaseMessageService }, { token: i3$1.NotificationsService }, { token: i4.MessageService }, { token: i1$2.LocalizationService }, { token: i2$1.HTTPService }, { token: i0.ChangeDetectorRef }, { token: i1.AppState }, { token: i1.TokenService }, { token: i1$1.Router }, { token: i1.CompletedJobRedirectionService }, { token: NAVBAR_EXTENSIONS }], target: i0.ɵɵFactoryTarget.Component });
|
|
689
|
+
Navbar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: Navbar, deps: [{ token: i1$3.PreferencesService }, { token: i1$3.CacheService }, { token: i1.GlobalSearchService }, { token: i3$1.BaseMessageService }, { token: i3$1.NotificationsService }, { token: i4.MessageService }, { token: i1$2.LocalizationService }, { token: i2$1.HTTPService }, { token: i0.ChangeDetectorRef }, { token: i1.AppState }, { token: i1.TokenService }, { token: i1$1.Router }, { token: i1.CompletedJobRedirectionService }, { token: NAVBAR_EXTENSIONS }, { token: LOGIN_URL_LEGACY }], target: i0.ɵɵFactoryTarget.Component });
|
|
683
690
|
Navbar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: Navbar, isStandalone: true, selector: "navbar", viewQueries: [{ propertyName: "navbar", first: true, predicate: ["navbar"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<nav #navbar class=\"nav az-navbar fixed-top\">\r\n <!-- Logo -->\r\n <a class=\"navbar-brand\" routerLink=\"/pages/dashboard\">\r\n <img src=\"../assets/img/logo/logo.png\" class=\"d-md-block d-none\" style=\"margin-top: 10px; margin-bottom: -10px;\">\r\n <div class=\"app-fe-v d-md-block d-none\">{{ applicationVersion }}</div>\r\n\r\n <img src=\"../assets/img/logo/logo_sm.png\" class=\"d-md-none\" style=\"margin-top: 10px; margin-bottom: -10px;\">\r\n <div class=\"app-fe-sm-v d-md-none\">{{ applicationVersion }}</div>\r\n </a>\r\n\r\n <ul class=\"nav navbar-nav navbar-fillable\" style=\"display: flex;\">\r\n <!-- Collapse men\u00F9 a sinistra -->\r\n <li style=\"display: flex;\">\r\n <a (click)=\"toggleMenu()\" style=\"color: white; font-size: 20px; align-self: center;\" class=\"fa fa-navicon\"></a>\r\n </li>\r\n\r\n <!-- Search -->\r\n <li style=\"display: flex;\">\r\n <form class=\"app-search\" style=\"align-self: center;\" role=\"search\" (ngSubmit)=\"searchRequest()\">\r\n <input type=\"text\" placeholder=\"Search...\" [(ngModel)]=\"searchTerm\" (ngModelChange)=\"searchModelChanged()\" [ngModelOptions]=\"{standalone : true}\" class=\"form-control\" autocomplete=\"off\">\r\n <a><i class=\"ion-ios-search-strong\"></i></a>\r\n <button hidden></button>\r\n </form>\r\n </li>\r\n\r\n <ul class=\"nav\" style=\"margin-left: auto; padding-top: 5px; padding-right: 10px;\">\r\n\r\n <!--Dropdown job in esecuzione-->\r\n <div class=\"user-menu app-no-selection app-margin-right-10\" style=\"display: flex;\" dropdown container=\"body\" placement=\"bottom right\">\r\n <a [class.fa-spin]=\"_state.jobsInProgress > 0\" class=\"fa fa-cog dropdown-toggle app-pointer\" style=\"color: white; font-size: 20px; align-self: center;\" dropdownToggle></a>\r\n <ul *dropdownMenu class=\"nav-jobs-menu\" role=\"menu\">\r\n <div class=\"nav-jobs-menu-header\">\r\n <span>{{'Job Applicativi' | localize : lc}}</span>\r\n <span class=\"pull-right m-t-min-2\"><mat-slide-toggle [(ngModel)]=\"_state.notifyOnCompletedJobs\" (click)=\"clearMessages(); $event.stopPropagation();\"></mat-slide-toggle></span>\r\n <span class=\"pull-right app-margin-right-5\">{{'Notifiche' | localize : lc}}:</span>\r\n </div>\r\n <div class=\"nav-jobs-menu-list\">\r\n <div *ngIf=\"_state.allJobs.length == 0\" class=\"nav-jobs-menu-list-empty\">\r\n <div>{{\"Al momento non c'\u00E8 nulla in esecuzione\" | localize : lc}}</div>\r\n </div>\r\n <div *ngFor=\"let job of _state.allJobs; let last = last\" [class.app-margin-bottom-5]=\"!last\">\r\n <span class=\"nav-jobs-menu-list-description\">\r\n <span *ngIf=\"!job.completed\" title=\"{{job.description}}\">{{job.smalldescription}}</span>\r\n <span *ngIf=\"job.completed\" title=\"{{job.description}}\" class=\"app-link app-no-selection app-inline app-pointer\" (click)=\"completedJobClicked(job); $event.stopPropagation();\">{{job.smalldescription}}</span>\r\n <strong class=\"pull-right\" *ngIf=\"!job.completed\">{{job.percentage}}%</strong>\r\n <strong class=\"pull-right\" *ngIf=\"job.completed\">{{ 'Completed' | localize : lc }}</strong>\r\n </span>\r\n <div class=\"progress progress-sm\">\r\n <progressbar *ngIf=\"!job.completed\" [max]=\"100\" [value]=\"job.percentage\" [striped]=\"true\" [animate]=\"true\"></progressbar>\r\n <progressbar *ngIf=\"job.completed\" type=\"success\" [max]=\"100\" [value]=\"100\" [striped]=\"false\" [animate]=\"false\"></progressbar>\r\n </div>\r\n </div>\r\n </div>\r\n </ul>\r\n </div>\r\n\r\n <!--Dropdown moduli-->\r\n <div class=\"user-menu app-no-selection app-margin-right-10\" style=\"display: flex;\" dropdown container=\"body\" placement=\"bottom right\">\r\n <a class=\"fa fa-th dropdown-toggle app-pointer\" style=\"color: white !important; font-size: 20px; align-self: center;\" dropdownToggle></a>\r\n <ul *dropdownMenu class=\"module-board-menu container\" role=\"menu\">\r\n <div class=\"app-relative\"><jace-modules-board [Modules]=\"Modules\"></jace-modules-board></div>\r\n </ul>\r\n </div>\r\n\r\n <!-- Punti di estensione per Calendar, Chatroom e chi pi\u00F9 ne ha pi\u00F9 ne metta... -->\r\n <div class=\"user-menu app-no-selection app-margin-right-10\" *ngFor=\"let comp of extensionComponents\">\r\n <ng-template [componentHost]=\"comp\"></ng-template>\r\n </div>\r\n\r\n <!--Dropdown User Menu-->\r\n <div class=\"user-menu app-no-selection\" dropdown container=\"body\" placement=\"bottom right\" style=\"height:45px; padding-right: 10px;\">\r\n <a class=\"dropdown-toggle user-link app-pointer\" dropdownToggle>\r\n <div class=\"pull-left app-margin-right-10 app-relative\">\r\n <ng-container *ngTemplateOutlet=\"userIcon;\"></ng-container>\r\n </div>\r\n <div class=\"app-white-text pull-right d-none d-sm-block\">\r\n <ng-container *ngTemplateOutlet=\"debugInfos\"></ng-container>\r\n </div>\r\n <div class=\"clearfix\"></div>\r\n </a>\r\n\r\n <ul *dropdownMenu class=\"dropdown-menu dropdown-menu-right-user app-no-padding\" role=\"menu\">\r\n <li class=\"user-info\">\r\n <div class=\"app-relative\">\r\n <ng-container *ngTemplateOutlet=\"userIcon; context: { $implicit: {right: 62} }\"></ng-container>\r\n </div>\r\n <div class=\"app-white-text app-margin-top-10 app-margin-bottom-10\">\r\n <ng-container *ngTemplateOutlet=\"debugInfos\"></ng-container>\r\n </div>\r\n </li>\r\n <a class=\"dropdown-item app-pointer\" *ngIf=\"lc.Locale == 'en-US'\" (click)=\"lc.changeLocale('it-IT')\"><i class=\"fa fa-globe\"> </i>Switch to Italian Site</a>\r\n <a class=\"dropdown-item app-pointer\" *ngIf=\"lc.Locale == 'it-IT'\" (click)=\"lc.changeLocale('en-US')\"><i class=\"fa fa-globe\"> </i>Passa al Sito in Inglese</a>\r\n <a class=\"dropdown-item app-pointer\" (click)=\"changeModule()\"><i class=\"fa fa-th\"> </i>{{'Cambia Modulo' | localize : lc}}</a>\r\n <a class=\"dropdown-item app-pointer\" (click)=\"changeTenant()\"><i class=\"fa fa-building\"> </i>{{'Cambia Tenant' | localize : lc}}</a>\r\n <a class=\"dropdown-item app-pointer\" (click)=\"clearUserPreferences()\"><i class=\"fa fa-user-times\"> </i>{{'Ripulisci le Preferenze Utente' | localize : lc}}</a>\r\n <a class=\"dropdown-item app-pointer\" (click)=\"clearAll()\"><i class=\"fa fa-recycle \"> </i>{{'Ripulisci la Cache' | localize : lc}}</a>\r\n <div class=\"dropdown-divider\"></div>\r\n <a class=\"dropdown-item app-pointer\" (click)=\"logout()\"><i class=\"fa fa-power-off\"> </i>Log out</a>\r\n </ul>\r\n </div>\r\n </ul>\r\n </ul>\r\n</nav>\r\n\r\n<!-- Template per l'icona dell'utente -->\r\n<ng-template #userIcon let-context>\r\n <img src='../assets/img/users/user.jpg' alt=\"user-img\" class=\"img-circle user-img\">\r\n <img src='../assets/img/events/christmas.png' alt=\"user-img\" class=\"img-circle user-img app-absolute app-right-0\" [style.right.px]=\"context?.right || undefined\" *ngIf=\"_state.christmasTime\">\r\n <img src='../assets/img/events/halloween.png' alt=\"user-img\" class=\"img-circle user-img app-absolute app-right-0\" [style.right.px]=\"context?.right || undefined\" *ngIf=\"_state.halloweenTime\">\r\n</ng-template>\r\n\r\n<!-- Template per le informaizoni di debug: Ambiente, ruoli, permessi ecc -->\r\n<ng-template #debugInfos>\r\n <div>{{CurrentIdentity?.FullName}} - ({{CurrentIdentity?.TenantName}})</div>\r\n <div class=\"text-sm-center\">\r\n <ng-container *ngIf=\"applicationEnvironment == 2\">{{'Ambiente di Sviluppo' | localize : lc}}</ng-container>\r\n <ng-container *ngIf=\"applicationEnvironment == 5\">{{'Ambiente di Staging' | localize : lc}}</ng-container>\r\n <ng-container *ngIf=\"applicationEnvironment == 6\">{{'Ambiente di Staging A' | localize : lc}}</ng-container>\r\n <ng-container *ngIf=\"applicationEnvironment == 1\">{{'Ambiente di Produzione' | localize : lc}}</ng-container>\r\n </div>\r\n <div [hidden]=\"true\">\r\n <div>Permissions:</div>\r\n <div *ngFor=\"let p of CurrentIdentity.Permissions\">{{p}}</div>\r\n <div>Roles:</div>\r\n <div *ngFor=\"let r of CurrentIdentity.Roles\">{{r}}</div>\r\n </div>\r\n</ng-template>\r\n\r\n<!-- Overlay per la ricerca globale -->\r\n<ng-container *ngIf=\"searchingTerm || searchResult\">\r\n <div class=\"app-absolute app-search-background\">\r\n <div class=\"app-search-result-box\">\r\n <ng-container *ngIf=\"searchingTerm\">\r\n <div class=\"app-search-card\"><i class=\"fa fa-spinner fa-spin\"></i>Sto effettuando la ricerca...</div>\r\n </ng-container>\r\n <ng-container *ngIf=\"searchResult && !searchingTerm\">\r\n <div class=\"row\" style=\"height: 100%;\">\r\n <!-- Spazio a sinistra -->\r\n <div class=\"col-md-1\"></div>\r\n <!-- Blocco con le categorie dei risultati -->\r\n <div class=\"col-md-3\">\r\n <div class=\"app-search-card\">\r\n <div class=\"app-relative\"><a class=\"fa fa-times text-danger app-absolute app-right-0 app-fs-20 app-pointer\" (click)=\"closeSearch();\"></a></div>\r\n <h4>Categorie di Ricerca</h4>\r\n <div class=\"app-pointer app-link\" [class.app-bold]=\"!SelectedResult && !ShowSingleTable\">\r\n <span (click)=\"FilterSearchResults()\">{{SelectedResult ? '-' : '>'}} Mostra Tutto</span>\r\n </div>\r\n <div *ngFor=\"let item of searchResult.results\" class=\"app-pointer app-link\" [class.app-bold]=\"SelectedResult?.description == item.description\">\r\n <span (click)=\"FilterSearchResults(item)\">{{SelectedResult?.description == item.description ? '>' : '-'}} Mostra {{item.description}} ({{item.items?.length}})</span>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- Dettaglio risultati -->\r\n <div class=\"col-md-7\" style=\"overflow: auto; height: 100%;\">\r\n <ng-container *ngIf=\"!SelectedResult && !ShowSingleTable\">\r\n <div *ngFor=\"let res of searchResult.results; let i = index;\" class=\"app-search-card\" [style.margin-bottom.px]=\"i == (searchResult.results?.length - 1) ? 2 : 10\">\r\n <h4>{{res.description}}</h4>\r\n <es-table [(ngModel)]=\"res.items\" [DynamicRowColumnsDefinition]=\"res.est_cols\" [ArraymodeItemsPerPage]=\"10\"></es-table>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"SelectedResult && ShowSingleTable\">\r\n <div class=\"app-search-card\">\r\n <h4>{{SelectedResult.description}}</h4>\r\n <es-table [(ngModel)]=\"SelectedResult.items\" [DynamicRowColumnsDefinition]=\"SelectedResult.est_cols\" [ArraymodeItemsPerPage]=\"10\"></es-table>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <!-- Spazio a destra -->\r\n <div class=\"col-md-1\"></div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</ng-container>", styles: [".nav-jobs-icon{position:absolute;left:-20px;margin:0;padding:0;top:10px;color:#fff!important;font-size:20px}.nav-jobs-menu{width:350px;height:250px;background:white;margin:2px 0 0;padding:5px;border:1px solid #ccc}.nav-jobs-menu-header{padding:8px;font-size:14px;background-color:#242d3a;margin-top:-5px;margin-left:-5px;margin-right:-5px}.nav-jobs-menu-header span{color:#fffc}.nav-jobs-menu-list{position:relative;overflow:auto;width:auto;height:203px;padding:5px}.nav-jobs-menu-list-description{font-size:13px;color:#666}.nav-jobs-menu-list-empty{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:15px;text-align:center}.nav.az-navbar{height:60px;align-items:center;background-color:#242d3a}.nav.az-navbar .navbar-brand{width:205px;padding-top:0;font-size:0;margin-left:10px}.navbar-nav{flex-direction:row}#lines{border-bottom:7px double;border-top:2px solid;border-color:#ffffffe6;content:\"\";height:3px;width:20px;box-sizing:content-box;cursor:pointer}#lines:hover{opacity:.8}.app-search{position:relative;margin-left:20px}.app-search a{position:absolute;top:3px;right:14px;font-size:16px;color:#ffffff4d}.app-search .form-control{border:1px solid rgba(255,255,255,.1);font-size:11px;letter-spacing:.03em;height:30px;color:#fff;padding:7px 40px 7px 20px;background:rgba(255,255,255,.05);box-shadow:none;border-radius:30px;width:190px}.app-search input{border:1px solid rgba(255,255,255,.1);font-size:12px;letter-spacing:.03em;height:30px;color:#fff;padding:7px 40px 7px 20px;background:rgba(255,255,255,.05);box-shadow:none;border-radius:30px;width:240px}.completer-selected-row{background-color:#0275d8!important;color:#fff!important;width:100%!important}.completer-row{width:100%!important;color:#fff!important}.completer-dropdown{margin-top:2px!important;background-color:#344154f7!important;color:#fff;border-color:#111!important;box-shadow:0 6px 12px #0003}.search-results{left:-85px;top:-2px;z-index:1050;color:#fff;background-color:#344154f7}.search-results .btn-sm{padding:.15rem .25rem;font-size:.5rem}.search-results:before{content:\"\";border:0px}.search-results a{color:#242d3a}.search-results a:hover{color:#fff;background-color:#0275d8;cursor:pointer}.search-results a i{margin-right:8px}.right-section{position:absolute;right:10px;top:10px}.user-menu{font-size:14px}.user-menu .dropdown-toggle:after{display:none}.user-menu .dropdown-menu{right:0;top:auto!important;left:auto!important;margin-top:10px;padding-top:0;overflow:hidden;border-radius:0;font-size:14px;box-shadow:0 6px 12px #0003;transform:none!important}.user-menu .dropdown-menu a{color:#242d3a}.user-menu .dropdown-menu a:hover{color:#fff;background-color:#242d3a}.user-menu .dropdown-menu a i{margin-right:8px}.user-link{margin-right:6px}.user-link span{color:#fff;margin-left:7px;letter-spacing:.02em}.user-link img{width:40px;border-radius:50%}.user-link:hover,.user-link:focus{text-decoration:none}.user-info{background-color:#242d3a;padding:8px;text-align:center;width:240px;margin-bottom:5px}.user-info img{width:100px;margin-top:5px;border-radius:50%}.user-info p{color:#ebebeb;margin-top:10px}.user-info small{display:block}@media (max-width: 767px){.nav.az-navbar .navbar-brand{width:auto}}.navbar-search{color:#ffffff80!important}.navbar-help{font-size:20px!important;color:#ffffff80!important;border:1px solid rgba(255,255,255,.1);margin-left:5px!important;padding:5px 10px 2px 8px!important;border-radius:50%;background-color:#ffffff0d;cursor:pointer;width:31px;height:31px}.navbar-fill{margin-top:-5px;margin-bottom:-5px;margin-left:10px;width:calc(100% - 530px)}.navbar-fillable{width:calc(100% - 231px)}.navbar-floating-label{position:absolute;top:-9px;left:-5px;background:#242D3A;padding-left:5px;padding-right:5px;color:#ffffffe6!important}.collapse-menu-link{color:#fff!important;font-size:20px;padding-top:5px;cursor:pointer}.module-nav-menu-link{color:#fff!important;font-size:20px;padding-top:10px;padding-right:5px;cursor:pointer}.module-board-menu{position:relative;top:1px;background-color:#1f1f1f;padding:15px}.overlay{height:100%;width:100%;display:none;padding-left:10%;padding-right:10%;position:fixed;z-index:999999;left:0;top:0;background-color:#000;background-color:#000000e6;overflow-x:hidden;transition:.5s}.overlay-content{position:relative;top:25%;width:100%;text-align:center;margin-top:30px}.overlay p{padding:8px;text-decoration:none;font-size:36px;color:#818181;display:block;transition:.3s}.overlay a:hover,.overlay a:focus{color:#f1f1f1}.overlay .closebtn{position:absolute;top:20px;right:45px;font-size:60px}@media screen and (max-height: 450px){.overlay a{font-size:20px}.overlay .closebtn{font-size:40px;top:15px;right:35px}}\n"], dependencies: [{ kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i8.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i8.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: BsDropdownModule }, { kind: "directive", type: i9.BsDropdownMenuDirective, selector: "[bsDropdownMenu],[dropdownMenu]", exportAs: ["bs-dropdown-menu"] }, { kind: "directive", type: i9.BsDropdownToggleDirective, selector: "[bsDropdownToggle],[dropdownToggle]", exportAs: ["bs-dropdown-toggle"] }, { kind: "directive", type: i9.BsDropdownDirective, selector: "[bsDropdown], [dropdown]", inputs: ["placement", "triggers", "container", "dropup", "autoClose", "isAnimated", "insideClick", "isDisabled", "isOpen"], outputs: ["isOpenChange", "onShown", "onHidden"], exportAs: ["bs-dropdown"] }, { kind: "ngmodule", type: MatSlideToggleModule }, { kind: "component", type: i10.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: ProgressbarModule }, { kind: "component", type: i11.ProgressbarComponent, selector: "progressbar", inputs: ["max", "animate", "striped", "type", "value"] }, { kind: "component", type: JaceModulesBoardComponent, selector: "jace-modules-board", inputs: ["Modules"] }, { kind: "directive", type: ComponentHostDirective, selector: "[componentHost]", inputs: ["componentHost", "Inputs"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: EsTableModule }, { kind: "component", type: i12.EsTableComponent, selector: "es-table", inputs: ["EsTableTemplate", "CornerMenuOptions", "ColumnsResizable", "ColumnsPinnable", "AutoUpdate", "Height", "EmptySpaceBackgroundColor", "EsTableHandledSearch", "MaxHeight", "ContainerClass", "XLSXExport", "CSVExport", "AllSearch", "HighCellDensity", "Selection", "ShowLoadingOnBootstrap", "Removal", "RemovalCondition", "Export", "ShiftClick", "CountLabel", "HidePaging", "HidePagingCount", "HidePagingButtons", "ContextMenu", "ExportFileName", "TableClass", "ExportFunction", "ExportOnlyVisibleColumns", "HasHeaderGroup", "HasSecondaryHeaderGroup", "HeaderHidden", "BodyHidden", "SelectionDisabled", "SingleSelection", "RowClassAssigner", "OrderByColumn", "MultipleOrderingDirectives", "HiddenColumns", "ColumnsOrdering", "SearchView", "SelectAll", "UseArrayModePaging", "DynamicRowColumnsDefinition", "DynamicOperations", "Hierarchy", "ParentKey", "OwnKey", "StartsExpanded", "SavePreferences", "DefaultAlignment", "PagingStyle", "RowGroupingPagingStyle", "ItemSourceProperty", "UseSelectionCache", "ShowItemGroupsColumns", "Editable", "RangeSelection", "SearchThrottle", "ArraymodeItemsPerPage"], outputs: ["onOrderChanged", "onSearchRequest", "onSelectionChanged", "onRemoval", "onAbortRemoval", "onModelChange", "onOpenContextMenu", "onCornerAction", "onDynamicOperation"] }, { kind: "ngmodule", type: LocalizationModule }, { kind: "pipe", type: i1$2.LocalizePipe, name: "localize" }], viewProviders: [{ provide: LocalizationService, useClass: NavBarLoc }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
684
691
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: Navbar, decorators: [{
|
|
685
692
|
type: Component,
|
|
@@ -688,6 +695,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
688
695
|
return [{ type: i1$3.PreferencesService }, { type: i1$3.CacheService }, { type: i1.GlobalSearchService }, { type: i3$1.BaseMessageService }, { type: i3$1.NotificationsService }, { type: i4.MessageService }, { type: i1$2.LocalizationService }, { type: i2$1.HTTPService }, { type: i0.ChangeDetectorRef }, { type: i1.AppState }, { type: i1.TokenService }, { type: i1$1.Router }, { type: i1.CompletedJobRedirectionService }, { type: undefined, decorators: [{
|
|
689
696
|
type: Inject,
|
|
690
697
|
args: [NAVBAR_EXTENSIONS]
|
|
698
|
+
}] }, { type: undefined, decorators: [{
|
|
699
|
+
type: Inject,
|
|
700
|
+
args: [LOGIN_URL_LEGACY]
|
|
691
701
|
}] }];
|
|
692
702
|
}, propDecorators: { navbar: [{
|
|
693
703
|
type: ViewChild,
|
|
@@ -768,6 +778,7 @@ class ExternalPagesComponent {
|
|
|
768
778
|
return;
|
|
769
779
|
}
|
|
770
780
|
// Altrimenti devo effettuare il login
|
|
781
|
+
// Non è utilizzata, porcoddinci
|
|
771
782
|
let LoginDTO = { tenant: "FX", username: this.Username, password: this.Password, client_id: "jacedev" };
|
|
772
783
|
this.http.post(`${myconfig.AuthUrl}/api/login/dologin`, LoginDTO).subscribe(t => {
|
|
773
784
|
});
|
|
@@ -782,19 +793,31 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
782
793
|
|
|
783
794
|
// Angular
|
|
784
795
|
class JaceLoginComponent {
|
|
796
|
+
constructor(loginUrlLegacy) {
|
|
797
|
+
this.loginUrlLegacy = loginUrlLegacy;
|
|
798
|
+
}
|
|
785
799
|
ngOnInit() {
|
|
786
|
-
if (myconfig.AuthUrl)
|
|
787
|
-
|
|
800
|
+
if (myconfig.AuthUrl) {
|
|
801
|
+
if (this.loginUrlLegacy)
|
|
802
|
+
window.location.href = `${myconfig.AuthUrl}/login/form?client=${myconfig.Client}`;
|
|
803
|
+
else
|
|
804
|
+
window.location.href = `${myconfig.AuthUrl}/#/login;client=${myconfig.Client}`;
|
|
805
|
+
}
|
|
788
806
|
else
|
|
789
807
|
console.error("myconfig.AuthUrl is not provided");
|
|
790
808
|
}
|
|
791
809
|
}
|
|
792
|
-
JaceLoginComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: JaceLoginComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
810
|
+
JaceLoginComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: JaceLoginComponent, deps: [{ token: LOGIN_URL_LEGACY }], target: i0.ɵɵFactoryTarget.Component });
|
|
793
811
|
JaceLoginComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: JaceLoginComponent, isStandalone: true, selector: "login", ngImport: i0, template: "<div class=\"login-container\">\r\n <div class=\"redirecting-div\">\r\n <div class=\"redirecting-message\"><h1>Redirecting to login...</h1></div>\r\n <div class=\"signal\"></div>\r\n </div>\r\n</div>\r\n", styles: [".redirecting-div{background:#3d3d3d!important;display:flex;align-items:center;justify-content:center;min-height:100vh}.redirecting-div h1{color:#fbc925;font-family:Passion One}.redirecting-message{align-self:center}\n"], encapsulation: i0.ViewEncapsulation.None });
|
|
794
812
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: JaceLoginComponent, decorators: [{
|
|
795
813
|
type: Component,
|
|
796
814
|
args: [{ selector: "login", encapsulation: ViewEncapsulation.None, standalone: true, template: "<div class=\"login-container\">\r\n <div class=\"redirecting-div\">\r\n <div class=\"redirecting-message\"><h1>Redirecting to login...</h1></div>\r\n <div class=\"signal\"></div>\r\n </div>\r\n</div>\r\n", styles: [".redirecting-div{background:#3d3d3d!important;display:flex;align-items:center;justify-content:center;min-height:100vh}.redirecting-div h1{color:#fbc925;font-family:Passion One}.redirecting-message{align-self:center}\n"] }]
|
|
797
|
-
}]
|
|
815
|
+
}], ctorParameters: function () {
|
|
816
|
+
return [{ type: undefined, decorators: [{
|
|
817
|
+
type: Inject,
|
|
818
|
+
args: [LOGIN_URL_LEGACY]
|
|
819
|
+
}] }];
|
|
820
|
+
} });
|
|
798
821
|
|
|
799
822
|
// Angular
|
|
800
823
|
// TODO: loc.ts
|