@tiba-spark/client-shared-lib 25.3.0-187 → 25.3.0-193
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/esm2022/libraries/enums/data-qa-attribute.enum.mjs +5 -1
- package/esm2022/libraries/enums/icon.enum.mjs +5 -3
- package/esm2022/libraries/enums/localization.enum.mjs +14 -1
- package/esm2022/libraries/service-proxy/cloud-service-proxies.mjs +772 -14
- package/esm2022/libraries/services/route.service.mjs +7 -1
- package/fesm2022/tiba-spark-client-shared-lib.mjs +796 -2
- package/fesm2022/tiba-spark-client-shared-lib.mjs.map +1 -1
- package/libraries/enums/data-qa-attribute.enum.d.ts +5 -1
- package/libraries/enums/data-qa-attribute.enum.d.ts.map +1 -1
- package/libraries/enums/icon.enum.d.ts +4 -2
- package/libraries/enums/icon.enum.d.ts.map +1 -1
- package/libraries/enums/localization.enum.d.ts +13 -0
- package/libraries/enums/localization.enum.d.ts.map +1 -1
- package/libraries/service-proxy/cloud-service-proxies.d.ts +244 -0
- package/libraries/service-proxy/cloud-service-proxies.d.ts.map +1 -1
- package/libraries/services/route.service.d.ts +1 -0
- package/libraries/services/route.service.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/libraries/theme/assets/icons/white-api-traffic.svg +11 -0
|
@@ -79,6 +79,12 @@ export class RouteService extends BaseComponent {
|
|
|
79
79
|
relativeTo
|
|
80
80
|
});
|
|
81
81
|
}
|
|
82
|
+
navigateToBackofficeSideBarParker(id, relativeTo) {
|
|
83
|
+
this.navigate({
|
|
84
|
+
sidebar: [id.toString()],
|
|
85
|
+
relativeTo
|
|
86
|
+
});
|
|
87
|
+
}
|
|
82
88
|
navigateToSideBarSubTicketParker(searchType, ticketId, subTicketId, relativeTo) {
|
|
83
89
|
this.navigate({
|
|
84
90
|
sidebar: [type, searchType.toString(), parkers, ticketId.toString(), subTicketId.toString()],
|
|
@@ -188,4 +194,4 @@ export class RouteService extends BaseComponent {
|
|
|
188
194
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RouteService, decorators: [{
|
|
189
195
|
type: Injectable
|
|
190
196
|
}], ctorParameters: () => [{ type: i1.Router }, { type: i2.AppConfigService }, { type: i3.Store }] });
|
|
191
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC1zaGFyZWQtbGliL3NyYy9saWJyYXJpZXMvc2VydmljZXMvcm91dGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBa0IsYUFBYSxFQUFFLFVBQVUsRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBRXBGLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFNUIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbkUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRWpELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUU3RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7QUF3QnpELE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQztBQUMxQixNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUM7QUFDMUIsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDO0FBQ3BCLE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQztBQUMxQixNQUFNLFNBQVMsR0FBRyxXQUFXLENBQUM7QUFDOUIsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDO0FBR3hCLE1BQU0sT0FBTyxZQUFhLFNBQVEsYUFBYTtJQUU3QyxZQUFvQixNQUFjLEVBQVUsU0FBMkIsRUFBVSxLQUFZO1FBQzNGLEtBQUssRUFBRSxDQUFDO1FBRFUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtR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VUFBVSxDQUFDLENBQUMsRUFBRSxzRUFBc0U7UUFDNUgsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDLENBQUMseURBQXlEO0lBQ3RGLENBQUM7SUFFRCxzQkFBc0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELGVBQWUsQ0FBQyxhQUF1QjtRQUNyQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxnQkFBa0M7UUFDcEQsTUFBTSxVQUFVLEdBQWUsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3BELE1BQU0sS0FBSyxHQUFHLENBQUMsR0FBRyxVQUFVLENBQUMsVUFBVSxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3RILElBQUksZ0JBQWdCLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDOUIsS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN4QyxDQUFDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOytHQXpMVSxZQUFZO21IQUFaLFlBQVk7OzRGQUFaLFlBQVk7a0JBRHhCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgTmF2aWdhdGlvbkVuZCwgUmVzb2x2ZUVuZCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgZnJvbSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMvaW50ZXJuYWwvT2JzZXJ2YWJsZSc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmlsdGVyLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cy9iYXNlL2Jhc2UuY29tcG9uZW50JztcbmltcG9ydCB7IFNVUEVSX1BBUktfUk9VVEVfS0VZIH0gZnJvbSAnLi4vY29uc3RhbnRzL2tleXMtY29uc3RhbnRzJztcbmltcG9ydCB7IEFwcFR5cGUgfSBmcm9tICcuLi9lbnVtcy9hcHAtdHlwZS5lbnVtJztcbmltcG9ydCB7IFRlbmFudEluZm8gfSBmcm9tICcuLi9tb2R1bGVzL2F1dGgvbW9kZWwvdGVuYW50LWluZm8uaW50ZXJmYWNlJztcbmltcG9ydCB7IFNlc3Npb25TdGF0ZSB9IGZyb20gJy4uL21vZHVsZXMvYXV0aC9zZXNzaW9uLnN0YXRlJztcbmltcG9ydCB7IFBhcmtlclRpY2tldFR5cGUgfSBmcm9tICcuLi9zZXJ2aWNlLXByb3h5L2VkZ2Utc2VydmljZS1wcm94aWVzJztcbmltcG9ydCB7IGdldE5hdmlnYXRpb25Sb3V0ZSB9IGZyb20gJy4uL3V0aWxzL3JvdXRlLnV0aWwnO1xuaW1wb3J0IHsgQXBwQ29uZmlnU2VydmljZSB9IGZyb20gJy4vYXBwLWNvbmZpZy5zZXJ2aWNlJztcblxuaW50ZXJmYWNlIE5hdmlnYXRlUGFyYW1zIHtcbiAgcHJpbWFyeT86IHN0cmluZ1tdO1xuICBzaWRlYmFyPzogc3RyaW5nW107XG4gIHJlbGF0aXZlVG86IEFjdGl2YXRlZFJvdXRlO1xuICByZXBsYWNlVXJsPzogYm9vbGVhbjtcbn1cblxuaW50ZXJmYWNlIFJvdXRlckxpbmtQYXJhbXMge1xuICB0aWJhS2V5OiBudW1iZXI7XG4gIHBhcmtJZDogbnVtYmVyO1xuICBtdWx0aVBhcmtQYXJlbnRJZD86IG51bWJlcjtcbiAgZGV2aWNlSWQ/OiBudW1iZXI7XG4gIHNpZGViYXI/OiB7XG4gICAgcGFya2VyVGlja2V0VHlwZTogUGFya2VyVGlja2V0VHlwZTtcbiAgICBzZWFyY2hWYWx1ZT86IHN0cmluZztcbiAgICBpc0x1Y2t5TFBSU2VhcmNoPzogYm9vbGVhbjtcbiAgICB0aWNrZXRJZDogbnVtYmVyO1xuICB9O1xuICBkZWZhdWx0U2lkZWJhcj86IGJvb2xlYW47XG59XG5cbmNvbnN0IHNpZGViYXIgPSAnc2lkZWJhcic7XG5jb25zdCBwcmltYXJ5ID0gJ3ByaW1hcnknO1xuY29uc3QgdHlwZSA9ICd0eXBlJztcbmNvbnN0IHBhcmtlcnMgPSAncGFya2Vycyc7XG5jb25zdCBzZWFyY2hiYXIgPSAnc2VhcmNoYmFyJztcbmNvbnN0IHNlYXJjaCA9ICdzZWFyY2gnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUm91dGVTZXJ2aWNlIGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlciwgcHJpdmF0ZSBhcHBDb25maWc6IEFwcENvbmZpZ1NlcnZpY2UsIHByaXZhdGUgc3RvcmU6IFN0b3JlKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIGdldE5hdmlnYXRpb25Sb3V0ZShyb3V0ZVBhcnRzPzogc3RyaW5nW10pOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgdGVuYW50SW5mbzogVGVuYW50SW5mbyA9IHRoaXMuZ2V0VGVuYW50SW5mbygpO1xuICAgIHJldHVybiBnZXROYXZpZ2F0aW9uUm91dGUodGVuYW50SW5mbywgdGhpcy5hcHBDb25maWcuZ2V0Q29uZmlnKCkuYXBwVHlwZSwgcm91dGVQYXJ0cyk7XG4gIH1cblxuICBuYXZpZ2F0ZShwYXJhbXM6IE5hdmlnYXRlUGFyYW1zKTogdm9pZCB7XG4gICAgY29uc3QgcHJvcGVydGllcyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHBhcmFtcyk7XG4gICAgaWYgKHByb3BlcnRpZXMuZmluZChpID0+IGkgPT09IHByaW1hcnkpICYmIHByb3BlcnRpZXMuZmluZChpID0+IGkgPT09IHNpZGViYXIpKSB7XG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbeyBvdXRsZXRzOiB7IHByaW1hcnk6IHBhcmFtcy5wcmltYXJ5LCBzaWRlYmFyOiBwYXJhbXMuc2lkZWJhciB9IH1dLFxuICAgICAgICB7IHJlbGF0aXZlVG86IHBhcmFtcy5yZWxhdGl2ZVRvLCByZXBsYWNlVXJsOiBwYXJhbXMucmVwbGFjZVVybCB8fCBmYWxzZSB9KTtcbiAgICB9IGVsc2UgaWYgKHByb3BlcnRpZXMuZmluZChpID0+IGkgPT09IHByaW1hcnkpKSB7XG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShwYXJhbXMucHJpbWFyeSxcbiAgICAgICAgeyByZWxhdGl2ZVRvOiBwYXJhbXMucmVsYXRpdmVUbywgcmVwbGFjZVVybDogcGFyYW1zLnJlcGxhY2VVcmwgfHwgZmFsc2UgfSk7XG4gICAgfSBlbHNlIGlmIChwcm9wZXJ0aWVzLmZpbmQoaSA9PiBpID09PSBzaWRlYmFyKSkge1xuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3sgb3V0bGV0czogeyBzaWRlYmFyOiBwYXJhbXMuc2lkZWJhciB9IH1dLFxuICAgICAgICB7IHJlbGF0aXZlVG86IHBhcmFtcy5yZWxhdGl2ZVRvLCByZXBsYWNlVXJsOiBwYXJhbXMucmVwbGFjZVVybCB8fCBmYWxzZSB9KTtcbiAgICB9XG4gIH1cblxuICBuYXZpZ2F0ZVRvUHJpbWFyeShwcmltYXJ5OiBzdHJpbmdbXSwgcmVsYXRpdmVUbzogQWN0aXZhdGVkUm91dGUpOiB2b2lkIHtcbiAgICB0aGlzLm5hdmlnYXRlKHtcbiAgICAgIHByaW1hcnk6IHRoaXMuZ2V0Um91dGVCeUFwcFR5cGUocHJpbWFyeSwgcmVsYXRpdmVUbyAhPT0gbnVsbCksXG4gICAgICByZWxhdGl2ZVRvXG4gICAgfSk7XG4gIH1cblxuICBuYXZpZ2F0ZVRvUHJpbWFyeVdpdGhvdXRTaWRlYmFyKHByaW1hcnk6IHN0cmluZ1tdLCByZWxhdGl2ZVRvOiBBY3RpdmF0ZWRSb3V0ZSk6IHZvaWQge1xuICAgIHRoaXMubmF2aWdhdGUoe1xuICAgICAgcHJpbWFyeTogdGhpcy5nZXRSb3V0ZUJ5QXBwVHlwZShwcmltYXJ5LCByZWxhdGl2ZVRvICE9PSBudWxsKSxcbiAgICAgIHNpZGViYXI6IG51bGwsXG4gICAgICByZWxhdGl2ZVRvXG4gICAgfSk7XG4gIH1cblxuICBuYXZpZ2F0ZVRvRGV2aWNlRGVmYXVsdFNpZGVCYXIocmVsYXRpdmVUbzogQWN0aXZhdGVkUm91dGUpOiB2b2lkIHtcbiAgICB0aGlzLm5hdmlnYXRlKHtcbiAgICAgIHNpZGViYXI6IFtzZWFyY2hiYXJdLFxuICAgICAgcmVsYXRpdmVUb1xuICAgIH0pO1xuICB9XG5cbiAgbmF2aWdhdGVUb1ByaW1hcnlEZXZpY2VEZWZhdWx0U2lkZUJhcihwcmltYXJ5OiBzdHJpbmdbXSwgcmVsYXRpdmVUbzogQWN0aXZhdGVkUm91dGUpOiB2b2lkIHtcbiAgICB0aGlzLm5hdmlnYXRlKHtcbiAgICAgIHByaW1hcnk6IHRoaXMuZ2V0Um91dGVCeUFwcFR5cGUocHJpbWFyeSwgcmVsYXRpdmVUbyAhPT0gbnVsbCksXG4gICAgICBzaWRlYmFyOiBbc2VhcmNoYmFyXSxcbiAgICAgIHJlbGF0aXZlVG9cbiAgICB9KTtcbiAgfVxuXG4gIG5hdmlnYXRlVG9TaWRlQmFyU2VhcmNoKHNlYXJjaFR5cGU6IFBhcmtlclRpY2tldFR5cGUsIHNlYXJjaFZhbHVlOiBzdHJpbmcsXG4gICAgaXNMdWNreUxQUlNlYXJjaDogYm9vbGVhbiwgcmVsYXRpdmVUbzogQWN0aXZhdGVkUm91dGUpOiB2b2lkIHtcbiAgICB0aGlzLm5hdmlnYXRlKHtcbiAgICAgIHNpZGViYXI6IFtzZWFyY2gsIHNlYXJjaFZhbHVlLCAoKyEhaXNMdWNreUxQUlNlYXJjaCkudG9TdHJpbmcoKSwgdHlwZSwgc2VhcmNoVHlwZS50b1N0cmluZygpXSxcbiAgICAgIHJlbGF0aXZlVG9cbiAgICB9KTtcbiAgfVxuXG4gIG5hdmlnYXRlVG9TaWRlQmFyUGFya2VyKHNlYXJjaFR5cGU6IFBhcmtlclRpY2tldFR5cGUsIHRpY2tldElkOiBudW1iZXIsIHJlbGF0aXZlVG86IEFjdGl2YXRlZFJvdXRlKTogdm9pZCB7XG4gICAgdGhpcy5uYXZpZ2F0ZSh7XG4gICAgICBzaWRlYmFyOiBbdHlwZSwgc2VhcmNoVHlwZS50b1N0cmluZygpLCBwYXJrZXJzLCB0aWNrZXRJZC50b1N0cmluZygpXSxcbiAgICAgIHJlbGF0aXZlVG9cbiAgICB9KTtcbiAgfVxuXG4gIG5hdmlnYXRlVG9TaWRlQmFyU3ViVGlja2V0UGFya2VyKHNlYXJjaFR5cGU6IFBhcmtlclRpY2tldFR5cGUsIHRpY2tldElkOiBudW1iZXIsIHN1YlRpY2tldElkOiBudW1iZXIsIHJlbGF0aXZlVG86IEFjdGl2YXRlZFJvdXRlKTogdm9pZCB7XG4gICAgdGhpcy5uYXZpZ2F0ZSh7XG4gICAgICBzaWRlYmFyOiBbdHlwZSwgc2VhcmNoVHlwZS50b1N0cmluZygpLCBwYXJrZXJzLCB0aWNrZXRJZC50b1N0cmluZygpLCBzdWJUaWNrZXRJZC50b1N0cmluZygpXSxcbiAgICAgIHJlbGF0aXZlVG9cbiAgICB9KTtcbiAgfVxuXG4gIG5hdmlnYXRlVG9TaWRlQmFyU2VhcmNoUGFya2VyKHNlYXJjaFR5cGU6IFBhcmtlclRpY2tldFR5cGUsIHNlYXJjaFZhbHVlOiBzdHJpbmcsIGlzTHVja3lMUFJTZWFyY2g6IGJvb2xlYW4sXG4gICAgdGlja2V0SWQ6IG51bWJlciwgcmVsYXRpdmVUbzogQWN0aXZhdGVkUm91dGUsIHJlcGxhY2VVcmw6IGJvb2xlYW4gPSBmYWxzZSk6IHZvaWQge1xuICAgIHRoaXMubmF2aWdhdGUoe1xuICAgICAgc2lkZWJhcjogW3NlYXJjaCwgc2VhcmNoVmFsdWUsICgrISFpc0x1Y2t5TFBSU2VhcmNoKS50b1N0cmluZygpLCB0eXBlLCBzZWFyY2hUeXBlLnRvU3RyaW5nKCksIHBhcmtlcnMsIHRpY2tldElkLnRvU3RyaW5nKCldLFxuICAgICAgcmVsYXRpdmVUbyxcbiAgICAgIHJlcGxhY2VVcmxcbiAgICB9KTtcbiAgfVxuXG4gIG5hdmlnYXRlVG9QcmltYXJ5U2lkZUJhclNlYXJjaChwcmltYXJ5OiBzdHJpbmdbXSwgc2VhcmNoVHlwZTogUGFya2VyVGlja2V0VHlwZSwgc2VhcmNoVmFsdWU6IHN0cmluZyxcbiAgICBpc0x1Y2t5TFBSU2VhcmNoOiBib29sZWFuLCByZWxhdGl2ZVRvOiBBY3RpdmF0ZWRSb3V0ZSk6IHZvaWQge1xuICAgIHRoaXMubmF2aWdhdGUoe1xuICAgICAgcHJpbWFyeTogdGhpcy5nZXRSb3V0ZUJ5QXBwVHlwZShwcmltYXJ5LCByZWxhdGl2ZVRvICE9PSBudWxsKSxcbiAgICAgIHNpZGViYXI6IFtzZWFyY2gsIHNlYXJjaFZhbHVlLCAoKyEhaXNMdWNreUxQUlNlYXJjaCkudG9TdHJpbmcoKSwgdHlwZSwgc2VhcmNoVHlwZS50b1N0cmluZygpXSxcbiAgICAgIHJlbGF0aXZlVG9cbiAgICB9KTtcbiAgfVxuXG4gIG5hdmlnYXRlVG9QcmltYXJ5U2lkZUJhclBhcmtlcihwcmltYXJ5OiBzdHJpbmdbXSwgc2VhcmNoVHlwZTogUGFya2VyVGlja2V0VHlwZSwgdGlja2V0SWQ6IG51bWJlcixcbiAgICByZWxhdGl2ZVRvOiBBY3RpdmF0ZWRSb3V0ZSk6IHZvaWQge1xuICAgIHRoaXMubmF2aWdhdGUoe1xuICAgICAgcHJpbWFyeTogdGhpcy5nZXRSb3V0ZUJ5QXBwVHlwZShwcmltYXJ5LCByZWxhdGl2ZVRvICE9PSBudWxsKSxcbiAgICAgIHNpZGViYXI6IFt0eXBlLCBzZWFyY2hUeXBlLnRvU3RyaW5nKCksIHBhcmtlcnMsIHRpY2tldElkLnRvU3RyaW5nKCldLFxuICAgICAgcmVsYXRpdmVUb1xuICAgIH0pO1xuICB9XG5cbiAgbmF2aWdhdGVUb1ByaW1hcnlTaWRlQmFyU2VhcmNoUGFya2VyKHByaW1hcnk6IHN0cmluZ1tdLCBzZWFyY2hUeXBlOiBQYXJrZXJUaWNrZXRUeXBlLCBzZWFyY2hWYWx1ZTogc3RyaW5nLFxuICAgIGlzTHVja3lMUFJTZWFyY2g6IGJvb2xlYW4sIHRpY2tldElkOiBudW1iZXIsIHJlbGF0aXZlVG86IEFjdGl2YXRlZFJvdXRlKTogdm9pZCB7XG4gICAgdGhpcy5uYXZpZ2F0ZSh7XG4gICAgICBwcmltYXJ5OiB0aGlzLmdldFJvdXRlQnlBcHBUeXBlKHByaW1hcnksIHJlbGF0aXZlVG8gIT09IG51bGwpLFxuICAgICAgc2lkZWJhcjogW3NlYXJjaCwgc2VhcmNoVmFsdWUsICgrISFpc0x1Y2t5TFBSU2VhcmNoKS50b1N0cmluZygpLCB0eXBlLCBzZWFyY2hUeXBlLnRvU3RyaW5nKCksIHBhcmtlcnMsIHRpY2tldElkLnRvU3RyaW5nKCldLFxuICAgICAgcmVsYXRpdmVUb1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0Um91dGVyTGluayhyb3V0ZXJMaW5rUGFyYW1zOiBSb3V0ZXJMaW5rUGFyYW1zKSB7XG4gICAgY29uc3Qgb3V0bGV0cyA9IHt9O1xuICAgIGlmIChyb3V0ZXJMaW5rUGFyYW1zLmRldmljZUlkKSB7XG4gICAgICBvdXRsZXRzW3ByaW1hcnldID0gW3JvdXRlckxpbmtQYXJhbXMuZGV2aWNlSWRdO1xuICAgIH1cbiAgICBpZiAocm91dGVyTGlua1BhcmFtcy5zaWRlYmFyKSB7XG4gICAgICBpZiAocm91dGVyTGlua1BhcmFtcy5zaWRlYmFyLnNlYXJjaFZhbHVlKSB7XG4gICAgICAgIG91dGxldHNbc2lkZWJhcl0gPSBbdHlwZSwgcm91dGVyTGlua1BhcmFtcy5zaWRlYmFyLnBhcmtlclRpY2tldFR5cGUsIHNlYXJjaCwgcm91dGVyTGlua1BhcmFtcy5zaWRlYmFyLnNlYXJjaFZhbHVlLFxuICAgICAgICAgIHJvdXRlckxpbmtQYXJhbXMuc2lkZWJhci5pc0x1Y2t5TFBSU2VhcmNoLCBwYXJrZXJzLCByb3V0ZXJMaW5rUGFyYW1zLnNpZGViYXIudGlja2V0SWRdO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgb3V0bGV0c1tzaWRlYmFyXSA9IFt0eXBlLCByb3V0ZXJMaW5rUGFyYW1zLnNpZGViYXIucGFya2VyVGlja2V0VHlwZSwgcGFya2Vycywgcm91dGVyTGlua1BhcmFtcy5zaWRlYmFyLnRpY2tldElkXTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKHJvdXRlckxpbmtQYXJhbXMuZGVmYXVsdFNpZGViYXIpIHtcbiAgICAgIG91dGxldHNbc2lkZWJhcl0gPSBzZWFyY2hiYXI7XG4gICAgfVxuICAgIGNvbnN0IHRlbmFudEluZm86IFRlbmFudEluZm8gPSB0aGlzLmdldFRlbmFudEluZm8oKTtcbiAgICBpZiAodGVuYW50SW5mbyAmJiB0ZW5hbnRJbmZvLnRlbmFudE5hbWUpIHtcbiAgICAgIGlmIChyb3V0ZXJMaW5rUGFyYW1zLm11bHRpUGFya1BhcmVudElkKSB7XG4gICAgICAgIHJldHVybiBbYC8ke3RlbmFudEluZm8udGVuYW50TmFtZX1gLCAnY2MnLCByb3V0ZXJMaW5rUGFyYW1zLnRpYmFLZXksIFNVUEVSX1BBUktfUk9VVEVfS0VZLCByb3V0ZXJMaW5rUGFyYW1zLm11bHRpUGFya1BhcmVudElkLCAnbG90Jywgcm91dGVyTGlua1BhcmFtcy5wYXJrSWQsICdkZXZpY2VzJywgeyBvdXRsZXRzIH1dO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIFtgLyR7dGVuYW50SW5mby50ZW5hbnROYW1lfWAsICdjYycsIHJvdXRlckxpbmtQYXJhbXMudGliYUtleSwgJ2xvdCcsIHJvdXRlckxpbmtQYXJhbXMucGFya0lkLCAnZGV2aWNlcycsIHsgb3V0bGV0cyB9XTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKHJvdXRlckxpbmtQYXJhbXMubXVsdGlQYXJrUGFyZW50SWQpIHtcbiAgICAgIHJldHVybiBbJy9jYycsIHJvdXRlckxpbmtQYXJhbXMudGliYUtleSwgU1VQRVJfUEFSS19ST1VURV9LRVksIHJvdXRlckxpbmtQYXJhbXMubXVsdGlQYXJrUGFyZW50SWQsICdsb3QnLCByb3V0ZXJMaW5rUGFyYW1zLnBhcmtJZCwgJ2RldmljZXMnLCB7IG91dGxldHMgfV07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBbJy9jYycsIHJvdXRlckxpbmtQYXJhbXMudGliYUtleSwgJ2xvdCcsIHJvdXRlckxpbmtQYXJhbXMucGFya0lkLCAnZGV2aWNlcycsIHsgb3V0bGV0cyB9XTtcbiAgICB9XG4gIH1cblxuICBnZXRSb3V0ZUJ5QXBwVHlwZShyb3V0ZVNlZ21lbnRzOiBzdHJpbmdbXSwgaXNSZWxhdGl2ZSkge1xuICAgIGNvbnN0IGFwcFR5cGUgPSB0aGlzLmFwcENvbmZpZy5nZXRDb25maWcoKS5hcHBUeXBlO1xuICAgIGlmIChpc1JlbGF0aXZlIHx8IGFwcFR5cGUgPT09IEFwcFR5cGUuRWRnZSkge1xuICAgICAgcmV0dXJuIHJvdXRlU2VnbWVudHM7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJvdXRlU2VnbWVudHMudW5zaGlmdCh0aGlzLmdldFRlbmFudEluZm8oKT8udGVuYW50TmFtZSk7XG4gICAgICByZXR1cm4gcm91dGVTZWdtZW50cztcbiAgICB9XG4gIH1cblxuICBnZXRUZW5hbnRJbmZvID0gKCk6IFRlbmFudEluZm8gPT4gdGhpcy5zdG9yZS5zZWxlY3RTbmFwc2hvdChTZXNzaW9uU3RhdGUudGVuYW50SW5mbyk7XG5cbiAgaXNTaWRlQmFyT3BlbigpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoIC8vIG9ic2VydmUgYWxsIHJvdXRlIGV2ZW50c1xuICAgICAgZmlsdGVyKGUgPT4gZSBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpLCAvLyBmaWx0ZXIgb25seSBOYXZpZ2F0aW9uRW5kIGV2ZW50c1xuICAgICAgbWFwKChlOiBOYXZpZ2F0aW9uRW5kKSA9PiBlLnVybC5pbmNsdWRlcygnc2lkZWJhcjonKSksIC8vIG1hcCB0aGUgdXJsIGV2ZW50IGlmICdzaWRlYmFyOicgdGV4dCBpbmNsdWRlcyB0aGUgc2lkZWJhciBpcyBvcGVuZWRcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpOyAvLyBpZ25vcmUgbmF2aWdhdGlvbiBpZiB0aGUgJ3NpZGViYXI6JyBwYXRoIGRpZG4ndCBjaGFuZ2VcbiAgfVxuXG4gIGlzU2lkZUJhckNsb3NlZCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoIC8vIG9ic2VydmUgYWxsIHJvdXRlIGV2ZW50c1xuICAgICAgZmlsdGVyKGUgPT4gZSBpbnN0YW5jZW9mIFJlc29sdmVFbmQpLCAvLyBmaWx0ZXIgb25seSBSZXNvbHZlRW5kIGV2ZW50c1xuICAgICAgbWFwKChlOiBSZXNvbHZlRW5kKSA9PiAhIWUudXJsLmluY2x1ZGVzKCdzaWRlYmFyOicpKSwgLy8gbWFwIHRoZSB1cmwgZXZlbnQgaWYgJ3NpZGViYXI6JyB0ZXh0IGluY2x1ZGVzIHRoZSBzaWRlYmFyIGlzIG9wZW5lZFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSk7IC8vIGlnbm9yZSBuYXZpZ2F0aW9uIGlmIHRoZSAnc2lkZWJhcjonIHBhdGggZGlkbid0IGNoYW5nZVxuICB9XG5cbiAgaXNTaWRlQmFyQ3VycmVudGx5T3BlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5yb3V0ZXIudXJsLmluY2x1ZGVzKCdzaWRlYmFyOicpO1xuICB9XG5cbiAgbmF2aWdhdGVUb1JvdXRlKHJvdXRlU2VnbWVudHM6IHN0cmluZ1tdKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIGZyb20odGhpcy5yb3V0ZXIubmF2aWdhdGUodGhpcy5nZXROYXZpZ2F0aW9uUm91dGUocm91dGVTZWdtZW50cykpKTtcbiAgfVxuXG4gIGdldE1vYmlsZVJvdXRlckxpbmsocm91dGVyTGlua1BhcmFtczogUm91dGVyTGlua1BhcmFtcykge1xuICAgIGNvbnN0IHRlbmFudEluZm86IFRlbmFudEluZm8gPSB0aGlzLmdldFRlbmFudEluZm8oKTtcbiAgICBjb25zdCByb3V0ZSA9IFtgJHt0ZW5hbnRJbmZvLnRlbmFudE5hbWV9YCwgJ2NjJywgcm91dGVyTGlua1BhcmFtcy50aWJhS2V5LCAnbG90Jywgcm91dGVyTGlua1BhcmFtcy5wYXJrSWQsICdkZXZpY2VzJ107XG4gICAgaWYgKHJvdXRlckxpbmtQYXJhbXMuZGV2aWNlSWQpIHtcbiAgICAgIHJvdXRlLnB1c2gocm91dGVyTGlua1BhcmFtcy5kZXZpY2VJZCk7XG4gICAgfVxuICAgIHJldHVybiByb3V0ZTtcbiAgfVxufVxuIl19
|
|
197
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsaWVudC1zaGFyZWQtbGliL3NyYy9saWJyYXJpZXMvc2VydmljZXMvcm91dGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBa0IsYUFBYSxFQUFFLFVBQVUsRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBRXBGLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFNUIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbkUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRWpELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUU3RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7QUF3QnpELE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQztBQUMxQixNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUM7QUFDMUIsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDO0FBQ3BCLE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQztBQUMxQixNQUFNLFNBQVMsR0FBRyxXQUFXLENBQUM7QUFDOUIsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDO0FBR3hCLE1BQU0sT0FBTyxZQUFhLFNBQVEsYUFBYTtJQUU3QyxZQUFvQixNQUFjLEVBQVUsU0FBMkIsRUFBVSxLQUFZO1FBQzNGLEtBQUssRUFBRSxDQUFDO1FBRFUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtR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TSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxZQUFZLFVBQVUsQ0FBQyxFQUFFLGdDQUFnQztRQUN0RSxHQUFHLENBQUMsQ0FBQyxDQUFhLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLHNFQUFzRTtRQUM1SCxvQkFBb0IsRUFBRSxDQUFDLENBQUMsQ0FBQyx5REFBeUQ7SUFDdEYsQ0FBQztJQUVELHNCQUFzQjtRQUNwQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQsZUFBZSxDQUFDLGFBQXVCO1FBQ3JDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVELG1CQUFtQixDQUFDLGdCQUFrQztRQUNwRCxNQUFNLFVBQVUsR0FBZSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDcEQsTUFBTSxLQUFLLEdBQUcsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxVQUFVLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDdEgsSUFBSSxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM5QixLQUFLLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3hDLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7K0dBaE1VLFlBQVk7bUhBQVosWUFBWTs7NEZBQVosWUFBWTtrQkFEeEIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBOYXZpZ2F0aW9uRW5kLCBSZXNvbHZlRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBmcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcy9pbnRlcm5hbC9PYnNlcnZhYmxlJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2Jhc2UvYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU1VQRVJfUEFSS19ST1VURV9LRVkgfSBmcm9tICcuLi9jb25zdGFudHMva2V5cy1jb25zdGFudHMnO1xuaW1wb3J0IHsgQXBwVHlwZSB9IGZyb20gJy4uL2VudW1zL2FwcC10eXBlLmVudW0nO1xuaW1wb3J0IHsgVGVuYW50SW5mbyB9IGZyb20gJy4uL21vZHVsZXMvYXV0aC9tb2RlbC90ZW5hbnQtaW5mby5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU2Vzc2lvblN0YXRlIH0gZnJvbSAnLi4vbW9kdWxlcy9hdXRoL3Nlc3Npb24uc3RhdGUnO1xuaW1wb3J0IHsgUGFya2VyVGlja2V0VHlwZSB9IGZyb20gJy4uL3NlcnZpY2UtcHJveHkvZWRnZS1zZXJ2aWNlLXByb3hpZXMnO1xuaW1wb3J0IHsgZ2V0TmF2aWdhdGlvblJvdXRlIH0gZnJvbSAnLi4vdXRpbHMvcm91dGUudXRpbCc7XG5pbXBvcnQgeyBBcHBDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi9hcHAtY29uZmlnLnNlcnZpY2UnO1xuXG5pbnRlcmZhY2UgTmF2aWdhdGVQYXJhbXMge1xuICBwcmltYXJ5Pzogc3RyaW5nW107XG4gIHNpZGViYXI/OiBzdHJpbmdbXTtcbiAgcmVsYXRpdmVUbzogQWN0aXZhdGVkUm91dGU7XG4gIHJlcGxhY2VVcmw/OiBib29sZWFuO1xufVxuXG5pbnRlcmZhY2UgUm91dGVyTGlua1BhcmFtcyB7XG4gIHRpYmFLZXk6IG51bWJlcjtcbiAgcGFya0lkOiBudW1iZXI7XG4gIG11bHRpUGFya1BhcmVudElkPzogbnVtYmVyO1xuICBkZXZpY2VJZD86IG51bWJlcjtcbiAgc2lkZWJhcj86IHtcbiAgICBwYXJrZXJUaWNrZXRUeXBlOiBQYXJrZXJUaWNrZXRUeXBlO1xuICAgIHNlYXJjaFZhbHVlPzogc3RyaW5nO1xuICAgIGlzTHVja3lMUFJTZWFyY2g/OiBib29sZWFuO1xuICAgIHRpY2tldElkOiBudW1iZXI7XG4gIH07XG4gIGRlZmF1bHRTaWRlYmFyPzogYm9vbGVhbjtcbn1cblxuY29uc3Qgc2lkZWJhciA9ICdzaWRlYmFyJztcbmNvbnN0IHByaW1hcnkgPSAncHJpbWFyeSc7XG5jb25zdCB0eXBlID0gJ3R5cGUnO1xuY29uc3QgcGFya2VycyA9ICdwYXJrZXJzJztcbmNvbnN0IHNlYXJjaGJhciA9ICdzZWFyY2hiYXInO1xuY29uc3Qgc2VhcmNoID0gJ3NlYXJjaCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBSb3V0ZVNlcnZpY2UgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IHtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyLCBwcml2YXRlIGFwcENvbmZpZzogQXBwQ29uZmlnU2VydmljZSwgcHJpdmF0ZSBzdG9yZTogU3RvcmUpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgZ2V0TmF2aWdhdGlvblJvdXRlKHJvdXRlUGFydHM/OiBzdHJpbmdbXSk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCB0ZW5hbnRJbmZvOiBUZW5hbnRJbmZvID0gdGhpcy5nZXRUZW5hbnRJbmZvKCk7XG4gICAgcmV0dXJuIGdldE5hdmlnYXRpb25Sb3V0ZSh0ZW5hbnRJbmZvLCB0aGlzLmFwcENvbmZpZy5nZXRDb25maWcoKS5hcHBUeXBlLCByb3V0ZVBhcnRzKTtcbiAgfVxuXG4gIG5hdmlnYXRlKHBhcmFtczogTmF2aWdhdGVQYXJhbXMpOiB2b2lkIHtcbiAgICBjb25zdCBwcm9wZXJ0aWVzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMocGFyYW1zKTtcbiAgICBpZiAocHJvcGVydGllcy5maW5kKGkgPT4gaSA9PT0gcHJpbWFyeSkgJiYgcHJvcGVydGllcy5maW5kKGkgPT4gaSA9PT0gc2lkZWJhcikpIHtcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt7IG91dGxldHM6IHsgcHJpbWFyeTogcGFyYW1zLnByaW1hcnksIHNpZGViYXI6IHBhcmFtcy5zaWRlYmFyIH0gfV0sXG4gICAgICAgIHsgcmVsYXRpdmVUbzogcGFyYW1zLnJlbGF0aXZlVG8sIHJlcGxhY2VVcmw6IHBhcmFtcy5yZXBsYWNlVXJsIHx8IGZhbHNlIH0pO1xuICAgIH0gZWxzZSBpZiAocHJvcGVydGllcy5maW5kKGkgPT4gaSA9PT0gcHJpbWFyeSkpIHtcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKHBhcmFtcy5wcmltYXJ5LFxuICAgICAgICB7IHJlbGF0aXZlVG86IHBhcmFtcy5yZWxhdGl2ZVRvLCByZXBsYWNlVXJsOiBwYXJhbXMucmVwbGFjZVVybCB8fCBmYWxzZSB9KTtcbiAgICB9IGVsc2UgaWYgKHByb3BlcnRpZXMuZmluZChpID0+IGkgPT09IHNpZGViYXIpKSB7XG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbeyBvdXRsZXRzOiB7IHNpZGViYXI6IHBhcmFtcy5zaWRlYmFyIH0gfV0sXG4gICAgICAgIHsgcmVsYXRpdmVUbzogcGFyYW1zLnJlbGF0aXZlVG8sIHJlcGxhY2VVcmw6IHBhcmFtcy5yZXBsYWNlVXJsIHx8IGZhbHNlIH0pO1xuICAgIH1cbiAgfVxuXG4gIG5hdmlnYXRlVG9QcmltYXJ5KHByaW1hcnk6IHN0cmluZ1tdLCByZWxhdGl2ZVRvOiBBY3RpdmF0ZWRSb3V0ZSk6IHZvaWQge1xuICAgIHRoaXMubmF2aWdhdGUoe1xuICAgICAgcHJpbWFyeTogdGhpcy5nZXRSb3V0ZUJ5QXBwVHlwZShwcmltYXJ5LCByZWxhdGl2ZVRvICE9PSBudWxsKSxcbiAgICAgIHJlbGF0aXZlVG9cbiAgICB9KTtcbiAgfVxuXG4gIG5hdmlnYXRlVG9QcmltYXJ5V2l0aG91dFNpZGViYXIocHJpbWFyeTogc3RyaW5nW10sIHJlbGF0aXZlVG86IEFjdGl2YXRlZFJvdXRlKTogdm9pZCB7XG4gICAgdGhpcy5uYXZpZ2F0ZSh7XG4gICAgICBwcmltYXJ5OiB0aGlzLmdldFJvdXRlQnlBcHBUeXBlKHByaW1hcnksIHJlbGF0aXZlVG8gIT09IG51bGwpLFxuICAgICAgc2lkZWJhcjogbnVsbCxcbiAgICAgIHJlbGF0aXZlVG9cbiAgICB9KTtcbiAgfVxuXG4gIG5hdmlnYXRlVG9EZXZpY2VEZWZhdWx0U2lkZUJhcihyZWxhdGl2ZVRvOiBBY3RpdmF0ZWRSb3V0ZSk6IHZvaWQge1xuICAgIHRoaXMubmF2aWdhdGUoe1xuICAgICAgc2lkZWJhcjogW3NlYXJjaGJhcl0sXG4gICAgICByZWxhdGl2ZVRvXG4gICAgfSk7XG4gIH1cblxuICBuYXZpZ2F0ZVRvUHJpbWFyeURldmljZURlZmF1bHRTaWRlQmFyKHByaW1hcnk6IHN0cmluZ1tdLCByZWxhdGl2ZVRvOiBBY3RpdmF0ZWRSb3V0ZSk6IHZvaWQge1xuICAgIHRoaXMubmF2aWdhdGUoe1xuICAgICAgcHJpbWFyeTogdGhpcy5nZXRSb3V0ZUJ5QXBwVHlwZShwcmltYXJ5LCByZWxhdGl2ZVRvICE9PSBudWxsKSxcbiAgICAgIHNpZGViYXI6IFtzZWFyY2hiYXJdLFxuICAgICAgcmVsYXRpdmVUb1xuICAgIH0pO1xuICB9XG5cbiAgbmF2aWdhdGVUb1NpZGVCYXJTZWFyY2goc2VhcmNoVHlwZTogUGFya2VyVGlja2V0VHlwZSwgc2VhcmNoVmFsdWU6IHN0cmluZyxcbiAgICBpc0x1Y2t5TFBSU2VhcmNoOiBib29sZWFuLCByZWxhdGl2ZVRvOiBBY3RpdmF0ZWRSb3V0ZSk6IHZvaWQge1xuICAgIHRoaXMubmF2aWdhdGUoe1xuICAgICAgc2lkZWJhcjogW3NlYXJjaCwgc2VhcmNoVmFsdWUsICgrISFpc0x1Y2t5TFBSU2VhcmNoKS50b1N0cmluZygpLCB0eXBlLCBzZWFyY2hUeXBlLnRvU3RyaW5nKCldLFxuICAgICAgcmVsYXRpdmVUb1xuICAgIH0pO1xuICB9XG5cbiAgbmF2aWdhdGVUb1NpZGVCYXJQYXJrZXIoc2VhcmNoVHlwZTogUGFya2VyVGlja2V0VHlwZSwgdGlja2V0SWQ6IG51bWJlciwgcmVsYXRpdmVUbzogQWN0aXZhdGVkUm91dGUpOiB2b2lkIHtcbiAgICB0aGlzLm5hdmlnYXRlKHtcbiAgICAgIHNpZGViYXI6IFt0eXBlLCBzZWFyY2hUeXBlLnRvU3RyaW5nKCksIHBhcmtlcnMsIHRpY2tldElkLnRvU3RyaW5nKCldLFxuICAgICAgcmVsYXRpdmVUb1xuICAgIH0pO1xuICB9XG5cbiAgbmF2aWdhdGVUb0JhY2tvZmZpY2VTaWRlQmFyUGFya2VyKGlkOiBudW1iZXIsIHJlbGF0aXZlVG86IEFjdGl2YXRlZFJvdXRlKTogdm9pZCB7XG4gICAgdGhpcy5uYXZpZ2F0ZSh7XG4gICAgICBzaWRlYmFyOiBbaWQudG9TdHJpbmcoKV0sXG4gICAgICByZWxhdGl2ZVRvXG4gICAgfSk7XG4gIH1cblxuICBuYXZpZ2F0ZVRvU2lkZUJhclN1YlRpY2tldFBhcmtlcihzZWFyY2hUeXBlOiBQYXJrZXJUaWNrZXRUeXBlLCB0aWNrZXRJZDogbnVtYmVyLCBzdWJUaWNrZXRJZDogbnVtYmVyLCByZWxhdGl2ZVRvOiBBY3RpdmF0ZWRSb3V0ZSk6IHZvaWQge1xuICAgIHRoaXMubmF2aWdhdGUoe1xuICAgICAgc2lkZWJhcjogW3R5cGUsIHNlYXJjaFR5cGUudG9TdHJpbmcoKSwgcGFya2VycywgdGlja2V0SWQudG9TdHJpbmcoKSwgc3ViVGlja2V0SWQudG9TdHJpbmcoKV0sXG4gICAgICByZWxhdGl2ZVRvXG4gICAgfSk7XG4gIH1cblxuICBuYXZpZ2F0ZVRvU2lkZUJhclNlYXJjaFBhcmtlcihzZWFyY2hUeXBlOiBQYXJrZXJUaWNrZXRUeXBlLCBzZWFyY2hWYWx1ZTogc3RyaW5nLCBpc0x1Y2t5TFBSU2VhcmNoOiBib29sZWFuLFxuICAgIHRpY2tldElkOiBudW1iZXIsIHJlbGF0aXZlVG86IEFjdGl2YXRlZFJvdXRlLCByZXBsYWNlVXJsOiBib29sZWFuID0gZmFsc2UpOiB2b2lkIHtcbiAgICB0aGlzLm5hdmlnYXRlKHtcbiAgICAgIHNpZGViYXI6IFtzZWFyY2gsIHNlYXJjaFZhbHVlLCAoKyEhaXNMdWNreUxQUlNlYXJjaCkudG9TdHJpbmcoKSwgdHlwZSwgc2VhcmNoVHlwZS50b1N0cmluZygpLCBwYXJrZXJzLCB0aWNrZXRJZC50b1N0cmluZygpXSxcbiAgICAgIHJlbGF0aXZlVG8sXG4gICAgICByZXBsYWNlVXJsXG4gICAgfSk7XG4gIH1cblxuICBuYXZpZ2F0ZVRvUHJpbWFyeVNpZGVCYXJTZWFyY2gocHJpbWFyeTogc3RyaW5nW10sIHNlYXJjaFR5cGU6IFBhcmtlclRpY2tldFR5cGUsIHNlYXJjaFZhbHVlOiBzdHJpbmcsXG4gICAgaXNMdWNreUxQUlNlYXJjaDogYm9vbGVhbiwgcmVsYXRpdmVUbzogQWN0aXZhdGVkUm91dGUpOiB2b2lkIHtcbiAgICB0aGlzLm5hdmlnYXRlKHtcbiAgICAgIHByaW1hcnk6IHRoaXMuZ2V0Um91dGVCeUFwcFR5cGUocHJpbWFyeSwgcmVsYXRpdmVUbyAhPT0gbnVsbCksXG4gICAgICBzaWRlYmFyOiBbc2VhcmNoLCBzZWFyY2hWYWx1ZSwgKCshIWlzTHVja3lMUFJTZWFyY2gpLnRvU3RyaW5nKCksIHR5cGUsIHNlYXJjaFR5cGUudG9TdHJpbmcoKV0sXG4gICAgICByZWxhdGl2ZVRvXG4gICAgfSk7XG4gIH1cblxuICBuYXZpZ2F0ZVRvUHJpbWFyeVNpZGVCYXJQYXJrZXIocHJpbWFyeTogc3RyaW5nW10sIHNlYXJjaFR5cGU6IFBhcmtlclRpY2tldFR5cGUsIHRpY2tldElkOiBudW1iZXIsXG4gICAgcmVsYXRpdmVUbzogQWN0aXZhdGVkUm91dGUpOiB2b2lkIHtcbiAgICB0aGlzLm5hdmlnYXRlKHtcbiAgICAgIHByaW1hcnk6IHRoaXMuZ2V0Um91dGVCeUFwcFR5cGUocHJpbWFyeSwgcmVsYXRpdmVUbyAhPT0gbnVsbCksXG4gICAgICBzaWRlYmFyOiBbdHlwZSwgc2VhcmNoVHlwZS50b1N0cmluZygpLCBwYXJrZXJzLCB0aWNrZXRJZC50b1N0cmluZygpXSxcbiAgICAgIHJlbGF0aXZlVG9cbiAgICB9KTtcbiAgfVxuXG4gIG5hdmlnYXRlVG9QcmltYXJ5U2lkZUJhclNlYXJjaFBhcmtlcihwcmltYXJ5OiBzdHJpbmdbXSwgc2VhcmNoVHlwZTogUGFya2VyVGlja2V0VHlwZSwgc2VhcmNoVmFsdWU6IHN0cmluZyxcbiAgICBpc0x1Y2t5TFBSU2VhcmNoOiBib29sZWFuLCB0aWNrZXRJZDogbnVtYmVyLCByZWxhdGl2ZVRvOiBBY3RpdmF0ZWRSb3V0ZSk6IHZvaWQge1xuICAgIHRoaXMubmF2aWdhdGUoe1xuICAgICAgcHJpbWFyeTogdGhpcy5nZXRSb3V0ZUJ5QXBwVHlwZShwcmltYXJ5LCByZWxhdGl2ZVRvICE9PSBudWxsKSxcbiAgICAgIHNpZGViYXI6IFtzZWFyY2gsIHNlYXJjaFZhbHVlLCAoKyEhaXNMdWNreUxQUlNlYXJjaCkudG9TdHJpbmcoKSwgdHlwZSwgc2VhcmNoVHlwZS50b1N0cmluZygpLCBwYXJrZXJzLCB0aWNrZXRJZC50b1N0cmluZygpXSxcbiAgICAgIHJlbGF0aXZlVG9cbiAgICB9KTtcbiAgfVxuXG4gIGdldFJvdXRlckxpbmsocm91dGVyTGlua1BhcmFtczogUm91dGVyTGlua1BhcmFtcykge1xuICAgIGNvbnN0IG91dGxldHMgPSB7fTtcbiAgICBpZiAocm91dGVyTGlua1BhcmFtcy5kZXZpY2VJZCkge1xuICAgICAgb3V0bGV0c1twcmltYXJ5XSA9IFtyb3V0ZXJMaW5rUGFyYW1zLmRldmljZUlkXTtcbiAgICB9XG4gICAgaWYgKHJvdXRlckxpbmtQYXJhbXMuc2lkZWJhcikge1xuICAgICAgaWYgKHJvdXRlckxpbmtQYXJhbXMuc2lkZWJhci5zZWFyY2hWYWx1ZSkge1xuICAgICAgICBvdXRsZXRzW3NpZGViYXJdID0gW3R5cGUsIHJvdXRlckxpbmtQYXJhbXMuc2lkZWJhci5wYXJrZXJUaWNrZXRUeXBlLCBzZWFyY2gsIHJvdXRlckxpbmtQYXJhbXMuc2lkZWJhci5zZWFyY2hWYWx1ZSxcbiAgICAgICAgICByb3V0ZXJMaW5rUGFyYW1zLnNpZGViYXIuaXNMdWNreUxQUlNlYXJjaCwgcGFya2Vycywgcm91dGVyTGlua1BhcmFtcy5zaWRlYmFyLnRpY2tldElkXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG91dGxldHNbc2lkZWJhcl0gPSBbdHlwZSwgcm91dGVyTGlua1BhcmFtcy5zaWRlYmFyLnBhcmtlclRpY2tldFR5cGUsIHBhcmtlcnMsIHJvdXRlckxpbmtQYXJhbXMuc2lkZWJhci50aWNrZXRJZF07XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChyb3V0ZXJMaW5rUGFyYW1zLmRlZmF1bHRTaWRlYmFyKSB7XG4gICAgICBvdXRsZXRzW3NpZGViYXJdID0gc2VhcmNoYmFyO1xuICAgIH1cbiAgICBjb25zdCB0ZW5hbnRJbmZvOiBUZW5hbnRJbmZvID0gdGhpcy5nZXRUZW5hbnRJbmZvKCk7XG4gICAgaWYgKHRlbmFudEluZm8gJiYgdGVuYW50SW5mby50ZW5hbnROYW1lKSB7XG4gICAgICBpZiAocm91dGVyTGlua1BhcmFtcy5tdWx0aVBhcmtQYXJlbnRJZCkge1xuICAgICAgICByZXR1cm4gW2AvJHt0ZW5hbnRJbmZvLnRlbmFudE5hbWV9YCwgJ2NjJywgcm91dGVyTGlua1BhcmFtcy50aWJhS2V5LCBTVVBFUl9QQVJLX1JPVVRFX0tFWSwgcm91dGVyTGlua1BhcmFtcy5tdWx0aVBhcmtQYXJlbnRJZCwgJ2xvdCcsIHJvdXRlckxpbmtQYXJhbXMucGFya0lkLCAnZGV2aWNlcycsIHsgb3V0bGV0cyB9XTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBbYC8ke3RlbmFudEluZm8udGVuYW50TmFtZX1gLCAnY2MnLCByb3V0ZXJMaW5rUGFyYW1zLnRpYmFLZXksICdsb3QnLCByb3V0ZXJMaW5rUGFyYW1zLnBhcmtJZCwgJ2RldmljZXMnLCB7IG91dGxldHMgfV07XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChyb3V0ZXJMaW5rUGFyYW1zLm11bHRpUGFya1BhcmVudElkKSB7XG4gICAgICByZXR1cm4gWycvY2MnLCByb3V0ZXJMaW5rUGFyYW1zLnRpYmFLZXksIFNVUEVSX1BBUktfUk9VVEVfS0VZLCByb3V0ZXJMaW5rUGFyYW1zLm11bHRpUGFya1BhcmVudElkLCAnbG90Jywgcm91dGVyTGlua1BhcmFtcy5wYXJrSWQsICdkZXZpY2VzJywgeyBvdXRsZXRzIH1dO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gWycvY2MnLCByb3V0ZXJMaW5rUGFyYW1zLnRpYmFLZXksICdsb3QnLCByb3V0ZXJMaW5rUGFyYW1zLnBhcmtJZCwgJ2RldmljZXMnLCB7IG91dGxldHMgfV07XG4gICAgfVxuICB9XG5cbiAgZ2V0Um91dGVCeUFwcFR5cGUocm91dGVTZWdtZW50czogc3RyaW5nW10sIGlzUmVsYXRpdmUpIHtcbiAgICBjb25zdCBhcHBUeXBlID0gdGhpcy5hcHBDb25maWcuZ2V0Q29uZmlnKCkuYXBwVHlwZTtcbiAgICBpZiAoaXNSZWxhdGl2ZSB8fCBhcHBUeXBlID09PSBBcHBUeXBlLkVkZ2UpIHtcbiAgICAgIHJldHVybiByb3V0ZVNlZ21lbnRzO1xuICAgIH0gZWxzZSB7XG4gICAgICByb3V0ZVNlZ21lbnRzLnVuc2hpZnQodGhpcy5nZXRUZW5hbnRJbmZvKCk/LnRlbmFudE5hbWUpO1xuICAgICAgcmV0dXJuIHJvdXRlU2VnbWVudHM7XG4gICAgfVxuICB9XG5cbiAgZ2V0VGVuYW50SW5mbyA9ICgpOiBUZW5hbnRJbmZvID0+IHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoU2Vzc2lvblN0YXRlLnRlbmFudEluZm8pO1xuXG4gIGlzU2lkZUJhck9wZW4oKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMucm91dGVyLmV2ZW50cy5waXBlKCAvLyBvYnNlcnZlIGFsbCByb3V0ZSBldmVudHNcbiAgICAgIGZpbHRlcihlID0+IGUgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSwgLy8gZmlsdGVyIG9ubHkgTmF2aWdhdGlvbkVuZCBldmVudHNcbiAgICAgIG1hcCgoZTogTmF2aWdhdGlvbkVuZCkgPT4gZS51cmwuaW5jbHVkZXMoJ3NpZGViYXI6JykpLCAvLyBtYXAgdGhlIHVybCBldmVudCBpZiAnc2lkZWJhcjonIHRleHQgaW5jbHVkZXMgdGhlIHNpZGViYXIgaXMgb3BlbmVkXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKTsgLy8gaWdub3JlIG5hdmlnYXRpb24gaWYgdGhlICdzaWRlYmFyOicgcGF0aCBkaWRuJ3QgY2hhbmdlXG4gIH1cblxuICBpc1NpZGVCYXJDbG9zZWQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMucm91dGVyLmV2ZW50cy5waXBlKCAvLyBvYnNlcnZlIGFsbCByb3V0ZSBldmVudHNcbiAgICAgIGZpbHRlcihlID0+IGUgaW5zdGFuY2VvZiBSZXNvbHZlRW5kKSwgLy8gZmlsdGVyIG9ubHkgUmVzb2x2ZUVuZCBldmVudHNcbiAgICAgIG1hcCgoZTogUmVzb2x2ZUVuZCkgPT4gISFlLnVybC5pbmNsdWRlcygnc2lkZWJhcjonKSksIC8vIG1hcCB0aGUgdXJsIGV2ZW50IGlmICdzaWRlYmFyOicgdGV4dCBpbmNsdWRlcyB0aGUgc2lkZWJhciBpcyBvcGVuZWRcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpOyAvLyBpZ25vcmUgbmF2aWdhdGlvbiBpZiB0aGUgJ3NpZGViYXI6JyBwYXRoIGRpZG4ndCBjaGFuZ2VcbiAgfVxuXG4gIGlzU2lkZUJhckN1cnJlbnRseU9wZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucm91dGVyLnVybC5pbmNsdWRlcygnc2lkZWJhcjonKTtcbiAgfVxuXG4gIG5hdmlnYXRlVG9Sb3V0ZShyb3V0ZVNlZ21lbnRzOiBzdHJpbmdbXSk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiBmcm9tKHRoaXMucm91dGVyLm5hdmlnYXRlKHRoaXMuZ2V0TmF2aWdhdGlvblJvdXRlKHJvdXRlU2VnbWVudHMpKSk7XG4gIH1cblxuICBnZXRNb2JpbGVSb3V0ZXJMaW5rKHJvdXRlckxpbmtQYXJhbXM6IFJvdXRlckxpbmtQYXJhbXMpIHtcbiAgICBjb25zdCB0ZW5hbnRJbmZvOiBUZW5hbnRJbmZvID0gdGhpcy5nZXRUZW5hbnRJbmZvKCk7XG4gICAgY29uc3Qgcm91dGUgPSBbYCR7dGVuYW50SW5mby50ZW5hbnROYW1lfWAsICdjYycsIHJvdXRlckxpbmtQYXJhbXMudGliYUtleSwgJ2xvdCcsIHJvdXRlckxpbmtQYXJhbXMucGFya0lkLCAnZGV2aWNlcyddO1xuICAgIGlmIChyb3V0ZXJMaW5rUGFyYW1zLmRldmljZUlkKSB7XG4gICAgICByb3V0ZS5wdXNoKHJvdXRlckxpbmtQYXJhbXMuZGV2aWNlSWQpO1xuICAgIH1cbiAgICByZXR1cm4gcm91dGU7XG4gIH1cbn1cbiJdfQ==
|