@fundamental-ngx/core 0.62.3-rc.4 → 0.62.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/fundamental-ngx-core-breadcrumb.mjs +1 -1
- package/fesm2022/fundamental-ngx-core-breadcrumb.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-form.mjs +1 -1
- package/fesm2022/fundamental-ngx-core-form.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-inline-help.mjs +5 -2
- package/fesm2022/fundamental-ngx-core-inline-help.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-menu.mjs +6 -2
- package/fesm2022/fundamental-ngx-core-menu.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-shellbar.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-shellbar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-tabs.mjs +1 -1
- package/fesm2022/fundamental-ngx-core-tabs.mjs.map +1 -1
- package/package.json +3 -3
- package/types/fundamental-ngx-core-inline-help.d.ts +4 -1
- package/types/fundamental-ngx-core-menu.d.ts +4 -1
|
@@ -836,7 +836,7 @@ class TabListComponent {
|
|
|
836
836
|
provide: FD_TABLIST,
|
|
837
837
|
useExisting: TabListComponent
|
|
838
838
|
}
|
|
839
|
-
], queries: [{ propertyName: "tabPanels", predicate: i0.forwardRef(() => TabPanelComponent) }], viewQueries: [{ propertyName: "overflowTrigger", first: true, predicate: TabItemExpandComponent, descendants: true, read: ElementRef }, { propertyName: "headerContainer", first: true, predicate: ["headerContainer"], descendants: true, read: ElementRef }, { propertyName: "_scrollbar", first: true, predicate: ScrollbarDirective, descendants: true }, { propertyName: "menu", first: true, predicate: ["menu"], descendants: true, read: MenuComponent }, { propertyName: "_overflowLayout", first: true, predicate: OverflowLayoutComponent, descendants: true }, { propertyName: "_scrollSpy", first: true, predicate: ["scrollSpy"], descendants: true, read: ScrollSpyDirective }, { propertyName: "tabHeaderLinks", predicate: TabLinkDirective, descendants: true }, { propertyName: "tabHeaders", predicate: TabItemDirective, descendants: true }], ngImport: i0, template: "<div #headerContainer role=\"tablist\" class=\"fd-tabs\" [class]=\"(mode ? 'fd-tabs--' + mode : '') + (' fd-tabs--' + size)\">\n <fd-overflow-layout\n [maxVisibleItems]=\"maxVisibleTabs\"\n [enableKeyboardNavigation]=\"true\"\n navigationTrigger=\"keydown\"\n (hiddenItemsCount)=\"hiddenItemsCount.emit($event)\"\n (visibleItemsCount)=\"visibleItemsCount.emit($event)\"\n >\n @for (tab of _tabArray; track tab; let i = $index; let last = $last) {\n <div\n fd-tab-item\n *fdOverflowItemRef=\"tab\"\n fdOverflowLayoutItem\n [forceVisibility]=\"tab.panel._forcedVisibility\"\n [header]=\"tab.isHeader\"\n [tabItemState]=\"tab.tabState\"\n >\n <a\n fd-tab-link\n role=\"tab\"\n [id]=\"tab.id\"\n [attr.aria-controls]=\"tab.panelId\"\n [attr.aria-label]=\"tab.ariaLabel || null\"\n [attr.aria-labelledby]=\"!tab.ariaLabel && tab.ariaLabelledBy ? tab.ariaLabelledBy : null\"\n fdOverflowLayoutFocusableItem\n [focusable]=\"tab.active\"\n [navigable]=\"!tab.disabled\"\n [active]=\"tab.active\"\n [disabled]=\"tab.disabled\"\n (keydown)=\"_tabHeaderKeydownHandler($event, tab.panel)\"\n (click)=\"_tabHeaderClickHandler(tab.panel)\"\n >\n <ng-template [ngTemplateOutlet]=\"tab.titleTemplate || null\"></ng-template>\n @if (!tab.titleTemplate) {\n @switch (mode) {\n @case ('filter') {\n @if (tab.isHeader) {\n <span fd-tab-header>\n @if (tab.count) {\n <span fd-tab-counter-header>{{ tab.count }}</span>\n }\n @if (tab.title) {\n <span fd-tab-label>{{ tab.title }}</span>\n }\n </span>\n }\n @if (!tab.isHeader) {\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n <span fd-tab-label>{{ tab.title }}</span>\n }\n }\n @case ('icon-only') {\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n }\n @case ('process') {\n @if (tab.glyph) {\n <span fd-tab-icon [icon]=\"tab.glyph\"></span>\n }\n <div fd-tab-process>\n @if (tab.count) {\n <span fd-tab-label>{{ tab.count }}</span>\n }\n @if (tab.title) {\n <span fd-tab-label>{{ tab.title }}</span>\n }\n </div>\n }\n @default {\n @if (tab.count) {\n <p fd-tab-count>{{ tab.count }}</p>\n }\n <span fd-tab-tag>{{ tab.title }}</span>\n }\n }\n }\n </a>\n @if (mode === 'process' && !last) {\n <div fd-tab-process-icon></div>\n }\n </div>\n @if (tab.isHeader) {\n <div fd-tab-separator></div>\n }\n }\n <ng-container *fdOverflowExpand=\"let tabs; items: _tabArray\">\n @if (tabs.length > 0) {\n <fd-item-expand [fdMenuTrigger]=\"menu\" (keydown)=\"_onTriggerKeydown($event, menu)\"> </fd-item-expand>\n }\n <fd-menu #menu>\n @for (tab of tabs; track tab) {\n <li fd-menu-item (onSelect)=\"_overflowingTabHeaderClickHandler(tab.item.panel)\">\n <div fd-menu-interactive>\n <ng-template\n [ngTemplateOutlet]=\"\n !tab.item.titleTemplate && mode === 'icon-only'\n ? iconOnlyTemplate\n : tab.item.titleTemplate || textTitle\n \"\n [ngTemplateOutletContext]=\"{ $implicit: tab.item }\"\n ></ng-template>\n </div>\n </li>\n }\n </fd-menu>\n </ng-container>\n </fd-overflow-layout>\n</div>\n<div\n class=\"fd-tabs__content\"\n [style.max-height]=\"maxContentHeight\"\n fdScrollSpy\n #scrollSpy=\"fdScrollSpy\"\n fd-scrollbar\n [trackedTags]=\"['fd-tab']\"\n [scrollSpyDisabled]=\"_disableScrollSpy\"\n (spyChange)=\"highlightActiveTab($event?.id)\"\n>\n <ng-content></ng-content>\n</div>\n<ng-template #textTitle let-tab>\n <span fd-menu-title>{{ tab.title }}</span>\n</ng-template>\n<ng-template #iconOnlyTemplate let-tab>\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n</ng-template>\n", styles: [".fd-tabs{--fdTabs_Icon_Size:1.125rem;--fdTabs_Icon_Selection_Height:2.625rem;--fdTabs_Label_Padding_Bottom:.375rem;--fdTabs_Filter_Link_Height:5.5rem;border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-padding-start:0;background-color:var(--sapObjectHeader_Background);border-color:var(--sapObjectHeader_BorderColor);-webkit-box-shadow:var(--sapContent_HeaderShadow);box-shadow:var(--sapContent_HeaderShadow);color:var(--sapContent_LabelColor);list-style:none;padding-inline-start:0}.fd-tabs:after,.fd-tabs:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__count{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;line-height:1rem;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-padding-after:.125rem;color:var(--sapContent_LabelColor);padding-block-end:.125rem}.fd-tabs__count:after,.fd-tabs__count:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__link{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);cursor:pointer;display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;line-height:1rem;margin-block:0;margin-inline:0;padding-block:0;padding-block:.875rem;padding-inline:0;padding-inline:.75rem;position:relative;text-decoration:none;-webkit-transition:0s;transition:0s}.fd-tabs__link:after,.fd-tabs__link:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__link.is-selected .fd-tabs__icon,.fd-tabs__link[aria-selected=true] .fd-tabs__icon{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__link.is-selected .fd-tabs__icon:after,.fd-tabs__link.is-selected .fd-tabs__tag:after,.fd-tabs__link[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__link[aria-selected=true] .fd-tabs__tag:after{background-color:var(--fdIcon_Tab_Bar_Selection_Bar_Color)}.fd-tabs__link.is-focus,.fd-tabs__link:focus{-webkit-box-shadow:none;box-shadow:none;outline:none;z-index:5}.fd-tabs__link.is-focus .fd-tabs__icon:before,.fd-tabs__link.is-focus .fd-tabs__tag:before,.fd-tabs__link:focus .fd-tabs__icon:before,.fd-tabs__link:focus .fd-tabs__tag:before{content:\"\";inset:0;outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth);outline-offset:var(--sapContent_FocusWidth);position:absolute}.fd-tabs__item{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;margin-inline:.25rem;padding-block:0;padding-inline:0;position:relative}.fd-tabs__item:after,.fd-tabs__item:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__item.is-selected .fd-tabs__tag,.fd-tabs__item[aria-selected=true] .fd-tabs__tag{color:var(--fdIcon_Tab_Bar_Selection_Color)}.fd-tabs__item.is-selected .fd-tabs__icon,.fd-tabs__item[aria-selected=true] .fd-tabs__icon{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item.is-selected .fd-tabs__icon:after,.fd-tabs__item.is-selected .fd-tabs__link:after,.fd-tabs__item.is-selected .fd-tabs__tag:after,.fd-tabs__item[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item[aria-selected=true] .fd-tabs__tag:after{background-color:var(--fdIcon_Tab_Bar_Selection_Bar_Color)}.fd-tabs__item--error .fd-tabs__icon{border-color:var(--sapErrorColor);color:var(--sapErrorColor)}.fd-tabs__item--error .fd-tabs__link .fd-tabs__tag{color:var(--sapErrorColor)}.fd-tabs__item--error.is-selected .fd-tabs__icon,.fd-tabs__item--error[aria-selected=true] .fd-tabs__icon{background-color:var(--sapErrorColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--error.is-selected .fd-tabs__icon:after,.fd-tabs__item--error.is-selected .fd-tabs__link:after,.fd-tabs__item--error.is-selected .fd-tabs__tag:after,.fd-tabs__item--error[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--error[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--error[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapErrorColor)}.fd-tabs__item--warning .fd-tabs__icon{border-color:var(--sapWarningColor);color:var(--sapWarningColor)}.fd-tabs__item--warning .fd-tabs__link .fd-tabs__tag{color:var(--sapWarningColor)}.fd-tabs__item--warning.is-selected .fd-tabs__icon,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__icon{background-color:var(--sapWarningColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--warning.is-selected .fd-tabs__icon:after,.fd-tabs__item--warning.is-selected .fd-tabs__link:after,.fd-tabs__item--warning.is-selected .fd-tabs__tag:after,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapWarningColor)}.fd-tabs__item--success .fd-tabs__icon{border-color:var(--sapSuccessColor);color:var(--sapSuccessColor)}.fd-tabs__item--success .fd-tabs__link .fd-tabs__tag{color:var(--sapSuccessColor)}.fd-tabs__item--success.is-selected .fd-tabs__icon,.fd-tabs__item--success[aria-selected=true] .fd-tabs__icon{background-color:var(--sapSuccessColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--success.is-selected .fd-tabs__icon:after,.fd-tabs__item--success.is-selected .fd-tabs__link:after,.fd-tabs__item--success.is-selected .fd-tabs__tag:after,.fd-tabs__item--success[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--success[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--success[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapSuccessColor)}.fd-tabs__item--information .fd-tabs__icon{border-color:var(--sapInformationColor);color:var(--sapInformationColor)}.fd-tabs__item--information .fd-tabs__link .fd-tabs__tag{color:var(--sapInformationColor)}.fd-tabs__item--information.is-selected .fd-tabs__icon,.fd-tabs__item--information[aria-selected=true] .fd-tabs__icon{background-color:var(--sapInformationColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--information.is-selected .fd-tabs__icon:after,.fd-tabs__item--information.is-selected .fd-tabs__link:after,.fd-tabs__item--information.is-selected .fd-tabs__tag:after,.fd-tabs__item--information[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--information[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--information[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapInformationColor)}.fd-tabs__item--neutral .fd-tabs__icon{border-color:var(--sapNeutralColor);color:var(--sapNeutralColor)}.fd-tabs__item--neutral .fd-tabs__link .fd-tabs__tag{color:var(--sapNeutralColor)}.fd-tabs__item--neutral.is-selected .fd-tabs__icon,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__icon{background-color:var(--sapNeutralColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--neutral.is-selected .fd-tabs__icon:after,.fd-tabs__item--neutral.is-selected .fd-tabs__link:after,.fd-tabs__item--neutral.is-selected .fd-tabs__tag:after,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapNeutralColor)}.fd-tabs__item:first-child{-webkit-margin-start:0;margin-inline-start:0}.fd-tabs__item:first-child .fd-tabs__link{-webkit-margin-start:.1875rem;margin-inline-start:.1875rem;-webkit-padding-start:0;padding-inline-start:0}.fd-tabs__icon{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:transparent;border:var(--fdIcon_Tab_Bar_Icon_Border_Weight) solid var(--fdIcon_Tab_Bar_Icon_Border_Color);border-radius:50%;color:var(--fdIcon_Tab_Bar_Inactive_Tab_Icon_Color);height:var(--fdTabs_Icon_Selection_Height);margin-block:0;margin-inline:.188rem;position:relative;width:var(--fdTabs_Icon_Selection_Height)}.fd-tabs__icon:after,.fd-tabs__icon:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__icon [class*=sap-icon],.fd-tabs__icon[class*=sap-icon]{background:inherit;border-radius:inherit;color:inherit;font-size:inherit;font-size:var(--fdTabs_Icon_Size);line-height:1}.fd-tabs__icon:after{border-radius:.125rem .125rem 0 0;bottom:-.875rem;content:\"\";display:inline-block;height:var(--fdIcon_Tab_Bar_Selection_Bar_Height);left:-.1875rem;position:absolute;-webkit-transition:all .125s ease-in;transition:all .125s ease-in;width:calc(100% + .375rem)}.fd-tabs__tag{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:inline-block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;line-height:1rem;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;position:relative}.fd-tabs__tag:after,.fd-tabs__tag:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__tag:after{border-radius:.125rem .125rem 0 0;bottom:-.875rem;content:\"\";display:inline-block;height:var(--fdIcon_Tab_Bar_Selection_Bar_Height);left:-.1875rem;position:absolute;-webkit-transition:all .125s ease-in;transition:all .125s ease-in;width:calc(100% + .375rem)}.fd-tabs__panel{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-tabs__panel:after,.fd-tabs__panel:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__panel[aria-expanded=false]{display:none}.fd-tabs__panel.is-expanded,.fd-tabs__panel[aria-expanded=true]{display:block}.fd-tabs__counter-header{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:1.5rem;font-weight:400;forced-color-adjust:none;line-height:normal;line-height:1.5rem;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-padding-end:.5rem;padding-inline-end:.5rem}.fd-tabs__counter-header:after,.fd-tabs__counter-header:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__overflow{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-margin-start:auto;margin-inline-start:auto}.fd-tabs__overflow:after,.fd-tabs__overflow:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__overflow [class*=sap-icon],.fd-tabs__overflow[class*=sap-icon]{background:inherit;border-radius:inherit;color:inherit;font-size:inherit;line-height:1}.fd-tabs__process-icon{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_NonInteractiveIconColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:1rem;font-weight:400;forced-color-adjust:none;line-height:normal;line-height:1;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;padding-inline:.5rem}.fd-tabs__process-icon:after,.fd-tabs__process-icon:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__process-icon:before{content:\"\\e0c7\";font-family:SAP-icons;text-align:center;text-decoration:inherit;text-rendering:optimizeLegibility;text-transform:none}.fd-tabs__label{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-padding-start:.125rem;color:var(--sapContent_LabelColor);font-size:var(--sapFontSmallSize);max-width:100%;padding-inline-start:.125rem}.fd-tabs__label:after,.fd-tabs__label:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__label:first-child{-webkit-padding-after:var(--fdTabs_Label_Padding_Bottom);padding-block-end:var(--fdTabs_Label_Padding_Bottom)}.fd-tabs__separator{border:0;border-right:solid var(--sapGroup_TitleBorderColor);border-right-width:.0625rem;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:2rem;line-height:normal;line-height:2rem;margin-block:0;margin-inline:0;margin-inline:.25rem;padding-block:0;padding-inline:0}.fd-tabs__separator:after,.fd-tabs__separator:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__header{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.fd-tabs__header:after,.fd-tabs__header:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__header .fd-tabs__label{max-width:4rem}.fd-tabs--filter .fd-tabs__count,.fd-tabs--icon-only .fd-tabs__count,.fd-tabs--process .fd-tabs__count{font-size:var(--sapFontSmallSize)}.fd-tabs--filter .fd-tabs__item:first-child .fd-tabs__link,.fd-tabs--icon-only .fd-tabs__item:first-child .fd-tabs__link,.fd-tabs--process .fd-tabs__item:first-child .fd-tabs__link{margin-block:0;margin-inline:0}.fd-tabs--icon-only .fd-tabs__link,.fd-tabs--process .fd-tabs__link{padding-block:1rem 1rem}.fd-tabs--icon-only .fd-tabs__icon:after,.fd-tabs--process .fd-tabs__icon:after{bottom:-1.0625rem}.fd-tabs--filter .fd-tabs__count,.fd-tabs--icon-only .fd-tabs__count{left:calc(100% + .1875rem);position:absolute;top:0}.fd-tabs--filter[dir=rtl] .fd-tabs__count,.fd-tabs--icon-only[dir=rtl] .fd-tabs__count,[dir=rtl] .fd-tabs--filter .fd-tabs__count,[dir=rtl] .fd-tabs--icon-only .fd-tabs__count{left:auto;right:calc(100% + .1875rem)}.fd-tabs--process .fd-tabs__item{margin-block:0;margin-inline:0 .25rem}.fd-tabs--process .fd-tabs__item,.fd-tabs--process .fd-tabs__link{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.fd-tabs--process .fd-tabs__link{padding-inline:0}.fd-tabs--process .fd-tabs__icon{margin-block:0;margin-inline:.1875rem}.fd-tabs--process .fd-tabs__label{line-height:.875rem;max-width:7.5rem;overflow:hidden;white-space:nowrap}.fd-tabs--process[dir=rtl] .fd-tabs__item,[dir=rtl] .fd-tabs--process .fd-tabs__item{margin-block:0;margin-inline:.25rem 0}.fd-tabs--process[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link,[dir=rtl] .fd-tabs--process .fd-tabs__item:first-child .fd-tabs__link{padding-inline:0}.fd-tabs--filter{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.fd-tabs--filter .fd-tabs__item{margin-block:0;margin-inline:0;padding-block:0;padding-inline:.25rem;width:5.375rem}.fd-tabs--filter .fd-tabs__item--header{width:auto}.fd-tabs--filter .fd-tabs__icon{-webkit-margin-after:.375rem;margin-block-end:.375rem}.fd-tabs--filter .fd-tabs__icon:after{content:none}.fd-tabs--filter .fd-tabs__label{line-height:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-tabs--filter .fd-tabs__link{display:-webkit-box;display:-ms-flexbox;display:flex;height:var(--fdTabs_Filter_Link_Height);padding-block:.875rem .625rem;padding-inline:.188rem;text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;position:relative}.fd-tabs--filter .fd-tabs__link:after{border-radius:.125rem .125rem 0 0;bottom:-.875rem;bottom:0;content:\"\";display:inline-block;height:var(--fdIcon_Tab_Bar_Selection_Bar_Height);left:-.1875rem;position:absolute;-webkit-transition:all .125s ease-in;transition:all .125s ease-in;width:calc(100% + .375rem)}.fd-tabs--filter .fd-tabs__link.is-focus,.fd-tabs--filter .fd-tabs__link:focus{-webkit-box-shadow:none;box-shadow:none;outline:none;z-index:5}.fd-tabs--filter[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link,[dir=rtl] .fd-tabs--filter .fd-tabs__item:first-child .fd-tabs__link{padding-inline:.188rem}.fd-tabs[class*=-compact],.fd-tabs[class*=-condensed],[class*=-compact] .fd-tabs:not([class*=-cozy]),[class*=-condensed] .fd-tabs:not([class*=-cozy]){--fdTabs_Icon_Size:1.125rem;--fdTabs_Icon_Selection_Height:1.875rem;--fdTabs_Label_Padding_Bottom:.25rem;--fdTabs_Filter_Link_Height:4.75rem}.fd-tabs--s{padding-block:0;padding-inline:1rem}.fd-tabs--l,.fd-tabs--m{padding-block:0;padding-inline:2rem}.fd-tabs--xl,.fd-tabs--xxl{padding-block:0;padding-inline:3rem}.fd-tabs[dir=rtl] .fd-tabs__process-icon,[dir=rtl] .fd-tabs .fd-tabs__process-icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fd-tabs__process{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-tabs__process:after,.fd-tabs__process:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs-custom{display:flex;flex-direction:column;height:100%}.fd-tabs-custom .is-disabled{pointer-events:none;opacity:.4}.fd-tabs{flex-grow:0;flex-wrap:nowrap}.fd-tabs__content{overflow-y:auto;flex-grow:1}.fd-tabs__item{flex-shrink:0}.fd-tabs__tag{white-space:nowrap}.fd-tabs__wrapper{flex-grow:1;display:flex;flex-wrap:wrap;align-items:center}.fd-tabs__wrapper--collapsible{overflow:hidden;flex-wrap:nowrap}.fd-tabs .fd-overflow-layout__items-container .fd-tabs__item:first-child{margin-left:.25rem}.fd-tabs .fd-overflow-layout__items-container .fd-tabs__item:first-child .fd-tabs__link{margin:0;padding:.875rem .75rem}.fd-tabs .fd-overflow-layout__items-container .fd-overflow-layout__item--first .fd-tabs__item{margin-left:0}.fd-tabs .fd-overflow-layout__items-container .fd-overflow-layout__item--first .fd-tabs__item .fd-tabs__link{margin-left:.1875rem;padding-left:0}\n/*! Bundled license information:\n\nfundamental-styles/dist/tabs.css:\n (*!\n * Fundamental Library Styles v0.41.6\n * Copyright (c) 2026 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *)\n*/\n"], dependencies: [{ kind: "component", type: OverflowLayoutComponent, selector: "fd-overflow-layout", inputs: ["maxVisibleItems", "navigationTrigger", "showMorePosition", "renderShowMoreButton", "reverseHiddenItems", "enableKeyboardNavigation", "ariaRole", "moreItemsButtonText"], outputs: ["visibleItemsCount", "hiddenItemsCount", "hiddenItemsChange"] }, { kind: "directive", type: OverflowItemRefDirective, selector: "[fdOverflowItemRef]", inputs: ["fdOverflowItemRef"] }, { kind: "directive", type: TabItemDirective, selector: "[fd-tab-item]", inputs: ["class", "tabItemState", "header", "disabled", "fdTabItemClass"] }, { kind: "directive", type: OverflowLayoutItemDirective, selector: "[fdOverflowLayoutItem]", inputs: ["forceVisibility"], outputs: ["hiddenChange"] }, { kind: "directive", type: TabLinkDirective, selector: "[fd-tab-link]", inputs: ["active", "disabled"], outputs: ["keyDown", "focused"] }, { kind: "directive", type: OverflowLayoutFocusableItemDirective, selector: "[fdOverflowLayoutFocusableItem], [fdOverflowLayoutItem][focusable]", inputs: ["focusable", "navigable"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: TabHeaderDirective, selector: "[fdTabHeader], [fd-tab-header]" }, { kind: "directive", type: TabCounterHeaderDirective, selector: "[fdTabCounterHeader], [fd-tab-counter-header]" }, { kind: "directive", type: TabLabelDirective, selector: "[fdTabLabel], [fd-tab-label]" }, { kind: "component", type: TabIconComponent, selector: "[fd-tab-icon]", inputs: ["class", "icon", "iconFont"] }, { kind: "directive", type: TabCountDirective, selector: "[fdTabCount], [fd-tab-count]" }, { kind: "directive", type: TabProcessDirective, selector: "[fdTabProcess], [fd-tab-process]" }, { kind: "directive", type: TabTagDirective, selector: "[fdTabTag], [fd-tab-tag]" }, { kind: "directive", type: TabProcessIconDirective, selector: "[fdTabProcessIcon], [fd-tab-process-icon]" }, { kind: "directive", type: TabSeparatorDirective, selector: "[fdTabSeparator], [fd-tab-separator]" }, { kind: "directive", type: OverflowExpandDirective, selector: "[fdOverflowExpand]", inputs: ["fdOverflowExpandItems"] }, { kind: "component", type: TabItemExpandComponent, selector: "fd-item-expand" }, { kind: "directive", type: MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: MenuComponent, selector: "fd-menu", inputs: ["openOnHoverTime", "ariaLabel", "ariaLabelledby", "id", "config", "mobile", "mobileConfig", "placement", "closeOnEscapeKey", "focusAutoCapture", "disabled", "disableScrollbar", "triggers", "fillControlMode", "closeOnOutsideClick", "noArrow", "focusTrapped", "additionalBodyClass", "closeOnNavigation", "restoreFocusOnClose", "appendTo", "fixedPosition", "isOpen"], outputs: ["isOpenChange", "activePath", "beforeOpen"] }, { kind: "component", type: MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu", "hasSeparator"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "component", type: MenuInteractiveComponent, selector: "[fd-menu-interactive]" }, { kind: "directive", type: ScrollSpyDirective, selector: "[fdScrollSpy]", inputs: ["trackedTags", "fireEmpty", "targetPercent", "targetOffset", "scrollSpyDisabled"], outputs: ["spyChange"], exportAs: ["fdScrollSpy"] }, { kind: "directive", type: ScrollbarDirective, selector: "[fdScrollbar], [fd-scrollbar]", inputs: ["noHorizontalScroll", "noVerticalScroll", "alwaysVisible"] }, { kind: "directive", type: MenuTitleDirective, selector: "[fd-menu-title]", inputs: ["truncate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
839
|
+
], queries: [{ propertyName: "tabPanels", predicate: i0.forwardRef(() => TabPanelComponent) }], viewQueries: [{ propertyName: "overflowTrigger", first: true, predicate: TabItemExpandComponent, descendants: true, read: ElementRef }, { propertyName: "headerContainer", first: true, predicate: ["headerContainer"], descendants: true, read: ElementRef }, { propertyName: "_scrollbar", first: true, predicate: ScrollbarDirective, descendants: true }, { propertyName: "menu", first: true, predicate: ["menu"], descendants: true, read: MenuComponent }, { propertyName: "_overflowLayout", first: true, predicate: OverflowLayoutComponent, descendants: true }, { propertyName: "_scrollSpy", first: true, predicate: ["scrollSpy"], descendants: true, read: ScrollSpyDirective }, { propertyName: "tabHeaderLinks", predicate: TabLinkDirective, descendants: true }, { propertyName: "tabHeaders", predicate: TabItemDirective, descendants: true }], ngImport: i0, template: "<div #headerContainer role=\"tablist\" class=\"fd-tabs\" [class]=\"(mode ? 'fd-tabs--' + mode : '') + (' fd-tabs--' + size)\">\n <fd-overflow-layout\n [maxVisibleItems]=\"maxVisibleTabs\"\n [enableKeyboardNavigation]=\"true\"\n navigationTrigger=\"keydown\"\n (hiddenItemsCount)=\"hiddenItemsCount.emit($event)\"\n (visibleItemsCount)=\"visibleItemsCount.emit($event)\"\n >\n @for (tab of _tabArray; track tab; let i = $index; let last = $last) {\n <div\n fd-tab-item\n *fdOverflowItemRef=\"tab\"\n fdOverflowLayoutItem\n [forceVisibility]=\"tab.panel._forcedVisibility\"\n [header]=\"tab.isHeader\"\n [tabItemState]=\"tab.tabState\"\n >\n <a\n fd-tab-link\n role=\"tab\"\n [id]=\"tab.id\"\n [attr.aria-controls]=\"tab.panelId\"\n [attr.aria-label]=\"tab.ariaLabel || null\"\n [attr.aria-labelledby]=\"!tab.ariaLabel && tab.ariaLabelledBy ? tab.ariaLabelledBy : null\"\n fdOverflowLayoutFocusableItem\n [focusable]=\"tab.active\"\n [navigable]=\"!tab.disabled\"\n [active]=\"tab.active\"\n [disabled]=\"tab.disabled\"\n (keydown)=\"_tabHeaderKeydownHandler($event, tab.panel)\"\n (click)=\"_tabHeaderClickHandler(tab.panel)\"\n >\n <ng-template [ngTemplateOutlet]=\"tab.titleTemplate || null\"></ng-template>\n @if (!tab.titleTemplate) {\n @switch (mode) {\n @case ('filter') {\n @if (tab.isHeader) {\n <span fd-tab-header>\n @if (tab.count) {\n <span fd-tab-counter-header>{{ tab.count }}</span>\n }\n @if (tab.title) {\n <span fd-tab-label>{{ tab.title }}</span>\n }\n </span>\n }\n @if (!tab.isHeader) {\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n <span fd-tab-label>{{ tab.title }}</span>\n }\n }\n @case ('icon-only') {\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n }\n @case ('process') {\n @if (tab.glyph) {\n <span fd-tab-icon [icon]=\"tab.glyph\"></span>\n }\n <div fd-tab-process>\n @if (tab.count) {\n <span fd-tab-label>{{ tab.count }}</span>\n }\n @if (tab.title) {\n <span fd-tab-label>{{ tab.title }}</span>\n }\n </div>\n }\n @default {\n @if (tab.count) {\n <p fd-tab-count>{{ tab.count }}</p>\n }\n <span fd-tab-tag>{{ tab.title }}</span>\n }\n }\n }\n </a>\n @if (mode === 'process' && !last) {\n <div fd-tab-process-icon></div>\n }\n </div>\n @if (tab.isHeader) {\n <div fd-tab-separator></div>\n }\n }\n <ng-container *fdOverflowExpand=\"let tabs; items: _tabArray\">\n @if (tabs.length > 0) {\n <fd-item-expand [fdMenuTrigger]=\"menu\" (keydown)=\"_onTriggerKeydown($event, menu)\"> </fd-item-expand>\n }\n <fd-menu #menu>\n @for (tab of tabs; track tab) {\n <li fd-menu-item (onSelect)=\"_overflowingTabHeaderClickHandler(tab.item.panel)\">\n <div fd-menu-interactive>\n <ng-template\n [ngTemplateOutlet]=\"\n !tab.item.titleTemplate && mode === 'icon-only'\n ? iconOnlyTemplate\n : tab.item.titleTemplate || textTitle\n \"\n [ngTemplateOutletContext]=\"{ $implicit: tab.item }\"\n ></ng-template>\n </div>\n </li>\n }\n </fd-menu>\n </ng-container>\n </fd-overflow-layout>\n</div>\n<div\n class=\"fd-tabs__content\"\n [style.max-height]=\"maxContentHeight\"\n fdScrollSpy\n #scrollSpy=\"fdScrollSpy\"\n fd-scrollbar\n [trackedTags]=\"['fd-tab']\"\n [scrollSpyDisabled]=\"_disableScrollSpy\"\n (spyChange)=\"highlightActiveTab($event?.id)\"\n>\n <ng-content></ng-content>\n</div>\n<ng-template #textTitle let-tab>\n <span fd-menu-title>{{ tab.title }}</span>\n</ng-template>\n<ng-template #iconOnlyTemplate let-tab>\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n</ng-template>\n", styles: [".fd-tabs{--fdTabs_Icon_Size:1.125rem;--fdTabs_Icon_Selection_Height:2.625rem;--fdTabs_Label_Padding_Bottom:.375rem;--fdTabs_Filter_Link_Height:5.5rem;border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-padding-start:0;background-color:var(--sapObjectHeader_Background);border-color:var(--sapObjectHeader_BorderColor);-webkit-box-shadow:var(--sapContent_HeaderShadow);box-shadow:var(--sapContent_HeaderShadow);color:var(--sapContent_LabelColor);list-style:none;padding-inline-start:0}.fd-tabs:after,.fd-tabs:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__count{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;line-height:1rem;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-padding-after:.125rem;color:var(--sapContent_LabelColor);padding-block-end:.125rem}.fd-tabs__count:after,.fd-tabs__count:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__link{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);cursor:pointer;display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;line-height:1rem;margin-block:0;margin-inline:0;padding-block:0;padding-block:.875rem;padding-inline:0;padding-inline:.75rem;position:relative;text-decoration:none;-webkit-transition:0s;transition:0s}.fd-tabs__link:after,.fd-tabs__link:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__link.is-selected .fd-tabs__icon,.fd-tabs__link[aria-selected=true] .fd-tabs__icon{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__link.is-selected .fd-tabs__icon:after,.fd-tabs__link.is-selected .fd-tabs__tag:after,.fd-tabs__link[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__link[aria-selected=true] .fd-tabs__tag:after{background-color:var(--fdIcon_Tab_Bar_Selection_Bar_Color)}.fd-tabs__link.is-focus,.fd-tabs__link:focus{-webkit-box-shadow:none;box-shadow:none;outline:none;z-index:5}.fd-tabs__link.is-focus .fd-tabs__icon:before,.fd-tabs__link.is-focus .fd-tabs__tag:before,.fd-tabs__link:focus .fd-tabs__icon:before,.fd-tabs__link:focus .fd-tabs__tag:before{content:\"\";inset:0;outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth);outline-offset:var(--sapContent_FocusWidth);position:absolute}.fd-tabs__item{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;margin-inline:.25rem;padding-block:0;padding-inline:0;position:relative}.fd-tabs__item:after,.fd-tabs__item:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__item.is-selected .fd-tabs__tag,.fd-tabs__item[aria-selected=true] .fd-tabs__tag{color:var(--fdIcon_Tab_Bar_Selection_Color)}.fd-tabs__item.is-selected .fd-tabs__icon,.fd-tabs__item[aria-selected=true] .fd-tabs__icon{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item.is-selected .fd-tabs__icon:after,.fd-tabs__item.is-selected .fd-tabs__link:after,.fd-tabs__item.is-selected .fd-tabs__tag:after,.fd-tabs__item[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item[aria-selected=true] .fd-tabs__tag:after{background-color:var(--fdIcon_Tab_Bar_Selection_Bar_Color)}.fd-tabs__item--error .fd-tabs__icon{border-color:var(--sapErrorColor);color:var(--sapErrorColor)}.fd-tabs__item--error .fd-tabs__link .fd-tabs__tag{color:var(--sapErrorColor)}.fd-tabs__item--error.is-selected .fd-tabs__icon,.fd-tabs__item--error[aria-selected=true] .fd-tabs__icon{background-color:var(--sapErrorColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--error.is-selected .fd-tabs__icon:after,.fd-tabs__item--error.is-selected .fd-tabs__link:after,.fd-tabs__item--error.is-selected .fd-tabs__tag:after,.fd-tabs__item--error[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--error[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--error[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapErrorColor)}.fd-tabs__item--warning .fd-tabs__icon{border-color:var(--sapWarningColor);color:var(--sapWarningColor)}.fd-tabs__item--warning .fd-tabs__link .fd-tabs__tag{color:var(--sapWarningColor)}.fd-tabs__item--warning.is-selected .fd-tabs__icon,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__icon{background-color:var(--sapWarningColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--warning.is-selected .fd-tabs__icon:after,.fd-tabs__item--warning.is-selected .fd-tabs__link:after,.fd-tabs__item--warning.is-selected .fd-tabs__tag:after,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--warning[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapWarningColor)}.fd-tabs__item--success .fd-tabs__icon{border-color:var(--sapSuccessColor);color:var(--sapSuccessColor)}.fd-tabs__item--success .fd-tabs__link .fd-tabs__tag{color:var(--sapSuccessColor)}.fd-tabs__item--success.is-selected .fd-tabs__icon,.fd-tabs__item--success[aria-selected=true] .fd-tabs__icon{background-color:var(--sapSuccessColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--success.is-selected .fd-tabs__icon:after,.fd-tabs__item--success.is-selected .fd-tabs__link:after,.fd-tabs__item--success.is-selected .fd-tabs__tag:after,.fd-tabs__item--success[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--success[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--success[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapSuccessColor)}.fd-tabs__item--information .fd-tabs__icon{border-color:var(--sapInformationColor);color:var(--sapInformationColor)}.fd-tabs__item--information .fd-tabs__link .fd-tabs__tag{color:var(--sapInformationColor)}.fd-tabs__item--information.is-selected .fd-tabs__icon,.fd-tabs__item--information[aria-selected=true] .fd-tabs__icon{background-color:var(--sapInformationColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--information.is-selected .fd-tabs__icon:after,.fd-tabs__item--information.is-selected .fd-tabs__link:after,.fd-tabs__item--information.is-selected .fd-tabs__tag:after,.fd-tabs__item--information[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--information[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--information[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapInformationColor)}.fd-tabs__item--neutral .fd-tabs__icon{border-color:var(--sapNeutralColor);color:var(--sapNeutralColor)}.fd-tabs__item--neutral .fd-tabs__link .fd-tabs__tag{color:var(--sapNeutralColor)}.fd-tabs__item--neutral.is-selected .fd-tabs__icon,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__icon{background-color:var(--sapNeutralColor);color:var(--sapContent_ContrastIconColor)}.fd-tabs__item--neutral.is-selected .fd-tabs__icon:after,.fd-tabs__item--neutral.is-selected .fd-tabs__link:after,.fd-tabs__item--neutral.is-selected .fd-tabs__tag:after,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__icon:after,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__link:after,.fd-tabs__item--neutral[aria-selected=true] .fd-tabs__tag:after{background-color:var(--sapNeutralColor)}.fd-tabs__item:first-child{-webkit-margin-start:0;margin-inline-start:0}.fd-tabs__item:first-child .fd-tabs__link{-webkit-margin-start:.1875rem;margin-inline-start:.1875rem;-webkit-padding-start:0;padding-inline-start:0}.fd-tabs__icon{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:transparent;border:var(--fdIcon_Tab_Bar_Icon_Border_Weight) solid var(--fdIcon_Tab_Bar_Icon_Border_Color);border-radius:50%;color:var(--fdIcon_Tab_Bar_Inactive_Tab_Icon_Color);height:var(--fdTabs_Icon_Selection_Height);margin-block:0;margin-inline:.188rem;position:relative;width:var(--fdTabs_Icon_Selection_Height)}.fd-tabs__icon:after,.fd-tabs__icon:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__icon [class*=sap-icon],.fd-tabs__icon[class*=sap-icon]{background:inherit;border-radius:inherit;color:inherit;font-size:inherit;font-size:var(--fdTabs_Icon_Size);line-height:1}.fd-tabs__icon:after{border-radius:.125rem .125rem 0 0;bottom:-.875rem;content:\"\";display:inline-block;height:var(--fdIcon_Tab_Bar_Selection_Bar_Height);left:-.1875rem;position:absolute;-webkit-transition:all .125s ease-in;transition:all .125s ease-in;width:calc(100% + .375rem)}.fd-tabs__tag{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:inline-block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;line-height:1rem;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;position:relative}.fd-tabs__tag:after,.fd-tabs__tag:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__tag:after{border-radius:.125rem .125rem 0 0;bottom:-.875rem;content:\"\";display:inline-block;height:var(--fdIcon_Tab_Bar_Selection_Bar_Height);left:-.1875rem;position:absolute;-webkit-transition:all .125s ease-in;transition:all .125s ease-in;width:calc(100% + .375rem)}.fd-tabs__panel{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-tabs__panel:after,.fd-tabs__panel:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__panel[aria-expanded=false]{display:none}.fd-tabs__panel.is-expanded,.fd-tabs__panel[aria-expanded=true]{display:block}.fd-tabs__counter-header{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:1.5rem;font-weight:400;forced-color-adjust:none;line-height:normal;line-height:1.5rem;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-padding-end:.5rem;padding-inline-end:.5rem}.fd-tabs__counter-header:after,.fd-tabs__counter-header:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__overflow{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-margin-start:auto;margin-inline-start:auto}.fd-tabs__overflow:after,.fd-tabs__overflow:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__overflow [class*=sap-icon],.fd-tabs__overflow[class*=sap-icon]{background:inherit;border-radius:inherit;color:inherit;font-size:inherit;line-height:1}.fd-tabs__process-icon{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_NonInteractiveIconColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:1rem;font-weight:400;forced-color-adjust:none;line-height:normal;line-height:1;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;padding-inline:.5rem}.fd-tabs__process-icon:after,.fd-tabs__process-icon:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__process-icon:before{content:\"\\e0c7\";font-family:SAP-icons;text-align:center;text-decoration:inherit;text-rendering:optimizeLegibility;text-transform:none}.fd-tabs__label{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-padding-start:.125rem;color:var(--sapContent_LabelColor);font-size:var(--sapFontSmallSize);max-width:100%;padding-inline-start:.125rem}.fd-tabs__label:after,.fd-tabs__label:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__label:first-child{-webkit-padding-after:var(--fdTabs_Label_Padding_Bottom);padding-block-end:var(--fdTabs_Label_Padding_Bottom)}.fd-tabs__separator{border:0;border-right:solid var(--sapGroup_TitleBorderColor);border-right-width:.0625rem;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:2rem;line-height:normal;line-height:2rem;margin-block:0;margin-inline:0;margin-inline:.25rem;padding-block:0;padding-inline:0}.fd-tabs__separator:after,.fd-tabs__separator:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__header{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.fd-tabs__header:after,.fd-tabs__header:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs__header .fd-tabs__label{max-width:4rem}.fd-tabs--filter .fd-tabs__count,.fd-tabs--icon-only .fd-tabs__count,.fd-tabs--process .fd-tabs__count{font-size:var(--sapFontSmallSize)}.fd-tabs--filter .fd-tabs__item:first-child .fd-tabs__link,.fd-tabs--icon-only .fd-tabs__item:first-child .fd-tabs__link,.fd-tabs--process .fd-tabs__item:first-child .fd-tabs__link{margin-block:0;margin-inline:0}.fd-tabs--icon-only .fd-tabs__link,.fd-tabs--process .fd-tabs__link{padding-block:1rem 1rem}.fd-tabs--icon-only .fd-tabs__icon:after,.fd-tabs--process .fd-tabs__icon:after{bottom:-1.0625rem}.fd-tabs--filter .fd-tabs__count,.fd-tabs--icon-only .fd-tabs__count{left:calc(100% + .1875rem);position:absolute;top:0}.fd-tabs--filter[dir=rtl] .fd-tabs__count,.fd-tabs--icon-only[dir=rtl] .fd-tabs__count,[dir=rtl] .fd-tabs--filter .fd-tabs__count,[dir=rtl] .fd-tabs--icon-only .fd-tabs__count{left:auto;right:calc(100% + .1875rem)}.fd-tabs--process .fd-tabs__item{margin-block:0;margin-inline:0 .25rem}.fd-tabs--process .fd-tabs__item,.fd-tabs--process .fd-tabs__link{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.fd-tabs--process .fd-tabs__link{padding-inline:0}.fd-tabs--process .fd-tabs__icon{margin-block:0;margin-inline:.1875rem}.fd-tabs--process .fd-tabs__label{line-height:.875rem;max-width:7.5rem;overflow:hidden;white-space:nowrap}.fd-tabs--process[dir=rtl] .fd-tabs__item,[dir=rtl] .fd-tabs--process .fd-tabs__item{margin-block:0;margin-inline:.25rem 0}.fd-tabs--process[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link,[dir=rtl] .fd-tabs--process .fd-tabs__item:first-child .fd-tabs__link{padding-inline:0}.fd-tabs--filter{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.fd-tabs--filter .fd-tabs__item{margin-block:0;margin-inline:0;padding-block:0;padding-inline:.25rem;width:5.375rem}.fd-tabs--filter .fd-tabs__item--header{width:auto}.fd-tabs--filter .fd-tabs__icon{-webkit-margin-after:.375rem;margin-block-end:.375rem}.fd-tabs--filter .fd-tabs__icon:after{content:none}.fd-tabs--filter .fd-tabs__label{line-height:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-tabs--filter .fd-tabs__link{display:-webkit-box;display:-ms-flexbox;display:flex;height:var(--fdTabs_Filter_Link_Height);padding-block:.875rem .625rem;padding-inline:.188rem;text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;position:relative}.fd-tabs--filter .fd-tabs__link:after{border-radius:.125rem .125rem 0 0;bottom:-.875rem;bottom:0;content:\"\";display:inline-block;height:var(--fdIcon_Tab_Bar_Selection_Bar_Height);left:-.1875rem;position:absolute;-webkit-transition:all .125s ease-in;transition:all .125s ease-in;width:calc(100% + .375rem)}.fd-tabs--filter .fd-tabs__link.is-focus,.fd-tabs--filter .fd-tabs__link:focus{-webkit-box-shadow:none;box-shadow:none;outline:none;z-index:5}.fd-tabs--filter[dir=rtl] .fd-tabs__item:first-child .fd-tabs__link,[dir=rtl] .fd-tabs--filter .fd-tabs__item:first-child .fd-tabs__link{padding-inline:.188rem}.fd-tabs[class*=-compact],.fd-tabs[class*=-condensed],[class*=-compact] .fd-tabs:not([class*=-cozy]),[class*=-condensed] .fd-tabs:not([class*=-cozy]){--fdTabs_Icon_Size:1.125rem;--fdTabs_Icon_Selection_Height:1.875rem;--fdTabs_Label_Padding_Bottom:.25rem;--fdTabs_Filter_Link_Height:4.75rem}.fd-tabs--s{padding-block:0;padding-inline:1rem}.fd-tabs--l,.fd-tabs--m{padding-block:0;padding-inline:2rem}.fd-tabs--xl,.fd-tabs--xxl{padding-block:0;padding-inline:3rem}.fd-tabs[dir=rtl] .fd-tabs__process-icon,[dir=rtl] .fd-tabs .fd-tabs__process-icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fd-tabs__process{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-tabs__process:after,.fd-tabs__process:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-tabs-custom{display:flex;flex-direction:column;height:100%}.fd-tabs-custom .is-disabled{pointer-events:none;opacity:.4}.fd-tabs{flex-grow:0;flex-wrap:nowrap}.fd-tabs__content{overflow-y:auto;flex-grow:1}.fd-tabs__item{flex-shrink:0}.fd-tabs__tag{white-space:nowrap}.fd-tabs__wrapper{flex-grow:1;display:flex;flex-wrap:wrap;align-items:center}.fd-tabs__wrapper--collapsible{overflow:hidden;flex-wrap:nowrap}.fd-tabs .fd-overflow-layout__items-container .fd-tabs__item:first-child{margin-left:.25rem}.fd-tabs .fd-overflow-layout__items-container .fd-tabs__item:first-child .fd-tabs__link{margin:0;padding:.875rem .75rem}.fd-tabs .fd-overflow-layout__items-container .fd-overflow-layout__item--first .fd-tabs__item{margin-left:0}.fd-tabs .fd-overflow-layout__items-container .fd-overflow-layout__item--first .fd-tabs__item .fd-tabs__link{margin-left:.1875rem;padding-left:0}\n/*! Bundled license information:\n\nfundamental-styles/dist/tabs.css:\n (*!\n * Fundamental Library Styles v0.41.6\n * Copyright (c) 2026 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *)\n*/\n"], dependencies: [{ kind: "component", type: OverflowLayoutComponent, selector: "fd-overflow-layout", inputs: ["maxVisibleItems", "navigationTrigger", "showMorePosition", "renderShowMoreButton", "reverseHiddenItems", "enableKeyboardNavigation", "ariaRole", "moreItemsButtonText"], outputs: ["visibleItemsCount", "hiddenItemsCount", "hiddenItemsChange"] }, { kind: "directive", type: OverflowItemRefDirective, selector: "[fdOverflowItemRef]", inputs: ["fdOverflowItemRef"] }, { kind: "directive", type: TabItemDirective, selector: "[fd-tab-item]", inputs: ["class", "tabItemState", "header", "disabled", "fdTabItemClass"] }, { kind: "directive", type: OverflowLayoutItemDirective, selector: "[fdOverflowLayoutItem]", inputs: ["forceVisibility"], outputs: ["hiddenChange"] }, { kind: "directive", type: TabLinkDirective, selector: "[fd-tab-link]", inputs: ["active", "disabled"], outputs: ["keyDown", "focused"] }, { kind: "directive", type: OverflowLayoutFocusableItemDirective, selector: "[fdOverflowLayoutFocusableItem], [fdOverflowLayoutItem][focusable]", inputs: ["focusable", "navigable"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: TabHeaderDirective, selector: "[fdTabHeader], [fd-tab-header]" }, { kind: "directive", type: TabCounterHeaderDirective, selector: "[fdTabCounterHeader], [fd-tab-counter-header]" }, { kind: "directive", type: TabLabelDirective, selector: "[fdTabLabel], [fd-tab-label]" }, { kind: "component", type: TabIconComponent, selector: "[fd-tab-icon]", inputs: ["class", "icon", "iconFont"] }, { kind: "directive", type: TabCountDirective, selector: "[fdTabCount], [fd-tab-count]" }, { kind: "directive", type: TabProcessDirective, selector: "[fdTabProcess], [fd-tab-process]" }, { kind: "directive", type: TabTagDirective, selector: "[fdTabTag], [fd-tab-tag]" }, { kind: "directive", type: TabProcessIconDirective, selector: "[fdTabProcessIcon], [fd-tab-process-icon]" }, { kind: "directive", type: TabSeparatorDirective, selector: "[fdTabSeparator], [fd-tab-separator]" }, { kind: "directive", type: OverflowExpandDirective, selector: "[fdOverflowExpand]", inputs: ["fdOverflowExpandItems"] }, { kind: "component", type: TabItemExpandComponent, selector: "fd-item-expand" }, { kind: "directive", type: MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: MenuComponent, selector: "fd-menu", inputs: ["openOnHoverTime", "ariaLabel", "ariaLabelledby", "id", "config", "mobile", "mobileConfig", "placement", "closeOnEscapeKey", "focusAutoCapture", "disabled", "disableScrollbar", "triggers", "fillControlMode", "closeOnOutsideClick", "noArrow", "focusTrapped", "additionalBodyClass", "closeOnNavigation", "restoreFocusOnClose", "appendTo", "fixedPosition", "scrollStrategy", "isOpen"], outputs: ["isOpenChange", "activePath", "beforeOpen"] }, { kind: "component", type: MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu", "hasSeparator"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "component", type: MenuInteractiveComponent, selector: "[fd-menu-interactive]" }, { kind: "directive", type: ScrollSpyDirective, selector: "[fdScrollSpy]", inputs: ["trackedTags", "fireEmpty", "targetPercent", "targetOffset", "scrollSpyDisabled"], outputs: ["spyChange"], exportAs: ["fdScrollSpy"] }, { kind: "directive", type: ScrollbarDirective, selector: "[fdScrollbar], [fd-scrollbar]", inputs: ["noHorizontalScroll", "noVerticalScroll", "alwaysVisible"] }, { kind: "directive", type: MenuTitleDirective, selector: "[fd-menu-title]", inputs: ["truncate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
840
840
|
}
|
|
841
841
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: TabListComponent, decorators: [{
|
|
842
842
|
type: Component,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundamental-ngx-core-tabs.mjs","sources":["../../../../libs/core/tabs/tab-utils/tab-directives.ts","../../../../libs/core/tabs/tab-item-expand/tab-item-expand.component.ts","../../../../libs/core/tabs/tab-item-expand/tab-item-expand.component.html","../../../../libs/core/tabs/tab-link/tab-link.directive.ts","../../../../libs/core/tabs/tab-item/tab-item.directive.ts","../../../../libs/core/tabs/tab-list.token.ts","../../../../libs/core/tabs/tab-panel/tab-panel.component.ts","../../../../libs/core/tabs/tab-panel/tab-panel.component.html","../../../../libs/core/tabs/tab-utils/tab-info.class.ts","../../../../libs/core/tabs/tab-list.component.ts","../../../../libs/core/tabs/tab-list.component.html","../../../../libs/core/tabs/tab-nav/tab-nav.component.ts","../../../../libs/core/tabs/tabs.module.ts","../../../../libs/core/tabs/fundamental-ngx-core-tabs.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n ElementRef,\n HostBinding,\n Input,\n OnChanges,\n ViewEncapsulation\n} from '@angular/core';\nimport { CssClassBuilder, applyCssClass } from '@fundamental-ngx/cdk/utils';\nimport { FD_DEFAULT_ICON_FONT_FAMILY, IconComponent, IconFont } from '@fundamental-ngx/core/icon';\n\n/**\n * Directive used to identify the template which will populate the tab header.\n * Used to achieve complex headers that require more than a string.\n *\n * ```html\n * <fd-tab>\n * <ng-template fd-tab-title>\n * <fd-icon [glyph]=\"'delete'\"></fd-icon>\n * <span>Tab Label</span>\n * </ng-template>\n * </fd-tab>\n * ```\n */\n@Directive({\n selector: '[fdTabTitleTemplate], [fd-tab-title-template]',\n standalone: true\n})\nexport class TabTitleDirective {}\n\n/**\n * Directive for counter element, available in most of the modes on `tab` component\n */\n@Directive({\n selector: '[fdTabCount], [fd-tab-count]',\n standalone: true\n})\nexport class TabCountDirective {\n /** @hidden */\n @HostBinding('class.fd-tabs__count')\n fdTabsCountClass = true;\n}\n\n/**\n * Directive for icon element, available in most of the modes on `tab` component\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-tab-icon]',\n template: `\n @if (icon) {\n <fd-icon role=\"presentation\" [glyph]=\"icon\" [font]=\"iconFont\"></fd-icon>\n }\n <ng-content></ng-content>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [IconComponent]\n})\nexport class TabIconComponent implements CssClassBuilder, OnChanges {\n /** Apply user custom styles */\n @Input()\n class: string;\n\n /**\n * The icon to include inside the element\n * See the icon page for the list of icons.\n */\n @Input()\n icon: string;\n\n /** Icon font family */\n @Input()\n iconFont: IconFont = FD_DEFAULT_ICON_FONT_FAMILY;\n\n /** @hidden */\n constructor(public readonly elementRef: ElementRef) {}\n\n /** @hidden CssClassBuilder interface implementation\n * function must return single string\n * function is responsible for order which css classes are applied\n */\n @applyCssClass\n buildComponentCssClass(): string[] {\n return ['fd-tabs__icon', this.class];\n }\n\n /** @hidden\n * Function runs when component is initialized\n * function should build component css class\n * function should build css style\n */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n}\n\n@Directive({\n selector: '[fdTabTag], [fd-tab-tag]',\n host: {\n class: 'fd-tabs__tag'\n },\n standalone: true\n})\nexport class TabTagDirective {}\n\n@Directive({\n selector: '[fdTabLabel], [fd-tab-label]',\n host: {\n class: 'fd-tabs__label'\n },\n standalone: true\n})\nexport class TabLabelDirective {}\n\n@Directive({\n selector: '[fdTabProcess], [fd-tab-process]',\n host: {\n class: 'fd-tabs__process'\n },\n standalone: true\n})\nexport class TabProcessDirective {}\n\n@Directive({\n selector: '[fdTabHeader], [fd-tab-header]',\n host: {\n class: 'fd-tabs__header'\n },\n standalone: true\n})\nexport class TabHeaderDirective {}\n\n@Directive({\n selector: '[fdTabCounterHeader], [fd-tab-counter-header]',\n host: {\n class: 'fd-tabs__counter-header'\n },\n standalone: true\n})\nexport class TabCounterHeaderDirective {}\n\n@Directive({\n selector: '[fdTabProcessIcon], [fd-tab-process-icon]',\n host: {\n class: 'fd-tabs__process-icon'\n },\n standalone: true\n})\nexport class TabProcessIconDirective {}\n\n@Directive({\n selector: '[fdTabSeparator], [fd-tab-separator]',\n host: {\n class: 'fd-tabs__separator'\n },\n standalone: true\n})\nexport class TabSeparatorDirective {}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { IconComponent } from '@fundamental-ngx/core/icon';\nimport { FdTranslatePipe } from '@fundamental-ngx/i18n';\nimport { TabTagDirective } from '../tab-utils/tab-directives';\n\n/**\n * Represents a list of tab-panels.\n */\n@Component({\n selector: 'fd-item-expand',\n templateUrl: './tab-item-expand.component.html',\n styleUrl: './tab-item-expand.component.scss',\n host: {\n role: 'tab',\n class: 'fd-tabs__item fd-tabs__item--overflow'\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [TabTagDirective, IconComponent, FdTranslatePipe]\n})\nexport class TabItemExpandComponent {}\n","<a class=\"fd-tabs__link\" role=\"tab\" [attr.tabindex]=\"0\">\n <span fd-tab-tag>{{ ('coreTabs.tabListExpandButtonText' | fdTranslate)() }}</span>\n <fd-icon glyph=\"slim-arrow-down\" [attr.aria-label]=\"('coreTabs.expandIconLabel' | fdTranslate)()\"></fd-icon>\n</a>\n","import { FocusableOption } from '@angular/cdk/a11y';\nimport { ENTER, SPACE } from '@angular/cdk/keycodes';\nimport { Directive, EventEmitter, HostBinding, HostListener, Input, Output } from '@angular/core';\nimport { AbstractFdNgxClass, KeyUtil } from '@fundamental-ngx/cdk/utils';\n\n/**\n * Tab link for nav mode\n *\n * ```html\n * <a fd-tab-link>\n * link\n * </a>\n * ```\n */\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-tab-link]',\n host: {\n role: 'tab',\n tabindex: '-1'\n },\n standalone: true\n})\nexport class TabLinkDirective extends AbstractFdNgxClass implements FocusableOption {\n /** Whether the link is active */\n @Input()\n @HostBinding('attr.aria-selected')\n active: boolean;\n\n /**\n * Only visual / accessibility thing on tab-nav mode\n * RouterLink does not respect preventDefault/stopPropagation\n */\n @Input()\n @HostBinding('attr.aria-disabled')\n @HostBinding('class.is-disabled')\n disabled: boolean;\n\n /** Event Emitted always when, any keyboard event is dispatched on this element */\n @Output()\n readonly keyDown: EventEmitter<KeyboardEvent> = new EventEmitter<KeyboardEvent>();\n\n /** Event Emitted when item has been focused. */\n @Output()\n readonly focused = new EventEmitter<void>();\n\n /** @hidden */\n @HostListener('focus')\n protected _onFocus(): void {\n this.focused.emit();\n }\n\n /** @hidden */\n @HostListener('keyup', ['$event'])\n protected _onKeyUp(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, [ENTER, SPACE])) {\n this.focused.emit();\n }\n }\n\n /** @hidden */\n _setProperties(): void {\n this._addClassToElement('fd-tabs__link');\n if (this.active) {\n this._addClassToElement('is-selected');\n }\n }\n\n /** @hidden */\n focus(): void {\n this.elementRef.nativeElement.focus();\n }\n}\n","import { ContentChild, Directive, ElementRef, HostBinding, Input, OnChanges, OnInit } from '@angular/core';\nimport { CssClassBuilder, Nullable, applyCssClass } from '@fundamental-ngx/cdk/utils';\nimport { TabLinkDirective } from '../tab-link/tab-link.directive';\n\nexport type TabItemState = 'success' | 'error' | 'warning' | 'information' | 'neutral';\n\n/**\n * Tab Item is optional wrapper for Tab link\n *\n * ```html\n * <div fd-tab-item>\n * <a fd-tab-link>\n * link\n * </a>\n * </div>\n * ```\n */\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-tab-item]',\n standalone: true\n})\nexport class TabItemDirective implements CssClassBuilder, OnChanges, OnInit {\n /** Apply user custom styles */\n @Input()\n class = '';\n\n /** Semantic type of the tab item */\n @Input()\n tabItemState: Nullable<TabItemState>;\n\n /** This should be used only on `filterMode`. Flag should be enable for first item */\n @Input()\n header: boolean;\n\n /** Disabled state for tab item */\n @Input()\n @HostBinding('attr.aria-disabled')\n @HostBinding('class.is-disabled')\n disabled = false;\n\n /** Defines if there will be added fd-tabs__item class. Enabled by default. */\n @Input()\n fdTabItemClass = true;\n\n /** @hidden */\n @ContentChild(TabLinkDirective)\n linkItem: TabLinkDirective;\n\n /** @hidden */\n constructor(public readonly elementRef: ElementRef) {}\n\n /** @hidden */\n @applyCssClass\n buildComponentCssClass(): string[] {\n return [\n this.fdTabItemClass ? 'fd-tabs__item' : '',\n this.header ? 'fd-tabs__item--header' : '',\n this.tabItemState ? `fd-tabs__item--${this.tabItemState}` : '',\n this.class\n ];\n }\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { TabListComponentInterface } from './tab-list-component.interface';\n\nexport const LIST_COMPONENT = new InjectionToken<TabListComponentInterface>('ListComponent');\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n OnChanges,\n Optional,\n Output,\n TemplateRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { Nullable } from '@fundamental-ngx/cdk/utils';\nimport { Subject } from 'rxjs';\nimport { TabItemState } from '../tab-item/tab-item.directive';\nimport { TabListComponentInterface } from '../tab-list-component.interface';\nimport { LIST_COMPONENT } from '../tab-list.token';\nimport { TabTitleDirective } from '../tab-utils/tab-directives';\n\nlet tabPanelUniqueId = 0;\n\nexport class TabPanelStateChange {\n /**\n * Tab panel state change event\n * @param target Tab panel that is being changed\n * @param state New state of the tab panel\n */\n constructor(\n public target: TabPanelComponent,\n public state: boolean\n ) {}\n}\n\n/**\n * Represents the body of a tab element. It also contains elements pertaining to the associated tab header.\n */\n@Component({\n selector: 'fd-tab',\n templateUrl: './tab-panel.component.html',\n host: {\n role: 'tabpanel',\n class: 'fd-tabs__panel',\n '[id]': '_panelId',\n '[attr.aria-labelledby]': 'id',\n '[class.is-expanded]': '_expandedClass'\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: []\n})\nexport class TabPanelComponent implements OnChanges {\n /** Id of the tab. If none is provided, one will be generated. */\n @Input()\n id: string = 'fd-tab-panel' + tabPanelUniqueId++;\n\n /** Aria-label of the tab. */\n @Input()\n ariaLabel: Nullable<string>;\n\n /** Id of the element that labels the tab. */\n @Input()\n ariaLabelledBy: Nullable<string>;\n\n /** The title of tab, depending on mode used, it will be placed in different position */\n @Input()\n title: Nullable<string>;\n\n /** The count of tab, depending on mode used, it will be placed in different position */\n @Input()\n count: Nullable<string>;\n\n /** Glyph icon, it can be used only on */\n @Input()\n glyph: string;\n\n /** Glyph icon, it can be used only on */\n @Input()\n header = false;\n\n /** Disabled state for tab item */\n @Input()\n disabled = false;\n\n /** Semantic type of the tab item */\n @Input()\n tabState: Nullable<TabItemState>;\n\n /** Event that is emitted when the tab panel has been opened. */\n @Output()\n opened = new EventEmitter<void>();\n\n /** Event that is emitted when the tab panel has been closed. */\n @Output()\n closed = new EventEmitter<void>();\n\n /** @hidden */\n @ContentChild(TabTitleDirective, { read: TemplateRef })\n titleTemplate: TemplateRef<any>;\n\n /** @hidden Event that is emitted when the tab panel . */\n _expandedStateChange = new Subject<TabPanelStateChange>();\n\n /** @hidden */\n _expandedClass = false;\n\n /** @hidden */\n _forcedVisibility = false;\n\n /** @hidden Whether to display tab panel content */\n private _expanded = false;\n\n /** @hidden */\n get _panelId(): string {\n return this.id + '-panel';\n }\n\n /** @hidden */\n constructor(\n public elementRef: ElementRef,\n private _changeDetRef: ChangeDetectorRef,\n @Optional() @Inject(LIST_COMPONENT) private readonly _tabsComponent: TabListComponentInterface | null\n ) {}\n\n /** @hidden\n * Thanks to OnPush change strategy detection on tab-list parent component,\n * every change of any property should be reported. */\n ngOnChanges(): void {\n this._tabsComponent?.tabPanelPropertyChanged.next();\n }\n\n /** Whether tab panel content is expanded */\n get expanded(): boolean {\n return this._expanded;\n }\n\n /** Whether to expand tab panel content */\n open(open: boolean): void {\n this._expandedStateChange.next(new TabPanelStateChange(this, open));\n }\n\n /** @hidden Set new expand state */\n _expand(expanded: boolean): void {\n if (this._expanded !== expanded) {\n this._expanded = expanded;\n\n if (expanded) {\n this.opened.emit();\n } else {\n this.closed.emit();\n }\n\n this._changeDetRef.detectChanges();\n\n queueMicrotask(() => {\n this._expandedClass = this.expanded;\n this._changeDetRef.markForCheck();\n });\n }\n }\n\n /** @hidden */\n _focusFirstFocusableElement(): void {\n this.elementRef.nativeElement\n .querySelector('button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])')\n ?.focus({ preventScroll: true });\n }\n}\n","@if (expanded) {\n <ng-content></ng-content>\n}\n","import { TemplateRef } from '@angular/core';\n\nimport { Nullable } from '@fundamental-ngx/cdk/utils';\nimport { TabItemState } from '../tab-item/tab-item.directive';\nimport { TabPanelComponent } from '../tab-panel/tab-panel.component';\n\n/** @hidden */\nexport class TabInfo {\n /** Whether the tab is active */\n active: boolean;\n\n /** @hidden Width of the tab header */\n headerWidth: number;\n\n /** Corresponding tab panel */\n panel: TabPanelComponent;\n\n /** @hidden */\n constructor(tabPanel: TabPanelComponent) {\n this.panel = tabPanel;\n this.active = tabPanel.expanded;\n }\n\n /** Tab header title */\n get title(): Nullable<string> {\n return this.panel.title;\n }\n\n /** Whether the tab is disabled */\n get disabled(): boolean {\n return this.panel.disabled;\n }\n\n /** Whether the tab is tab header */\n get isHeader(): boolean {\n return this.panel.header;\n }\n\n /** @hidden */\n get id(): Nullable<string> {\n return this.panel.id;\n }\n\n /** @hidden */\n get ariaLabel(): Nullable<string> {\n return this.panel.ariaLabel;\n }\n\n /** @hidden */\n get ariaLabelledBy(): Nullable<string> {\n return this.panel.ariaLabelledBy;\n }\n\n /** @hidden */\n get tabState(): Nullable<TabItemState> {\n return this.panel.tabState;\n }\n\n /** @hidden */\n get titleTemplate(): TemplateRef<any> {\n return this.panel.titleTemplate;\n }\n\n /** @hidden */\n get count(): Nullable<string> {\n return this.panel.count;\n }\n\n /** @hidden */\n get glyph(): string {\n return this.panel.glyph;\n }\n\n /** @hidden */\n get forcedVisibility(): boolean {\n return this.panel._forcedVisibility;\n }\n\n /** @hidden */\n get panelId(): string {\n return this.panel._panelId;\n }\n}\n","import { ENTER, SPACE } from '@angular/cdk/keycodes';\nimport { CdkScrollable } from '@angular/cdk/overlay';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n DestroyRef,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n QueryList,\n ViewChild,\n ViewChildren,\n ViewEncapsulation,\n forwardRef\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { KeyUtil, Nullable, scrollTop, warnOnce } from '@fundamental-ngx/cdk/utils';\nimport { ContentDensityObserver, contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';\nimport {\n MenuComponent,\n MenuInteractiveComponent,\n MenuItemComponent,\n MenuTitleDirective,\n MenuTriggerDirective\n} from '@fundamental-ngx/core/menu';\nimport {\n OverflowExpandDirective,\n OverflowItemRefDirective,\n OverflowLayoutComponent,\n OverflowLayoutFocusableItemDirective,\n OverflowLayoutItemDirective\n} from '@fundamental-ngx/core/overflow-layout';\nimport { ScrollSpyDirective } from '@fundamental-ngx/core/scroll-spy';\nimport { ScrollbarDirective } from '@fundamental-ngx/core/scrollbar';\nimport { FD_TABLIST, TabList } from '@fundamental-ngx/core/shared';\nimport { Observable, Subject, Subscription, fromEvent, merge } from 'rxjs';\nimport { debounceTime, delay, filter, first, map, startWith, switchMap, tap } from 'rxjs/operators';\nimport { TabItemExpandComponent } from './tab-item-expand/tab-item-expand.component';\nimport { TabItemDirective } from './tab-item/tab-item.directive';\nimport { TabLinkDirective } from './tab-link/tab-link.directive';\nimport { TabListComponentInterface } from './tab-list-component.interface';\nimport { LIST_COMPONENT } from './tab-list.token';\nimport { TabPanelComponent } from './tab-panel/tab-panel.component';\nimport {\n TabCountDirective,\n TabCounterHeaderDirective,\n TabHeaderDirective,\n TabIconComponent,\n TabLabelDirective,\n TabProcessDirective,\n TabProcessIconDirective,\n TabSeparatorDirective,\n TabTagDirective\n} from './tab-utils/tab-directives';\nimport { TabInfo } from './tab-utils/tab-info.class';\n\nexport type TabModes = 'icon-only' | 'process' | 'filter';\n\nexport type TabSizes = 's' | 'm' | 'l' | 'xl' | 'xxl';\n\n/**\n * Represents a list of tab-panels.\n * @deprecated\n * Use `@fundamental-ngx/platform/icon-tab-bar` instead\n */\n@Component({\n selector: 'fd-tab-list',\n templateUrl: './tab-list.component.html',\n styleUrl: './tab-list.component.scss',\n host: {\n class: 'fd-tabs-custom'\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n contentDensityObserverProviders(),\n {\n provide: LIST_COMPONENT,\n useExisting: TabListComponent\n },\n {\n provide: FD_TABLIST,\n useExisting: TabListComponent\n }\n ],\n imports: [\n OverflowLayoutComponent,\n OverflowItemRefDirective,\n TabItemDirective,\n OverflowLayoutItemDirective,\n TabLinkDirective,\n OverflowLayoutFocusableItemDirective,\n NgTemplateOutlet,\n TabHeaderDirective,\n TabCounterHeaderDirective,\n TabLabelDirective,\n TabIconComponent,\n TabCountDirective,\n TabProcessDirective,\n TabTagDirective,\n TabProcessIconDirective,\n TabSeparatorDirective,\n OverflowExpandDirective,\n TabItemExpandComponent,\n MenuTriggerDirective,\n MenuComponent,\n MenuItemComponent,\n MenuInteractiveComponent,\n ScrollSpyDirective,\n CdkScrollable,\n ScrollbarDirective,\n MenuTitleDirective\n ]\n})\nexport class TabListComponent\n implements TabListComponentInterface, AfterContentInit, AfterViewInit, OnDestroy, TabList\n{\n /** Size of tab, it's mostly about adding spacing on tab container, available sizes 's' | 'm' | 'l' | 'xl' | 'xxl' */\n @Input()\n size: TabSizes = 'm';\n\n /**\n * Whether user wants to use tab component in certain mode. Modes available:\n * 'icon-only' | 'process' | 'filter'\n */\n @Input()\n mode: TabModes;\n\n /** Whether to move tabs overflowing in the tab bar to the dropdown */\n @Input()\n collapseOverflow = true;\n\n /** Limits the maximum number of tabs visible in the tab bar in collapseOverflow mode.\n * Other tabs will be moved to the collapsed tabs dropdown */\n @Input()\n maxVisibleTabs = Infinity;\n\n /** Whether to open tab content one under another without collapsing */\n @Input()\n stackContent = false;\n\n /** Maximum height of the content */\n @Input()\n maxContentHeight = '100%';\n\n /** Whether to enable collapsing expanded tab on expanded tab click */\n @Input()\n collapsibleTabs = false;\n\n /** Initially selected tab (by id). First not disabled one if not specified. */\n @Input()\n defaultTab: Nullable<string>;\n\n /** Whether to try to keep selected tab (default value) on tabs change or to select default one (first if not specified). */\n @Input()\n selectDefaultOnTabsChange = false;\n\n /** Whether to focus the first focusable element in a tab panel when using stacked tabs. */\n @Input()\n focusFirstFocusableElement = true;\n\n /** Event emitted when the selected panel changes. */\n @Output()\n selectedTabChange = new EventEmitter<TabPanelComponent>();\n\n /** Event emitted when the selected panel index changes. */\n @Output()\n selectedTabIndexChange = new EventEmitter<number>();\n\n /** Event emitted when visible items count has been changed. */\n @Output()\n visibleItemsCount = new EventEmitter<number>();\n\n /** Event emitted when hidden items count has been changed. */\n @Output()\n hiddenItemsCount = new EventEmitter<number>();\n\n /** @hidden */\n @ContentChildren(forwardRef(() => TabPanelComponent))\n tabPanels: QueryList<TabPanelComponent>;\n\n /** @hidden */\n @ViewChildren(TabLinkDirective)\n tabHeaderLinks: QueryList<TabLinkDirective>;\n\n /** @hidden */\n @ViewChildren(TabItemDirective)\n tabHeaders: QueryList<TabItemDirective>;\n\n /** @hidden */\n @ViewChild(TabItemExpandComponent, { read: ElementRef })\n overflowTrigger: ElementRef;\n\n /** @hidden */\n @ViewChild('headerContainer', { read: ElementRef })\n headerContainer: ElementRef;\n\n /** @hidden */\n @ViewChild(ScrollbarDirective)\n _scrollbar: ScrollbarDirective;\n\n /** @hidden */\n @ViewChild('menu', { read: MenuComponent })\n menu: MenuComponent;\n\n /** @hidden */\n @ViewChild(OverflowLayoutComponent)\n private _overflowLayout: OverflowLayoutComponent;\n\n /** @hidden */\n @ViewChild('scrollSpy', { read: ScrollSpyDirective })\n private readonly _scrollSpy: Nullable<ScrollSpyDirective>;\n\n /** @hidden */\n get contentContainer(): ElementRef<HTMLElement> {\n return this._scrollbar?.elementRef;\n }\n\n /** @hidden Collection of tabs in original order */\n _tabArray: TabInfo[] = [];\n\n /** @hidden Whether to disable scroll spy */\n _disableScrollSpy = false;\n\n /** @hidden */\n _init = true;\n\n /** @hidden */\n _currentNumberOfTabs = 0;\n\n /** Scrollable element reference. */\n get scrollableElement(): Nullable<ElementRef> {\n return this._scrollbar?.elementRef;\n }\n\n /** Event is thrown always when tab is selected by keyboard actions */\n readonly tabSelected: Subject<number> = new Subject<number>();\n\n /** Event is thrown always, when some property is changed */\n readonly tabPanelPropertyChanged: Subject<void> = new Subject<void>();\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** @hidden */\n constructor(\n private readonly _changeDetectorRef: ChangeDetectorRef,\n readonly _contentDensityObserver: ContentDensityObserver,\n private readonly _destroyRef: DestroyRef\n ) {\n warnOnce('TabListComponent is deprecated, use `@fundamental-ngx/platform/icon-tab-bar` instead');\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n this._setupTabPanelsChangeListeners();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._initStackContentSubscription();\n this._listenOnTabPanelsExpandedChange();\n this._listenOnTabPanelsAndInitiallyExpandTabPanel();\n this._listenOnPropertiesChange();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscriptions.unsubscribe();\n }\n\n /** @hidden */\n _tabHeaderClickHandler(tabPanel: TabPanelComponent): void {\n this._expandTab(tabPanel, !tabPanel.expanded);\n }\n\n /** @hidden */\n _tabHeaderKeydownHandler(event: KeyboardEvent, tabPanel: TabPanelComponent): void {\n if (!KeyUtil.isKeyCode(event, [ENTER, SPACE])) {\n return;\n }\n\n event.preventDefault();\n this._tabHeaderClickHandler(tabPanel);\n }\n\n /** @hidden */\n _overflowingTabHeaderClickHandler(tabPanel: TabPanelComponent): void {\n this._tabArray.forEach((tab) => {\n tab.panel._forcedVisibility = tab.panel === tabPanel;\n });\n\n this._expandTab(tabPanel, true, false);\n\n this._overflowLayout.triggerRecalculation();\n\n this._detectChanges();\n }\n\n /** @hidden */\n selectTab(id: Nullable<string>): void {\n this.highlightActiveTab(id);\n }\n\n /** @hidden */\n highlightActiveTab(id: Nullable<string>): void {\n const tab = this._tabArray.find((_tab) => _tab.panel._panelId === id);\n if (tab) {\n const _tabWasActive = tab.active;\n this._activateStackedTab(tab.panel, false);\n if (!_tabWasActive) {\n this._selectedTabChange(tab.panel);\n }\n }\n }\n\n /** @hidden */\n _onTriggerKeydown(event: KeyboardEvent, menuRef: MenuComponent): void {\n if (KeyUtil.isKeyCode(event, [ENTER, SPACE])) {\n event.preventDefault();\n menuRef.toggle();\n }\n }\n\n /** @hidden */\n private get _tabPanelsChange$(): Observable<TabPanelComponent[]> {\n return this.tabPanels.changes.pipe(\n startWith(this.tabPanels),\n map((tabPanels) => tabPanels.toArray()),\n takeUntilDestroyed(this._destroyRef)\n );\n }\n\n /** @hidden */\n private _detectChanges(): void {\n if (this._changeDetectorRef && !this._changeDetectorRef['destroyed']) {\n this._changeDetectorRef.detectChanges();\n }\n }\n\n /** @hidden */\n private _setupTabPanelsChangeListeners(): void {\n this._listenOnTabPanelsAndUpdateStorageStructures();\n }\n\n /** @hidden Setup mechanisms required for handling the stacked content behavior */\n private _initStackContentSubscription(): void {\n this._tabPanelsChange$\n .pipe(\n filter(() => this.stackContent),\n delay(0),\n takeUntilDestroyed(this._destroyRef)\n )\n .subscribe(() =>\n this._tabArray.filter((tab) => !tab.panel.disabled).forEach((tab) => tab.panel._expand(true))\n );\n }\n\n /** @hidden */\n private _listenOnTabPanelsAndUpdateStorageStructures(): void {\n this._tabPanelsChange$\n .pipe(\n map((tabPanels) =>\n tabPanels.map((el) => this._tabArray?.find((tabInfo) => tabInfo.panel === el) || new TabInfo(el))\n ),\n tap((tabs) => (this._tabArray = tabs)),\n delay(0),\n takeUntilDestroyed(this._destroyRef)\n )\n .subscribe(() => {\n if (this.stackContent && this._currentNumberOfTabs !== this._tabArray.length) {\n queueMicrotask(() => {\n this._scrollSpy?.onScroll(undefined, true);\n this._currentNumberOfTabs = this._tabArray.length;\n });\n }\n });\n }\n\n /** @hidden */\n private _listenOnTabPanelsExpandedChange(): void {\n this._tabPanelsChange$\n .pipe(\n map((tabPanels) => tabPanels.map((tab) => tab._expandedStateChange.asObservable())),\n switchMap((tabPanels) => merge(...tabPanels)),\n takeUntilDestroyed(this._destroyRef)\n )\n .subscribe((event) => {\n this._tabArray.forEach((tab) => {\n tab.panel._forcedVisibility = tab.panel === event.target;\n });\n this._expandTab(event.target, event.state);\n this._overflowLayout.triggerRecalculation();\n });\n }\n\n /** @hidden */\n private _listenOnTabPanelsAndInitiallyExpandTabPanel(): void {\n this._tabPanelsChange$.pipe(takeUntilDestroyed(this._destroyRef)).subscribe(() => {\n const activeTab = this._tabArray.find((_tab) => _tab.active);\n let tab: Nullable<TabInfo>;\n\n if (!activeTab || this.selectDefaultOnTabsChange) {\n if (this.defaultTab) {\n tab = this._tabArray.find((_tab) => !_tab.disabled && _tab.id === this.defaultTab);\n }\n\n if (!tab) {\n tab = this._tabArray.find((_tab) => !_tab.disabled);\n }\n }\n\n if (tab && activeTab !== tab) {\n this._expandTab(tab.panel, true);\n }\n });\n }\n\n /** @hidden */\n private _listenOnPropertiesChange(): void {\n merge(this.tabPanelPropertyChanged, this.tabPanels.changes)\n .pipe(takeUntilDestroyed(this._destroyRef))\n .subscribe(() => this._detectChanges());\n }\n\n /** @hidden */\n private _activateStackedTab(tabPanel: TabPanelComponent, scroll = true): void {\n if (scroll) {\n this._scrollToPanel(tabPanel);\n }\n this._tabArray.forEach((tab) => {\n tab.active = tab.panel === tabPanel;\n });\n }\n\n /** @hidden */\n private _activateExpandableTab(tabPanel: TabPanelComponent, expand: boolean): void {\n const collapse = this.collapsibleTabs && !expand;\n\n this._tabArray.forEach((tab) => {\n const isActive = tab.panel === tabPanel && !collapse;\n\n tab.panel._expand(isActive);\n tab.active = isActive;\n });\n }\n\n /** @hidden */\n private _expandTab(tabPanel: TabPanelComponent, expand: boolean, detectChanges = true): void {\n if (this.stackContent) {\n this._activateStackedTab(tabPanel);\n } else {\n if (!this._canChangeExpandState(tabPanel, expand)) {\n return;\n }\n\n this._activateExpandableTab(tabPanel, expand);\n }\n\n if (detectChanges) {\n this._detectChanges();\n }\n\n this._selectedTabChange(tabPanel);\n }\n\n /** @hidden */\n private _scrollToPanel(tabPanel: TabPanelComponent): void {\n const panelElement = tabPanel.elementRef.nativeElement;\n const containerElement = this.contentContainer.nativeElement;\n const distanceToScroll = panelElement.offsetTop - containerElement.offsetTop;\n const maximumScrollTop = containerElement.scrollHeight - containerElement.clientHeight;\n const currentScrollPosition = Math.ceil(containerElement.scrollTop);\n\n if (!(currentScrollPosition === maximumScrollTop && distanceToScroll > maximumScrollTop)) {\n !this._init ? (this._disableScrollSpy = true) : (this._init = false);\n fromEvent(containerElement, 'scroll')\n .pipe(debounceTime(100), first(), takeUntilDestroyed(this._destroyRef))\n .subscribe(() => (this._disableScrollSpy = false));\n scrollTop(containerElement, distanceToScroll);\n }\n\n if (this.focusFirstFocusableElement) {\n tabPanel._focusFirstFocusableElement();\n }\n }\n\n /** @hidden Whether tab can be expanded/collapsed */\n private _canChangeExpandState(tabPanel: TabPanelComponent, expand: boolean): boolean {\n return !tabPanel.disabled && expand !== tabPanel.expanded && expand === false ? this.collapsibleTabs : true;\n }\n\n /** @hidden */\n private _selectedTabChange(tabPanel: TabPanelComponent): void {\n this.selectedTabChange.emit(tabPanel);\n\n const index = this._tabArray.findIndex((tabInfo) => tabInfo.panel === tabPanel);\n this.selectedTabIndexChange.emit(index);\n }\n}\n","<div #headerContainer role=\"tablist\" class=\"fd-tabs\" [class]=\"(mode ? 'fd-tabs--' + mode : '') + (' fd-tabs--' + size)\">\n <fd-overflow-layout\n [maxVisibleItems]=\"maxVisibleTabs\"\n [enableKeyboardNavigation]=\"true\"\n navigationTrigger=\"keydown\"\n (hiddenItemsCount)=\"hiddenItemsCount.emit($event)\"\n (visibleItemsCount)=\"visibleItemsCount.emit($event)\"\n >\n @for (tab of _tabArray; track tab; let i = $index; let last = $last) {\n <div\n fd-tab-item\n *fdOverflowItemRef=\"tab\"\n fdOverflowLayoutItem\n [forceVisibility]=\"tab.panel._forcedVisibility\"\n [header]=\"tab.isHeader\"\n [tabItemState]=\"tab.tabState\"\n >\n <a\n fd-tab-link\n role=\"tab\"\n [id]=\"tab.id\"\n [attr.aria-controls]=\"tab.panelId\"\n [attr.aria-label]=\"tab.ariaLabel || null\"\n [attr.aria-labelledby]=\"!tab.ariaLabel && tab.ariaLabelledBy ? tab.ariaLabelledBy : null\"\n fdOverflowLayoutFocusableItem\n [focusable]=\"tab.active\"\n [navigable]=\"!tab.disabled\"\n [active]=\"tab.active\"\n [disabled]=\"tab.disabled\"\n (keydown)=\"_tabHeaderKeydownHandler($event, tab.panel)\"\n (click)=\"_tabHeaderClickHandler(tab.panel)\"\n >\n <ng-template [ngTemplateOutlet]=\"tab.titleTemplate || null\"></ng-template>\n @if (!tab.titleTemplate) {\n @switch (mode) {\n @case ('filter') {\n @if (tab.isHeader) {\n <span fd-tab-header>\n @if (tab.count) {\n <span fd-tab-counter-header>{{ tab.count }}</span>\n }\n @if (tab.title) {\n <span fd-tab-label>{{ tab.title }}</span>\n }\n </span>\n }\n @if (!tab.isHeader) {\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n <span fd-tab-label>{{ tab.title }}</span>\n }\n }\n @case ('icon-only') {\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n }\n @case ('process') {\n @if (tab.glyph) {\n <span fd-tab-icon [icon]=\"tab.glyph\"></span>\n }\n <div fd-tab-process>\n @if (tab.count) {\n <span fd-tab-label>{{ tab.count }}</span>\n }\n @if (tab.title) {\n <span fd-tab-label>{{ tab.title }}</span>\n }\n </div>\n }\n @default {\n @if (tab.count) {\n <p fd-tab-count>{{ tab.count }}</p>\n }\n <span fd-tab-tag>{{ tab.title }}</span>\n }\n }\n }\n </a>\n @if (mode === 'process' && !last) {\n <div fd-tab-process-icon></div>\n }\n </div>\n @if (tab.isHeader) {\n <div fd-tab-separator></div>\n }\n }\n <ng-container *fdOverflowExpand=\"let tabs; items: _tabArray\">\n @if (tabs.length > 0) {\n <fd-item-expand [fdMenuTrigger]=\"menu\" (keydown)=\"_onTriggerKeydown($event, menu)\"> </fd-item-expand>\n }\n <fd-menu #menu>\n @for (tab of tabs; track tab) {\n <li fd-menu-item (onSelect)=\"_overflowingTabHeaderClickHandler(tab.item.panel)\">\n <div fd-menu-interactive>\n <ng-template\n [ngTemplateOutlet]=\"\n !tab.item.titleTemplate && mode === 'icon-only'\n ? iconOnlyTemplate\n : tab.item.titleTemplate || textTitle\n \"\n [ngTemplateOutletContext]=\"{ $implicit: tab.item }\"\n ></ng-template>\n </div>\n </li>\n }\n </fd-menu>\n </ng-container>\n </fd-overflow-layout>\n</div>\n<div\n class=\"fd-tabs__content\"\n [style.max-height]=\"maxContentHeight\"\n fdScrollSpy\n #scrollSpy=\"fdScrollSpy\"\n fd-scrollbar\n [trackedTags]=\"['fd-tab']\"\n [scrollSpyDisabled]=\"_disableScrollSpy\"\n (spyChange)=\"highlightActiveTab($event?.id)\"\n>\n <ng-content></ng-content>\n</div>\n<ng-template #textTitle let-tab>\n <span fd-menu-title>{{ tab.title }}</span>\n</ng-template>\n<ng-template #iconOnlyTemplate let-tab>\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n</ng-template>\n","import { FocusKeyManager } from '@angular/cdk/a11y';\nimport { LEFT_ARROW, RIGHT_ARROW } from '@angular/cdk/keycodes';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n DestroyRef,\n ElementRef,\n HostListener,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n QueryList,\n ViewEncapsulation,\n computed,\n effect,\n inject\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { CssClassBuilder, KeyUtil, RtlService, applyCssClass } from '@fundamental-ngx/cdk/utils';\nimport { ContentDensityObserver, contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';\nimport { Subscription, merge } from 'rxjs';\nimport { TabItemDirective } from '../tab-item/tab-item.directive';\nimport { TabLinkDirective } from '../tab-link/tab-link.directive';\nimport { TabModes, TabSizes } from '../tab-list.component';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-tab-nav]',\n template: ` <ng-content></ng-content>`,\n providers: [contentDensityObserverProviders()],\n styleUrl: './tab-nav.component.scss',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TabNavComponent implements AfterContentInit, OnChanges, OnInit, OnDestroy, CssClassBuilder {\n /** Apply user custom styles */\n @Input()\n class: string;\n\n /**\n * Whether user wants to use tab component in certain mode. Modes available:\n * 'icon-only' | 'process' | 'filter'\n */\n @Input()\n mode: TabModes;\n\n /** Size of tab, it's mostly about adding spacing on tab container, available sizes 's' | 'm' | 'l' | 'xl' | 'xxl' */\n @Input()\n size: TabSizes = 'm';\n\n /** @hidden */\n @ContentChildren(TabLinkDirective, { descendants: true })\n links: QueryList<TabLinkDirective>;\n\n /** @hidden */\n @ContentChildren(TabItemDirective, { descendants: true })\n items: QueryList<TabItemDirective>;\n\n /** @hidden */\n protected readonly _dir = computed(() => (this._rtlService?.rtl() ? 'rtl' : 'ltr'));\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** An RxJS Subject that will kill the data stream upon component’s destruction (for unsubscribing) */\n private readonly _destroyRef = inject(DestroyRef);\n\n /** @hidden */\n private readonly _rtlService = inject(RtlService, { optional: true });\n\n /** @hidden */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n\n /** @hidden */\n private _keyboardEventsManager: FocusKeyManager<TabLinkDirective>;\n\n /** @hidden */\n constructor(public readonly elementRef: ElementRef) {\n this._contentDensityObserver.subscribe();\n\n // React to RTL changes for keyboard navigation\n effect(() => {\n const dir = this._dir();\n if (this._keyboardEventsManager) {\n this._keyboardEventsManager.withHorizontalOrientation(dir);\n }\n });\n }\n\n /** @hidden\n * CssClassBuilder interface implementation\n * function must return single string\n * function is responsible for order which css classes are applied\n */\n @applyCssClass\n buildComponentCssClass(): string[] {\n return [`fd-tabs`, this.mode ? 'fd-tabs--' + this.mode : '', `fd-tabs--${this.size}`, this.class];\n }\n\n /** @hidden */\n @HostListener('keyup', ['$event'])\n protected _keyUpHandler(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, [LEFT_ARROW, RIGHT_ARROW])) {\n this._keyboardEventsManager.onKeydown(event);\n }\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n this._setupKeyManager();\n this._refreshSubscription();\n this._listenOnContentQueryListChange();\n }\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscriptions.unsubscribe();\n this._keyboardEventsManager?.destroy();\n }\n\n /** Function that gives possibility to get all the link directives, with and without nav__item wrapper */\n get tabLinks(): TabLinkDirective[] {\n let tabLinks: TabLinkDirective[] = [];\n if (this.links) {\n tabLinks = tabLinks.concat(this.links.map((link) => link));\n }\n if (this.items) {\n tabLinks = tabLinks.concat(this.items.filter((item) => !!item.linkItem).map((item) => item.linkItem));\n }\n return tabLinks;\n }\n\n /**\n * Function to select a new tab from an index.\n * @param tabIndex Index of the tab to select.\n */\n selectTab(tabIndex: number): void {\n this.tabLinks[tabIndex].elementRef.nativeElement.click();\n }\n\n /**\n * @hidden\n * Every time any of query is changed, ex. tab is removed or added\n * reference to keydown subscriptions handler is renewed\n */\n private _listenOnContentQueryListChange(): void {\n merge(this.links.changes, this.items.changes)\n .pipe(takeUntilDestroyed(this._destroyRef))\n .subscribe(() => this._refreshSubscription());\n }\n\n /** Whether any QueryList detects any changes */\n private _refreshSubscription(): void {\n this._subscriptions.unsubscribe();\n this._subscriptions = new Subscription();\n this._listenToFocusedLinks();\n\n this.links.changes.pipe(takeUntilDestroyed(this._destroyRef)).subscribe(() => {\n this._listenToFocusedLinks();\n });\n }\n\n /** @hidden */\n private _listenToFocusedLinks(): void {\n const links = this.links.toArray();\n links.forEach((link) => {\n this._subscriptions.add(\n link.focused.subscribe(() => {\n this._keyboardEventsManager.setActiveItem(links.findIndex((item) => item === link));\n })\n );\n });\n }\n\n /** @hidden */\n private _setupKeyManager(): void {\n this._keyboardEventsManager?.destroy();\n this._keyboardEventsManager = new FocusKeyManager(this.links).withWrap().withHorizontalOrientation(this._dir());\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { TabListComponent } from './tab-list.component';\nimport { TabPanelComponent } from './tab-panel/tab-panel.component';\n\nimport { TabItemDirective } from './tab-item/tab-item.directive';\nimport { TabLinkDirective } from './tab-link/tab-link.directive';\nimport { TabNavComponent } from './tab-nav/tab-nav.component';\nimport {\n TabCountDirective,\n TabCounterHeaderDirective,\n TabHeaderDirective,\n TabIconComponent,\n TabLabelDirective,\n TabProcessDirective,\n TabProcessIconDirective,\n TabSeparatorDirective,\n TabTagDirective,\n TabTitleDirective\n} from './tab-utils/tab-directives';\n\nconst components = [\n TabListComponent,\n TabPanelComponent,\n TabTitleDirective,\n TabNavComponent,\n TabItemDirective,\n TabLinkDirective,\n TabTagDirective,\n TabIconComponent,\n TabCountDirective,\n TabLabelDirective,\n TabProcessDirective,\n TabHeaderDirective,\n TabCounterHeaderDirective,\n TabProcessIconDirective,\n TabSeparatorDirective\n];\n\n/**\n * @deprecated\n * Use `@fundamental-ngx/platform/icon-tab-bar` instead\n */\n@NgModule({\n imports: [...components],\n exports: [...components]\n})\nexport class TabsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-core-tabs.mjs","sources":["../../../../libs/core/tabs/tab-utils/tab-directives.ts","../../../../libs/core/tabs/tab-item-expand/tab-item-expand.component.ts","../../../../libs/core/tabs/tab-item-expand/tab-item-expand.component.html","../../../../libs/core/tabs/tab-link/tab-link.directive.ts","../../../../libs/core/tabs/tab-item/tab-item.directive.ts","../../../../libs/core/tabs/tab-list.token.ts","../../../../libs/core/tabs/tab-panel/tab-panel.component.ts","../../../../libs/core/tabs/tab-panel/tab-panel.component.html","../../../../libs/core/tabs/tab-utils/tab-info.class.ts","../../../../libs/core/tabs/tab-list.component.ts","../../../../libs/core/tabs/tab-list.component.html","../../../../libs/core/tabs/tab-nav/tab-nav.component.ts","../../../../libs/core/tabs/tabs.module.ts","../../../../libs/core/tabs/fundamental-ngx-core-tabs.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n ElementRef,\n HostBinding,\n Input,\n OnChanges,\n ViewEncapsulation\n} from '@angular/core';\nimport { CssClassBuilder, applyCssClass } from '@fundamental-ngx/cdk/utils';\nimport { FD_DEFAULT_ICON_FONT_FAMILY, IconComponent, IconFont } from '@fundamental-ngx/core/icon';\n\n/**\n * Directive used to identify the template which will populate the tab header.\n * Used to achieve complex headers that require more than a string.\n *\n * ```html\n * <fd-tab>\n * <ng-template fd-tab-title>\n * <fd-icon [glyph]=\"'delete'\"></fd-icon>\n * <span>Tab Label</span>\n * </ng-template>\n * </fd-tab>\n * ```\n */\n@Directive({\n selector: '[fdTabTitleTemplate], [fd-tab-title-template]',\n standalone: true\n})\nexport class TabTitleDirective {}\n\n/**\n * Directive for counter element, available in most of the modes on `tab` component\n */\n@Directive({\n selector: '[fdTabCount], [fd-tab-count]',\n standalone: true\n})\nexport class TabCountDirective {\n /** @hidden */\n @HostBinding('class.fd-tabs__count')\n fdTabsCountClass = true;\n}\n\n/**\n * Directive for icon element, available in most of the modes on `tab` component\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-tab-icon]',\n template: `\n @if (icon) {\n <fd-icon role=\"presentation\" [glyph]=\"icon\" [font]=\"iconFont\"></fd-icon>\n }\n <ng-content></ng-content>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [IconComponent]\n})\nexport class TabIconComponent implements CssClassBuilder, OnChanges {\n /** Apply user custom styles */\n @Input()\n class: string;\n\n /**\n * The icon to include inside the element\n * See the icon page for the list of icons.\n */\n @Input()\n icon: string;\n\n /** Icon font family */\n @Input()\n iconFont: IconFont = FD_DEFAULT_ICON_FONT_FAMILY;\n\n /** @hidden */\n constructor(public readonly elementRef: ElementRef) {}\n\n /** @hidden CssClassBuilder interface implementation\n * function must return single string\n * function is responsible for order which css classes are applied\n */\n @applyCssClass\n buildComponentCssClass(): string[] {\n return ['fd-tabs__icon', this.class];\n }\n\n /** @hidden\n * Function runs when component is initialized\n * function should build component css class\n * function should build css style\n */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n}\n\n@Directive({\n selector: '[fdTabTag], [fd-tab-tag]',\n host: {\n class: 'fd-tabs__tag'\n },\n standalone: true\n})\nexport class TabTagDirective {}\n\n@Directive({\n selector: '[fdTabLabel], [fd-tab-label]',\n host: {\n class: 'fd-tabs__label'\n },\n standalone: true\n})\nexport class TabLabelDirective {}\n\n@Directive({\n selector: '[fdTabProcess], [fd-tab-process]',\n host: {\n class: 'fd-tabs__process'\n },\n standalone: true\n})\nexport class TabProcessDirective {}\n\n@Directive({\n selector: '[fdTabHeader], [fd-tab-header]',\n host: {\n class: 'fd-tabs__header'\n },\n standalone: true\n})\nexport class TabHeaderDirective {}\n\n@Directive({\n selector: '[fdTabCounterHeader], [fd-tab-counter-header]',\n host: {\n class: 'fd-tabs__counter-header'\n },\n standalone: true\n})\nexport class TabCounterHeaderDirective {}\n\n@Directive({\n selector: '[fdTabProcessIcon], [fd-tab-process-icon]',\n host: {\n class: 'fd-tabs__process-icon'\n },\n standalone: true\n})\nexport class TabProcessIconDirective {}\n\n@Directive({\n selector: '[fdTabSeparator], [fd-tab-separator]',\n host: {\n class: 'fd-tabs__separator'\n },\n standalone: true\n})\nexport class TabSeparatorDirective {}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { IconComponent } from '@fundamental-ngx/core/icon';\nimport { FdTranslatePipe } from '@fundamental-ngx/i18n';\nimport { TabTagDirective } from '../tab-utils/tab-directives';\n\n/**\n * Represents a list of tab-panels.\n */\n@Component({\n selector: 'fd-item-expand',\n templateUrl: './tab-item-expand.component.html',\n styleUrl: './tab-item-expand.component.scss',\n host: {\n role: 'tab',\n class: 'fd-tabs__item fd-tabs__item--overflow'\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [TabTagDirective, IconComponent, FdTranslatePipe]\n})\nexport class TabItemExpandComponent {}\n","<a class=\"fd-tabs__link\" role=\"tab\" [attr.tabindex]=\"0\">\n <span fd-tab-tag>{{ ('coreTabs.tabListExpandButtonText' | fdTranslate)() }}</span>\n <fd-icon glyph=\"slim-arrow-down\" [attr.aria-label]=\"('coreTabs.expandIconLabel' | fdTranslate)()\"></fd-icon>\n</a>\n","import { FocusableOption } from '@angular/cdk/a11y';\nimport { ENTER, SPACE } from '@angular/cdk/keycodes';\nimport { Directive, EventEmitter, HostBinding, HostListener, Input, Output } from '@angular/core';\nimport { AbstractFdNgxClass, KeyUtil } from '@fundamental-ngx/cdk/utils';\n\n/**\n * Tab link for nav mode\n *\n * ```html\n * <a fd-tab-link>\n * link\n * </a>\n * ```\n */\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-tab-link]',\n host: {\n role: 'tab',\n tabindex: '-1'\n },\n standalone: true\n})\nexport class TabLinkDirective extends AbstractFdNgxClass implements FocusableOption {\n /** Whether the link is active */\n @Input()\n @HostBinding('attr.aria-selected')\n active: boolean;\n\n /**\n * Only visual / accessibility thing on tab-nav mode\n * RouterLink does not respect preventDefault/stopPropagation\n */\n @Input()\n @HostBinding('attr.aria-disabled')\n @HostBinding('class.is-disabled')\n disabled: boolean;\n\n /** Event Emitted always when, any keyboard event is dispatched on this element */\n @Output()\n readonly keyDown: EventEmitter<KeyboardEvent> = new EventEmitter<KeyboardEvent>();\n\n /** Event Emitted when item has been focused. */\n @Output()\n readonly focused = new EventEmitter<void>();\n\n /** @hidden */\n @HostListener('focus')\n protected _onFocus(): void {\n this.focused.emit();\n }\n\n /** @hidden */\n @HostListener('keyup', ['$event'])\n protected _onKeyUp(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, [ENTER, SPACE])) {\n this.focused.emit();\n }\n }\n\n /** @hidden */\n _setProperties(): void {\n this._addClassToElement('fd-tabs__link');\n if (this.active) {\n this._addClassToElement('is-selected');\n }\n }\n\n /** @hidden */\n focus(): void {\n this.elementRef.nativeElement.focus();\n }\n}\n","import { ContentChild, Directive, ElementRef, HostBinding, Input, OnChanges, OnInit } from '@angular/core';\nimport { CssClassBuilder, Nullable, applyCssClass } from '@fundamental-ngx/cdk/utils';\nimport { TabLinkDirective } from '../tab-link/tab-link.directive';\n\nexport type TabItemState = 'success' | 'error' | 'warning' | 'information' | 'neutral';\n\n/**\n * Tab Item is optional wrapper for Tab link\n *\n * ```html\n * <div fd-tab-item>\n * <a fd-tab-link>\n * link\n * </a>\n * </div>\n * ```\n */\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-tab-item]',\n standalone: true\n})\nexport class TabItemDirective implements CssClassBuilder, OnChanges, OnInit {\n /** Apply user custom styles */\n @Input()\n class = '';\n\n /** Semantic type of the tab item */\n @Input()\n tabItemState: Nullable<TabItemState>;\n\n /** This should be used only on `filterMode`. Flag should be enable for first item */\n @Input()\n header: boolean;\n\n /** Disabled state for tab item */\n @Input()\n @HostBinding('attr.aria-disabled')\n @HostBinding('class.is-disabled')\n disabled = false;\n\n /** Defines if there will be added fd-tabs__item class. Enabled by default. */\n @Input()\n fdTabItemClass = true;\n\n /** @hidden */\n @ContentChild(TabLinkDirective)\n linkItem: TabLinkDirective;\n\n /** @hidden */\n constructor(public readonly elementRef: ElementRef) {}\n\n /** @hidden */\n @applyCssClass\n buildComponentCssClass(): string[] {\n return [\n this.fdTabItemClass ? 'fd-tabs__item' : '',\n this.header ? 'fd-tabs__item--header' : '',\n this.tabItemState ? `fd-tabs__item--${this.tabItemState}` : '',\n this.class\n ];\n }\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { TabListComponentInterface } from './tab-list-component.interface';\n\nexport const LIST_COMPONENT = new InjectionToken<TabListComponentInterface>('ListComponent');\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n OnChanges,\n Optional,\n Output,\n TemplateRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { Nullable } from '@fundamental-ngx/cdk/utils';\nimport { Subject } from 'rxjs';\nimport { TabItemState } from '../tab-item/tab-item.directive';\nimport { TabListComponentInterface } from '../tab-list-component.interface';\nimport { LIST_COMPONENT } from '../tab-list.token';\nimport { TabTitleDirective } from '../tab-utils/tab-directives';\n\nlet tabPanelUniqueId = 0;\n\nexport class TabPanelStateChange {\n /**\n * Tab panel state change event\n * @param target Tab panel that is being changed\n * @param state New state of the tab panel\n */\n constructor(\n public target: TabPanelComponent,\n public state: boolean\n ) {}\n}\n\n/**\n * Represents the body of a tab element. It also contains elements pertaining to the associated tab header.\n */\n@Component({\n selector: 'fd-tab',\n templateUrl: './tab-panel.component.html',\n host: {\n role: 'tabpanel',\n class: 'fd-tabs__panel',\n '[id]': '_panelId',\n '[attr.aria-labelledby]': 'id',\n '[class.is-expanded]': '_expandedClass'\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: []\n})\nexport class TabPanelComponent implements OnChanges {\n /** Id of the tab. If none is provided, one will be generated. */\n @Input()\n id: string = 'fd-tab-panel' + tabPanelUniqueId++;\n\n /** Aria-label of the tab. */\n @Input()\n ariaLabel: Nullable<string>;\n\n /** Id of the element that labels the tab. */\n @Input()\n ariaLabelledBy: Nullable<string>;\n\n /** The title of tab, depending on mode used, it will be placed in different position */\n @Input()\n title: Nullable<string>;\n\n /** The count of tab, depending on mode used, it will be placed in different position */\n @Input()\n count: Nullable<string>;\n\n /** Glyph icon, it can be used only on */\n @Input()\n glyph: string;\n\n /** Glyph icon, it can be used only on */\n @Input()\n header = false;\n\n /** Disabled state for tab item */\n @Input()\n disabled = false;\n\n /** Semantic type of the tab item */\n @Input()\n tabState: Nullable<TabItemState>;\n\n /** Event that is emitted when the tab panel has been opened. */\n @Output()\n opened = new EventEmitter<void>();\n\n /** Event that is emitted when the tab panel has been closed. */\n @Output()\n closed = new EventEmitter<void>();\n\n /** @hidden */\n @ContentChild(TabTitleDirective, { read: TemplateRef })\n titleTemplate: TemplateRef<any>;\n\n /** @hidden Event that is emitted when the tab panel . */\n _expandedStateChange = new Subject<TabPanelStateChange>();\n\n /** @hidden */\n _expandedClass = false;\n\n /** @hidden */\n _forcedVisibility = false;\n\n /** @hidden Whether to display tab panel content */\n private _expanded = false;\n\n /** @hidden */\n get _panelId(): string {\n return this.id + '-panel';\n }\n\n /** @hidden */\n constructor(\n public elementRef: ElementRef,\n private _changeDetRef: ChangeDetectorRef,\n @Optional() @Inject(LIST_COMPONENT) private readonly _tabsComponent: TabListComponentInterface | null\n ) {}\n\n /** @hidden\n * Thanks to OnPush change strategy detection on tab-list parent component,\n * every change of any property should be reported. */\n ngOnChanges(): void {\n this._tabsComponent?.tabPanelPropertyChanged.next();\n }\n\n /** Whether tab panel content is expanded */\n get expanded(): boolean {\n return this._expanded;\n }\n\n /** Whether to expand tab panel content */\n open(open: boolean): void {\n this._expandedStateChange.next(new TabPanelStateChange(this, open));\n }\n\n /** @hidden Set new expand state */\n _expand(expanded: boolean): void {\n if (this._expanded !== expanded) {\n this._expanded = expanded;\n\n if (expanded) {\n this.opened.emit();\n } else {\n this.closed.emit();\n }\n\n this._changeDetRef.detectChanges();\n\n queueMicrotask(() => {\n this._expandedClass = this.expanded;\n this._changeDetRef.markForCheck();\n });\n }\n }\n\n /** @hidden */\n _focusFirstFocusableElement(): void {\n this.elementRef.nativeElement\n .querySelector('button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])')\n ?.focus({ preventScroll: true });\n }\n}\n","@if (expanded) {\n <ng-content></ng-content>\n}\n","import { TemplateRef } from '@angular/core';\n\nimport { Nullable } from '@fundamental-ngx/cdk/utils';\nimport { TabItemState } from '../tab-item/tab-item.directive';\nimport { TabPanelComponent } from '../tab-panel/tab-panel.component';\n\n/** @hidden */\nexport class TabInfo {\n /** Whether the tab is active */\n active: boolean;\n\n /** @hidden Width of the tab header */\n headerWidth: number;\n\n /** Corresponding tab panel */\n panel: TabPanelComponent;\n\n /** @hidden */\n constructor(tabPanel: TabPanelComponent) {\n this.panel = tabPanel;\n this.active = tabPanel.expanded;\n }\n\n /** Tab header title */\n get title(): Nullable<string> {\n return this.panel.title;\n }\n\n /** Whether the tab is disabled */\n get disabled(): boolean {\n return this.panel.disabled;\n }\n\n /** Whether the tab is tab header */\n get isHeader(): boolean {\n return this.panel.header;\n }\n\n /** @hidden */\n get id(): Nullable<string> {\n return this.panel.id;\n }\n\n /** @hidden */\n get ariaLabel(): Nullable<string> {\n return this.panel.ariaLabel;\n }\n\n /** @hidden */\n get ariaLabelledBy(): Nullable<string> {\n return this.panel.ariaLabelledBy;\n }\n\n /** @hidden */\n get tabState(): Nullable<TabItemState> {\n return this.panel.tabState;\n }\n\n /** @hidden */\n get titleTemplate(): TemplateRef<any> {\n return this.panel.titleTemplate;\n }\n\n /** @hidden */\n get count(): Nullable<string> {\n return this.panel.count;\n }\n\n /** @hidden */\n get glyph(): string {\n return this.panel.glyph;\n }\n\n /** @hidden */\n get forcedVisibility(): boolean {\n return this.panel._forcedVisibility;\n }\n\n /** @hidden */\n get panelId(): string {\n return this.panel._panelId;\n }\n}\n","import { ENTER, SPACE } from '@angular/cdk/keycodes';\nimport { CdkScrollable } from '@angular/cdk/overlay';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n DestroyRef,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n QueryList,\n ViewChild,\n ViewChildren,\n ViewEncapsulation,\n forwardRef\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { KeyUtil, Nullable, scrollTop, warnOnce } from '@fundamental-ngx/cdk/utils';\nimport { ContentDensityObserver, contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';\nimport {\n MenuComponent,\n MenuInteractiveComponent,\n MenuItemComponent,\n MenuTitleDirective,\n MenuTriggerDirective\n} from '@fundamental-ngx/core/menu';\nimport {\n OverflowExpandDirective,\n OverflowItemRefDirective,\n OverflowLayoutComponent,\n OverflowLayoutFocusableItemDirective,\n OverflowLayoutItemDirective\n} from '@fundamental-ngx/core/overflow-layout';\nimport { ScrollSpyDirective } from '@fundamental-ngx/core/scroll-spy';\nimport { ScrollbarDirective } from '@fundamental-ngx/core/scrollbar';\nimport { FD_TABLIST, TabList } from '@fundamental-ngx/core/shared';\nimport { Observable, Subject, Subscription, fromEvent, merge } from 'rxjs';\nimport { debounceTime, delay, filter, first, map, startWith, switchMap, tap } from 'rxjs/operators';\nimport { TabItemExpandComponent } from './tab-item-expand/tab-item-expand.component';\nimport { TabItemDirective } from './tab-item/tab-item.directive';\nimport { TabLinkDirective } from './tab-link/tab-link.directive';\nimport { TabListComponentInterface } from './tab-list-component.interface';\nimport { LIST_COMPONENT } from './tab-list.token';\nimport { TabPanelComponent } from './tab-panel/tab-panel.component';\nimport {\n TabCountDirective,\n TabCounterHeaderDirective,\n TabHeaderDirective,\n TabIconComponent,\n TabLabelDirective,\n TabProcessDirective,\n TabProcessIconDirective,\n TabSeparatorDirective,\n TabTagDirective\n} from './tab-utils/tab-directives';\nimport { TabInfo } from './tab-utils/tab-info.class';\n\nexport type TabModes = 'icon-only' | 'process' | 'filter';\n\nexport type TabSizes = 's' | 'm' | 'l' | 'xl' | 'xxl';\n\n/**\n * Represents a list of tab-panels.\n * @deprecated\n * Use `@fundamental-ngx/platform/icon-tab-bar` instead\n */\n@Component({\n selector: 'fd-tab-list',\n templateUrl: './tab-list.component.html',\n styleUrl: './tab-list.component.scss',\n host: {\n class: 'fd-tabs-custom'\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n contentDensityObserverProviders(),\n {\n provide: LIST_COMPONENT,\n useExisting: TabListComponent\n },\n {\n provide: FD_TABLIST,\n useExisting: TabListComponent\n }\n ],\n imports: [\n OverflowLayoutComponent,\n OverflowItemRefDirective,\n TabItemDirective,\n OverflowLayoutItemDirective,\n TabLinkDirective,\n OverflowLayoutFocusableItemDirective,\n NgTemplateOutlet,\n TabHeaderDirective,\n TabCounterHeaderDirective,\n TabLabelDirective,\n TabIconComponent,\n TabCountDirective,\n TabProcessDirective,\n TabTagDirective,\n TabProcessIconDirective,\n TabSeparatorDirective,\n OverflowExpandDirective,\n TabItemExpandComponent,\n MenuTriggerDirective,\n MenuComponent,\n MenuItemComponent,\n MenuInteractiveComponent,\n ScrollSpyDirective,\n CdkScrollable,\n ScrollbarDirective,\n MenuTitleDirective\n ]\n})\nexport class TabListComponent\n implements TabListComponentInterface, AfterContentInit, AfterViewInit, OnDestroy, TabList\n{\n /** Size of tab, it's mostly about adding spacing on tab container, available sizes 's' | 'm' | 'l' | 'xl' | 'xxl' */\n @Input()\n size: TabSizes = 'm';\n\n /**\n * Whether user wants to use tab component in certain mode. Modes available:\n * 'icon-only' | 'process' | 'filter'\n */\n @Input()\n mode: TabModes;\n\n /** Whether to move tabs overflowing in the tab bar to the dropdown */\n @Input()\n collapseOverflow = true;\n\n /** Limits the maximum number of tabs visible in the tab bar in collapseOverflow mode.\n * Other tabs will be moved to the collapsed tabs dropdown */\n @Input()\n maxVisibleTabs = Infinity;\n\n /** Whether to open tab content one under another without collapsing */\n @Input()\n stackContent = false;\n\n /** Maximum height of the content */\n @Input()\n maxContentHeight = '100%';\n\n /** Whether to enable collapsing expanded tab on expanded tab click */\n @Input()\n collapsibleTabs = false;\n\n /** Initially selected tab (by id). First not disabled one if not specified. */\n @Input()\n defaultTab: Nullable<string>;\n\n /** Whether to try to keep selected tab (default value) on tabs change or to select default one (first if not specified). */\n @Input()\n selectDefaultOnTabsChange = false;\n\n /** Whether to focus the first focusable element in a tab panel when using stacked tabs. */\n @Input()\n focusFirstFocusableElement = true;\n\n /** Event emitted when the selected panel changes. */\n @Output()\n selectedTabChange = new EventEmitter<TabPanelComponent>();\n\n /** Event emitted when the selected panel index changes. */\n @Output()\n selectedTabIndexChange = new EventEmitter<number>();\n\n /** Event emitted when visible items count has been changed. */\n @Output()\n visibleItemsCount = new EventEmitter<number>();\n\n /** Event emitted when hidden items count has been changed. */\n @Output()\n hiddenItemsCount = new EventEmitter<number>();\n\n /** @hidden */\n @ContentChildren(forwardRef(() => TabPanelComponent))\n tabPanels: QueryList<TabPanelComponent>;\n\n /** @hidden */\n @ViewChildren(TabLinkDirective)\n tabHeaderLinks: QueryList<TabLinkDirective>;\n\n /** @hidden */\n @ViewChildren(TabItemDirective)\n tabHeaders: QueryList<TabItemDirective>;\n\n /** @hidden */\n @ViewChild(TabItemExpandComponent, { read: ElementRef })\n overflowTrigger: ElementRef;\n\n /** @hidden */\n @ViewChild('headerContainer', { read: ElementRef })\n headerContainer: ElementRef;\n\n /** @hidden */\n @ViewChild(ScrollbarDirective)\n _scrollbar: ScrollbarDirective;\n\n /** @hidden */\n @ViewChild('menu', { read: MenuComponent })\n menu: MenuComponent;\n\n /** @hidden */\n @ViewChild(OverflowLayoutComponent)\n private _overflowLayout: OverflowLayoutComponent;\n\n /** @hidden */\n @ViewChild('scrollSpy', { read: ScrollSpyDirective })\n private readonly _scrollSpy: Nullable<ScrollSpyDirective>;\n\n /** @hidden */\n get contentContainer(): ElementRef<HTMLElement> {\n return this._scrollbar?.elementRef;\n }\n\n /** @hidden Collection of tabs in original order */\n _tabArray: TabInfo[] = [];\n\n /** @hidden Whether to disable scroll spy */\n _disableScrollSpy = false;\n\n /** @hidden */\n _init = true;\n\n /** @hidden */\n _currentNumberOfTabs = 0;\n\n /** Scrollable element reference. */\n get scrollableElement(): Nullable<ElementRef> {\n return this._scrollbar?.elementRef;\n }\n\n /** Event is thrown always when tab is selected by keyboard actions */\n readonly tabSelected: Subject<number> = new Subject<number>();\n\n /** Event is thrown always, when some property is changed */\n readonly tabPanelPropertyChanged: Subject<void> = new Subject<void>();\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** @hidden */\n constructor(\n private readonly _changeDetectorRef: ChangeDetectorRef,\n readonly _contentDensityObserver: ContentDensityObserver,\n private readonly _destroyRef: DestroyRef\n ) {\n warnOnce('TabListComponent is deprecated, use `@fundamental-ngx/platform/icon-tab-bar` instead');\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n this._setupTabPanelsChangeListeners();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._initStackContentSubscription();\n this._listenOnTabPanelsExpandedChange();\n this._listenOnTabPanelsAndInitiallyExpandTabPanel();\n this._listenOnPropertiesChange();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscriptions.unsubscribe();\n }\n\n /** @hidden */\n _tabHeaderClickHandler(tabPanel: TabPanelComponent): void {\n this._expandTab(tabPanel, !tabPanel.expanded);\n }\n\n /** @hidden */\n _tabHeaderKeydownHandler(event: KeyboardEvent, tabPanel: TabPanelComponent): void {\n if (!KeyUtil.isKeyCode(event, [ENTER, SPACE])) {\n return;\n }\n\n event.preventDefault();\n this._tabHeaderClickHandler(tabPanel);\n }\n\n /** @hidden */\n _overflowingTabHeaderClickHandler(tabPanel: TabPanelComponent): void {\n this._tabArray.forEach((tab) => {\n tab.panel._forcedVisibility = tab.panel === tabPanel;\n });\n\n this._expandTab(tabPanel, true, false);\n\n this._overflowLayout.triggerRecalculation();\n\n this._detectChanges();\n }\n\n /** @hidden */\n selectTab(id: Nullable<string>): void {\n this.highlightActiveTab(id);\n }\n\n /** @hidden */\n highlightActiveTab(id: Nullable<string>): void {\n const tab = this._tabArray.find((_tab) => _tab.panel._panelId === id);\n if (tab) {\n const _tabWasActive = tab.active;\n this._activateStackedTab(tab.panel, false);\n if (!_tabWasActive) {\n this._selectedTabChange(tab.panel);\n }\n }\n }\n\n /** @hidden */\n _onTriggerKeydown(event: KeyboardEvent, menuRef: MenuComponent): void {\n if (KeyUtil.isKeyCode(event, [ENTER, SPACE])) {\n event.preventDefault();\n menuRef.toggle();\n }\n }\n\n /** @hidden */\n private get _tabPanelsChange$(): Observable<TabPanelComponent[]> {\n return this.tabPanels.changes.pipe(\n startWith(this.tabPanels),\n map((tabPanels) => tabPanels.toArray()),\n takeUntilDestroyed(this._destroyRef)\n );\n }\n\n /** @hidden */\n private _detectChanges(): void {\n if (this._changeDetectorRef && !this._changeDetectorRef['destroyed']) {\n this._changeDetectorRef.detectChanges();\n }\n }\n\n /** @hidden */\n private _setupTabPanelsChangeListeners(): void {\n this._listenOnTabPanelsAndUpdateStorageStructures();\n }\n\n /** @hidden Setup mechanisms required for handling the stacked content behavior */\n private _initStackContentSubscription(): void {\n this._tabPanelsChange$\n .pipe(\n filter(() => this.stackContent),\n delay(0),\n takeUntilDestroyed(this._destroyRef)\n )\n .subscribe(() =>\n this._tabArray.filter((tab) => !tab.panel.disabled).forEach((tab) => tab.panel._expand(true))\n );\n }\n\n /** @hidden */\n private _listenOnTabPanelsAndUpdateStorageStructures(): void {\n this._tabPanelsChange$\n .pipe(\n map((tabPanels) =>\n tabPanels.map((el) => this._tabArray?.find((tabInfo) => tabInfo.panel === el) || new TabInfo(el))\n ),\n tap((tabs) => (this._tabArray = tabs)),\n delay(0),\n takeUntilDestroyed(this._destroyRef)\n )\n .subscribe(() => {\n if (this.stackContent && this._currentNumberOfTabs !== this._tabArray.length) {\n queueMicrotask(() => {\n this._scrollSpy?.onScroll(undefined, true);\n this._currentNumberOfTabs = this._tabArray.length;\n });\n }\n });\n }\n\n /** @hidden */\n private _listenOnTabPanelsExpandedChange(): void {\n this._tabPanelsChange$\n .pipe(\n map((tabPanels) => tabPanels.map((tab) => tab._expandedStateChange.asObservable())),\n switchMap((tabPanels) => merge(...tabPanels)),\n takeUntilDestroyed(this._destroyRef)\n )\n .subscribe((event) => {\n this._tabArray.forEach((tab) => {\n tab.panel._forcedVisibility = tab.panel === event.target;\n });\n this._expandTab(event.target, event.state);\n this._overflowLayout.triggerRecalculation();\n });\n }\n\n /** @hidden */\n private _listenOnTabPanelsAndInitiallyExpandTabPanel(): void {\n this._tabPanelsChange$.pipe(takeUntilDestroyed(this._destroyRef)).subscribe(() => {\n const activeTab = this._tabArray.find((_tab) => _tab.active);\n let tab: Nullable<TabInfo>;\n\n if (!activeTab || this.selectDefaultOnTabsChange) {\n if (this.defaultTab) {\n tab = this._tabArray.find((_tab) => !_tab.disabled && _tab.id === this.defaultTab);\n }\n\n if (!tab) {\n tab = this._tabArray.find((_tab) => !_tab.disabled);\n }\n }\n\n if (tab && activeTab !== tab) {\n this._expandTab(tab.panel, true);\n }\n });\n }\n\n /** @hidden */\n private _listenOnPropertiesChange(): void {\n merge(this.tabPanelPropertyChanged, this.tabPanels.changes)\n .pipe(takeUntilDestroyed(this._destroyRef))\n .subscribe(() => this._detectChanges());\n }\n\n /** @hidden */\n private _activateStackedTab(tabPanel: TabPanelComponent, scroll = true): void {\n if (scroll) {\n this._scrollToPanel(tabPanel);\n }\n this._tabArray.forEach((tab) => {\n tab.active = tab.panel === tabPanel;\n });\n }\n\n /** @hidden */\n private _activateExpandableTab(tabPanel: TabPanelComponent, expand: boolean): void {\n const collapse = this.collapsibleTabs && !expand;\n\n this._tabArray.forEach((tab) => {\n const isActive = tab.panel === tabPanel && !collapse;\n\n tab.panel._expand(isActive);\n tab.active = isActive;\n });\n }\n\n /** @hidden */\n private _expandTab(tabPanel: TabPanelComponent, expand: boolean, detectChanges = true): void {\n if (this.stackContent) {\n this._activateStackedTab(tabPanel);\n } else {\n if (!this._canChangeExpandState(tabPanel, expand)) {\n return;\n }\n\n this._activateExpandableTab(tabPanel, expand);\n }\n\n if (detectChanges) {\n this._detectChanges();\n }\n\n this._selectedTabChange(tabPanel);\n }\n\n /** @hidden */\n private _scrollToPanel(tabPanel: TabPanelComponent): void {\n const panelElement = tabPanel.elementRef.nativeElement;\n const containerElement = this.contentContainer.nativeElement;\n const distanceToScroll = panelElement.offsetTop - containerElement.offsetTop;\n const maximumScrollTop = containerElement.scrollHeight - containerElement.clientHeight;\n const currentScrollPosition = Math.ceil(containerElement.scrollTop);\n\n if (!(currentScrollPosition === maximumScrollTop && distanceToScroll > maximumScrollTop)) {\n !this._init ? (this._disableScrollSpy = true) : (this._init = false);\n fromEvent(containerElement, 'scroll')\n .pipe(debounceTime(100), first(), takeUntilDestroyed(this._destroyRef))\n .subscribe(() => (this._disableScrollSpy = false));\n scrollTop(containerElement, distanceToScroll);\n }\n\n if (this.focusFirstFocusableElement) {\n tabPanel._focusFirstFocusableElement();\n }\n }\n\n /** @hidden Whether tab can be expanded/collapsed */\n private _canChangeExpandState(tabPanel: TabPanelComponent, expand: boolean): boolean {\n return !tabPanel.disabled && expand !== tabPanel.expanded && expand === false ? this.collapsibleTabs : true;\n }\n\n /** @hidden */\n private _selectedTabChange(tabPanel: TabPanelComponent): void {\n this.selectedTabChange.emit(tabPanel);\n\n const index = this._tabArray.findIndex((tabInfo) => tabInfo.panel === tabPanel);\n this.selectedTabIndexChange.emit(index);\n }\n}\n","<div #headerContainer role=\"tablist\" class=\"fd-tabs\" [class]=\"(mode ? 'fd-tabs--' + mode : '') + (' fd-tabs--' + size)\">\n <fd-overflow-layout\n [maxVisibleItems]=\"maxVisibleTabs\"\n [enableKeyboardNavigation]=\"true\"\n navigationTrigger=\"keydown\"\n (hiddenItemsCount)=\"hiddenItemsCount.emit($event)\"\n (visibleItemsCount)=\"visibleItemsCount.emit($event)\"\n >\n @for (tab of _tabArray; track tab; let i = $index; let last = $last) {\n <div\n fd-tab-item\n *fdOverflowItemRef=\"tab\"\n fdOverflowLayoutItem\n [forceVisibility]=\"tab.panel._forcedVisibility\"\n [header]=\"tab.isHeader\"\n [tabItemState]=\"tab.tabState\"\n >\n <a\n fd-tab-link\n role=\"tab\"\n [id]=\"tab.id\"\n [attr.aria-controls]=\"tab.panelId\"\n [attr.aria-label]=\"tab.ariaLabel || null\"\n [attr.aria-labelledby]=\"!tab.ariaLabel && tab.ariaLabelledBy ? tab.ariaLabelledBy : null\"\n fdOverflowLayoutFocusableItem\n [focusable]=\"tab.active\"\n [navigable]=\"!tab.disabled\"\n [active]=\"tab.active\"\n [disabled]=\"tab.disabled\"\n (keydown)=\"_tabHeaderKeydownHandler($event, tab.panel)\"\n (click)=\"_tabHeaderClickHandler(tab.panel)\"\n >\n <ng-template [ngTemplateOutlet]=\"tab.titleTemplate || null\"></ng-template>\n @if (!tab.titleTemplate) {\n @switch (mode) {\n @case ('filter') {\n @if (tab.isHeader) {\n <span fd-tab-header>\n @if (tab.count) {\n <span fd-tab-counter-header>{{ tab.count }}</span>\n }\n @if (tab.title) {\n <span fd-tab-label>{{ tab.title }}</span>\n }\n </span>\n }\n @if (!tab.isHeader) {\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n <span fd-tab-label>{{ tab.title }}</span>\n }\n }\n @case ('icon-only') {\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n }\n @case ('process') {\n @if (tab.glyph) {\n <span fd-tab-icon [icon]=\"tab.glyph\"></span>\n }\n <div fd-tab-process>\n @if (tab.count) {\n <span fd-tab-label>{{ tab.count }}</span>\n }\n @if (tab.title) {\n <span fd-tab-label>{{ tab.title }}</span>\n }\n </div>\n }\n @default {\n @if (tab.count) {\n <p fd-tab-count>{{ tab.count }}</p>\n }\n <span fd-tab-tag>{{ tab.title }}</span>\n }\n }\n }\n </a>\n @if (mode === 'process' && !last) {\n <div fd-tab-process-icon></div>\n }\n </div>\n @if (tab.isHeader) {\n <div fd-tab-separator></div>\n }\n }\n <ng-container *fdOverflowExpand=\"let tabs; items: _tabArray\">\n @if (tabs.length > 0) {\n <fd-item-expand [fdMenuTrigger]=\"menu\" (keydown)=\"_onTriggerKeydown($event, menu)\"> </fd-item-expand>\n }\n <fd-menu #menu>\n @for (tab of tabs; track tab) {\n <li fd-menu-item (onSelect)=\"_overflowingTabHeaderClickHandler(tab.item.panel)\">\n <div fd-menu-interactive>\n <ng-template\n [ngTemplateOutlet]=\"\n !tab.item.titleTemplate && mode === 'icon-only'\n ? iconOnlyTemplate\n : tab.item.titleTemplate || textTitle\n \"\n [ngTemplateOutletContext]=\"{ $implicit: tab.item }\"\n ></ng-template>\n </div>\n </li>\n }\n </fd-menu>\n </ng-container>\n </fd-overflow-layout>\n</div>\n<div\n class=\"fd-tabs__content\"\n [style.max-height]=\"maxContentHeight\"\n fdScrollSpy\n #scrollSpy=\"fdScrollSpy\"\n fd-scrollbar\n [trackedTags]=\"['fd-tab']\"\n [scrollSpyDisabled]=\"_disableScrollSpy\"\n (spyChange)=\"highlightActiveTab($event?.id)\"\n>\n <ng-content></ng-content>\n</div>\n<ng-template #textTitle let-tab>\n <span fd-menu-title>{{ tab.title }}</span>\n</ng-template>\n<ng-template #iconOnlyTemplate let-tab>\n <span fd-tab-icon [icon]=\"tab.glyph\">\n <p fd-tab-count>{{ tab.count }}</p>\n </span>\n</ng-template>\n","import { FocusKeyManager } from '@angular/cdk/a11y';\nimport { LEFT_ARROW, RIGHT_ARROW } from '@angular/cdk/keycodes';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n DestroyRef,\n ElementRef,\n HostListener,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n QueryList,\n ViewEncapsulation,\n computed,\n effect,\n inject\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { CssClassBuilder, KeyUtil, RtlService, applyCssClass } from '@fundamental-ngx/cdk/utils';\nimport { ContentDensityObserver, contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';\nimport { Subscription, merge } from 'rxjs';\nimport { TabItemDirective } from '../tab-item/tab-item.directive';\nimport { TabLinkDirective } from '../tab-link/tab-link.directive';\nimport { TabModes, TabSizes } from '../tab-list.component';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-tab-nav]',\n template: ` <ng-content></ng-content>`,\n providers: [contentDensityObserverProviders()],\n styleUrl: './tab-nav.component.scss',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TabNavComponent implements AfterContentInit, OnChanges, OnInit, OnDestroy, CssClassBuilder {\n /** Apply user custom styles */\n @Input()\n class: string;\n\n /**\n * Whether user wants to use tab component in certain mode. Modes available:\n * 'icon-only' | 'process' | 'filter'\n */\n @Input()\n mode: TabModes;\n\n /** Size of tab, it's mostly about adding spacing on tab container, available sizes 's' | 'm' | 'l' | 'xl' | 'xxl' */\n @Input()\n size: TabSizes = 'm';\n\n /** @hidden */\n @ContentChildren(TabLinkDirective, { descendants: true })\n links: QueryList<TabLinkDirective>;\n\n /** @hidden */\n @ContentChildren(TabItemDirective, { descendants: true })\n items: QueryList<TabItemDirective>;\n\n /** @hidden */\n protected readonly _dir = computed(() => (this._rtlService?.rtl() ? 'rtl' : 'ltr'));\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** An RxJS Subject that will kill the data stream upon component’s destruction (for unsubscribing) */\n private readonly _destroyRef = inject(DestroyRef);\n\n /** @hidden */\n private readonly _rtlService = inject(RtlService, { optional: true });\n\n /** @hidden */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n\n /** @hidden */\n private _keyboardEventsManager: FocusKeyManager<TabLinkDirective>;\n\n /** @hidden */\n constructor(public readonly elementRef: ElementRef) {\n this._contentDensityObserver.subscribe();\n\n // React to RTL changes for keyboard navigation\n effect(() => {\n const dir = this._dir();\n if (this._keyboardEventsManager) {\n this._keyboardEventsManager.withHorizontalOrientation(dir);\n }\n });\n }\n\n /** @hidden\n * CssClassBuilder interface implementation\n * function must return single string\n * function is responsible for order which css classes are applied\n */\n @applyCssClass\n buildComponentCssClass(): string[] {\n return [`fd-tabs`, this.mode ? 'fd-tabs--' + this.mode : '', `fd-tabs--${this.size}`, this.class];\n }\n\n /** @hidden */\n @HostListener('keyup', ['$event'])\n protected _keyUpHandler(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, [LEFT_ARROW, RIGHT_ARROW])) {\n this._keyboardEventsManager.onKeydown(event);\n }\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n this._setupKeyManager();\n this._refreshSubscription();\n this._listenOnContentQueryListChange();\n }\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscriptions.unsubscribe();\n this._keyboardEventsManager?.destroy();\n }\n\n /** Function that gives possibility to get all the link directives, with and without nav__item wrapper */\n get tabLinks(): TabLinkDirective[] {\n let tabLinks: TabLinkDirective[] = [];\n if (this.links) {\n tabLinks = tabLinks.concat(this.links.map((link) => link));\n }\n if (this.items) {\n tabLinks = tabLinks.concat(this.items.filter((item) => !!item.linkItem).map((item) => item.linkItem));\n }\n return tabLinks;\n }\n\n /**\n * Function to select a new tab from an index.\n * @param tabIndex Index of the tab to select.\n */\n selectTab(tabIndex: number): void {\n this.tabLinks[tabIndex].elementRef.nativeElement.click();\n }\n\n /**\n * @hidden\n * Every time any of query is changed, ex. tab is removed or added\n * reference to keydown subscriptions handler is renewed\n */\n private _listenOnContentQueryListChange(): void {\n merge(this.links.changes, this.items.changes)\n .pipe(takeUntilDestroyed(this._destroyRef))\n .subscribe(() => this._refreshSubscription());\n }\n\n /** Whether any QueryList detects any changes */\n private _refreshSubscription(): void {\n this._subscriptions.unsubscribe();\n this._subscriptions = new Subscription();\n this._listenToFocusedLinks();\n\n this.links.changes.pipe(takeUntilDestroyed(this._destroyRef)).subscribe(() => {\n this._listenToFocusedLinks();\n });\n }\n\n /** @hidden */\n private _listenToFocusedLinks(): void {\n const links = this.links.toArray();\n links.forEach((link) => {\n this._subscriptions.add(\n link.focused.subscribe(() => {\n this._keyboardEventsManager.setActiveItem(links.findIndex((item) => item === link));\n })\n );\n });\n }\n\n /** @hidden */\n private _setupKeyManager(): void {\n this._keyboardEventsManager?.destroy();\n this._keyboardEventsManager = new FocusKeyManager(this.links).withWrap().withHorizontalOrientation(this._dir());\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { TabListComponent } from './tab-list.component';\nimport { TabPanelComponent } from './tab-panel/tab-panel.component';\n\nimport { TabItemDirective } from './tab-item/tab-item.directive';\nimport { TabLinkDirective } from './tab-link/tab-link.directive';\nimport { TabNavComponent } from './tab-nav/tab-nav.component';\nimport {\n TabCountDirective,\n TabCounterHeaderDirective,\n TabHeaderDirective,\n TabIconComponent,\n TabLabelDirective,\n TabProcessDirective,\n TabProcessIconDirective,\n TabSeparatorDirective,\n TabTagDirective,\n TabTitleDirective\n} from './tab-utils/tab-directives';\n\nconst components = [\n TabListComponent,\n TabPanelComponent,\n TabTitleDirective,\n TabNavComponent,\n TabItemDirective,\n TabLinkDirective,\n TabTagDirective,\n TabIconComponent,\n TabCountDirective,\n TabLabelDirective,\n TabProcessDirective,\n TabHeaderDirective,\n TabCounterHeaderDirective,\n TabProcessIconDirective,\n TabSeparatorDirective\n];\n\n/**\n * @deprecated\n * Use `@fundamental-ngx/platform/icon-tab-bar` instead\n */\n@NgModule({\n imports: [...components],\n exports: [...components]\n})\nexport class TabsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fundamental-ngx/core",
|
|
3
|
-
"version": "0.62.3
|
|
3
|
+
"version": "0.62.3",
|
|
4
4
|
"schematics": "./schematics/collection.json",
|
|
5
5
|
"ng-update": {
|
|
6
6
|
"migrations": "./schematics/migrations.json"
|
|
@@ -22,8 +22,8 @@
|
|
|
22
22
|
"@angular/forms": "^21.0.0",
|
|
23
23
|
"@angular/platform-browser": "^21.0.0",
|
|
24
24
|
"@angular/router": "^21.0.0",
|
|
25
|
-
"@fundamental-ngx/cdk": "0.62.3
|
|
26
|
-
"@fundamental-ngx/i18n": "0.62.3
|
|
25
|
+
"@fundamental-ngx/cdk": "0.62.3",
|
|
26
|
+
"@fundamental-ngx/i18n": "0.62.3",
|
|
27
27
|
"@sap-theming/theming-base-content": "^11.35.0",
|
|
28
28
|
"fundamental-styles": "0.41.6",
|
|
29
29
|
"rxjs": "^7.8.0"
|