diff --git a/libs/docs/platform/icon-tab-bar/examples/platform-icon-tab-bar-process-type-example/platform-icon-tab-bar-process-type-example.component.ts b/libs/docs/platform/icon-tab-bar/examples/platform-icon-tab-bar-process-type-example/platform-icon-tab-bar-process-type-example.component.ts
index 72ad2ca7869..86791f97546 100644
--- a/libs/docs/platform/icon-tab-bar/examples/platform-icon-tab-bar-process-type-example/platform-icon-tab-bar-process-type-example.component.ts
+++ b/libs/docs/platform/icon-tab-bar/examples/platform-icon-tab-bar-process-type-example/platform-icon-tab-bar-process-type-example.component.ts
@@ -1,13 +1,15 @@
import { Component, Input, OnInit } from '@angular/core';
-import { IconTabBarComponent, TabConfig } from '@fundamental-ngx/platform/icon-tab-bar';
+import { IconComponent } from '@fundamental-ngx/core';
+import { IconTabBarComponent, IconTabBarTabComponent, TabConfig } from '@fundamental-ngx/platform/icon-tab-bar';
import { cloneDeep } from 'lodash-es';
+import { IconTabTitleDirective } from '../../../../../platform/icon-tab-bar/directives/icon-tab-title.directive';
import { iconTypeConfig, longIconTypeConfig } from '../config-for-examples/icon-type-config';
@Component({
selector: 'fdp-platform-icon-tab-bar-process-type-example',
templateUrl: './platform-icon-tab-bar-process-type-example.component.html',
standalone: true,
- imports: [IconTabBarComponent]
+ imports: [IconTabBarComponent, IconTabTitleDirective, IconTabBarTabComponent, IconComponent]
})
export class PlatformIconTabBarProcessTypeExampleComponent implements OnInit {
@Input()
diff --git a/libs/docs/platform/icon-tab-bar/examples/tabs-content/icon-tab-bar-tabs-content-example.component.html b/libs/docs/platform/icon-tab-bar/examples/tabs-content/icon-tab-bar-tabs-content-example.component.html
index 1170af8b135..28c388f2785 100644
--- a/libs/docs/platform/icon-tab-bar/examples/tabs-content/icon-tab-bar-tabs-content-example.component.html
+++ b/libs/docs/platform/icon-tab-bar/examples/tabs-content/icon-tab-bar-tabs-content-example.component.html
@@ -23,6 +23,12 @@
7
- 8
+
8
+
+
+
+ User Defined Title
+
+ Custom tab content
+
diff --git a/libs/docs/platform/icon-tab-bar/examples/tabs-content/icon-tab-bar-tabs-content-example.component.ts b/libs/docs/platform/icon-tab-bar/examples/tabs-content/icon-tab-bar-tabs-content-example.component.ts
index d5c51ee41a9..0ac7fae7a45 100644
--- a/libs/docs/platform/icon-tab-bar/examples/tabs-content/icon-tab-bar-tabs-content-example.component.ts
+++ b/libs/docs/platform/icon-tab-bar/examples/tabs-content/icon-tab-bar-tabs-content-example.component.ts
@@ -1,10 +1,11 @@
import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';
import { FDP_ICON_TAB_BAR } from '@fundamental-ngx/platform/icon-tab-bar';
+import { IconTabTitleDirective } from '../../../../../platform/icon-tab-bar/directives/icon-tab-title.directive';
@Component({
selector: 'fdp-icon-tab-bar-tabs-content-example',
standalone: true,
- imports: [FDP_ICON_TAB_BAR],
+ imports: [FDP_ICON_TAB_BAR, IconTabTitleDirective],
styles: `
.tab-container-example {
height: 100px;
diff --git a/libs/i18n/CHANGELOG.md b/libs/i18n/CHANGELOG.md
index b84c5ab33a9..f56ba07c7a7 100644
--- a/libs/i18n/CHANGELOG.md
+++ b/libs/i18n/CHANGELOG.md
@@ -3,6 +3,22 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [0.52.2-rc.35](https://github.com/SAP/fundamental-ngx/compare/v0.52.2-rc.34...v0.52.2-rc.35) (2024-09-25)
+
+**Note:** Version bump only for package @fundamental-ngx/i18n
+
+
+
+
+
+## [0.52.2-rc.34](https://github.com/SAP/fundamental-ngx/compare/v0.52.2-rc.33...v0.52.2-rc.34) (2024-09-25)
+
+**Note:** Version bump only for package @fundamental-ngx/i18n
+
+
+
+
+
## [0.52.2-rc.33](https://github.com/SAP/fundamental-ngx/compare/v0.52.2-rc.32...v0.52.2-rc.33) (2024-09-24)
**Note:** Version bump only for package @fundamental-ngx/i18n
diff --git a/libs/i18n/package.json b/libs/i18n/package.json
index 5914c3f2e3f..c3d93f8ed16 100644
--- a/libs/i18n/package.json
+++ b/libs/i18n/package.json
@@ -1,6 +1,6 @@
{
"name": "@fundamental-ngx/i18n",
- "version": "0.52.2-rc.33",
+ "version": "0.52.2-rc.35",
"peerDependencies": {
"@angular/common": "ANGULAR_VER_PLACEHOLDER",
"@angular/core": "ANGULAR_VER_PLACEHOLDER",
diff --git a/libs/moment-adapter/CHANGELOG.md b/libs/moment-adapter/CHANGELOG.md
index 5f1c3eecf1f..6247dcf4c77 100644
--- a/libs/moment-adapter/CHANGELOG.md
+++ b/libs/moment-adapter/CHANGELOG.md
@@ -3,6 +3,22 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [0.52.2-rc.35](https://github.com/SAP/fundamental-ngx/compare/v0.52.2-rc.34...v0.52.2-rc.35) (2024-09-25)
+
+**Note:** Version bump only for package @fundamental-ngx/moment-adapter
+
+
+
+
+
+## [0.52.2-rc.34](https://github.com/SAP/fundamental-ngx/compare/v0.52.2-rc.33...v0.52.2-rc.34) (2024-09-25)
+
+**Note:** Version bump only for package @fundamental-ngx/moment-adapter
+
+
+
+
+
## [0.52.2-rc.33](https://github.com/SAP/fundamental-ngx/compare/v0.52.2-rc.32...v0.52.2-rc.33) (2024-09-24)
**Note:** Version bump only for package @fundamental-ngx/moment-adapter
diff --git a/libs/moment-adapter/package.json b/libs/moment-adapter/package.json
index 58011f22ea1..b3e08f62b35 100644
--- a/libs/moment-adapter/package.json
+++ b/libs/moment-adapter/package.json
@@ -1,6 +1,6 @@
{
"name": "@fundamental-ngx/moment-adapter",
- "version": "0.52.2-rc.33",
+ "version": "0.52.2-rc.35",
"description": "Datetime adapter for SAP Fundamentals, based on Moment.js package",
"license": "Apache-2.0",
"homepage": "https://sap.github.io/fundamental-ngx/home",
diff --git a/libs/nx-plugin/CHANGELOG.md b/libs/nx-plugin/CHANGELOG.md
index 1b4d47cfc1c..7489ed71ea1 100644
--- a/libs/nx-plugin/CHANGELOG.md
+++ b/libs/nx-plugin/CHANGELOG.md
@@ -3,6 +3,22 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [0.52.2-rc.35](https://github.com/SAP/fundamental-ngx/compare/v0.52.2-rc.34...v0.52.2-rc.35) (2024-09-25)
+
+**Note:** Version bump only for package @fundamental-ngx/nx-plugin
+
+
+
+
+
+## [0.52.2-rc.34](https://github.com/SAP/fundamental-ngx/compare/v0.52.2-rc.33...v0.52.2-rc.34) (2024-09-25)
+
+**Note:** Version bump only for package @fundamental-ngx/nx-plugin
+
+
+
+
+
## [0.52.2-rc.33](https://github.com/SAP/fundamental-ngx/compare/v0.52.2-rc.32...v0.52.2-rc.33) (2024-09-24)
**Note:** Version bump only for package @fundamental-ngx/nx-plugin
diff --git a/libs/nx-plugin/package.json b/libs/nx-plugin/package.json
index c5db72b40dd..59504a54425 100644
--- a/libs/nx-plugin/package.json
+++ b/libs/nx-plugin/package.json
@@ -1,6 +1,6 @@
{
"name": "@fundamental-ngx/nx-plugin",
- "version": "0.52.2-rc.33",
+ "version": "0.52.2-rc.35",
"main": "src/index.js",
"generators": "./generators.json",
"executors": "./executors.json",
diff --git a/libs/platform/CHANGELOG.md b/libs/platform/CHANGELOG.md
index 9b2953c20a5..6973d841206 100644
--- a/libs/platform/CHANGELOG.md
+++ b/libs/platform/CHANGELOG.md
@@ -3,6 +3,28 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
+## [0.52.2-rc.35](https://github.com/SAP/fundamental-ngx/compare/v0.52.2-rc.34...v0.52.2-rc.35) (2024-09-25)
+
+
+### Features
+
+* **platform:** icon tab bar dynamic content ([#12428](https://github.com/SAP/fundamental-ngx/issues/12428)) ([18dbc82](https://github.com/SAP/fundamental-ngx/commit/18dbc82b00f6d7f2cb39fb976cb4ce6a4f55bf2f)), closes [#11771](https://github.com/SAP/fundamental-ngx/issues/11771) [#11771](https://github.com/SAP/fundamental-ngx/issues/11771) [#11771](https://github.com/SAP/fundamental-ngx/issues/11771) [#11771](https://github.com/SAP/fundamental-ngx/issues/11771) [#11771](https://github.com/SAP/fundamental-ngx/issues/11771) [#11771](https://github.com/SAP/fundamental-ngx/issues/11771) [#11771](https://github.com/SAP/fundamental-ngx/issues/11771) [#11771](https://github.com/SAP/fundamental-ngx/issues/11771) [#11771](https://github.com/SAP/fundamental-ngx/issues/11771)
+
+
+
+
+
+## [0.52.2-rc.34](https://github.com/SAP/fundamental-ngx/compare/v0.52.2-rc.33...v0.52.2-rc.34) (2024-09-25)
+
+
+### Bug Fixes
+
+* **platform:** fdp-table sorting visible columns state get lost ([#12429](https://github.com/SAP/fundamental-ngx/issues/12429)) ([6431533](https://github.com/SAP/fundamental-ngx/commit/6431533c952c85c011ad0ee5723f470fb866dec7)), closes [#12397](https://github.com/SAP/fundamental-ngx/issues/12397) [#12397](https://github.com/SAP/fundamental-ngx/issues/12397) [#12397](https://github.com/SAP/fundamental-ngx/issues/12397) [#12397](https://github.com/SAP/fundamental-ngx/issues/12397)
+
+
+
+
+
## [0.52.2-rc.33](https://github.com/SAP/fundamental-ngx/compare/v0.52.2-rc.32...v0.52.2-rc.33) (2024-09-24)
**Note:** Version bump only for package @fundamental-ngx/platform
diff --git a/libs/platform/icon-tab-bar/components/icon-tab-bar-filter-type/icon-tab-bar-filter-type.component.html b/libs/platform/icon-tab-bar/components/icon-tab-bar-filter-type/icon-tab-bar-filter-type.component.html
index ff1d29edf31..b1427692aed 100644
--- a/libs/platform/icon-tab-bar/components/icon-tab-bar-filter-type/icon-tab-bar-filter-type.component.html
+++ b/libs/platform/icon-tab-bar/components/icon-tab-bar-filter-type/icon-tab-bar-filter-type.component.html
@@ -45,15 +45,19 @@
(keydown)="_keyDownHandler($event, item, idx + (showTotalTab ? 1 : 0))"
role="tab"
>
-
-
-
-
- @if (item.counter) {
- {{ item.counter }}
- }
-
-
{{ item.label | fdkAsyncOrSync }}
+ @if (item?.titleTemplate) {
+
+ } @else {
+
+
+
+
+ @if (item.counter) {
+ {{ item.counter }}
+ }
+
+
{{ item.label | fdkAsyncOrSync }}
+ }
@if (item.color | fdkAsyncOrSync; as itemColor) {
{{ colorAssociations()?.[itemColor] || itemColor }}
diff --git a/libs/platform/icon-tab-bar/components/icon-tab-bar-filter-type/icon-tab-bar-filter-type.component.ts b/libs/platform/icon-tab-bar/components/icon-tab-bar-filter-type/icon-tab-bar-filter-type.component.ts
index 4602f26ff47..0e34eb7b908 100644
--- a/libs/platform/icon-tab-bar/components/icon-tab-bar-filter-type/icon-tab-bar-filter-type.component.ts
+++ b/libs/platform/icon-tab-bar/components/icon-tab-bar-filter-type/icon-tab-bar-filter-type.component.ts
@@ -1,4 +1,4 @@
-import { SlicePipe } from '@angular/common';
+import { NgTemplateOutlet, SlicePipe } from '@angular/common';
import { Component, ElementRef, Input, QueryList, ViewChild, ViewChildren } from '@angular/core';
import { AsyncOrSyncPipe, OverflowListDirective, OverflowListItemDirective } from '@fundamental-ngx/cdk/utils';
import { ButtonComponent } from '@fundamental-ngx/core/button';
@@ -25,7 +25,8 @@ import { IconTabBarPopoverComponent } from '../popovers/icon-tab-bar-popover/ico
IconTabBarPopoverComponent,
SlicePipe,
ButtonComponent,
- AsyncOrSyncPipe
+ AsyncOrSyncPipe,
+ NgTemplateOutlet
]
})
export class IconTabBarFilterTypeComponent extends ClosableIconTabBar {
diff --git a/libs/platform/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.html b/libs/platform/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.html
index bf0c593a652..58dedfc930a 100644
--- a/libs/platform/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.html
+++ b/libs/platform/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.html
@@ -26,24 +26,28 @@
(click)="_selectItem(item)"
(keydown)="_keyDownHandler($event, item, idx)"
>
-
-
-
-
- @if (item.counter && (!item.label || !showLabel)) {
- {{ item.counter }}
- }
-
- @if (showLabel && item.label) {
-
- {{ item.counter }}
- {{ item.label }}
-
- }
- @if (item.color | fdkAsyncOrSync; as itemColor) {
-
- {{ colorAssociations()?.[itemColor] || itemColor }}
+ @if (item?.titleTemplate) {
+
+ } @else {
+
+
+
+
+ @if (item.counter && (!item.label || !showLabel)) {
+ {{ item.counter }}
+ }
+ @if (showLabel && item.label) {
+
+ {{ item.counter }}
+ {{ item.label }}
+
+ }
+ @if (item.color | fdkAsyncOrSync; as itemColor) {
+
+ {{ colorAssociations()?.[itemColor] || itemColor }}
+
+ }
}
@if (item.closable) {
diff --git a/libs/platform/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.ts b/libs/platform/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.ts
index bafcaa2ebef..92c6b4e5d02 100644
--- a/libs/platform/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.ts
+++ b/libs/platform/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.ts
@@ -1,4 +1,4 @@
-import { NgClass } from '@angular/common';
+import { NgClass, NgTemplateOutlet } from '@angular/common';
import { Component, ElementRef, Input, QueryList, ViewChild, ViewChildren } from '@angular/core';
import { AsyncOrSyncPipe, OverflowListDirective, OverflowListItemDirective } from '@fundamental-ngx/cdk/utils';
import { ButtonComponent } from '@fundamental-ngx/core/button';
@@ -24,7 +24,8 @@ import { IconTabBarPopoverComponent } from '../popovers/icon-tab-bar-popover/ico
IconComponent,
ButtonComponent,
IconTabBarPopoverComponent,
- AsyncOrSyncPipe
+ AsyncOrSyncPipe,
+ NgTemplateOutlet
]
})
export class IconTabBarIconTypeComponent extends ClosableIconTabBar {
diff --git a/libs/platform/icon-tab-bar/components/icon-tab-bar-process-type/icon-tab-bar-process-type.component.html b/libs/platform/icon-tab-bar/components/icon-tab-bar-process-type/icon-tab-bar-process-type.component.html
index 2dc98d6ea49..2beae203248 100644
--- a/libs/platform/icon-tab-bar/components/icon-tab-bar-process-type/icon-tab-bar-process-type.component.html
+++ b/libs/platform/icon-tab-bar/components/icon-tab-bar-process-type/icon-tab-bar-process-type.component.html
@@ -40,29 +40,33 @@
[attr.tabindex]="idx === 0 ? 0 : -1"
role="tab"
>
- @if (item.icon) {
-
-
-
-
+ @if (item?.titleTemplate) {
+
+ } @else {
+ @if (item.icon) {
+
+
+
+
+ @if (item.badge) {
+
+ }
+
+
+ {{ item.counter }}
+ {{ item.label | fdkAsyncOrSync }}
+
+ } @else {
+
{{ item.label | fdkAsyncOrSync }}
@if (item.badge) {
}
-
-
- {{ item.counter }}
- {{ item.label | fdkAsyncOrSync }}
-
- } @else {
-
{{ item.label | fdkAsyncOrSync }}
- @if (item.badge) {
-
}
- }
- @if (item.color | fdkAsyncOrSync; as itemColor) {
-
- {{ colorAssociations()?.[itemColor] || itemColor }}
-
+ @if (item.color | fdkAsyncOrSync; as itemColor) {
+
+ {{ colorAssociations()?.[itemColor] || itemColor }}
+
+ }
}
@if (item.closable) {
diff --git a/libs/platform/icon-tab-bar/components/icon-tab-bar-process-type/icon-tab-bar-process-type.component.ts b/libs/platform/icon-tab-bar/components/icon-tab-bar-process-type/icon-tab-bar-process-type.component.ts
index 2ee87c63021..555b6c5ac4d 100644
--- a/libs/platform/icon-tab-bar/components/icon-tab-bar-process-type/icon-tab-bar-process-type.component.ts
+++ b/libs/platform/icon-tab-bar/components/icon-tab-bar-process-type/icon-tab-bar-process-type.component.ts
@@ -1,6 +1,7 @@
import { Component, ElementRef, QueryList, ViewChild, ViewChildren } from '@angular/core';
import { take } from 'rxjs/operators';
+import { NgTemplateOutlet } from '@angular/common';
import { AsyncOrSyncPipe, OverflowListDirective, OverflowListItemDirective } from '@fundamental-ngx/cdk/utils';
import { ButtonComponent } from '@fundamental-ngx/core/button';
import { IconComponent } from '@fundamental-ngx/core/icon';
@@ -27,7 +28,8 @@ import { IconTabBarPopoverComponent } from '../popovers/icon-tab-bar-popover/ico
OverflowListItemDirective,
IconComponent,
ButtonComponent,
- AsyncOrSyncPipe
+ AsyncOrSyncPipe,
+ NgTemplateOutlet
]
})
export class IconTabBarProcessTypeComponent extends ClosableIconTabBar {
diff --git a/libs/platform/icon-tab-bar/components/icon-tab-bar-tab/icon-tab-bar-tab.component.ts b/libs/platform/icon-tab-bar/components/icon-tab-bar-tab/icon-tab-bar-tab.component.ts
index a1b8a077be2..8ea2b1567d8 100644
--- a/libs/platform/icon-tab-bar/components/icon-tab-bar-tab/icon-tab-bar-tab.component.ts
+++ b/libs/platform/icon-tab-bar/components/icon-tab-bar-tab/icon-tab-bar-tab.component.ts
@@ -3,6 +3,7 @@ import {
booleanAttribute,
ChangeDetectionStrategy,
Component,
+ contentChild,
contentChildren,
Directive,
ElementRef,
@@ -13,6 +14,7 @@ import {
} from '@angular/core';
import { HasElementRef, Nullable } from '@fundamental-ngx/cdk/utils';
import { FD_DEFAULT_ICON_FONT_FAMILY, IconFont } from '@fundamental-ngx/core/icon';
+import { IconTabTitleDirective } from '../../directives/icon-tab-title.directive';
import { ReactiveTabConfig } from '../../interfaces/tab-config.interface';
import { SemanticColor } from '../../types';
@@ -73,6 +75,9 @@ export class IconTabBarTabComponent implements ReactiveTabConfig {
/** Content renderer. */
readonly renderer = viewChild
>('renderer');
+ /** Title template. */
+ readonly titleTemplate = contentChild(IconTabTitleDirective, { read: TemplateRef });
+
/** @hidden */
readonly children = contentChildren(IconTabBarTabComponent);
}
diff --git a/libs/platform/icon-tab-bar/components/icon-tab-bar-text-type/icon-tab-bar-text-type.component.ts b/libs/platform/icon-tab-bar/components/icon-tab-bar-text-type/icon-tab-bar-text-type.component.ts
index 2b7de513fbe..b235a3775eb 100644
--- a/libs/platform/icon-tab-bar/components/icon-tab-bar-text-type/icon-tab-bar-text-type.component.ts
+++ b/libs/platform/icon-tab-bar/components/icon-tab-bar-text-type/icon-tab-bar-text-type.component.ts
@@ -1,7 +1,7 @@
import { Component, ElementRef, EventEmitter, Input, Output, QueryList, ViewChild, ViewChildren } from '@angular/core';
import { AsyncOrSyncPipe, Nullable } from '@fundamental-ngx/cdk/utils';
-import { NgClass } from '@angular/common';
+import { NgClass, NgTemplateOutlet } from '@angular/common';
import { OverflowListDirective, OverflowListItemDirective } from '@fundamental-ngx/cdk/utils';
import { ButtonComponent } from '@fundamental-ngx/core/button';
import { IconComponent } from '@fundamental-ngx/core/icon';
@@ -46,7 +46,8 @@ type TabItem = ElementRef | TextTypePopoverComponent;
ButtonComponent,
IconComponent,
AsyncOrSyncPipe,
- IconTabBarTextTypeTabItemComponent
+ IconTabBarTextTypeTabItemComponent,
+ NgTemplateOutlet
]
})
export class IconTabBarTextTypeComponent extends ClosableIconTabBar {
diff --git a/libs/platform/icon-tab-bar/components/text-type-tab-item/icon-tab-bar-text-type-tab-item.component.html b/libs/platform/icon-tab-bar/components/text-type-tab-item/icon-tab-bar-text-type-tab-item.component.html
index ddd73742c7c..1449ca0fe78 100644
--- a/libs/platform/icon-tab-bar/components/text-type-tab-item/icon-tab-bar-text-type-tab-item.component.html
+++ b/libs/platform/icon-tab-bar/components/text-type-tab-item/icon-tab-bar-text-type-tab-item.component.html
@@ -1,19 +1,23 @@
-@if (layoutMode === 'row') {
-
- {{ item?.label | fdkAsyncOrSync }}
- @if (item?.counter | fdkAsyncOrSync; as itemCounter) {
- ({{ itemCounter }})
- }
-
+@if (item?.titleTemplate) {
+
} @else {
- {{ item?.counter }}
- {{ item?.label | fdkAsyncOrSync }}
-}
-@if (item?.badge) {
-
-}
-@if (item?.color | fdkAsyncOrSync; as itemColor) {
-
- {{ colorAssociations()?.[itemColor] || itemColor }}
-
+ @if (layoutMode === 'row') {
+
+ {{ item?.label | fdkAsyncOrSync }}
+ @if (item?.counter | fdkAsyncOrSync; as itemCounter) {
+ ({{ itemCounter }})
+ }
+
+ } @else {
+ {{ item?.counter }}
+ {{ item?.label | fdkAsyncOrSync }}
+ }
+ @if (item?.badge) {
+
+ }
+ @if (item?.color | fdkAsyncOrSync; as itemColor) {
+
+ {{ colorAssociations()?.[itemColor] || itemColor }}
+
+ }
}
diff --git a/libs/platform/icon-tab-bar/components/text-type-tab-item/icon-tab-bar-text-type-tab-item.component.ts b/libs/platform/icon-tab-bar/components/text-type-tab-item/icon-tab-bar-text-type-tab-item.component.ts
index cca63726082..785066c6bfe 100644
--- a/libs/platform/icon-tab-bar/components/text-type-tab-item/icon-tab-bar-text-type-tab-item.component.ts
+++ b/libs/platform/icon-tab-bar/components/text-type-tab-item/icon-tab-bar-text-type-tab-item.component.ts
@@ -1,3 +1,4 @@
+import { NgTemplateOutlet } from '@angular/common';
import { ChangeDetectionStrategy, Component, ElementRef, inject, Input, input, ViewEncapsulation } from '@angular/core';
import { AsyncOrSyncPipe, Nullable } from '@fundamental-ngx/cdk/utils';
import { IconTabBarItem } from '../../interfaces/icon-tab-bar-item.interface';
@@ -7,7 +8,7 @@ import { TabColorAssociations } from '../../interfaces/tab-color-associations.in
// eslint-disable-next-line @angular-eslint/component-selector
selector: '[fdp-icon-tab-bar-text-type-tab-item]',
standalone: true,
- imports: [AsyncOrSyncPipe],
+ imports: [AsyncOrSyncPipe, NgTemplateOutlet],
templateUrl: './icon-tab-bar-text-type-tab-item.component.html',
encapsulation: ViewEncapsulation.None,
changeDetection: ChangeDetectionStrategy.OnPush,
diff --git a/libs/platform/icon-tab-bar/directives/icon-tab-title.directive.ts b/libs/platform/icon-tab-bar/directives/icon-tab-title.directive.ts
new file mode 100644
index 00000000000..d0e083864e3
--- /dev/null
+++ b/libs/platform/icon-tab-bar/directives/icon-tab-title.directive.ts
@@ -0,0 +1,7 @@
+import { Directive } from '@angular/core';
+
+@Directive({
+ selector: '[fdpIconTabBarTitleTemplate], [fdp-icon-tab-bar-title-template]',
+ standalone: true
+})
+export class IconTabTitleDirective {}
diff --git a/libs/platform/icon-tab-bar/icon-tab-bar.component.ts b/libs/platform/icon-tab-bar/icon-tab-bar.component.ts
index 28fa437bb44..cd11f167822 100644
--- a/libs/platform/icon-tab-bar/icon-tab-bar.component.ts
+++ b/libs/platform/icon-tab-bar/icon-tab-bar.component.ts
@@ -309,6 +309,7 @@ export class IconTabBarComponent implements OnInit, TabList {
counter: tab.counter(),
renderer: tab.renderer(),
id: tab.id(),
+ titleTemplate: tab.titleTemplate(),
subItems: tab.children().map((c) => this._generateTabConfig(c))
};
diff --git a/libs/platform/icon-tab-bar/interfaces/tab-config.interface.ts b/libs/platform/icon-tab-bar/interfaces/tab-config.interface.ts
index 39aa3014f67..06399aaa072 100644
--- a/libs/platform/icon-tab-bar/interfaces/tab-config.interface.ts
+++ b/libs/platform/icon-tab-bar/interfaces/tab-config.interface.ts
@@ -19,6 +19,7 @@ export type TabConfig = NullableObject<{
closable: boolean;
iconFont: IconFont;
renderer?: TemplateRef;
+ titleTemplate?: TemplateRef;
id: string;
}>;
@@ -37,6 +38,7 @@ export type ReactiveTabConfig = NullableObject<{
closable: InputSignalWithTransform;
iconFont: InputSignal;
renderer?: Signal | undefined>;
+ titleTemplate?: Signal | undefined>;
id: InputSignal;
}>;
diff --git a/libs/platform/package.json b/libs/platform/package.json
index 87aab9f010e..7af57dd6e90 100644
--- a/libs/platform/package.json
+++ b/libs/platform/package.json
@@ -1,6 +1,6 @@
{
"name": "@fundamental-ngx/platform",
- "version": "0.52.2-rc.33",
+ "version": "0.52.2-rc.35",
"schematics": "./schematics/collection.json",
"description": "Fundamental Library for Angular - platform",
"license": "Apache-2.0",