{"version":3,"file":"fundamental-ngx-core-tile.mjs","sources":["../../../../libs/core/tile/directives/numeric-content.directives.ts","../../../../libs/core/tile/directives/tile.directives.ts","../../../../libs/core/tile/tile.component.ts","../../../../libs/core/tile/tile.component.html","../../../../libs/core/tile/tile.module.ts","../../../../libs/core/tile/fundamental-ngx-core-tile.ts"],"sourcesContent":["import { computed, Directive, ElementRef, inject, input } from '@angular/core';\nimport { HasElementRef } from '@fundamental-ngx/cdk/utils';\nimport { FD_DEFAULT_ICON_FONT_FAMILY, fdBuildIconClass, IconFont } from '@fundamental-ngx/core/icon';\n\nexport type NumericContentState = 'negative' | 'critical' | 'positive' | 'informative' | 'neutral';\nexport type NumericContentSize = 's' | 'm' | 'l';\n\n@Directive({\n    // eslint-disable-next-line @angular-eslint/directive-selector\n    selector: '[fd-numeric-content]',\n    host: {\n        '[class]': 'cssClass()'\n    }\n})\nexport class NumericContentDirective implements HasElementRef {\n    /** Size of the numeric content. Options are 's', 'm', or 'l'. */\n    readonly size = input<NumericContentSize | null>();\n\n    /** @hidden */\n    readonly elementRef = inject(ElementRef);\n\n    /** @hidden */\n    protected readonly cssClass = computed(() => {\n        const classes: string[] = ['fd-numeric-content'];\n\n        const sizeValue = this.size();\n        if (sizeValue) {\n            classes.push(`fd-numeric-content--${sizeValue}`);\n        }\n\n        if (this._isSmallTile()) {\n            classes.push('fd-numeric-content--small-tile');\n        }\n\n        return classes.join(' ');\n    });\n\n    /** @hidden */\n    private readonly _isSmallTile = computed(() => {\n        const grandparent = this.elementRef.nativeElement.parentElement?.parentElement;\n        return grandparent?.classList.contains('fd-tile--s') ?? false;\n    });\n}\n\n@Directive({\n    // eslint-disable-next-line @angular-eslint/directive-selector\n    selector: '[fd-numeric-content-launch-icon-container]',\n    host: {\n        class: 'fd-numeric-content__launch-icon-container'\n    }\n})\nexport class NumericContentLaunchIconContainerDirective {}\n\n@Directive({\n    // eslint-disable-next-line @angular-eslint/directive-selector\n    selector: '[fd-numeric-content-launch-icon]',\n    host: {\n        '[attr.aria-label]': 'ariaLabel()',\n        '[class]': 'cssClass()'\n    }\n})\nexport class NumericContentLaunchIconDirective implements HasElementRef {\n    /** Glyph (icon) to display. */\n    readonly glyph = input<string>();\n\n    /** Glyph font family. */\n    readonly glyphFont = input<IconFont>(FD_DEFAULT_ICON_FONT_FAMILY);\n\n    /** Aria label for accessibility. */\n    readonly ariaLabel = input<string | null>(null);\n\n    /** @hidden */\n    readonly elementRef = inject(ElementRef);\n\n    /** @hidden */\n    protected readonly cssClass = computed(() => {\n        const classes: string[] = ['fd-numeric-content__launch-icon'];\n\n        const glyphValue = this.glyph();\n        if (glyphValue) {\n            classes.push(fdBuildIconClass(this.glyphFont(), glyphValue));\n        }\n\n        return classes.join(' ');\n    });\n}\n\n@Directive({\n    // eslint-disable-next-line @angular-eslint/directive-selector\n    selector: '[fd-numeric-content-kpi-container]',\n    host: {\n        class: 'fd-numeric-content__kpi-container'\n    }\n})\nexport class NumericContentKpiContainerDirective {}\n\n@Directive({\n    // eslint-disable-next-line @angular-eslint/directive-selector\n    selector: '[fd-numeric-content-kpi]',\n    host: {\n        '[class]': 'cssClass()'\n    }\n})\nexport class NumericContentKpiDirective implements HasElementRef {\n    /** State of the KPI. Options are 'neutral' (default), 'positive', 'negative', 'critical', or 'informative'. */\n    readonly state = input<NumericContentState | null>();\n\n    /** Glyph (icon) to display. */\n    readonly glyph = input<string>();\n\n    /** @hidden */\n    readonly elementRef = inject(ElementRef);\n\n    /** @hidden */\n    protected readonly cssClass = computed(() => {\n        const classes: string[] = ['fd-numeric-content__kpi'];\n\n        const stateValue = this.state();\n        if (stateValue) {\n            classes.push(`fd-numeric-content__kpi--${stateValue}`);\n        }\n\n        return classes.join(' ');\n    });\n}\n\n@Directive({\n    // eslint-disable-next-line @angular-eslint/directive-selector\n    selector: '[fd-numeric-content-scale-container]',\n    host: {\n        class: 'fd-numeric-content__scale-container'\n    }\n})\nexport class NumericContentScaleContainerDirective {}\n\n@Directive({\n    // eslint-disable-next-line @angular-eslint/directive-selector\n    selector: '[fd-numeric-content-scale-arrow]',\n    host: {\n        '[attr.aria-label]': 'ariaLabel()',\n        '[class]': 'cssClass()'\n    }\n})\nexport class NumericContentScaleArrowDirective implements HasElementRef {\n    /** Glyph (icon) to display. */\n    readonly glyph = input<string>();\n\n    /** Glyph font family. */\n    readonly glyphFont = input<IconFont>(FD_DEFAULT_ICON_FONT_FAMILY);\n\n    /** Aria label for accessibility. */\n    readonly ariaLabel = input<string | null>(null);\n\n    /** @hidden */\n    readonly elementRef = inject(ElementRef);\n\n    /** @hidden */\n    protected readonly cssClass = computed(() => {\n        const classes: string[] = ['fd-numeric-content__scale-arrow'];\n\n        const glyphValue = this.glyph();\n        if (glyphValue) {\n            classes.push(fdBuildIconClass(this.glyphFont(), glyphValue));\n        }\n\n        return classes.join(' ');\n    });\n}\n\n@Directive({\n    // eslint-disable-next-line @angular-eslint/directive-selector\n    selector: '[fd-numeric-content-scale]',\n    host: {\n        '[class]': 'cssClass()'\n    }\n})\nexport class NumericContentScaleDirective implements HasElementRef {\n    /** State of the scale. Options are 'neutral' (default), 'positive', 'negative', 'critical', or 'informative'. */\n    readonly state = input<NumericContentState | null>();\n\n    /** @hidden */\n    readonly elementRef = inject(ElementRef);\n\n    /** @hidden */\n    protected readonly cssClass = computed(() => {\n        const classes: string[] = ['fd-numeric-content__scale'];\n\n        const stateValue = this.state();\n        if (stateValue) {\n            classes.push(`fd-numeric-content__scale--${stateValue}`);\n        }\n\n        return classes.join(' ');\n    });\n}\n\n@Directive({\n    // eslint-disable-next-line @angular-eslint/directive-selector\n    selector: '[fd-numeric-content-scale-text]',\n    host: {\n        class: 'fd-numeric-content__scale-text'\n    }\n})\nexport class NumericContentScaleTextDirective {}\n","import { booleanAttribute, computed, Directive, ElementRef, inject, input } from '@angular/core';\nimport { HasElementRef } from '@fundamental-ngx/cdk/utils';\nimport { FD_DEFAULT_ICON_FONT_FAMILY, fdBuildIconClass, IconFont } from '@fundamental-ngx/core/icon';\n\n@Directive({\n    selector: '[fdTileContent], [fd-tile-content]',\n    host: {\n        class: 'fd-tile__content',\n        '[class.fd-tile__content--2-col]': 'twoColumn()'\n    }\n})\nexport class TileContentDirective {\n    /** Divides the tile content in to two columns. */\n    readonly twoColumn = input(false, { transform: booleanAttribute });\n}\n@Directive({\n    selector: '[fdTileContentText], [fd-tile-content-text]',\n    host: {\n        class: 'fd-tile__content-text'\n    }\n})\nexport class TileContentTextDirective {}\n\n@Directive({\n    selector: '[fdTileFooter], [fd-tile-footer]',\n    host: {\n        class: 'fd-tile__footer',\n        '[class.fd-tile__footer--2-col]': 'twoColumn()'\n    }\n})\nexport class TileFooterDirective {\n    /** Divides the tile footer in to two columns. */\n    readonly twoColumn = input(false, { transform: booleanAttribute });\n}\n\n@Directive({\n    selector: '[fdTileFooterText], [fd-tile-footer-text]',\n    host: {\n        class: 'fd-tile__footer-text'\n    }\n})\nexport class TileFooterTextDirective {}\n\n@Directive({\n    selector: '[fdTileHeader], [fd-tile-header]',\n    host: {\n        class: 'fd-tile__header',\n        '[class.fd-tile__header--2-col]': 'twoColumn()'\n    }\n})\nexport class TileHeaderDirective {\n    /** Divides the tile header in to two columns. */\n    readonly twoColumn = input(false, { transform: booleanAttribute });\n}\n\n@Directive({\n    selector: '[fdTileHeaderContent], [fd-tile-header-content]',\n    host: {\n        class: 'fd-tile__header-content'\n    }\n})\nexport class TileHeaderContentDirective {}\n\n@Directive({\n    selector: '[fdTileSection], [fd-tile-section]',\n    host: {\n        class: 'fd-tile__section'\n    }\n})\nexport class TileSectionDirective {}\n\n@Directive({\n    selector: '[fdTileTitle], [fd-tile-subtitle]',\n    host: {\n        class: 'fd-tile__subtitle'\n    }\n})\nexport class TileSubtitleDirective {}\n\n@Directive({\n    selector: '[fdTileTitle], [fd-tile-title]',\n    host: {\n        class: 'fd-tile__title'\n    }\n})\nexport class TileTitleDirective {}\n\n@Directive({\n    selector: '[fdTileTitleContainer], [fd-tile-title-container]',\n    host: {\n        class: 'fd-tile__title-container'\n    }\n})\nexport class TileTitleContainerDirective {}\n\n@Directive({\n    selector: '[fdTileRefresh], [fd-tile-refresh]',\n    host: {\n        '[attr.aria-label]': 'ariaLabel()',\n        '[class]': 'cssClass()'\n    }\n})\nexport class TileRefreshDirective implements HasElementRef {\n    /** Glyph (icon) to display. */\n    readonly glyph = input<string>();\n\n    /** Glyph font family. */\n    readonly glyphFont = input<IconFont>(FD_DEFAULT_ICON_FONT_FAMILY);\n\n    /** Aria label for accessibility. */\n    readonly ariaLabel = input<string>('Refresh');\n\n    /** @hidden */\n    readonly elementRef = inject(ElementRef);\n\n    /** @hidden */\n    protected readonly cssClass = computed(() => {\n        const classes: string[] = ['fd-tile__refresh'];\n\n        const glyphValue = this.glyph();\n        if (glyphValue) {\n            classes.push(fdBuildIconClass(this.glyphFont(), glyphValue));\n        }\n\n        return classes.join(' ');\n    });\n}\n\nlet profileTileUniqueId = 0;\n\n@Directive({\n    selector: '[fdTileProfileImg], [fd-tile-profile-img]',\n    host: {\n        'attr.role': 'img',\n        class: 'fd-tile__profile-img',\n        '[attr.id]': 'id()',\n        '[attr.aria-label]': 'ariaLabel()',\n        '[attr.aria-labelledby]': 'ariaLabelledby()',\n        '[style.background-image]': '`url(${backgroundImage()})`'\n    }\n})\nexport class TileProfileImgDirective {\n    /** Unique identifier for the tile. */\n    readonly id = input<string>(`fd-profileTile-${++profileTileUniqueId}`);\n\n    /** Aria label for accessibility. */\n    readonly ariaLabel = input<string | null | undefined>(null);\n\n    /** Aria labelledby attribute referencing element(s) describing the tile. */\n    readonly ariaLabelledby = input<string | null | undefined>(null);\n\n    /** Background image URL. */\n    readonly backgroundImage = input<string | null | undefined>(null);\n}\n\n@Directive({\n    selector: '[fdTileLogo], [fd-tile-logo]',\n    host: {\n        class: 'fd-tile__logo'\n    }\n})\nexport class TileLogoDirective {}\n\n@Directive({\n    selector: '[fdTileToggle], [fd-tile-toggle]',\n    host: {\n        class: 'fd-tile__toggle'\n    }\n})\nexport class TileToggleDirective {}\n\n@Directive({\n    selector: '[fdTileContainer], [fd-tile-container]',\n    host: {\n        class: 'fd-tile-container',\n        '[class.fd-tile-container--list]': 'list()'\n    }\n})\nexport class TileContainerDirective {\n    /** Whether the container uses list layout (applies on screens smaller than 450px). */\n    readonly list = input(false, { transform: booleanAttribute });\n}\n\n@Directive({\n    selector: '[fdTileBackgroundImg], [fd-tile-background-img]',\n    host: {\n        class: 'fd-tile__background-img',\n        '[style.background-image]': '`url(${backgroundImage()})`'\n    }\n})\nexport class TileBackgroundImgDirective {\n    /** Background image URL. */\n    readonly backgroundImage = input<string | null | undefined>(null);\n}\n\n@Directive({\n    selector: '[fdTilePageIndicator], [fd-tile-page-indicator]',\n    host: {\n        class: 'fd-tile__page-indicator'\n    }\n})\nexport class TilePageIndicatorDirective {}\n\n@Directive({\n    selector: '[fdTileActionClose], [fd-tile-action-close]',\n    host: {\n        class: 'fd-tile__action-close'\n    }\n})\nexport class TileActionCloseDirective {\n    /** @hidden */\n    private readonly _elementRef = inject(ElementRef);\n\n    constructor() {\n        const element = generateIcon('decline');\n        this._elementRef.nativeElement.appendChild(element);\n    }\n}\n\n@Directive({\n    selector: '[fdTileActionIndicator], [fd-tile-action-indicator]',\n    host: {\n        class: 'fd-tile__action-indicator'\n    }\n})\nexport class TileActionIndicatorDirective {\n    /** @hidden */\n    private readonly _elementRef = inject(ElementRef);\n\n    constructor() {\n        const element = generateIcon('overflow');\n        this._elementRef.nativeElement.appendChild(element);\n    }\n}\n\n@Directive({\n    selector: '[fdTileActionContainer], [fd-tile-action-container]',\n    host: {\n        class: 'fd-tile__action-container'\n    }\n})\nexport class TileActionContainerDirective {}\n\nfunction generateIcon(iconName: string): HTMLElement {\n    const element = document.createElement('i');\n    element.setAttribute('role', 'presentation');\n    element.classList.add(`sap-icon--${iconName}`);\n    return element;\n}\n","import {\n    ChangeDetectionStrategy,\n    Component,\n    ElementRef,\n    ViewEncapsulation,\n    booleanAttribute,\n    computed,\n    effect,\n    inject,\n    input,\n    output\n} from '@angular/core';\n\ntype TileType = null | 'kpi' | 'launch' | 'feed';\ntype TileSize = null | 's';\n\n@Component({\n    selector: 'fd-tile, [fd-tile]',\n    templateUrl: './tile.component.html',\n    styleUrl: './tile.component.scss',\n    encapsulation: ViewEncapsulation.None,\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    imports: [],\n    host: {\n        '[class]': 'cssClass()',\n        '[attr.tabindex]': 'tabindex()',\n        '[attr.role]': 'roleValue()',\n        '[attr.aria-label]': 'ariaLabel()',\n        '[attr.aria-labelledby]': 'ariaLabelledby()',\n        '[attr.id]': 'id()',\n        '(click)': 'handleClick()',\n        '(keyup.enter)': 'handleKeyboard()',\n        '(keydown.space)': '$event.preventDefault()',\n        '(keyup.space)': 'handleKeyboard()'\n    }\n})\nexport class TileComponent {\n    /** Size modifier. Options are 's' or null (default). */\n    readonly size = input<TileSize | null | undefined>();\n\n    /** Doubles the tile width. */\n    readonly double = input(false, { transform: booleanAttribute });\n\n    /** Type of tile. Options are 'kpi', 'launch', 'feed', or null (default). */\n    readonly type = input<TileType | null | undefined>();\n\n    /** Whether the tile is in action mode. */\n    readonly action = input(false, { transform: booleanAttribute });\n\n    /** Whether tile is focusable and clickable. */\n    readonly clickable = input(false, { transform: booleanAttribute });\n\n    /** The role for the tile. */\n    readonly role = input<string | null | undefined>();\n\n    /** Aria-label for accessibility. */\n    readonly ariaLabel = input<string | null | undefined>();\n\n    /** Aria-labelledby for accessibility. */\n    readonly ariaLabelledby = input<string | null | undefined>();\n\n    /** Unique identifier for the Tile. */\n    readonly id = input<string | null | undefined>();\n\n    /** Emitted when tile is clicked or activated via space/enter keys. */\n    readonly tileClick = output<void>();\n\n    /**\n     * @hidden\n     * Computed tabindex - native links manage their own, custom elements use clickable\n     */\n    protected readonly tabindex = computed(() => {\n        if (this._isNativeLink()) {\n            return null; // Native <a> manages its own tabindex\n        }\n        return this.clickable() ? 0 : -1;\n    });\n\n    /** @hidden Computed role - don't override native link semantics */\n    protected readonly roleValue = computed(() => {\n        if (this._isNativeLink()) {\n            return null; // Native <a> has implicit role\n        }\n        return this.role() ?? null;\n    });\n\n    /** @hidden */\n    protected readonly cssClass = computed(() => {\n        const classes: string[] = ['fd-tile'];\n\n        const sizeValue = this.size();\n        if (sizeValue) {\n            classes.push(`fd-tile--${sizeValue}`);\n        }\n\n        if (this.double()) {\n            classes.push('fd-tile--double');\n        }\n\n        const typeValue = this.type();\n        if (typeValue) {\n            classes.push(`fd-tile--${typeValue}`);\n        }\n\n        if (this.action()) {\n            classes.push('fd-tile--action');\n        }\n\n        return classes.join(' ');\n    });\n\n    /** @hidden */\n    private readonly _elementRef = inject(ElementRef<HTMLElement>);\n\n    /** @hidden */\n    private readonly _isNativeLink = computed(() => this._elementRef.nativeElement.tagName === 'A');\n\n    constructor() {\n        // Warn if href is used on custom element (should use <a> instead)\n        effect(() => {\n            const element = this._elementRef.nativeElement;\n            if (!this._isNativeLink() && element.hasAttribute('href')) {\n                console.warn(\n                    'Using href attribute on <fd-tile> is not supported. Use <a fd-tile href=\"...\"> instead for link behavior.'\n                );\n            }\n        });\n    }\n\n    /** @hidden Handle click events */\n    protected handleClick(): void {\n        // For native links, always emit (links are always interactive)\n        // For custom elements, only emit if clickable\n        if (this._isNativeLink() || this.clickable()) {\n            this.tileClick.emit();\n        }\n    }\n\n    /** @hidden Handle keyboard activation for non-link tiles */\n    protected handleKeyboard(): void {\n        // For native links, browser handles keyboard activation\n        // For custom elements, only emit if clickable\n        if (!this._isNativeLink() && this.clickable()) {\n            this.tileClick.emit();\n        }\n    }\n}\n","@if (action()) {\n    <div class=\"fd-tile__overlay\"></div>\n}\n<ng-content select=\"[fd-tile-action-close]\"></ng-content>\n<ng-content select=\"[fd-tile-action-indicator]\"></ng-content>\n<ng-content select=\"[fd-badge]\"></ng-content>\n<ng-content select=\"[fd-tile-header]\"></ng-content>\n<ng-content select=\"[fd-tile-header-content]\"></ng-content>\n<ng-content select=\"[fd-tile-content]\"></ng-content>\n<ng-content select=\"[fd-tile-footer]\"></ng-content>\n<ng-content select=\"[fd-tile-action-container]\"></ng-content>\n<ng-content></ng-content>\n","import { NgModule } from '@angular/core';\n\nimport {\n    NumericContentDirective,\n    NumericContentKpiContainerDirective,\n    NumericContentKpiDirective,\n    NumericContentLaunchIconContainerDirective,\n    NumericContentLaunchIconDirective,\n    NumericContentScaleArrowDirective,\n    NumericContentScaleContainerDirective,\n    NumericContentScaleDirective,\n    NumericContentScaleTextDirective\n} from './directives/numeric-content.directives';\nimport {\n    TileActionCloseDirective,\n    TileActionContainerDirective,\n    TileActionIndicatorDirective,\n    TileBackgroundImgDirective,\n    TileContainerDirective,\n    TileContentDirective,\n    TileContentTextDirective,\n    TileFooterDirective,\n    TileFooterTextDirective,\n    TileHeaderContentDirective,\n    TileHeaderDirective,\n    TileLogoDirective,\n    TilePageIndicatorDirective,\n    TileProfileImgDirective,\n    TileRefreshDirective,\n    TileSectionDirective,\n    TileSubtitleDirective,\n    TileTitleContainerDirective,\n    TileTitleDirective,\n    TileToggleDirective\n} from './directives/tile.directives';\nimport { TileComponent } from './tile.component';\n\n/**\n * @deprecated\n * Use direct imports of components and directives.\n */\n@NgModule({\n    imports: [\n        TileComponent,\n        TileHeaderDirective,\n        TileContentDirective,\n        TileFooterDirective,\n        TileTitleDirective,\n        TileSubtitleDirective,\n        TileSectionDirective,\n        TileRefreshDirective,\n        TileFooterTextDirective,\n        TileHeaderContentDirective,\n        TileProfileImgDirective,\n        TileLogoDirective,\n        TileContentTextDirective,\n        TileBackgroundImgDirective,\n        TileToggleDirective,\n        TileContainerDirective,\n        TilePageIndicatorDirective,\n        TileActionCloseDirective,\n        TileActionIndicatorDirective,\n        TileTitleContainerDirective,\n        TileActionContainerDirective,\n        NumericContentDirective,\n        NumericContentScaleArrowDirective,\n        NumericContentKpiContainerDirective,\n        NumericContentKpiDirective,\n        NumericContentLaunchIconContainerDirective,\n        NumericContentLaunchIconDirective,\n        NumericContentScaleContainerDirective,\n        NumericContentScaleDirective,\n        NumericContentScaleTextDirective\n    ],\n    exports: [\n        TileComponent,\n        TileHeaderDirective,\n        TileContentDirective,\n        TileFooterDirective,\n        TileTitleDirective,\n        TileSubtitleDirective,\n        TileSectionDirective,\n        TileRefreshDirective,\n        TileFooterTextDirective,\n        TileHeaderContentDirective,\n        TileProfileImgDirective,\n        TileLogoDirective,\n        TileContentTextDirective,\n        TileBackgroundImgDirective,\n        TileToggleDirective,\n        TileContainerDirective,\n        TilePageIndicatorDirective,\n        TileActionCloseDirective,\n        TileActionIndicatorDirective,\n        TileTitleContainerDirective,\n        TileActionContainerDirective,\n        NumericContentDirective,\n        NumericContentKpiContainerDirective,\n        NumericContentKpiDirective,\n        NumericContentLaunchIconContainerDirective,\n        NumericContentLaunchIconDirective,\n        NumericContentScaleArrowDirective,\n        NumericContentScaleContainerDirective,\n        NumericContentScaleDirective,\n        NumericContentScaleTextDirective\n    ]\n})\nexport class TileModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}