@fundamental-ngx/core 0.46.2-rc.13 → 0.46.2-rc.15

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.
Files changed (45) hide show
  1. package/esm2022/action-sheet/action-sheet.component.mjs +3 -3
  2. package/esm2022/breadcrumb/breadcrumb.component.mjs +2 -2
  3. package/esm2022/dialog/dialog-body/dialog-body.component.mjs +1 -2
  4. package/esm2022/dialog/dialog.component.mjs +2 -2
  5. package/esm2022/dynamic-page/dynamic-page.component.mjs +1 -1
  6. package/esm2022/menu/menu.component.mjs +2 -6
  7. package/esm2022/message-strip/alert/message-strip-alert-container/message-strip-alert-container.component.mjs +2 -2
  8. package/esm2022/popover/base/base-popover.class.mjs +2 -6
  9. package/esm2022/popover/popover-body/popover-body.component.mjs +3 -5
  10. package/esm2022/popover/popover-service/popover.service.mjs +1 -2
  11. package/esm2022/scrollbar/scrollbar.directive.mjs +2 -13
  12. package/esm2022/shellbar/product-menu/product-menu.component.mjs +2 -2
  13. package/esm2022/shellbar/user-menu/shellbar-user-menu.component.mjs +2 -2
  14. package/esm2022/tabs/tab-list.component.mjs +3 -3
  15. package/esm2022/wizard/wizard.component.mjs +2 -2
  16. package/fesm2022/fundamental-ngx-core-action-sheet.mjs +2 -2
  17. package/fesm2022/fundamental-ngx-core-action-sheet.mjs.map +1 -1
  18. package/fesm2022/fundamental-ngx-core-breadcrumb.mjs +1 -1
  19. package/fesm2022/fundamental-ngx-core-breadcrumb.mjs.map +1 -1
  20. package/fesm2022/fundamental-ngx-core-dialog.mjs +1 -2
  21. package/fesm2022/fundamental-ngx-core-dialog.mjs.map +1 -1
  22. package/fesm2022/fundamental-ngx-core-dynamic-page.mjs +1 -1
  23. package/fesm2022/fundamental-ngx-core-dynamic-page.mjs.map +1 -1
  24. package/fesm2022/fundamental-ngx-core-menu.mjs +1 -5
  25. package/fesm2022/fundamental-ngx-core-menu.mjs.map +1 -1
  26. package/fesm2022/fundamental-ngx-core-message-strip.mjs +1 -1
  27. package/fesm2022/fundamental-ngx-core-message-strip.mjs.map +1 -1
  28. package/fesm2022/fundamental-ngx-core-popover.mjs +3 -10
  29. package/fesm2022/fundamental-ngx-core-popover.mjs.map +1 -1
  30. package/fesm2022/fundamental-ngx-core-scrollbar.mjs +1 -12
  31. package/fesm2022/fundamental-ngx-core-scrollbar.mjs.map +1 -1
  32. package/fesm2022/fundamental-ngx-core-shellbar.mjs +2 -2
  33. package/fesm2022/fundamental-ngx-core-shellbar.mjs.map +1 -1
  34. package/fesm2022/fundamental-ngx-core-tabs.mjs +2 -2
  35. package/fesm2022/fundamental-ngx-core-tabs.mjs.map +1 -1
  36. package/fesm2022/fundamental-ngx-core-wizard.mjs +1 -1
  37. package/fesm2022/fundamental-ngx-core-wizard.mjs.map +1 -1
  38. package/fundamental-ngx-core-v0.46.2-rc.15.tgz +0 -0
  39. package/menu/menu.component.d.ts +1 -3
  40. package/package.json +3 -3
  41. package/popover/base/base-popover.class.d.ts +1 -3
  42. package/popover/popover-body/popover-body.component.d.ts +0 -2
  43. package/schematics/add-dependencies/index.js +4 -4
  44. package/scrollbar/scrollbar.directive.d.ts +1 -5
  45. package/fundamental-ngx-core-v0.46.2-rc.13.tgz +0 -0
@@ -865,7 +865,7 @@ class DynamicPageComponent {
865
865
  });
866
866
  }
