@rededor/site-front-end-lib 1.3.60 → 1.3.62
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/lib/components/section-navigation/section-navigation.component.mjs +10 -4
- package/esm2022/lib/services/site-back-end/site-back-end.service.mjs +4 -1
- package/fesm2022/rededor-site-front-end-lib.mjs +12 -3
- package/fesm2022/rededor-site-front-end-lib.mjs.map +1 -1
- package/lib/components/section-navigation/section-navigation.component.d.ts +3 -1
- package/lib/services/site-back-end/site-back-end.service.d.ts +1 -0
- package/package.json +1 -1
|
@@ -34,6 +34,8 @@ export class SectionNavigationComponent {
|
|
|
34
34
|
this.isMobile = window.innerWidth < 768;
|
|
35
35
|
this.scrollToMenuAnchorSubscription = null;
|
|
36
36
|
this.scrollToMenuAnchorSubject = new BehaviorSubject('');
|
|
37
|
+
this.padding = 0;
|
|
38
|
+
this.headerClass = '.page-header';
|
|
37
39
|
this.ariaLabel = 'Navegação da página';
|
|
38
40
|
this.anchorAdjustment = 0;
|
|
39
41
|
this.sectionChange = new EventEmitter();
|
|
@@ -68,12 +70,12 @@ export class SectionNavigationComponent {
|
|
|
68
70
|
}
|
|
69
71
|
windowScroll() {
|
|
70
72
|
const navHeight = document.querySelector('.rdsite-section-navigation')?.getBoundingClientRect().top || 0;
|
|
71
|
-
const pageHeaderHeight = document.querySelector(
|
|
73
|
+
const pageHeaderHeight = document.querySelector(this.headerClass)?.getBoundingClientRect().top || 0;
|
|
72
74
|
let selectedIndex = -1;
|
|
73
75
|
this.sections()?.forEach((section, index) => {
|
|
74
76
|
const menuTop = document.querySelector(`#${section.id}`)?.getBoundingClientRect().top || 0;
|
|
75
77
|
if (menuTop) {
|
|
76
|
-
const calc = window.scrollY - menuTop + navHeight + pageHeaderHeight;
|
|
78
|
+
const calc = window.scrollY - menuTop + navHeight + pageHeaderHeight + this.padding;
|
|
77
79
|
if (calc >= 0) {
|
|
78
80
|
selectedIndex = index;
|
|
79
81
|
if (this.sections()?.[selectedIndex]) {
|
|
@@ -105,7 +107,7 @@ export class SectionNavigationComponent {
|
|
|
105
107
|
this.scrollToMenuAnchorSubscription?.unsubscribe();
|
|
106
108
|
}
|
|
107
109
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SectionNavigationComponent, deps: [{ token: i1.CuraService }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
108
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: SectionNavigationComponent, isStandalone: true, selector: "nav[rdsite-section-navigation]", inputs: { navigationSections: "navigationSections", navigationConfig: "navigationConfig", ariaLabel: "ariaLabel", anchorAdjustment: "anchorAdjustment" }, outputs: { sectionChange: "sectionChange" }, host: { listeners: { "window:resize": "onWindowResize()", "window:scroll": "onWindowScroll()" }, properties: { "style": "this.styleBinding" } }, viewQueries: [{ propertyName: "containerEl", first: true, predicate: ["containerEl"], descendants: true }, { propertyName: "navigationMenu", first: true, predicate: ["navigationMenu"], descendants: true, static: true }, { propertyName: "anchorsEl", predicate: ["anchorEl"], descendants: true }], ngImport: i0, template: "<nav class=\"rdsite-section-navigation\" [attr.aria-label]=\"ariaLabel\" [style.top.px]=\"config()?.offsetTop || 0\">\r\n <ul #containerEl class=\"rdsite-section-navigation-menu\" role=\"menubar\">\r\n @for (section of sections(); track section.id) {\r\n @if (section.title) {\r\n <li role=\"none\">\r\n <a\r\n #anchorEl\r\n id=\"anchor-{{ section.id }}\"\r\n role=\"menuitem\"\r\n [href]=\"getPath(section.id)\"\r\n rdsitelink\r\n [anchorAdjustment]=\"anchorAdjustment\"\r\n [attr.aria-current]=\"activeSection() === section.id ? 'page' : null\"\r\n [attr.aria-label]=\"'Navegar para ' + section.title\"\r\n [ngClass]=\"{ active: activeSection() === section.id }\"\r\n >\r\n {{ section.title }}\r\n </a>\r\n </li>\r\n }\r\n }\r\n </ul>\r\n</nav>\r\n", styles: [".rdsite-section-navigation{width:100%;position:sticky;left:0;z-index:1000;background-color:var(--neutral-purewhite);border-bottom:1px solid #b7b7b7;box-shadow:0 4px 8px 0 var(--neutral-black);padding-top:10px}.rdsite-section-navigation *{font-family:var(--font-family)}.rdsite-section-navigation-menu{box-sizing:border-box;width:90%;position:relative;max-width:1366px;margin-left:auto;margin-right:auto;display:flex}.rdsite-section-navigation-menu.full-container{width:100%;max-width:100%}@media only screen and (max-width: 1366px){.rdsite-section-navigation-menu{overflow-x:auto;white-space:nowrap}}.rdsite-section-navigation-menu li>a{text-decoration:none;padding:12px 8px;font-size:12px;font-weight:500;color:var(--neutral-dark);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:158px}@media only screen and (max-width: 1366px){.rdsite-section-navigation-menu li>a{max-width:135px}}.rdsite-section-navigation-menu li>a.active{border-radius:4px 4px 0 0!important;background-color:var(--color-base);color:var(--neutral-purewhite)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: RdsiteLinkDirective, selector: "[rdsitelink]", inputs: ["anchorAdjustment", "anchorExtraAdjustment", "phonemodal"] }] }); }
|
|
110
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: SectionNavigationComponent, isStandalone: true, selector: "nav[rdsite-section-navigation]", inputs: { padding: "padding", headerClass: "headerClass", navigationSections: "navigationSections", navigationConfig: "navigationConfig", ariaLabel: "ariaLabel", anchorAdjustment: "anchorAdjustment" }, outputs: { sectionChange: "sectionChange" }, host: { listeners: { "window:resize": "onWindowResize()", "window:scroll": "onWindowScroll()" }, properties: { "style": "this.styleBinding" } }, viewQueries: [{ propertyName: "containerEl", first: true, predicate: ["containerEl"], descendants: true }, { propertyName: "navigationMenu", first: true, predicate: ["navigationMenu"], descendants: true, static: true }, { propertyName: "anchorsEl", predicate: ["anchorEl"], descendants: true }], ngImport: i0, template: "<nav class=\"rdsite-section-navigation\" [attr.aria-label]=\"ariaLabel\" [style.top.px]=\"config()?.offsetTop || 0\">\r\n <ul #containerEl class=\"rdsite-section-navigation-menu\" role=\"menubar\">\r\n @for (section of sections(); track section.id) {\r\n @if (section.title) {\r\n <li role=\"none\">\r\n <a\r\n #anchorEl\r\n id=\"anchor-{{ section.id }}\"\r\n role=\"menuitem\"\r\n [href]=\"getPath(section.id)\"\r\n rdsitelink\r\n [anchorAdjustment]=\"anchorAdjustment\"\r\n [attr.aria-current]=\"activeSection() === section.id ? 'page' : null\"\r\n [attr.aria-label]=\"'Navegar para ' + section.title\"\r\n [ngClass]=\"{ active: activeSection() === section.id }\"\r\n >\r\n {{ section.title }}\r\n </a>\r\n </li>\r\n }\r\n }\r\n </ul>\r\n</nav>\r\n", styles: [".rdsite-section-navigation{width:100%;position:sticky;left:0;z-index:1000;background-color:var(--neutral-purewhite);border-bottom:1px solid #b7b7b7;box-shadow:0 4px 8px 0 var(--neutral-black);padding-top:10px}.rdsite-section-navigation *{font-family:var(--font-family)}.rdsite-section-navigation-menu{box-sizing:border-box;width:90%;position:relative;max-width:1366px;margin-left:auto;margin-right:auto;display:flex}.rdsite-section-navigation-menu.full-container{width:100%;max-width:100%}@media only screen and (max-width: 1366px){.rdsite-section-navigation-menu{overflow-x:auto;white-space:nowrap}}.rdsite-section-navigation-menu li>a{text-decoration:none;padding:12px 8px;font-size:12px;font-weight:500;color:var(--neutral-dark);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:158px}@media only screen and (max-width: 1366px){.rdsite-section-navigation-menu li>a{max-width:135px}}.rdsite-section-navigation-menu li>a.active{border-radius:4px 4px 0 0!important;background-color:var(--color-base);color:var(--neutral-purewhite)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: RdsiteLinkDirective, selector: "[rdsitelink]", inputs: ["anchorAdjustment", "anchorExtraAdjustment", "phonemodal"] }] }); }
|
|
109
111
|
}
|
|
110
112
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SectionNavigationComponent, decorators: [{
|
|
111
113
|
type: Component,
|
|
@@ -122,6 +124,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
122
124
|
}], onWindowScroll: [{
|
|
123
125
|
type: HostListener,
|
|
124
126
|
args: ['window:scroll']
|
|
127
|
+
}], padding: [{
|
|
128
|
+
type: Input
|
|
129
|
+
}], headerClass: [{
|
|
130
|
+
type: Input
|
|
125
131
|
}], navigationSections: [{
|
|
126
132
|
type: Input,
|
|
127
133
|
args: [{ required: true }]
|
|
@@ -140,4 +146,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
140
146
|
type: ViewChild,
|
|
141
147
|
args: ['navigationMenu', { static: true }]
|
|
142
148
|
}] } });
|
|
143
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi1uYXZpZ2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpdGUtZnJvbnQtZW5kLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvc2VjdGlvbi1uYXZpZ2F0aW9uL3NlY3Rpb24tbmF2aWdhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaXRlLWZyb250LWVuZC1saWIvc3JjL2xpYi9jb21wb25lbnRzL3NlY3Rpb24tbmF2aWdhdGlvbi9zZWN0aW9uLW5hdmlnYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixNQUFNLEVBQ04sTUFBTSxFQUVOLFNBQVMsRUFFVCxzQkFBc0IsRUFDdEIsV0FBVyxFQUNYLFlBQVksRUFDWixZQUFZLEdBR2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFnQixNQUFNLE1BQU0sQ0FBQzs7Ozs7QUFZbkUsTUFBTSxPQUFPLDBCQUEwQjtJQWNyQyxjQUFjO1FBQ1osSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsVUFBVSxHQUFHLEdBQUcsQ0FBQztJQUMxQyxDQUFDO0lBR0QsY0FBYztRQUNaLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFDSSxrQkFBa0IsQ0FBQyxLQUE4QjtRQUNuRCxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ25CLE1BQU0sSUFBSSxLQUFLLENBQUMsMkRBQTJELENBQUMsQ0FBQztRQUMvRSxD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RSxtQkFBbUI7OzRGQUtoQywwQkFBMEI7a0JBVHRDLFNBQVM7K0JBRUUsZ0NBQWdDLGNBQzlCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxtQkFBbUIsQ0FBQyxXQUNuQyxDQUFDLHNCQUFzQixDQUFDO3FHQWNQLFdBQVc7c0JBQXBDLFNBQVM7dUJBQUMsYUFBYTtnQkFDRSxTQUFTO3NCQUFsQyxZQUFZO3VCQUFDLFVBQVU7Z0JBR3hCLGNBQWM7c0JBRGIsWUFBWTt1QkFBQyxlQUFlO2dCQU03QixjQUFjO3NCQURiLFlBQVk7dUJBQUMsZUFBZTtnQkFNekIsa0JBQWtCO3NCQURyQixLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFhckIsZ0JBQWdCO3NCQURuQixLQUFLO2dCQUtHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUVJLGFBQWE7c0JBQXRCLE1BQU07Z0JBRWUsWUFBWTtzQkFBakMsV0FBVzt1QkFBQyxPQUFPO2dCQVMyQixjQUFjO3NCQUE1RCxTQUFTO3VCQUFDLGdCQUFnQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgc2lnbmFsLFxyXG4gIGVmZmVjdCxcclxuICBPbkluaXQsXHJcbiAgVmlld0NoaWxkLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSxcclxuICBIb3N0QmluZGluZyxcclxuICBIb3N0TGlzdGVuZXIsXHJcbiAgVmlld0NoaWxkcmVuLFxyXG4gIFF1ZXJ5TGlzdCxcclxuICBPbkRlc3Ryb3ksXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFNlY3Rpb25OYXZpZ2F0aW9uRGF0YSwgU2VjdGlvbk5hdmlnYXRpb25Db25maWcgfSBmcm9tICcuLi8uLi9tb2RlbHMvc2VjdGlvbi1uYXZpZ2F0aW9uLm1vZGVsJztcclxuaW1wb3J0IHsgQ3VyYVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jdXJhL2N1cmEuc2VydmljZSc7XHJcbmltcG9ydCB7IFJkc2l0ZUxpbmtEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBkZWJvdW5jZVRpbWUsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcclxuICBzZWxlY3RvcjogJ25hdltyZHNpdGUtc2VjdGlvbi1uYXZpZ2F0aW9uXScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBSZHNpdGVMaW5rRGlyZWN0aXZlXSxcclxuICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NlY3Rpb24tbmF2aWdhdGlvbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vc2VjdGlvbi1uYXZpZ2F0aW9uLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZWN0aW9uTmF2aWdhdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICByZWFkb25seSBzZWN0aW9ucyA9IHNpZ25hbDxTZWN0aW9uTmF2aWdhdGlvbkRhdGFbXT4oW10pO1xyXG4gIHJlYWRvbmx5IGNvbmZpZyA9IHNpZ25hbDxTZWN0aW9uTmF2aWdhdGlvbkNvbmZpZyB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcclxuICByZWFkb25seSBhY3RpdmVTZWN0aW9uID0gc2lnbmFsPHN0cmluZz4oJycpO1xyXG5cclxuICBpc01vYmlsZTogYm9vbGVhbiA9IHdpbmRvdy5pbm5lcldpZHRoIDwgNzY4O1xyXG5cclxuICBzY3JvbGxUb01lbnVBbmNob3JTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiB8IG51bGwgPSBudWxsO1xyXG4gIHNjcm9sbFRvTWVudUFuY2hvclN1YmplY3Q6IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+ID0gbmV3IEJlaGF2aW9yU3ViamVjdCgnJyk7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2NvbnRhaW5lckVsJykgY29udGFpbmVyRWwhOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcclxuICBAVmlld0NoaWxkcmVuKCdhbmNob3JFbCcpIGFuY2hvcnNFbCE6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPEhUTUxBbmNob3JFbGVtZW50Pj47XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnKVxyXG4gIG9uV2luZG93UmVzaXplKCk6IHZvaWQge1xyXG4gICAgdGhpcy5pc01vYmlsZSA9IHdpbmRvdy5pbm5lcldpZHRoIDwgNzY4O1xyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnNjcm9sbCcpXHJcbiAgb25XaW5kb3dTY3JvbGwoKTogdm9pZCB7XHJcbiAgICB0aGlzLndpbmRvd1Njcm9sbCgpO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcclxuICBzZXQgbmF2aWdhdGlvblNlY3Rpb25zKHZhbHVlOiBTZWN0aW9uTmF2aWdhdGlvbkRhdGFbXSkge1xyXG4gICAgaWYgKCF2YWx1ZT8ubGVuZ3RoKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcignTyBTZWN0aW9uTmF2aWdhdGlvbkNvbXBvbmVudCByZXF1ZXIgcGVsbyBtZW5vcyB1bWEgc2XDp8Ojby4nKTtcclxuICAgIH1cclxuICAgIHRoaXMuc2VjdGlvbnMuc2V0KHZhbHVlKTtcclxuXHJcbiAgICBpZiAoIXRoaXMuYWN0aXZlU2VjdGlvbigpKSB7XHJcbiAgICAgIHRoaXMuYWN0aXZlU2VjdGlvbi5zZXQodmFsdWVbMF0uaWQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgbmF2aWdhdGlvbkNvbmZpZyh2YWx1ZTogU2VjdGlvbk5hdmlnYXRpb25Db25maWcpIHtcclxuICAgIHRoaXMuY29uZmlnLnNldCh2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBhcmlhTGFiZWwgPSAnTmF2ZWdhw6fDo28gZGEgcMOhZ2luYSc7XHJcbiAgQElucHV0KCkgYW5jaG9yQWRqdXN0bWVudCA9IDA7XHJcblxyXG4gIEBPdXRwdXQoKSBzZWN0aW9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxTZWN0aW9uTmF2aWdhdGlvbkRhdGE+KCk7XHJcblxyXG4gIEBIb3N0QmluZGluZygnc3R5bGUnKSBzdHlsZUJpbmRpbmcgPSB7XHJcbiAgICAnLS1uZXV0cmFsLXB1cmV3aGl0ZSc6IHRoaXMuY3VyYVNlcnZpY2UuZ2V0Q29sb3IoJ25ldXRyYWwtcHVyZXdoaXRlJyksXHJcbiAgICAnLS1uZXV0cmFsLWRhcmsnOiB0aGlzLmN1cmFTZXJ2aWNlLmdldENvbG9yKCduZXV0cmFsLWRhcmsnKSxcclxuICAgICctLW5ldXRyYWwtYmxhY2snOiB0aGlzLmN1cmFTZXJ2aWNlLmdldENvbG9yKCduZXV0cmFsLWJsYWNrJywgMC4xNiksXHJcbiAgICAnLS1jb2xvci1iYXNlJzogdGhpcy5jdXJhU2VydmljZS5nZXRDb2xvcigncHJpbWFyeS1iYXNlJyksXHJcbiAgICAnLS1mb250LXNpemUnOiB0aGlzLmN1cmFTZXJ2aWNlLmdldEZvbnRTaXplKCksXHJcbiAgICAnLS1mb250LWZhbWlseSc6IHRoaXMuY3VyYVNlcnZpY2UuZ2V0Rm9udEZhbWlseSgnJyksXHJcbiAgfTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnbmF2aWdhdGlvbk1lbnUnLCB7IHN0YXRpYzogdHJ1ZSB9KSBuYXZpZ2F0aW9uTWVudSE6IEVsZW1lbnRSZWY8SFRNTFVMaXN0RWxlbWVudD47XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBjdXJhU2VydmljZTogQ3VyYVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICkge1xyXG4gICAgZWZmZWN0KCgpID0+IHtcclxuICAgICAgY29uc3Qgc2VjdGlvbnMgPSB0aGlzLnNlY3Rpb25zKCk7XHJcbiAgICAgIGlmIChzZWN0aW9ucy5sZW5ndGggJiYgIXRoaXMuYWN0aXZlU2VjdGlvbigpKSB7XHJcbiAgICAgICAgdGhpcy5hY3RpdmVTZWN0aW9uLnNldChzZWN0aW9uc1swXS5pZCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBjb25zdCBzZWN0aW9ucyA9IHRoaXMuc2VjdGlvbnMoKTtcclxuICAgIGlmICghc2VjdGlvbnMubGVuZ3RoKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcignTyBTZWN0aW9uTmF2aWdhdGlvbkNvbXBvbmVudCByZXF1ZXIgcGVsbyBtZW5vcyB1bWEgc2XDp8Ojby4nKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoIXRoaXMuYWN0aXZlU2VjdGlvbigpKSB7XHJcbiAgICAgIHRoaXMuYWN0aXZlU2VjdGlvbi5zZXQoc2VjdGlvbnNbMF0uaWQpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFVzYWRvIHBhcmEgZXZpdGFyIG11bHRpcGxvcyBjYWxjdWxvcyBkZXNuZWNlc3PDoXJpb3MgZW5xdWFudG8gc2Nyb2xsYVxyXG4gICAgY29uc3QgVElNRV9UT19BVk9JRF9VTkVDRVNTQVJZX0NBTENVTEFUSU9OUyA9IDUwO1xyXG4gICAgdGhpcy5zY3JvbGxUb01lbnVBbmNob3JTdWJzY3JpcHRpb24gPSB0aGlzLnNjcm9sbFRvTWVudUFuY2hvclN1YmplY3QucGlwZShkZWJvdW5jZVRpbWUoVElNRV9UT19BVk9JRF9VTkVDRVNTQVJZX0NBTENVTEFUSU9OUykpLnN1YnNjcmliZSgoYW5jaG9ySWQpID0+IHtcclxuICAgICAgdGhpcy5zY3JvbGxUb01lbnVBbmNob3IoYW5jaG9ySWQpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHdpbmRvd1Njcm9sbCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IG5hdkhlaWdodCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3I8SFRNTEVsZW1lbnQ+KCcucmRzaXRlLXNlY3Rpb24tbmF2aWdhdGlvbicpPy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3AgfHwgMDtcclxuICAgIGNvbnN0IHBhZ2VIZWFkZXJIZWlnaHQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yPEhUTUxFbGVtZW50PignLnBhZ2UtaGVhZGVyJyk/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcCB8fCAwO1xyXG4gICAgbGV0IHNlbGVjdGVkSW5kZXggPSAtMTtcclxuICAgIHRoaXMuc2VjdGlvbnMoKT8uZm9yRWFjaCgoc2VjdGlvbiwgaW5kZXgpID0+IHtcclxuICAgICAgY29uc3QgbWVudVRvcCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3I8SFRNTEVsZW1lbnQ+KGAjJHtzZWN0aW9uLmlkfWApPy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3AgfHwgMDtcclxuICAgICAgaWYgKG1lbnVUb3ApIHtcclxuICAgICAgICBjb25zdCBjYWxjID0gd2luZG93LnNjcm9sbFkgLSBtZW51VG9wICsgbmF2SGVpZ2h0ICsgcGFnZUhlYWRlckhlaWdodDtcclxuICAgICAgICBpZiAoY2FsYyA+PSAwKSB7XHJcbiAgICAgICAgICBzZWxlY3RlZEluZGV4ID0gaW5kZXg7XHJcbiAgICAgICAgICBpZiAodGhpcy5zZWN0aW9ucygpPy5bc2VsZWN0ZWRJbmRleF0pIHtcclxuICAgICAgICAgICAgdGhpcy5hY3RpdmVTZWN0aW9uLnNldCh0aGlzLnNlY3Rpb25zKCk/LltzZWxlY3RlZEluZGV4XT8uaWQpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgaWYgKHRoaXMuc2VjdGlvbnMoKT8uW3NlbGVjdGVkSW5kZXhdKSB7XHJcbiAgICAgIHRoaXMuc2Nyb2xsVG9NZW51QW5jaG9yU3ViamVjdC5uZXh0KHRoaXMuc2VjdGlvbnMoKT8uW3NlbGVjdGVkSW5kZXhdPy5pZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzY3JvbGxUb01lbnVBbmNob3IoYW5jaG9ySWQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgY29uc3QgYW5jaG9yID0gdGhpcy5hbmNob3JzRWwuZmluZCgoYW5jaG9yKSA9PiBhbmNob3IubmF0aXZlRWxlbWVudC5pZCA9PSBgYW5jaG9yLSR7YW5jaG9ySWR9YCk7XHJcbiAgICBpZiAoIWFuY2hvcikgcmV0dXJuO1xyXG4gICAgY29uc3QgZGlzdGFuY2VGcm9tVGhlQ2VudGVyT2ZUaGVBbmNob3IgPSAoYW5jaG9yLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdCArIGFuY2hvci5uYXRpdmVFbGVtZW50Lm9mZnNldExlZnQgKyBhbmNob3I/Lm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGgpIC8gMjtcclxuICAgIGNvbnN0IGNlbnRlck9mQ29udGFpbmVyRWwgPSB0aGlzLmNvbnRhaW5lckVsPy5uYXRpdmVFbGVtZW50LmNsaWVudFdpZHRoIC8gMjtcclxuICAgIGNvbnN0IGxlZnQgPSBkaXN0YW5jZUZyb21UaGVDZW50ZXJPZlRoZUFuY2hvciAtIGNlbnRlck9mQ29udGFpbmVyRWw7XHJcbiAgICB0aGlzLmNvbnRhaW5lckVsLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsVG8oe1xyXG4gICAgICBsZWZ0OiBsZWZ0LFxyXG4gICAgICBiZWhhdmlvcjogJ3Ntb290aCcsXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldFBhdGgoc2VjdGlvbklkOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGAke3RoaXMucm91dGVyLnVybH0jJHtzZWN0aW9uSWR9YDtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zY3JvbGxUb01lbnVBbmNob3JTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxuYXYgY2xhc3M9XCJyZHNpdGUtc2VjdGlvbi1uYXZpZ2F0aW9uXCIgW2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWxcIiBbc3R5bGUudG9wLnB4XT1cImNvbmZpZygpPy5vZmZzZXRUb3AgfHwgMFwiPlxyXG4gIDx1bCAjY29udGFpbmVyRWwgY2xhc3M9XCJyZHNpdGUtc2VjdGlvbi1uYXZpZ2F0aW9uLW1lbnVcIiByb2xlPVwibWVudWJhclwiPlxyXG4gICAgQGZvciAoc2VjdGlvbiBvZiBzZWN0aW9ucygpOyB0cmFjayBzZWN0aW9uLmlkKSB7XHJcbiAgICAgIEBpZiAoc2VjdGlvbi50aXRsZSkge1xyXG4gICAgICAgIDxsaSByb2xlPVwibm9uZVwiPlxyXG4gICAgICAgICAgPGFcclxuICAgICAgICAgICAgI2FuY2hvckVsXHJcbiAgICAgICAgICAgIGlkPVwiYW5jaG9yLXt7IHNlY3Rpb24uaWQgfX1cIlxyXG4gICAgICAgICAgICByb2xlPVwibWVudWl0ZW1cIlxyXG4gICAgICAgICAgICBbaHJlZl09XCJnZXRQYXRoKHNlY3Rpb24uaWQpXCJcclxuICAgICAgICAgICAgcmRzaXRlbGlua1xyXG4gICAgICAgICAgICBbYW5jaG9yQWRqdXN0bWVudF09XCJhbmNob3JBZGp1c3RtZW50XCJcclxuICAgICAgICAgICAgW2F0dHIuYXJpYS1jdXJyZW50XT1cImFjdGl2ZVNlY3Rpb24oKSA9PT0gc2VjdGlvbi5pZCA/ICdwYWdlJyA6IG51bGxcIlxyXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidOYXZlZ2FyIHBhcmEgJyArIHNlY3Rpb24udGl0bGVcIlxyXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7IGFjdGl2ZTogYWN0aXZlU2VjdGlvbigpID09PSBzZWN0aW9uLmlkIH1cIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICB7eyBzZWN0aW9uLnRpdGxlIH19XHJcbiAgICAgICAgICA8L2E+XHJcbiAgICAgICAgPC9saT5cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIDwvdWw+XHJcbjwvbmF2PlxyXG4iXX0=
|
|
149
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi1uYXZpZ2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpdGUtZnJvbnQtZW5kLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvc2VjdGlvbi1uYXZpZ2F0aW9uL3NlY3Rpb24tbmF2aWdhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaXRlLWZyb250LWVuZC1saWIvc3JjL2xpYi9jb21wb25lbnRzL3NlY3Rpb24tbmF2aWdhdGlvbi9zZWN0aW9uLW5hdmlnYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixNQUFNLEVBQ04sTUFBTSxFQUVOLFNBQVMsRUFFVCxzQkFBc0IsRUFDdEIsV0FBVyxFQUNYLFlBQVksRUFDWixZQUFZLEdBR2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFnQixNQUFNLE1BQU0sQ0FBQzs7Ozs7QUFZbkUsTUFBTSxPQUFPLDBCQUEwQjtJQWNyQyxjQUFjO1FBQ1osSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsVUFBVSxHQUFHLEdBQUcsQ0FBQztJQUMxQyxDQUFDO0lBR0QsY0FBYztRQUNaLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBSUQsSUFDSSxrQkFBa0IsQ0FBQyxLQUE4QjtRQUNuRCxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ25CLE1BQU0sSUFBSSxLQUFLLENBQUMsMkRBQTJELENBQUMsQ0FBQztRQUMvRSxD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RUFBRSxDQUFDO0lBQ3JELENBQUM7K0dBL0hVLDBCQUEwQjttR0FBMUIsMEJBQTBCLDB3QkNqQ3ZDLHk1QkF1QkEsa21DREtZLFlBQVksNkhBQUUsbUJBQW1COzs0RkFLaEMsMEJBQTBCO2tCQVR0QyxTQUFTOytCQUVFLGdDQUFnQyxjQUM5QixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsbUJBQW1CLENBQUMsV0FDbkMsQ0FBQyxzQkFBc0IsQ0FBQztxR0FjUCxXQUFXO3NCQUFwQyxTQUFTO3VCQUFDLGFBQWE7Z0JBQ0UsU0FBUztzQkFBbEMsWUFBWTt1QkFBQyxVQUFVO2dCQUd4QixjQUFjO3NCQURiLFlBQVk7dUJBQUMsZUFBZTtnQkFNN0IsY0FBYztzQkFEYixZQUFZO3VCQUFDLGVBQWU7Z0JBS3BCLE9BQU87c0JBQWYsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVGLGtCQUFrQjtzQkFEckIsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBYXJCLGdCQUFnQjtzQkFEbkIsS0FBSztnQkFLRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFFSSxhQUFhO3NCQUF0QixNQUFNO2dCQUVlLFlBQVk7c0JBQWpDLFdBQVc7dUJBQUMsT0FBTztnQkFTMkIsY0FBYztzQkFBNUQsU0FBUzt1QkFBQyxnQkFBZ0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIHNpZ25hbCxcclxuICBlZmZlY3QsXHJcbiAgT25Jbml0LFxyXG4gIFZpZXdDaGlsZCxcclxuICBFbGVtZW50UmVmLFxyXG4gIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgSG9zdExpc3RlbmVyLFxyXG4gIFZpZXdDaGlsZHJlbixcclxuICBRdWVyeUxpc3QsXHJcbiAgT25EZXN0cm95LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBTZWN0aW9uTmF2aWdhdGlvbkRhdGEsIFNlY3Rpb25OYXZpZ2F0aW9uQ29uZmlnIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3NlY3Rpb24tbmF2aWdhdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7IEN1cmFTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY3VyYS9jdXJhLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBSZHNpdGVMaW5rRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZGVib3VuY2VUaW1lLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXHJcbiAgc2VsZWN0b3I6ICduYXZbcmRzaXRlLXNlY3Rpb24tbmF2aWdhdGlvbl0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUmRzaXRlTGlua0RpcmVjdGl2ZV0sXHJcbiAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWN0aW9uLW5hdmlnYXRpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NlY3Rpb24tbmF2aWdhdGlvbi5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VjdGlvbk5hdmlnYXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgcmVhZG9ubHkgc2VjdGlvbnMgPSBzaWduYWw8U2VjdGlvbk5hdmlnYXRpb25EYXRhW10+KFtdKTtcclxuICByZWFkb25seSBjb25maWcgPSBzaWduYWw8U2VjdGlvbk5hdmlnYXRpb25Db25maWcgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XHJcbiAgcmVhZG9ubHkgYWN0aXZlU2VjdGlvbiA9IHNpZ25hbDxzdHJpbmc+KCcnKTtcclxuXHJcbiAgaXNNb2JpbGU6IGJvb2xlYW4gPSB3aW5kb3cuaW5uZXJXaWR0aCA8IDc2ODtcclxuXHJcbiAgc2Nyb2xsVG9NZW51QW5jaG9yU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCBudWxsID0gbnVsbDtcclxuICBzY3JvbGxUb01lbnVBbmNob3JTdWJqZWN0OiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoJycpO1xyXG5cclxuICBAVmlld0NoaWxkKCdjb250YWluZXJFbCcpIGNvbnRhaW5lckVsITogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XHJcbiAgQFZpZXdDaGlsZHJlbignYW5jaG9yRWwnKSBhbmNob3JzRWwhOiBRdWVyeUxpc3Q8RWxlbWVudFJlZjxIVE1MQW5jaG9yRWxlbWVudD4+O1xyXG5cclxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJylcclxuICBvbldpbmRvd1Jlc2l6ZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuaXNNb2JpbGUgPSB3aW5kb3cuaW5uZXJXaWR0aCA8IDc2ODtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpzY3JvbGwnKVxyXG4gIG9uV2luZG93U2Nyb2xsKCk6IHZvaWQge1xyXG4gICAgdGhpcy53aW5kb3dTY3JvbGwoKTtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpIHBhZGRpbmcgPSAwO1xyXG4gIEBJbnB1dCgpIGhlYWRlckNsYXNzID0gJy5wYWdlLWhlYWRlcic7XHJcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcclxuICBzZXQgbmF2aWdhdGlvblNlY3Rpb25zKHZhbHVlOiBTZWN0aW9uTmF2aWdhdGlvbkRhdGFbXSkge1xyXG4gICAgaWYgKCF2YWx1ZT8ubGVuZ3RoKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcignTyBTZWN0aW9uTmF2aWdhdGlvbkNvbXBvbmVudCByZXF1ZXIgcGVsbyBtZW5vcyB1bWEgc2XDp8Ojby4nKTtcclxuICAgIH1cclxuICAgIHRoaXMuc2VjdGlvbnMuc2V0KHZhbHVlKTtcclxuXHJcbiAgICBpZiAoIXRoaXMuYWN0aXZlU2VjdGlvbigpKSB7XHJcbiAgICAgIHRoaXMuYWN0aXZlU2VjdGlvbi5zZXQodmFsdWVbMF0uaWQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgbmF2aWdhdGlvbkNvbmZpZyh2YWx1ZTogU2VjdGlvbk5hdmlnYXRpb25Db25maWcpIHtcclxuICAgIHRoaXMuY29uZmlnLnNldCh2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBhcmlhTGFiZWwgPSAnTmF2ZWdhw6fDo28gZGEgcMOhZ2luYSc7XHJcbiAgQElucHV0KCkgYW5jaG9yQWRqdXN0bWVudCA9IDA7XHJcblxyXG4gIEBPdXRwdXQoKSBzZWN0aW9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxTZWN0aW9uTmF2aWdhdGlvbkRhdGE+KCk7XHJcblxyXG4gIEBIb3N0QmluZGluZygnc3R5bGUnKSBzdHlsZUJpbmRpbmcgPSB7XHJcbiAgICAnLS1uZXV0cmFsLXB1cmV3aGl0ZSc6IHRoaXMuY3VyYVNlcnZpY2UuZ2V0Q29sb3IoJ25ldXRyYWwtcHVyZXdoaXRlJyksXHJcbiAgICAnLS1uZXV0cmFsLWRhcmsnOiB0aGlzLmN1cmFTZXJ2aWNlLmdldENvbG9yKCduZXV0cmFsLWRhcmsnKSxcclxuICAgICctLW5ldXRyYWwtYmxhY2snOiB0aGlzLmN1cmFTZXJ2aWNlLmdldENvbG9yKCduZXV0cmFsLWJsYWNrJywgMC4xNiksXHJcbiAgICAnLS1jb2xvci1iYXNlJzogdGhpcy5jdXJhU2VydmljZS5nZXRDb2xvcigncHJpbWFyeS1iYXNlJyksXHJcbiAgICAnLS1mb250LXNpemUnOiB0aGlzLmN1cmFTZXJ2aWNlLmdldEZvbnRTaXplKCksXHJcbiAgICAnLS1mb250LWZhbWlseSc6IHRoaXMuY3VyYVNlcnZpY2UuZ2V0Rm9udEZhbWlseSgnJyksXHJcbiAgfTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnbmF2aWdhdGlvbk1lbnUnLCB7IHN0YXRpYzogdHJ1ZSB9KSBuYXZpZ2F0aW9uTWVudSE6IEVsZW1lbnRSZWY8SFRNTFVMaXN0RWxlbWVudD47XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBjdXJhU2VydmljZTogQ3VyYVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICkge1xyXG4gICAgZWZmZWN0KCgpID0+IHtcclxuICAgICAgY29uc3Qgc2VjdGlvbnMgPSB0aGlzLnNlY3Rpb25zKCk7XHJcbiAgICAgIGlmIChzZWN0aW9ucy5sZW5ndGggJiYgIXRoaXMuYWN0aXZlU2VjdGlvbigpKSB7XHJcbiAgICAgICAgdGhpcy5hY3RpdmVTZWN0aW9uLnNldChzZWN0aW9uc1swXS5pZCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBjb25zdCBzZWN0aW9ucyA9IHRoaXMuc2VjdGlvbnMoKTtcclxuICAgIGlmICghc2VjdGlvbnMubGVuZ3RoKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcignTyBTZWN0aW9uTmF2aWdhdGlvbkNvbXBvbmVudCByZXF1ZXIgcGVsbyBtZW5vcyB1bWEgc2XDp8Ojby4nKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoIXRoaXMuYWN0aXZlU2VjdGlvbigpKSB7XHJcbiAgICAgIHRoaXMuYWN0aXZlU2VjdGlvbi5zZXQoc2VjdGlvbnNbMF0uaWQpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFVzYWRvIHBhcmEgZXZpdGFyIG11bHRpcGxvcyBjYWxjdWxvcyBkZXNuZWNlc3PDoXJpb3MgZW5xdWFudG8gc2Nyb2xsYVxyXG4gICAgY29uc3QgVElNRV9UT19BVk9JRF9VTkVDRVNTQVJZX0NBTENVTEFUSU9OUyA9IDUwO1xyXG4gICAgdGhpcy5zY3JvbGxUb01lbnVBbmNob3JTdWJzY3JpcHRpb24gPSB0aGlzLnNjcm9sbFRvTWVudUFuY2hvclN1YmplY3QucGlwZShkZWJvdW5jZVRpbWUoVElNRV9UT19BVk9JRF9VTkVDRVNTQVJZX0NBTENVTEFUSU9OUykpLnN1YnNjcmliZSgoYW5jaG9ySWQpID0+IHtcclxuICAgICAgdGhpcy5zY3JvbGxUb01lbnVBbmNob3IoYW5jaG9ySWQpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHdpbmRvd1Njcm9sbCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IG5hdkhlaWdodCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3I8SFRNTEVsZW1lbnQ+KCcucmRzaXRlLXNlY3Rpb24tbmF2aWdhdGlvbicpPy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3AgfHwgMDtcclxuICAgIGNvbnN0IHBhZ2VIZWFkZXJIZWlnaHQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yPEhUTUxFbGVtZW50Pih0aGlzLmhlYWRlckNsYXNzKT8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wIHx8IDA7XHJcbiAgICBsZXQgc2VsZWN0ZWRJbmRleCA9IC0xO1xyXG4gICAgdGhpcy5zZWN0aW9ucygpPy5mb3JFYWNoKChzZWN0aW9uLCBpbmRleCkgPT4ge1xyXG4gICAgICBjb25zdCBtZW51VG9wID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcjxIVE1MRWxlbWVudD4oYCMke3NlY3Rpb24uaWR9YCk/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcCB8fCAwO1xyXG4gICAgICBpZiAobWVudVRvcCkge1xyXG4gICAgICAgIGNvbnN0IGNhbGMgPSB3aW5kb3cuc2Nyb2xsWSAtIG1lbnVUb3AgKyBuYXZIZWlnaHQgKyBwYWdlSGVhZGVySGVpZ2h0ICsgdGhpcy5wYWRkaW5nO1xyXG4gICAgICAgIGlmIChjYWxjID49IDApIHtcclxuICAgICAgICAgIHNlbGVjdGVkSW5kZXggPSBpbmRleDtcclxuICAgICAgICAgIGlmICh0aGlzLnNlY3Rpb25zKCk/LltzZWxlY3RlZEluZGV4XSkge1xyXG4gICAgICAgICAgICB0aGlzLmFjdGl2ZVNlY3Rpb24uc2V0KHRoaXMuc2VjdGlvbnMoKT8uW3NlbGVjdGVkSW5kZXhdPy5pZCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICBpZiAodGhpcy5zZWN0aW9ucygpPy5bc2VsZWN0ZWRJbmRleF0pIHtcclxuICAgICAgdGhpcy5zY3JvbGxUb01lbnVBbmNob3JTdWJqZWN0Lm5leHQodGhpcy5zZWN0aW9ucygpPy5bc2VsZWN0ZWRJbmRleF0/LmlkKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNjcm9sbFRvTWVudUFuY2hvcihhbmNob3JJZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBjb25zdCBhbmNob3IgPSB0aGlzLmFuY2hvcnNFbC5maW5kKChhbmNob3IpID0+IGFuY2hvci5uYXRpdmVFbGVtZW50LmlkID09IGBhbmNob3ItJHthbmNob3JJZH1gKTtcclxuICAgIGlmICghYW5jaG9yKSByZXR1cm47XHJcbiAgICBjb25zdCBkaXN0YW5jZUZyb21UaGVDZW50ZXJPZlRoZUFuY2hvciA9IChhbmNob3IubmF0aXZlRWxlbWVudC5vZmZzZXRMZWZ0ICsgYW5jaG9yLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdCArIGFuY2hvcj8ubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aCkgLyAyO1xyXG4gICAgY29uc3QgY2VudGVyT2ZDb250YWluZXJFbCA9IHRoaXMuY29udGFpbmVyRWw/Lm5hdGl2ZUVsZW1lbnQuY2xpZW50V2lkdGggLyAyO1xyXG4gICAgY29uc3QgbGVmdCA9IGRpc3RhbmNlRnJvbVRoZUNlbnRlck9mVGhlQW5jaG9yIC0gY2VudGVyT2ZDb250YWluZXJFbDtcclxuICAgIHRoaXMuY29udGFpbmVyRWwubmF0aXZlRWxlbWVudC5zY3JvbGxUbyh7XHJcbiAgICAgIGxlZnQ6IGxlZnQsXHJcbiAgICAgIGJlaGF2aW9yOiAnc21vb3RoJyxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0UGF0aChzZWN0aW9uSWQ6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYCR7dGhpcy5yb3V0ZXIudXJsfSMke3NlY3Rpb25JZH1gO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnNjcm9sbFRvTWVudUFuY2hvclN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcbn1cclxuIiwiPG5hdiBjbGFzcz1cInJkc2l0ZS1zZWN0aW9uLW5hdmlnYXRpb25cIiBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiIFtzdHlsZS50b3AucHhdPVwiY29uZmlnKCk/Lm9mZnNldFRvcCB8fCAwXCI+XHJcbiAgPHVsICNjb250YWluZXJFbCBjbGFzcz1cInJkc2l0ZS1zZWN0aW9uLW5hdmlnYXRpb24tbWVudVwiIHJvbGU9XCJtZW51YmFyXCI+XHJcbiAgICBAZm9yIChzZWN0aW9uIG9mIHNlY3Rpb25zKCk7IHRyYWNrIHNlY3Rpb24uaWQpIHtcclxuICAgICAgQGlmIChzZWN0aW9uLnRpdGxlKSB7XHJcbiAgICAgICAgPGxpIHJvbGU9XCJub25lXCI+XHJcbiAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAjYW5jaG9yRWxcclxuICAgICAgICAgICAgaWQ9XCJhbmNob3Ite3sgc2VjdGlvbi5pZCB9fVwiXHJcbiAgICAgICAgICAgIHJvbGU9XCJtZW51aXRlbVwiXHJcbiAgICAgICAgICAgIFtocmVmXT1cImdldFBhdGgoc2VjdGlvbi5pZClcIlxyXG4gICAgICAgICAgICByZHNpdGVsaW5rXHJcbiAgICAgICAgICAgIFthbmNob3JBZGp1c3RtZW50XT1cImFuY2hvckFkanVzdG1lbnRcIlxyXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWN1cnJlbnRdPVwiYWN0aXZlU2VjdGlvbigpID09PSBzZWN0aW9uLmlkID8gJ3BhZ2UnIDogbnVsbFwiXHJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ05hdmVnYXIgcGFyYSAnICsgc2VjdGlvbi50aXRsZVwiXHJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgYWN0aXZlOiBhY3RpdmVTZWN0aW9uKCkgPT09IHNlY3Rpb24uaWQgfVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIHt7IHNlY3Rpb24udGl0bGUgfX1cclxuICAgICAgICAgIDwvYT5cclxuICAgICAgICA8L2xpPlxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgPC91bD5cclxuPC9uYXY+XHJcbiJdfQ==
|
|
@@ -156,6 +156,9 @@ export class SiteBackendService {
|
|
|
156
156
|
getInfusionalListData() {
|
|
157
157
|
return this.httpClientService.get(`${this.siteApiUrl}infusionais/list`);
|
|
158
158
|
}
|
|
159
|
+
getInfusionalDetailsData(slug) {
|
|
160
|
+
return this.httpClientService.get(`${this.siteApiUrl}infusionais/details?slug=${slug}`);
|
|
161
|
+
}
|
|
159
162
|
// Centro de Estudos
|
|
160
163
|
checkMedico(conselhoCodigo) {
|
|
161
164
|
return this.httpClientService.get(`${this.siteApiUrl}${this.libConfig.siteApi.centroEstudos}?email=${conselhoCodigo}`);
|
|
@@ -185,4 +188,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
185
188
|
type: Inject,
|
|
186
189
|
args: [PLATFORM_ID]
|
|
187
190
|
}] }] });
|
|
188
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l0ZS1iYWNrLWVuZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2l0ZS1mcm9udC1lbmQtbGliL3NyYy9saWIvc2VydmljZXMvc2l0ZS1iYWNrLWVuZC9zaXRlLWJhY2stZW5kLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxVQUFVLEVBQWEsTUFBTSx3QkFBd0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7OztBQXNCakUsTUFBTSxPQUFPLGtCQUFrQjtJQUc3QixZQUNVLGlCQUFvQyxFQUNoQixTQUFvQixFQUNuQixVQUFrQjtRQUZ2QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ2hCLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDbkIsZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQUUvQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRU8sU0FBUztRQUNmLElBQUksZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDL0QsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUM7UUFDN0MsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO0lBQ3JDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILEdBQUcsQ0FBVSxJQUFZLEVBQUUsTUFBWTtRQUNyQyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxH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SztZQUNMLE1BQU07WUFDTixHQUFHO1NBQ0osQ0FBQyxDQUFDO0lBQ0wsQ0FBQzsrR0F4UFUsa0JBQWtCLG1EQUtuQixVQUFVLGFBQ1YsV0FBVzttSEFOVixrQkFBa0IsY0FGakIsTUFBTTs7NEZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBTUksTUFBTTsyQkFBQyxVQUFVOzswQkFDakIsTUFBTTsyQkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0LCBQTEFURk9STV9JRCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBpc1BsYXRmb3JtU2VydmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBMSUJfQ09ORklHLCBMaWJDb25maWcgfSBmcm9tICcuLi8uLi90b2tlbnMvTGliQ29uZmlnJztcclxuaW1wb3J0IHsgdG9RdWVyeVBhcmFtcyB9IGZyb20gJy4uLy4uL2hlbHBlcnMvdG9RdWVyeVBhcmFtcy5mdW5jJztcclxuaW1wb3J0IHsgSHR0cENsaWVudFNlcnZpY2UgfSBmcm9tICcuLi9odHRwLWNsaWVudC9odHRwLWNsaWVudC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUkRTTENvbnZlbmlvLCBSRFNMQ29udmVuaW9QYXJhbXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvcmRzbC1jb252ZW5pby5tb2RlbCc7XHJcbmltcG9ydCB7IFJEU0xQbGFubywgUkRTTFBsYW5vUGFyYW1zIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3Jkc2wtcGxhbm9zLm1vZGVsJztcclxuaW1wb3J0IHsgUkRTTENvYmVydHVyYSwgUkRTTENvYmVydHVyYVBhcmFtcyB9IGZyb20gJy4uLy4uL21vZGVscy9yZHNsLWNvYmVydHVyYS5tb2RlbCc7XHJcbmltcG9ydCB7IFJEU0xVbmlkYWRlLCBSRFNMVW5pZGFkZXNQYXJhbXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvcmRzbC11bmlkYWRlLm1vZGVsJztcclxuaW1wb3J0IHsgUkRTTEVzcGVjaWFsaWRhZGUsIFJEU0xFc3BlY2lhbGlkYWRlc1BhcmFtcyB9IGZyb20gJy4uLy4uL21vZGVscy9yZHNsLWVzcGVjaWFsaWRhZGUubW9kZWwnO1xyXG5pbXBvcnQgeyBEb2VuY2FCYWNrZW5kIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2RvZW5jYS1iYWNrZW5kLm1vZGVsJztcclxuaW1wb3J0IHsgVGF4b25vbWlhc0RvZW5jYXNMaXN0IH0gZnJvbSAnLi4vLi4vbW9kZWxzL2RvZW5jYS10YXhvbm9teS5tb2RlbCc7XHJcbmltcG9ydCB7IEV4YW1lQXBpRGFkb3MsIEV4YW1lQmFja2VuZCB9IGZyb20gJy4uLy4uL21vZGVscy9leGFtZS1iYWNrZW5kLm1vZGVsJztcclxuaW1wb3J0IHsgRXNwZWNpYWxpZGFkZUJhY2tlbmQsIEVzcGVjaWFsaWRhZGVHcnVwb0JhY2tlbmQgfSBmcm9tICcuLi8uLi9tb2RlbHMvZXNwZWNpYWxpZGFkZS1iYWNrZW5kLm1vZGVsJztcclxuaW1wb3J0IHsgQ2VudHJvRXN0dWRvc0JhY2tlbmRNZWRpY28gfSBmcm9tICcuLi8uLi9tb2RlbHMvY2VudHJvLWVzdHVkb3MtYmFja2VuZC5tb2RlbCc7XHJcbmltcG9ydCB7IFdwVW5pZGFkZVNpdGUgfSBmcm9tICcuLi8uLi9tb2RlbHMvd29yZHByZXNzL3VuaWRhZGUvd3AtdW5pZGFkZS1zaXRlLm1vZGVsJztcclxuaW1wb3J0IHsgV3BVbmlkYWRlT25jbyB9IGZyb20gJy4uLy4uL21vZGVscy93b3JkcHJlc3MvdW5pZGFkZS93cC11bmlkYWRlLW9uY28ubW9kZWwnO1xyXG5pbXBvcnQgeyBVbmlmaWVkTWVudSB9IGZyb20gJy4uLy4uL21vZGVscy9tZW51LWl0ZW0ubW9kZWwnO1xyXG5pbXBvcnQgeyBNZWRpY29DdiB9IGZyb20gJy4uLy4uL21vZGVscy9tZWRpY28tY3YubW9kZWwnO1xyXG5pbXBvcnQgeyBNZW51RGVVbmlkYWRlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL21lbnUtZGUtdW5pZGFkZS5tb2RlbCc7XHJcbmltcG9ydCB7IENlbnRyb01lZGljbyB9IGZyb20gJy4uLy4uL21vZGVscy9jZW50cm8tbWVkaWNvLm1vZGVsJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaXRlQmFja2VuZFNlcnZpY2Uge1xyXG4gIHNpdGVBcGlVcmw6IHN0cmluZztcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGh0dHBDbGllbnRTZXJ2aWNlOiBIdHRwQ2xpZW50U2VydmljZSxcclxuICAgIEBJbmplY3QoTElCX0NPTkZJRykgcHJpdmF0ZSBsaWJDb25maWc6IExpYkNvbmZpZyxcclxuICAgIEBJbmplY3QoUExBVEZPUk1fSUQpIHByaXZhdGUgcGxhdGZvcm1JZDogb2JqZWN0LFxyXG4gICkge1xyXG4gICAgdGhpcy5zaXRlQXBpVXJsID0gdGhpcy5nZXRBcGlVcmwoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0QXBpVXJsKCk6IHN0cmluZyB7XHJcbiAgICBpZiAoaXNQbGF0Zm9ybVNlcnZlcih0aGlzLnBsYXRmb3JtSWQpICYmIHRoaXMubGliQ29uZmlnLnNlcnZlcikge1xyXG4gICAgICByZXR1cm4gdGhpcy5saWJDb25maWcuc2l0ZUFwaS5iYXNlSW50ZXJuYWw7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5saWJDb25maWcuc2l0ZUFwaS5iYXNlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR0VUIHBhcmEgcXVhbHF1ZXIgZW5kcG9pbnQgZG8gYmFjay1lbmQgZG8gc2l0ZS5cclxuICAgKiBAcGFyYW0gcGF0aCAtIE8gY2FtaW5obyBkbyByZWN1cnNvLiAoSW5pY2lhIHNlbSAnLycuIEV4OiAndW5pZGFkZXMvd3AnKVxyXG4gICAqIEBwYXJhbSBwYXJhbXMgLSBQYXLDom1ldHJvcyBvcGNpb25haXMgcGFyYSBhIHJlcXVpc2nDp8Ojby5cclxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIHF1ZSBlbWl0ZSBvcyBkYWRvcyByZXRvcm5hZG9zIHBlbG8gYmFjay1lbmQuXHJcbiAgICovXHJcbiAgZ2V0PFQgPSBhbnk+KHBhdGg6IHN0cmluZywgcGFyYW1zPzogYW55KTogT2JzZXJ2YWJsZTxUPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQ8VD4oYCR7dGhpcy5zaXRlQXBpVXJsfSR7cGF0aH0ke3RvUXVlcnlQYXJhbXMocGFyYW1zKX1gKTtcclxuICB9XHJcblxyXG4gIGdldFVuaWRhZGVzKHBhcmFtcz86IFJEU0xVbmlkYWRlc1BhcmFtcyk6IE9ic2VydmFibGU8UkRTTFVuaWRhZGVbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH11bmlkYWRlcyR7dG9RdWVyeVBhcmFtcyhwYXJhbXMpfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0VW5pZGFkZXNMaXN0KCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfXVuaWRhZGVzL2xpc3RhYCk7XHJcbiAgfVxyXG5cclxuICBnZXRVbmlkYWRlc1dQKCk6IE9ic2VydmFibGU8V3BVbmlkYWRlU2l0ZVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQ8V3BVbmlkYWRlU2l0ZVtdPihgJHt0aGlzLnNpdGVBcGlVcmx9dW5pZGFkZXMvd3BgKTtcclxuICB9XHJcblxyXG4gIGdldFVuaWRhZGVzTWVudXNXUCh1bmlkYWRlU2x1ZyA9ICcnKTogT2JzZXJ2YWJsZTxVbmlmaWVkTWVudT4ge1xyXG4gICAgY29uc3QgdW5pZGFkZSA9IHVuaWRhZGVTbHVnICYmIHVuaWRhZGVTbHVnICE9PSAnLycgPyB1bmlkYWRlU2x1ZyA6ICcnO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH11bmlkYWRlcy93cC9tZW51cy8ke3VuaWRhZGV9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRVbmlkYWRlc09uY29XUCgpOiBPYnNlcnZhYmxlPFdwVW5pZGFkZU9uY29bXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0PFdwVW5pZGFkZU9uY29bXT4oYCR7dGhpcy5zaXRlQXBpVXJsfXVuaWRhZGVzL3dwLW9uY29gKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldG9ybmEgbyAnbWVudSBkZSB1bmlkYWRlcycgY29tcGxldG8sIGJhc2VhZG8gbm9zIGRhZG9zIGRlIC91bmlkYWRlcy93cCBlIC91bmlkYWRlcy93cC1vbmNvIGRvIGJhY2tlbmQuXHJcbiAgICogaW5kZXggMCA9PiByZWRlZG9yXHJcbiAgICogaW5kZXggMSA9PiBvbmNvbG9naWFcclxuICAgKiBpbmRleCAyID0+IHN0YXJcclxuICAgKiovXHJcbiAgZ2V0TWVudURlVW5pZGFkZXMoKTogT2JzZXJ2YWJsZTxNZW51RGVVbmlkYWRlW10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldDxNZW51RGVVbmlkYWRlW10+KGAke3RoaXMuc2l0ZUFwaVVybH11bmlkYWRlcy93cC9tZW51LWRlLXVuaWRhZGVzYCk7XHJcbiAgfVxyXG5cclxuICBnZXRVbmlkYWRlRXNwZWNpYWxpZGFkZXMoaWRxZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldDxhbnk+KGAke3RoaXMuc2l0ZUFwaVVybH11bmlkYWRlcy9lc3BlY2lhbGlkYWRlcy8ke2lkcWR9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRVbmlkYWRlRXhhbWVzKGlkcWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQ8YW55PihgJHt0aGlzLnNpdGVBcGlVcmx9dW5pZGFkZXMvZXhhbWVzLyR7aWRxZH1gKTtcclxuICB9XHJcblxyXG4gIGdldENvbnZlbmlvcyhwYXJhbXM/OiBSRFNMQ29udmVuaW9QYXJhbXMpOiBPYnNlcnZhYmxlPFJEU0xDb252ZW5pb1tdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWNvbnZlbmlvcyR7dG9RdWVyeVBhcmFtcyhwYXJhbXMpfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0UGxhbm9zKHBhcmFtcz86IFJEU0xQbGFub1BhcmFtcyk6IE9ic2VydmFibGU8UkRTTFBsYW5vW10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9cGxhbm9zJHt0b1F1ZXJ5UGFyYW1zKHBhcmFtcyl9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRDb2JlcnR1cmFzKHBsYW5vSWRRZDogbnVtYmVyLCBwYXJhbXM/OiBSRFNMQ29iZXJ0dXJhUGFyYW1zKTogT2JzZXJ2YWJsZTxSRFNMQ29iZXJ0dXJhW10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9cGxhbm9zLyR7cGxhbm9JZFFkfS9jb2JlcnR1cmEke3RvUXVlcnlQYXJhbXMocGFyYW1zKX1gKTtcclxuICB9XHJcblxyXG4gIGdldERvZW5jYXMoKTogT2JzZXJ2YWJsZTxEb2VuY2FCYWNrZW5kW10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZG9lbmNhc2ApO1xyXG4gIH1cclxuXHJcbiAgZ2V0RG9lbmNhc1RheG9ub21pZXMoKSB7XHJcbiAgICBjb25zdCB1cmwgPSBgJHt0aGlzLnNpdGVBcGlVcmx9ZG9lbmNhcy90YXhvbm9taWFzYDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldDxUYXhvbm9taWFzRG9lbmNhc0xpc3Q+KHVybCk7XHJcbiAgfVxyXG5cclxuICBnZXREb2VuY2FzVW5pcXVlTGV0dGVycygpOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XHJcbiAgICBjb25zdCB1cmwgPSBgJHt0aGlzLnNpdGVBcGlVcmx9ZG9lbmNhcy9sZXR0ZXJzYDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldCh1cmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0VmFjaW5hcygpOiBPYnNlcnZhYmxlPGFueVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfXZhY2luYXNgKTtcclxuICB9XHJcblxyXG4gIGdldFZhY2luYXNUYXhvbm9taWVzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH12YWNpbmFzL3RheG9ub21pYXNgKTtcclxuICB9XHJcblxyXG4gIGdldENpcnVyZ2lhcygpOiBPYnNlcnZhYmxlPGFueVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWNpcnVyZ2lhc2ApO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2lydXJnaWFzR3J1cG9zKCk6IE9ic2VydmFibGU8YW55W10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9Y2lydXJnaWFzL2dydXBvc2ApO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2lydXJnaWFzVGF4b25vbWllcygpOiBPYnNlcnZhYmxlPGFueVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWNpcnVyZ2lhcy90YXhvbm9taWFzYCk7XHJcbiAgfVxyXG5cclxuICBnZXRFeGFtZXNMaXN0KFxyXG4gICAgbGlzdGFEYVVuaWRhZGU6IGJvb2xlYW4sXHJcbiAgICB1bmlkYWRlU2x1Zzogc3RyaW5nLFxyXG4gICAgdW5pZGFkZUlkUWQ6IHN0cmluZyxcclxuICAgIHVuaWRhZGVJZE1vdGlvbjogc3RyaW5nLFxyXG4gICAgdW5pZGFkZUlkTG9jYWw6IHN0cmluZyxcclxuICAgIGV4YW1lc0Rlc3RhcXVlcz86IGJvb2xlYW4sXHJcbiAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChcclxuICAgICAgYCR7dGhpcy5zaXRlQXBpVXJsfWV4YW1lcy1lLXByb2NlZGltZW50b3MvbGlzdGE/bGlzdGFEYVVuaWRhZGU9JHtsaXN0YURhVW5pZGFkZX0mZXhhbWVzRGVzdGFxdWVzPSR7ZXhhbWVzRGVzdGFxdWVzfSZ1bmlkYWRlU2x1Zz0ke3VuaWRhZGVTbHVnfSZ1bmlkYWRlSWRRZD0ke3VuaWRhZGVJZFFkfSZ1bmlkYWRlSWRNb3Rpb249JHt1bmlkYWRlSWRNb3Rpb259JnVuaWRhZGVJZExvY2FsPSR7dW5pZGFkZUlkTG9jYWx9YCxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRFeGFtZXNDYXRlZ29yeShcclxuICAgIGxpc3RhRGFVbmlkYWRlOiBib29sZWFuLFxyXG4gICAgdW5pZGFkZVNsdWc6IHN0cmluZyxcclxuICAgIHNsdWdHcnVwbzogc3RyaW5nLFxyXG4gICAgdW5pZGFkZUlkUWQ6IHN0cmluZyxcclxuICAgIHVuaWRhZGVJZE1vdGlvbjogc3RyaW5nLFxyXG4gICAgdW5pZGFkZUlkTG9jYWw6IHN0cmluZyxcclxuICApOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KFxyXG4gICAgICBgJHt0aGlzLnNpdGVBcGlVcmx9ZXhhbWVzLWUtcHJvY2VkaW1lbnRvcy9jYXRlZ29yaWFzP2xpc3RhRGFVbmlkYWRlPSR7bGlzdGFEYVVuaWRhZGV9JnVuaWRhZGVTbHVnPSR7dW5pZGFkZVNsdWd9JnNsdWdHcnVwbz0ke3NsdWdHcnVwb30mdW5pZGFkZUlkUWQ9JHt1bmlkYWRlSWRRZH0mdW5pZGFkZUlkTW90aW9uPSR7dW5pZGFkZUlkTW90aW9ufSZ1bmlkYWRlSWRMb2NhbD0ke3VuaWRhZGVJZExvY2FsfWAsXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgZ2V0RXhhbWVEZXRhaWxzKFxyXG4gICAgdW5pZGFkZVBvc3N1aUV4YW1lczogYm9vbGVhbixcclxuICAgIHVuaWRhZGVTbHVnOiBzdHJpbmcsXHJcbiAgICB1bmlkYWRlSWRRZDogc3RyaW5nLFxyXG4gICAgdW5pZGFkZUlkTW90aW9uOiBzdHJpbmcsXHJcbiAgICB1bmlkYWRlSWRMb2NhbDogc3RyaW5nLFxyXG4gICAgZ3J1cG9TbHVnOiBzdHJpbmcsXHJcbiAgICBleGFtZVNsdWc6IHN0cmluZyxcclxuICAgIGV4YW1lUG9yVGF4b25vbWlhPzogYm9vbGVhbixcclxuICApOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KFxyXG4gICAgICBgJHt0aGlzLnNpdGVBcGlVcmx9ZXhhbWVzLWUtcHJvY2VkaW1lbnRvcy9kZXRhbGhlcz91bmlkYWRlUG9zc3VpRXhhbWVzPSR7dW5pZGFkZVBvc3N1aUV4YW1lc30mdW5pZGFkZVNsdWc9JHt1bmlkYWRlU2x1Z30mdW5pZGFkZUlkUWQ9JHt1bmlkYWRlSWRRZH0mdW5pZGFkZUlkTW90aW9uPSR7dW5pZGFkZUlkTW90aW9ufSZ1bmlkYWRlSWRMb2NhbD0ke3VuaWRhZGVJZExvY2FsfSZncnVwb1NsdWc9JHtncnVwb1NsdWd9JmV4YW1lU2x1Zz0ke2V4YW1lU2x1Z30mZXhhbWVQb3JUYXhvbm9taWE9JHtleGFtZVBvclRheG9ub21pYX1gLFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldEdydXBvc0V4YW1lcyh1bmlkYWRlU2x1Zzogc3RyaW5nKTogT2JzZXJ2YWJsZTxFeGFtZUJhY2tlbmRbXT4ge1xyXG4gICAgY29uc3Qgc2x1ZyA9IHVuaWRhZGVTbHVnID8/ICcvJztcclxuICAgIGNvbnN0IHBhcmFtcyA9IHNsdWcgPyBgP3VuaWRhZGU9JHtzbHVnfWAgOiAnJztcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZXhhbWVzLWUtcHJvY2VkaW1lbnRvcyR7cGFyYW1zfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0RXhhbWVzQnlHcnVwbyh1bmlkYWRlU2x1Zzogc3RyaW5nLCBzbHVnR3J1cG86IHN0cmluZyk6IE9ic2VydmFibGU8RXhhbWVCYWNrZW5kW10+IHtcclxuICAgIGNvbnN0IHNsdWcgPSB1bmlkYWRlU2x1ZyA/PyAnLyc7XHJcbiAgICBjb25zdCBwYXJhbXMgPSBgP3VuaWRhZGU9JHtzbHVnfSZzbHVnR3J1cG89JHtzbHVnR3J1cG99YDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZXhhbWVzLWUtcHJvY2VkaW1lbnRvcy9ncnVwbyR7cGFyYW1zfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0RXhhbWVzQnlVbmlkYWRlKHVuaWRhZGVJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmdbXT4ge1xyXG4gICAgY29uc3QgcGFyYW1zID0gYD91bml0SWQ9JHt1bmlkYWRlSWR9YDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZXhhbWVzLWUtcHJvY2VkaW1lbnRvcy91bmlkYWRlJHtwYXJhbXN9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRFeGFtZXNBcGlEYWRvcygpOiBPYnNlcnZhYmxlPEV4YW1lQXBpRGFkb3NbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH1leGFtZXMtZS1wcm9jZWRpbWVudG9zL2FwaS1kYWRvc2ApO1xyXG4gIH1cclxuXHJcbiAgZ2V0RXNwZWNpYWxpZGFkZXNMaXN0KFxyXG4gICAgbGlzdGFEYVVuaWRhZGU6IGJvb2xlYW4sXHJcbiAgICB1bmlkYWRlU2x1Zzogc3RyaW5nLFxyXG4gICAgdW5pZGFkZVBvc3N1aUFnZW5kYW1lbnRvOiBib29sZWFuLFxyXG4gICAgdW5pZGFkZUlkQ29uc3VsdGFzOiBzdHJpbmcsXHJcbiAgICB1bmlkYWRlSWRNb3Rpb246IHN0cmluZyxcclxuICAgIHVuaWRhZGVJZExvY2FsOiBzdHJpbmcsXHJcbiAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChcclxuICAgICAgYCR7dGhpcy5zaXRlQXBpVXJsfWVzcGVjaWFsaWRhZGVzL2xpc3RhP2xpc3RhRGFVbmlkYWRlPSR7bGlzdGFEYVVuaWRhZGV9JnVuaWRhZGVTbHVnPSR7dW5pZGFkZVNsdWd9JnVuaWRhZGVQb3NzdWlBZ2VuZGFtZW50bz0ke3VuaWRhZGVQb3NzdWlBZ2VuZGFtZW50b30mdW5pZGFkZUlkQ29uc3VsdGFzPSR7dW5pZGFkZUlkQ29uc3VsdGFzfSZ1bmlkYWRlSWRNb3Rpb249JHt1bmlkYWRlSWRNb3Rpb259JnVuaWRhZGVJZExvY2FsPSR7dW5pZGFkZUlkTG9jYWx9YCxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRHcnVwb3NFc3BlY2lhbGlkYWRlcyh1bmlkYWRlU2x1Zz86IHN0cmluZyk6IE9ic2VydmFibGU8RXNwZWNpYWxpZGFkZUdydXBvQmFja2VuZFtdPiB7XHJcbiAgICBjb25zdCBwYXJhbXMgPSB1bmlkYWRlU2x1ZyA/IGA/dW5pZGFkZT0ke3VuaWRhZGVTbHVnfWAgOiAnJztcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZXNwZWNpYWxpZGFkZXMke3BhcmFtc31gKTtcclxuICB9XHJcblxyXG4gIGdldEVzcGVjaWFsaWRhZGVzQnlHcnVwbyh0aXR1bG9HcnVwbzogc3RyaW5nLCB1bmlkYWRlU2x1Zz86IHN0cmluZyk6IE9ic2VydmFibGU8RXNwZWNpYWxpZGFkZUJhY2tlbmRbXT4ge1xyXG4gICAgY29uc3QgdGl0dWxvID0gYD90aXR1bG9HcnVwbz0ke2VuY29kZVVSSSh0aXR1bG9HcnVwbyl9YDtcclxuICAgIGNvbnN0IHNsdWcgPSB1bmlkYWRlU2x1ZyA/IGAmdW5pZGFkZT0ke3VuaWRhZGVTbHVnfWAgOiAnJztcclxuICAgIGNvbnN0IHBhcmFtcyA9IGAke3RpdHVsb30ke3NsdWd9YDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZXNwZWNpYWxpZGFkZXMvZ3J1cG8ke3BhcmFtc31gKTtcclxuICB9XHJcblxyXG4gIGdldEVzcGVjaWFsaWRhZGVzRHEocGFyYW1zPzogUkRTTEVzcGVjaWFsaWRhZGVzUGFyYW1zKTogT2JzZXJ2YWJsZTxSRFNMRXNwZWNpYWxpZGFkZVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWVzcGVjaWFsaWRhZGVzL2VzcGVjaWFsaWRhZGVzLWRxJHt0b1F1ZXJ5UGFyYW1zKHBhcmFtcyl9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRHcnVwb3NFc3BlY2lhbGlkYWRlc0RxKHBhcmFtcz86IFJEU0xFc3BlY2lhbGlkYWRlc1BhcmFtcyk6IE9ic2VydmFibGU8UkRTTEVzcGVjaWFsaWRhZGVbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH1lc3BlY2lhbGlkYWRlcy9ncnVwb3MtZHEke3RvUXVlcnlQYXJhbXMocGFyYW1zKX1gKTtcclxuICB9XHJcblxyXG4gIGdldEVzcGVjaWFsaWRhZGVzQnlVbmlkYWRlKGlkcWRVbmlkYWRlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWVzcGVjaWFsaWRhZGVzL3VuaWRhZGUvJHtpZHFkVW5pZGFkZX1gKTtcclxuICB9XHJcblxyXG4gIGdldFJlY2FwdGNoYVJlc3VsdCh0b2tlbjogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLnBvc3QoYCR7dGhpcy5zaXRlQXBpVXJsfSR7dGhpcy5saWJDb25maWcuc2l0ZUFwaS5yZWNhcHRjaGF9YCwgeyB0b2tlbiB9KTtcclxuICB9XHJcblxyXG4gIGdldE1lZGljb0N2KG1lZGljb0lkOiBudW1iZXIpOiBPYnNlcnZhYmxlPE1lZGljb0N2PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfW1lZGljb3MvY3VycmljdWxvLyR7bWVkaWNvSWR9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRNZWRpY29ScWVzKG1lZGljb0lkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH1tZWRpY29zL3JxZT9tZWRpY29JZD0ke21lZGljb0lkfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2VudHJvc01lZGljb3MoY2F0ZWdvcmlhID0gJycpOiBPYnNlcnZhYmxlPENlbnRyb01lZGljb1tdPiB7XHJcbiAgICBjb25zdCBwYXJhbXMgPSBjYXRlZ29yaWEgPyBgP2NhdGVnb3JpYT0ke2NhdGVnb3JpYX1gIDogJyc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWNlbnRyby1tZWRpY28tZGlhZ25vc3RpY28ke3BhcmFtc31gKTtcclxuICB9XHJcblxyXG4gIGdldEluZnVzaW9uYWxMaXN0RGF0YSgpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH1pbmZ1c2lvbmFpcy9saXN0YCk7XHJcbiAgfVxyXG5cclxuICAvLyBDZW50cm8gZGUgRXN0dWRvc1xyXG4gIGNoZWNrTWVkaWNvKGNvbnNlbGhvQ29kaWdvOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH0ke3RoaXMubGliQ29uZmlnLnNpdGVBcGkuY2VudHJvRXN0dWRvc30/ZW1haWw9JHtjb25zZWxob0NvZGlnb31gKTtcclxuICB9XHJcblxyXG4gIHNhdmVNZWRpY28obm92b01lZGljbzogQ2VudHJvRXN0dWRvc0JhY2tlbmRNZWRpY28pOiBPYnNlcnZhYmxlPENlbnRyb0VzdHVkb3NCYWNrZW5kTWVkaWNvPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5wb3N0KGAke3RoaXMuc2l0ZUFwaVVybH0ke3RoaXMubGliQ29uZmlnLnNpdGVBcGkuY2VudHJvRXN0dWRvc31gLCBub3ZvTWVkaWNvKTtcclxuICB9XHJcblxyXG4gIGxvZ0NsaWVudEVycm9yKGVycm9yOiBzdHJpbmcsIG9yaWdpbjogc3RyaW5nLCB1cmw6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UucG9zdChgJHt0aGlzLnNpdGVBcGlVcmx9bG9nL2Vycm9yYCwge1xyXG4gICAgICBlcnJvcixcclxuICAgICAgb3JpZ2luLFxyXG4gICAgICB1cmwsXHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIl19
|
|
191
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l0ZS1iYWNrLWVuZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2l0ZS1mcm9udC1lbmQtbGliL3NyYy9saWIvc2VydmljZXMvc2l0ZS1iYWNrLWVuZC9zaXRlLWJhY2stZW5kLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxVQUFVLEVBQWEsTUFBTSx3QkFBd0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7OztBQXNCakUsTUFBTSxPQUFPLGtCQUFrQjtJQUc3QixZQUNVLGlCQUFvQyxFQUNoQixTQUFvQixFQUNuQixVQUFrQjtRQUZ2QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ2hCLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDbkIsZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQUUvQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRU8sU0FBUztRQUNmLElBQUksZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDL0QsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUM7UUFDN0MsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO0lBQ3JDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILEdBQUcsQ0FBVSxJQUFZLEVBQUUsTUFBWTtRQUNyQyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUksR0FBRyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzVGLENBQUM7SUFFRCxXQUFXLENBQUMsTUFBMkI7UUFDckMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsV0FBVyxhQUFhLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzFGLENBQUM7SUFFRCxlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsZ0JBQWdCLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRUQsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBa0IsR0FBRyxJQUFJLENBQUMsVUFBVSxhQUFhLENBQUMsQ0FBQztJQUN0RixDQUFDO0lBRUQsa0JBQWtCLENBQUMsV0FBVyxHQUFHLEVBQUU7UUFDakMsTUFBTSxPQUFPLEdBQUcsV0FBVyxJQUFJLFdBQVcsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3RFLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLHFCQUFxQixPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ3RGLENBQUM7SUFFRCxpQkFBaUI7UUFDZixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQWtCLEdBQUcsSUFBSSxDQUFDLFVBQVUsa0JBQWtCLENBQUMsQ0FBQztJQUMzRixDQUFDO0lBRUQ7Ozs7O1FBS0k7SUFDSixpQkFBaUI7UUFDZixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQWtCLEdBQUcsSUFBSSxDQUFDLFVBQVUsOEJBQThCLENBQUMsQ0FBQztJQUN2RyxDQUFDO0lBRUQsd0JBQXdCLENBQUMsSUFBWTtRQUNuQyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQU0sR0FBRyxJQUFJLENBQUMsVUFBVSwyQkFBMkIsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM5RixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsSUFBWTtRQUMzQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxtQkFBbUIsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN0RixDQUFDO0lBRUQsWUFBWSxDQUFDLE1BQTJCO1FBQ3RDLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLFlBQVksYUFBYSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMzRixDQUFDO0lBRUQsU0FBUyxDQUFDLE1BQXdCO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLFNBQVMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBRUQsYUFBYSxDQUFDLFNBQWlCLEVBQUUsTUFBNEI7UUFDM0QsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsVUFBVSxTQUFTLGFBQWEsYUFBYSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMvRyxDQUFDO0lBRUQsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLFNBQVMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsTUFBTSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsVUFBVSxvQkFBb0IsQ0FBQztRQUNuRCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQXdCLEdBQUcsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCx1QkFBdUI7UUFDckIsTUFBTSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsVUFBVSxpQkFBaUIsQ0FBQztRQUNoRCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxTQUFTLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRUQsb0JBQW9CO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLG9CQUFvQixDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVELFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxXQUFXLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLGtCQUFrQixDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVELHNCQUFzQjtRQUNwQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxzQkFBc0IsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFRCxhQUFhLENBQ1gsY0FBdUIsRUFDdkIsV0FBbUIsRUFDbkIsV0FBbUIsRUFDbkIsZUFBdUIsRUFDdkIsY0FBc0IsRUFDdEIsZUFBeUI7UUFFekIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUMvQixHQUFHLElBQUksQ0FBQyxVQUFVLCtDQUErQyxjQUFjLG9CQUFvQixlQUFlLGdCQUFnQixXQUFXLGdCQUFnQixXQUFXLG9CQUFvQixlQUFlLG1CQUFtQixjQUFjLEVBQUUsQ0FDL08sQ0FBQztJQUNKLENBQUM7SUFFRCxpQkFBaUIsQ0FDZixjQUF1QixFQUN2QixXQUFtQixFQUNuQixTQUFpQixFQUNqQixXQUFtQixFQUNuQixlQUF1QixFQUN2QixjQUFzQjtRQUV0QixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQy9CLEdBQUcsSUFBSSxDQUFDLFVBQVUsb0RBQW9ELGNBQWMsZ0JBQWdCLFdBQVcsY0FBYyxTQUFTLGdCQUFnQixXQUFXLG9CQUFvQixlQUFlLG1CQUFtQixjQUFjLEVBQUUsQ0FDeE8sQ0FBQztJQUNKLENBQUM7SUFFRCxlQUFlLENBQ2IsbUJBQTRCLEVBQzVCLFdBQW1CLEVBQ25CLFdBQW1CLEVBQ25CLGVBQXVCLEVBQ3ZCLGNBQXNCLEVBQ3RCLFNBQWlCLEVBQ2pCLFNBQWlCLEVBQ2pCLGlCQUEyQjtRQUUzQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQy9CLEdBQUcsSUFBSSxDQUFDLFVBQVUsdURBQXVELG1CQUFtQixnQkFBZ0IsV0FBVyxnQkFBZ0IsV0FBVyxvQkFBb0IsZUFBZSxtQkFBbUIsY0FBYyxjQUFjLFNBQVMsY0FBYyxTQUFTLHNCQUFzQixpQkFBaUIsRUFBRSxDQUM5UyxDQUFDO0lBQ0osQ0FBQztJQUVELGVBQWUsQ0FBQyxXQUFtQjtRQUNqQyxNQUFNLElBQUksR0FBRyxXQUFXLElBQUksR0FBRyxDQUFDO1FBQ2hDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsWUFBWSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzlDLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLHlCQUF5QixNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxXQUFtQixFQUFFLFNBQWlCO1FBQ3JELE1BQU0sSUFBSSxHQUFHLFdBQVcsSUFBSSxHQUFHLENBQUM7UUFDaEMsTUFBTSxNQUFNLEdBQUcsWUFBWSxJQUFJLGNBQWMsU0FBUyxFQUFFLENBQUM7UUFDekQsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsK0JBQStCLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDL0YsQ0FBQztJQUVELGtCQUFrQixDQUFDLFNBQWlCO1FBQ2xDLE1BQU0sTUFBTSxHQUFHLFdBQVcsU0FBUyxFQUFFLENBQUM7UUFDdEMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsaUNBQWlDLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDakcsQ0FBQztJQUVELGlCQUFpQjtRQUNmLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLGtDQUFrQyxDQUFDLENBQUM7SUFDMUYsQ0FBQztJQUVELHFCQUFxQixDQUNuQixjQUF1QixFQUN2QixXQUFtQixFQUNuQix3QkFBaUMsRUFDakMsa0JBQTBCLEVBQzFCLGVBQXVCLEVBQ3ZCLGNBQXNCO1FBRXRCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FDL0IsR0FBRyxJQUFJLENBQUMsVUFBVSx1Q0FBdUMsY0FBYyxnQkFBZ0IsV0FBVyw2QkFBNkIsd0JBQXdCLHVCQUF1QixrQkFBa0Isb0JBQW9CLGVBQWUsbUJBQW1CLGNBQWMsRUFBRSxDQUN2USxDQUFDO0lBQ0osQ0FBQztJQUVELHVCQUF1QixDQUFDLFdBQW9CO1FBQzFDLE1BQU0sTUFBTSxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsWUFBWSxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzVELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLGlCQUFpQixNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7SUFFRCx3QkFBd0IsQ0FBQyxXQUFtQixFQUFFLFdBQW9CO1FBQ2hFLE1BQU0sTUFBTSxHQUFHLGdCQUFnQixTQUFTLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztRQUN4RCxNQUFNLElBQUksR0FBRyxXQUFXLENBQUMsQ0FBQyxDQUFDLFlBQVksV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUMxRCxNQUFNLE1BQU0sR0FBRyxHQUFHLE1BQU0sR0FBRyxJQUFJLEVBQUUsQ0FBQztRQUNsQyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSx1QkFBdUIsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUN2RixDQUFDO0lBRUQsbUJBQW1CLENBQUMsTUFBaUM7UUFDbkQsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsbUNBQW1DLGFBQWEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbEgsQ0FBQztJQUVELHlCQUF5QixDQUFDLE1BQWlDO1FBQ3pELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLDJCQUEyQixhQUFhLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzFHLENBQUM7SUFFRCwwQkFBMEIsQ0FBQyxXQUFtQjtRQUM1QyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSwwQkFBMEIsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUMvRixDQUFDO0lBRUQsa0JBQWtCLENBQUMsS0FBYTtRQUM5QixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUN6RyxDQUFDO0lBRUQsV0FBVyxDQUFDLFFBQWdCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLHFCQUFxQixRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7SUFFRCxhQUFhLENBQUMsUUFBZ0I7UUFDNUIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsd0JBQXdCLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDMUYsQ0FBQztJQUVELGlCQUFpQixDQUFDLFNBQVMsR0FBRyxFQUFFO1FBQzlCLE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsY0FBYyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzFELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLDRCQUE0QixNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzVGLENBQUM7SUFFRCxxQkFBcUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsa0JBQWtCLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRUQsd0JBQXdCLENBQUMsSUFBWTtRQUNuQyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSw0QkFBNEIsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUMxRixDQUFDO0lBRUQsb0JBQW9CO0lBQ3BCLFdBQVcsQ0FBQyxjQUFzQjtRQUNoQyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGFBQWEsVUFBVSxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQ3pILENBQUM7SUFFRCxVQUFVLENBQUMsVUFBc0M7UUFDL0MsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUM5RyxDQUFDO0lBRUQsY0FBYyxDQUFDLEtBQWEsRUFBRSxNQUFjLEVBQUUsR0FBVztRQUN2RCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxXQUFXLEVBQUU7WUFDaEUsS0FBSztZQUNMLE1BQU07WUFDTixHQUFHO1NBQ0osQ0FBQyxDQUFDO0lBQ0wsQ0FBQzsrR0E1UFUsa0JBQWtCLG1EQUtuQixVQUFVLGFBQ1YsV0FBVzttSEFOVixrQkFBa0IsY0FGakIsTUFBTTs7NEZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBTUksTUFBTTsyQkFBQyxVQUFVOzswQkFDakIsTUFBTTsyQkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0LCBQTEFURk9STV9JRCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBpc1BsYXRmb3JtU2VydmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBMSUJfQ09ORklHLCBMaWJDb25maWcgfSBmcm9tICcuLi8uLi90b2tlbnMvTGliQ29uZmlnJztcclxuaW1wb3J0IHsgdG9RdWVyeVBhcmFtcyB9IGZyb20gJy4uLy4uL2hlbHBlcnMvdG9RdWVyeVBhcmFtcy5mdW5jJztcclxuaW1wb3J0IHsgSHR0cENsaWVudFNlcnZpY2UgfSBmcm9tICcuLi9odHRwLWNsaWVudC9odHRwLWNsaWVudC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUkRTTENvbnZlbmlvLCBSRFNMQ29udmVuaW9QYXJhbXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvcmRzbC1jb252ZW5pby5tb2RlbCc7XHJcbmltcG9ydCB7IFJEU0xQbGFubywgUkRTTFBsYW5vUGFyYW1zIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3Jkc2wtcGxhbm9zLm1vZGVsJztcclxuaW1wb3J0IHsgUkRTTENvYmVydHVyYSwgUkRTTENvYmVydHVyYVBhcmFtcyB9IGZyb20gJy4uLy4uL21vZGVscy9yZHNsLWNvYmVydHVyYS5tb2RlbCc7XHJcbmltcG9ydCB7IFJEU0xVbmlkYWRlLCBSRFNMVW5pZGFkZXNQYXJhbXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvcmRzbC11bmlkYWRlLm1vZGVsJztcclxuaW1wb3J0IHsgUkRTTEVzcGVjaWFsaWRhZGUsIFJEU0xFc3BlY2lhbGlkYWRlc1BhcmFtcyB9IGZyb20gJy4uLy4uL21vZGVscy9yZHNsLWVzcGVjaWFsaWRhZGUubW9kZWwnO1xyXG5pbXBvcnQgeyBEb2VuY2FCYWNrZW5kIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2RvZW5jYS1iYWNrZW5kLm1vZGVsJztcclxuaW1wb3J0IHsgVGF4b25vbWlhc0RvZW5jYXNMaXN0IH0gZnJvbSAnLi4vLi4vbW9kZWxzL2RvZW5jYS10YXhvbm9teS5tb2RlbCc7XHJcbmltcG9ydCB7IEV4YW1lQXBpRGFkb3MsIEV4YW1lQmFja2VuZCB9IGZyb20gJy4uLy4uL21vZGVscy9leGFtZS1iYWNrZW5kLm1vZGVsJztcclxuaW1wb3J0IHsgRXNwZWNpYWxpZGFkZUJhY2tlbmQsIEVzcGVjaWFsaWRhZGVHcnVwb0JhY2tlbmQgfSBmcm9tICcuLi8uLi9tb2RlbHMvZXNwZWNpYWxpZGFkZS1iYWNrZW5kLm1vZGVsJztcclxuaW1wb3J0IHsgQ2VudHJvRXN0dWRvc0JhY2tlbmRNZWRpY28gfSBmcm9tICcuLi8uLi9tb2RlbHMvY2VudHJvLWVzdHVkb3MtYmFja2VuZC5tb2RlbCc7XHJcbmltcG9ydCB7IFdwVW5pZGFkZVNpdGUgfSBmcm9tICcuLi8uLi9tb2RlbHMvd29yZHByZXNzL3VuaWRhZGUvd3AtdW5pZGFkZS1zaXRlLm1vZGVsJztcclxuaW1wb3J0IHsgV3BVbmlkYWRlT25jbyB9IGZyb20gJy4uLy4uL21vZGVscy93b3JkcHJlc3MvdW5pZGFkZS93cC11bmlkYWRlLW9uY28ubW9kZWwnO1xyXG5pbXBvcnQgeyBVbmlmaWVkTWVudSB9IGZyb20gJy4uLy4uL21vZGVscy9tZW51LWl0ZW0ubW9kZWwnO1xyXG5pbXBvcnQgeyBNZWRpY29DdiB9IGZyb20gJy4uLy4uL21vZGVscy9tZWRpY28tY3YubW9kZWwnO1xyXG5pbXBvcnQgeyBNZW51RGVVbmlkYWRlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL21lbnUtZGUtdW5pZGFkZS5tb2RlbCc7XHJcbmltcG9ydCB7IENlbnRyb01lZGljbyB9IGZyb20gJy4uLy4uL21vZGVscy9jZW50cm8tbWVkaWNvLm1vZGVsJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaXRlQmFja2VuZFNlcnZpY2Uge1xyXG4gIHNpdGVBcGlVcmw6IHN0cmluZztcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGh0dHBDbGllbnRTZXJ2aWNlOiBIdHRwQ2xpZW50U2VydmljZSxcclxuICAgIEBJbmplY3QoTElCX0NPTkZJRykgcHJpdmF0ZSBsaWJDb25maWc6IExpYkNvbmZpZyxcclxuICAgIEBJbmplY3QoUExBVEZPUk1fSUQpIHByaXZhdGUgcGxhdGZvcm1JZDogb2JqZWN0LFxyXG4gICkge1xyXG4gICAgdGhpcy5zaXRlQXBpVXJsID0gdGhpcy5nZXRBcGlVcmwoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0QXBpVXJsKCk6IHN0cmluZyB7XHJcbiAgICBpZiAoaXNQbGF0Zm9ybVNlcnZlcih0aGlzLnBsYXRmb3JtSWQpICYmIHRoaXMubGliQ29uZmlnLnNlcnZlcikge1xyXG4gICAgICByZXR1cm4gdGhpcy5saWJDb25maWcuc2l0ZUFwaS5iYXNlSW50ZXJuYWw7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5saWJDb25maWcuc2l0ZUFwaS5iYXNlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR0VUIHBhcmEgcXVhbHF1ZXIgZW5kcG9pbnQgZG8gYmFjay1lbmQgZG8gc2l0ZS5cclxuICAgKiBAcGFyYW0gcGF0aCAtIE8gY2FtaW5obyBkbyByZWN1cnNvLiAoSW5pY2lhIHNlbSAnLycuIEV4OiAndW5pZGFkZXMvd3AnKVxyXG4gICAqIEBwYXJhbSBwYXJhbXMgLSBQYXLDom1ldHJvcyBvcGNpb25haXMgcGFyYSBhIHJlcXVpc2nDp8Ojby5cclxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIHF1ZSBlbWl0ZSBvcyBkYWRvcyByZXRvcm5hZG9zIHBlbG8gYmFjay1lbmQuXHJcbiAgICovXHJcbiAgZ2V0PFQgPSBhbnk+KHBhdGg6IHN0cmluZywgcGFyYW1zPzogYW55KTogT2JzZXJ2YWJsZTxUPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQ8VD4oYCR7dGhpcy5zaXRlQXBpVXJsfSR7cGF0aH0ke3RvUXVlcnlQYXJhbXMocGFyYW1zKX1gKTtcclxuICB9XHJcblxyXG4gIGdldFVuaWRhZGVzKHBhcmFtcz86IFJEU0xVbmlkYWRlc1BhcmFtcyk6IE9ic2VydmFibGU8UkRTTFVuaWRhZGVbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH11bmlkYWRlcyR7dG9RdWVyeVBhcmFtcyhwYXJhbXMpfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0VW5pZGFkZXNMaXN0KCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfXVuaWRhZGVzL2xpc3RhYCk7XHJcbiAgfVxyXG5cclxuICBnZXRVbmlkYWRlc1dQKCk6IE9ic2VydmFibGU8V3BVbmlkYWRlU2l0ZVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQ8V3BVbmlkYWRlU2l0ZVtdPihgJHt0aGlzLnNpdGVBcGlVcmx9dW5pZGFkZXMvd3BgKTtcclxuICB9XHJcblxyXG4gIGdldFVuaWRhZGVzTWVudXNXUCh1bmlkYWRlU2x1ZyA9ICcnKTogT2JzZXJ2YWJsZTxVbmlmaWVkTWVudT4ge1xyXG4gICAgY29uc3QgdW5pZGFkZSA9IHVuaWRhZGVTbHVnICYmIHVuaWRhZGVTbHVnICE9PSAnLycgPyB1bmlkYWRlU2x1ZyA6ICcnO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH11bmlkYWRlcy93cC9tZW51cy8ke3VuaWRhZGV9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRVbmlkYWRlc09uY29XUCgpOiBPYnNlcnZhYmxlPFdwVW5pZGFkZU9uY29bXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0PFdwVW5pZGFkZU9uY29bXT4oYCR7dGhpcy5zaXRlQXBpVXJsfXVuaWRhZGVzL3dwLW9uY29gKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldG9ybmEgbyAnbWVudSBkZSB1bmlkYWRlcycgY29tcGxldG8sIGJhc2VhZG8gbm9zIGRhZG9zIGRlIC91bmlkYWRlcy93cCBlIC91bmlkYWRlcy93cC1vbmNvIGRvIGJhY2tlbmQuXHJcbiAgICogaW5kZXggMCA9PiByZWRlZG9yXHJcbiAgICogaW5kZXggMSA9PiBvbmNvbG9naWFcclxuICAgKiBpbmRleCAyID0+IHN0YXJcclxuICAgKiovXHJcbiAgZ2V0TWVudURlVW5pZGFkZXMoKTogT2JzZXJ2YWJsZTxNZW51RGVVbmlkYWRlW10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldDxNZW51RGVVbmlkYWRlW10+KGAke3RoaXMuc2l0ZUFwaVVybH11bmlkYWRlcy93cC9tZW51LWRlLXVuaWRhZGVzYCk7XHJcbiAgfVxyXG5cclxuICBnZXRVbmlkYWRlRXNwZWNpYWxpZGFkZXMoaWRxZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldDxhbnk+KGAke3RoaXMuc2l0ZUFwaVVybH11bmlkYWRlcy9lc3BlY2lhbGlkYWRlcy8ke2lkcWR9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRVbmlkYWRlRXhhbWVzKGlkcWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQ8YW55PihgJHt0aGlzLnNpdGVBcGlVcmx9dW5pZGFkZXMvZXhhbWVzLyR7aWRxZH1gKTtcclxuICB9XHJcblxyXG4gIGdldENvbnZlbmlvcyhwYXJhbXM/OiBSRFNMQ29udmVuaW9QYXJhbXMpOiBPYnNlcnZhYmxlPFJEU0xDb252ZW5pb1tdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWNvbnZlbmlvcyR7dG9RdWVyeVBhcmFtcyhwYXJhbXMpfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0UGxhbm9zKHBhcmFtcz86IFJEU0xQbGFub1BhcmFtcyk6IE9ic2VydmFibGU8UkRTTFBsYW5vW10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9cGxhbm9zJHt0b1F1ZXJ5UGFyYW1zKHBhcmFtcyl9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRDb2JlcnR1cmFzKHBsYW5vSWRRZDogbnVtYmVyLCBwYXJhbXM/OiBSRFNMQ29iZXJ0dXJhUGFyYW1zKTogT2JzZXJ2YWJsZTxSRFNMQ29iZXJ0dXJhW10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9cGxhbm9zLyR7cGxhbm9JZFFkfS9jb2JlcnR1cmEke3RvUXVlcnlQYXJhbXMocGFyYW1zKX1gKTtcclxuICB9XHJcblxyXG4gIGdldERvZW5jYXMoKTogT2JzZXJ2YWJsZTxEb2VuY2FCYWNrZW5kW10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZG9lbmNhc2ApO1xyXG4gIH1cclxuXHJcbiAgZ2V0RG9lbmNhc1RheG9ub21pZXMoKSB7XHJcbiAgICBjb25zdCB1cmwgPSBgJHt0aGlzLnNpdGVBcGlVcmx9ZG9lbmNhcy90YXhvbm9taWFzYDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldDxUYXhvbm9taWFzRG9lbmNhc0xpc3Q+KHVybCk7XHJcbiAgfVxyXG5cclxuICBnZXREb2VuY2FzVW5pcXVlTGV0dGVycygpOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XHJcbiAgICBjb25zdCB1cmwgPSBgJHt0aGlzLnNpdGVBcGlVcmx9ZG9lbmNhcy9sZXR0ZXJzYDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldCh1cmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0VmFjaW5hcygpOiBPYnNlcnZhYmxlPGFueVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfXZhY2luYXNgKTtcclxuICB9XHJcblxyXG4gIGdldFZhY2luYXNUYXhvbm9taWVzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH12YWNpbmFzL3RheG9ub21pYXNgKTtcclxuICB9XHJcblxyXG4gIGdldENpcnVyZ2lhcygpOiBPYnNlcnZhYmxlPGFueVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWNpcnVyZ2lhc2ApO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2lydXJnaWFzR3J1cG9zKCk6IE9ic2VydmFibGU8YW55W10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9Y2lydXJnaWFzL2dydXBvc2ApO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2lydXJnaWFzVGF4b25vbWllcygpOiBPYnNlcnZhYmxlPGFueVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWNpcnVyZ2lhcy90YXhvbm9taWFzYCk7XHJcbiAgfVxyXG5cclxuICBnZXRFeGFtZXNMaXN0KFxyXG4gICAgbGlzdGFEYVVuaWRhZGU6IGJvb2xlYW4sXHJcbiAgICB1bmlkYWRlU2x1Zzogc3RyaW5nLFxyXG4gICAgdW5pZGFkZUlkUWQ6IHN0cmluZyxcclxuICAgIHVuaWRhZGVJZE1vdGlvbjogc3RyaW5nLFxyXG4gICAgdW5pZGFkZUlkTG9jYWw6IHN0cmluZyxcclxuICAgIGV4YW1lc0Rlc3RhcXVlcz86IGJvb2xlYW4sXHJcbiAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChcclxuICAgICAgYCR7dGhpcy5zaXRlQXBpVXJsfWV4YW1lcy1lLXByb2NlZGltZW50b3MvbGlzdGE/bGlzdGFEYVVuaWRhZGU9JHtsaXN0YURhVW5pZGFkZX0mZXhhbWVzRGVzdGFxdWVzPSR7ZXhhbWVzRGVzdGFxdWVzfSZ1bmlkYWRlU2x1Zz0ke3VuaWRhZGVTbHVnfSZ1bmlkYWRlSWRRZD0ke3VuaWRhZGVJZFFkfSZ1bmlkYWRlSWRNb3Rpb249JHt1bmlkYWRlSWRNb3Rpb259JnVuaWRhZGVJZExvY2FsPSR7dW5pZGFkZUlkTG9jYWx9YCxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRFeGFtZXNDYXRlZ29yeShcclxuICAgIGxpc3RhRGFVbmlkYWRlOiBib29sZWFuLFxyXG4gICAgdW5pZGFkZVNsdWc6IHN0cmluZyxcclxuICAgIHNsdWdHcnVwbzogc3RyaW5nLFxyXG4gICAgdW5pZGFkZUlkUWQ6IHN0cmluZyxcclxuICAgIHVuaWRhZGVJZE1vdGlvbjogc3RyaW5nLFxyXG4gICAgdW5pZGFkZUlkTG9jYWw6IHN0cmluZyxcclxuICApOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KFxyXG4gICAgICBgJHt0aGlzLnNpdGVBcGlVcmx9ZXhhbWVzLWUtcHJvY2VkaW1lbnRvcy9jYXRlZ29yaWFzP2xpc3RhRGFVbmlkYWRlPSR7bGlzdGFEYVVuaWRhZGV9JnVuaWRhZGVTbHVnPSR7dW5pZGFkZVNsdWd9JnNsdWdHcnVwbz0ke3NsdWdHcnVwb30mdW5pZGFkZUlkUWQ9JHt1bmlkYWRlSWRRZH0mdW5pZGFkZUlkTW90aW9uPSR7dW5pZGFkZUlkTW90aW9ufSZ1bmlkYWRlSWRMb2NhbD0ke3VuaWRhZGVJZExvY2FsfWAsXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgZ2V0RXhhbWVEZXRhaWxzKFxyXG4gICAgdW5pZGFkZVBvc3N1aUV4YW1lczogYm9vbGVhbixcclxuICAgIHVuaWRhZGVTbHVnOiBzdHJpbmcsXHJcbiAgICB1bmlkYWRlSWRRZDogc3RyaW5nLFxyXG4gICAgdW5pZGFkZUlkTW90aW9uOiBzdHJpbmcsXHJcbiAgICB1bmlkYWRlSWRMb2NhbDogc3RyaW5nLFxyXG4gICAgZ3J1cG9TbHVnOiBzdHJpbmcsXHJcbiAgICBleGFtZVNsdWc6IHN0cmluZyxcclxuICAgIGV4YW1lUG9yVGF4b25vbWlhPzogYm9vbGVhbixcclxuICApOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KFxyXG4gICAgICBgJHt0aGlzLnNpdGVBcGlVcmx9ZXhhbWVzLWUtcHJvY2VkaW1lbnRvcy9kZXRhbGhlcz91bmlkYWRlUG9zc3VpRXhhbWVzPSR7dW5pZGFkZVBvc3N1aUV4YW1lc30mdW5pZGFkZVNsdWc9JHt1bmlkYWRlU2x1Z30mdW5pZGFkZUlkUWQ9JHt1bmlkYWRlSWRRZH0mdW5pZGFkZUlkTW90aW9uPSR7dW5pZGFkZUlkTW90aW9ufSZ1bmlkYWRlSWRMb2NhbD0ke3VuaWRhZGVJZExvY2FsfSZncnVwb1NsdWc9JHtncnVwb1NsdWd9JmV4YW1lU2x1Zz0ke2V4YW1lU2x1Z30mZXhhbWVQb3JUYXhvbm9taWE9JHtleGFtZVBvclRheG9ub21pYX1gLFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldEdydXBvc0V4YW1lcyh1bmlkYWRlU2x1Zzogc3RyaW5nKTogT2JzZXJ2YWJsZTxFeGFtZUJhY2tlbmRbXT4ge1xyXG4gICAgY29uc3Qgc2x1ZyA9IHVuaWRhZGVTbHVnID8/ICcvJztcclxuICAgIGNvbnN0IHBhcmFtcyA9IHNsdWcgPyBgP3VuaWRhZGU9JHtzbHVnfWAgOiAnJztcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZXhhbWVzLWUtcHJvY2VkaW1lbnRvcyR7cGFyYW1zfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0RXhhbWVzQnlHcnVwbyh1bmlkYWRlU2x1Zzogc3RyaW5nLCBzbHVnR3J1cG86IHN0cmluZyk6IE9ic2VydmFibGU8RXhhbWVCYWNrZW5kW10+IHtcclxuICAgIGNvbnN0IHNsdWcgPSB1bmlkYWRlU2x1ZyA/PyAnLyc7XHJcbiAgICBjb25zdCBwYXJhbXMgPSBgP3VuaWRhZGU9JHtzbHVnfSZzbHVnR3J1cG89JHtzbHVnR3J1cG99YDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZXhhbWVzLWUtcHJvY2VkaW1lbnRvcy9ncnVwbyR7cGFyYW1zfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0RXhhbWVzQnlVbmlkYWRlKHVuaWRhZGVJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmdbXT4ge1xyXG4gICAgY29uc3QgcGFyYW1zID0gYD91bml0SWQ9JHt1bmlkYWRlSWR9YDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZXhhbWVzLWUtcHJvY2VkaW1lbnRvcy91bmlkYWRlJHtwYXJhbXN9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRFeGFtZXNBcGlEYWRvcygpOiBPYnNlcnZhYmxlPEV4YW1lQXBpRGFkb3NbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH1leGFtZXMtZS1wcm9jZWRpbWVudG9zL2FwaS1kYWRvc2ApO1xyXG4gIH1cclxuXHJcbiAgZ2V0RXNwZWNpYWxpZGFkZXNMaXN0KFxyXG4gICAgbGlzdGFEYVVuaWRhZGU6IGJvb2xlYW4sXHJcbiAgICB1bmlkYWRlU2x1Zzogc3RyaW5nLFxyXG4gICAgdW5pZGFkZVBvc3N1aUFnZW5kYW1lbnRvOiBib29sZWFuLFxyXG4gICAgdW5pZGFkZUlkQ29uc3VsdGFzOiBzdHJpbmcsXHJcbiAgICB1bmlkYWRlSWRNb3Rpb246IHN0cmluZyxcclxuICAgIHVuaWRhZGVJZExvY2FsOiBzdHJpbmcsXHJcbiAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChcclxuICAgICAgYCR7dGhpcy5zaXRlQXBpVXJsfWVzcGVjaWFsaWRhZGVzL2xpc3RhP2xpc3RhRGFVbmlkYWRlPSR7bGlzdGFEYVVuaWRhZGV9JnVuaWRhZGVTbHVnPSR7dW5pZGFkZVNsdWd9JnVuaWRhZGVQb3NzdWlBZ2VuZGFtZW50bz0ke3VuaWRhZGVQb3NzdWlBZ2VuZGFtZW50b30mdW5pZGFkZUlkQ29uc3VsdGFzPSR7dW5pZGFkZUlkQ29uc3VsdGFzfSZ1bmlkYWRlSWRNb3Rpb249JHt1bmlkYWRlSWRNb3Rpb259JnVuaWRhZGVJZExvY2FsPSR7dW5pZGFkZUlkTG9jYWx9YCxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRHcnVwb3NFc3BlY2lhbGlkYWRlcyh1bmlkYWRlU2x1Zz86IHN0cmluZyk6IE9ic2VydmFibGU8RXNwZWNpYWxpZGFkZUdydXBvQmFja2VuZFtdPiB7XHJcbiAgICBjb25zdCBwYXJhbXMgPSB1bmlkYWRlU2x1ZyA/IGA/dW5pZGFkZT0ke3VuaWRhZGVTbHVnfWAgOiAnJztcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZXNwZWNpYWxpZGFkZXMke3BhcmFtc31gKTtcclxuICB9XHJcblxyXG4gIGdldEVzcGVjaWFsaWRhZGVzQnlHcnVwbyh0aXR1bG9HcnVwbzogc3RyaW5nLCB1bmlkYWRlU2x1Zz86IHN0cmluZyk6IE9ic2VydmFibGU8RXNwZWNpYWxpZGFkZUJhY2tlbmRbXT4ge1xyXG4gICAgY29uc3QgdGl0dWxvID0gYD90aXR1bG9HcnVwbz0ke2VuY29kZVVSSSh0aXR1bG9HcnVwbyl9YDtcclxuICAgIGNvbnN0IHNsdWcgPSB1bmlkYWRlU2x1ZyA/IGAmdW5pZGFkZT0ke3VuaWRhZGVTbHVnfWAgOiAnJztcclxuICAgIGNvbnN0IHBhcmFtcyA9IGAke3RpdHVsb30ke3NsdWd9YDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9ZXNwZWNpYWxpZGFkZXMvZ3J1cG8ke3BhcmFtc31gKTtcclxuICB9XHJcblxyXG4gIGdldEVzcGVjaWFsaWRhZGVzRHEocGFyYW1zPzogUkRTTEVzcGVjaWFsaWRhZGVzUGFyYW1zKTogT2JzZXJ2YWJsZTxSRFNMRXNwZWNpYWxpZGFkZVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWVzcGVjaWFsaWRhZGVzL2VzcGVjaWFsaWRhZGVzLWRxJHt0b1F1ZXJ5UGFyYW1zKHBhcmFtcyl9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRHcnVwb3NFc3BlY2lhbGlkYWRlc0RxKHBhcmFtcz86IFJEU0xFc3BlY2lhbGlkYWRlc1BhcmFtcyk6IE9ic2VydmFibGU8UkRTTEVzcGVjaWFsaWRhZGVbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH1lc3BlY2lhbGlkYWRlcy9ncnVwb3MtZHEke3RvUXVlcnlQYXJhbXMocGFyYW1zKX1gKTtcclxuICB9XHJcblxyXG4gIGdldEVzcGVjaWFsaWRhZGVzQnlVbmlkYWRlKGlkcWRVbmlkYWRlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWVzcGVjaWFsaWRhZGVzL3VuaWRhZGUvJHtpZHFkVW5pZGFkZX1gKTtcclxuICB9XHJcblxyXG4gIGdldFJlY2FwdGNoYVJlc3VsdCh0b2tlbjogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLnBvc3QoYCR7dGhpcy5zaXRlQXBpVXJsfSR7dGhpcy5saWJDb25maWcuc2l0ZUFwaS5yZWNhcHRjaGF9YCwgeyB0b2tlbiB9KTtcclxuICB9XHJcblxyXG4gIGdldE1lZGljb0N2KG1lZGljb0lkOiBudW1iZXIpOiBPYnNlcnZhYmxlPE1lZGljb0N2PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfW1lZGljb3MvY3VycmljdWxvLyR7bWVkaWNvSWR9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRNZWRpY29ScWVzKG1lZGljb0lkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH1tZWRpY29zL3JxZT9tZWRpY29JZD0ke21lZGljb0lkfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2VudHJvc01lZGljb3MoY2F0ZWdvcmlhID0gJycpOiBPYnNlcnZhYmxlPENlbnRyb01lZGljb1tdPiB7XHJcbiAgICBjb25zdCBwYXJhbXMgPSBjYXRlZ29yaWEgPyBgP2NhdGVnb3JpYT0ke2NhdGVnb3JpYX1gIDogJyc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfWNlbnRyby1tZWRpY28tZGlhZ25vc3RpY28ke3BhcmFtc31gKTtcclxuICB9XHJcblxyXG4gIGdldEluZnVzaW9uYWxMaXN0RGF0YSgpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFNlcnZpY2UuZ2V0KGAke3RoaXMuc2l0ZUFwaVVybH1pbmZ1c2lvbmFpcy9saXN0YCk7XHJcbiAgfVxyXG5cclxuICBnZXRJbmZ1c2lvbmFsRGV0YWlsc0RhdGEoc2x1Zzogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLmdldChgJHt0aGlzLnNpdGVBcGlVcmx9aW5mdXNpb25haXMvZGV0YWlscz9zbHVnPSR7c2x1Z31gKTtcclxuICB9XHJcblxyXG4gIC8vIENlbnRybyBkZSBFc3R1ZG9zXHJcbiAgY2hlY2tNZWRpY28oY29uc2VsaG9Db2RpZ286IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5nZXQoYCR7dGhpcy5zaXRlQXBpVXJsfSR7dGhpcy5saWJDb25maWcuc2l0ZUFwaS5jZW50cm9Fc3R1ZG9zfT9lbWFpbD0ke2NvbnNlbGhvQ29kaWdvfWApO1xyXG4gIH1cclxuXHJcbiAgc2F2ZU1lZGljbyhub3ZvTWVkaWNvOiBDZW50cm9Fc3R1ZG9zQmFja2VuZE1lZGljbyk6IE9ic2VydmFibGU8Q2VudHJvRXN0dWRvc0JhY2tlbmRNZWRpY28+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRTZXJ2aWNlLnBvc3QoYCR7dGhpcy5zaXRlQXBpVXJsfSR7dGhpcy5saWJDb25maWcuc2l0ZUFwaS5jZW50cm9Fc3R1ZG9zfWAsIG5vdm9NZWRpY28pO1xyXG4gIH1cclxuXHJcbiAgbG9nQ2xpZW50RXJyb3IoZXJyb3I6IHN0cmluZywgb3JpZ2luOiBzdHJpbmcsIHVybDogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50U2VydmljZS5wb3N0KGAke3RoaXMuc2l0ZUFwaVVybH1sb2cvZXJyb3JgLCB7XHJcbiAgICAgIGVycm9yLFxyXG4gICAgICBvcmlnaW4sXHJcbiAgICAgIHVybCxcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1256,6 +1256,9 @@ class SiteBackendService {
|
|
|
1256
1256
|
getInfusionalListData() {
|
|
1257
1257
|
return this.httpClientService.get(`${this.siteApiUrl}infusionais/list`);
|
|
1258
1258
|
}
|
|
1259
|
+
getInfusionalDetailsData(slug) {
|
|
1260
|
+
return this.httpClientService.get(`${this.siteApiUrl}infusionais/details?slug=${slug}`);
|
|
1261
|
+
}
|
|
1259
1262
|
// Centro de Estudos
|
|
1260
1263
|
checkMedico(conselhoCodigo) {
|
|
1261
1264
|
return this.httpClientService.get(`${this.siteApiUrl}${this.libConfig.siteApi.centroEstudos}?email=${conselhoCodigo}`);
|
|
@@ -4558,6 +4561,8 @@ class SectionNavigationComponent {
|
|
|
4558
4561
|
this.isMobile = window.innerWidth < 768;
|
|
4559
4562
|
this.scrollToMenuAnchorSubscription = null;
|
|
4560
4563
|
this.scrollToMenuAnchorSubject = new BehaviorSubject('');
|
|
4564
|
+
this.padding = 0;
|
|
4565
|
+
this.headerClass = '.page-header';
|
|
4561
4566
|
this.ariaLabel = 'Navegação da página';
|
|
4562
4567
|
this.anchorAdjustment = 0;
|
|
4563
4568
|
this.sectionChange = new EventEmitter();
|
|
@@ -4592,12 +4597,12 @@ class SectionNavigationComponent {
|
|
|
4592
4597
|
}
|
|
4593
4598
|
windowScroll() {
|
|
4594
4599
|
const navHeight = document.querySelector('.rdsite-section-navigation')?.getBoundingClientRect().top || 0;
|
|
4595
|
-
const pageHeaderHeight = document.querySelector(
|
|
4600
|
+
const pageHeaderHeight = document.querySelector(this.headerClass)?.getBoundingClientRect().top || 0;
|
|
4596
4601
|
let selectedIndex = -1;
|
|
4597
4602
|
this.sections()?.forEach((section, index) => {
|
|
4598
4603
|
const menuTop = document.querySelector(`#${section.id}`)?.getBoundingClientRect().top || 0;
|
|
4599
4604
|
if (menuTop) {
|
|
4600
|
-
const calc = window.scrollY - menuTop + navHeight + pageHeaderHeight;
|
|
4605
|
+
const calc = window.scrollY - menuTop + navHeight + pageHeaderHeight + this.padding;
|
|
4601
4606
|
if (calc >= 0) {
|
|
4602
4607
|
selectedIndex = index;
|
|
4603
4608
|
if (this.sections()?.[selectedIndex]) {
|
|
@@ -4629,7 +4634,7 @@ class SectionNavigationComponent {
|
|
|
4629
4634
|
this.scrollToMenuAnchorSubscription?.unsubscribe();
|
|
4630
4635
|
}
|
|
4631
4636
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SectionNavigationComponent, deps: [{ token: CuraService }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4632
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: SectionNavigationComponent, isStandalone: true, selector: "nav[rdsite-section-navigation]", inputs: { navigationSections: "navigationSections", navigationConfig: "navigationConfig", ariaLabel: "ariaLabel", anchorAdjustment: "anchorAdjustment" }, outputs: { sectionChange: "sectionChange" }, host: { listeners: { "window:resize": "onWindowResize()", "window:scroll": "onWindowScroll()" }, properties: { "style": "this.styleBinding" } }, viewQueries: [{ propertyName: "containerEl", first: true, predicate: ["containerEl"], descendants: true }, { propertyName: "navigationMenu", first: true, predicate: ["navigationMenu"], descendants: true, static: true }, { propertyName: "anchorsEl", predicate: ["anchorEl"], descendants: true }], ngImport: i0, template: "<nav class=\"rdsite-section-navigation\" [attr.aria-label]=\"ariaLabel\" [style.top.px]=\"config()?.offsetTop || 0\">\r\n <ul #containerEl class=\"rdsite-section-navigation-menu\" role=\"menubar\">\r\n @for (section of sections(); track section.id) {\r\n @if (section.title) {\r\n <li role=\"none\">\r\n <a\r\n #anchorEl\r\n id=\"anchor-{{ section.id }}\"\r\n role=\"menuitem\"\r\n [href]=\"getPath(section.id)\"\r\n rdsitelink\r\n [anchorAdjustment]=\"anchorAdjustment\"\r\n [attr.aria-current]=\"activeSection() === section.id ? 'page' : null\"\r\n [attr.aria-label]=\"'Navegar para ' + section.title\"\r\n [ngClass]=\"{ active: activeSection() === section.id }\"\r\n >\r\n {{ section.title }}\r\n </a>\r\n </li>\r\n }\r\n }\r\n </ul>\r\n</nav>\r\n", styles: [".rdsite-section-navigation{width:100%;position:sticky;left:0;z-index:1000;background-color:var(--neutral-purewhite);border-bottom:1px solid #b7b7b7;box-shadow:0 4px 8px 0 var(--neutral-black);padding-top:10px}.rdsite-section-navigation *{font-family:var(--font-family)}.rdsite-section-navigation-menu{box-sizing:border-box;width:90%;position:relative;max-width:1366px;margin-left:auto;margin-right:auto;display:flex}.rdsite-section-navigation-menu.full-container{width:100%;max-width:100%}@media only screen and (max-width: 1366px){.rdsite-section-navigation-menu{overflow-x:auto;white-space:nowrap}}.rdsite-section-navigation-menu li>a{text-decoration:none;padding:12px 8px;font-size:12px;font-weight:500;color:var(--neutral-dark);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:158px}@media only screen and (max-width: 1366px){.rdsite-section-navigation-menu li>a{max-width:135px}}.rdsite-section-navigation-menu li>a.active{border-radius:4px 4px 0 0!important;background-color:var(--color-base);color:var(--neutral-purewhite)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: RdsiteLinkDirective, selector: "[rdsitelink]", inputs: ["anchorAdjustment", "anchorExtraAdjustment", "phonemodal"] }] }); }
|
|
4637
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: SectionNavigationComponent, isStandalone: true, selector: "nav[rdsite-section-navigation]", inputs: { padding: "padding", headerClass: "headerClass", navigationSections: "navigationSections", navigationConfig: "navigationConfig", ariaLabel: "ariaLabel", anchorAdjustment: "anchorAdjustment" }, outputs: { sectionChange: "sectionChange" }, host: { listeners: { "window:resize": "onWindowResize()", "window:scroll": "onWindowScroll()" }, properties: { "style": "this.styleBinding" } }, viewQueries: [{ propertyName: "containerEl", first: true, predicate: ["containerEl"], descendants: true }, { propertyName: "navigationMenu", first: true, predicate: ["navigationMenu"], descendants: true, static: true }, { propertyName: "anchorsEl", predicate: ["anchorEl"], descendants: true }], ngImport: i0, template: "<nav class=\"rdsite-section-navigation\" [attr.aria-label]=\"ariaLabel\" [style.top.px]=\"config()?.offsetTop || 0\">\r\n <ul #containerEl class=\"rdsite-section-navigation-menu\" role=\"menubar\">\r\n @for (section of sections(); track section.id) {\r\n @if (section.title) {\r\n <li role=\"none\">\r\n <a\r\n #anchorEl\r\n id=\"anchor-{{ section.id }}\"\r\n role=\"menuitem\"\r\n [href]=\"getPath(section.id)\"\r\n rdsitelink\r\n [anchorAdjustment]=\"anchorAdjustment\"\r\n [attr.aria-current]=\"activeSection() === section.id ? 'page' : null\"\r\n [attr.aria-label]=\"'Navegar para ' + section.title\"\r\n [ngClass]=\"{ active: activeSection() === section.id }\"\r\n >\r\n {{ section.title }}\r\n </a>\r\n </li>\r\n }\r\n }\r\n </ul>\r\n</nav>\r\n", styles: [".rdsite-section-navigation{width:100%;position:sticky;left:0;z-index:1000;background-color:var(--neutral-purewhite);border-bottom:1px solid #b7b7b7;box-shadow:0 4px 8px 0 var(--neutral-black);padding-top:10px}.rdsite-section-navigation *{font-family:var(--font-family)}.rdsite-section-navigation-menu{box-sizing:border-box;width:90%;position:relative;max-width:1366px;margin-left:auto;margin-right:auto;display:flex}.rdsite-section-navigation-menu.full-container{width:100%;max-width:100%}@media only screen and (max-width: 1366px){.rdsite-section-navigation-menu{overflow-x:auto;white-space:nowrap}}.rdsite-section-navigation-menu li>a{text-decoration:none;padding:12px 8px;font-size:12px;font-weight:500;color:var(--neutral-dark);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:158px}@media only screen and (max-width: 1366px){.rdsite-section-navigation-menu li>a{max-width:135px}}.rdsite-section-navigation-menu li>a.active{border-radius:4px 4px 0 0!important;background-color:var(--color-base);color:var(--neutral-purewhite)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: RdsiteLinkDirective, selector: "[rdsitelink]", inputs: ["anchorAdjustment", "anchorExtraAdjustment", "phonemodal"] }] }); }
|
|
4633
4638
|
}
|
|
4634
4639
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SectionNavigationComponent, decorators: [{
|
|
4635
4640
|
type: Component,
|
|
@@ -4646,6 +4651,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
4646
4651
|
}], onWindowScroll: [{
|
|
4647
4652
|
type: HostListener,
|
|
4648
4653
|
args: ['window:scroll']
|
|
4654
|
+
}], padding: [{
|
|
4655
|
+
type: Input
|
|
4656
|
+
}], headerClass: [{
|
|
4657
|
+
type: Input
|
|
4649
4658
|
}], navigationSections: [{
|
|
4650
4659
|
type: Input,
|
|
4651
4660
|
args: [{ required: true }]
|