@rededor/site-front-end-lib 1.3.61 → 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.
@@ -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('.page-header')?.getBoundingClientRect().top || 0;
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==
@@ -4561,6 +4561,8 @@ class SectionNavigationComponent {
4561
4561
  this.isMobile = window.innerWidth < 768;
4562
4562
  this.scrollToMenuAnchorSubscription = null;
4563
4563
  this.scrollToMenuAnchorSubject = new BehaviorSubject('');
4564
+ this.padding = 0;
4565
+ this.headerClass = '.page-header';
4564
4566
  this.ariaLabel = 'Navegação da página';
4565
4567
  this.anchorAdjustment = 0;
4566
4568
  this.sectionChange = new EventEmitter();
@@ -4595,12 +4597,12 @@ class SectionNavigationComponent {
4595
4597
  }
4596
4598
  windowScroll() {
4597
4599
  const navHeight = document.querySelector('.rdsite-section-navigation')?.getBoundingClientRect().top || 0;
4598
- const pageHeaderHeight = document.querySelector('.page-header')?.getBoundingClientRect().top || 0;
4600
+ const pageHeaderHeight = document.querySelector(this.headerClass)?.getBoundingClientRect().top || 0;
4599
4601
  let selectedIndex = -1;
4600
4602
  this.sections()?.forEach((section, index) => {
4601
4603
  const menuTop = document.querySelector(`#${section.id}`)?.getBoundingClientRect().top || 0;
4602
4604
  if (menuTop) {
4603
- const calc = window.scrollY - menuTop + navHeight + pageHeaderHeight;
4605
+ const calc = window.scrollY - menuTop + navHeight + pageHeaderHeight + this.padding;
4604
4606
  if (calc >= 0) {
4605
4607
  selectedIndex = index;
4606
4608
  if (this.sections()?.[selectedIndex]) {
@@ -4632,7 +4634,7 @@ class SectionNavigationComponent {
4632
4634
  this.scrollToMenuAnchorSubscription?.unsubscribe();
4633
4635
  }
4634
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 }); }
4635
- 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"] }] }); }
4636
4638
  }
4637
4639
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SectionNavigationComponent, decorators: [{
4638
4640
  type: Component,
@@ -4649,6 +4651,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
4649
4651
  }], onWindowScroll: [{
4650
4652
  type: HostListener,
4651
4653
  args: ['window:scroll']
4654
+ }], padding: [{
4655
+ type: Input
4656
+ }], headerClass: [{
4657
+ type: Input
4652
4658
  }], navigationSections: [{
4653
4659
  type: Input,
4654
4660
  args: [{ required: true }]