@fundamental-ngx/platform 0.52.2-rc.34 → 0.52.2-rc.35
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/icon-tab-bar/components/icon-tab-bar-filter-type/icon-tab-bar-filter-type.component.mjs +6 -5
- package/esm2022/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.mjs +6 -5
- package/esm2022/icon-tab-bar/components/icon-tab-bar-process-type/icon-tab-bar-process-type.component.mjs +6 -4
- package/esm2022/icon-tab-bar/components/icon-tab-bar-tab/icon-tab-bar-tab.component.mjs +6 -3
- package/esm2022/icon-tab-bar/components/icon-tab-bar-text-type/icon-tab-bar-text-type.component.mjs +4 -3
- package/esm2022/icon-tab-bar/components/text-type-tab-item/icon-tab-bar-text-type-tab-item.component.mjs +5 -4
- package/esm2022/icon-tab-bar/directives/icon-tab-title.directive.mjs +14 -0
- package/esm2022/icon-tab-bar/icon-tab-bar.component.mjs +2 -1
- package/esm2022/icon-tab-bar/interfaces/tab-config.interface.mjs +1 -1
- package/fesm2022/fundamental-ngx-platform-icon-tab-bar.mjs +34 -15
- package/fesm2022/fundamental-ngx-platform-icon-tab-bar.mjs.map +1 -1
- package/icon-tab-bar/components/icon-tab-bar-tab/icon-tab-bar-tab.component.d.ts +3 -1
- package/icon-tab-bar/directives/icon-tab-title.directive.d.ts +5 -0
- package/icon-tab-bar/icon-tab-bar.component.d.ts +2 -0
- package/icon-tab-bar/interfaces/tab-config.interface.d.ts +2 -0
- package/package.json +4 -4
- package/schematics/ng-add/index.js +1 -1
package/esm2022/icon-tab-bar/components/icon-tab-bar-text-type/icon-tab-bar-text-type.component.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Component, EventEmitter, Input, Output, QueryList, ViewChild, ViewChildren } from '@angular/core';
|
|
2
2
|
import { AsyncOrSyncPipe } from '@fundamental-ngx/cdk/utils';
|
|
3
|
-
import { NgClass } from '@angular/common';
|
|
3
|
+
import { NgClass, NgTemplateOutlet } from '@angular/common';
|
|
4
4
|
import { OverflowListDirective, OverflowListItemDirective } from '@fundamental-ngx/cdk/utils';
|
|
5
5
|
import { ButtonComponent } from '@fundamental-ngx/core/button';
|
|
6
6
|
import { IconComponent } from '@fundamental-ngx/core/icon';
|
|
@@ -155,7 +155,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImpor
|
|
|
155
155
|
ButtonComponent,
|
|
156
156
|
IconComponent,
|
|
157
157
|
AsyncOrSyncPipe,
|
|
158
|
-
IconTabBarTextTypeTabItemComponent
|
|
158
|
+
IconTabBarTextTypeTabItemComponent,
|
|
159
|
+
NgTemplateOutlet
|
|
159
160
|
], template: "<ng-container fdpIconBarDndContainer [draggable]=\"enableTabReordering\" (dropped)=\"_onDropped($event)\">\n <ul\n class=\"fd-icon-tab-bar__header\"\n [class.fd-dynamic-page__tabs]=\"_inDynamicPage\"\n role=\"tablist\"\n #tablist\n fdkOverflowList\n [isRtl]=\"isRtl\"\n [overflowOffset]=\"100\"\n fdpIconBarDndList\n dndOrientation=\"horizontal\"\n (overflowChanged)=\"_recalculateVisibleItems($event)\"\n >\n @for (item of tabs; track item.uId; let idx = $index) {\n <li\n [ngClass]=\"item.cssClasses\"\n [class.fd-icon-tab-bar__item--multi-click]=\"multiClick && item.subItems?.length\"\n fdkOverflowListItem\n fdpIconBarDndItem\n [dndSeparatorClass]=\"['fd-icon-tab-bar__item--dnd-separator']\"\n [dndItemData]=\"item\"\n class=\"fd-icon-tab-bar__item\"\n [class.fd-icon-tab-bar__item--closable]=\"item.closable\"\n [attr.aria-hidden]=\"item.hidden\"\n role=\"presentation\"\n >\n @if (!item.subItems?.length && !multiClick) {\n <a\n #tabItem\n fdp-icon-tab-bar-text-type-tab-item\n [item]=\"item\"\n [layoutMode]=\"layoutMode\"\n [colorAssociations]=\"colorAssociations()\"\n [attr.tabindex]=\"idx === 0 ? 0 : -1\"\n [attr.aria-selected]=\"item.uId === selectedUid\"\n (click)=\"_selectItem(item, $event)\"\n (keydown)=\"_keyDownHandler($event, item, idx)\"\n >\n </a>\n }\n @if (item.subItems?.length || multiClick) {\n <fdp-text-type-popover\n #tabItem\n #itemPopover\n [tabindex]=\"idx === 0 ? 0 : -1\"\n [parentTab]=\"item\"\n [layoutMode]=\"layoutMode\"\n [multiClick]=\"multiClick\"\n [selectedSubItemUid]=\"selectedUid\"\n [colorAssociations]=\"colorAssociations()\"\n (selectedSubItem)=\"_selectItem($event)\"\n (keydown)=\"_keyDownHandler($event, item, idx, itemPopover)\"\n (closeTab)=\"_closeTab($event)\"\n (selectedItem)=\"_selectItem(item)\"\n >\n </fdp-text-type-popover>\n }\n @if (item.closable) {\n <div class=\"fd-icon-tab-bar__button-container\">\n <button\n fd-button\n tabindex=\"-1\"\n class=\"fd-icon-tab-bar__button\"\n fdType=\"transparent\"\n (click)=\"_closeTab(item.uId)\"\n >\n <fd-icon glyph=\"decline\"></fd-icon>\n </button>\n </div>\n }\n </li>\n }\n @if (_extraItems$()) {\n <li role=\"presentation\" class=\"fd-icon-tab-bar__item fd-icon-tab-bar__item--overflow\">\n <fdp-text-type-popover\n #extraItemsPopover\n [isRtl]=\"isRtl\"\n [extraTabs]=\"_extraTabs$()\"\n [isExtraItemsMode]=\"true\"\n [colorAssociations]=\"colorAssociations()\"\n (selectedExtraItem)=\"_selectExtraItem($event)\"\n (focusFirstVisibleItem)=\"_focusItem(0)\"\n (focusLastVisibleItem)=\"_focusItem(_lastVisibleTabIndex)\"\n (closeTab)=\"_closeTab($event, true)\"\n >\n </fdp-text-type-popover>\n </li>\n }\n </ul>\n</ng-container>\n" }]
|
|
160
161
|
}], propDecorators: { _tabUIElements: [{
|
|
161
162
|
type: ViewChildren,
|
|
@@ -172,4 +173,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImpor
|
|
|
172
173
|
}], reordered: [{
|
|
173
174
|
type: Output
|
|
174
175
|
}] } });
|
|
175
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi10YWItYmFyLXRleHQtdHlwZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2ljb24tdGFiLWJhci9jb21wb25lbnRzL2ljb24tdGFiLWJhci10ZXh0LXR5cGUvaWNvbi10YWItYmFyLXRleHQtdHlwZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2ljb24tdGFiLWJhci9jb21wb25lbnRzL2ljb24tdGFiLWJhci10ZXh0LXR5cGUvaWNvbi10YWItYmFyLXRleHQtdHlwZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZILE9BQU8sRUFBRSxlQUFlLEVBQVksTUFBTSw0QkFBNEIsQ0FBQztBQUV2RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLHlCQUF5QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RCxPQUFPLEVBQWMsNEJBQTRCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUNqSCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUMzRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUUzRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0Ms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QUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxpQ0FBaUMsRUFBRSxDQUFDO0lBQzdDLENBQUM7OEdBckpRLDJCQUEyQjtrR0FBM0IsMkJBQTJCLDBOQXBCekI7WUFDUDtnQkFDSSxPQUFPLEVBQUUsY0FBYztnQkFDdkIsV0FBVyxFQUFFLDJCQUEyQjthQUMzQztTQUNKLHFQQ3BDTCxvaUlBMEZBLDRDRHBEUSw0QkFBNEIsZ0pBQzVCLHFCQUFxQixzSkFDckIsdUJBQXVCLHNJQUN2Qix5QkFBeUIsa0VBQ3pCLHVCQUF1QiwwS0FDdkIsT0FBTyxvRkFDUCx3QkFBd0IseU5BQ3hCLGVBQWUseUlBQ2YsYUFBYSwwSUFFYixrQ0FBa0M7OzJGQUc3QiwyQkFBMkI7a0JBeEJ2QyxTQUFTOytCQUNJLDRCQUE0QixjQUUxQixJQUFJLGFBQ0w7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGNBQWM7NEJBQ3ZCLFdBQVcsNkJBQTZCO3lCQUMzQztxQkFDSixXQUNRO3dCQUNMLDRCQUE0Qjt3QkFDNUIscUJBQXFCO3dCQUNyQix1QkFBdUI7d0JBQ3ZCLHlCQUF5Qjt3QkFDekIsdUJBQXVCO3dCQUN2QixPQUFPO3dCQUNQLHdCQUF3Qjt3QkFDeEIsZUFBZTt3QkFDZixhQUFhO3dCQUNiLGVBQWU7d0JBQ2Ysa0NBQWtDO3FCQUNyQzs4QkFJd0IsY0FBYztzQkFBdEMsWUFBWTt1QkFBQyxTQUFTO2dCQUdTLGNBQWM7c0JBQTdDLFNBQVM7dUJBQUMsbUJBQW1CO2dCQU05QixtQkFBbUI7c0JBRGxCLEtBQUs7Z0JBT04sVUFBVTtzQkFEVCxLQUFLO2dCQUtOLFVBQVU7c0JBRFQsS0FBSztnQkFPTixTQUFTO3NCQURSLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgUXVlcnlMaXN0LCBWaWV3Q2hpbGQsIFZpZXdDaGlsZHJlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXN5bmNPclN5bmNQaXBlLCBOdWxsYWJsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcblxuaW1wb3J0IHsgTmdDbGFzcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBPdmVyZmxvd0xpc3REaXJlY3RpdmUsIE92ZXJmbG93TGlzdEl0ZW1EaXJlY3RpdmUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvYnV0dG9uJztcbmltcG9ydCB7IEljb25Db21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvaWNvbic7XG5pbXBvcnQgeyBVTklRVUVfS0VZX1NFUEFSQVRPUiB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBGZERuREV2ZW50LCBJY29uQmFyRG5kQ29udGFpbmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9kbmQvaWNvbi1iYXItZG5kLWNvbnRhaW5lci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgSWNvbkJhckRuZEl0ZW1EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2RuZC9pY29uLWJhci1kbmQtaXRlbS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgSWNvbkJhckRuZExpc3REaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2RuZC9pY29uLWJhci1kbmQtbGlzdC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgSWNvblRhYkJhckl0ZW0gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2ljb24tdGFiLWJhci1pdGVtLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDbG9zYWJsZUljb25UYWJCYXIgfSBmcm9tICcuLi9jbG9zYWJsZS1pY29uLXRhYi1iYXIuY2xhc3MnO1xuaW1wb3J0IHsgSWNvblRhYkJhckJhc2UgfSBmcm9tICcuLi9pY29uLXRhYi1iYXItYmFzZS5jbGFzcyc7XG5pbXBvcnQgeyBUZXh0VHlwZVBvcG92ZXJDb21wb25lbnQgfSBmcm9tICcuLi9wb3BvdmVycy90ZXh0LXR5cGUtcG9wb3Zlci90ZXh0LXR5cGUtcG9wb3Zlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSWNvblRhYkJhclRleHRUeXBlVGFiSXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL3RleHQtdHlwZS10YWItaXRlbS9pY29uLXRhYi1iYXItdGV4dC10eXBlLXRhYi1pdGVtLmNvbXBvbmVudCc7XG5cbi8qKiBAaGlkZGVuICovXG5pbnRlcmZhY2UgRGF0YUZvclJlb3JkZXJpbmcge1xuICAgIGFycjogSWNvblRhYkJhckl0ZW1bXTtcbiAgICBpdGVtOiBJY29uVGFiQmFySXRlbTtcbiAgICBwYXJlbnRVaWQ6IHN0cmluZztcbn1cblxuLyoqIEBoaWRkZW4gKi9cbnR5cGUgVGFiSXRlbSA9IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+IHwgVGV4dFR5cGVQb3BvdmVyQ29tcG9uZW50O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZkcC1pY29uLXRhYi1iYXItdGV4dC10eXBlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaWNvbi10YWItYmFyLXRleHQtdHlwZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogSWNvblRhYkJhckJhc2UsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogSWNvblRhYkJhclRleHRUeXBlQ29tcG9uZW50XG4gICAgICAgIH1cbiAgICBdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgSWNvbkJhckRuZENvbnRhaW5lckRpcmVjdGl2ZSxcbiAgICAgICAgT3ZlcmZsb3dMaXN0RGlyZWN0aXZlLFxuICAgICAgICBJY29uQmFyRG5kTGlzdERpcmVjdGl2ZSxcbiAgICAgICAgT3ZlcmZsb3dMaXN0SXRlbURpcmVjdGl2ZSxcbiAgICAgICAgSWNvbkJhckRuZEl0ZW1EaXJlY3RpdmUsXG4gICAgICAgIE5nQ2xhc3MsXG4gICAgICAgIFRleHRUeXBlUG9wb3ZlckNvbXBvbmVudCxcbiAgICAgICAgQnV0dG9uQ29tcG9uZW50LFxuICAgICAgICBJY29uQ29tcG9uZW50LFxuICAgICAgICBBc3luY09yU3luY1BpcGUsXG4gICAgICAgIEljb25UYWJCYXJUZXh0VHlwZVRhYkl0ZW1Db21wb25lbnRcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIEljb25UYWJCYXJUZXh0VHlwZUNvbXBvbmVudCBleHRlbmRzIENsb3NhYmxlSWNvblRhYkJhciB7XG4gICAgLyoqIEBoaWRkZW4gbGlzdCBvZiB0YWIgaHRtbCBlbGVtZW50cywgdGhhdCBjYW4gcmVjZWl2ZSBmb2N1cyAqL1xuICAgIEBWaWV3Q2hpbGRyZW4oJ3RhYkl0ZW0nKSBfdGFiVUlFbGVtZW50czogUXVlcnlMaXN0PFRhYkl0ZW0+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkKCdleHRyYUl0ZW1zUG9wb3ZlcicpIF90YWJCYXJQb3BvdmVyOiBUZXh0VHlwZVBvcG92ZXJDb21wb25lbnQ7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gRGlzYWJsZSBvciBlbmFibGUgcmVvcmRlcmluZyhkcmFnIGFuZCBkcm9wKSBmZWF0dXJlLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZW5hYmxlVGFiUmVvcmRlcmluZyA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIExheW91dCB0eXBlIGZvciB0YWIuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBsYXlvdXRNb2RlOiAncm93JyB8ICdjb2x1bW4nO1xuXG4gICAgLyoqIFdoZXRoZXIgdG8gcmVuZGVyIGljb24gdGFiIGl0ZW0gYXMgbXVsdGktY2xpY2sgdmFyaWFudC4gKi9cbiAgICBASW5wdXQoKVxuICAgIG11bHRpQ2xpY2sgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBFbWl0cyB3aGVuIHVzZXIgZHJvcHMgdGhlIHRhYi5cbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICByZW9yZGVyZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEljb25UYWJCYXJJdGVtW10+KCk7XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQHBhcmFtIHNlbGVjdGVkSXRlbVxuICAgICAqL1xuICAgIF9zZWxlY3RFeHRyYUl0ZW0oc2VsZWN0ZWRJdGVtOiBJY29uVGFiQmFySXRlbSB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICAgICAgICAvLyBDaGVjayBpZiB0aGUgc2VsZWN0ZWQgaXRlbSBpcyBzdWJJdGVtXG4gICAgICAgIC8vIFRoZW4gdG8gZmluZCByb290IHRhYiwgYW5kIHBhc3MgaXQgdG8gdGhlIHBhcmVudCBtZXRob2QuXG4gICAgICAgIGlmIChzZWxlY3RlZEl0ZW0/LnVJZC5pbmNsdWRlcyhVTklRVUVfS0VZX1NFUEFSQVRPUikpIHtcbiAgICAgICAgICAgIGNvbnN0IHJvb3RUYWJVaWQgPSBzZWxlY3RlZEl0ZW0udUlkLnNwbGl0KFVOSVFVRV9LRVlfU0VQQVJBVE9SKVswXTtcbiAgICAgICAgICAgIHNlbGVjdGVkSXRlbSA9IHRoaXMudGFicy5maW5kKCh0YWIpID0+IHRhYi51SWQgPT09IHJvb3RUYWJVaWQpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghc2VsZWN0ZWRJdGVtKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgc3VwZXIuX3NlbGVjdEV4dHJhSXRlbShzZWxlY3RlZEl0ZW0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBAcGFyYW0gZHJhZ2dhYmxlSXRlbVxuICAgICAqIEBwYXJhbSB0YXJnZXRJdGVtXG4gICAgICogQHBhcmFtIGFjdGlvblxuICAgICAqL1xuICAgIF9vbkRyb3BwZWQoZXZlbnQ6IEZkRG5ERXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLl9jYW5Ecm9wKGV2ZW50KSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcmVwbGFjZWRQYXJzZWRVaWRBcnIgPSBldmVudC50YXJnZXRJdGVtLnVJZC5zcGxpdChVTklRVUVfS0VZX1NFUEFSQVRPUik7XG4gICAgICAgIHJlcGxhY2VkUGFyc2VkVWlkQXJyLmxlbmd0aCA9IHJlcGxhY2VkUGFyc2VkVWlkQXJyLmxlbmd0aCAtIDE7XG4gICAgICAgIGNvbnN0IGRyYWdnYWJsZVBhcnNlZFVpZEFyciA9IGV2ZW50LmRyYWdnYWJsZUl0ZW0udUlkLnNwbGl0KFVOSVFVRV9LRVlfU0VQQVJBVE9SKTtcbiAgICAgICAgZHJhZ2dhYmxlUGFyc2VkVWlkQXJyLmxlbmd0aCA9IGRyYWdnYWJsZVBhcnNlZFVpZEFyci5sZW5ndGggLSAxO1xuXG4gICAgICAgIGNvbnN0IHRhYkluZm9Gb3JOZXdMaXN0ID0gdGhpcy5fZ2V0VGFiSW5mb0Zyb21NYWluTGlzdChldmVudC50YXJnZXRJdGVtLnVJZCk7XG4gICAgICAgIGNvbnN0IHRhYkluZm9Gb3JQcmV2TGlzdCA9IHRoaXMuX2dldFRhYkluZm9Gcm9tTWFpbkxpc3QoZXZlbnQuZHJhZ2dhYmxlSXRlbS51SWQpO1xuXG4gICAgICAgIGlmICghdGFiSW5mb0Zvck5ld0xpc3QgfHwgIXRhYkluZm9Gb3JQcmV2TGlzdCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZGF0YUZvckFjdGlvbiA9IHtcbiAgICAgICAgICAgIHJlcGxhY2VkSXRlbUluZm86IHtcbiAgICAgICAgICAgICAgICBhcnI6IHRhYkluZm9Gb3JOZXdMaXN0LnBhcmVudCxcbiAgICAgICAgICAgICAgICBpdGVtOiB0YWJJbmZvRm9yTmV3TGlzdC50YWIsXG4gICAgICAgICAgICAgICAgcGFyZW50VWlkOiByZXBsYWNlZFBhcnNlZFVpZEFyci5sZW5ndGggPyByZXBsYWNlZFBhcnNlZFVpZEFyci5qb2luKFVOSVFVRV9LRVlfU0VQQVJBVE9SKSA6ICcnXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZHJhZ2dhYmxlSXRlbUluZm86IHtcbiAgICAgICAgICAgICAgICBhcnI6IHRhYkluZm9Gb3JQcmV2TGlzdC5wYXJlbnQsXG4gICAgICAgICAgICAgICAgaXRlbTogdGFiSW5mb0ZvclByZXZMaXN0LnRhYixcbiAgICAgICAgICAgICAgICBwYXJlbnRVaWQ6IGRyYWdnYWJsZVBhcnNlZFVpZEFyci5sZW5ndGggPyBkcmFnZ2FibGVQYXJzZWRVaWRBcnIuam9pbihVTklRVUVfS0VZX1NFUEFSQVRPUikgOiAnJ1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIGV2ZW50LmFjdGlvbiA9PT0gJ3JlcGxhY2UnID8gdGhpcy5fcmVwbGFjZUFzU2libGluZyhkYXRhRm9yQWN0aW9uKSA6IHRoaXMuX2luc2VydEl0ZW1Bc0NoaWxkKGRhdGFGb3JBY3Rpb24pO1xuXG4gICAgICAgIHRoaXMucmVvcmRlcmVkLmVtaXQodGhpcy50YWJzKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByb3RlY3RlZCBfZ2V0VGFiVUlFbGVtZW50Rm9jdXNhYmxlKHRhYlVJRWxlbWVudDogTnVsbGFibGU8VGFiSXRlbT4pOiBOdWxsYWJsZTxIVE1MRWxlbWVudD4ge1xuICAgICAgICBpZiAoIXRhYlVJRWxlbWVudCkge1xuICAgICAgICAgICAgcmV0dXJuIHRhYlVJRWxlbWVudDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIHRhYlVJRWxlbWVudCA9PT0gJ29iamVjdCcgJiYgJ25hdGl2ZUVsZW1lbnQnIGluIHRhYlVJRWxlbWVudCkge1xuICAgICAgICAgICAgcmV0dXJuIHRhYlVJRWxlbWVudC5uYXRpdmVFbGVtZW50O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0YWJVSUVsZW1lbnQuX2Ryb3Bkb3duVHJpZ2dlci5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfY2FuRHJvcChldmVudDogRmREbkRFdmVudCk6IGJvb2xlYW4ge1xuICAgICAgICBsZXQgcGFyZW50VUlkOiBOdWxsYWJsZTxzdHJpbmc+ID1cbiAgICAgICAgICAgIGV2ZW50LmFjdGlvbiA9PT0gJ3JlcGxhY2UnID8gZXZlbnQudGFyZ2V0SXRlbS5wYXJlbnRVSWQgOiBldmVudC50YXJnZXRJdGVtLnVJZDtcbiAgICAgICAgd2hpbGUgKHBhcmVudFVJZCkge1xuICAgICAgICAgICAgaWYgKHBhcmVudFVJZCA9PT0gZXZlbnQuZHJhZ2dhYmxlSXRlbS51SWQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBuZXh0U2VwYXJhdG9ySWR4ID0gcGFyZW50VUlkLmxhc3RJbmRleE9mKFVOSVFVRV9LRVlfU0VQQVJBVE9SKTtcblxuICAgICAgICAgICAgcGFyZW50VUlkID0gbmV4dFNlcGFyYXRvcklkeCA+IDAgPyBwYXJlbnRVSWQuc2xpY2UoMCwgbmV4dFNlcGFyYXRvcklkeCkgOiBudWxsO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBAcGFyYW0gZGF0YVxuICAgICAqIEBkZXNjcmlwdGlvbiBJbnNlcnQgdGFiIGludG8gYW5vdGhlciB0YWIuXG4gICAgICovXG4gICAgcHJpdmF0ZSBfaW5zZXJ0SXRlbUFzQ2hpbGQoZGF0YToge1xuICAgICAgICByZXBsYWNlZEl0ZW1JbmZvOiBEYXRhRm9yUmVvcmRlcmluZztcbiAgICAgICAgZHJhZ2dhYmxlSXRlbUluZm86IERhdGFGb3JSZW9yZGVyaW5nO1xuICAgIH0pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeyByZXBsYWNlZEl0ZW1JbmZvLCBkcmFnZ2FibGVJdGVtSW5mbyB9ID0gZGF0YTtcbiAgICAgICAgLy8gUmVtb3ZlIGRyYWdnYWJsZSB0YWIgZnJvbSBwcmV2aW91cyBsaXN0XG4gICAgICAgIGRyYWdnYWJsZUl0ZW1JbmZvLmFyci5zcGxpY2UoZHJhZ2dhYmxlSXRlbUluZm8uaXRlbS5pbmRleCwgMSk7XG4gICAgICAgIGlmICghcmVwbGFjZWRJdGVtSW5mby5pdGVtLnN1Ykl0ZW1zPy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJlcGxhY2VkSXRlbUluZm8uaXRlbS5zdWJJdGVtcyA9IFtdO1xuICAgICAgICB9XG4gICAgICAgIC8vIEFkZCB0YWIgdG8gc3ViaXRlbSBvZiB0aGUgdGFyZ2V0IHRhYlxuICAgICAgICByZXBsYWNlZEl0ZW1JbmZvLml0ZW0uc3ViSXRlbXMucHVzaChkcmFnZ2FibGVJdGVtSW5mby5pdGVtKTtcbiAgICAgICAgdGhpcy50YWJzID0gdGhpcy5fdXBkYXRlVGFicyh0aGlzLnRhYnMpO1xuICAgICAgICB0aGlzLl90cmlnZ2VyUmVjYWxjdWxhdGlvblZpc2libGVJdGVtcygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBAcGFyYW0gZGF0YVxuICAgICAqIEBkZXNjcmlwdGlvbiBJbnNlcnQgdGFiIGJldHdlZW4gdGFic1xuICAgICAqL1xuICAgIHByaXZhdGUgX3JlcGxhY2VBc1NpYmxpbmcoZGF0YToge1xuICAgICAgICByZXBsYWNlZEl0ZW1JbmZvOiBEYXRhRm9yUmVvcmRlcmluZztcbiAgICAgICAgZHJhZ2dhYmxlSXRlbUluZm86IERhdGFGb3JSZW9yZGVyaW5nO1xuICAgIH0pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeyByZXBsYWNlZEl0ZW1JbmZvLCBkcmFnZ2FibGVJdGVtSW5mbyB9ID0gZGF0YTtcbiAgICAgICAgZHJhZ2dhYmxlSXRlbUluZm8uYXJyLnNwbGljZShkcmFnZ2FibGVJdGVtSW5mby5pdGVtLmluZGV4LCAxKTtcbiAgICAgICAgY29uc3QgbmV3SW5kZXggPSByZXBsYWNlZEl0ZW1JbmZvPy5pdGVtPy5pbmRleCB8fCAwO1xuICAgICAgICByZXBsYWNlZEl0ZW1JbmZvLmFyci5zcGxpY2UobmV3SW5kZXgsIDAsIGRyYWdnYWJsZUl0ZW1JbmZvLml0ZW0pO1xuICAgICAgICB0aGlzLnRhYnMgPSB0aGlzLl91cGRhdGVUYWJzKHRoaXMudGFicyk7XG4gICAgICAgIHRoaXMuX3RyaWdnZXJSZWNhbGN1bGF0aW9uVmlzaWJsZUl0ZW1zKCk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciBmZHBJY29uQmFyRG5kQ29udGFpbmVyIFtkcmFnZ2FibGVdPVwiZW5hYmxlVGFiUmVvcmRlcmluZ1wiIChkcm9wcGVkKT1cIl9vbkRyb3BwZWQoJGV2ZW50KVwiPlxuICAgIDx1bFxuICAgICAgICBjbGFzcz1cImZkLWljb24tdGFiLWJhcl9faGVhZGVyXCJcbiAgICAgICAgW2NsYXNzLmZkLWR5bmFtaWMtcGFnZV9fdGFic109XCJfaW5EeW5hbWljUGFnZVwiXG4gICAgICAgIHJvbGU9XCJ0YWJsaXN0XCJcbiAgICAgICAgI3RhYmxpc3RcbiAgICAgICAgZmRrT3ZlcmZsb3dMaXN0XG4gICAgICAgIFtpc1J0bF09XCJpc1J0bFwiXG4gICAgICAgIFtvdmVyZmxvd09mZnNldF09XCIxMDBcIlxuICAgICAgICBmZHBJY29uQmFyRG5kTGlzdFxuICAgICAgICBkbmRPcmllbnRhdGlvbj1cImhvcml6b250YWxcIlxuICAgICAgICAob3ZlcmZsb3dDaGFuZ2VkKT1cIl9yZWNhbGN1bGF0ZVZpc2libGVJdGVtcygkZXZlbnQpXCJcbiAgICA+XG4gICAgICAgIEBmb3IgKGl0ZW0gb2YgdGFiczsgdHJhY2sgaXRlbS51SWQ7IGxldCBpZHggPSAkaW5kZXgpIHtcbiAgICAgICAgICAgIDxsaVxuICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIml0ZW0uY3NzQ2xhc3Nlc1wiXG4gICAgICAgICAgICAgICAgW2NsYXNzLmZkLWljb24tdGFiLWJhcl9faXRlbS0tbXVsdGktY2xpY2tdPVwibXVsdGlDbGljayAmJiBpdGVtLnN1Ykl0ZW1zPy5sZW5ndGhcIlxuICAgICAgICAgICAgICAgIGZka092ZXJmbG93TGlzdEl0ZW1cbiAgICAgICAgICAgICAgICBmZHBJY29uQmFyRG5kSXRlbVxuICAgICAgICAgICAgICAgIFtkbmRTZXBhcmF0b3JDbGFzc109XCJbJ2ZkLWljb24tdGFiLWJhcl9faXRlbS0tZG5kLXNlcGFyYXRvciddXCJcbiAgICAgICAgICAgICAgICBbZG5kSXRlbURhdGFdPVwiaXRlbVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmZC1pY29uLXRhYi1iYXJfX2l0ZW1cIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5mZC1pY29uLXRhYi1iYXJfX2l0ZW0tLWNsb3NhYmxlXT1cIml0ZW0uY2xvc2FibGVcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtaGlkZGVuXT1cIml0ZW0uaGlkZGVuXCJcbiAgICAgICAgICAgICAgICByb2xlPVwicHJlc2VudGF0aW9uXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICBAaWYgKCFpdGVtLnN1Ykl0ZW1zPy5sZW5ndGggJiYgIW11bHRpQ2xpY2spIHtcbiAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgICN0YWJJdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICBmZHAtaWNvbi10YWItYmFyLXRleHQtdHlwZS10YWItaXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgW2l0ZW1dPVwiaXRlbVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGF5b3V0TW9kZV09XCJsYXlvdXRNb2RlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xvckFzc29jaWF0aW9uc109XCJjb2xvckFzc29jaWF0aW9ucygpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnRhYmluZGV4XT1cImlkeCA9PT0gMCA/IDAgOiAtMVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLXNlbGVjdGVkXT1cIml0ZW0udUlkID09PSBzZWxlY3RlZFVpZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiX3NlbGVjdEl0ZW0oaXRlbSwgJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoa2V5ZG93bik9XCJfa2V5RG93bkhhbmRsZXIoJGV2ZW50LCBpdGVtLCBpZHgpXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5zdWJJdGVtcz8ubGVuZ3RoIHx8IG11bHRpQ2xpY2spIHtcbiAgICAgICAgICAgICAgICAgICAgPGZkcC10ZXh0LXR5cGUtcG9wb3ZlclxuICAgICAgICAgICAgICAgICAgICAgICAgI3RhYkl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgICNpdGVtUG9wb3ZlclxuICAgICAgICAgICAgICAgICAgICAgICAgW3RhYmluZGV4XT1cImlkeCA9PT0gMCA/IDAgOiAtMVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGFyZW50VGFiXT1cIml0ZW1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2xheW91dE1vZGVdPVwibGF5b3V0TW9kZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbXVsdGlDbGlja109XCJtdWx0aUNsaWNrXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzZWxlY3RlZFN1Ykl0ZW1VaWRdPVwic2VsZWN0ZWRVaWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbG9yQXNzb2NpYXRpb25zXT1cImNvbG9yQXNzb2NpYXRpb25zKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKHNlbGVjdGVkU3ViSXRlbSk9XCJfc2VsZWN0SXRlbSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChrZXlkb3duKT1cIl9rZXlEb3duSGFuZGxlcigkZXZlbnQsIGl0ZW0sIGlkeCwgaXRlbVBvcG92ZXIpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbG9zZVRhYik9XCJfY2xvc2VUYWIoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoc2VsZWN0ZWRJdGVtKT1cIl9zZWxlY3RJdGVtKGl0ZW0pXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8L2ZkcC10ZXh0LXR5cGUtcG9wb3Zlcj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmIChpdGVtLmNsb3NhYmxlKSB7XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmZC1pY29uLXRhYi1iYXJfX2J1dHRvbi1jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZkLWljb24tdGFiLWJhcl9fYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZFR5cGU9XCJ0cmFuc3BhcmVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIl9jbG9zZVRhYihpdGVtLnVJZClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1pY29uIGdseXBoPVwiZGVjbGluZVwiPjwvZmQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2xpPlxuICAgICAgICB9XG4gICAgICAgIEBpZiAoX2V4dHJhSXRlbXMkKCkpIHtcbiAgICAgICAgICAgIDxsaSByb2xlPVwicHJlc2VudGF0aW9uXCIgY2xhc3M9XCJmZC1pY29uLXRhYi1iYXJfX2l0ZW0gZmQtaWNvbi10YWItYmFyX19pdGVtLS1vdmVyZmxvd1wiPlxuICAgICAgICAgICAgICAgIDxmZHAtdGV4dC10eXBlLXBvcG92ZXJcbiAgICAgICAgICAgICAgICAgICAgI2V4dHJhSXRlbXNQb3BvdmVyXG4gICAgICAgICAgICAgICAgICAgIFtpc1J0bF09XCJpc1J0bFwiXG4gICAgICAgICAgICAgICAgICAgIFtleHRyYVRhYnNdPVwiX2V4dHJhVGFicyQoKVwiXG4gICAgICAgICAgICAgICAgICAgIFtpc0V4dHJhSXRlbXNNb2RlXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICBbY29sb3JBc3NvY2lhdGlvbnNdPVwiY29sb3JBc3NvY2lhdGlvbnMoKVwiXG4gICAgICAgICAgICAgICAgICAgIChzZWxlY3RlZEV4dHJhSXRlbSk9XCJfc2VsZWN0RXh0cmFJdGVtKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAoZm9jdXNGaXJzdFZpc2libGVJdGVtKT1cIl9mb2N1c0l0ZW0oMClcIlxuICAgICAgICAgICAgICAgICAgICAoZm9jdXNMYXN0VmlzaWJsZUl0ZW0pPVwiX2ZvY3VzSXRlbShfbGFzdFZpc2libGVUYWJJbmRleClcIlxuICAgICAgICAgICAgICAgICAgICAoY2xvc2VUYWIpPVwiX2Nsb3NlVGFiKCRldmVudCwgdHJ1ZSlcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8L2ZkcC10ZXh0LXR5cGUtcG9wb3Zlcj5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgIH1cbiAgICA8L3VsPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
176
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi10YWItYmFyLXRleHQtdHlwZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2ljb24tdGFiLWJhci9jb21wb25lbnRzL2ljb24tdGFiLWJhci10ZXh0LXR5cGUvaWNvbi10YWItYmFyLXRleHQtdHlwZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2ljb24tdGFiLWJhci9jb21wb25lbnRzL2ljb24tdGFiLWJhci10ZXh0LXR5cGUvaWNvbi10YWItYmFyLXRleHQtdHlwZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZILE9BQU8sRUFBRSxlQUFlLEVBQVksTUFBTSw0QkFBNEIsQ0FBQztBQUV2RSxPQUFPLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLHlCQUF5QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RCxPQUFPLEVBQWMsNEJBQTRCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUNqSCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUMzRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUUzRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUs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LElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxpQ0FBaUMsRUFBRSxDQUFDO0lBQzdDLENBQUM7OEdBckpRLDJCQUEyQjtrR0FBM0IsMkJBQTJCLDBOQXJCekI7WUFDUDtnQkFDSSxPQUFPLEVBQUUsY0FBYztnQkFDdkIsV0FBVyxFQUFFLDJCQUEyQjthQUMzQztTQUNKLHFQQ3BDTCxvaUlBMEZBLDRDRHBEUSw0QkFBNEIsZ0pBQzVCLHFCQUFxQixzSkFDckIsdUJBQXVCLHNJQUN2Qix5QkFBeUIsa0VBQ3pCLHVCQUF1QiwwS0FDdkIsT0FBTyxvRkFDUCx3QkFBd0IseU5BQ3hCLGVBQWUseUlBQ2YsYUFBYSwwSUFFYixrQ0FBa0M7OzJGQUk3QiwyQkFBMkI7a0JBekJ2QyxTQUFTOytCQUNJLDRCQUE0QixjQUUxQixJQUFJLGFBQ0w7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGNBQWM7NEJBQ3ZCLFdBQVcsNkJBQTZCO3lCQUMzQztxQkFDSixXQUNRO3dCQUNMLDRCQUE0Qjt3QkFDNUIscUJBQXFCO3dCQUNyQix1QkFBdUI7d0JBQ3ZCLHlCQUF5Qjt3QkFDekIsdUJBQXVCO3dCQUN2QixPQUFPO3dCQUNQLHdCQUF3Qjt3QkFDeEIsZUFBZTt3QkFDZixhQUFhO3dCQUNiLGVBQWU7d0JBQ2Ysa0NBQWtDO3dCQUNsQyxnQkFBZ0I7cUJBQ25COzhCQUl3QixjQUFjO3NCQUF0QyxZQUFZO3VCQUFDLFNBQVM7Z0JBR1MsY0FBYztzQkFBN0MsU0FBUzt1QkFBQyxtQkFBbUI7Z0JBTTlCLG1CQUFtQjtzQkFEbEIsS0FBSztnQkFPTixVQUFVO3NCQURULEtBQUs7Z0JBS04sVUFBVTtzQkFEVCxLQUFLO2dCQU9OLFNBQVM7c0JBRFIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBRdWVyeUxpc3QsIFZpZXdDaGlsZCwgVmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBc3luY09yU3luY1BpcGUsIE51bGxhYmxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuXG5pbXBvcnQgeyBOZ0NsYXNzLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE92ZXJmbG93TGlzdERpcmVjdGl2ZSwgT3ZlcmZsb3dMaXN0SXRlbURpcmVjdGl2ZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9idXR0b24nO1xuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9pY29uJztcbmltcG9ydCB7IFVOSVFVRV9LRVlfU0VQQVJBVE9SIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IEZkRG5ERXZlbnQsIEljb25CYXJEbmRDb250YWluZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2RuZC9pY29uLWJhci1kbmQtY29udGFpbmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBJY29uQmFyRG5kSXRlbURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvZG5kL2ljb24tYmFyLWRuZC1pdGVtLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBJY29uQmFyRG5kTGlzdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvZG5kL2ljb24tYmFyLWRuZC1saXN0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBJY29uVGFiQmFySXRlbSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvaWNvbi10YWItYmFyLWl0ZW0uaW50ZXJmYWNlJztcbmltcG9ydCB7IENsb3NhYmxlSWNvblRhYkJhciB9IGZyb20gJy4uL2Nsb3NhYmxlLWljb24tdGFiLWJhci5jbGFzcyc7XG5pbXBvcnQgeyBJY29uVGFiQmFyQmFzZSB9IGZyb20gJy4uL2ljb24tdGFiLWJhci1iYXNlLmNsYXNzJztcbmltcG9ydCB7IFRleHRUeXBlUG9wb3ZlckNvbXBvbmVudCB9IGZyb20gJy4uL3BvcG92ZXJzL3RleHQtdHlwZS1wb3BvdmVyL3RleHQtdHlwZS1wb3BvdmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJY29uVGFiQmFyVGV4dFR5cGVUYWJJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vdGV4dC10eXBlLXRhYi1pdGVtL2ljb24tdGFiLWJhci10ZXh0LXR5cGUtdGFiLWl0ZW0uY29tcG9uZW50JztcblxuLyoqIEBoaWRkZW4gKi9cbmludGVyZmFjZSBEYXRhRm9yUmVvcmRlcmluZyB7XG4gICAgYXJyOiBJY29uVGFiQmFySXRlbVtdO1xuICAgIGl0ZW06IEljb25UYWJCYXJJdGVtO1xuICAgIHBhcmVudFVpZDogc3RyaW5nO1xufVxuXG4vKiogQGhpZGRlbiAqL1xudHlwZSBUYWJJdGVtID0gRWxlbWVudFJlZjxIVE1MRWxlbWVudD4gfCBUZXh0VHlwZVBvcG92ZXJDb21wb25lbnQ7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmRwLWljb24tdGFiLWJhci10ZXh0LXR5cGUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9pY29uLXRhYi1iYXItdGV4dC10eXBlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBJY29uVGFiQmFyQmFzZSxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBJY29uVGFiQmFyVGV4dFR5cGVDb21wb25lbnRcbiAgICAgICAgfVxuICAgIF0sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBJY29uQmFyRG5kQ29udGFpbmVyRGlyZWN0aXZlLFxuICAgICAgICBPdmVyZmxvd0xpc3REaXJlY3RpdmUsXG4gICAgICAgIEljb25CYXJEbmRMaXN0RGlyZWN0aXZlLFxuICAgICAgICBPdmVyZmxvd0xpc3RJdGVtRGlyZWN0aXZlLFxuICAgICAgICBJY29uQmFyRG5kSXRlbURpcmVjdGl2ZSxcbiAgICAgICAgTmdDbGFzcyxcbiAgICAgICAgVGV4dFR5cGVQb3BvdmVyQ29tcG9uZW50LFxuICAgICAgICBCdXR0b25Db21wb25lbnQsXG4gICAgICAgIEljb25Db21wb25lbnQsXG4gICAgICAgIEFzeW5jT3JTeW5jUGlwZSxcbiAgICAgICAgSWNvblRhYkJhclRleHRUeXBlVGFiSXRlbUNvbXBvbmVudCxcbiAgICAgICAgTmdUZW1wbGF0ZU91dGxldFxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgSWNvblRhYkJhclRleHRUeXBlQ29tcG9uZW50IGV4dGVuZHMgQ2xvc2FibGVJY29uVGFiQmFyIHtcbiAgICAvKiogQGhpZGRlbiBsaXN0IG9mIHRhYiBodG1sIGVsZW1lbnRzLCB0aGF0IGNhbiByZWNlaXZlIGZvY3VzICovXG4gICAgQFZpZXdDaGlsZHJlbigndGFiSXRlbScpIF90YWJVSUVsZW1lbnRzOiBRdWVyeUxpc3Q8VGFiSXRlbT47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoJ2V4dHJhSXRlbXNQb3BvdmVyJykgX3RhYkJhclBvcG92ZXI6IFRleHRUeXBlUG9wb3ZlckNvbXBvbmVudDtcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBEaXNhYmxlIG9yIGVuYWJsZSByZW9yZGVyaW5nKGRyYWcgYW5kIGRyb3ApIGZlYXR1cmUuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBlbmFibGVUYWJSZW9yZGVyaW5nID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gTGF5b3V0IHR5cGUgZm9yIHRhYi5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGxheW91dE1vZGU6ICdyb3cnIHwgJ2NvbHVtbic7XG5cbiAgICAvKiogV2hldGhlciB0byByZW5kZXIgaWNvbiB0YWIgaXRlbSBhcyBtdWx0aS1jbGljayB2YXJpYW50LiAqL1xuICAgIEBJbnB1dCgpXG4gICAgbXVsdGlDbGljayA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIEVtaXRzIHdoZW4gdXNlciBkcm9wcyB0aGUgdGFiLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHJlb3JkZXJlZCA9IG5ldyBFdmVudEVtaXR0ZXI8SWNvblRhYkJhckl0ZW1bXT4oKTtcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBAcGFyYW0gc2VsZWN0ZWRJdGVtXG4gICAgICovXG4gICAgX3NlbGVjdEV4dHJhSXRlbShzZWxlY3RlZEl0ZW06IEljb25UYWJCYXJJdGVtIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgICAgIC8vIENoZWNrIGlmIHRoZSBzZWxlY3RlZCBpdGVtIGlzIHN1Ykl0ZW1cbiAgICAgICAgLy8gVGhlbiB0byBmaW5kIHJvb3QgdGFiLCBhbmQgcGFzcyBpdCB0byB0aGUgcGFyZW50IG1ldGhvZC5cbiAgICAgICAgaWYgKHNlbGVjdGVkSXRlbT8udUlkLmluY2x1ZGVzKFVOSVFVRV9LRVlfU0VQQVJBVE9SKSkge1xuICAgICAgICAgICAgY29uc3Qgcm9vdFRhYlVpZCA9IHNlbGVjdGVkSXRlbS51SWQuc3BsaXQoVU5JUVVFX0tFWV9TRVBBUkFUT1IpWzBdO1xuICAgICAgICAgICAgc2VsZWN0ZWRJdGVtID0gdGhpcy50YWJzLmZpbmQoKHRhYikgPT4gdGFiLnVJZCA9PT0gcm9vdFRhYlVpZCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFzZWxlY3RlZEl0ZW0pIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBzdXBlci5fc2VsZWN0RXh0cmFJdGVtKHNlbGVjdGVkSXRlbSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEBwYXJhbSBkcmFnZ2FibGVJdGVtXG4gICAgICogQHBhcmFtIHRhcmdldEl0ZW1cbiAgICAgKiBAcGFyYW0gYWN0aW9uXG4gICAgICovXG4gICAgX29uRHJvcHBlZChldmVudDogRmREbkRFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuX2NhbkRyb3AoZXZlbnQpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCByZXBsYWNlZFBhcnNlZFVpZEFyciA9IGV2ZW50LnRhcmdldEl0ZW0udUlkLnNwbGl0KFVOSVFVRV9LRVlfU0VQQVJBVE9SKTtcbiAgICAgICAgcmVwbGFjZWRQYXJzZWRVaWRBcnIubGVuZ3RoID0gcmVwbGFjZWRQYXJzZWRVaWRBcnIubGVuZ3RoIC0gMTtcbiAgICAgICAgY29uc3QgZHJhZ2dhYmxlUGFyc2VkVWlkQXJyID0gZXZlbnQuZHJhZ2dhYmxlSXRlbS51SWQuc3BsaXQoVU5JUVVFX0tFWV9TRVBBUkFUT1IpO1xuICAgICAgICBkcmFnZ2FibGVQYXJzZWRVaWRBcnIubGVuZ3RoID0gZHJhZ2dhYmxlUGFyc2VkVWlkQXJyLmxlbmd0aCAtIDE7XG5cbiAgICAgICAgY29uc3QgdGFiSW5mb0Zvck5ld0xpc3QgPSB0aGlzLl9nZXRUYWJJbmZvRnJvbU1haW5MaXN0KGV2ZW50LnRhcmdldEl0ZW0udUlkKTtcbiAgICAgICAgY29uc3QgdGFiSW5mb0ZvclByZXZMaXN0ID0gdGhpcy5fZ2V0VGFiSW5mb0Zyb21NYWluTGlzdChldmVudC5kcmFnZ2FibGVJdGVtLnVJZCk7XG5cbiAgICAgICAgaWYgKCF0YWJJbmZvRm9yTmV3TGlzdCB8fCAhdGFiSW5mb0ZvclByZXZMaXN0KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBkYXRhRm9yQWN0aW9uID0ge1xuICAgICAgICAgICAgcmVwbGFjZWRJdGVtSW5mbzoge1xuICAgICAgICAgICAgICAgIGFycjogdGFiSW5mb0Zvck5ld0xpc3QucGFyZW50LFxuICAgICAgICAgICAgICAgIGl0ZW06IHRhYkluZm9Gb3JOZXdMaXN0LnRhYixcbiAgICAgICAgICAgICAgICBwYXJlbnRVaWQ6IHJlcGxhY2VkUGFyc2VkVWlkQXJyLmxlbmd0aCA/IHJlcGxhY2VkUGFyc2VkVWlkQXJyLmpvaW4oVU5JUVVFX0tFWV9TRVBBUkFUT1IpIDogJydcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBkcmFnZ2FibGVJdGVtSW5mbzoge1xuICAgICAgICAgICAgICAgIGFycjogdGFiSW5mb0ZvclByZXZMaXN0LnBhcmVudCxcbiAgICAgICAgICAgICAgICBpdGVtOiB0YWJJbmZvRm9yUHJldkxpc3QudGFiLFxuICAgICAgICAgICAgICAgIHBhcmVudFVpZDogZHJhZ2dhYmxlUGFyc2VkVWlkQXJyLmxlbmd0aCA/IGRyYWdnYWJsZVBhcnNlZFVpZEFyci5qb2luKFVOSVFVRV9LRVlfU0VQQVJBVE9SKSA6ICcnXG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG5cbiAgICAgICAgZXZlbnQuYWN0aW9uID09PSAncmVwbGFjZScgPyB0aGlzLl9yZXBsYWNlQXNTaWJsaW5nKGRhdGFGb3JBY3Rpb24pIDogdGhpcy5faW5zZXJ0SXRlbUFzQ2hpbGQoZGF0YUZvckFjdGlvbik7XG5cbiAgICAgICAgdGhpcy5yZW9yZGVyZWQuZW1pdCh0aGlzLnRhYnMpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJvdGVjdGVkIF9nZXRUYWJVSUVsZW1lbnRGb2N1c2FibGUodGFiVUlFbGVtZW50OiBOdWxsYWJsZTxUYWJJdGVtPik6IE51bGxhYmxlPEhUTUxFbGVtZW50PiB7XG4gICAgICAgIGlmICghdGFiVUlFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm4gdGFiVUlFbGVtZW50O1xuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlb2YgdGFiVUlFbGVtZW50ID09PSAnb2JqZWN0JyAmJiAnbmF0aXZlRWxlbWVudCcgaW4gdGFiVUlFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm4gdGFiVUlFbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRhYlVJRWxlbWVudC5fZHJvcGRvd25UcmlnZ2VyLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jYW5Ecm9wKGV2ZW50OiBGZERuREV2ZW50KTogYm9vbGVhbiB7XG4gICAgICAgIGxldCBwYXJlbnRVSWQ6IE51bGxhYmxlPHN0cmluZz4gPVxuICAgICAgICAgICAgZXZlbnQuYWN0aW9uID09PSAncmVwbGFjZScgPyBldmVudC50YXJnZXRJdGVtLnBhcmVudFVJZCA6IGV2ZW50LnRhcmdldEl0ZW0udUlkO1xuICAgICAgICB3aGlsZSAocGFyZW50VUlkKSB7XG4gICAgICAgICAgICBpZiAocGFyZW50VUlkID09PSBldmVudC5kcmFnZ2FibGVJdGVtLnVJZCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IG5leHRTZXBhcmF0b3JJZHggPSBwYXJlbnRVSWQubGFzdEluZGV4T2YoVU5JUVVFX0tFWV9TRVBBUkFUT1IpO1xuXG4gICAgICAgICAgICBwYXJlbnRVSWQgPSBuZXh0U2VwYXJhdG9ySWR4ID4gMCA/IHBhcmVudFVJZC5zbGljZSgwLCBuZXh0U2VwYXJhdG9ySWR4KSA6IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEBwYXJhbSBkYXRhXG4gICAgICogQGRlc2NyaXB0aW9uIEluc2VydCB0YWIgaW50byBhbm90aGVyIHRhYi5cbiAgICAgKi9cbiAgICBwcml2YXRlIF9pbnNlcnRJdGVtQXNDaGlsZChkYXRhOiB7XG4gICAgICAgIHJlcGxhY2VkSXRlbUluZm86IERhdGFGb3JSZW9yZGVyaW5nO1xuICAgICAgICBkcmFnZ2FibGVJdGVtSW5mbzogRGF0YUZvclJlb3JkZXJpbmc7XG4gICAgfSk6IHZvaWQge1xuICAgICAgICBjb25zdCB7IHJlcGxhY2VkSXRlbUluZm8sIGRyYWdnYWJsZUl0ZW1JbmZvIH0gPSBkYXRhO1xuICAgICAgICAvLyBSZW1vdmUgZHJhZ2dhYmxlIHRhYiBmcm9tIHByZXZpb3VzIGxpc3RcbiAgICAgICAgZHJhZ2dhYmxlSXRlbUluZm8uYXJyLnNwbGljZShkcmFnZ2FibGVJdGVtSW5mby5pdGVtLmluZGV4LCAxKTtcbiAgICAgICAgaWYgKCFyZXBsYWNlZEl0ZW1JbmZvLml0ZW0uc3ViSXRlbXM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgcmVwbGFjZWRJdGVtSW5mby5pdGVtLnN1Ykl0ZW1zID0gW107XG4gICAgICAgIH1cbiAgICAgICAgLy8gQWRkIHRhYiB0byBzdWJpdGVtIG9mIHRoZSB0YXJnZXQgdGFiXG4gICAgICAgIHJlcGxhY2VkSXRlbUluZm8uaXRlbS5zdWJJdGVtcy5wdXNoKGRyYWdnYWJsZUl0ZW1JbmZvLml0ZW0pO1xuICAgICAgICB0aGlzLnRhYnMgPSB0aGlzLl91cGRhdGVUYWJzKHRoaXMudGFicyk7XG4gICAgICAgIHRoaXMuX3RyaWdnZXJSZWNhbGN1bGF0aW9uVmlzaWJsZUl0ZW1zKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEBwYXJhbSBkYXRhXG4gICAgICogQGRlc2NyaXB0aW9uIEluc2VydCB0YWIgYmV0d2VlbiB0YWJzXG4gICAgICovXG4gICAgcHJpdmF0ZSBfcmVwbGFjZUFzU2libGluZyhkYXRhOiB7XG4gICAgICAgIHJlcGxhY2VkSXRlbUluZm86IERhdGFGb3JSZW9yZGVyaW5nO1xuICAgICAgICBkcmFnZ2FibGVJdGVtSW5mbzogRGF0YUZvclJlb3JkZXJpbmc7XG4gICAgfSk6IHZvaWQge1xuICAgICAgICBjb25zdCB7IHJlcGxhY2VkSXRlbUluZm8sIGRyYWdnYWJsZUl0ZW1JbmZvIH0gPSBkYXRhO1xuICAgICAgICBkcmFnZ2FibGVJdGVtSW5mby5hcnIuc3BsaWNlKGRyYWdnYWJsZUl0ZW1JbmZvLml0ZW0uaW5kZXgsIDEpO1xuICAgICAgICBjb25zdCBuZXdJbmRleCA9IHJlcGxhY2VkSXRlbUluZm8/Lml0ZW0/LmluZGV4IHx8IDA7XG4gICAgICAgIHJlcGxhY2VkSXRlbUluZm8uYXJyLnNwbGljZShuZXdJbmRleCwgMCwgZHJhZ2dhYmxlSXRlbUluZm8uaXRlbSk7XG4gICAgICAgIHRoaXMudGFicyA9IHRoaXMuX3VwZGF0ZVRhYnModGhpcy50YWJzKTtcbiAgICAgICAgdGhpcy5fdHJpZ2dlclJlY2FsY3VsYXRpb25WaXNpYmxlSXRlbXMoKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyIGZkcEljb25CYXJEbmRDb250YWluZXIgW2RyYWdnYWJsZV09XCJlbmFibGVUYWJSZW9yZGVyaW5nXCIgKGRyb3BwZWQpPVwiX29uRHJvcHBlZCgkZXZlbnQpXCI+XG4gICAgPHVsXG4gICAgICAgIGNsYXNzPVwiZmQtaWNvbi10YWItYmFyX19oZWFkZXJcIlxuICAgICAgICBbY2xhc3MuZmQtZHluYW1pYy1wYWdlX190YWJzXT1cIl9pbkR5bmFtaWNQYWdlXCJcbiAgICAgICAgcm9sZT1cInRhYmxpc3RcIlxuICAgICAgICAjdGFibGlzdFxuICAgICAgICBmZGtPdmVyZmxvd0xpc3RcbiAgICAgICAgW2lzUnRsXT1cImlzUnRsXCJcbiAgICAgICAgW292ZXJmbG93T2Zmc2V0XT1cIjEwMFwiXG4gICAgICAgIGZkcEljb25CYXJEbmRMaXN0XG4gICAgICAgIGRuZE9yaWVudGF0aW9uPVwiaG9yaXpvbnRhbFwiXG4gICAgICAgIChvdmVyZmxvd0NoYW5nZWQpPVwiX3JlY2FsY3VsYXRlVmlzaWJsZUl0ZW1zKCRldmVudClcIlxuICAgID5cbiAgICAgICAgQGZvciAoaXRlbSBvZiB0YWJzOyB0cmFjayBpdGVtLnVJZDsgbGV0IGlkeCA9ICRpbmRleCkge1xuICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiaXRlbS5jc3NDbGFzc2VzXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuZmQtaWNvbi10YWItYmFyX19pdGVtLS1tdWx0aS1jbGlja109XCJtdWx0aUNsaWNrICYmIGl0ZW0uc3ViSXRlbXM/Lmxlbmd0aFwiXG4gICAgICAgICAgICAgICAgZmRrT3ZlcmZsb3dMaXN0SXRlbVxuICAgICAgICAgICAgICAgIGZkcEljb25CYXJEbmRJdGVtXG4gICAgICAgICAgICAgICAgW2RuZFNlcGFyYXRvckNsYXNzXT1cIlsnZmQtaWNvbi10YWItYmFyX19pdGVtLS1kbmQtc2VwYXJhdG9yJ11cIlxuICAgICAgICAgICAgICAgIFtkbmRJdGVtRGF0YV09XCJpdGVtXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImZkLWljb24tdGFiLWJhcl9faXRlbVwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLmZkLWljb24tdGFiLWJhcl9faXRlbS0tY2xvc2FibGVdPVwiaXRlbS5jbG9zYWJsZVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1oaWRkZW5dPVwiaXRlbS5oaWRkZW5cIlxuICAgICAgICAgICAgICAgIHJvbGU9XCJwcmVzZW50YXRpb25cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIEBpZiAoIWl0ZW0uc3ViSXRlbXM/Lmxlbmd0aCAmJiAhbXVsdGlDbGljaykge1xuICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgI3RhYkl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgIGZkcC1pY29uLXRhYi1iYXItdGV4dC10eXBlLXRhYi1pdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICBbaXRlbV09XCJpdGVtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsYXlvdXRNb2RlXT1cImxheW91dE1vZGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbG9yQXNzb2NpYXRpb25zXT1cImNvbG9yQXNzb2NpYXRpb25zKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIudGFiaW5kZXhdPVwiaWR4ID09PSAwID8gMCA6IC0xXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtc2VsZWN0ZWRdPVwiaXRlbS51SWQgPT09IHNlbGVjdGVkVWlkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJfc2VsZWN0SXRlbShpdGVtLCAkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChrZXlkb3duKT1cIl9rZXlEb3duSGFuZGxlcigkZXZlbnQsIGl0ZW0sIGlkeClcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmIChpdGVtLnN1Ykl0ZW1zPy5sZW5ndGggfHwgbXVsdGlDbGljaykge1xuICAgICAgICAgICAgICAgICAgICA8ZmRwLXRleHQtdHlwZS1wb3BvdmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAjdGFiSXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgI2l0ZW1Qb3BvdmVyXG4gICAgICAgICAgICAgICAgICAgICAgICBbdGFiaW5kZXhdPVwiaWR4ID09PSAwID8gMCA6IC0xXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwYXJlbnRUYWJdPVwiaXRlbVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGF5b3V0TW9kZV09XCJsYXlvdXRNb2RlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFttdWx0aUNsaWNrXT1cIm11bHRpQ2xpY2tcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3NlbGVjdGVkU3ViSXRlbVVpZF09XCJzZWxlY3RlZFVpZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sb3JBc3NvY2lhdGlvbnNdPVwiY29sb3JBc3NvY2lhdGlvbnMoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoc2VsZWN0ZWRTdWJJdGVtKT1cIl9zZWxlY3RJdGVtKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGtleWRvd24pPVwiX2tleURvd25IYW5kbGVyKCRldmVudCwgaXRlbSwgaWR4LCBpdGVtUG9wb3ZlcilcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsb3NlVGFiKT1cIl9jbG9zZVRhYigkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChzZWxlY3RlZEl0ZW0pPVwiX3NlbGVjdEl0ZW0oaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvZmRwLXRleHQtdHlwZS1wb3BvdmVyPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaWYgKGl0ZW0uY2xvc2FibGUpIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZkLWljb24tdGFiLWJhcl9fYnV0dG9uLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmQtaWNvbi10YWItYmFyX19idXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkVHlwZT1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiX2Nsb3NlVGFiKGl0ZW0udUlkKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLWljb24gZ2x5cGg9XCJkZWNsaW5lXCI+PC9mZC1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgIH1cbiAgICAgICAgQGlmIChfZXh0cmFJdGVtcyQoKSkge1xuICAgICAgICAgICAgPGxpIHJvbGU9XCJwcmVzZW50YXRpb25cIiBjbGFzcz1cImZkLWljb24tdGFiLWJhcl9faXRlbSBmZC1pY29uLXRhYi1iYXJfX2l0ZW0tLW92ZXJmbG93XCI+XG4gICAgICAgICAgICAgICAgPGZkcC10ZXh0LXR5cGUtcG9wb3ZlclxuICAgICAgICAgICAgICAgICAgICAjZXh0cmFJdGVtc1BvcG92ZXJcbiAgICAgICAgICAgICAgICAgICAgW2lzUnRsXT1cImlzUnRsXCJcbiAgICAgICAgICAgICAgICAgICAgW2V4dHJhVGFic109XCJfZXh0cmFUYWJzJCgpXCJcbiAgICAgICAgICAgICAgICAgICAgW2lzRXh0cmFJdGVtc01vZGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtjb2xvckFzc29jaWF0aW9uc109XCJjb2xvckFzc29jaWF0aW9ucygpXCJcbiAgICAgICAgICAgICAgICAgICAgKHNlbGVjdGVkRXh0cmFJdGVtKT1cIl9zZWxlY3RFeHRyYUl0ZW0oJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgIChmb2N1c0ZpcnN0VmlzaWJsZUl0ZW0pPVwiX2ZvY3VzSXRlbSgwKVwiXG4gICAgICAgICAgICAgICAgICAgIChmb2N1c0xhc3RWaXNpYmxlSXRlbSk9XCJfZm9jdXNJdGVtKF9sYXN0VmlzaWJsZVRhYkluZGV4KVwiXG4gICAgICAgICAgICAgICAgICAgIChjbG9zZVRhYik9XCJfY2xvc2VUYWIoJGV2ZW50LCB0cnVlKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDwvZmRwLXRleHQtdHlwZS1wb3BvdmVyPlxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgfVxuICAgIDwvdWw+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { NgTemplateOutlet } from '@angular/common';
|
|
1
2
|
import { ChangeDetectionStrategy, Component, ElementRef, inject, Input, input, ViewEncapsulation } from '@angular/core';
|
|
2
3
|
import { AsyncOrSyncPipe } from '@fundamental-ngx/cdk/utils';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
@@ -16,17 +17,17 @@ export class IconTabBarTextTypeTabItemComponent {
|
|
|
16
17
|
return this._elementRef.nativeElement;
|
|
17
18
|
}
|
|
18
19
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: IconTabBarTextTypeTabItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
19
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.3", type: IconTabBarTextTypeTabItemComponent, isStandalone: true, selector: "[fdp-icon-tab-bar-text-type-tab-item]", inputs: { item: { classPropertyName: "item", publicName: "item", isSignal: false, isRequired: false, transformFunction: null }, layoutMode: { classPropertyName: "layoutMode", publicName: "layoutMode", isSignal: false, isRequired: false, transformFunction: null }, colorAssociations: { classPropertyName: "colorAssociations", publicName: "colorAssociations", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "tab" }, classAttribute: "fd-icon-tab-bar__tab" }, ngImport: i0, template: "@if (layoutMode === 'row') {\n
|
|
20
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.3", type: IconTabBarTextTypeTabItemComponent, isStandalone: true, selector: "[fdp-icon-tab-bar-text-type-tab-item]", inputs: { item: { classPropertyName: "item", publicName: "item", isSignal: false, isRequired: false, transformFunction: null }, layoutMode: { classPropertyName: "layoutMode", publicName: "layoutMode", isSignal: false, isRequired: false, transformFunction: null }, colorAssociations: { classPropertyName: "colorAssociations", publicName: "colorAssociations", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "tab" }, classAttribute: "fd-icon-tab-bar__tab" }, ngImport: i0, template: "@if (item?.titleTemplate) {\n <ng-template [ngTemplateOutlet]=\"item?.titleTemplate || null\"></ng-template>\n} @else {\n @if (layoutMode === 'row') {\n <span class=\"fd-icon-tab-bar__tag\">\n {{ item?.label | fdkAsyncOrSync }}\n @if (item?.counter | fdkAsyncOrSync; as itemCounter) {\n ({{ itemCounter }})\n }\n </span>\n } @else {\n <span class=\"fd-icon-tab-bar__counter\">{{ item?.counter }}</span>\n <span class=\"fd-icon-tab-bar__tag\">{{ item?.label | fdkAsyncOrSync }}</span>\n }\n @if (item?.badge) {\n <span class=\"fd-icon-tab-bar__badge\"></span>\n }\n @if (item?.color | fdkAsyncOrSync; as itemColor) {\n <div class=\"screenreader-only\">\n {{ colorAssociations()?.[itemColor] || itemColor }}\n </div>\n }\n}\n", dependencies: [{ kind: "pipe", type: AsyncOrSyncPipe, name: "fdkAsyncOrSync" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
20
21
|
}
|
|
21
22
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: IconTabBarTextTypeTabItemComponent, decorators: [{
|
|
22
23
|
type: Component,
|
|
23
|
-
args: [{ selector: '[fdp-icon-tab-bar-text-type-tab-item]', standalone: true, imports: [AsyncOrSyncPipe], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
24
|
+
args: [{ selector: '[fdp-icon-tab-bar-text-type-tab-item]', standalone: true, imports: [AsyncOrSyncPipe, NgTemplateOutlet], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
24
25
|
class: 'fd-icon-tab-bar__tab',
|
|
25
26
|
role: 'tab'
|
|
26
|
-
}, template: "@if (layoutMode === 'row') {\n
|
|
27
|
+
}, template: "@if (item?.titleTemplate) {\n <ng-template [ngTemplateOutlet]=\"item?.titleTemplate || null\"></ng-template>\n} @else {\n @if (layoutMode === 'row') {\n <span class=\"fd-icon-tab-bar__tag\">\n {{ item?.label | fdkAsyncOrSync }}\n @if (item?.counter | fdkAsyncOrSync; as itemCounter) {\n ({{ itemCounter }})\n }\n </span>\n } @else {\n <span class=\"fd-icon-tab-bar__counter\">{{ item?.counter }}</span>\n <span class=\"fd-icon-tab-bar__tag\">{{ item?.label | fdkAsyncOrSync }}</span>\n }\n @if (item?.badge) {\n <span class=\"fd-icon-tab-bar__badge\"></span>\n }\n @if (item?.color | fdkAsyncOrSync; as itemColor) {\n <div class=\"screenreader-only\">\n {{ colorAssociations()?.[itemColor] || itemColor }}\n </div>\n }\n}\n" }]
|
|
27
28
|
}], propDecorators: { item: [{
|
|
28
29
|
type: Input
|
|
29
30
|
}], layoutMode: [{
|
|
30
31
|
type: Input
|
|
31
32
|
}] } });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi10YWItYmFyLXRleHQtdHlwZS10YWItaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2ljb24tdGFiLWJhci9jb21wb25lbnRzL3RleHQtdHlwZS10YWItaXRlbS9pY29uLXRhYi1iYXItdGV4dC10eXBlLXRhYi1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vaWNvbi10YWItYmFyL2NvbXBvbmVudHMvdGV4dC10eXBlLXRhYi1pdGVtL2ljb24tdGFiLWJhci10ZXh0LXR5cGUtdGFiLWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEgsT0FBTyxFQUFFLGVBQWUsRUFBWSxNQUFNLDRCQUE0QixDQUFDOztBQWlCdkUsTUFBTSxPQUFPLGtDQUFrQztJQWIvQztRQXdCSTs7O1dBR0c7UUFDSCxzQkFBaUIsR0FBRyxLQUFLLEVBQW9DLENBQUM7UUFPOUQsY0FBYztRQUNHLGdCQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0tBQ3JEO0lBUEcsY0FBYztJQUNkLElBQUksYUFBYTtRQUNiLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUM7SUFDMUMsQ0FBQzs4R0FwQlEsa0NBQWtDO2tHQUFsQyxrQ0FBa0Msd2xCQ25CL0MseTFCQXVCQSx1Q0RiYyxlQUFlLHVEQUFFLGdCQUFnQjs7MkZBU2xDLGtDQUFrQztrQkFiOUMsU0FBUzsrQkFFSSx1Q0FBdUMsY0FDckMsSUFBSSxXQUNQLENBQUMsZUFBZSxFQUFFLGdCQUFnQixDQUFDLGlCQUU3QixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNGLEtBQUssRUFBRSxzQkFBc0I7d0JBQzdCLElBQUksRUFBRSxLQUFLO3FCQUNkOzhCQUtELElBQUk7c0JBREgsS0FBSztnQkFPTixVQUFVO3NCQURULEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIGluamVjdCwgSW5wdXQsIGlucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXN5bmNPclN5bmNQaXBlLCBOdWxsYWJsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IEljb25UYWJCYXJJdGVtIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9pY29uLXRhYi1iYXItaXRlbS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgVGFiQ29sb3JBc3NvY2lhdGlvbnMgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3RhYi1jb2xvci1hc3NvY2lhdGlvbnMuaW50ZXJmYWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ1tmZHAtaWNvbi10YWItYmFyLXRleHQtdHlwZS10YWItaXRlbV0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0FzeW5jT3JTeW5jUGlwZSwgTmdUZW1wbGF0ZU91dGxldF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ljb24tdGFiLWJhci10ZXh0LXR5cGUtdGFiLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ZkLWljb24tdGFiLWJhcl9fdGFiJyxcbiAgICAgICAgcm9sZTogJ3RhYidcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIEljb25UYWJCYXJUZXh0VHlwZVRhYkl0ZW1Db21wb25lbnQge1xuICAgIC8qKiBUYWIgaXRlbS4gKi9cbiAgICBASW5wdXQoKVxuICAgIGl0ZW06IE51bGxhYmxlPEljb25UYWJCYXJJdGVtPjtcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBMYXlvdXQgdHlwZSBmb3IgdGFiLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgbGF5b3V0TW9kZTogJ3JvdycgfCAnY29sdW1uJztcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBBc3NvY2lhdGlvbnMgZm9yIGNvbG9ycyBvZiB0aGUgdGFicy5cbiAgICAgKiBJZiBhbnkgb2YgdGhlIGNvbG9yIGFzc29jaWF0aW9ucyBwcm92aWRlZCwgdGhleSdsbCBiZSByZWFkIGJ5IHNjcmVlbnJlYWRlciBpbnN0ZWFkIG9mIHRoZSBhY3R1YWwgY29sb3JcbiAgICAgKi9cbiAgICBjb2xvckFzc29jaWF0aW9ucyA9IGlucHV0PFRhYkNvbG9yQXNzb2NpYXRpb25zIHwgdW5kZWZpbmVkPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgbmF0aXZlRWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW0gKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9lbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xufVxuIiwiQGlmIChpdGVtPy50aXRsZVRlbXBsYXRlKSB7XG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW0/LnRpdGxlVGVtcGxhdGUgfHwgbnVsbFwiPjwvbmctdGVtcGxhdGU+XG59IEBlbHNlIHtcbiAgICBAaWYgKGxheW91dE1vZGUgPT09ICdyb3cnKSB7XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZmQtaWNvbi10YWItYmFyX190YWdcIj5cbiAgICAgICAgICAgIHt7IGl0ZW0/LmxhYmVsIHwgZmRrQXN5bmNPclN5bmMgfX1cbiAgICAgICAgICAgIEBpZiAoaXRlbT8uY291bnRlciB8IGZka0FzeW5jT3JTeW5jOyBhcyBpdGVtQ291bnRlcikge1xuICAgICAgICAgICAgICAgICh7eyBpdGVtQ291bnRlciB9fSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9zcGFuPlxuICAgIH0gQGVsc2Uge1xuICAgICAgICA8c3BhbiBjbGFzcz1cImZkLWljb24tdGFiLWJhcl9fY291bnRlclwiPnt7IGl0ZW0/LmNvdW50ZXIgfX08L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZmQtaWNvbi10YWItYmFyX190YWdcIj57eyBpdGVtPy5sYWJlbCB8IGZka0FzeW5jT3JTeW5jIH19PC9zcGFuPlxuICAgIH1cbiAgICBAaWYgKGl0ZW0/LmJhZGdlKSB7XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZmQtaWNvbi10YWItYmFyX19iYWRnZVwiPjwvc3Bhbj5cbiAgICB9XG4gICAgQGlmIChpdGVtPy5jb2xvciB8IGZka0FzeW5jT3JTeW5jOyBhcyBpdGVtQ29sb3IpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cInNjcmVlbnJlYWRlci1vbmx5XCI+XG4gICAgICAgICAgICB7eyBjb2xvckFzc29jaWF0aW9ucygpPy5baXRlbUNvbG9yXSB8fCBpdGVtQ29sb3IgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class IconTabTitleDirective {
|
|
4
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: IconTabTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
5
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.3", type: IconTabTitleDirective, isStandalone: true, selector: "[fdpIconTabBarTitleTemplate], [fdp-icon-tab-bar-title-template]", ngImport: i0 }); }
|
|
6
|
+
}
|
|
7
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: IconTabTitleDirective, decorators: [{
|
|
8
|
+
type: Directive,
|
|
9
|
+
args: [{
|
|
10
|
+
selector: '[fdpIconTabBarTitleTemplate], [fdp-icon-tab-bar-title-template]',
|
|
11
|
+
standalone: true
|
|
12
|
+
}]
|
|
13
|
+
}] });
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi10YWItdGl0bGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9pY29uLXRhYi1iYXIvZGlyZWN0aXZlcy9pY29uLXRhYi10aXRsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFNMUMsTUFBTSxPQUFPLHFCQUFxQjs4R0FBckIscUJBQXFCO2tHQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBSmpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGlFQUFpRTtvQkFDM0UsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ZkcEljb25UYWJCYXJUaXRsZVRlbXBsYXRlXSwgW2ZkcC1pY29uLXRhYi1iYXItdGl0bGUtdGVtcGxhdGVdJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEljb25UYWJUaXRsZURpcmVjdGl2ZSB7fVxuIl19
|
|
@@ -207,6 +207,7 @@ export class IconTabBarComponent {
|
|
|
207
207
|
counter: tab.counter(),
|
|
208
208
|
renderer: tab.renderer(),
|
|
209
209
|
id: tab.id(),
|
|
210
|
+
titleTemplate: tab.titleTemplate(),
|
|
210
211
|
subItems: tab.children().map((c) => this._generateTabConfig(c))
|
|
211
212
|
};
|
|
212
213
|
return tabConfig;
|
|
@@ -306,4 +307,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImpor
|
|
|
306
307
|
type: HostBinding,
|
|
307
308
|
args: ['class.fd-tabs-custom']
|
|
308
309
|
}] } });
|
|
309
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi10YWItYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vaWNvbi10YWItYmFyL2ljb24tdGFiLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2ljb24tdGFiLWJhci9pY29uLXRhYi1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUNILGdCQUFnQixFQUNoQix1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsZUFBZSxFQUNmLFVBQVUsRUFFVixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxLQUFLLEVBQ0wsS0FBSyxFQUVMLFFBQVEsRUFDUixNQUFNLEVBQ04sTUFBTSxFQUNOLFNBQVMsRUFDVCxZQUFZLEVBQ1osaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBWSxVQUFVLEVBQUUsU0FBUyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRXJFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxVQUFVLEVBQVcsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7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QSwyeHhKRGpDUSxnQkFBZ0Isb0pBQ2hCLDhCQUE4QiwwRUFDOUIsNkJBQTZCLG1HQUM3QiwyQkFBMkIsOEZBQzNCLDJCQUEyQiw0SkFDM0Isa0JBQWtCLCtJQUNsQixrQkFBa0IseU1BQ2xCLDZCQUE2Qjs7MkZBR3hCLG1CQUFtQjtrQkF4Qi9CLFNBQVM7K0JBQ0ksa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksY0FDekIsSUFBSSxhQUNMO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxVQUFVOzRCQUNuQixXQUFXLHFCQUFxQjt5QkFDbkM7cUJBQ0osV0FDUTt3QkFDTCxnQkFBZ0I7d0JBQ2hCLDhCQUE4Qjt3QkFDOUIsNkJBQTZCO3dCQUM3QiwyQkFBMkI7d0JBQzNCLDJCQUEyQjt3QkFDM0Isa0JBQWtCO3dCQUNsQixrQkFBa0I7d0JBQ2xCLDZCQUE2QjtxQkFDaEM7OzBCQXVJSSxRQUFROzswQkFDUixRQUFRO3lDQWhJYixZQUFZO3NCQURYLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBa0UxQixXQUFXO3NCQUR0QixXQUFXO3VCQUFDLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBib29sZWFuQXR0cmlidXRlLFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBjb21wdXRlZCxcbiAgICBjb250ZW50Q2hpbGRyZW4sXG4gICAgRGVzdHJveVJlZixcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBpbnB1dCxcbiAgICBtb2RlbCxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgb3V0cHV0LFxuICAgIHNpZ25hbCxcbiAgICB2aWV3Q2hpbGQsXG4gICAgdmlld0NoaWxkcmVuLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgQ29udGVudERlbnNpdHlTZXJ2aWNlLCBOdWxsYWJsZSwgUnRsU2VydmljZSwgc2Nyb2xsVG9wIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgRkRfRFlOQU1JQ19QQUdFIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2R5bmFtaWMtcGFnZSc7XG5pbXBvcnQgeyBJY29uRm9udCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9pY29uJztcbmltcG9ydCB7IFNjcm9sbFNweURpcmVjdGl2ZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zY3JvbGwtc3B5JztcbmltcG9ydCB7IFNjcm9sbGJhckRpcmVjdGl2ZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zY3JvbGxiYXInO1xuaW1wb3J0IHsgRkRfVEFCTElTVCwgVGFiTGlzdCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zaGFyZWQnO1xuaW1wb3J0IHsgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaXJzdCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEljb25UYWJCYXJCYXNlIH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IEljb25UYWJCYXJGaWx0ZXJUeXBlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2ljb24tdGFiLWJhci1maWx0ZXItdHlwZS9pY29uLXRhYi1iYXItZmlsdGVyLXR5cGUuY29tcG9uZW50JztcbmltcG9ydCB7IEljb25UYWJCYXJJY29uVHlwZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9pY29uLXRhYi1iYXItaWNvbi10eXBlL2ljb24tdGFiLWJhci1pY29uLXR5cGUuY29tcG9uZW50JztcbmltcG9ydCB7IEljb25UYWJCYXJQcm9jZXNzVHlwZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9pY29uLXRhYi1iYXItcHJvY2Vzcy10eXBlL2ljb24tdGFiLWJhci1wcm9jZXNzLXR5cGUuY29tcG9uZW50JztcbmltcG9ydCB7XG4gICAgSWNvblRhYkJhclRhYkNvbXBvbmVudCxcbiAgICBJY29uVGFiQmFyVGFiQ29udGVudERpcmVjdGl2ZVxufSBmcm9tICcuL2NvbXBvbmVudHMvaWNvbi10YWItYmFyLXRhYi9pY29uLXRhYi1iYXItdGFiLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJY29uVGFiQmFyVGV4dFR5cGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaWNvbi10YWItYmFyLXRleHQtdHlwZS9pY29uLXRhYi1iYXItdGV4dC10eXBlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVTklRVUVfS0VZX1NFUEFSQVRPUiB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IEljb25UYWJCYXJJdGVtIH0gZnJvbSAnLi9pbnRlcmZhY2VzL2ljb24tdGFiLWJhci1pdGVtLmludGVyZmFjZSc7XG5pbXBvcnQgeyBUYWJDb2xvckFzc29jaWF0aW9ucyB9IGZyb20gJy4vaW50ZXJmYWNlcy90YWItY29sb3ItYXNzb2NpYXRpb25zLmludGVyZmFjZSc7XG5pbXBvcnQgeyBUYWJDb25maWcgfSBmcm9tICcuL2ludGVyZmFjZXMvdGFiLWNvbmZpZy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSWNvblRhYkJhckJhY2tncm91bmQsIEljb25UYWJCYXJTaXplLCBUYWJEZXN0aW55TW9kZSwgVGFiVHlwZSB9IGZyb20gJy4vdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZkcC1pY29uLXRhYi1iYXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9pY29uLXRhYi1iYXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9pY29uLXRhYi1iYXIuY29tcG9uZW50LnNjc3MnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogRkRfVEFCTElTVCxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBJY29uVGFiQmFyQ29tcG9uZW50XG4gICAgICAgIH1cbiAgICBdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICAgICAgSWNvblRhYkJhclByb2Nlc3NUeXBlQ29tcG9uZW50LFxuICAgICAgICBJY29uVGFiQmFyRmlsdGVyVHlwZUNvbXBvbmVudCxcbiAgICAgICAgSWNvblRhYkJhckljb25UeXBlQ29tcG9uZW50LFxuICAgICAgICBJY29uVGFiQmFyVGV4dFR5cGVDb21wb25lbnQsXG4gICAgICAgIFNjcm9sbGJhckRpcmVjdGl2ZSxcbiAgICAgICAgU2Nyb2xsU3B5RGlyZWN0aXZlLFxuICAgICAgICBJY29uVGFiQmFyVGFiQ29udGVudERpcmVjdGl2ZVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgSWNvblRhYkJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgVGFiTGlzdCB7XG4gICAgLyoqXG4gICAgICogV2hldGhlciB0byBvcGVuIHRhYiBjb250ZW50IG9uZSB1bmRlciBhbm90aGVyIHdpdGhvdXQgY29sbGFwc2luZy5cbiAgICAgKiBXb3JrcyBvbmx5IGZvciBjb250ZW50LXByb2plY3RlZCB0YWIgY29udGVudC5cbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgICBzdGFja0NvbnRlbnQgPSBmYWxzZTtcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gVHlwZSBvZiB0YWIgYmFyIHZpZXcuICovXG4gICAgaWNvblRhYlR5cGUgPSBpbnB1dDxUYWJUeXBlPigndGV4dCcpO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIEEgdGFiIGJhciBjb25maWd1cmF0aW9uIHRoYXQgc3RvcmVzIHRoZSBzdGF0ZSBvZiBlYWNoIHRhYi4gQmFzZWQgb24gdGhpcyBjb25maWd1cmF0aW9uLCBhIHRhYiBiYXIgaXMgcmVwcmVzZW50aW5nLlxuICAgICAqL1xuICAgIHRhYnNDb25maWcgPSBtb2RlbDxUYWJDb25maWdbXT4oKTtcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gRGVzdGlueSBtb2RlLiAqL1xuICAgIGRlbnNpdHlNb2RlID0gbW9kZWw8VGFiRGVzdGlueU1vZGU+KCdpbmhlcml0Jyk7XG5cbiAgICAvKiogQGRlc2NyaXB0aW9uIEljb24gZm9udCAqL1xuICAgIGljb25UYWJGb250ID0gaW5wdXQ8SWNvbkZvbnQ+KCdTQVAtaWNvbnMnKTtcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gRGlzYWJsZSBvciBlbmFibGUgcmVvcmRlcmluZyhkcmFnIGFuZCBkcm9wKSBmZWF0dXJlLiAoc3VwcG9ydGVkIGJ5IHRleHQgdHlwZSBvbmx5KSAqL1xuICAgIGVuYWJsZVRhYlJlb3JkZXJpbmcgPSBpbnB1dChmYWxzZSk7XG5cbiAgICAvKiogQGRlc2NyaXB0aW9uIEJvb2xlYW4gZmxhZyBpbmRpY2F0aW5nIHRvIHNob3cgdG90YWwgdGFiLihzdXBwb3J0ZWQgYnkgZmlsdGVyIHR5cGUgb25seSkgKi9cbiAgICBzaG93VG90YWxUYWIgPSBpbnB1dCh0cnVlKTtcblxuICAgIC8qKiBXaGV0aGVyIHRvIHJlbmRlciBpY29uIHRhYiBpdGVtIGFzIG11bHRpLWNsaWNrIHZhcmlhbnQuICovXG4gICAgbXVsdGlDbGljayA9IGlucHV0KGZhbHNlKTtcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gTGF5b3V0IHR5cGUgZm9yIHRhYiAoc3VwcG9ydGVkIGJ5IHRleHQgdHlwZSBvbmx5KSAqL1xuICAgIGxheW91dE1vZGUgPSBpbnB1dDwncm93JyB8ICdjb2x1bW4nPigncm93Jyk7XG5cbiAgICAvKiogQGRlc2NyaXB0aW9uIEljb24gdGFiIGJhciBiYWNrZ3JvdW5kIHR5cGUuICovXG4gICAgaWNvblRhYkJhY2tncm91bmQgPSBpbnB1dDxJY29uVGFiQmFyQmFja2dyb3VuZD4oJ3NvbGlkJyk7XG5cbiAgICAvKiogQGRlc2NyaXB0aW9uIEljb24gdGFiIGJhciBzaXplLiAqL1xuICAgIGljb25UYWJTaXplID0gaW5wdXQ8SWNvblRhYkJhclNpemU+KCk7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gQXNzb2NpYXRpb25zIGZvciBjb2xvcnMgb2YgdGhlIHRhYnMuXG4gICAgICogSWYgYW55IG9mIHRoZSBjb2xvciBhc3NvY2lhdGlvbnMgcHJvdmlkZWQsIHRoZXknbGwgYmUgcmVhZCBieSBzY3JlZW5yZWFkZXIgaW5zdGVhZCBvZiB0aGUgYWN0dWFsIGNvbG9yXG4gICAgICovXG4gICAgY29sb3JBc3NvY2lhdGlvbnMgPSBpbnB1dDxUYWJDb2xvckFzc29jaWF0aW9ucz4oKTtcblxuICAgIC8qKlxuICAgICAqIE1heGltdW0gaGVpZ2h0IG9mIHRoZSBjb250ZW50LlxuICAgICAqIFdvcmtzIG9ubHkgZm9yIGNvbnRlbnQtcHJvamVjdGVkIHRhYiBjb250ZW50LlxuICAgICAqL1xuICAgIG1heENvbnRlbnRIZWlnaHQgPSBpbnB1dCgnMTAwJScpO1xuXG4gICAgLyoqIEBkZXNjcmlwdGlvbiBFbWl0cyB3aGVuIHNvbWUgdGFiIGlzIHNlbGVjdGVkLiAqL1xuICAgIGljb25UYWJTZWxlY3RlZCA9IG91dHB1dDxJY29uVGFiQmFySXRlbT4oKTtcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gRW1pdHMgd2hlbiB1c2VyIGRyb3AgdGFiLiAqL1xuICAgIGljb25UYWJSZW9yZGVyZWQgPSBvdXRwdXQ8SWNvblRhYkJhckl0ZW1bXT4oKTtcblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIHdoZW4gdXNlciBjbGlja3Mgb24geCBpY29uIGluIHRhYi4gKi9cbiAgICBjbG9zZVRhYiA9IG91dHB1dDxJY29uVGFiQmFySXRlbT4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY2hpbGRyZW4gPSBjb250ZW50Q2hpbGRyZW4oSWNvblRhYkJhclRhYkNvbXBvbmVudCwgeyBkZXNjZW5kYW50czogZmFsc2UgfSk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9zY3JvbGxiYXIgPSB2aWV3Q2hpbGQoU2Nyb2xsYmFyRGlyZWN0aXZlKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgdGFiRGlyZWN0aXZlcyA9IHZpZXdDaGlsZHJlbihJY29uVGFiQmFyVGFiQ29udGVudERpcmVjdGl2ZSk7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkLXRhYnMtY3VzdG9tJylcbiAgICBwcml2YXRlIGdldCBfY3VzdG9tVGFicygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2luRHluYW1pY1BhZ2U7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgaGVhZGVyQ29udGFpbmVyKCk6IE51bGxhYmxlPEVsZW1lbnRSZWY+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ljb25UYWJCYXJDbXAoKT8uaGVhZGVyRWxlbWVudDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9jc3NDbGFzc0ZvckNvbnRhaW5lcjogc3RyaW5nW107XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9kaXNhYmxlU2Nyb2xsU3B5ID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9pbml0ID0gdHJ1ZTtcblxuICAgIC8qKiBTY3JvbGxhYmxlIGVsZW1lbnQgcmVmZXJlbmNlLiAqL1xuICAgIGdldCBzY3JvbGxhYmxlRWxlbWVudCgpOiBOdWxsYWJsZTxFbGVtZW50UmVmPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zY3JvbGxiYXIoKT8uZWxlbWVudFJlZjtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IF9zZWxlY3RlZFVpZCA9IHNpZ25hbDxzdHJpbmcgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IF90YWJzJCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuX2dlbmVyYXRlVGFiQmFySXRlbXModGhpcy5fdGFic0NvbmZpZyQoKSkpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICByZWFkb25seSBfZmxhdFRhYnMkID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5fZ2VuZXJhdGVGbGF0VGFicyh0aGlzLl90YWJzJCgpKSk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IF90YWJSZW5kZXJlciQgPSBzaWduYWw8SWNvblRhYkJhckl0ZW0gfCBudWxsPihudWxsKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVhZG9ubHkgX3J0bCQgPSBjb21wdXRlZCgoKSA9PiAhIXRoaXMuX3J0bFNlcnZpY2U/LnJ0bFNpZ25hbCgpKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVhZG9ubHkgX3RhYnNDb25maWckID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCB0YWJDb25maWcgPSB0aGlzLnRhYnNDb25maWcoKTtcbiAgICAgICAgaWYgKHRhYkNvbmZpZykge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMudGFic0NvbmZpZygpIGFzIFRhYkNvbmZpZ1tdO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgY2hpbGRyZW4gPSB0aGlzLmNoaWxkcmVuKCk7XG4gICAgICAgIGlmICghY2hpbGRyZW4pIHtcbiAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY2hpbGRyZW4ubWFwKCh0KSA9PiB0aGlzLl9nZW5lcmF0ZVRhYkNvbmZpZyh0KSk7XG4gICAgfSk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9pbkR5bmFtaWNQYWdlID0gISFpbmplY3QoRkRfRFlOQU1JQ19QQUdFLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBfaWNvblRhYkJhckNtcCA9IHZpZXdDaGlsZDxOdWxsYWJsZTxJY29uVGFiQmFyQmFzZT4+KEljb25UYWJCYXJCYXNlKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgX2NkOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfY29udGVudERlbnNpdHlTZXJ2aWNlOiBDb250ZW50RGVuc2l0eVNlcnZpY2UsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgX3J0bFNlcnZpY2U6IFJ0bFNlcnZpY2VcbiAgICApIHt9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9jc3NDbGFzc0ZvckNvbnRhaW5lciA9IHRoaXMuX2dlbmVyYXRlQ29udGFpbmVyU3R5bGVzKCk7XG5cbiAgICAgICAgaWYgKHRoaXMuZGVuc2l0eU1vZGUoKSA9PT0gJ2luaGVyaXQnKSB7XG4gICAgICAgICAgICB0aGlzLl9jb250ZW50RGVuc2l0eVNlcnZpY2U/Ll9jb250ZW50RGVuc2l0eUxpc3RlbmVyXG4gICAgICAgICAgICAgICAgLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuX2Rlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKGRlbnNpdHkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kZW5zaXR5TW9kZS5zZXQoZGVuc2l0eSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChkZW5zaXR5ICE9PSAnY29tcGFjdCcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2Nzc0NsYXNzRm9yQ29udGFpbmVyID0gdGhpcy5fY3NzQ2xhc3NGb3JDb250YWluZXIuZmlsdGVyKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjc3NDbGFzcykgPT4gY3NzQ2xhc3MgIT09ICdmZC1pY29uLXRhYi1iYXItLWNvbXBhY3QnXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fY3NzQ2xhc3NGb3JDb250YWluZXIucHVzaCgnZmQtaWNvbi10YWItYmFyLS1jb21wYWN0Jyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEBwYXJhbSBldmVudCByZW9yZGVyZWQgYXJyYXkgb2YgSWNvblRhYkJhckl0ZW1cbiAgICAgKi9cbiAgICBfb25SZW9yZGVyKGV2ZW50OiBJY29uVGFiQmFySXRlbVtdKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaWNvblRhYlJlb3JkZXJlZC5lbWl0KGV2ZW50KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQHBhcmFtIHNlbGVjdGVkSXRlbVxuICAgICAqL1xuICAgIF9zZWxlY3RJdGVtKHNlbGVjdGVkSXRlbTogSWNvblRhYkJhckl0ZW0pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdGFiUmVuZGVyZXIkLnNldChzZWxlY3RlZEl0ZW0pO1xuICAgICAgICB0aGlzLmljb25UYWJTZWxlY3RlZC5lbWl0KHNlbGVjdGVkSXRlbSk7XG5cbiAgICAgICAgaWYgKHRoaXMuc3RhY2tDb250ZW50KSB7XG4gICAgICAgICAgICB0aGlzLl9zY3JvbGxUb1BhbmVsKHRoaXMudGFiRGlyZWN0aXZlcygpLmZpbmQoKHRhYikgPT4gdGFiLnVJZCgpID09PSBzZWxlY3RlZEl0ZW0udUlkKSEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfY2xvc2VUYWIoaXRlbTogSWNvblRhYkJhckl0ZW0pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jbG9zZVRhYi5lbWl0KGl0ZW0pO1xuICAgIH1cblxuICAgIC8qKiBQcm9ncmFtbWF0aWNhbGx5IHNlbGVjdCB0YWIuICovXG4gICAgc2VsZWN0VGFiKGlkOiBOdWxsYWJsZTxzdHJpbmc+KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkSXRlbSA9IHRoaXMuX2ZsYXRUYWJzJCgpLmZpbmQoKHQpID0+IHQuaWQgPT09IGlkKTtcbiAgICAgICAgaWYgKCFzZWxlY3RlZEl0ZW0pIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9zZWxlY3RlZFVpZC5zZXQoc2VsZWN0ZWRJdGVtLnVJZCk7XG4gICAgICAgIHRoaXMuX3NlbGVjdEl0ZW0oc2VsZWN0ZWRJdGVtKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGhpZ2hsaWdodEFjdGl2ZVRhYihpZDogTnVsbGFibGU8c3RyaW5nPiwgc2Nyb2xsID0gZmFsc2UpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuX2Rpc2FibGVTY3JvbGxTcHkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBhY3RpdmVUYWIgPSB0aGlzLnRhYkRpcmVjdGl2ZXMoKS5maW5kKCh0YWIpID0+IHRhYi5pZCgpID09PSBpZCk7XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkVWlkLnNldChhY3RpdmVUYWI/LnVJZCgpIHx8IHVuZGVmaW5lZCk7XG4gICAgICAgIGlmIChzY3JvbGwgJiYgYWN0aXZlVGFiKSB7XG4gICAgICAgICAgICB0aGlzLl9zY3JvbGxUb1BhbmVsKGFjdGl2ZVRhYik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQHJldHVybnMgYXJyYXkgb2YgY3NzIGNsYXNzZXMgZm9yIGljb24tdGFiLWJhciBjb250YWluZXJcbiAgICAgKi9cbiAgICBwcml2YXRlIF9nZW5lcmF0ZUNvbnRhaW5lclN0eWxlcygpOiBzdHJpbmdbXSB7XG4gICAgICAgIGNvbnN0IHN0eWxlcyA9IFtgZmQtaWNvbi10YWItYmFyLS0ke3RoaXMuaWNvblRhYlR5cGUoKX1gXTtcbiAgICAgICAgY29uc3QgdGFic0NvbmZpZyA9IHRoaXMudGFic0NvbmZpZygpO1xuICAgICAgICBpZiAodGFic0NvbmZpZyAmJiB0aGlzLmljb25UYWJUeXBlKCkgPT09ICdwcm9jZXNzJyAmJiB0YWJzQ29uZmlnWzBdLmljb24pIHtcbiAgICAgICAgICAgIHN0eWxlcy5wdXNoKCdmZC1pY29uLXRhYi1iYXItLWljb24nKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5pY29uVGFiQmFja2dyb3VuZCgpICE9PSAnc29saWQnKSB7XG4gICAgICAgICAgICBzdHlsZXMucHVzaChgZmQtaWNvbi10YWItYmFyLS0ke3RoaXMuaWNvblRhYkJhY2tncm91bmQoKX1gKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5pY29uVGFiU2l6ZSgpKSB7XG4gICAgICAgICAgICBzdHlsZXMucHVzaChgZmQtaWNvbi10YWItYmFyLS0ke3RoaXMuaWNvblRhYlNpemUoKSF9YCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuZGVuc2l0eU1vZGUoKSA9PT0gJ2NvbXBhY3QnKSB7XG4gICAgICAgICAgICBzdHlsZXMucHVzaCgnZmQtaWNvbi10YWItYmFyLS1jb21wYWN0Jyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMubGF5b3V0TW9kZSgpID09PSAnY29sdW1uJykge1xuICAgICAgICAgICAgc3R5bGVzLnB1c2goJ2ZkLWljb24tdGFiLWJhci0tY291bnRlcnMnKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc3R5bGVzO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2dlbmVyYXRlVGFiQ29uZmlnKHRhYjogSWNvblRhYkJhclRhYkNvbXBvbmVudCk6IFRhYkNvbmZpZyB7XG4gICAgICAgIGNvbnN0IHRhYkNvbmZpZzogVGFiQ29uZmlnID0ge1xuICAgICAgICAgICAgbGFiZWw6IHRhYi5sYWJlbCgpLFxuICAgICAgICAgICAgY29sb3I6IHRhYi5jb2xvcigpLFxuICAgICAgICAgICAgYWN0aXZlOiB0YWIuYWN0aXZlKCksXG4gICAgICAgICAgICBiYWRnZTogdGFiLmJhZGdlKCksXG4gICAgICAgICAgICBjb3VudGVyOiB0YWIuY291bnRlcigpLFxuICAgICAgICAgICAgcmVuZGVyZXI6IHRhYi5yZW5kZXJlcigpLFxuICAgICAgICAgICAgaWQ6IHRhYi5pZCgpLFxuICAgICAgICAgICAgc3ViSXRlbXM6IHRhYi5jaGlsZHJlbigpLm1hcCgoYykgPT4gdGhpcy5fZ2VuZXJhdGVUYWJDb25maWcoYykpXG4gICAgICAgIH07XG5cbiAgICAgICAgcmV0dXJuIHRhYkNvbmZpZztcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3Njcm9sbFRvUGFuZWwodGFiUGFuZWw6IE51bGxhYmxlPEljb25UYWJCYXJUYWJDb250ZW50RGlyZWN0aXZlPik6IHZvaWQge1xuICAgICAgICBpZiAoIXRhYlBhbmVsKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgc2Nyb2xsYmFyID0gdGhpcy5fc2Nyb2xsYmFyKCk7XG4gICAgICAgIGlmICghc2Nyb2xsYmFyKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcGFuZWxFbGVtZW50ID0gdGFiUGFuZWwuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgICAgICBjb25zdCBjb250YWluZXJFbGVtZW50ID0gc2Nyb2xsYmFyLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3QgZGlzdGFuY2VUb1Njcm9sbCA9IHBhbmVsRWxlbWVudC5vZmZzZXRUb3AgLSBjb250YWluZXJFbGVtZW50Lm9mZnNldFRvcDtcbiAgICAgICAgY29uc3QgbWF4aW11bVNjcm9sbFRvcCA9IGNvbnRhaW5lckVsZW1lbnQuc2Nyb2xsSGVpZ2h0IC0gY29udGFpbmVyRWxlbWVudC5jbGllbnRIZWlnaHQ7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRTY3JvbGxQb3NpdGlvbiA9IE1hdGguY2VpbChjb250YWluZXJFbGVtZW50LnNjcm9sbFRvcCk7XG5cbiAgICAgICAgaWYgKCEoY3VycmVudFNjcm9sbFBvc2l0aW9uID09PSBtYXhpbXVtU2Nyb2xsVG9wICYmIGRpc3RhbmNlVG9TY3JvbGwgPiBtYXhpbXVtU2Nyb2xsVG9wKSkge1xuICAgICAgICAgICAgdGhpcy5fZGlzYWJsZVNjcm9sbFNweSA9IHRydWU7XG4gICAgICAgICAgICBmcm9tRXZlbnQoY29udGFpbmVyRWxlbWVudCwgJ3Njcm9sbCcpXG4gICAgICAgICAgICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDEwMCksIGZpcnN0KCksIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLl9kZXN0cm95UmVmKSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+ICh0aGlzLl9kaXNhYmxlU2Nyb2xsU3B5ID0gZmFsc2UpKTtcbiAgICAgICAgICAgIHNjcm9sbFRvcChjb250YWluZXJFbGVtZW50LCBkaXN0YW5jZVRvU2Nyb2xsKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBAZGVzY3JpcHRpb24gZ2VuZXJhdGUgSWNvblRhYkl0ZW1zIGZyb20gVGFiQ29uZmlnIGFycmF5XG4gICAgICovXG4gICAgcHJpdmF0ZSBfZ2VuZXJhdGVUYWJCYXJJdGVtcyhcbiAgICAgICAgY29uZmlnOiBUYWJDb25maWdbXSxcbiAgICAgICAgaW5kZXhQcmVmaXggPSAnJyxcbiAgICAgICAgZmxhdEluZGV4UmVmPzogRmxhdEluZGV4LFxuICAgICAgICBwYXJlbnRVSWQ/OiBzdHJpbmdcbiAgICApOiBJY29uVGFiQmFySXRlbVtdIHtcbiAgICAgICAgZmxhdEluZGV4UmVmID0gZmxhdEluZGV4UmVmIHx8IHsgdmFsdWU6IDAgfTtcbiAgICAgICAgcmV0dXJuIGNvbmZpZy5tYXAoKGl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB1SWQgPSBgJHtpbmRleFByZWZpeH0ke2luZGV4fWA7XG4gICAgICAgICAgICBpZiAoISgnY29sb3InIGluIGl0ZW0pKSB7XG4gICAgICAgICAgICAgICAgaXRlbS5jb2xvciA9ICdkZWZhdWx0JztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdDogSWNvblRhYkJhckl0ZW0gPSB7XG4gICAgICAgICAgICAgICAgLi4uaXRlbSxcbiAgICAgICAgICAgICAgICBpbmRleCxcbiAgICAgICAgICAgICAgICBjc3NDbGFzc2VzOiBbXSxcbiAgICAgICAgICAgICAgICB1SWQsXG4gICAgICAgICAgICAgICAgaGlkZGVuOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBwYXJlbnRVSWQsXG4gICAgICAgICAgICAgICAgZmxhdEluZGV4OiBmbGF0SW5kZXhSZWYhLnZhbHVlKyssXG4gICAgICAgICAgICAgICAgc3ViSXRlbXM6IHRoaXMuX2dlbmVyYXRlVGFiQmFySXRlbXMoXG4gICAgICAgICAgICAgICAgICAgIGl0ZW0uc3ViSXRlbXMgfHwgW10sXG4gICAgICAgICAgICAgICAgICAgIGAke3VJZH0ke1VOSVFVRV9LRVlfU0VQQVJBVE9SfWAsXG4gICAgICAgICAgICAgICAgICAgIGZsYXRJbmRleFJlZixcbiAgICAgICAgICAgICAgICAgICAgdUlkXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGlmIChpdGVtLmNvbG9yKSB7XG4gICAgICAgICAgICAgICAgcmVzdWx0LmNzc0NsYXNzZXMgPSBbYGZkLWljb24tdGFiLWJhcl9faXRlbS0tJHtpdGVtLmNvbG9yfWBdO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfZ2VuZXJhdGVGbGF0VGFicyh0YWJzOiBJY29uVGFiQmFySXRlbVtdKTogSWNvblRhYkJhckl0ZW1bXSB7XG4gICAgICAgIGNvbnN0IGZsYXRUYWJzID0gdGFicy5yZWR1Y2UoKGFjYzogSWNvblRhYkJhckl0ZW1bXSwgdGFiKSA9PiB7XG4gICAgICAgICAgICBhY2MucHVzaCh0YWIpO1xuICAgICAgICAgICAgaWYgKHRhYi5zdWJJdGVtcykge1xuICAgICAgICAgICAgICAgIGFjYy5wdXNoKC4uLnRoaXMuX2dlbmVyYXRlRmxhdFRhYnModGFiLnN1Ykl0ZW1zKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICB9LCBbXSk7XG5cbiAgICAgICAgcmV0dXJuIGZsYXRUYWJzO1xuICAgIH1cbn1cblxuLyoqIEBoaWRkZW4gaGVscGVyIG9iamVjdCB0aGF0IGlzIHVzZWQgaW4gdGFiIGdlbmVyYXRpb24gZnVuY3Rpb25zIHRvIGNhbGN1bGF0ZSB0aGVpciBpbmRleGVzIG5vdCBkZXBlbmRpbmcgb24gbGV2ZWwgb2YgbmVzdGluZyAqL1xuaW50ZXJmYWNlIEZsYXRJbmRleCB7XG4gICAgdmFsdWU6IG51bWJlcjtcbn1cbiIsIjxkaXYgY2xhc3M9XCJmZC1pY29uLXRhYi1iYXJcIiBbY2xhc3NdPVwiX2Nzc0NsYXNzRm9yQ29udGFpbmVyXCI+XG4gICAgQGlmIChpY29uVGFiVHlwZSgpID09PSAndGV4dCcpIHtcbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRleHRUeXBlXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICB9XG4gICAgQGlmIChpY29uVGFiVHlwZSgpID09PSAnaWNvbicgfHwgaWNvblRhYlR5cGUoKSA9PT0gJ2ljb24tb25seScpIHtcbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImljb25UeXBlXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICB9XG4gICAgQGlmIChpY29uVGFiVHlwZSgpID09PSAnZmlsdGVyJykge1xuICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwiZmlsdGVyVHlwZVwiPjwvbmctdGVtcGxhdGU+XG4gICAgfVxuICAgIEBpZiAoaWNvblRhYlR5cGUoKSA9PT0gJ3Byb2Nlc3MnKSB7XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJwcm9jZXNzVHlwZVwiPjwvbmctdGVtcGxhdGU+XG4gICAgfVxuICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJmZC1pY29uLXRhYi1iYXJfX2NvbnRlbnRcIlxuICAgICAgICBmZC1zY3JvbGxiYXJcbiAgICAgICAgKHNweUNoYW5nZSk9XCJoaWdobGlnaHRBY3RpdmVUYWIoJGV2ZW50LmlkKVwiXG4gICAgICAgIFtzY3JvbGxTcHlEaXNhYmxlZF09XCIhc3RhY2tDb250ZW50IHx8IF9kaXNhYmxlU2Nyb2xsU3B5XCJcbiAgICAgICAgZmRTY3JvbGxTcHlcbiAgICAgICAgW3RyYWNrZWRUYWdzXT1cIlsnZmRwLWljb24tdGFiLWJhci10YWItY29udGVudCddXCJcbiAgICAgICAgW3N0eWxlLm1heC1oZWlnaHRdPVwibWF4Q29udGVudEhlaWdodCgpXCJcbiAgICA+XG4gICAgICAgIEBpZiAoc3RhY2tDb250ZW50KSB7XG4gICAgICAgICAgICBAZm9yICh0YWIgb2YgX2ZsYXRUYWJzJCgpOyB0cmFjayB0YWIpIHtcbiAgICAgICAgICAgICAgICA8ZmRwLWljb24tdGFiLWJhci10YWItY29udGVudCBbaWRdPVwidGFiLmlkXCIgW3VJZF09XCJ0YWIudUlkXCIgY2xhc3M9XCJmZC1pY29uLXRhYi1iYXJfX3RhYi1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJ0YWIucmVuZGVyZXIgfHwgbnVsbFwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgPC9mZHAtaWNvbi10YWItYmFyLXRhYi1jb250ZW50PlxuICAgICAgICAgICAgfVxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIEBpZiAoX3RhYlJlbmRlcmVyJCgpOyBhcyB0YWJSZW5kZXJlcikge1xuICAgICAgICAgICAgICAgIDxmZHAtaWNvbi10YWItYmFyLXRhYi1jb250ZW50XG4gICAgICAgICAgICAgICAgICAgIFtpZF09XCJ0YWJSZW5kZXJlci5pZFwiXG4gICAgICAgICAgICAgICAgICAgIFt1SWRdPVwidGFiUmVuZGVyZXIudUlkXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmZC1pY29uLXRhYi1iYXJfX3RhYi1jb250ZW50XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJ0YWJSZW5kZXJlci5yZW5kZXJlciB8fCBudWxsXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICA8L2ZkcC1pY29uLXRhYi1iYXItdGFiLWNvbnRlbnQ+XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2ZkcEljb25UYWJCYXJGcmVlQ29udGVudF1cIj48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG48L2Rpdj5cbjxuZy10ZW1wbGF0ZSAjcHJvY2Vzc1R5cGU+XG4gICAgPGZkcC1pY29uLXRhYi1iYXItcHJvY2Vzcy10eXBlXG4gICAgICAgIFt0YWJzXT1cIl90YWJzJCgpXCJcbiAgICAgICAgW2lzUnRsXT1cIl9ydGwkKClcIlxuICAgICAgICBbc2VsZWN0ZWRVaWRdPVwiX3NlbGVjdGVkVWlkKClcIlxuICAgICAgICAoc2VsZWN0ZWRVaWRDaGFuZ2UpPVwiX3NlbGVjdGVkVWlkLnNldCgkZXZlbnQpXCJcbiAgICAgICAgW2RlbnNpdHlNb2RlXT1cImRlbnNpdHlNb2RlKClcIlxuICAgICAgICBbY29sb3JBc3NvY2lhdGlvbnNdPVwiY29sb3JBc3NvY2lhdGlvbnMoKVwiXG4gICAgICAgIChzZWxlY3RlZCk9XCJfc2VsZWN0SXRlbSgkZXZlbnQpXCJcbiAgICA+PC9mZHAtaWNvbi10YWItYmFyLXByb2Nlc3MtdHlwZT5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2ZpbHRlclR5cGU+XG4gICAgPGZkcC1pY29uLXRhYi1iYXItZmlsdGVyLXR5cGVcbiAgICAgICAgW3RhYnNdPVwiX3RhYnMkKClcIlxuICAgICAgICBbc2hvd1RvdGFsVGFiXT1cInNob3dUb3RhbFRhYigpXCJcbiAgICAgICAgW2lzUnRsXT1cIl9ydGwkKClcIlxuICAgICAgICBbc2VsZWN0ZWRVaWRdPVwiX3NlbGVjdGVkVWlkKClcIlxuICAgICAgICAoc2VsZWN0ZWRVaWRDaGFuZ2UpPVwiX3NlbGVjdGVkVWlkLnNldCgkZXZlbnQpXCJcbiAgICAgICAgW2RlbnNpdHlNb2RlXT1cImRlbnNpdHlNb2RlKClcIlxuICAgICAgICBbY29sb3JBc3NvY2lhdGlvbnNdPVwiY29sb3JBc3NvY2lhdGlvbnMoKVwiXG4gICAgICAgIChzZWxlY3RlZCk9XCJfc2VsZWN0SXRlbSgkZXZlbnQpXCJcbiAgICA+PC9mZHAtaWNvbi10YWItYmFyLWZpbHRlci10eXBlPlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjaWNvblR5cGU+XG4gICAgPGZkcC1pY29uLXRhYi1iYXItaWNvbi10eXBlXG4gICAgICAgIFtzaG93TGFiZWxdPVwiaWNvblRhYlR5cGUoKSA9PT0gJ2ljb24nXCJcbiAgICAgICAgW3RhYnNdPVwiX3RhYnMkKClcIlxuICAgICAgICBbaXNSdGxdPVwiX3J0bCQoKVwiXG4gICAgICAgIFtzZWxlY3RlZFVpZF09XCJfc2VsZWN0ZWRVaWQoKVwiXG4gICAgICAgIChzZWxlY3RlZFVpZENoYW5nZSk9XCJfc2VsZWN0ZWRVaWQuc2V0KCRldmVudClcIlxuICAgICAgICBbZGVuc2l0eU1vZGVdPVwiZGVuc2l0eU1vZGUoKVwiXG4gICAgICAgIFtjb2xvckFzc29jaWF0aW9uc109XCJjb2xvckFzc29jaWF0aW9ucygpXCJcbiAgICAgICAgKHNlbGVjdGVkKT1cIl9zZWxlY3RJdGVtKCRldmVudClcIlxuICAgICAgICAoY2xvc2VUYWIpPVwiX2Nsb3NlVGFiKCRldmVudClcIlxuICAgID48L2ZkcC1pY29uLXRhYi1iYXItaWNvbi10eXBlPlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjdGV4dFR5cGU+XG4gICAgPGZkcC1pY29uLXRhYi1iYXItdGV4dC10eXBlXG4gICAgICAgIFt0YWJzXT1cIl90YWJzJCgpXCJcbiAgICAgICAgW211bHRpQ2xpY2tdPVwibXVsdGlDbGljaygpXCJcbiAgICAgICAgW2xheW91dE1vZGVdPVwibGF5b3V0TW9kZSgpXCJcbiAgICAgICAgW2lzUnRsXT1cIl9ydGwkKClcIlxuICAgICAgICBbc2VsZWN0ZWRVaWRdPVwiX3NlbGVjdGVkVWlkKClcIlxuICAgICAgICAoc2VsZWN0ZWRVaWRDaGFuZ2UpPVwiX3NlbGVjdGVkVWlkLnNldCgkZXZlbnQpXCJcbiAgICAgICAgW2RlbnNpdHlNb2RlXT1cImRlbnNpdHlNb2RlKClcIlxuICAgICAgICBbZW5hYmxlVGFiUmVvcmRlcmluZ109XCJlbmFibGVUYWJSZW9yZGVyaW5nKClcIlxuICAgICAgICBbY29sb3JBc3NvY2lhdGlvbnNdPVwiY29sb3JBc3NvY2lhdGlvbnMoKVwiXG4gICAgICAgIChyZW9yZGVyZWQpPVwiX29uUmVvcmRlcigkZXZlbnQpXCJcbiAgICAgICAgKHNlbGVjdGVkKT1cIl9zZWxlY3RJdGVtKCRldmVudClcIlxuICAgICAgICAoY2xvc2VUYWIpPVwiX2Nsb3NlVGFiKCRldmVudClcIlxuICAgID48L2ZkcC1pY29uLXRhYi1iYXItdGV4dC10eXBlPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
310
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi10YWItYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vaWNvbi10YWItYmFyL2ljb24tdGFiLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2ljb24tdGFiLWJhci9pY29uLXRhYi1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUNILGdCQUFnQixFQUNoQix1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsZUFBZSxFQUNmLFVBQVUsRUFFVixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxLQUFLLEVBQ0wsS0FBSyxFQUVMLFFBQVEsRUFDUixNQUFNLEVBQ04sTUFBTSxFQUNOLFNBQVMsRUFDVCxZQUFZLEVBQ1osaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBWSxVQUFVLEVBQUUsU0FBUyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRXJFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxVQUFVLEVBQVcsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7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R1osNkJBQTZCLGlHQTREWSxjQUFjLGdFQ3ZNeEYsNnVIQThGQSwyeHhKRGpDUSxnQkFBZ0Isb0pBQ2hCLDhCQUE4QiwwRUFDOUIsNkJBQTZCLG1HQUM3QiwyQkFBMkIsOEZBQzNCLDJCQUEyQiw0SkFDM0Isa0JBQWtCLCtJQUNsQixrQkFBa0IseU1BQ2xCLDZCQUE2Qjs7MkZBR3hCLG1CQUFtQjtrQkF4Qi9CLFNBQVM7K0JBQ0ksa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksY0FDekIsSUFBSSxhQUNMO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxVQUFVOzRCQUNuQixXQUFXLHFCQUFxQjt5QkFDbkM7cUJBQ0osV0FDUTt3QkFDTCxnQkFBZ0I7d0JBQ2hCLDhCQUE4Qjt3QkFDOUIsNkJBQTZCO3dCQUM3QiwyQkFBMkI7d0JBQzNCLDJCQUEyQjt3QkFDM0Isa0JBQWtCO3dCQUNsQixrQkFBa0I7d0JBQ2xCLDZCQUE2QjtxQkFDaEM7OzBCQXVJSSxRQUFROzswQkFDUixRQUFRO3lDQWhJYixZQUFZO3NCQURYLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBa0UxQixXQUFXO3NCQUR0QixXQUFXO3VCQUFDLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBib29sZWFuQXR0cmlidXRlLFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBjb21wdXRlZCxcbiAgICBjb250ZW50Q2hpbGRyZW4sXG4gICAgRGVzdHJveVJlZixcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBpbnB1dCxcbiAgICBtb2RlbCxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgb3V0cHV0LFxuICAgIHNpZ25hbCxcbiAgICB2aWV3Q2hpbGQsXG4gICAgdmlld0NoaWxkcmVuLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgQ29udGVudERlbnNpdHlTZXJ2aWNlLCBOdWxsYWJsZSwgUnRsU2VydmljZSwgc2Nyb2xsVG9wIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgRkRfRFlOQU1JQ19QQUdFIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2R5bmFtaWMtcGFnZSc7XG5pbXBvcnQgeyBJY29uRm9udCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9pY29uJztcbmltcG9ydCB7IFNjcm9sbFNweURpcmVjdGl2ZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zY3JvbGwtc3B5JztcbmltcG9ydCB7IFNjcm9sbGJhckRpcmVjdGl2ZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zY3JvbGxiYXInO1xuaW1wb3J0IHsgRkRfVEFCTElTVCwgVGFiTGlzdCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zaGFyZWQnO1xuaW1wb3J0IHsgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaXJzdCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEljb25UYWJCYXJCYXNlIH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IEljb25UYWJCYXJGaWx0ZXJUeXBlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2ljb24tdGFiLWJhci1maWx0ZXItdHlwZS9pY29uLXRhYi1iYXItZmlsdGVyLXR5cGUuY29tcG9uZW50JztcbmltcG9ydCB7IEljb25UYWJCYXJJY29uVHlwZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9pY29uLXRhYi1iYXItaWNvbi10eXBlL2ljb24tdGFiLWJhci1pY29uLXR5cGUuY29tcG9uZW50JztcbmltcG9ydCB7IEljb25UYWJCYXJQcm9jZXNzVHlwZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9pY29uLXRhYi1iYXItcHJvY2Vzcy10eXBlL2ljb24tdGFiLWJhci1wcm9jZXNzLXR5cGUuY29tcG9uZW50JztcbmltcG9ydCB7XG4gICAgSWNvblRhYkJhclRhYkNvbXBvbmVudCxcbiAgICBJY29uVGFiQmFyVGFiQ29udGVudERpcmVjdGl2ZVxufSBmcm9tICcuL2NvbXBvbmVudHMvaWNvbi10YWItYmFyLXRhYi9pY29uLXRhYi1iYXItdGFiLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJY29uVGFiQmFyVGV4dFR5cGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaWNvbi10YWItYmFyLXRleHQtdHlwZS9pY29uLXRhYi1iYXItdGV4dC10eXBlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVTklRVUVfS0VZX1NFUEFSQVRPUiB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IEljb25UYWJCYXJJdGVtIH0gZnJvbSAnLi9pbnRlcmZhY2VzL2ljb24tdGFiLWJhci1pdGVtLmludGVyZmFjZSc7XG5pbXBvcnQgeyBUYWJDb2xvckFzc29jaWF0aW9ucyB9IGZyb20gJy4vaW50ZXJmYWNlcy90YWItY29sb3ItYXNzb2NpYXRpb25zLmludGVyZmFjZSc7XG5pbXBvcnQgeyBUYWJDb25maWcgfSBmcm9tICcuL2ludGVyZmFjZXMvdGFiLWNvbmZpZy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSWNvblRhYkJhckJhY2tncm91bmQsIEljb25UYWJCYXJTaXplLCBUYWJEZXN0aW55TW9kZSwgVGFiVHlwZSB9IGZyb20gJy4vdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZkcC1pY29uLXRhYi1iYXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9pY29uLXRhYi1iYXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9pY29uLXRhYi1iYXIuY29tcG9uZW50LnNjc3MnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogRkRfVEFCTElTVCxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBJY29uVGFiQmFyQ29tcG9uZW50XG4gICAgICAgIH1cbiAgICBdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICAgICAgSWNvblRhYkJhclByb2Nlc3NUeXBlQ29tcG9uZW50LFxuICAgICAgICBJY29uVGFiQmFyRmlsdGVyVHlwZUNvbXBvbmVudCxcbiAgICAgICAgSWNvblRhYkJhckljb25UeXBlQ29tcG9uZW50LFxuICAgICAgICBJY29uVGFiQmFyVGV4dFR5cGVDb21wb25lbnQsXG4gICAgICAgIFNjcm9sbGJhckRpcmVjdGl2ZSxcbiAgICAgICAgU2Nyb2xsU3B5RGlyZWN0aXZlLFxuICAgICAgICBJY29uVGFiQmFyVGFiQ29udGVudERpcmVjdGl2ZVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgSWNvblRhYkJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgVGFiTGlzdCB7XG4gICAgLyoqXG4gICAgICogV2hldGhlciB0byBvcGVuIHRhYiBjb250ZW50IG9uZSB1bmRlciBhbm90aGVyIHdpdGhvdXQgY29sbGFwc2luZy5cbiAgICAgKiBXb3JrcyBvbmx5IGZvciBjb250ZW50LXByb2plY3RlZCB0YWIgY29udGVudC5cbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgICBzdGFja0NvbnRlbnQgPSBmYWxzZTtcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gVHlwZSBvZiB0YWIgYmFyIHZpZXcuICovXG4gICAgaWNvblRhYlR5cGUgPSBpbnB1dDxUYWJUeXBlPigndGV4dCcpO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIEEgdGFiIGJhciBjb25maWd1cmF0aW9uIHRoYXQgc3RvcmVzIHRoZSBzdGF0ZSBvZiBlYWNoIHRhYi4gQmFzZWQgb24gdGhpcyBjb25maWd1cmF0aW9uLCBhIHRhYiBiYXIgaXMgcmVwcmVzZW50aW5nLlxuICAgICAqL1xuICAgIHRhYnNDb25maWcgPSBtb2RlbDxUYWJDb25maWdbXT4oKTtcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gRGVzdGlueSBtb2RlLiAqL1xuICAgIGRlbnNpdHlNb2RlID0gbW9kZWw8VGFiRGVzdGlueU1vZGU+KCdpbmhlcml0Jyk7XG5cbiAgICAvKiogQGRlc2NyaXB0aW9uIEljb24gZm9udCAqL1xuICAgIGljb25UYWJGb250ID0gaW5wdXQ8SWNvbkZvbnQ+KCdTQVAtaWNvbnMnKTtcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gRGlzYWJsZSBvciBlbmFibGUgcmVvcmRlcmluZyhkcmFnIGFuZCBkcm9wKSBmZWF0dXJlLiAoc3VwcG9ydGVkIGJ5IHRleHQgdHlwZSBvbmx5KSAqL1xuICAgIGVuYWJsZVRhYlJlb3JkZXJpbmcgPSBpbnB1dChmYWxzZSk7XG5cbiAgICAvKiogQGRlc2NyaXB0aW9uIEJvb2xlYW4gZmxhZyBpbmRpY2F0aW5nIHRvIHNob3cgdG90YWwgdGFiLihzdXBwb3J0ZWQgYnkgZmlsdGVyIHR5cGUgb25seSkgKi9cbiAgICBzaG93VG90YWxUYWIgPSBpbnB1dCh0cnVlKTtcblxuICAgIC8qKiBXaGV0aGVyIHRvIHJlbmRlciBpY29uIHRhYiBpdGVtIGFzIG11bHRpLWNsaWNrIHZhcmlhbnQuICovXG4gICAgbXVsdGlDbGljayA9IGlucHV0KGZhbHNlKTtcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gTGF5b3V0IHR5cGUgZm9yIHRhYiAoc3VwcG9ydGVkIGJ5IHRleHQgdHlwZSBvbmx5KSAqL1xuICAgIGxheW91dE1vZGUgPSBpbnB1dDwncm93JyB8ICdjb2x1bW4nPigncm93Jyk7XG5cbiAgICAvKiogQGRlc2NyaXB0aW9uIEljb24gdGFiIGJhciBiYWNrZ3JvdW5kIHR5cGUuICovXG4gICAgaWNvblRhYkJhY2tncm91bmQgPSBpbnB1dDxJY29uVGFiQmFyQmFja2dyb3VuZD4oJ3NvbGlkJyk7XG5cbiAgICAvKiogQGRlc2NyaXB0aW9uIEljb24gdGFiIGJhciBzaXplLiAqL1xuICAgIGljb25UYWJTaXplID0gaW5wdXQ8SWNvblRhYkJhclNpemU+KCk7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gQXNzb2NpYXRpb25zIGZvciBjb2xvcnMgb2YgdGhlIHRhYnMuXG4gICAgICogSWYgYW55IG9mIHRoZSBjb2xvciBhc3NvY2lhdGlvbnMgcHJvdmlkZWQsIHRoZXknbGwgYmUgcmVhZCBieSBzY3JlZW5yZWFkZXIgaW5zdGVhZCBvZiB0aGUgYWN0dWFsIGNvbG9yXG4gICAgICovXG4gICAgY29sb3JBc3NvY2lhdGlvbnMgPSBpbnB1dDxUYWJDb2xvckFzc29jaWF0aW9ucz4oKTtcblxuICAgIC8qKlxuICAgICAqIE1heGltdW0gaGVpZ2h0IG9mIHRoZSBjb250ZW50LlxuICAgICAqIFdvcmtzIG9ubHkgZm9yIGNvbnRlbnQtcHJvamVjdGVkIHRhYiBjb250ZW50LlxuICAgICAqL1xuICAgIG1heENvbnRlbnRIZWlnaHQgPSBpbnB1dCgnMTAwJScpO1xuXG4gICAgLyoqIEBkZXNjcmlwdGlvbiBFbWl0cyB3aGVuIHNvbWUgdGFiIGlzIHNlbGVjdGVkLiAqL1xuICAgIGljb25UYWJTZWxlY3RlZCA9IG91dHB1dDxJY29uVGFiQmFySXRlbT4oKTtcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gRW1pdHMgd2hlbiB1c2VyIGRyb3AgdGFiLiAqL1xuICAgIGljb25UYWJSZW9yZGVyZWQgPSBvdXRwdXQ8SWNvblRhYkJhckl0ZW1bXT4oKTtcblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIHdoZW4gdXNlciBjbGlja3Mgb24geCBpY29uIGluIHRhYi4gKi9cbiAgICBjbG9zZVRhYiA9IG91dHB1dDxJY29uVGFiQmFySXRlbT4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY2hpbGRyZW4gPSBjb250ZW50Q2hpbGRyZW4oSWNvblRhYkJhclRhYkNvbXBvbmVudCwgeyBkZXNjZW5kYW50czogZmFsc2UgfSk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9zY3JvbGxiYXIgPSB2aWV3Q2hpbGQoU2Nyb2xsYmFyRGlyZWN0aXZlKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgdGFiRGlyZWN0aXZlcyA9IHZpZXdDaGlsZHJlbihJY29uVGFiQmFyVGFiQ29udGVudERpcmVjdGl2ZSk7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkLXRhYnMtY3VzdG9tJylcbiAgICBwcml2YXRlIGdldCBfY3VzdG9tVGFicygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2luRHluYW1pY1BhZ2U7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgaGVhZGVyQ29udGFpbmVyKCk6IE51bGxhYmxlPEVsZW1lbnRSZWY+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ljb25UYWJCYXJDbXAoKT8uaGVhZGVyRWxlbWVudDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9jc3NDbGFzc0ZvckNvbnRhaW5lcjogc3RyaW5nW107XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9kaXNhYmxlU2Nyb2xsU3B5ID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9pbml0ID0gdHJ1ZTtcblxuICAgIC8qKiBTY3JvbGxhYmxlIGVsZW1lbnQgcmVmZXJlbmNlLiAqL1xuICAgIGdldCBzY3JvbGxhYmxlRWxlbWVudCgpOiBOdWxsYWJsZTxFbGVtZW50UmVmPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zY3JvbGxiYXIoKT8uZWxlbWVudFJlZjtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IF9zZWxlY3RlZFVpZCA9IHNpZ25hbDxzdHJpbmcgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IF90YWJzJCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuX2dlbmVyYXRlVGFiQmFySXRlbXModGhpcy5fdGFic0NvbmZpZyQoKSkpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICByZWFkb25seSBfZmxhdFRhYnMkID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5fZ2VuZXJhdGVGbGF0VGFicyh0aGlzLl90YWJzJCgpKSk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IF90YWJSZW5kZXJlciQgPSBzaWduYWw8SWNvblRhYkJhckl0ZW0gfCBudWxsPihudWxsKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVhZG9ubHkgX3J0bCQgPSBjb21wdXRlZCgoKSA9PiAhIXRoaXMuX3J0bFNlcnZpY2U/LnJ0bFNpZ25hbCgpKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVhZG9ubHkgX3RhYnNDb25maWckID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCB0YWJDb25maWcgPSB0aGlzLnRhYnNDb25maWcoKTtcbiAgICAgICAgaWYgKHRhYkNvbmZpZykge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMudGFic0NvbmZpZygpIGFzIFRhYkNvbmZpZ1tdO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgY2hpbGRyZW4gPSB0aGlzLmNoaWxkcmVuKCk7XG4gICAgICAgIGlmICghY2hpbGRyZW4pIHtcbiAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY2hpbGRyZW4ubWFwKCh0KSA9PiB0aGlzLl9nZW5lcmF0ZVRhYkNvbmZpZyh0KSk7XG4gICAgfSk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9pbkR5bmFtaWNQYWdlID0gISFpbmplY3QoRkRfRFlOQU1JQ19QQUdFLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBfaWNvblRhYkJhckNtcCA9IHZpZXdDaGlsZDxOdWxsYWJsZTxJY29uVGFiQmFyQmFzZT4+KEljb25UYWJCYXJCYXNlKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgX2NkOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfY29udGVudERlbnNpdHlTZXJ2aWNlOiBDb250ZW50RGVuc2l0eVNlcnZpY2UsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgX3J0bFNlcnZpY2U6IFJ0bFNlcnZpY2VcbiAgICApIHt9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9jc3NDbGFzc0ZvckNvbnRhaW5lciA9IHRoaXMuX2dlbmVyYXRlQ29udGFpbmVyU3R5bGVzKCk7XG5cbiAgICAgICAgaWYgKHRoaXMuZGVuc2l0eU1vZGUoKSA9PT0gJ2luaGVyaXQnKSB7XG4gICAgICAgICAgICB0aGlzLl9jb250ZW50RGVuc2l0eVNlcnZpY2U/Ll9jb250ZW50RGVuc2l0eUxpc3RlbmVyXG4gICAgICAgICAgICAgICAgLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuX2Rlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKGRlbnNpdHkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kZW5zaXR5TW9kZS5zZXQoZGVuc2l0eSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChkZW5zaXR5ICE9PSAnY29tcGFjdCcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2Nzc0NsYXNzRm9yQ29udGFpbmVyID0gdGhpcy5fY3NzQ2xhc3NGb3JDb250YWluZXIuZmlsdGVyKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjc3NDbGFzcykgPT4gY3NzQ2xhc3MgIT09ICdmZC1pY29uLXRhYi1iYXItLWNvbXBhY3QnXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fY3NzQ2xhc3NGb3JDb250YWluZXIucHVzaCgnZmQtaWNvbi10YWItYmFyLS1jb21wYWN0Jyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEBwYXJhbSBldmVudCByZW9yZGVyZWQgYXJyYXkgb2YgSWNvblRhYkJhckl0ZW1cbiAgICAgKi9cbiAgICBfb25SZW9yZGVyKGV2ZW50OiBJY29uVGFiQmFySXRlbVtdKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaWNvblRhYlJlb3JkZXJlZC5lbWl0KGV2ZW50KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQHBhcmFtIHNlbGVjdGVkSXRlbVxuICAgICAqL1xuICAgIF9zZWxlY3RJdGVtKHNlbGVjdGVkSXRlbTogSWNvblRhYkJhckl0ZW0pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdGFiUmVuZGVyZXIkLnNldChzZWxlY3RlZEl0ZW0pO1xuICAgICAgICB0aGlzLmljb25UYWJTZWxlY3RlZC5lbWl0KHNlbGVjdGVkSXRlbSk7XG5cbiAgICAgICAgaWYgKHRoaXMuc3RhY2tDb250ZW50KSB7XG4gICAgICAgICAgICB0aGlzLl9zY3JvbGxUb1BhbmVsKHRoaXMudGFiRGlyZWN0aXZlcygpLmZpbmQoKHRhYikgPT4gdGFiLnVJZCgpID09PSBzZWxlY3RlZEl0ZW0udUlkKSEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfY2xvc2VUYWIoaXRlbTogSWNvblRhYkJhckl0ZW0pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jbG9zZVRhYi5lbWl0KGl0ZW0pO1xuICAgIH1cblxuICAgIC8qKiBQcm9ncmFtbWF0aWNhbGx5IHNlbGVjdCB0YWIuICovXG4gICAgc2VsZWN0VGFiKGlkOiBOdWxsYWJsZTxzdHJpbmc+KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkSXRlbSA9IHRoaXMuX2ZsYXRUYWJzJCgpLmZpbmQoKHQpID0+IHQuaWQgPT09IGlkKTtcbiAgICAgICAgaWYgKCFzZWxlY3RlZEl0ZW0pIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9zZWxlY3RlZFVpZC5zZXQoc2VsZWN0ZWRJdGVtLnVJZCk7XG4gICAgICAgIHRoaXMuX3NlbGVjdEl0ZW0oc2VsZWN0ZWRJdGVtKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGhpZ2hsaWdodEFjdGl2ZVRhYihpZDogTnVsbGFibGU8c3RyaW5nPiwgc2Nyb2xsID0gZmFsc2UpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuX2Rpc2FibGVTY3JvbGxTcHkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBhY3RpdmVUYWIgPSB0aGlzLnRhYkRpcmVjdGl2ZXMoKS5maW5kKCh0YWIpID0+IHRhYi5pZCgpID09PSBpZCk7XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkVWlkLnNldChhY3RpdmVUYWI/LnVJZCgpIHx8IHVuZGVmaW5lZCk7XG4gICAgICAgIGlmIChzY3JvbGwgJiYgYWN0aXZlVGFiKSB7XG4gICAgICAgICAgICB0aGlzLl9zY3JvbGxUb1BhbmVsKGFjdGl2ZVRhYik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQHJldHVybnMgYXJyYXkgb2YgY3NzIGNsYXNzZXMgZm9yIGljb24tdGFiLWJhciBjb250YWluZXJcbiAgICAgKi9cbiAgICBwcml2YXRlIF9nZW5lcmF0ZUNvbnRhaW5lclN0eWxlcygpOiBzdHJpbmdbXSB7XG4gICAgICAgIGNvbnN0IHN0eWxlcyA9IFtgZmQtaWNvbi10YWItYmFyLS0ke3RoaXMuaWNvblRhYlR5cGUoKX1gXTtcbiAgICAgICAgY29uc3QgdGFic0NvbmZpZyA9IHRoaXMudGFic0NvbmZpZygpO1xuICAgICAgICBpZiAodGFic0NvbmZpZyAmJiB0aGlzLmljb25UYWJUeXBlKCkgPT09ICdwcm9jZXNzJyAmJiB0YWJzQ29uZmlnWzBdLmljb24pIHtcbiAgICAgICAgICAgIHN0eWxlcy5wdXNoKCdmZC1pY29uLXRhYi1iYXItLWljb24nKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5pY29uVGFiQmFja2dyb3VuZCgpICE9PSAnc29saWQnKSB7XG4gICAgICAgICAgICBzdHlsZXMucHVzaChgZmQtaWNvbi10YWItYmFyLS0ke3RoaXMuaWNvblRhYkJhY2tncm91bmQoKX1gKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5pY29uVGFiU2l6ZSgpKSB7XG4gICAgICAgICAgICBzdHlsZXMucHVzaChgZmQtaWNvbi10YWItYmFyLS0ke3RoaXMuaWNvblRhYlNpemUoKSF9YCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuZGVuc2l0eU1vZGUoKSA9PT0gJ2NvbXBhY3QnKSB7XG4gICAgICAgICAgICBzdHlsZXMucHVzaCgnZmQtaWNvbi10YWItYmFyLS1jb21wYWN0Jyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMubGF5b3V0TW9kZSgpID09PSAnY29sdW1uJykge1xuICAgICAgICAgICAgc3R5bGVzLnB1c2goJ2ZkLWljb24tdGFiLWJhci0tY291bnRlcnMnKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc3R5bGVzO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2dlbmVyYXRlVGFiQ29uZmlnKHRhYjogSWNvblRhYkJhclRhYkNvbXBvbmVudCk6IFRhYkNvbmZpZyB7XG4gICAgICAgIGNvbnN0IHRhYkNvbmZpZzogVGFiQ29uZmlnID0ge1xuICAgICAgICAgICAgbGFiZWw6IHRhYi5sYWJlbCgpLFxuICAgICAgICAgICAgY29sb3I6IHRhYi5jb2xvcigpLFxuICAgICAgICAgICAgYWN0aXZlOiB0YWIuYWN0aXZlKCksXG4gICAgICAgICAgICBiYWRnZTogdGFiLmJhZGdlKCksXG4gICAgICAgICAgICBjb3VudGVyOiB0YWIuY291bnRlcigpLFxuICAgICAgICAgICAgcmVuZGVyZXI6IHRhYi5yZW5kZXJlcigpLFxuICAgICAgICAgICAgaWQ6IHRhYi5pZCgpLFxuICAgICAgICAgICAgdGl0bGVUZW1wbGF0ZTogdGFiLnRpdGxlVGVtcGxhdGUoKSxcbiAgICAgICAgICAgIHN1Ykl0ZW1zOiB0YWIuY2hpbGRyZW4oKS5tYXAoKGMpID0+IHRoaXMuX2dlbmVyYXRlVGFiQ29uZmlnKGMpKVxuICAgICAgICB9O1xuXG4gICAgICAgIHJldHVybiB0YWJDb25maWc7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zY3JvbGxUb1BhbmVsKHRhYlBhbmVsOiBOdWxsYWJsZTxJY29uVGFiQmFyVGFiQ29udGVudERpcmVjdGl2ZT4pOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0YWJQYW5lbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHNjcm9sbGJhciA9IHRoaXMuX3Njcm9sbGJhcigpO1xuICAgICAgICBpZiAoIXNjcm9sbGJhcikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHBhbmVsRWxlbWVudCA9IHRhYlBhbmVsLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3QgY29udGFpbmVyRWxlbWVudCA9IHNjcm9sbGJhci5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IGRpc3RhbmNlVG9TY3JvbGwgPSBwYW5lbEVsZW1lbnQub2Zmc2V0VG9wIC0gY29udGFpbmVyRWxlbWVudC5vZmZzZXRUb3A7XG4gICAgICAgIGNvbnN0IG1heGltdW1TY3JvbGxUb3AgPSBjb250YWluZXJFbGVtZW50LnNjcm9sbEhlaWdodCAtIGNvbnRhaW5lckVsZW1lbnQuY2xpZW50SGVpZ2h0O1xuICAgICAgICBjb25zdCBjdXJyZW50U2Nyb2xsUG9zaXRpb24gPSBNYXRoLmNlaWwoY29udGFpbmVyRWxlbWVudC5zY3JvbGxUb3ApO1xuXG4gICAgICAgIGlmICghKGN1cnJlbnRTY3JvbGxQb3NpdGlvbiA9PT0gbWF4aW11bVNjcm9sbFRvcCAmJiBkaXN0YW5jZVRvU2Nyb2xsID4gbWF4aW11bVNjcm9sbFRvcCkpIHtcbiAgICAgICAgICAgIHRoaXMuX2Rpc2FibGVTY3JvbGxTcHkgPSB0cnVlO1xuICAgICAgICAgICAgZnJvbUV2ZW50KGNvbnRhaW5lckVsZW1lbnQsICdzY3JvbGwnKVxuICAgICAgICAgICAgICAgIC5waXBlKGRlYm91bmNlVGltZSgxMDApLCBmaXJzdCgpLCB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5fZGVzdHJveVJlZikpXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiAodGhpcy5fZGlzYWJsZVNjcm9sbFNweSA9IGZhbHNlKSk7XG4gICAgICAgICAgICBzY3JvbGxUb3AoY29udGFpbmVyRWxlbWVudCwgZGlzdGFuY2VUb1Njcm9sbCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQGRlc2NyaXB0aW9uIGdlbmVyYXRlIEljb25UYWJJdGVtcyBmcm9tIFRhYkNvbmZpZyBhcnJheVxuICAgICAqL1xuICAgIHByaXZhdGUgX2dlbmVyYXRlVGFiQmFySXRlbXMoXG4gICAgICAgIGNvbmZpZzogVGFiQ29uZmlnW10sXG4gICAgICAgIGluZGV4UHJlZml4ID0gJycsXG4gICAgICAgIGZsYXRJbmRleFJlZj86IEZsYXRJbmRleCxcbiAgICAgICAgcGFyZW50VUlkPzogc3RyaW5nXG4gICAgKTogSWNvblRhYkJhckl0ZW1bXSB7XG4gICAgICAgIGZsYXRJbmRleFJlZiA9IGZsYXRJbmRleFJlZiB8fCB7IHZhbHVlOiAwIH07XG4gICAgICAgIHJldHVybiBjb25maWcubWFwKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdUlkID0gYCR7aW5kZXhQcmVmaXh9JHtpbmRleH1gO1xuICAgICAgICAgICAgaWYgKCEoJ2NvbG9yJyBpbiBpdGVtKSkge1xuICAgICAgICAgICAgICAgIGl0ZW0uY29sb3IgPSAnZGVmYXVsdCc7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCByZXN1bHQ6IEljb25UYWJCYXJJdGVtID0ge1xuICAgICAgICAgICAgICAgIC4uLml0ZW0sXG4gICAgICAgICAgICAgICAgaW5kZXgsXG4gICAgICAgICAgICAgICAgY3NzQ2xhc3NlczogW10sXG4gICAgICAgICAgICAgICAgdUlkLFxuICAgICAgICAgICAgICAgIGhpZGRlbjogZmFsc2UsXG4gICAgICAgICAgICAgICAgcGFyZW50VUlkLFxuICAgICAgICAgICAgICAgIGZsYXRJbmRleDogZmxhdEluZGV4UmVmIS52YWx1ZSsrLFxuICAgICAgICAgICAgICAgIHN1Ykl0ZW1zOiB0aGlzLl9nZW5lcmF0ZVRhYkJhckl0ZW1zKFxuICAgICAgICAgICAgICAgICAgICBpdGVtLnN1Ykl0ZW1zIHx8IFtdLFxuICAgICAgICAgICAgICAgICAgICBgJHt1SWR9JHtVTklRVUVfS0VZX1NFUEFSQVRPUn1gLFxuICAgICAgICAgICAgICAgICAgICBmbGF0SW5kZXhSZWYsXG4gICAgICAgICAgICAgICAgICAgIHVJZFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBpZiAoaXRlbS5jb2xvcikge1xuICAgICAgICAgICAgICAgIHJlc3VsdC5jc3NDbGFzc2VzID0gW2BmZC1pY29uLXRhYi1iYXJfX2l0ZW0tLSR7aXRlbS5jb2xvcn1gXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2dlbmVyYXRlRmxhdFRhYnModGFiczogSWNvblRhYkJhckl0ZW1bXSk6IEljb25UYWJCYXJJdGVtW10ge1xuICAgICAgICBjb25zdCBmbGF0VGFicyA9IHRhYnMucmVkdWNlKChhY2M6IEljb25UYWJCYXJJdGVtW10sIHRhYikgPT4ge1xuICAgICAgICAgICAgYWNjLnB1c2godGFiKTtcbiAgICAgICAgICAgIGlmICh0YWIuc3ViSXRlbXMpIHtcbiAgICAgICAgICAgICAgICBhY2MucHVzaCguLi50aGlzLl9nZW5lcmF0ZUZsYXRUYWJzKHRhYi5zdWJJdGVtcykpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgICAgfSwgW10pO1xuXG4gICAgICAgIHJldHVybiBmbGF0VGFicztcbiAgICB9XG59XG5cbi8qKiBAaGlkZGVuIGhlbHBlciBvYmplY3QgdGhhdCBpcyB1c2VkIGluIHRhYiBnZW5lcmF0aW9uIGZ1bmN0aW9ucyB0byBjYWxjdWxhdGUgdGhlaXIgaW5kZXhlcyBub3QgZGVwZW5kaW5nIG9uIGxldmVsIG9mIG5lc3RpbmcgKi9cbmludGVyZmFjZSBGbGF0SW5kZXgge1xuICAgIHZhbHVlOiBudW1iZXI7XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmQtaWNvbi10YWItYmFyXCIgW2NsYXNzXT1cIl9jc3NDbGFzc0ZvckNvbnRhaW5lclwiPlxuICAgIEBpZiAoaWNvblRhYlR5cGUoKSA9PT0gJ3RleHQnKSB7XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJ0ZXh0VHlwZVwiPjwvbmctdGVtcGxhdGU+XG4gICAgfVxuICAgIEBpZiAoaWNvblRhYlR5cGUoKSA9PT0gJ2ljb24nIHx8IGljb25UYWJUeXBlKCkgPT09ICdpY29uLW9ubHknKSB7XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJpY29uVHlwZVwiPjwvbmctdGVtcGxhdGU+XG4gICAgfVxuICAgIEBpZiAoaWNvblRhYlR5cGUoKSA9PT0gJ2ZpbHRlcicpIHtcbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImZpbHRlclR5cGVcIj48L25nLXRlbXBsYXRlPlxuICAgIH1cbiAgICBAaWYgKGljb25UYWJUeXBlKCkgPT09ICdwcm9jZXNzJykge1xuICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwicHJvY2Vzc1R5cGVcIj48L25nLXRlbXBsYXRlPlxuICAgIH1cbiAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiZmQtaWNvbi10YWItYmFyX19jb250ZW50XCJcbiAgICAgICAgZmQtc2Nyb2xsYmFyXG4gICAgICAgIChzcHlDaGFuZ2UpPVwiaGlnaGxpZ2h0QWN0aXZlVGFiKCRldmVudC5pZClcIlxuICAgICAgICBbc2Nyb2xsU3B5RGlzYWJsZWRdPVwiIXN0YWNrQ29udGVudCB8fCBfZGlzYWJsZVNjcm9sbFNweVwiXG4gICAgICAgIGZkU2Nyb2xsU3B5XG4gICAgICAgIFt0cmFja2VkVGFnc109XCJbJ2ZkcC1pY29uLXRhYi1iYXItdGFiLWNvbnRlbnQnXVwiXG4gICAgICAgIFtzdHlsZS5tYXgtaGVpZ2h0XT1cIm1heENvbnRlbnRIZWlnaHQoKVwiXG4gICAgPlxuICAgICAgICBAaWYgKHN0YWNrQ29udGVudCkge1xuICAgICAgICAgICAgQGZvciAodGFiIG9mIF9mbGF0VGFicyQoKTsgdHJhY2sgdGFiKSB7XG4gICAgICAgICAgICAgICAgPGZkcC1pY29uLXRhYi1iYXItdGFiLWNvbnRlbnQgW2lkXT1cInRhYi5pZFwiIFt1SWRdPVwidGFiLnVJZFwiIGNsYXNzPVwiZmQtaWNvbi10YWItYmFyX190YWItY29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwidGFiLnJlbmRlcmVyIHx8IG51bGxcIj48L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgIDwvZmRwLWljb24tdGFiLWJhci10YWItY29udGVudD5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICBAaWYgKF90YWJSZW5kZXJlciQoKTsgYXMgdGFiUmVuZGVyZXIpIHtcbiAgICAgICAgICAgICAgICA8ZmRwLWljb24tdGFiLWJhci10YWItY29udGVudFxuICAgICAgICAgICAgICAgICAgICBbaWRdPVwidGFiUmVuZGVyZXIuaWRcIlxuICAgICAgICAgICAgICAgICAgICBbdUlkXT1cInRhYlJlbmRlcmVyLnVJZFwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmQtaWNvbi10YWItYmFyX190YWItY29udGVudFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwidGFiUmVuZGVyZXIucmVuZGVyZXIgfHwgbnVsbFwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgPC9mZHAtaWNvbi10YWItYmFyLXRhYi1jb250ZW50PlxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltmZHBJY29uVGFiQmFyRnJlZUNvbnRlbnRdXCI+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuPC9kaXY+XG48bmctdGVtcGxhdGUgI3Byb2Nlc3NUeXBlPlxuICAgIDxmZHAtaWNvbi10YWItYmFyLXByb2Nlc3MtdHlwZVxuICAgICAgICBbdGFic109XCJfdGFicyQoKVwiXG4gICAgICAgIFtpc1J0bF09XCJfcnRsJCgpXCJcbiAgICAgICAgW3NlbGVjdGVkVWlkXT1cIl9zZWxlY3RlZFVpZCgpXCJcbiAgICAgICAgKHNlbGVjdGVkVWlkQ2hhbmdlKT1cIl9zZWxlY3RlZFVpZC5zZXQoJGV2ZW50KVwiXG4gICAgICAgIFtkZW5zaXR5TW9kZV09XCJkZW5zaXR5TW9kZSgpXCJcbiAgICAgICAgW2NvbG9yQXNzb2NpYXRpb25zXT1cImNvbG9yQXNzb2NpYXRpb25zKClcIlxuICAgICAgICAoc2VsZWN0ZWQpPVwiX3NlbGVjdEl0ZW0oJGV2ZW50KVwiXG4gICAgPjwvZmRwLWljb24tdGFiLWJhci1wcm9jZXNzLXR5cGU+XG48L25nLXRlbXBsYXRlPlxuPG5nLXRlbXBsYXRlICNmaWx0ZXJUeXBlPlxuICAgIDxmZHAtaWNvbi10YWItYmFyLWZpbHRlci10eXBlXG4gICAgICAgIFt0YWJzXT1cIl90YWJzJCgpXCJcbiAgICAgICAgW3Nob3dUb3RhbFRhYl09XCJzaG93VG90YWxUYWIoKVwiXG4gICAgICAgIFtpc1J0bF09XCJfcnRsJCgpXCJcbiAgICAgICAgW3NlbGVjdGVkVWlkXT1cIl9zZWxlY3RlZFVpZCgpXCJcbiAgICAgICAgKHNlbGVjdGVkVWlkQ2hhbmdlKT1cIl9zZWxlY3RlZFVpZC5zZXQoJGV2ZW50KVwiXG4gICAgICAgIFtkZW5zaXR5TW9kZV09XCJkZW5zaXR5TW9kZSgpXCJcbiAgICAgICAgW2NvbG9yQXNzb2NpYXRpb25zXT1cImNvbG9yQXNzb2NpYXRpb25zKClcIlxuICAgICAgICAoc2VsZWN0ZWQpPVwiX3NlbGVjdEl0ZW0oJGV2ZW50KVwiXG4gICAgPjwvZmRwLWljb24tdGFiLWJhci1maWx0ZXItdHlwZT5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2ljb25UeXBlPlxuICAgIDxmZHAtaWNvbi10YWItYmFyLWljb24tdHlwZVxuICAgICAgICBbc2hvd0xhYmVsXT1cImljb25UYWJUeXBlKCkgPT09ICdpY29uJ1wiXG4gICAgICAgIFt0YWJzXT1cIl90YWJzJCgpXCJcbiAgICAgICAgW2lzUnRsXT1cIl9ydGwkKClcIlxuICAgICAgICBbc2VsZWN0ZWRVaWRdPVwiX3NlbGVjdGVkVWlkKClcIlxuICAgICAgICAoc2VsZWN0ZWRVaWRDaGFuZ2UpPVwiX3NlbGVjdGVkVWlkLnNldCgkZXZlbnQpXCJcbiAgICAgICAgW2RlbnNpdHlNb2RlXT1cImRlbnNpdHlNb2RlKClcIlxuICAgICAgICBbY29sb3JBc3NvY2lhdGlvbnNdPVwiY29sb3JBc3NvY2lhdGlvbnMoKVwiXG4gICAgICAgIChzZWxlY3RlZCk9XCJfc2VsZWN0SXRlbSgkZXZlbnQpXCJcbiAgICAgICAgKGNsb3NlVGFiKT1cIl9jbG9zZVRhYigkZXZlbnQpXCJcbiAgICA+PC9mZHAtaWNvbi10YWItYmFyLWljb24tdHlwZT5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI3RleHRUeXBlPlxuICAgIDxmZHAtaWNvbi10YWItYmFyLXRleHQtdHlwZVxuICAgICAgICBbdGFic109XCJfdGFicyQoKVwiXG4gICAgICAgIFttdWx0aUNsaWNrXT1cIm11bHRpQ2xpY2soKVwiXG4gICAgICAgIFtsYXlvdXRNb2RlXT1cImxheW91dE1vZGUoKVwiXG4gICAgICAgIFtpc1J0bF09XCJfcnRsJCgpXCJcbiAgICAgICAgW3NlbGVjdGVkVWlkXT1cIl9zZWxlY3RlZFVpZCgpXCJcbiAgICAgICAgKHNlbGVjdGVkVWlkQ2hhbmdlKT1cIl9zZWxlY3RlZFVpZC5zZXQoJGV2ZW50KVwiXG4gICAgICAgIFtkZW5zaXR5TW9kZV09XCJkZW5zaXR5TW9kZSgpXCJcbiAgICAgICAgW2VuYWJsZVRhYlJlb3JkZXJpbmddPVwiZW5hYmxlVGFiUmVvcmRlcmluZygpXCJcbiAgICAgICAgW2NvbG9yQXNzb2NpYXRpb25zXT1cImNvbG9yQXNzb2NpYXRpb25zKClcIlxuICAgICAgICAocmVvcmRlcmVkKT1cIl9vblJlb3JkZXIoJGV2ZW50KVwiXG4gICAgICAgIChzZWxlY3RlZCk9XCJfc2VsZWN0SXRlbSgkZXZlbnQpXCJcbiAgICAgICAgKGNsb3NlVGFiKT1cIl9jbG9zZVRhYigkZXZlbnQpXCJcbiAgICA+PC9mZHAtaWNvbi10YWItYmFyLXRleHQtdHlwZT5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWNvbmZpZy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2ljb24tdGFiLWJhci9pbnRlcmZhY2VzL3RhYi1jb25maWcuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbnB1dFNpZ25hbCwgSW5wdXRTaWduYWxXaXRoVHJhbnNmb3JtLCBTaWduYWwsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGZGtBc3luY1Byb3BlcnR5LCBOdWxsYWJsZSwgTnVsbGFibGVPYmplY3QgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBJY29uRm9udCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9pY29uJztcbmltcG9ydCB7IFNlbWFudGljQ29sb3IgfSBmcm9tICcuLi90eXBlcyc7XG5cbi8qKiBUaGlzIGlzIGNvbmZpZyB0aGF0IHVzZXIgc2hvdWxkIHByb3ZpZGUgdG8gaW5wdXQgKi9cbmV4cG9ydCB0eXBlIFRhYkNvbmZpZyA9IE51bGxhYmxlT2JqZWN0PHtcbiAgICBpY29uPzogRmRrQXN5bmNQcm9wZXJ0eTxzdHJpbmcgfCB1bmRlZmluZWQ+O1xuICAgIGxhYmVsOiBGZGtBc3luY1Byb3BlcnR5PHN0cmluZz47XG4gICAgY29sb3I6IEZka0FzeW5jUHJvcGVydHk8U2VtYW50aWNDb2xvciB8IHVuZGVmaW5lZD47XG4gICAgY291bnRlcjogRmRrQXN5bmNQcm9wZXJ0eTxudW1iZXI+O1xuICAgIC8qKiB3aGV0aGVyIHRoZSB0YWIgaXMgc2VsZWN0ZWQgKi9cbiAgICBhY3RpdmU6IGJvb2xlYW47XG4gICAgLyoqIGlmIHNldCB0byB0cnVlLCB3aWxsIHNob3cgcmVkIGNpcmNsZSBpbiB0b3AtcmlnaHQgY29ybmVyIG9mIHRhYiAqL1xuICAgIGJhZGdlOiBib29sZWFuO1xuICAgIC8qKiBjb25maWcgZm9yIG5lc3RlZCB0YWJzICovXG4gICAgc3ViSXRlbXM6IFRhYkNvbmZpZ1tdO1xuICAgIC8qKiBXaGV0aGVyIHRoZSB0YWIgY2FuIGJlIGNsb3NlZC4gKi9cbiAgICBjbG9zYWJsZTogYm9vbGVhbjtcbiAgICBpY29uRm9udDogSWNvbkZvbnQ7XG4gICAgcmVuZGVyZXI/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIGlkOiBzdHJpbmc7XG59PjtcblxuZXhwb3J0IHR5cGUgUmVhY3RpdmVUYWJDb25maWcgPSBOdWxsYWJsZU9iamVjdDx7XG4gICAgaWNvbj86IElucHV0U2lnbmFsPHN0cmluZyB8IHVuZGVmaW5lZD47XG4gICAgbGFiZWw6IElucHV0U2lnbmFsPE51bGxhYmxlPHN0cmluZz4+O1xuICAgIGNvbG9yOiBJbnB1dFNpZ25hbDxTZW1hbnRpY0NvbG9yPjtcbiAgICBjb3VudGVyOiBJbnB1dFNpZ25hbDxOdWxsYWJsZTxudW1iZXI+PjtcbiAgICAvKiogd2hldGhlciB0aGUgdGFiIGlzIHNlbGVjdGVkICovXG4gICAgYWN0aXZlOiBJbnB1dFNpZ25hbFdpdGhUcmFuc2Zvcm08Ym9vbGVhbiwgdW5rbm93bj47XG4gICAgLyoqIGlmIHNldCB0byB0cnVlLCB3aWxsIHNob3cgcmVkIGNpcmNsZSBpbiB0b3AtcmlnaHQgY29ybmVyIG9mIHRhYiAqL1xuICAgIGJhZGdlOiBJbnB1dFNpZ25hbFdpdGhUcmFuc2Zvcm08Ym9vbGVhbiwgdW5rbm93bj47XG4gICAgLyoqIGNvbmZpZyBmb3IgbmVzdGVkIHRhYnMgKi9cbiAgICBzdWJJdGVtczogUmVhY3RpdmVUYWJDb25maWdbXTtcbiAgICAvKiogV2hldGhlciB0aGUgdGFiIGNhbiBiZSBjbG9zZWQuICovXG4gICAgY2xvc2FibGU6IElucHV0U2lnbmFsV2l0aFRyYW5zZm9ybTxib29sZWFuLCB1bmtub3duPjtcbiAgICBpY29uRm9udDogSW5wdXRTaWduYWw8SWNvbkZvbnQ+O1xuICAgIHJlbmRlcmVyPzogU2lnbmFsPFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWQ+
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWNvbmZpZy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2ljb24tdGFiLWJhci9pbnRlcmZhY2VzL3RhYi1jb25maWcuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbnB1dFNpZ25hbCwgSW5wdXRTaWduYWxXaXRoVHJhbnNmb3JtLCBTaWduYWwsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGZGtBc3luY1Byb3BlcnR5LCBOdWxsYWJsZSwgTnVsbGFibGVPYmplY3QgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBJY29uRm9udCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9pY29uJztcbmltcG9ydCB7IFNlbWFudGljQ29sb3IgfSBmcm9tICcuLi90eXBlcyc7XG5cbi8qKiBUaGlzIGlzIGNvbmZpZyB0aGF0IHVzZXIgc2hvdWxkIHByb3ZpZGUgdG8gaW5wdXQgKi9cbmV4cG9ydCB0eXBlIFRhYkNvbmZpZyA9IE51bGxhYmxlT2JqZWN0PHtcbiAgICBpY29uPzogRmRrQXN5bmNQcm9wZXJ0eTxzdHJpbmcgfCB1bmRlZmluZWQ+O1xuICAgIGxhYmVsOiBGZGtBc3luY1Byb3BlcnR5PHN0cmluZz47XG4gICAgY29sb3I6IEZka0FzeW5jUHJvcGVydHk8U2VtYW50aWNDb2xvciB8IHVuZGVmaW5lZD47XG4gICAgY291bnRlcjogRmRrQXN5bmNQcm9wZXJ0eTxudW1iZXI+O1xuICAgIC8qKiB3aGV0aGVyIHRoZSB0YWIgaXMgc2VsZWN0ZWQgKi9cbiAgICBhY3RpdmU6IGJvb2xlYW47XG4gICAgLyoqIGlmIHNldCB0byB0cnVlLCB3aWxsIHNob3cgcmVkIGNpcmNsZSBpbiB0b3AtcmlnaHQgY29ybmVyIG9mIHRhYiAqL1xuICAgIGJhZGdlOiBib29sZWFuO1xuICAgIC8qKiBjb25maWcgZm9yIG5lc3RlZCB0YWJzICovXG4gICAgc3ViSXRlbXM6IFRhYkNvbmZpZ1tdO1xuICAgIC8qKiBXaGV0aGVyIHRoZSB0YWIgY2FuIGJlIGNsb3NlZC4gKi9cbiAgICBjbG9zYWJsZTogYm9vbGVhbjtcbiAgICBpY29uRm9udDogSWNvbkZvbnQ7XG4gICAgcmVuZGVyZXI/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIHRpdGxlVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIGlkOiBzdHJpbmc7XG59PjtcblxuZXhwb3J0IHR5cGUgUmVhY3RpdmVUYWJDb25maWcgPSBOdWxsYWJsZU9iamVjdDx7XG4gICAgaWNvbj86IElucHV0U2lnbmFsPHN0cmluZyB8IHVuZGVmaW5lZD47XG4gICAgbGFiZWw6IElucHV0U2lnbmFsPE51bGxhYmxlPHN0cmluZz4+O1xuICAgIGNvbG9yOiBJbnB1dFNpZ25hbDxTZW1hbnRpY0NvbG9yPjtcbiAgICBjb3VudGVyOiBJbnB1dFNpZ25hbDxOdWxsYWJsZTxudW1iZXI+PjtcbiAgICAvKiogd2hldGhlciB0aGUgdGFiIGlzIHNlbGVjdGVkICovXG4gICAgYWN0aXZlOiBJbnB1dFNpZ25hbFdpdGhUcmFuc2Zvcm08Ym9vbGVhbiwgdW5rbm93bj47XG4gICAgLyoqIGlmIHNldCB0byB0cnVlLCB3aWxsIHNob3cgcmVkIGNpcmNsZSBpbiB0b3AtcmlnaHQgY29ybmVyIG9mIHRhYiAqL1xuICAgIGJhZGdlOiBJbnB1dFNpZ25hbFdpdGhUcmFuc2Zvcm08Ym9vbGVhbiwgdW5rbm93bj47XG4gICAgLyoqIGNvbmZpZyBmb3IgbmVzdGVkIHRhYnMgKi9cbiAgICBzdWJJdGVtczogUmVhY3RpdmVUYWJDb25maWdbXTtcbiAgICAvKiogV2hldGhlciB0aGUgdGFiIGNhbiBiZSBjbG9zZWQuICovXG4gICAgY2xvc2FibGU6IElucHV0U2lnbmFsV2l0aFRyYW5zZm9ybTxib29sZWFuLCB1bmtub3duPjtcbiAgICBpY29uRm9udDogSW5wdXRTaWduYWw8SWNvbkZvbnQ+O1xuICAgIHJlbmRlcmVyPzogU2lnbmFsPFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWQ+O1xuICAgIHRpdGxlVGVtcGxhdGU/OiBTaWduYWw8VGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZD47XG4gICAgaWQ6IElucHV0U2lnbmFsPHN0cmluZz47XG59PjtcblxuZXhwb3J0IHR5cGUgRXh0ZW5kZWRUYWJDb25maWcgPSBUYWJDb25maWcgJiB7XG4gICAgaXNBY3RpdmUkOiBTaWduYWw8Ym9vbGVhbj47XG59O1xuIl19
|