{"version":3,"file":"fundamental-ngx-platform-button.mjs","sources":["../../../../libs/platform/button/tokens.ts","../../../../libs/platform/button/button.component.ts","../../../../libs/platform/button/button.component.html","../../../../libs/platform/button/button.module.ts","../../../../libs/platform/button/fundamental-ngx-platform-button.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport const FDP_BUTTON = new InjectionToken('FdpButtonComponent');\n","import { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, computed, effect, input, output } from '@angular/core';\n\nimport { ModuleDeprecation, warnOnce } from '@fundamental-ngx/cdk/utils';\nimport { ButtonType, ButtonComponent as CoreButtonComponent, GlyphPosition } from '@fundamental-ngx/core/button';\nimport { FD_DEFAULT_ICON_FONT_FAMILY, IconFont } from '@fundamental-ngx/core/icon';\nimport { ButtonModel } from './button.model';\nimport { FDP_BUTTON } from './tokens';\n\nlet platformButtonId = 0;\n\n/**\n * @deprecated\n * Button component is deprecated. Use `fd-button` from `@fundamental-ngx/core` instead.\n */\n@Component({\n    selector: 'fdp-button',\n    templateUrl: './button.component.html',\n    styleUrl: './button.component.scss',\n    providers: [\n        {\n            provide: FDP_BUTTON,\n            useExisting: ButtonComponent\n        }\n    ],\n    imports: [CoreButtonComponent],\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    host: {\n        role: 'button',\n        '[attr.tabindex]': '-1'\n    }\n})\nexport class ButtonComponent implements ButtonModel {\n    /** Button ID - default value is provided if not set */\n    readonly id = input(`fdp-button-${++platformButtonId}`);\n\n    /** Name for the element */\n    readonly name = input<string>();\n\n    /** Width of the element */\n    readonly width = input<string>();\n\n    /** Disabled status of the element */\n    readonly disabled = input(false, { transform: booleanAttribute });\n\n    /** Sets the `aria-label` attribute to the element */\n    readonly ariaLabel = input<string>();\n\n    /** Sets the `aria-labelledby` attribute to the element */\n    readonly ariaLabelledBy = input<string>();\n\n    /** Sets the `aria-describedby` attribute to the element */\n    readonly ariaDescribedBy = input<string>();\n\n    /** Position of glyph related to text */\n    readonly glyphPosition = input<GlyphPosition>('before');\n\n    /** Text rendered inside button component */\n    readonly label = input<string>();\n\n    /** The icon to include in the button. See the icon page for the list of icons */\n    readonly glyph = input<string>();\n\n    /** Glyph font family */\n    readonly glyphFont = input<IconFont>(FD_DEFAULT_ICON_FONT_FAMILY);\n\n    /** The type of the button. Types include:\n     * 'standard' | 'positive' | 'negative' | 'attention' | 'half' | 'ghost' | 'transparent' | 'emphasized' | 'menu'.\n     * Leave empty for default (Standard button).\n     * Default value is set to 'standard'\n     */\n    readonly fdType = input<ButtonType>('standard');\n\n    /**\n     * @deprecated\n     * Use `fdType` property.\n     * The buttonType of the button. Types includes\n     * 'standard','positive', 'negative', 'attention', 'ghost',\n     * 'transparent', 'emphasized','menu'.\n     * Leave empty for default (standard button).\n     */\n    readonly buttonType = input<ButtonType>();\n\n    /** Whether button is in toggled state */\n    readonly toggled = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n    /** arialabel, tooltip for button, intended to be used when the button only contains an icon */\n    readonly title = input<string>();\n\n    /** @deprecated use toggled input property instead\n     * aria-selected for accessibility to the native HTML button\n     */\n    readonly ariaSelected = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n    /** aria-disabled for accessibility to the native HTML button */\n    readonly ariaDisabled = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n    /** propagate aria-expanded for accessibility to the native HTML button */\n    readonly ariaExpanded = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n    /** propagate aria-controls for accessibility to the native HTML button */\n    readonly ariaControlsId = input<string>();\n\n    /** @deprecated use toggled input property instead\n     * propagate aria-pressed for accessibility to the native HTML button\n     */\n    readonly ariaPressed = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n    /** Specifies the type to the native HTML button */\n    readonly type = input<string>();\n\n    /** Specifies an initial value to the native HTML button */\n    readonly value = input<string>();\n\n    /** Event sent when button is clicked */\n    readonly buttonClicked = output<any>();\n\n    /** @hidden Computed to determine effective fdType (buttonType overrides fdType if provided) */\n    protected readonly _effectiveFdType = computed(() => this.buttonType() || this.fdType());\n\n    /** @hidden Computed to determine effective toggled state */\n    protected readonly _effectiveToggled = computed(() => this.toggled() || this.ariaPressed() || this.ariaSelected());\n\n    /**\n     * Computed accessible name for the button.\n     * Follows ARIA accessible name computation priority:\n     * 1. aria-label input\n     * 2. title input (commonly used for icon-only buttons)\n     * 3. label input (visible text)\n     * 4. glyph name as fallback (e.g., \"decline\" -> \"decline\")\n     * @hidden\n     */\n    protected readonly accessibleName = computed(\n        () => this.ariaLabel() || this.title() || this.label() || this.glyph() || null\n    );\n\n    /** @hidden */\n    constructor() {\n        warnOnce(\n            \"Platform's ButtonComponent is deprecated and will be removed in the next major release. Consider using Core's ButtonComponent instead.\"\n        );\n\n        // Warn about deprecated inputs\n        effect(() => {\n            if (this.ariaSelected()) {\n                warnOnce('Property ariaSelected is deprecated. Use `toggled` input property instead.');\n            }\n        });\n\n        effect(() => {\n            if (this.ariaPressed()) {\n                warnOnce('Property ariaPressed is deprecated. Use `toggled` input property instead.');\n            }\n        });\n    }\n\n    /**\n     * Programmatically set the disabled state.\n     * Implements ButtonModel interface.\n     * Note: Cannot directly set signal inputs. This method exists for interface compatibility.\n     */\n    setDisabled(_value: boolean): void {\n        console.warn('setDisabled() cannot modify signal input. Use template binding [disabled]=\"value\" instead.');\n    }\n\n    /**\n     * Get the current disabled state.\n     * Implements ButtonModel interface.\n     */\n    isDisabled(): boolean {\n        return this.disabled();\n    }\n\n    /**\n     * Programmatically set the button type.\n     * Implements ButtonModel interface.\n     * Note: Cannot directly set signal inputs. This method exists for interface compatibility.\n     */\n    setFdType(_value: ButtonType): void {\n        console.warn('setFdType() cannot modify signal input. Use template binding [fdType]=\"value\" instead.');\n    }\n\n    /**\n     * Get the current button type.\n     * Implements ButtonModel interface.\n     */\n    getFdType(): ButtonType {\n        return this._effectiveFdType();\n    }\n\n    /**\n     * No-op method for interface compatibility.\n     * Implements ButtonModel interface.\n     * Signal-based components don't need manual change detection.\n     */\n    markForCheck(): void {\n        // No-op: signals automatically trigger change detection\n    }\n\n    /**\n     * Handles button click\n     */\n    protected onBtnClick($event: any): void {\n        this.buttonClicked.emit($event);\n    }\n}\n\nexport class DeprecatedButtonAriaSelected implements ModuleDeprecation {\n    /** @hidden */\n    message = 'ariaSelected input property is deprecated.';\n\n    /** @hidden */\n    alternative = {\n        name: 'Use [toggled] input property instead',\n        link: ['/platform', 'button'],\n        fragment: 'state'\n    };\n}\n\nexport class DeprecatedButtonAriaPressed implements ModuleDeprecation {\n    /** @hidden */\n    message = 'ariaPressed input property is deprecated.';\n\n    /** @hidden */\n    alternative = {\n        name: 'Use [toggled] input property instead',\n        link: ['/platform', 'button'],\n        fragment: 'state'\n    };\n}\n","<button\n    #fdButton\n    fd-button\n    [attr.id]=\"id()\"\n    [attr.name]=\"name()\"\n    [ariaLabel]=\"accessibleName()\"\n    [attr.aria-controls]=\"ariaControlsId()\"\n    [attr.aria-expanded]=\"ariaExpanded()\"\n    [attr.aria-disabled]=\"ariaDisabled()\"\n    [attr.title]=\"!!glyph() && !label() ? title() : null\"\n    [attr.value]=\"value()\"\n    [glyphPosition]=\"glyphPosition()\"\n    [label]=\"label()\"\n    [type]=\"type()\"\n    [toggled]=\"_effectiveToggled()\"\n    [glyph]=\"glyph()\"\n    [glyphFont]=\"glyphFont()\"\n    [disabled]=\"disabled()\"\n    [fdType]=\"_effectiveFdType()\"\n    class=\"fd-ellipsis\"\n    [class.is-disabled]=\"ariaDisabled()\"\n    [style.width]=\"width()\"\n    (click)=\"onBtnClick($event)\"\n></button>\n","import { NgModule } from '@angular/core';\n\nimport { ContentDensityModule } from '@fundamental-ngx/core/content-density';\nimport { ButtonComponent } from './button.component';\n\n/**\n * @deprecated\n * Use direct imports of components and directives.\n */\n@NgModule({\n    imports: [ButtonComponent, ContentDensityModule],\n    exports: [ButtonComponent, ContentDensityModule]\n})\nexport class PlatformButtonModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["CoreButtonComponent"],"mappings":"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"}