867
867
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: DynamicPageComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: DynamicPageService }, { token: FD_FLEXIBLE_COLUMN_LAYOUT_COMPONENT, optional: true }, { token: DynamicPageWrapperDirective, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
868
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: DynamicPageComponent, isStandalone: true, selector: "fd-dynamic-page", inputs: { disableSnapOnScroll: "disableSnapOnScroll", role: "role", ariaLabel: "ariaLabel", background: "background", autoResponsive: "autoResponsive", size: "size", offset: "offset", expandContent: "expandContent" }, host: { properties: { "attr.role": "this.role" } }, providers: [DynamicPageService], queries: [{ propertyName: "_pageSubheaderComponent", first: true, predicate: DynamicPageSubheaderComponent, descendants: true }, { propertyName: "_headerComponent", first: true, predicate: DynamicPageHeaderComponent, descendants: true }, { propertyName: "_footerComponent", first: true, predicate: DynamicPageFooterComponent, descendants: true }, { propertyName: "_tabComponent", first: true, predicate: TabListComponent, descendants: true }, { propertyName: "_contentComponent", predicate: DynamicPageContentComponent, descendants: true }], viewQueries: [{ propertyName: "_dynamicPageElement", first: true, predicate: ["dynamicPageElement"], descendants: true }, { propertyName: "_scrollbar", first: true, predicate: ScrollbarDirective, descendants: true }], ngImport: i0, template: "<section\n #dynamicPageElement\n class=\"fd-dynamic-page\"\n [class.fd-dynamic-page--sm]=\"size === 'small'\"\n [class.fd-dynamic-page--md]=\"size === 'medium'\"\n [class.fd-dynamic-page--lg]=\"size === 'large'\"\n [class.fd-dynamic-page--xl]=\"size === 'extra-large'\"\n [class.fd-dynamic-page--transparent-bg]=\"background === 'transparent'\"\n [class.fd-dynamic-page--list-bg]=\"background === 'list'\"\n [attr.aria-label]=\"ariaLabel\"\n>\n <header class=\"fd-dynamic-page__header\" [class.fd-dynamic-page__header--not-collapsible]=\"!_headerCollapsible\">\n <div>\n <div (click)=\"toggleCollapse()\" (keydown.enter)=\"toggleCollapse()\">\n <ng-content select=\"fd-dynamic-page-header\"></ng-content>\n </div>\n <ng-content select=\"fd-dynamic-page-subheader\"></ng-content>\n </div>\n </header>\n\n <ng-content select=\"fd-tab-list\"></ng-content>\n\n <div fd-scrollbar *ngIf=\"!_tabComponent\">\n <ng-content select=\"fd-dynamic-page-content\"></ng-content>\n </div>\n\n <div *ngIf=\"_tabComponent\">\n <ng-content select=\"fd-dynamic-page-content\"></ng-content>\n </div>\n\n <footer>\n <ng-content select=\"fd-dynamic-page-footer\"></ng-content>\n </footer>\n</section>\n", styles: ["/*!\n * Fundamental Library Styles v0.31.0\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-dynamic-page{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-dynamic-page:after,.fd-dynamic-page:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__header-fixed{left:0;position:fixed;right:0;top:0;z-index:3}.fd-dynamic-page__header{-webkit-box-sizing:border-box;-webkit-box-pack:justify;-ms-flex-pack:justify;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;justify-content:space-between;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-dynamic-page__header:after,.fd-dynamic-page__header:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__title-area{-webkit-box-sizing:border-box;-webkit-box-pack:justify;-ms-flex-pack:justify;word-wrap:break-word;background-color:var(--sapObjectHeader_Background);border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;justify-content:space-between;line-height:var(--sapContent_LineHeight);margin:0;min-height:3rem;padding:0;z-index:1}.fd-dynamic-page__title-area:after,.fd-dynamic-page__title-area:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__title-area.is-focus,.fd-dynamic-page__title-area:focus{outline-color:var(--sapContent_FocusColor);outline-offset:-.25rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth);z-index:1}.fd-dynamic-page__title-area.is-hover,.fd-dynamic-page__title-area:hover{background:var(--sapObjectHeader_Hover_Background);border-bottom:var(--fdDynamicPage_Hover_Border_Bottom);cursor:pointer}.fd-dynamic-page__title-area--collapsed{padding-bottom:1rem}.fd-dynamic-page__title-area--collapsed .fd-dynamic-page__title{font-size:var(--fdDynamicPage_Title_Collapsed_Font_Size)}.fd-dynamic-page__title-area[aria-hidden=true]{display:none}.fd-dynamic-page__main-container{-webkit-box-sizing:border-box;-webkit-box-pack:justify;-ms-flex-pack:justify;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;justify-content:space-between;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-dynamic-page__main-container:after,.fd-dynamic-page__main-container:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__title-container{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-dynamic-page__title-container:after,.fd-dynamic-page__title-container:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__breadcrumb{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:.5rem 0 .25rem}.fd-dynamic-page__breadcrumb:after,.fd-dynamic-page__breadcrumb:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__breadcrumb-title-container{-webkit-box-sizing:border-box;-webkit-box-flex:1;-ms-flex:1;border:0;box-sizing:border-box;color:var(--sapTextColor);flex:1;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;min-width:0;padding:0}.fd-dynamic-page__breadcrumb-title-container:after,.fd-dynamic-page__breadcrumb-title-container:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__breadcrumb-container{-webkit-box-sizing:border-box;-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:justify;-ms-flex-pack:justify;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;justify-content:space-between;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-dynamic-page__breadcrumb-container:after,.fd-dynamic-page__breadcrumb-container:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--fdDynamicPage_Title_Color);font-family:var(--sapFontFamily);font-family:var(--fdDynamicPage_Title_Font_Family);font-size:var(--sapFontSize);font-size:var(--fdDynamicPage_Title_Font_Size);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-dynamic-page__title:after,.fd-dynamic-page__title:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__title .fd-link{color:var(--sapGroup_TitleTextColor);font-size:var(--sapFontHeader3Size);max-width:100%;overflow:hidden;padding:0;text-overflow:ellipsis;vertical-align:bottom;white-space:nowrap}.fd-dynamic-page__title--wrap{white-space:normal}.fd-dynamic-page__subtitle{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--fdDynamicPage_Subtitle_Color);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:.25rem 0 0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-dynamic-page__subtitle:after,.fd-dynamic-page__subtitle:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__subtitle--wrap{white-space:normal}.fd-dynamic-page__title-content{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0 0 0 1rem;text-overflow:ellipsis;vertical-align:baseline;white-space:nowrap}.fd-dynamic-page__title-content:after,.fd-dynamic-page__title-content:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__title-content[dir=rtl],[dir=rtl] .fd-dynamic-page__title-content{padding:0 1rem 0 0}.fd-dynamic-page__title-subtitle-container{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-dynamic-page__title-subtitle-container:after,.fd-dynamic-page__title-subtitle-container:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__toolbar-container{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0 0 0 auto;padding:0}.fd-dynamic-page__toolbar-container:after,.fd-dynamic-page__toolbar-container:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__toolbar-container[dir=rtl],[dir=rtl] .fd-dynamic-page__toolbar-container{margin-left:0;margin-right:auto}.fd-dynamic-page .fd-dynamic-page__toolbar{background:transparent;margin:0;padding:0 0 0 1rem}.fd-dynamic-page .fd-dynamic-page__toolbar[dir=rtl],[dir=rtl] .fd-dynamic-page .fd-dynamic-page__toolbar{padding-left:0;padding-right:1rem}.fd-dynamic-page .fd-dynamic-page__toolbar--actions,.fd-dynamic-page .fd-dynamic-page__toolbar--actions[dir=rtl],.fd-dynamic-page .fd-dynamic-page__toolbar--content,.fd-dynamic-page .fd-dynamic-page__toolbar--content[dir=rtl],[dir=rtl] .fd-dynamic-page .fd-dynamic-page__toolbar--actions,[dir=rtl] .fd-dynamic-page .fd-dynamic-page__toolbar--content{padding:0}.fd-dynamic-page__summarized-title-area{-webkit-box-sizing:border-box;-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:justify;-ms-flex-pack:justify;word-wrap:break-word;-webkit-box-shadow:var(--sapContent_HeaderShadow);align-items:center;background:var(--sapObjectHeader_Background);border:0;box-shadow:var(--sapContent_HeaderShadow);box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:2rem;justify-content:space-between;line-height:var(--sapContent_LineHeight);margin:0;padding:0;z-index:1}.fd-dynamic-page__summarized-title-area:after,.fd-dynamic-page__summarized-title-area:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__summarized-title-area.is-focus,.fd-dynamic-page__summarized-title-area:focus{outline-color:var(--sapContent_FocusColor);outline-offset:-.25rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-dynamic-page__summarized-title-area--no-shadow{box-shadow:none}.fd-dynamic-page__summarized-title-area[aria-hidden=true]{display:none}.fd-dynamic-page__summarized-title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapGroup_TitleTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontHeader5Size);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:2rem;margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-dynamic-page__summarized-title:after,.fd-dynamic-page__summarized-title:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__collapsible-header-container{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-dynamic-page__collapsible-header-container:after,.fd-dynamic-page__collapsible-header-container:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__collapsible-header{-webkit-box-sizing:border-box;background-color:var(--sapObjectHeader_Background);border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:1rem 0}.fd-dynamic-page__collapsible-header:after,.fd-dynamic-page__collapsible-header:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__collapsible-header[aria-hidden=true]{display:none}.fd-dynamic-page .fd-dynamic-page__tabs{margin:0;padding:0}.fd-dynamic-page .fd-dynamic-page__tabs--overflow{overflow:hidden}.fd-dynamic-page .fd-dynamic-page__tabs--add-shadow,.fd-dynamic-page__collapsible-header-visibility-container{box-shadow:var(--sapContent_HeaderShadow)}.fd-dynamic-page__collapsible-header-visibility-container{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background-color:var(--sapObjectHeader_Background);border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;min-height:.0625rem;padding:0;z-index:2}.fd-dynamic-page__collapsible-header-visibility-container:after,.fd-dynamic-page__collapsible-header-visibility-container:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__collapsible-header-visibility-container--left-gradient{background-image:var(--fdDynamicPage_Button_Left_Gradient);height:.0625rem;width:4rem}.fd-dynamic-page__collapsible-header-visibility-container--left-gradient[dir=rtl],[dir=rtl] .fd-dynamic-page__collapsible-header-visibility-container--left-gradient{background-image:var(--fdDynamicPage_Button_Right_Gradient)}.fd-dynamic-page__collapsible-header-visibility-container--right-gradient{background-image:var(--fdDynamicPage_Button_Right_Gradient);height:.0625rem;width:4rem}.fd-dynamic-page__collapsible-header-visibility-container--right-gradient[dir=rtl],[dir=rtl] .fd-dynamic-page__collapsible-header-visibility-container--right-gradient{background-image:var(--fdDynamicPage_Button_Left_Gradient)}.fd-dynamic-page__collapsible-header-visibility-container--button-group{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background:var(--fdDynamicPage_Button_Group_Background);border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:.0625rem;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:4.25rem;z-index:1}.fd-dynamic-page__collapsible-header-visibility-container--button-group:after,.fd-dynamic-page__collapsible-header-visibility-container--button-group:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__collapsible-header-visibility-container[aria-hidden=true]{display:none}.fd-dynamic-page__collapsible-header-visibility-container--no-shadow{box-shadow:none}.fd-dynamic-page__collapse-button,.fd-dynamic-page__expand-button,.fd-dynamic-page__pin-button{--fdButtonBackgroundColor:var(--fdDynamicPage_Button_Pin_Background);height:1.5rem;margin:0 .25rem;min-width:1.5rem;padding:0;width:1.5rem}.fd-dynamic-page__collapse-button:before,.fd-dynamic-page__expand-button:before,.fd-dynamic-page__pin-button:before{bottom:-.25rem;height:2rem;top:-.25rem;width:100%}.fd-dynamic-page__collapse-button[aria-hidden=true],.fd-dynamic-page__expand-button[aria-hidden=true],.fd-dynamic-page__pin-button[aria-hidden=true]{display:none}.fd-dynamic-page__content{-webkit-box-sizing:border-box;background-color:var(--sapBackgroundColor);border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;overflow-y:auto;padding:0}.fd-dynamic-page__content:after,.fd-dynamic-page__content:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__footer{bottom:0;left:0;margin:0 .5rem .5rem;position:fixed;right:0}.fd-dynamic-page--sm .fd-dynamic-page__title-area{padding:.5rem 1rem}.fd-dynamic-page--sm .fd-dynamic-page__title-area--collapsed{padding-bottom:1rem}.fd-dynamic-page--sm .fd-dynamic-page__collapsible-header,.fd-dynamic-page--sm .fd-dynamic-page__content{padding:1rem}.fd-dynamic-page--sm .fd-dynamic-page__tabs{padding:0 1rem}.fd-dynamic-page--sm .fd-dynamic-page__summarized-title-area{padding:1rem}.fd-dynamic-page--sm .fd-dynamic-page__breadcrumb{padding:0}.fd-dynamic-page--sm .fd-dynamic-page__toolbar{margin-left:auto;padding-left:1rem}.fd-dynamic-page--sm .fd-dynamic-page__toolbar[dir=rtl],[dir=rtl] .fd-dynamic-page--sm .fd-dynamic-page__toolbar{margin-left:0;margin-right:auto;padding-left:0;padding-right:1rem}.fd-dynamic-page--sm .fd-dynamic-page__toolbar--content{margin-left:0}.fd-dynamic-page--sm .fd-dynamic-page__toolbar--content[dir=rtl],[dir=rtl] .fd-dynamic-page--sm .fd-dynamic-page__toolbar--content{margin-right:0}.fd-dynamic-page--lg .fd-dynamic-page__title-area,.fd-dynamic-page--md .fd-dynamic-page__title-area{padding:.5rem 2rem}.fd-dynamic-page--lg .fd-dynamic-page__title-area--collapsed,.fd-dynamic-page--md .fd-dynamic-page__title-area--collapsed{padding-bottom:1rem}.fd-dynamic-page--lg .fd-dynamic-page__collapsible-header,.fd-dynamic-page--lg .fd-dynamic-page__content,.fd-dynamic-page--md .fd-dynamic-page__collapsible-header,.fd-dynamic-page--md .fd-dynamic-page__content{padding:1rem 2rem}.fd-dynamic-page--lg .fd-dynamic-page__tabs,.fd-dynamic-page--md .fd-dynamic-page__tabs{padding:0 2rem}.fd-dynamic-page--lg .fd-dynamic-page__summarized-title-area,.fd-dynamic-page--md .fd-dynamic-page__summarized-title-area{padding:1rem}.fd-dynamic-page--xl .fd-dynamic-page__title-area{padding:.5rem 3rem}.fd-dynamic-page--xl .fd-dynamic-page__title-area--collapsed{padding-bottom:1rem}.fd-dynamic-page--xl .fd-dynamic-page__collapsible-header,.fd-dynamic-page--xl .fd-dynamic-page__content{padding:1rem 3rem}.fd-dynamic-page--xl .fd-dynamic-page__tabs{padding:0 3rem}.fd-dynamic-page--xl .fd-dynamic-page__summarized-title-area{padding:1rem}.fd-dynamic-page--md .fd-dynamic-page__toolbar{padding:0}.fd-dynamic-page--list-bg .fd-dynamic-page__content{background-color:var(--fdDynamicPage_Content_List_Background)}.fd-dynamic-page--transparent-bg .fd-dynamic-page__content{background-color:var(--fdDynamicPage_Content_Transparent_Background)}.fd-dynamic-page--transparent-bg .fd-dynamic-page__title-area{background:var(--fdDynamicPage_Title_Header_Transparent_Background)}.fd-dynamic-page--transparent-bg .fd-dynamic-page__collapsible-header{background-color:var(--fdDynamicPage_Title_Header_Transparent_Background)}.footer-spacer{height:3rem}.content-sticker{position:static}.fd-dynamic-page__header--not-collapsible .fd-dynamic-page__title-area.is-hover,.fd-dynamic-page__header--not-collapsible .fd-dynamic-page__title-area:hover{background-color:var(--sapObjectHeader_Background, #fff);cursor:default}.fd-dynamic-page__collapsible-header-visibility-container--button-group{z-index:6}.fd-tabs .fd-dynamic-page__content{display:block;height:auto!important}.fd-dynamic-page{height:100%}.fd-dynamic-page .fd-bar--floating-footer{z-index:6}.fd-dynamic-page .fd-tabs-custom{overflow:auto;background-color:#f7f7f7;background-color:var(--sapBackgroundColor, #f7f7f7);flex:1}.fd-dynamic-page .fd-dynamic-page__content,.fd-dynamic-page .fd-dynamic-page__title-subtitle-container{flex:1}.fd-dynamic-page--transparent-bg .fd-tabs-custom{background-color:transparent;background-color:var(--fdDynamicPage_Content_Transparent_Background, transparent)}.fd-dynamic-page--list-bg .fd-tabs-custom{background-color:#fff;background-color:var(--fdDynamicPage_Content_List_Background, var(--sapGroup_ContentBackground, #fff))}.fd-dynamic-page--xl .fd-bar--floating-footer{margin:1rem 3rem}.fd-dynamic-page--lg .fd-bar--floating-footer,.fd-dynamic-page--md .fd-bar--floating-footer{margin:1rem 2rem}.fd-dynamic-page--sm .fd-bar--floating-footer{margin:1rem .5rem}.fd-dynamic-page--sm .fd-dynamic-page__title-container{align-items:center}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: ScrollbarDirective, selector: "[fdScrollbar], [fd-scrollbar]", inputs: ["noHorizontalScroll", "noVerticalScroll", "alwaysVisible", "overrideTabindex"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
868
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: DynamicPageComponent, isStandalone: true, selector: "fd-dynamic-page", inputs: { disableSnapOnScroll: "disableSnapOnScroll", role: "role", ariaLabel: "ariaLabel", background: "background", autoResponsive: "autoResponsive", size: "size", offset: "offset", expandContent: "expandContent" }, host: { properties: { "attr.role": "this.role" } }, providers: [DynamicPageService], queries: [{ propertyName: "_pageSubheaderComponent", first: true, predicate: DynamicPageSubheaderComponent, descendants: true }, { propertyName: "_headerComponent", first: true, predicate: DynamicPageHeaderComponent, descendants: true }, { propertyName: "_footerComponent", first: true, predicate: DynamicPageFooterComponent, descendants: true }, { propertyName: "_tabComponent", first: true, predicate: TabListComponent, descendants: true }, { propertyName: "_contentComponent", predicate: DynamicPageContentComponent, descendants: true }], viewQueries: [{ propertyName: "_dynamicPageElement", first: true, predicate: ["dynamicPageElement"], descendants: true }, { propertyName: "_scrollbar", first: true, predicate: ScrollbarDirective, descendants: true }], ngImport: i0, template: "<section\n #dynamicPageElement\n class=\"fd-dynamic-page\"\n [class.fd-dynamic-page--sm]=\"size === 'small'\"\n [class.fd-dynamic-page--md]=\"size === 'medium'\"\n [class.fd-dynamic-page--lg]=\"size === 'large'\"\n [class.fd-dynamic-page--xl]=\"size === 'extra-large'\"\n [class.fd-dynamic-page--transparent-bg]=\"background === 'transparent'\"\n [class.fd-dynamic-page--list-bg]=\"background === 'list'\"\n [attr.aria-label]=\"ariaLabel\"\n>\n <header class=\"fd-dynamic-page__header\" [class.fd-dynamic-page__header--not-collapsible]=\"!_headerCollapsible\">\n <div>\n <div (click)=\"toggleCollapse()\" (keydown.enter)=\"toggleCollapse()\">\n <ng-content select=\"fd-dynamic-page-header\"></ng-content>\n </div>\n <ng-content select=\"fd-dynamic-page-subheader\"></ng-content>\n </div>\n </header>\n\n <ng-content select=\"fd-tab-list\"></ng-content>\n\n <div fd-scrollbar *ngIf=\"!_tabComponent\">\n <ng-content select=\"fd-dynamic-page-content\"></ng-content>\n </div>\n\n <div *ngIf=\"_tabComponent\">\n <ng-content select=\"fd-dynamic-page-content\"></ng-content>\n </div>\n\n <footer>\n <ng-content select=\"fd-dynamic-page-footer\"></ng-content>\n </footer>\n</section>\n", styles: ["/*!\n * Fundamental Library Styles v0.31.0\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-dynamic-page{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-dynamic-page:after,.fd-dynamic-page:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__header-fixed{left:0;position:fixed;right:0;top:0;z-index:3}.fd-dynamic-page__header{-webkit-box-sizing:border-box;-webkit-box-pack:justify;-ms-flex-pack:justify;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;justify-content:space-between;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-dynamic-page__header:after,.fd-dynamic-page__header:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__title-area{-webkit-box-sizing:border-box;-webkit-box-pack:justify;-ms-flex-pack:justify;word-wrap:break-word;background-color:var(--sapObjectHeader_Background);border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;justify-content:space-between;line-height:var(--sapContent_LineHeight);margin:0;min-height:3rem;padding:0;z-index:1}.fd-dynamic-page__title-area:after,.fd-dynamic-page__title-area:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__title-area.is-focus,.fd-dynamic-page__title-area:focus{outline-color:var(--sapContent_FocusColor);outline-offset:-.25rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth);z-index:1}.fd-dynamic-page__title-area.is-hover,.fd-dynamic-page__title-area:hover{background:var(--sapObjectHeader_Hover_Background);border-bottom:var(--fdDynamicPage_Hover_Border_Bottom);cursor:pointer}.fd-dynamic-page__title-area--collapsed{padding-bottom:1rem}.fd-dynamic-page__title-area--collapsed .fd-dynamic-page__title{font-size:var(--fdDynamicPage_Title_Collapsed_Font_Size)}.fd-dynamic-page__title-area[aria-hidden=true]{display:none}.fd-dynamic-page__main-container{-webkit-box-sizing:border-box;-webkit-box-pack:justify;-ms-flex-pack:justify;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;justify-content:space-between;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-dynamic-page__main-container:after,.fd-dynamic-page__main-container:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__title-container{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-dynamic-page__title-container:after,.fd-dynamic-page__title-container:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__breadcrumb{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:.5rem 0 .25rem}.fd-dynamic-page__breadcrumb:after,.fd-dynamic-page__breadcrumb:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__breadcrumb-title-container{-webkit-box-sizing:border-box;-webkit-box-flex:1;-ms-flex:1;border:0;box-sizing:border-box;color:var(--sapTextColor);flex:1;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;min-width:0;padding:0}.fd-dynamic-page__breadcrumb-title-container:after,.fd-dynamic-page__breadcrumb-title-container:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__breadcrumb-container{-webkit-box-sizing:border-box;-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:justify;-ms-flex-pack:justify;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;justify-content:space-between;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-dynamic-page__breadcrumb-container:after,.fd-dynamic-page__breadcrumb-container:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--fdDynamicPage_Title_Color);font-family:var(--sapFontFamily);font-family:var(--fdDynamicPage_Title_Font_Family);font-size:var(--sapFontSize);font-size:var(--fdDynamicPage_Title_Font_Size);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-dynamic-page__title:after,.fd-dynamic-page__title:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__title .fd-link{color:var(--sapGroup_TitleTextColor);font-size:var(--sapFontHeader3Size);max-width:100%;overflow:hidden;padding:0;text-overflow:ellipsis;vertical-align:bottom;white-space:nowrap}.fd-dynamic-page__title--wrap{white-space:normal}.fd-dynamic-page__subtitle{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--fdDynamicPage_Subtitle_Color);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:.25rem 0 0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-dynamic-page__subtitle:after,.fd-dynamic-page__subtitle:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__subtitle--wrap{white-space:normal}.fd-dynamic-page__title-content{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0 0 0 1rem;text-overflow:ellipsis;vertical-align:baseline;white-space:nowrap}.fd-dynamic-page__title-content:after,.fd-dynamic-page__title-content:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__title-content[dir=rtl],[dir=rtl] .fd-dynamic-page__title-content{padding:0 1rem 0 0}.fd-dynamic-page__title-subtitle-container{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-dynamic-page__title-subtitle-container:after,.fd-dynamic-page__title-subtitle-container:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__toolbar-container{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0 0 0 auto;padding:0}.fd-dynamic-page__toolbar-container:after,.fd-dynamic-page__toolbar-container:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__toolbar-container[dir=rtl],[dir=rtl] .fd-dynamic-page__toolbar-container{margin-left:0;margin-right:auto}.fd-dynamic-page .fd-dynamic-page__toolbar{background:transparent;margin:0;padding:0 0 0 1rem}.fd-dynamic-page .fd-dynamic-page__toolbar[dir=rtl],[dir=rtl] .fd-dynamic-page .fd-dynamic-page__toolbar{padding-left:0;padding-right:1rem}.fd-dynamic-page .fd-dynamic-page__toolbar--actions,.fd-dynamic-page .fd-dynamic-page__toolbar--actions[dir=rtl],.fd-dynamic-page .fd-dynamic-page__toolbar--content,.fd-dynamic-page .fd-dynamic-page__toolbar--content[dir=rtl],[dir=rtl] .fd-dynamic-page .fd-dynamic-page__toolbar--actions,[dir=rtl] .fd-dynamic-page .fd-dynamic-page__toolbar--content{padding:0}.fd-dynamic-page__summarized-title-area{-webkit-box-sizing:border-box;-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:justify;-ms-flex-pack:justify;word-wrap:break-word;-webkit-box-shadow:var(--sapContent_HeaderShadow);align-items:center;background:var(--sapObjectHeader_Background);border:0;box-shadow:var(--sapContent_HeaderShadow);box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:2rem;justify-content:space-between;line-height:var(--sapContent_LineHeight);margin:0;padding:0;z-index:1}.fd-dynamic-page__summarized-title-area:after,.fd-dynamic-page__summarized-title-area:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__summarized-title-area.is-focus,.fd-dynamic-page__summarized-title-area:focus{outline-color:var(--sapContent_FocusColor);outline-offset:-.25rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-dynamic-page__summarized-title-area--no-shadow{box-shadow:none}.fd-dynamic-page__summarized-title-area[aria-hidden=true]{display:none}.fd-dynamic-page__summarized-title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapGroup_TitleTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontHeader5Size);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:2rem;margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-dynamic-page__summarized-title:after,.fd-dynamic-page__summarized-title:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__collapsible-header-container{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-dynamic-page__collapsible-header-container:after,.fd-dynamic-page__collapsible-header-container:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__collapsible-header{-webkit-box-sizing:border-box;background-color:var(--sapObjectHeader_Background);border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:1rem 0}.fd-dynamic-page__collapsible-header:after,.fd-dynamic-page__collapsible-header:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__collapsible-header[aria-hidden=true]{display:none}.fd-dynamic-page .fd-dynamic-page__tabs{margin:0;padding:0}.fd-dynamic-page .fd-dynamic-page__tabs--overflow{overflow:hidden}.fd-dynamic-page .fd-dynamic-page__tabs--add-shadow,.fd-dynamic-page__collapsible-header-visibility-container{box-shadow:var(--sapContent_HeaderShadow)}.fd-dynamic-page__collapsible-header-visibility-container{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background-color:var(--sapObjectHeader_Background);border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;min-height:.0625rem;padding:0;z-index:2}.fd-dynamic-page__collapsible-header-visibility-container:after,.fd-dynamic-page__collapsible-header-visibility-container:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__collapsible-header-visibility-container--left-gradient{background-image:var(--fdDynamicPage_Button_Left_Gradient);height:.0625rem;width:4rem}.fd-dynamic-page__collapsible-header-visibility-container--left-gradient[dir=rtl],[dir=rtl] .fd-dynamic-page__collapsible-header-visibility-container--left-gradient{background-image:var(--fdDynamicPage_Button_Right_Gradient)}.fd-dynamic-page__collapsible-header-visibility-container--right-gradient{background-image:var(--fdDynamicPage_Button_Right_Gradient);height:.0625rem;width:4rem}.fd-dynamic-page__collapsible-header-visibility-container--right-gradient[dir=rtl],[dir=rtl] .fd-dynamic-page__collapsible-header-visibility-container--right-gradient{background-image:var(--fdDynamicPage_Button_Left_Gradient)}.fd-dynamic-page__collapsible-header-visibility-container--button-group{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background:var(--fdDynamicPage_Button_Group_Background);border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:.0625rem;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:4.25rem;z-index:1}.fd-dynamic-page__collapsible-header-visibility-container--button-group:after,.fd-dynamic-page__collapsible-header-visibility-container--button-group:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__collapsible-header-visibility-container[aria-hidden=true]{display:none}.fd-dynamic-page__collapsible-header-visibility-container--no-shadow{box-shadow:none}.fd-dynamic-page__collapse-button,.fd-dynamic-page__expand-button,.fd-dynamic-page__pin-button{--fdButtonBackgroundColor:var(--fdDynamicPage_Button_Pin_Background);height:1.5rem;margin:0 .25rem;min-width:1.5rem;padding:0;width:1.5rem}.fd-dynamic-page__collapse-button:before,.fd-dynamic-page__expand-button:before,.fd-dynamic-page__pin-button:before{bottom:-.25rem;height:2rem;top:-.25rem;width:100%}.fd-dynamic-page__collapse-button[aria-hidden=true],.fd-dynamic-page__expand-button[aria-hidden=true],.fd-dynamic-page__pin-button[aria-hidden=true]{display:none}.fd-dynamic-page__content{-webkit-box-sizing:border-box;background-color:var(--sapBackgroundColor);border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;overflow-y:auto;padding:0}.fd-dynamic-page__content:after,.fd-dynamic-page__content:before{box-sizing:inherit;font-size:inherit}.fd-dynamic-page__footer{bottom:0;left:0;margin:0 .5rem .5rem;position:fixed;right:0}.fd-dynamic-page--sm .fd-dynamic-page__title-area{padding:.5rem 1rem}.fd-dynamic-page--sm .fd-dynamic-page__title-area--collapsed{padding-bottom:1rem}.fd-dynamic-page--sm .fd-dynamic-page__collapsible-header,.fd-dynamic-page--sm .fd-dynamic-page__content{padding:1rem}.fd-dynamic-page--sm .fd-dynamic-page__tabs{padding:0 1rem}.fd-dynamic-page--sm .fd-dynamic-page__summarized-title-area{padding:1rem}.fd-dynamic-page--sm .fd-dynamic-page__breadcrumb{padding:0}.fd-dynamic-page--sm .fd-dynamic-page__toolbar{margin-left:auto;padding-left:1rem}.fd-dynamic-page--sm .fd-dynamic-page__toolbar[dir=rtl],[dir=rtl] .fd-dynamic-page--sm .fd-dynamic-page__toolbar{margin-left:0;margin-right:auto;padding-left:0;padding-right:1rem}.fd-dynamic-page--sm .fd-dynamic-page__toolbar--content{margin-left:0}.fd-dynamic-page--sm .fd-dynamic-page__toolbar--content[dir=rtl],[dir=rtl] .fd-dynamic-page--sm .fd-dynamic-page__toolbar--content{margin-right:0}.fd-dynamic-page--lg .fd-dynamic-page__title-area,.fd-dynamic-page--md .fd-dynamic-page__title-area{padding:.5rem 2rem}.fd-dynamic-page--lg .fd-dynamic-page__title-area--collapsed,.fd-dynamic-page--md .fd-dynamic-page__title-area--collapsed{padding-bottom:1rem}.fd-dynamic-page--lg .fd-dynamic-page__collapsible-header,.fd-dynamic-page--lg .fd-dynamic-page__content,.fd-dynamic-page--md .fd-dynamic-page__collapsible-header,.fd-dynamic-page--md .fd-dynamic-page__content{padding:1rem 2rem}.fd-dynamic-page--lg .fd-dynamic-page__tabs,.fd-dynamic-page--md .fd-dynamic-page__tabs{padding:0 2rem}.fd-dynamic-page--lg .fd-dynamic-page__summarized-title-area,.fd-dynamic-page--md .fd-dynamic-page__summarized-title-area{padding:1rem}.fd-dynamic-page--xl .fd-dynamic-page__title-area{padding:.5rem 3rem}.fd-dynamic-page--xl .fd-dynamic-page__title-area--collapsed{padding-bottom:1rem}.fd-dynamic-page--xl .fd-dynamic-page__collapsible-header,.fd-dynamic-page--xl .fd-dynamic-page__content{padding:1rem 3rem}.fd-dynamic-page--xl .fd-dynamic-page__tabs{padding:0 3rem}.fd-dynamic-page--xl .fd-dynamic-page__summarized-title-area{padding:1rem}.fd-dynamic-page--md .fd-dynamic-page__toolbar{padding:0}.fd-dynamic-page--list-bg .fd-dynamic-page__content{background-color:var(--fdDynamicPage_Content_List_Background)}.fd-dynamic-page--transparent-bg .fd-dynamic-page__content{background-color:var(--fdDynamicPage_Content_Transparent_Background)}.fd-dynamic-page--transparent-bg .fd-dynamic-page__title-area{background:var(--fdDynamicPage_Title_Header_Transparent_Background)}.fd-dynamic-page--transparent-bg .fd-dynamic-page__collapsible-header{background-color:var(--fdDynamicPage_Title_Header_Transparent_Background)}.footer-spacer{height:3rem}.content-sticker{position:static}.fd-dynamic-page__header--not-collapsible .fd-dynamic-page__title-area.is-hover,.fd-dynamic-page__header--not-collapsible .fd-dynamic-page__title-area:hover{background-color:var(--sapObjectHeader_Background, #fff);cursor:default}.fd-dynamic-page__collapsible-header-visibility-container--button-group{z-index:6}.fd-tabs .fd-dynamic-page__content{display:block;height:auto!important}.fd-dynamic-page{height:100%}.fd-dynamic-page .fd-bar--floating-footer{z-index:6}.fd-dynamic-page .fd-tabs-custom{overflow:auto;background-color:#f7f7f7;background-color:var(--sapBackgroundColor, #f7f7f7);flex:1}.fd-dynamic-page .fd-dynamic-page__content,.fd-dynamic-page .fd-dynamic-page__title-subtitle-container{flex:1}.fd-dynamic-page--transparent-bg .fd-tabs-custom{background-color:transparent;background-color:var(--fdDynamicPage_Content_Transparent_Background, transparent)}.fd-dynamic-page--list-bg .fd-tabs-custom{background-color:#fff;background-color:var(--fdDynamicPage_Content_List_Background, var(--sapGroup_ContentBackground, #fff))}.fd-dynamic-page--xl .fd-bar--floating-footer{margin:1rem 3rem}.fd-dynamic-page--lg .fd-bar--floating-footer,.fd-dynamic-page--md .fd-bar--floating-footer{margin:1rem 2rem}.fd-dynamic-page--sm .fd-bar--floating-footer{margin:1rem .5rem}.fd-dynamic-page--sm .fd-dynamic-page__title-container{align-items:center}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: ScrollbarDirective, selector: "[fdScrollbar], [fd-scrollbar]", inputs: ["noHorizontalScroll", "noVerticalScroll", "alwaysVisible"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
869
869
  }
870
870
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: DynamicPageComponent, decorators: [{
871
871
  type: Component,
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-core-dynamic-page.mjs","sources":["../../../../libs/core/src/lib/dynamic-page/constants.ts","../../../../libs/core/src/lib/dynamic-page/utils.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-content/dynamic-page-content.component.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-content/dynamic-page-content.component.html","../../../../libs/core/src/lib/dynamic-page/dynamic-page-footer/dynamic-page-footer.component.ts","../../../../libs/core/src/lib/dynamic-page/directives/dynamic-page-header-subtitle.directive.ts","../../../../libs/core/src/lib/dynamic-page/directives/dynamic-page-header-title.directive.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page.service.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-header/actions/dynamic-page-base-actions.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-header/actions/dynamic-page-global-actions.component.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-header/actions/dynamic-page-layout-actions.component.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-header/actions/dynamic-page-title-content.component.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-header/header/dynamic-page-header.component.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-header/header/dynamic-page-header.component.html","../../../../libs/core/src/lib/dynamic-page/dynamic-page.config.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-header/subheader/dynamic-page-subheader.component.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-header/subheader/dynamic-page-subheader.component.html","../../../../libs/core/src/lib/dynamic-page/dynamic-page-wrapper.directive.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page.component.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page.component.html","../../../../libs/core/src/lib/dynamic-page/dynamic-page.module.ts","../../../../libs/core/src/lib/dynamic-page/fundamental-ngx-core-dynamic-page.ts"],"sourcesContent":["export const DYNAMIC_PAGE_CLASS_NAME = {\n dynamicPage: 'fd-dynamic-page',\n dynamicPageTitleArea: 'fd-dynamic-page__title-area',\n dynamicPageMainContainer: 'fd-dynamic-page__main-container',\n dynamicPageBreadcrumbTitleContainer: 'fd-dynamic-page__breadcrumb-title-container',\n dynamicPageTitleAreaCollapsed: 'fd-dynamic-page__title-area--collapsed',\n dynamicPageTitleContainer: 'fd-dynamic-page__title-container',\n dynamicPageTitle: 'fd-dynamic-page__title',\n dynamicPageBreadcrumb: 'fd-dynamic-page__breadcrumb',\n dynamicPageKeyInfo: 'fd-dynamic-page__title-content',\n dynamicPageToolbar: 'fd-dynamic-page__toolbar',\n dynamicPageLayoutActionsToolbar: 'fd-dynamic-page__toolbar--actions',\n dynamicPageLayoutContentToolbar: 'fd-dynamic-page__toolbar--content',\n dynamicPageHeader: 'fd-dynamic-page__header',\n dynamicPageCollapsibleHeader: 'fd-dynamic-page__collapsible-header',\n dynamicPageCollapsibleHeaderPinCollapseNoShadow:\n 'fd-dynamic-page__collapsible-header-visibility-container--no-shadow',\n dynamicPageTabs: 'fd-dynamic-page__tabs',\n dynamicPageTabsAddShadow: 'fd-dynamic-page__tabs--add-shadow',\n dynamicPageContent: 'fd-dynamic-page__content',\n dynamicPageSummarizedTitleArea: 'fd-dynamic-page__summarized-title-area',\n dynamicPageSummarizedTitleAreaExtraLarge: 'fd-dynamic-page__summarized-title-area',\n dynamicPageSummarizedTitleAreaNoShadow: 'fd-dynamic-page__summarized-title-area--no-shadow',\n dynamicPageSummarizedTitle: 'fd-dynamic-page__summarized-title',\n dynamicPageSummarizedTitleCollapsed: 'fd-dynamic-page__summarized-title-area--collapsed'\n} as const;\n\nexport type DynamicPageBackgroundType = 'solid' | 'list' | 'transparent';\n\nexport type DynamicPageResponsiveSize = 'small' | 'medium' | 'large' | 'extra-large';\n","import { Renderer2 } from '@angular/core';\nimport { DynamicPageResponsiveSize } from './constants';\n\nexport const addClassNameToElement = (renderer: Renderer2, element: Element, className: string): void => {\n renderer.addClass(element, className);\n};\n\n/** @hidden Returns dynamic page size based on width\n * @param width - dynamic page window width\n **/\nexport function dynamicPageWidthToSize(width: number): DynamicPageResponsiveSize {\n if (width < 599) {\n return 'small';\n } else if (width < 1023) {\n return 'medium';\n } else if (width < 1439) {\n return 'large';\n }\n return 'extra-large';\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n Input,\n OnInit,\n Renderer2,\n ViewEncapsulation\n} from '@angular/core';\n\nimport { NgIf } from '@angular/common';\nimport { DYNAMIC_PAGE_CLASS_NAME } from '../constants';\nimport { addClassNameToElement } from '../utils';\n\n@Component({\n selector: 'fd-dynamic-page-content',\n templateUrl: './dynamic-page-content.component.html',\n styleUrls: ['./dynamic-page-content.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [NgIf]\n})\nexport class DynamicPageContentComponent implements OnInit {\n /**\n * label for the tab. If label is provided, tab navigation will be internally set up.\n */\n @Input()\n tabLabel: string;\n\n /**\n * a unique identifier for this content\n */\n @Input()\n id: string;\n\n /** @hidden */\n _showSpacer = false;\n\n /** @hidden */\n constructor(\n public readonly _renderer: Renderer2,\n public readonly elementRef: ElementRef<HTMLElement>,\n private readonly _cdr: ChangeDetectorRef\n ) {}\n\n /** @hidden */\n ngOnInit(): void {\n this._addClassNameToHostElement(DYNAMIC_PAGE_CLASS_NAME.dynamicPageContent);\n }\n\n /** @hidden */\n _toggleSpacer(state: boolean): void {\n this._showSpacer = state;\n\n this._cdr.markForCheck();\n }\n\n /** @hidden */\n private _addClassNameToHostElement(className: string): void {\n addClassNameToElement(this._renderer, this.elementRef.nativeElement, className);\n }\n}\n","<ng-content></ng-content>\n\n<div *ngIf=\"_showSpacer\" class=\"footer-spacer\"></div>\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'fd-dynamic-page-footer',\n template: '<ng-content></ng-content>',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true\n})\nexport class DynamicPageFooterComponent {}\n","import { Directive, TemplateRef, inject } from '@angular/core';\nimport { DynamicPageTitleDirectiveContext } from '../models/title-directive-context';\n\n@Directive({\n selector: '[fdDynamicPageHeaderSubtitle]',\n standalone: true\n})\nexport class DynamicPageHeaderSubtitleDirective {\n /** Template reference. */\n templateRef = inject<TemplateRef<DynamicPageTitleDirectiveContext>>(TemplateRef);\n\n /** @hidden */\n static ngTemplateContextGuard(\n dir: DynamicPageHeaderSubtitleDirective,\n ctx: DynamicPageTitleDirectiveContext\n ): ctx is DynamicPageTitleDirectiveContext {\n return true;\n }\n}\n","import { Directive, TemplateRef, inject } from '@angular/core';\nimport { DynamicPageTitleDirectiveContext } from '../models/title-directive-context';\n\n@Directive({\n selector: '[fdDynamicPageHeaderTitle]',\n standalone: true\n})\nexport class DynamicPageHeaderTitleDirective {\n /** Template reference. */\n templateRef = inject<TemplateRef<DynamicPageTitleDirectiveContext>>(TemplateRef);\n\n /** @hidden */\n static ngTemplateContextGuard(\n dir: DynamicPageHeaderTitleDirective,\n ctx: DynamicPageTitleDirectiveContext\n ): ctx is DynamicPageTitleDirectiveContext {\n return true;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject, Subject } from 'rxjs';\n\n@Injectable()\nexport class DynamicPageService {\n /** @hidden */\n collapsed = new BehaviorSubject<boolean>(false);\n\n /** @hidden */\n pinned = new BehaviorSubject<boolean>(false);\n\n /** @hidden */\n pixelsSizeChanged = new BehaviorSubject<number>(0);\n\n /** @hidden */\n subheaderVisibilityChange = new Subject<void>();\n\n /** @hidden */\n focusLayoutAction = new Subject<void>();\n\n /** @hidden */\n toggleCollapsed(): void {\n this.collapsed.next(!this.collapsed.value);\n }\n}\n","import { Directive, ElementRef } from '@angular/core';\n\n@Directive()\nexport class DynamicPageBaseActions {\n /** @hidden */\n addClassToToolbar(_class: string, elementRef: ElementRef): void {\n // adds global actions classes to its toolbar\n const toolbarEl = elementRef.nativeElement.querySelector('.fd-toolbar');\n if (toolbarEl) {\n toolbarEl.classList.add(_class);\n }\n }\n}\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ElementRef,\n Renderer2,\n ViewEncapsulation\n} from '@angular/core';\nimport { ToolbarComponent } from '@fundamental-ngx/core/toolbar';\nimport { DYNAMIC_PAGE_CLASS_NAME, DynamicPageResponsiveSize } from '../../constants';\nimport { DynamicPageBaseActions } from './dynamic-page-base-actions';\n\n@Component({\n selector: 'fd-dynamic-page-global-actions',\n template: '<ng-content></ng-content>',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n role: 'toolbar'\n },\n standalone: true\n})\nexport class DynamicPageGlobalActionsComponent extends DynamicPageBaseActions implements AfterContentInit {\n /** @hidden */\n @ContentChild(ToolbarComponent)\n _toolbarComponent: ToolbarComponent;\n\n /** @hidden */\n constructor(\n private _elementRef: ElementRef,\n private _renderer: Renderer2,\n private _changeDetRef: ChangeDetectorRef\n ) {\n super();\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n this.addClassToToolbar(DYNAMIC_PAGE_CLASS_NAME.dynamicPageToolbar, this._elementRef);\n }\n\n /** @hidden */\n _setSize(size: DynamicPageResponsiveSize): void {\n if (this._toolbarComponent) {\n this._handleOverflow(size === 'small');\n }\n }\n\n /** @hidden */\n private _handleOverflow(shouldBeHidden: boolean): void {\n this._toolbarComponent.forceOverflow = shouldBeHidden;\n this._toolbarComponent.shouldOverflow = shouldBeHidden;\n this._toolbarComponent.detectChanges();\n setTimeout(() => {\n this._toolbarComponent.updateCollapsibleItems();\n });\n }\n}\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ElementRef,\n Renderer2,\n ViewEncapsulation\n} from '@angular/core';\nimport { ToolbarComponent } from '@fundamental-ngx/core/toolbar';\nimport { Subject } from 'rxjs';\nimport { DYNAMIC_PAGE_CLASS_NAME } from '../../constants';\nimport { DynamicPageBaseActions } from './dynamic-page-base-actions';\n\n@Component({\n selector: 'fd-dynamic-page-layout-actions',\n template: '<ng-content></ng-content>',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n role: 'toolbar'\n },\n standalone: true\n})\nexport class DynamicPageLayoutActionsComponent extends DynamicPageBaseActions implements AfterContentInit {\n /** @hidden */\n @ContentChild(ToolbarComponent)\n toolbarComponent: ToolbarComponent;\n\n /** @hidden */\n private readonly _onDestroy$: Subject<void> = new Subject<void>();\n\n /** @hidden */\n constructor(\n public readonly elementRef: ElementRef,\n private _renderer: Renderer2,\n private _changeDetRef: ChangeDetectorRef\n ) {\n super();\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n this.addClassToToolbar(DYNAMIC_PAGE_CLASS_NAME.dynamicPageLayoutActionsToolbar, this.elementRef);\n this.addClassToToolbar(DYNAMIC_PAGE_CLASS_NAME.dynamicPageToolbar, this.elementRef);\n }\n}\n","import { NgIf, NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ViewEncapsulation } from '@angular/core';\nimport { ContentDensityObserver, contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';\nimport { ToolbarComponent, ToolbarItemDirective } from '@fundamental-ngx/core/toolbar';\nimport { DynamicPageResponsiveSize } from '../../constants';\n\n@Component({\n selector: 'fd-dynamic-page-title-content',\n template: `\n <ng-container *ngIf=\"_size === 'small'\">\n <fd-toolbar\n fdType=\"transparent\"\n (click)=\"$event.stopPropagation()\"\n class=\"dynamicPageLayoutContentToolbar\"\n [clearBorder]=\"true\"\n [forceOverflow]=\"true\"\n [shouldOverflow]=\"true\"\n >\n <div fd-toolbar-item>\n <ng-container *ngTemplateOutlet=\"templateContentRef\"></ng-container>\n </div>\n </fd-toolbar>\n </ng-container>\n\n <div class=\"fd-dynamic-page__title-content\" *ngIf=\"_size !== 'small'\">\n <ng-container *ngTemplateOutlet=\"templateContentRef\"></ng-container>\n </div>\n\n <ng-template #templateContentRef>\n <ng-content></ng-content>\n </ng-template>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [contentDensityObserverProviders()],\n standalone: true,\n imports: [NgIf, ToolbarComponent, ToolbarItemDirective, NgTemplateOutlet]\n})\nexport class DynamicPageTitleContentComponent {\n /** @hidden */\n _size: DynamicPageResponsiveSize;\n\n /** @hidden */\n constructor(private _changeDetRef: ChangeDetectorRef, readonly _contentDensityObserver: ContentDensityObserver) {}\n\n /** @hidden */\n _setSize(size: DynamicPageResponsiveSize): void {\n this._size = size;\n this._changeDetRef.detectChanges();\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ElementRef,\n Input,\n OnDestroy,\n OnInit,\n Renderer2,\n ViewEncapsulation\n} from '@angular/core';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { BreadcrumbComponent, FD_BREADCRUMB_COMPONENT } from '@fundamental-ngx/core/breadcrumb';\nimport { DYNAMIC_PAGE_HEADER_TOKEN, DynamicPageHeader } from '@fundamental-ngx/core/shared';\n\nimport { NgIf, NgTemplateOutlet } from '@angular/common';\nimport { IgnoreClickOnSelectionDirective, Nullable } from '@fundamental-ngx/cdk/utils';\nimport { DYNAMIC_PAGE_CLASS_NAME, DynamicPageResponsiveSize } from '../../constants';\nimport { DynamicPageHeaderSubtitleDirective } from '../../directives/dynamic-page-header-subtitle.directive';\nimport { DynamicPageHeaderTitleDirective } from '../../directives/dynamic-page-header-title.directive';\nimport { DynamicPageService } from '../../dynamic-page.service';\nimport { addClassNameToElement } from '../../utils';\nimport { DynamicPageGlobalActionsComponent } from '../actions/dynamic-page-global-actions.component';\nimport { DynamicPageLayoutActionsComponent } from '../actions/dynamic-page-layout-actions.component';\nimport { DynamicPageTitleContentComponent } from '../actions/dynamic-page-title-content.component';\n\nexport const ActionSquashBreakpointPx = 1280;\n\n@Component({\n selector: 'fd-dynamic-page-header',\n templateUrl: './dynamic-page-header.component.html',\n styleUrls: ['./dynamic-page-header.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[attr.tabindex]': '0'\n },\n providers: [\n {\n provide: DYNAMIC_PAGE_HEADER_TOKEN,\n useExisting: DynamicPageHeaderComponent\n }\n ],\n standalone: true,\n imports: [NgIf, NgTemplateOutlet, IgnoreClickOnSelectionDirective]\n})\nexport class DynamicPageHeaderComponent implements OnInit, AfterViewInit, OnDestroy, DynamicPageHeader {\n /** @hidden */\n _collapsed = false;\n\n /** Title property for dynamic page */\n @Input()\n title: string;\n\n /** Whether title should wrap instead of truncation. */\n @Input()\n titleWrap = false;\n\n /** Subtitle property for dynamic page */\n @Input()\n subtitle: string;\n\n /** Whether subtitle should wrap instead of truncation. */\n @Input()\n subtitleWrap = false;\n\n /**\n * @hidden\n * Template used to provide a custom content for the subtitle page header area.\n */\n @ContentChild(DynamicPageHeaderSubtitleDirective)\n _subtitleTemplate: Nullable<DynamicPageHeaderSubtitleDirective>;\n\n /**\n * @hidden\n * Template used to provide a custom content for the title page header area.\n */\n @ContentChild(DynamicPageHeaderTitleDirective)\n _titleTemplate: Nullable<DynamicPageHeaderSubtitleDirective>;\n\n /** @hidden */\n @ContentChild(FD_BREADCRUMB_COMPONENT)\n _breadcrumbComponent: BreadcrumbComponent;\n\n /** @hidden */\n @ContentChild(DynamicPageGlobalActionsComponent)\n _globalActions: DynamicPageGlobalActionsComponent;\n\n /** @hidden */\n @ContentChild(DynamicPageLayoutActionsComponent)\n _layoutActions: DynamicPageLayoutActionsComponent;\n\n /** @hidden */\n @ContentChild(DynamicPageTitleContentComponent)\n _contentToolbar: DynamicPageTitleContentComponent;\n\n /** @hidden */\n _actionsSquashed = false;\n\n /** @hidden */\n _size: DynamicPageResponsiveSize;\n\n /** @hidden **/\n private readonly _onDestroy$: Subject<void> = new Subject<void>();\n\n /** @hidden */\n constructor(\n private _elementRef: ElementRef<HTMLElement>,\n private _renderer: Renderer2,\n private _dynamicPageService: DynamicPageService,\n private _changeDetRef: ChangeDetectorRef\n ) {}\n\n /** @hidden */\n ngOnInit(): void {\n this._addClassNameToHostElement(DYNAMIC_PAGE_CLASS_NAME.dynamicPageTitleArea);\n this._listenToPageChanges();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._addCustomClassToBreadcrumb();\n\n this._dynamicPageService.collapsed.pipe(takeUntil(this._onDestroy$)).subscribe((collapsed) => {\n this._collapsed = collapsed;\n this._changeDetRef.markForCheck();\n });\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._onDestroy$.next();\n this._onDestroy$.complete();\n }\n\n /**\n * sets size which in turn adds corresponding padding for the size type.\n * size can be `small`, `medium`, `large`, or `extra-large`.\n */\n set size(sizeType: DynamicPageResponsiveSize) {\n this._setSize(sizeType);\n this._size = sizeType;\n }\n\n /** @hidden */\n stopPropagation(event: MouseEvent): void {\n event.stopPropagation();\n }\n\n /**\n * @hidden\n * sets the padding classes\n * @param sizeType\n */\n private _setSize(sizeType: DynamicPageResponsiveSize): void {\n setTimeout(() => {\n this._breadcrumbComponent?.onResize();\n this._globalActions?._setSize(sizeType);\n this._contentToolbar?._setSize(sizeType);\n this._changeDetRef.detectChanges();\n });\n }\n\n /** @hidden */\n private _addClassNameToHostElement(className: string): void {\n addClassNameToElement(this._renderer, this._elementRef.nativeElement, className);\n }\n\n /** @hidden */\n private _addClassNameToCustomElement(element: Element, className: string): void {\n addClassNameToElement(this._renderer, element, className);\n }\n\n /** @hidden */\n private _addCustomClassToBreadcrumb(): void {\n if (this._breadcrumbComponent) {\n this._addClassNameToCustomElement(\n this._breadcrumbComponent.elementRef.nativeElement,\n DYNAMIC_PAGE_CLASS_NAME.dynamicPageBreadcrumb\n );\n }\n }\n\n /** @hidden */\n private _listenToPageChanges(): void {\n this._dynamicPageService.pixelsSizeChanged.pipe(takeUntil(this._onDestroy$)).subscribe((pixels) => {\n const actionsSquashed: boolean = pixels < ActionSquashBreakpointPx;\n if (actionsSquashed !== this._actionsSquashed) {\n this._actionsSquashed = actionsSquashed;\n this._changeDetRef.detectChanges();\n }\n });\n }\n}\n","<div class=\"fd-dynamic-page__main-container\">\n <div class=\"fd-dynamic-page__breadcrumb-title-container\">\n <div class=\"fd-dynamic-page__breadcrumb-container\">\n <nav aria-label=\"Breadcrumbs\" class=\"fd-dynamic-page__breadcrumb-wrapper\" (click)=\"stopPropagation($event)\">\n <ng-content select=\"fd-breadcrumb\"></ng-content>\n </nav>\n <ng-container *ngIf=\"_actionsSquashed\">\n <ng-container *ngTemplateOutlet=\"dynamicPageLayoutActionsRef\"></ng-container>\n </ng-container>\n </div>\n <div class=\"fd-dynamic-page__title-container\">\n <ng-container *ngIf=\"_collapsed\">\n <ng-content select=\"fd-facet\"></ng-content>\n </ng-container>\n\n <div class=\"fd-dynamic-page__title-subtitle-container\">\n <div class=\"fd-dynamic-page__title-container\">\n <span\n class=\"fd-dynamic-page__title\"\n [class.fd-dynamic-page__title--wrap]=\"titleWrap\"\n fdkIgnoreClickOnSelection\n >\n <ng-template [ngTemplateOutlet]=\"_titleTemplate ? titleRef : defaultTitle\"></ng-template>\n </span>\n <ng-content select=\"fd-dynamic-page-title-content\"></ng-content>\n <div class=\"fd-dynamic-page__toolbar-container\" (click)=\"stopPropagation($event)\">\n <ng-container *ngTemplateOutlet=\"dynamicPageGlobalActionsRef\"></ng-container>\n <ng-container *ngIf=\"!_actionsSquashed\">\n <ng-container *ngTemplateOutlet=\"dynamicPageLayoutActionsRef\"></ng-container>\n </ng-container>\n </div>\n </div>\n <div\n *ngIf=\"_collapsed && (subtitle || _subtitleTemplate)\"\n class=\"fd-dynamic-page__subtitle\"\n [class.fd-dynamic-page__subtitle--wrap]=\"subtitleWrap\"\n fdkIgnoreClickOnSelection\n >\n <ng-container *ngTemplateOutlet=\"_subtitleTemplate ? subtitleRef : defaultSubtitle\"></ng-container>\n </div>\n </div>\n </div>\n </div>\n</div>\n<div\n *ngIf=\"!_collapsed && (subtitle || _subtitleTemplate)\"\n class=\"fd-dynamic-page__subtitle\"\n [class.fd-dynamic-page__subtitle--wrap]=\"subtitleWrap\"\n fdkIgnoreClickOnSelection\n>\n <ng-container *ngTemplateOutlet=\"_subtitleTemplate ? subtitleRef : defaultSubtitle\"></ng-container>\n</div>\n\n<ng-template #dynamicPageGlobalActionsRef>\n <ng-content select=\"fd-dynamic-page-global-actions\"></ng-content>\n</ng-template>\n<ng-template #dynamicPageLayoutActionsRef>\n <ng-content select=\"fd-dynamic-page-layout-actions\"></ng-content>\n</ng-template>\n\n<ng-template #titleRef>\n <ng-template\n [ngTemplateOutlet]=\"_titleTemplate!.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: _collapsed }\"\n ></ng-template>\n</ng-template>\n\n<ng-template #subtitleRef>\n <ng-container\n [ngTemplateOutlet]=\"_subtitleTemplate!.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: _collapsed }\"\n ></ng-container>\n</ng-template>\n\n<ng-template #defaultSubtitle>\n {{ subtitle }}\n</ng-template>\n\n<ng-template #titleRef>\n <ng-container\n [ngTemplateOutlet]=\"_titleTemplate!.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: _collapsed }\"\n ></ng-container>\n</ng-template>\n\n<ng-template #defaultTitle>\n {{ title }}\n</ng-template>\n","import { Injectable } from '@angular/core';\n\n/**\n * Default options for core dynamic-page\n */\n@Injectable({ providedIn: 'root' })\nexport class DynamicPageConfig {\n /**\n * aria label for expand/collapse button when the Dynamic Page is collapsed\n */\n expandLabel = 'Expand Header';\n\n /**\n * aria label for expand/collapse button when the Dynamic Page is expanded\n */\n collapseLabel = 'Collapse Header';\n\n /**\n * aria label for pin button when the Dynamic Page should be pinned\n */\n pinLabel = 'Pin Header';\n\n /**\n * aria label for pin button when the Panel should be unpinned\n */\n unpinLabel = 'Unpin Header';\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n Output,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { Nullable } from '@fundamental-ngx/cdk/utils';\nimport { distinctUntilChanged } from 'rxjs/operators';\n\nimport { NgIf } from '@angular/common';\nimport { ButtonComponent } from '@fundamental-ngx/core/button';\nimport { DynamicPageConfig } from '../../dynamic-page.config';\nimport { DynamicPageService } from '../../dynamic-page.service';\n\nlet dynamicPageSubHeaderId = 0;\n@Component({\n selector: 'fd-dynamic-page-subheader',\n templateUrl: './dynamic-page-subheader.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [NgIf, ButtonComponent]\n})\nexport class DynamicPageSubheaderComponent {\n /**\n * whether the header can be collapsed. True by default. If set to false, both pin/collapse buttons disappear\n * and the header stays visible\n */\n @Input()\n collapsible = true;\n\n /**\n * whether the header should be allowed to be pinned or unpinned. When set, the pin button shows up.\n * Pinning the header will make the header stay visible and the collapse button(if present) will disappear until unpinned.\n */\n @Input()\n pinnable = false;\n\n /**\n * the initial state of the header. Set to true if header should be collapsed.\n */\n @Input()\n set collapsed(collapsed: boolean) {\n this._handleCollapsedChange(collapsed);\n }\n\n get collapsed(): boolean {\n return this._collapsed;\n }\n\n /**\n * ARIA label for button when the header is collapsed\n */\n @Input()\n expandLabel: string = this._dynamicPageConfig.expandLabel;\n\n /**\n * ARIA label for button when the header is expanded\n */\n @Input()\n collapseLabel: string = this._dynamicPageConfig.collapseLabel;\n\n /** Header role */\n @Input()\n @HostBinding('attr.role')\n role = 'region';\n\n /**\n * id for header\n */\n @Input()\n @HostBinding('attr.id')\n id = `fd-dynamic-page-header-id-${dynamicPageSubHeaderId++}`;\n\n /**\n * id for collapsible header\n */\n collapsibleHeaderId = `${this.id}-collapsible`;\n /**\n * aria label for header\n */\n @Input()\n headerAriaLabel: Nullable<string>;\n\n /**\n * aria label for pin state of pin button\n */\n @Input()\n pinAriaLabel: string = this._dynamicPageConfig.pinLabel;\n\n /**\n * aria label for unpin state of pin button\n */\n @Input()\n unpinAriaLabel: string = this._dynamicPageConfig.unpinLabel;\n\n /** Collapse/Expand change event raised */\n @Output()\n collapsedChange = new EventEmitter<boolean>();\n\n /** Reference to page header content */\n @ViewChild('pincollapseContainer')\n pinCollapseContainer: ElementRef<HTMLElement>;\n\n /**\n * tracking if pin button is pinned\n */\n _pinned = false;\n\n /**\n * @hidden\n * tracking expand/collapse button\n */\n private _collapsed = false;\n\n /** @hidden */\n constructor(\n private _cd: ChangeDetectorRef,\n protected _dynamicPageConfig: DynamicPageConfig,\n private _dynamicPageService: DynamicPageService\n ) {\n this._dynamicPageService.collapsed\n .pipe(distinctUntilChanged())\n .subscribe((collapsed) => this._handleCollapsedChange(collapsed));\n }\n\n /**\n * toggles the state of the header and\n * handles expanded/collapsed event\n */\n toggleCollapse(): void {\n this._pinned = false;\n this._handleCollapsedChange(!this._collapsed);\n }\n\n /**\n * @hidden\n * click action on pin button\n */\n togglePinned(): void {\n this._pinned = !this._pinned;\n this._dynamicPageService.pinned.next(this._pinned);\n }\n\n /** @hidden */\n private _handleCollapsedChange(collapsed: boolean): void {\n if (collapsed === this._collapsed) {\n return;\n }\n\n this._collapsed = collapsed;\n this._dynamicPageService.collapsed.next(collapsed);\n this.collapsedChange.emit(this._collapsed);\n this._cd.detectChanges();\n this._dynamicPageService.subheaderVisibilityChange.next();\n }\n}\n","<div class=\"fd-dynamic-page__collapsible-header-container\">\n <div\n class=\"fd-dynamic-page__collapsible-header\"\n [attr.aria-label]=\"headerAriaLabel\"\n [attr.aria-hidden]=\"collapsed\"\n [attr.id]=\"collapsibleHeaderId\"\n role=\"region\"\n #headerContent\n >\n <ng-content></ng-content>\n </div>\n <div class=\"fd-dynamic-page__collapsible-header-visibility-container\" #pincollapseContainer>\n <ng-container *ngIf=\"collapsible\">\n <div class=\"fd-dynamic-page__collapsible-header-visibility-container--left-gradient\"></div>\n <div role=\"toolbar\" class=\"fd-dynamic-page__collapsible-header-visibility-container--button-group\">\n <button\n fd-button\n class=\"fd-dynamic-page__collapse-button\"\n aria-haspopup=\"true\"\n [ariaLabel]=\"collapsed ? expandLabel : collapseLabel\"\n [attr.title]=\"collapsed ? expandLabel : collapseLabel\"\n [attr.aria-expanded]=\"!collapsed\"\n [attr.aria-controls]=\"id\"\n (click)=\"toggleCollapse()\"\n >\n <i *ngIf=\"!collapsed\" class=\"sap-icon--slim-arrow-up\"></i>\n <i *ngIf=\"collapsed\" class=\"sap-icon--slim-arrow-down\"></i>\n </button>\n <button\n fd-button\n class=\"fd-dynamic-page__pin-button\"\n [ariaLabel]=\"_pinned ? unpinAriaLabel : pinAriaLabel\"\n [attr.title]=\"_pinned ? unpinAriaLabel : pinAriaLabel\"\n [toggled]=\"_pinned\"\n (click)=\"togglePinned()\"\n *ngIf=\"pinnable && !collapsed\"\n >\n <i class=\"sap-icon--pushpin-off\"></i>\n </button>\n </div>\n <div class=\"fd-dynamic-page__collapsible-header-visibility-container--right-gradient\"></div>\n </ng-container>\n </div>\n</div>\n","import { Directive, ElementRef } from '@angular/core';\n\n@Directive({\n selector: '[fdDynamicPageWrapper], [fd-dynamic-page-wrapper]',\n standalone: true\n})\nexport class DynamicPageWrapperDirective {\n /** @hidden */\n constructor(public elementRef: ElementRef<HTMLElement>) {}\n}\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n OnDestroy,\n Optional,\n QueryList,\n Renderer2,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { Nullable, resizeObservable } from '@fundamental-ngx/cdk/utils';\nimport {\n FD_FLEXIBLE_COLUMN_LAYOUT_COMPONENT,\n FlexibleColumnLayoutComponent\n} from '@fundamental-ngx/core/flexible-column-layout';\nimport { TabListComponent } from '@fundamental-ngx/core/tabs';\nimport { DYNAMIC_PAGE_CLASS_NAME, DynamicPageBackgroundType, DynamicPageResponsiveSize } from './constants';\nimport { DynamicPageContentComponent } from './dynamic-page-content/dynamic-page-content.component';\nimport { DynamicPageFooterComponent } from './dynamic-page-footer/dynamic-page-footer.component';\nimport { DynamicPageHeaderComponent } from './dynamic-page-header/header/dynamic-page-header.component';\nimport { DynamicPageSubheaderComponent } from './dynamic-page-header/subheader/dynamic-page-subheader.component';\nimport { DynamicPageWrapperDirective } from './dynamic-page-wrapper.directive';\nimport { DynamicPageService } from './dynamic-page.service';\nimport { addClassNameToElement, dynamicPageWidthToSize } from './utils';\n\nimport { CdkScrollable } from '@angular/cdk/overlay';\nimport { NgIf } from '@angular/common';\nimport { ScrollbarDirective } from '@fundamental-ngx/core/scrollbar';\nimport { asyncScheduler, fromEvent, Observable, startWith, Subject } from 'rxjs';\nimport { debounceTime, map, observeOn, takeUntil } from 'rxjs/operators';\n\n@Component({\n selector: 'fd-dynamic-page',\n templateUrl: './dynamic-page.component.html',\n styleUrls: ['./dynamic-page.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [DynamicPageService],\n standalone: true,\n imports: [NgIf, CdkScrollable, ScrollbarDirective]\n})\nexport class DynamicPageComponent implements AfterViewInit, OnDestroy {\n /** Whether DynamicPage should snap on scroll */\n @Input()\n disableSnapOnScroll = false;\n\n /** Page role */\n @Input()\n @HostBinding('attr.role')\n role = 'region';\n\n /** aria label for the page */\n @Input()\n ariaLabel: Nullable<string>;\n\n /**\n * sets background for content to `list`, `transparent`, or `solid` background color.\n * Default is `solid`.\n */\n @Input()\n background: DynamicPageBackgroundType = 'solid';\n\n /** Whether DynamicPage should have responsive sides spacing changing with Page window width.\n * max-width: 599px - small\n * min-width: 600px and max-width: 1023px - medium\n * min-width: 1024px and max-width: 1439px - large\n * min-width: 1440px - extra large\n */\n @Input()\n autoResponsive = true;\n\n /**\n * sets size which in turn adds corresponding padding for the size type.\n * size can be `small`, `medium`, `large`, or `extra-large`.\n */\n @Input()\n set size(size: DynamicPageResponsiveSize) {\n this._size = size;\n this._propagateSizeToChildren();\n }\n\n get size(): DynamicPageResponsiveSize {\n return this._size;\n }\n\n /** @hidden */\n _size: DynamicPageResponsiveSize = 'extra-large';\n\n /** Offset in PX\n * Should be added, when there is something else at the bottom and dynamic page is not expanded to bottom's corners\n */\n @Input()\n offset = 0;\n\n /**\n * Whether dynamic page should be expanded in whole page.\n */\n @Input()\n expandContent = true;\n\n /** @hidden reference to header component */\n @ContentChild(DynamicPageSubheaderComponent)\n _pageSubheaderComponent: DynamicPageSubheaderComponent;\n\n /** @hidden reference to title component */\n @ContentChild(DynamicPageHeaderComponent)\n _headerComponent: DynamicPageHeaderComponent;\n\n /** @hidden reference to content component */\n @ContentChildren(DynamicPageContentComponent, { descendants: true })\n _contentComponent: QueryList<DynamicPageContentComponent>;\n\n /** @hidden reference to footer component */\n @ContentChild(DynamicPageFooterComponent)\n _footerComponent: DynamicPageContentComponent;\n\n /** @hidden reference to tab component */\n @ContentChild(TabListComponent)\n _tabComponent: TabListComponent;\n\n /** @hidden */\n @ViewChild('dynamicPageElement')\n _dynamicPageElement: ElementRef;\n\n /** @hidden */\n @ViewChild(ScrollbarDirective)\n _scrollbar: ScrollbarDirective;\n\n /** @hidden */\n _headerCollapsible = true;\n\n /** @hidden **/\n private readonly _onDestroy$: Subject<void> = new Subject<void>();\n\n /** @hidden */\n constructor(\n protected _cd: ChangeDetectorRef,\n private _elementRef: ElementRef<HTMLElement>,\n private _renderer: Renderer2,\n private _dynamicPageService: DynamicPageService,\n @Optional() @Inject(FD_FLEXIBLE_COLUMN_LAYOUT_COMPONENT) private _columnLayout: FlexibleColumnLayoutComponent,\n @Optional() private _dynamicPageWrapper: DynamicPageWrapperDirective\n ) {}\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._sizeChangeHandle();\n this._removeShadowWhenTabComponent();\n this._listenOnResize();\n this._listenOnCollapse();\n this._propagatePropertiesToChildren();\n this._setContentFooterSpacer();\n\n if (!this.disableSnapOnScroll && this._pageSubheaderComponent?.collapsible) {\n this._addScrollListeners();\n }\n\n if (this._columnLayout && this.autoResponsive) {\n this._listenToLayoutChange();\n }\n\n setTimeout(() => this._setContainerPositions());\n\n this._cd.detectChanges();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._onDestroy$.next();\n this._onDestroy$.complete();\n }\n\n /** toggle the visibility of the header on click of title area. */\n toggleCollapse(): void {\n if (this._headerCollapsible) {\n this._dynamicPageService.toggleCollapsed();\n }\n }\n\n /**\n * Triggers recheck for spacing and sizing of elements inside DynamicPage.\n */\n refreshSize(): void {\n this._setContainerPositions();\n this._sizeChangeHandle();\n }\n\n /** @hidden */\n _getScrollElement(): HTMLElement | null {\n return this._tabComponent?._scrollbar.elementRef.nativeElement || this._scrollbar?.elementRef.nativeElement;\n }\n\n /** Set the positions of the tabs and content with respect to the window */\n private _setContainerPositions(): void {\n this._setDynamicPageHeight();\n }\n\n /** @hidden */\n private _propagatePropertiesToChildren(): void {\n this._headerCollapsible = this._pageSubheaderComponent?.collapsible;\n this._propagateSizeToChildren();\n }\n\n /** @hidden\n * Functionality handling column layout changes,\n * - recalculate height of content element\n * - recheck size depending on width of DynamicPage\n */\n private _listenToLayoutChange(): void {\n this._columnLayout.layoutChange.pipe(debounceTime(50), takeUntil(this._onDestroy$)).subscribe(() => {\n this.refreshSize();\n this._sizeChangeHandle();\n });\n }\n\n /** @hidden */\n private _propagateSizeToChildren(): void {\n if (this._headerComponent) {\n this._headerComponent.size = this.size;\n }\n this._setContainerPositions();\n }\n\n /** @hidden */\n private _listenOnCollapse(): void {\n this._dynamicPageService.subheaderVisibilityChange\n .pipe(takeUntil(this._onDestroy$))\n .subscribe(() => this._setContainerPositions());\n }\n\n /** @hidden */\n private _getCalculatedFullHeight(element: HTMLElement): string | null {\n if (!element) {\n return null;\n }\n const distanceFromTop = element.getBoundingClientRect().top;\n return 'calc(100vh - ' + (distanceFromTop + this.offset) + 'px)';\n }\n\n /** @hidden */\n private _sizeChangeHandle(): void {\n if (!this._elementRef || !this.autoResponsive) {\n return;\n }\n const dynamicPageWidth = this._elementRef.nativeElement.getBoundingClientRect().width;\n this._dynamicPageService.pixelsSizeChanged.next(dynamicPageWidth);\n const size = dynamicPageWidthToSize(dynamicPageWidth);\n\n if (size !== this.size) {\n this.size = size;\n this._cd.detectChanges();\n }\n }\n\n /** @hidden */\n private _addScrollListeners(): void {\n const element = this._getScrollElement();\n if (element) {\n fromEvent(element, 'scroll')\n .pipe(debounceTime(10), takeUntil(this._onDestroy$))\n .subscribe(() => {\n const collapse =\n !this._dynamicPageService.pinned.value &&\n (element.scrollTop > 0 || element.scrollHeight <= element.clientHeight);\n this._dynamicPageService.collapsed.next(collapse);\n });\n }\n }\n\n /** @hidden Listen for window resize and adjust tab and content positions accordingly */\n private _listenOnResize(): void {\n const listener = this._dynamicPageWrapper ? this._listenToWrapperResize() : this._listenToWindowResize();\n\n listener.pipe(debounceTime(100), takeUntil(this._onDestroy$)).subscribe(() => {\n this._setContainerPositions();\n this._sizeChangeHandle();\n });\n }\n\n /** @hidden */\n private _listenToWrapperResize(): Observable<ResizeObserverEntry[]> {\n return resizeObservable(this._dynamicPageWrapper.elementRef.nativeElement);\n }\n\n /** @hidden */\n private _listenToWindowResize(): Observable<ResizeObserverEntry[]> {\n return fromEvent(window, 'resize').pipe(map(() => []));\n }\n\n /** @hidden\n * set top position of DynamicPage on scrolling\n */\n private _setDynamicPageHeight(): void {\n if (!this._dynamicPageElement || !this.expandContent) {\n return;\n }\n const element = this._dynamicPageElement.nativeElement;\n this._renderer.setStyle(element, 'height', this._getCalculatedFullHeight(element));\n }\n\n /** @hidden */\n private _removeShadowWhenTabComponent(): void {\n if (!this._pageSubheaderComponent?.collapsible || !this._tabComponent) {\n return;\n }\n\n const pinCollapseShadowElement = this._pageSubheaderComponent?.pinCollapseContainer;\n\n if (pinCollapseShadowElement) {\n addClassNameToElement(\n this._renderer,\n pinCollapseShadowElement.nativeElement,\n DYNAMIC_PAGE_CLASS_NAME.dynamicPageCollapsibleHeaderPinCollapseNoShadow\n );\n }\n }\n\n /** @hidden */\n private _setContentFooterSpacer(): void {\n this._contentComponent.changes\n .pipe(startWith(this._contentComponent.toArray()), observeOn(asyncScheduler), takeUntil(this._onDestroy$))\n .subscribe((components) => {\n components.forEach((content, index) => {\n /** show spacer when:\n * a) footer + no tabs = only last\n * b) footer + tabs, not stacked = all\n * c) footer + tabs, stacked = only last\n */\n content._toggleSpacer(\n this._footerComponent && (!this._tabComponent?.stackContent || index === components.length - 1)\n );\n });\n });\n }\n}\n","<section\n #dynamicPageElement\n class=\"fd-dynamic-page\"\n [class.fd-dynamic-page--sm]=\"size === 'small'\"\n [class.fd-dynamic-page--md]=\"size === 'medium'\"\n [class.fd-dynamic-page--lg]=\"size === 'large'\"\n [class.fd-dynamic-page--xl]=\"size === 'extra-large'\"\n [class.fd-dynamic-page--transparent-bg]=\"background === 'transparent'\"\n [class.fd-dynamic-page--list-bg]=\"background === 'list'\"\n [attr.aria-label]=\"ariaLabel\"\n>\n <header class=\"fd-dynamic-page__header\" [class.fd-dynamic-page__header--not-collapsible]=\"!_headerCollapsible\">\n <div>\n <div (click)=\"toggleCollapse()\" (keydown.enter)=\"toggleCollapse()\">\n <ng-content select=\"fd-dynamic-page-header\"></ng-content>\n </div>\n <ng-content select=\"fd-dynamic-page-subheader\"></ng-content>\n </div>\n </header>\n\n <ng-content select=\"fd-tab-list\"></ng-content>\n\n <div fd-scrollbar *ngIf=\"!_tabComponent\">\n <ng-content select=\"fd-dynamic-page-content\"></ng-content>\n </div>\n\n <div *ngIf=\"_tabComponent\">\n <ng-content select=\"fd-dynamic-page-content\"></ng-content>\n </div>\n\n <footer>\n <ng-content select=\"fd-dynamic-page-footer\"></ng-content>\n </footer>\n</section>\n","import { NgModule } from '@angular/core';\n\nimport { DynamicPageHeaderSubtitleDirective } from './directives/dynamic-page-header-subtitle.directive';\nimport { DynamicPageHeaderTitleDirective } from './directives/dynamic-page-header-title.directive';\nimport { DynamicPageContentComponent } from './dynamic-page-content/dynamic-page-content.component';\nimport { DynamicPageFooterComponent } from './dynamic-page-footer/dynamic-page-footer.component';\nimport { DynamicPageGlobalActionsComponent } from './dynamic-page-header/actions/dynamic-page-global-actions.component';\nimport { DynamicPageLayoutActionsComponent } from './dynamic-page-header/actions/dynamic-page-layout-actions.component';\nimport { DynamicPageTitleContentComponent } from './dynamic-page-header/actions/dynamic-page-title-content.component';\nimport { DynamicPageHeaderComponent } from './dynamic-page-header/header/dynamic-page-header.component';\nimport { DynamicPageSubheaderComponent } from './dynamic-page-header/subheader/dynamic-page-subheader.component';\nimport { DynamicPageWrapperDirective } from './dynamic-page-wrapper.directive';\nimport { DynamicPageComponent } from './dynamic-page.component';\n\nconst components = [\n DynamicPageComponent,\n DynamicPageHeaderComponent,\n DynamicPageGlobalActionsComponent,\n DynamicPageLayoutActionsComponent,\n DynamicPageSubheaderComponent,\n DynamicPageContentComponent,\n DynamicPageFooterComponent,\n DynamicPageTitleContentComponent,\n DynamicPageWrapperDirective,\n DynamicPageHeaderSubtitleDirective,\n DynamicPageHeaderTitleDirective\n];\n\n@NgModule({\n imports: [...components],\n exports: [...components]\n})\nexport class DynamicPageModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.DynamicPageService","i1.DynamicPageConfig","i2.DynamicPageService","i2.DynamicPageWrapperDirective"],"mappings":"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"}
1
+ {"version":3,"file":"fundamental-ngx-core-dynamic-page.mjs","sources":["../../../../libs/core/src/lib/dynamic-page/constants.ts","../../../../libs/core/src/lib/dynamic-page/utils.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-content/dynamic-page-content.component.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-content/dynamic-page-content.component.html","../../../../libs/core/src/lib/dynamic-page/dynamic-page-footer/dynamic-page-footer.component.ts","../../../../libs/core/src/lib/dynamic-page/directives/dynamic-page-header-subtitle.directive.ts","../../../../libs/core/src/lib/dynamic-page/directives/dynamic-page-header-title.directive.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page.service.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-header/actions/dynamic-page-base-actions.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-header/actions/dynamic-page-global-actions.component.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-header/actions/dynamic-page-layout-actions.component.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-header/actions/dynamic-page-title-content.component.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-header/header/dynamic-page-header.component.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-header/header/dynamic-page-header.component.html","../../../../libs/core/src/lib/dynamic-page/dynamic-page.config.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-header/subheader/dynamic-page-subheader.component.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page-header/subheader/dynamic-page-subheader.component.html","../../../../libs/core/src/lib/dynamic-page/dynamic-page-wrapper.directive.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page.component.ts","../../../../libs/core/src/lib/dynamic-page/dynamic-page.component.html","../../../../libs/core/src/lib/dynamic-page/dynamic-page.module.ts","../../../../libs/core/src/lib/dynamic-page/fundamental-ngx-core-dynamic-page.ts"],"sourcesContent":["export const DYNAMIC_PAGE_CLASS_NAME = {\n dynamicPage: 'fd-dynamic-page',\n dynamicPageTitleArea: 'fd-dynamic-page__title-area',\n dynamicPageMainContainer: 'fd-dynamic-page__main-container',\n dynamicPageBreadcrumbTitleContainer: 'fd-dynamic-page__breadcrumb-title-container',\n dynamicPageTitleAreaCollapsed: 'fd-dynamic-page__title-area--collapsed',\n dynamicPageTitleContainer: 'fd-dynamic-page__title-container',\n dynamicPageTitle: 'fd-dynamic-page__title',\n dynamicPageBreadcrumb: 'fd-dynamic-page__breadcrumb',\n dynamicPageKeyInfo: 'fd-dynamic-page__title-content',\n dynamicPageToolbar: 'fd-dynamic-page__toolbar',\n dynamicPageLayoutActionsToolbar: 'fd-dynamic-page__toolbar--actions',\n dynamicPageLayoutContentToolbar: 'fd-dynamic-page__toolbar--content',\n dynamicPageHeader: 'fd-dynamic-page__header',\n dynamicPageCollapsibleHeader: 'fd-dynamic-page__collapsible-header',\n dynamicPageCollapsibleHeaderPinCollapseNoShadow:\n 'fd-dynamic-page__collapsible-header-visibility-container--no-shadow',\n dynamicPageTabs: 'fd-dynamic-page__tabs',\n dynamicPageTabsAddShadow: 'fd-dynamic-page__tabs--add-shadow',\n dynamicPageContent: 'fd-dynamic-page__content',\n dynamicPageSummarizedTitleArea: 'fd-dynamic-page__summarized-title-area',\n dynamicPageSummarizedTitleAreaExtraLarge: 'fd-dynamic-page__summarized-title-area',\n dynamicPageSummarizedTitleAreaNoShadow: 'fd-dynamic-page__summarized-title-area--no-shadow',\n dynamicPageSummarizedTitle: 'fd-dynamic-page__summarized-title',\n dynamicPageSummarizedTitleCollapsed: 'fd-dynamic-page__summarized-title-area--collapsed'\n} as const;\n\nexport type DynamicPageBackgroundType = 'solid' | 'list' | 'transparent';\n\nexport type DynamicPageResponsiveSize = 'small' | 'medium' | 'large' | 'extra-large';\n","import { Renderer2 } from '@angular/core';\nimport { DynamicPageResponsiveSize } from './constants';\n\nexport const addClassNameToElement = (renderer: Renderer2, element: Element, className: string): void => {\n renderer.addClass(element, className);\n};\n\n/** @hidden Returns dynamic page size based on width\n * @param width - dynamic page window width\n **/\nexport function dynamicPageWidthToSize(width: number): DynamicPageResponsiveSize {\n if (width < 599) {\n return 'small';\n } else if (width < 1023) {\n return 'medium';\n } else if (width < 1439) {\n return 'large';\n }\n return 'extra-large';\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n Input,\n OnInit,\n Renderer2,\n ViewEncapsulation\n} from '@angular/core';\n\nimport { NgIf } from '@angular/common';\nimport { DYNAMIC_PAGE_CLASS_NAME } from '../constants';\nimport { addClassNameToElement } from '../utils';\n\n@Component({\n selector: 'fd-dynamic-page-content',\n templateUrl: './dynamic-page-content.component.html',\n styleUrls: ['./dynamic-page-content.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [NgIf]\n})\nexport class DynamicPageContentComponent implements OnInit {\n /**\n * label for the tab. If label is provided, tab navigation will be internally set up.\n */\n @Input()\n tabLabel: string;\n\n /**\n * a unique identifier for this content\n */\n @Input()\n id: string;\n\n /** @hidden */\n _showSpacer = false;\n\n /** @hidden */\n constructor(\n public readonly _renderer: Renderer2,\n public readonly elementRef: ElementRef<HTMLElement>,\n private readonly _cdr: ChangeDetectorRef\n ) {}\n\n /** @hidden */\n ngOnInit(): void {\n this._addClassNameToHostElement(DYNAMIC_PAGE_CLASS_NAME.dynamicPageContent);\n }\n\n /** @hidden */\n _toggleSpacer(state: boolean): void {\n this._showSpacer = state;\n\n this._cdr.markForCheck();\n }\n\n /** @hidden */\n private _addClassNameToHostElement(className: string): void {\n addClassNameToElement(this._renderer, this.elementRef.nativeElement, className);\n }\n}\n","<ng-content></ng-content>\n\n<div *ngIf=\"_showSpacer\" class=\"footer-spacer\"></div>\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'fd-dynamic-page-footer',\n template: '<ng-content></ng-content>',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true\n})\nexport class DynamicPageFooterComponent {}\n","import { Directive, TemplateRef, inject } from '@angular/core';\nimport { DynamicPageTitleDirectiveContext } from '../models/title-directive-context';\n\n@Directive({\n selector: '[fdDynamicPageHeaderSubtitle]',\n standalone: true\n})\nexport class DynamicPageHeaderSubtitleDirective {\n /** Template reference. */\n templateRef = inject<TemplateRef<DynamicPageTitleDirectiveContext>>(TemplateRef);\n\n /** @hidden */\n static ngTemplateContextGuard(\n dir: DynamicPageHeaderSubtitleDirective,\n ctx: DynamicPageTitleDirectiveContext\n ): ctx is DynamicPageTitleDirectiveContext {\n return true;\n }\n}\n","import { Directive, TemplateRef, inject } from '@angular/core';\nimport { DynamicPageTitleDirectiveContext } from '../models/title-directive-context';\n\n@Directive({\n selector: '[fdDynamicPageHeaderTitle]',\n standalone: true\n})\nexport class DynamicPageHeaderTitleDirective {\n /** Template reference. */\n templateRef = inject<TemplateRef<DynamicPageTitleDirectiveContext>>(TemplateRef);\n\n /** @hidden */\n static ngTemplateContextGuard(\n dir: DynamicPageHeaderTitleDirective,\n ctx: DynamicPageTitleDirectiveContext\n ): ctx is DynamicPageTitleDirectiveContext {\n return true;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject, Subject } from 'rxjs';\n\n@Injectable()\nexport class DynamicPageService {\n /** @hidden */\n collapsed = new BehaviorSubject<boolean>(false);\n\n /** @hidden */\n pinned = new BehaviorSubject<boolean>(false);\n\n /** @hidden */\n pixelsSizeChanged = new BehaviorSubject<number>(0);\n\n /** @hidden */\n subheaderVisibilityChange = new Subject<void>();\n\n /** @hidden */\n focusLayoutAction = new Subject<void>();\n\n /** @hidden */\n toggleCollapsed(): void {\n this.collapsed.next(!this.collapsed.value);\n }\n}\n","import { Directive, ElementRef } from '@angular/core';\n\n@Directive()\nexport class DynamicPageBaseActions {\n /** @hidden */\n addClassToToolbar(_class: string, elementRef: ElementRef): void {\n // adds global actions classes to its toolbar\n const toolbarEl = elementRef.nativeElement.querySelector('.fd-toolbar');\n if (toolbarEl) {\n toolbarEl.classList.add(_class);\n }\n }\n}\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ElementRef,\n Renderer2,\n ViewEncapsulation\n} from '@angular/core';\nimport { ToolbarComponent } from '@fundamental-ngx/core/toolbar';\nimport { DYNAMIC_PAGE_CLASS_NAME, DynamicPageResponsiveSize } from '../../constants';\nimport { DynamicPageBaseActions } from './dynamic-page-base-actions';\n\n@Component({\n selector: 'fd-dynamic-page-global-actions',\n template: '<ng-content></ng-content>',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n role: 'toolbar'\n },\n standalone: true\n})\nexport class DynamicPageGlobalActionsComponent extends DynamicPageBaseActions implements AfterContentInit {\n /** @hidden */\n @ContentChild(ToolbarComponent)\n _toolbarComponent: ToolbarComponent;\n\n /** @hidden */\n constructor(\n private _elementRef: ElementRef,\n private _renderer: Renderer2,\n private _changeDetRef: ChangeDetectorRef\n ) {\n super();\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n this.addClassToToolbar(DYNAMIC_PAGE_CLASS_NAME.dynamicPageToolbar, this._elementRef);\n }\n\n /** @hidden */\n _setSize(size: DynamicPageResponsiveSize): void {\n if (this._toolbarComponent) {\n this._handleOverflow(size === 'small');\n }\n }\n\n /** @hidden */\n private _handleOverflow(shouldBeHidden: boolean): void {\n this._toolbarComponent.forceOverflow = shouldBeHidden;\n this._toolbarComponent.shouldOverflow = shouldBeHidden;\n this._toolbarComponent.detectChanges();\n setTimeout(() => {\n this._toolbarComponent.updateCollapsibleItems();\n });\n }\n}\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ElementRef,\n Renderer2,\n ViewEncapsulation\n} from '@angular/core';\nimport { ToolbarComponent } from '@fundamental-ngx/core/toolbar';\nimport { Subject } from 'rxjs';\nimport { DYNAMIC_PAGE_CLASS_NAME } from '../../constants';\nimport { DynamicPageBaseActions } from './dynamic-page-base-actions';\n\n@Component({\n selector: 'fd-dynamic-page-layout-actions',\n template: '<ng-content></ng-content>',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n role: 'toolbar'\n },\n standalone: true\n})\nexport class DynamicPageLayoutActionsComponent extends DynamicPageBaseActions implements AfterContentInit {\n /** @hidden */\n @ContentChild(ToolbarComponent)\n toolbarComponent: ToolbarComponent;\n\n /** @hidden */\n private readonly _onDestroy$: Subject<void> = new Subject<void>();\n\n /** @hidden */\n constructor(\n public readonly elementRef: ElementRef,\n private _renderer: Renderer2,\n private _changeDetRef: ChangeDetectorRef\n ) {\n super();\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n this.addClassToToolbar(DYNAMIC_PAGE_CLASS_NAME.dynamicPageLayoutActionsToolbar, this.elementRef);\n this.addClassToToolbar(DYNAMIC_PAGE_CLASS_NAME.dynamicPageToolbar, this.elementRef);\n }\n}\n","import { NgIf, NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ViewEncapsulation } from '@angular/core';\nimport { ContentDensityObserver, contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';\nimport { ToolbarComponent, ToolbarItemDirective } from '@fundamental-ngx/core/toolbar';\nimport { DynamicPageResponsiveSize } from '../../constants';\n\n@Component({\n selector: 'fd-dynamic-page-title-content',\n template: `\n <ng-container *ngIf=\"_size === 'small'\">\n <fd-toolbar\n fdType=\"transparent\"\n (click)=\"$event.stopPropagation()\"\n class=\"dynamicPageLayoutContentToolbar\"\n [clearBorder]=\"true\"\n [forceOverflow]=\"true\"\n [shouldOverflow]=\"true\"\n >\n <div fd-toolbar-item>\n <ng-container *ngTemplateOutlet=\"templateContentRef\"></ng-container>\n </div>\n </fd-toolbar>\n </ng-container>\n\n <div class=\"fd-dynamic-page__title-content\" *ngIf=\"_size !== 'small'\">\n <ng-container *ngTemplateOutlet=\"templateContentRef\"></ng-container>\n </div>\n\n <ng-template #templateContentRef>\n <ng-content></ng-content>\n </ng-template>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [contentDensityObserverProviders()],\n standalone: true,\n imports: [NgIf, ToolbarComponent, ToolbarItemDirective, NgTemplateOutlet]\n})\nexport class DynamicPageTitleContentComponent {\n /** @hidden */\n _size: DynamicPageResponsiveSize;\n\n /** @hidden */\n constructor(private _changeDetRef: ChangeDetectorRef, readonly _contentDensityObserver: ContentDensityObserver) {}\n\n /** @hidden */\n _setSize(size: DynamicPageResponsiveSize): void {\n this._size = size;\n this._changeDetRef.detectChanges();\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ElementRef,\n Input,\n OnDestroy,\n OnInit,\n Renderer2,\n ViewEncapsulation\n} from '@angular/core';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { BreadcrumbComponent, FD_BREADCRUMB_COMPONENT } from '@fundamental-ngx/core/breadcrumb';\nimport { DYNAMIC_PAGE_HEADER_TOKEN, DynamicPageHeader } from '@fundamental-ngx/core/shared';\n\nimport { NgIf, NgTemplateOutlet } from '@angular/common';\nimport { IgnoreClickOnSelectionDirective, Nullable } from '@fundamental-ngx/cdk/utils';\nimport { DYNAMIC_PAGE_CLASS_NAME, DynamicPageResponsiveSize } from '../../constants';\nimport { DynamicPageHeaderSubtitleDirective } from '../../directives/dynamic-page-header-subtitle.directive';\nimport { DynamicPageHeaderTitleDirective } from '../../directives/dynamic-page-header-title.directive';\nimport { DynamicPageService } from '../../dynamic-page.service';\nimport { addClassNameToElement } from '../../utils';\nimport { DynamicPageGlobalActionsComponent } from '../actions/dynamic-page-global-actions.component';\nimport { DynamicPageLayoutActionsComponent } from '../actions/dynamic-page-layout-actions.component';\nimport { DynamicPageTitleContentComponent } from '../actions/dynamic-page-title-content.component';\n\nexport const ActionSquashBreakpointPx = 1280;\n\n@Component({\n selector: 'fd-dynamic-page-header',\n templateUrl: './dynamic-page-header.component.html',\n styleUrls: ['./dynamic-page-header.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[attr.tabindex]': '0'\n },\n providers: [\n {\n provide: DYNAMIC_PAGE_HEADER_TOKEN,\n useExisting: DynamicPageHeaderComponent\n }\n ],\n standalone: true,\n imports: [NgIf, NgTemplateOutlet, IgnoreClickOnSelectionDirective]\n})\nexport class DynamicPageHeaderComponent implements OnInit, AfterViewInit, OnDestroy, DynamicPageHeader {\n /** @hidden */\n _collapsed = false;\n\n /** Title property for dynamic page */\n @Input()\n title: string;\n\n /** Whether title should wrap instead of truncation. */\n @Input()\n titleWrap = false;\n\n /** Subtitle property for dynamic page */\n @Input()\n subtitle: string;\n\n /** Whether subtitle should wrap instead of truncation. */\n @Input()\n subtitleWrap = false;\n\n /**\n * @hidden\n * Template used to provide a custom content for the subtitle page header area.\n */\n @ContentChild(DynamicPageHeaderSubtitleDirective)\n _subtitleTemplate: Nullable<DynamicPageHeaderSubtitleDirective>;\n\n /**\n * @hidden\n * Template used to provide a custom content for the title page header area.\n */\n @ContentChild(DynamicPageHeaderTitleDirective)\n _titleTemplate: Nullable<DynamicPageHeaderSubtitleDirective>;\n\n /** @hidden */\n @ContentChild(FD_BREADCRUMB_COMPONENT)\n _breadcrumbComponent: BreadcrumbComponent;\n\n /** @hidden */\n @ContentChild(DynamicPageGlobalActionsComponent)\n _globalActions: DynamicPageGlobalActionsComponent;\n\n /** @hidden */\n @ContentChild(DynamicPageLayoutActionsComponent)\n _layoutActions: DynamicPageLayoutActionsComponent;\n\n /** @hidden */\n @ContentChild(DynamicPageTitleContentComponent)\n _contentToolbar: DynamicPageTitleContentComponent;\n\n /** @hidden */\n _actionsSquashed = false;\n\n /** @hidden */\n _size: DynamicPageResponsiveSize;\n\n /** @hidden **/\n private readonly _onDestroy$: Subject<void> = new Subject<void>();\n\n /** @hidden */\n constructor(\n private _elementRef: ElementRef<HTMLElement>,\n private _renderer: Renderer2,\n private _dynamicPageService: DynamicPageService,\n private _changeDetRef: ChangeDetectorRef\n ) {}\n\n /** @hidden */\n ngOnInit(): void {\n this._addClassNameToHostElement(DYNAMIC_PAGE_CLASS_NAME.dynamicPageTitleArea);\n this._listenToPageChanges();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._addCustomClassToBreadcrumb();\n\n this._dynamicPageService.collapsed.pipe(takeUntil(this._onDestroy$)).subscribe((collapsed) => {\n this._collapsed = collapsed;\n this._changeDetRef.markForCheck();\n });\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._onDestroy$.next();\n this._onDestroy$.complete();\n }\n\n /**\n * sets size which in turn adds corresponding padding for the size type.\n * size can be `small`, `medium`, `large`, or `extra-large`.\n */\n set size(sizeType: DynamicPageResponsiveSize) {\n this._setSize(sizeType);\n this._size = sizeType;\n }\n\n /** @hidden */\n stopPropagation(event: MouseEvent): void {\n event.stopPropagation();\n }\n\n /**\n * @hidden\n * sets the padding classes\n * @param sizeType\n */\n private _setSize(sizeType: DynamicPageResponsiveSize): void {\n setTimeout(() => {\n this._breadcrumbComponent?.onResize();\n this._globalActions?._setSize(sizeType);\n this._contentToolbar?._setSize(sizeType);\n this._changeDetRef.detectChanges();\n });\n }\n\n /** @hidden */\n private _addClassNameToHostElement(className: string): void {\n addClassNameToElement(this._renderer, this._elementRef.nativeElement, className);\n }\n\n /** @hidden */\n private _addClassNameToCustomElement(element: Element, className: string): void {\n addClassNameToElement(this._renderer, element, className);\n }\n\n /** @hidden */\n private _addCustomClassToBreadcrumb(): void {\n if (this._breadcrumbComponent) {\n this._addClassNameToCustomElement(\n this._breadcrumbComponent.elementRef.nativeElement,\n DYNAMIC_PAGE_CLASS_NAME.dynamicPageBreadcrumb\n );\n }\n }\n\n /** @hidden */\n private _listenToPageChanges(): void {\n this._dynamicPageService.pixelsSizeChanged.pipe(takeUntil(this._onDestroy$)).subscribe((pixels) => {\n const actionsSquashed: boolean = pixels < ActionSquashBreakpointPx;\n if (actionsSquashed !== this._actionsSquashed) {\n this._actionsSquashed = actionsSquashed;\n this._changeDetRef.detectChanges();\n }\n });\n }\n}\n","<div class=\"fd-dynamic-page__main-container\">\n <div class=\"fd-dynamic-page__breadcrumb-title-container\">\n <div class=\"fd-dynamic-page__breadcrumb-container\">\n <nav aria-label=\"Breadcrumbs\" class=\"fd-dynamic-page__breadcrumb-wrapper\" (click)=\"stopPropagation($event)\">\n <ng-content select=\"fd-breadcrumb\"></ng-content>\n </nav>\n <ng-container *ngIf=\"_actionsSquashed\">\n <ng-container *ngTemplateOutlet=\"dynamicPageLayoutActionsRef\"></ng-container>\n </ng-container>\n </div>\n <div class=\"fd-dynamic-page__title-container\">\n <ng-container *ngIf=\"_collapsed\">\n <ng-content select=\"fd-facet\"></ng-content>\n </ng-container>\n\n <div class=\"fd-dynamic-page__title-subtitle-container\">\n <div class=\"fd-dynamic-page__title-container\">\n <span\n class=\"fd-dynamic-page__title\"\n [class.fd-dynamic-page__title--wrap]=\"titleWrap\"\n fdkIgnoreClickOnSelection\n >\n <ng-template [ngTemplateOutlet]=\"_titleTemplate ? titleRef : defaultTitle\"></ng-template>\n </span>\n <ng-content select=\"fd-dynamic-page-title-content\"></ng-content>\n <div class=\"fd-dynamic-page__toolbar-container\" (click)=\"stopPropagation($event)\">\n <ng-container *ngTemplateOutlet=\"dynamicPageGlobalActionsRef\"></ng-container>\n <ng-container *ngIf=\"!_actionsSquashed\">\n <ng-container *ngTemplateOutlet=\"dynamicPageLayoutActionsRef\"></ng-container>\n </ng-container>\n </div>\n </div>\n <div\n *ngIf=\"_collapsed && (subtitle || _subtitleTemplate)\"\n class=\"fd-dynamic-page__subtitle\"\n [class.fd-dynamic-page__subtitle--wrap]=\"subtitleWrap\"\n fdkIgnoreClickOnSelection\n >\n <ng-container *ngTemplateOutlet=\"_subtitleTemplate ? subtitleRef : defaultSubtitle\"></ng-container>\n </div>\n </div>\n </div>\n </div>\n</div>\n<div\n *ngIf=\"!_collapsed && (subtitle || _subtitleTemplate)\"\n class=\"fd-dynamic-page__subtitle\"\n [class.fd-dynamic-page__subtitle--wrap]=\"subtitleWrap\"\n fdkIgnoreClickOnSelection\n>\n <ng-container *ngTemplateOutlet=\"_subtitleTemplate ? subtitleRef : defaultSubtitle\"></ng-container>\n</div>\n\n<ng-template #dynamicPageGlobalActionsRef>\n <ng-content select=\"fd-dynamic-page-global-actions\"></ng-content>\n</ng-template>\n<ng-template #dynamicPageLayoutActionsRef>\n <ng-content select=\"fd-dynamic-page-layout-actions\"></ng-content>\n</ng-template>\n\n<ng-template #titleRef>\n <ng-template\n [ngTemplateOutlet]=\"_titleTemplate!.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: _collapsed }\"\n ></ng-template>\n</ng-template>\n\n<ng-template #subtitleRef>\n <ng-container\n [ngTemplateOutlet]=\"_subtitleTemplate!.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: _collapsed }\"\n ></ng-container>\n</ng-template>\n\n<ng-template #defaultSubtitle>\n {{ subtitle }}\n</ng-template>\n\n<ng-template #titleRef>\n <ng-container\n [ngTemplateOutlet]=\"_titleTemplate!.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: _collapsed }\"\n ></ng-container>\n</ng-template>\n\n<ng-template #defaultTitle>\n {{ title }}\n</ng-template>\n","import { Injectable } from '@angular/core';\n\n/**\n * Default options for core dynamic-page\n */\n@Injectable({ providedIn: 'root' })\nexport class DynamicPageConfig {\n /**\n * aria label for expand/collapse button when the Dynamic Page is collapsed\n */\n expandLabel = 'Expand Header';\n\n /**\n * aria label for expand/collapse button when the Dynamic Page is expanded\n */\n collapseLabel = 'Collapse Header';\n\n /**\n * aria label for pin button when the Dynamic Page should be pinned\n */\n pinLabel = 'Pin Header';\n\n /**\n * aria label for pin button when the Panel should be unpinned\n */\n unpinLabel = 'Unpin Header';\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n Output,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { Nullable } from '@fundamental-ngx/cdk/utils';\nimport { distinctUntilChanged } from 'rxjs/operators';\n\nimport { NgIf } from '@angular/common';\nimport { ButtonComponent } from '@fundamental-ngx/core/button';\nimport { DynamicPageConfig } from '../../dynamic-page.config';\nimport { DynamicPageService } from '../../dynamic-page.service';\n\nlet dynamicPageSubHeaderId = 0;\n@Component({\n selector: 'fd-dynamic-page-subheader',\n templateUrl: './dynamic-page-subheader.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [NgIf, ButtonComponent]\n})\nexport class DynamicPageSubheaderComponent {\n /**\n * whether the header can be collapsed. True by default. If set to false, both pin/collapse buttons disappear\n * and the header stays visible\n */\n @Input()\n collapsible = true;\n\n /**\n * whether the header should be allowed to be pinned or unpinned. When set, the pin button shows up.\n * Pinning the header will make the header stay visible and the collapse button(if present) will disappear until unpinned.\n */\n @Input()\n pinnable = false;\n\n /**\n * the initial state of the header. Set to true if header should be collapsed.\n */\n @Input()\n set collapsed(collapsed: boolean) {\n this._handleCollapsedChange(collapsed);\n }\n\n get collapsed(): boolean {\n return this._collapsed;\n }\n\n /**\n * ARIA label for button when the header is collapsed\n */\n @Input()\n expandLabel: string = this._dynamicPageConfig.expandLabel;\n\n /**\n * ARIA label for button when the header is expanded\n */\n @Input()\n collapseLabel: string = this._dynamicPageConfig.collapseLabel;\n\n /** Header role */\n @Input()\n @HostBinding('attr.role')\n role = 'region';\n\n /**\n * id for header\n */\n @Input()\n @HostBinding('attr.id')\n id = `fd-dynamic-page-header-id-${dynamicPageSubHeaderId++}`;\n\n /**\n * id for collapsible header\n */\n collapsibleHeaderId = `${this.id}-collapsible`;\n /**\n * aria label for header\n */\n @Input()\n headerAriaLabel: Nullable<string>;\n\n /**\n * aria label for pin state of pin button\n */\n @Input()\n pinAriaLabel: string = this._dynamicPageConfig.pinLabel;\n\n /**\n * aria label for unpin state of pin button\n */\n @Input()\n unpinAriaLabel: string = this._dynamicPageConfig.unpinLabel;\n\n /** Collapse/Expand change event raised */\n @Output()\n collapsedChange = new EventEmitter<boolean>();\n\n /** Reference to page header content */\n @ViewChild('pincollapseContainer')\n pinCollapseContainer: ElementRef<HTMLElement>;\n\n /**\n * tracking if pin button is pinned\n */\n _pinned = false;\n\n /**\n * @hidden\n * tracking expand/collapse button\n */\n private _collapsed = false;\n\n /** @hidden */\n constructor(\n private _cd: ChangeDetectorRef,\n protected _dynamicPageConfig: DynamicPageConfig,\n private _dynamicPageService: DynamicPageService\n ) {\n this._dynamicPageService.collapsed\n .pipe(distinctUntilChanged())\n .subscribe((collapsed) => this._handleCollapsedChange(collapsed));\n }\n\n /**\n * toggles the state of the header and\n * handles expanded/collapsed event\n */\n toggleCollapse(): void {\n this._pinned = false;\n this._handleCollapsedChange(!this._collapsed);\n }\n\n /**\n * @hidden\n * click action on pin button\n */\n togglePinned(): void {\n this._pinned = !this._pinned;\n this._dynamicPageService.pinned.next(this._pinned);\n }\n\n /** @hidden */\n private _handleCollapsedChange(collapsed: boolean): void {\n if (collapsed === this._collapsed) {\n return;\n }\n\n this._collapsed = collapsed;\n this._dynamicPageService.collapsed.next(collapsed);\n this.collapsedChange.emit(this._collapsed);\n this._cd.detectChanges();\n this._dynamicPageService.subheaderVisibilityChange.next();\n }\n}\n","<div class=\"fd-dynamic-page__collapsible-header-container\">\n <div\n class=\"fd-dynamic-page__collapsible-header\"\n [attr.aria-label]=\"headerAriaLabel\"\n [attr.aria-hidden]=\"collapsed\"\n [attr.id]=\"collapsibleHeaderId\"\n role=\"region\"\n #headerContent\n >\n <ng-content></ng-content>\n </div>\n <div class=\"fd-dynamic-page__collapsible-header-visibility-container\" #pincollapseContainer>\n <ng-container *ngIf=\"collapsible\">\n <div class=\"fd-dynamic-page__collapsible-header-visibility-container--left-gradient\"></div>\n <div role=\"toolbar\" class=\"fd-dynamic-page__collapsible-header-visibility-container--button-group\">\n <button\n fd-button\n class=\"fd-dynamic-page__collapse-button\"\n aria-haspopup=\"true\"\n [ariaLabel]=\"collapsed ? expandLabel : collapseLabel\"\n [attr.title]=\"collapsed ? expandLabel : collapseLabel\"\n [attr.aria-expanded]=\"!collapsed\"\n [attr.aria-controls]=\"id\"\n (click)=\"toggleCollapse()\"\n >\n <i *ngIf=\"!collapsed\" class=\"sap-icon--slim-arrow-up\"></i>\n <i *ngIf=\"collapsed\" class=\"sap-icon--slim-arrow-down\"></i>\n </button>\n <button\n fd-button\n class=\"fd-dynamic-page__pin-button\"\n [ariaLabel]=\"_pinned ? unpinAriaLabel : pinAriaLabel\"\n [attr.title]=\"_pinned ? unpinAriaLabel : pinAriaLabel\"\n [toggled]=\"_pinned\"\n (click)=\"togglePinned()\"\n *ngIf=\"pinnable && !collapsed\"\n >\n <i class=\"sap-icon--pushpin-off\"></i>\n </button>\n </div>\n <div class=\"fd-dynamic-page__collapsible-header-visibility-container--right-gradient\"></div>\n </ng-container>\n </div>\n</div>\n","import { Directive, ElementRef } from '@angular/core';\n\n@Directive({\n selector: '[fdDynamicPageWrapper], [fd-dynamic-page-wrapper]',\n standalone: true\n})\nexport class DynamicPageWrapperDirective {\n /** @hidden */\n constructor(public elementRef: ElementRef<HTMLElement>) {}\n}\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n HostBinding,\n Inject,\n Input,\n OnDestroy,\n Optional,\n QueryList,\n Renderer2,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { Nullable, resizeObservable } from '@fundamental-ngx/cdk/utils';\nimport {\n FD_FLEXIBLE_COLUMN_LAYOUT_COMPONENT,\n FlexibleColumnLayoutComponent\n} from '@fundamental-ngx/core/flexible-column-layout';\nimport { TabListComponent } from '@fundamental-ngx/core/tabs';\nimport { DYNAMIC_PAGE_CLASS_NAME, DynamicPageBackgroundType, DynamicPageResponsiveSize } from './constants';\nimport { DynamicPageContentComponent } from './dynamic-page-content/dynamic-page-content.component';\nimport { DynamicPageFooterComponent } from './dynamic-page-footer/dynamic-page-footer.component';\nimport { DynamicPageHeaderComponent } from './dynamic-page-header/header/dynamic-page-header.component';\nimport { DynamicPageSubheaderComponent } from './dynamic-page-header/subheader/dynamic-page-subheader.component';\nimport { DynamicPageWrapperDirective } from './dynamic-page-wrapper.directive';\nimport { DynamicPageService } from './dynamic-page.service';\nimport { addClassNameToElement, dynamicPageWidthToSize } from './utils';\n\nimport { CdkScrollable } from '@angular/cdk/overlay';\nimport { NgIf } from '@angular/common';\nimport { ScrollbarDirective } from '@fundamental-ngx/core/scrollbar';\nimport { asyncScheduler, fromEvent, Observable, startWith, Subject } from 'rxjs';\nimport { debounceTime, map, observeOn, takeUntil } from 'rxjs/operators';\n\n@Component({\n selector: 'fd-dynamic-page',\n templateUrl: './dynamic-page.component.html',\n styleUrls: ['./dynamic-page.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [DynamicPageService],\n standalone: true,\n imports: [NgIf, CdkScrollable, ScrollbarDirective]\n})\nexport class DynamicPageComponent implements AfterViewInit, OnDestroy {\n /** Whether DynamicPage should snap on scroll */\n @Input()\n disableSnapOnScroll = false;\n\n /** Page role */\n @Input()\n @HostBinding('attr.role')\n role = 'region';\n\n /** aria label for the page */\n @Input()\n ariaLabel: Nullable<string>;\n\n /**\n * sets background for content to `list`, `transparent`, or `solid` background color.\n * Default is `solid`.\n */\n @Input()\n background: DynamicPageBackgroundType = 'solid';\n\n /** Whether DynamicPage should have responsive sides spacing changing with Page window width.\n * max-width: 599px - small\n * min-width: 600px and max-width: 1023px - medium\n * min-width: 1024px and max-width: 1439px - large\n * min-width: 1440px - extra large\n */\n @Input()\n autoResponsive = true;\n\n /**\n * sets size which in turn adds corresponding padding for the size type.\n * size can be `small`, `medium`, `large`, or `extra-large`.\n */\n @Input()\n set size(size: DynamicPageResponsiveSize) {\n this._size = size;\n this._propagateSizeToChildren();\n }\n\n get size(): DynamicPageResponsiveSize {\n return this._size;\n }\n\n /** @hidden */\n _size: DynamicPageResponsiveSize = 'extra-large';\n\n /** Offset in PX\n * Should be added, when there is something else at the bottom and dynamic page is not expanded to bottom's corners\n */\n @Input()\n offset = 0;\n\n /**\n * Whether dynamic page should be expanded in whole page.\n */\n @Input()\n expandContent = true;\n\n /** @hidden reference to header component */\n @ContentChild(DynamicPageSubheaderComponent)\n _pageSubheaderComponent: DynamicPageSubheaderComponent;\n\n /** @hidden reference to title component */\n @ContentChild(DynamicPageHeaderComponent)\n _headerComponent: DynamicPageHeaderComponent;\n\n /** @hidden reference to content component */\n @ContentChildren(DynamicPageContentComponent, { descendants: true })\n _contentComponent: QueryList<DynamicPageContentComponent>;\n\n /** @hidden reference to footer component */\n @ContentChild(DynamicPageFooterComponent)\n _footerComponent: DynamicPageContentComponent;\n\n /** @hidden reference to tab component */\n @ContentChild(TabListComponent)\n _tabComponent: TabListComponent;\n\n /** @hidden */\n @ViewChild('dynamicPageElement')\n _dynamicPageElement: ElementRef;\n\n /** @hidden */\n @ViewChild(ScrollbarDirective)\n _scrollbar: ScrollbarDirective;\n\n /** @hidden */\n _headerCollapsible = true;\n\n /** @hidden **/\n private readonly _onDestroy$: Subject<void> = new Subject<void>();\n\n /** @hidden */\n constructor(\n protected _cd: ChangeDetectorRef,\n private _elementRef: ElementRef<HTMLElement>,\n private _renderer: Renderer2,\n private _dynamicPageService: DynamicPageService,\n @Optional() @Inject(FD_FLEXIBLE_COLUMN_LAYOUT_COMPONENT) private _columnLayout: FlexibleColumnLayoutComponent,\n @Optional() private _dynamicPageWrapper: DynamicPageWrapperDirective\n ) {}\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._sizeChangeHandle();\n this._removeShadowWhenTabComponent();\n this._listenOnResize();\n this._listenOnCollapse();\n this._propagatePropertiesToChildren();\n this._setContentFooterSpacer();\n\n if (!this.disableSnapOnScroll && this._pageSubheaderComponent?.collapsible) {\n this._addScrollListeners();\n }\n\n if (this._columnLayout && this.autoResponsive) {\n this._listenToLayoutChange();\n }\n\n setTimeout(() => this._setContainerPositions());\n\n this._cd.detectChanges();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._onDestroy$.next();\n this._onDestroy$.complete();\n }\n\n /** toggle the visibility of the header on click of title area. */\n toggleCollapse(): void {\n if (this._headerCollapsible) {\n this._dynamicPageService.toggleCollapsed();\n }\n }\n\n /**\n * Triggers recheck for spacing and sizing of elements inside DynamicPage.\n */\n refreshSize(): void {\n this._setContainerPositions();\n this._sizeChangeHandle();\n }\n\n /** @hidden */\n _getScrollElement(): HTMLElement | null {\n return this._tabComponent?._scrollbar.elementRef.nativeElement || this._scrollbar?.elementRef.nativeElement;\n }\n\n /** Set the positions of the tabs and content with respect to the window */\n private _setContainerPositions(): void {\n this._setDynamicPageHeight();\n }\n\n /** @hidden */\n private _propagatePropertiesToChildren(): void {\n this._headerCollapsible = this._pageSubheaderComponent?.collapsible;\n this._propagateSizeToChildren();\n }\n\n /** @hidden\n * Functionality handling column layout changes,\n * - recalculate height of content element\n * - recheck size depending on width of DynamicPage\n */\n private _listenToLayoutChange(): void {\n this._columnLayout.layoutChange.pipe(debounceTime(50), takeUntil(this._onDestroy$)).subscribe(() => {\n this.refreshSize();\n this._sizeChangeHandle();\n });\n }\n\n /** @hidden */\n private _propagateSizeToChildren(): void {\n if (this._headerComponent) {\n this._headerComponent.size = this.size;\n }\n this._setContainerPositions();\n }\n\n /** @hidden */\n private _listenOnCollapse(): void {\n this._dynamicPageService.subheaderVisibilityChange\n .pipe(takeUntil(this._onDestroy$))\n .subscribe(() => this._setContainerPositions());\n }\n\n /** @hidden */\n private _getCalculatedFullHeight(element: HTMLElement): string | null {\n if (!element) {\n return null;\n }\n const distanceFromTop = element.getBoundingClientRect().top;\n return 'calc(100vh - ' + (distanceFromTop + this.offset) + 'px)';\n }\n\n /** @hidden */\n private _sizeChangeHandle(): void {\n if (!this._elementRef || !this.autoResponsive) {\n return;\n }\n const dynamicPageWidth = this._elementRef.nativeElement.getBoundingClientRect().width;\n this._dynamicPageService.pixelsSizeChanged.next(dynamicPageWidth);\n const size = dynamicPageWidthToSize(dynamicPageWidth);\n\n if (size !== this.size) {\n this.size = size;\n this._cd.detectChanges();\n }\n }\n\n /** @hidden */\n private _addScrollListeners(): void {\n const element = this._getScrollElement();\n if (element) {\n fromEvent(element, 'scroll')\n .pipe(debounceTime(10), takeUntil(this._onDestroy$))\n .subscribe(() => {\n const collapse =\n !this._dynamicPageService.pinned.value &&\n (element.scrollTop > 0 || element.scrollHeight <= element.clientHeight);\n this._dynamicPageService.collapsed.next(collapse);\n });\n }\n }\n\n /** @hidden Listen for window resize and adjust tab and content positions accordingly */\n private _listenOnResize(): void {\n const listener = this._dynamicPageWrapper ? this._listenToWrapperResize() : this._listenToWindowResize();\n\n listener.pipe(debounceTime(100), takeUntil(this._onDestroy$)).subscribe(() => {\n this._setContainerPositions();\n this._sizeChangeHandle();\n });\n }\n\n /** @hidden */\n private _listenToWrapperResize(): Observable<ResizeObserverEntry[]> {\n return resizeObservable(this._dynamicPageWrapper.elementRef.nativeElement);\n }\n\n /** @hidden */\n private _listenToWindowResize(): Observable<ResizeObserverEntry[]> {\n return fromEvent(window, 'resize').pipe(map(() => []));\n }\n\n /** @hidden\n * set top position of DynamicPage on scrolling\n */\n private _setDynamicPageHeight(): void {\n if (!this._dynamicPageElement || !this.expandContent) {\n return;\n }\n const element = this._dynamicPageElement.nativeElement;\n this._renderer.setStyle(element, 'height', this._getCalculatedFullHeight(element));\n }\n\n /** @hidden */\n private _removeShadowWhenTabComponent(): void {\n if (!this._pageSubheaderComponent?.collapsible || !this._tabComponent) {\n return;\n }\n\n const pinCollapseShadowElement = this._pageSubheaderComponent?.pinCollapseContainer;\n\n if (pinCollapseShadowElement) {\n addClassNameToElement(\n this._renderer,\n pinCollapseShadowElement.nativeElement,\n DYNAMIC_PAGE_CLASS_NAME.dynamicPageCollapsibleHeaderPinCollapseNoShadow\n );\n }\n }\n\n /** @hidden */\n private _setContentFooterSpacer(): void {\n this._contentComponent.changes\n .pipe(startWith(this._contentComponent.toArray()), observeOn(asyncScheduler), takeUntil(this._onDestroy$))\n .subscribe((components) => {\n components.forEach((content, index) => {\n /** show spacer when:\n * a) footer + no tabs = only last\n * b) footer + tabs, not stacked = all\n * c) footer + tabs, stacked = only last\n */\n content._toggleSpacer(\n this._footerComponent && (!this._tabComponent?.stackContent || index === components.length - 1)\n );\n });\n });\n }\n}\n","<section\n #dynamicPageElement\n class=\"fd-dynamic-page\"\n [class.fd-dynamic-page--sm]=\"size === 'small'\"\n [class.fd-dynamic-page--md]=\"size === 'medium'\"\n [class.fd-dynamic-page--lg]=\"size === 'large'\"\n [class.fd-dynamic-page--xl]=\"size === 'extra-large'\"\n [class.fd-dynamic-page--transparent-bg]=\"background === 'transparent'\"\n [class.fd-dynamic-page--list-bg]=\"background === 'list'\"\n [attr.aria-label]=\"ariaLabel\"\n>\n <header class=\"fd-dynamic-page__header\" [class.fd-dynamic-page__header--not-collapsible]=\"!_headerCollapsible\">\n <div>\n <div (click)=\"toggleCollapse()\" (keydown.enter)=\"toggleCollapse()\">\n <ng-content select=\"fd-dynamic-page-header\"></ng-content>\n </div>\n <ng-content select=\"fd-dynamic-page-subheader\"></ng-content>\n </div>\n </header>\n\n <ng-content select=\"fd-tab-list\"></ng-content>\n\n <div fd-scrollbar *ngIf=\"!_tabComponent\">\n <ng-content select=\"fd-dynamic-page-content\"></ng-content>\n </div>\n\n <div *ngIf=\"_tabComponent\">\n <ng-content select=\"fd-dynamic-page-content\"></ng-content>\n </div>\n\n <footer>\n <ng-content select=\"fd-dynamic-page-footer\"></ng-content>\n </footer>\n</section>\n","import { NgModule } from '@angular/core';\n\nimport { DynamicPageHeaderSubtitleDirective } from './directives/dynamic-page-header-subtitle.directive';\nimport { DynamicPageHeaderTitleDirective } from './directives/dynamic-page-header-title.directive';\nimport { DynamicPageContentComponent } from './dynamic-page-content/dynamic-page-content.component';\nimport { DynamicPageFooterComponent } from './dynamic-page-footer/dynamic-page-footer.component';\nimport { DynamicPageGlobalActionsComponent } from './dynamic-page-header/actions/dynamic-page-global-actions.component';\nimport { DynamicPageLayoutActionsComponent } from './dynamic-page-header/actions/dynamic-page-layout-actions.component';\nimport { DynamicPageTitleContentComponent } from './dynamic-page-header/actions/dynamic-page-title-content.component';\nimport { DynamicPageHeaderComponent } from './dynamic-page-header/header/dynamic-page-header.component';\nimport { DynamicPageSubheaderComponent } from './dynamic-page-header/subheader/dynamic-page-subheader.component';\nimport { DynamicPageWrapperDirective } from './dynamic-page-wrapper.directive';\nimport { DynamicPageComponent } from './dynamic-page.component';\n\nconst components = [\n DynamicPageComponent,\n DynamicPageHeaderComponent,\n DynamicPageGlobalActionsComponent,\n DynamicPageLayoutActionsComponent,\n DynamicPageSubheaderComponent,\n DynamicPageContentComponent,\n DynamicPageFooterComponent,\n DynamicPageTitleContentComponent,\n DynamicPageWrapperDirective,\n DynamicPageHeaderSubtitleDirective,\n DynamicPageHeaderTitleDirective\n];\n\n@NgModule({\n imports: [...components],\n exports: [...components]\n})\nexport class DynamicPageModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.DynamicPageService","i1.DynamicPageConfig","i2.DynamicPageService","i2.DynamicPageWrapperDirective"],"mappings":"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"}
@@ -1386,8 +1386,6 @@ class MenuComponent extends BasePopoverClass {
1386
1386
  * initialization and return focus to the previous activeElement upon destruction.
1387
1387
  */
1388
1388
  this.focusAutoCapture = true;
1389
- /** Should fd-scrollbar have tabindex*/
1390
- this.tabbableScrollbar = false;
1391
1389
  /** Open submenu on hover after given milliseconds */
1392
1390
  this.openOnHoverTime = 0;
1393
1391
  /** Display menu without integrated popover */
@@ -1607,7 +1605,7 @@ class MenuComponent extends BasePopoverClass {
1607
1605
  }
1608
1606
  }
1609
1607
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: MenuComponent, deps: [{ token: i0.ElementRef }, { token: i1$1.DialogConfig, optional: true }, { token: i0.Renderer2 }, { token: MenuService }, { token: i0.ChangeDetectorRef }, { token: i3$1.PopoverService }, { token: i0.Injector }, { token: i0.ViewContainerRef }, { token: i3.DynamicComponentService, optional: true }, { token: i5$1.ContentDensityObserver }], target: i0.ɵɵFactoryTarget.Component }); }
1610
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: MenuComponent, isStandalone: true, selector: "fd-menu", inputs: { mobile: "mobile", disabled: "disabled", focusTrapped: "focusTrapped", focusAutoCapture: "focusAutoCapture", tabbableScrollbar: "tabbableScrollbar", openOnHoverTime: "openOnHoverTime", mobileConfig: "mobileConfig", ariaLabel: "ariaLabel", ariaLabelledby: "ariaLabelledby", id: "id" }, outputs: { activePath: "activePath" }, providers: [
1608
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: MenuComponent, isStandalone: true, selector: "fd-menu", inputs: { mobile: "mobile", disabled: "disabled", focusTrapped: "focusTrapped", focusAutoCapture: "focusAutoCapture", openOnHoverTime: "openOnHoverTime", mobileConfig: "mobileConfig", ariaLabel: "ariaLabel", ariaLabelledby: "ariaLabelledby", id: "id" }, outputs: { activePath: "activePath" }, providers: [
1611
1609
  MenuService,
1612
1610
  PopoverService,
1613
1611
  DynamicComponentService,
@@ -1642,8 +1640,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImpor
1642
1640
  type: Input
1643
1641
  }], focusAutoCapture: [{
1644
1642
  type: Input
1645
- }], tabbableScrollbar: [{
1646
- type: Input
1647
1643
  }], openOnHoverTime: [{
1648
1644
  type: Input
1649
1645
  }], mobileConfig: [{