{"version":3,"file":"fundamental-ngx-core-action-sheet.mjs","sources":["../../../../libs/core/action-sheet/action-sheet-item/action-sheet-item.component.ts","../../../../libs/core/action-sheet/action-sheet-item/action-sheet-item.component.html","../../../../libs/core/action-sheet/action-sheet-body/action-sheet-body.component.ts","../../../../libs/core/action-sheet/action-sheet-body/action-sheet-body.component.html","../../../../libs/core/action-sheet/action-sheet-control/action-sheet-control.component.ts","../../../../libs/core/action-sheet/action-sheet-mobile/action-sheet-mobile.component.ts","../../../../libs/core/action-sheet/action-sheet-mobile/action-sheet-mobile.component.html","../../../../libs/core/action-sheet/action-sheet.component.ts","../../../../libs/core/action-sheet/action-sheet.component.html","../../../../libs/core/action-sheet/action-sheet.module.ts","../../../../libs/core/action-sheet/fundamental-ngx-core-action-sheet.ts"],"sourcesContent":["import {\n    ChangeDetectionStrategy,\n    Component,\n    ElementRef,\n    HostListener,\n    Input,\n    ViewChild,\n    ViewEncapsulation,\n    input,\n    output,\n    signal\n} from '@angular/core';\nimport { KeyboardSupportItemInterface } from '@fundamental-ngx/cdk/utils';\nimport { ButtonComponent, ButtonType, defaultButtonType } from '@fundamental-ngx/core/button';\nimport { FD_DEFAULT_ICON_FONT_FAMILY, IconFont } from '@fundamental-ngx/core/icon';\nimport { Subject } from 'rxjs';\n\nexport interface ActionSheetClickEvent {\n    shouldClose: boolean;\n}\n\n/**\n * A component used to enforce a certain layout for the action sheet.\n * ```html\n * <fd-action-sheet>\n *     <fd-action-sheet-control>Control Element</fd-action-sheet-control>\n *     <fd-action-sheet-body>\n *          <fd-action-sheet-item>Action Sheet Body</fd-action-sheet-item>\n *          <fd-action-sheet-item>Action Sheet Body</fd-action-sheet-item>\n *          <fd-action-sheet-item>Action Sheet Body</fd-action-sheet-item>\n *     </fd-action-sheet-body>\n * </fd-action-sheet>\n * ```\n */\n@Component({\n    // eslint-disable-next-line @angular-eslint/component-selector\n    selector: '[fd-action-sheet-item]',\n    templateUrl: './action-sheet-item.component.html',\n    encapsulation: ViewEncapsulation.None,\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    host: {\n        class: 'fd-action-sheet__item',\n        role: 'none'\n    },\n    imports: [ButtonComponent]\n})\nexport class ActionSheetItemComponent implements KeyboardSupportItemInterface {\n    /** Sets text of button. */\n    @Input()\n    label: string;\n\n    /** Sets icon of action item. */\n    @Input()\n    glyph: string;\n\n    /** Glyph font family */\n    @Input()\n    glyphFont: IconFont = FD_DEFAULT_ICON_FONT_FAMILY;\n\n    /** Indicate state of the button.*/\n    @Input()\n    negative = false;\n\n    /** Indicate if it's closing button */\n    @Input()\n    isCloseButton = false;\n\n    /** Whether or not the action sheet item is disabled. */\n    @Input()\n    disabled = false;\n\n    /** @hidden */\n    @ViewChild(ButtonComponent, { read: ElementRef })\n    buttonComponent: ElementRef;\n\n    /** @hidden */\n    readonly keyDown = output<KeyboardEvent>();\n\n    /** The button type for styling (e.g., 'transparent', 'emphasized'). */\n    readonly fdType = input<ButtonType>(defaultButtonType);\n\n    /** Whether the button is in toggled state. */\n    readonly toggled = input<boolean | undefined | null>();\n\n    /** @hidden */\n    readonly clicked = new Subject<ActionSheetClickEvent>();\n\n    /** @hidden */\n    readonly focused = new Subject<ActionSheetItemComponent>();\n\n    /** @hidden */\n    readonly _tabIndex$ = signal<number | null>(null);\n\n    /** @hidden */\n    constructor(private readonly _elementRef: ElementRef) {}\n\n    /** @hidden */\n    @HostListener('keydown', ['$event'])\n    keydownHandler(event: KeyboardEvent): void {\n        this.keyDown.emit(event);\n    }\n\n    /** @hidden */\n    @HostListener('focusin')\n    focusHandler(): void {\n        this.focused.next(this);\n    }\n\n    /** Handler for mouse events */\n    @HostListener('click')\n    onClick(): void {\n        this.clicked.next({\n            shouldClose: this.isCloseButton\n        });\n    }\n\n    /** @hidden Support for KeyboardSupportItemInterface */\n    click(): void {\n        this._elementRef.nativeElement.click();\n    }\n\n    /** @hidden */\n    focus(): void {\n        this.buttonComponent.nativeElement.focus();\n    }\n}\n","<button\n    fd-button\n    class=\"fd-button--full-width\"\n    [class.fd-button--text-alignment-left]=\"!negative\"\n    [class.fd-button--negative]=\"negative\"\n    [class.fd-button--transparent]=\"!negative && fdType() === 'standard'\"\n    role=\"menuitem\"\n    [fdType]=\"fdType()\"\n    [toggled]=\"toggled()\"\n    [label]=\"label\"\n    [glyph]=\"glyph\"\n    [glyphFont]=\"glyphFont\"\n    [disabled]=\"disabled\"\n    [tabIndex]=\"_tabIndex$()\"\n>\n    <ng-content></ng-content>\n</button>\n","import {\n    AfterViewInit,\n    ChangeDetectionStrategy,\n    Component,\n    ContentChildren,\n    DestroyRef,\n    ElementRef,\n    HostListener,\n    Input,\n    QueryList,\n    ViewChild,\n    ViewEncapsulation,\n    inject\n} from '@angular/core';\n\nimport { KeyboardSupportService, Nullable } from '@fundamental-ngx/cdk/utils';\n\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { ContentDensityObserver, contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';\nimport { Subject, merge, startWith, takeUntil } from 'rxjs';\nimport { ActionSheetItemComponent } from '../action-sheet-item/action-sheet-item.component';\n\nlet actionSheetBodyUniqueIdCounter = 0;\n\n/**\n * A component used to enforce a certain layout for the action sheet.\n * ```html\n * <fd-action-sheet>\n *     <fd-action-sheet-control>Control Element</fd-action-sheet-control>\n *     <fd-action-sheet-body>\n *          <fd-action-sheet-item>Action Sheet Body</fd-action-sheet-item>\n *          <fd-action-sheet-item>Action Sheet Body</fd-action-sheet-item>\n *          <fd-action-sheet-item>Action Sheet Body</fd-action-sheet-item>\n *     </fd-action-sheet-body>\n * </fd-action-sheet>\n * ```\n */\n@Component({\n    selector: 'fd-action-sheet-body',\n    templateUrl: './action-sheet-body.component.html',\n    encapsulation: ViewEncapsulation.None,\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    providers: [KeyboardSupportService, contentDensityObserverProviders()],\n    standalone: true\n})\nexport class ActionSheetBodyComponent implements AfterViewInit {\n    /** Id of the Action Sheet Body. */\n    @Input()\n    actionSheetBodyId = `fd-action-sheet-body-${actionSheetBodyUniqueIdCounter++}`;\n\n    /** Display in mobile view. */\n    @Input()\n    mobile = false;\n\n    /** Aria-label for Action Sheet Body. */\n    @Input()\n    ariaLabel: Nullable<string>;\n\n    /** Aria-Labelledby for element describing Action Sheet Body. */\n    @Input()\n    ariaLabelledby: Nullable<string>;\n\n    /** @hidden */\n    @ViewChild('actionSheetElement')\n    actionSheetElementRef: ElementRef<HTMLUListElement>;\n\n    /** @hidden */\n    @ContentChildren(ActionSheetItemComponent)\n    private readonly _items: QueryList<ActionSheetItemComponent>;\n\n    /** @hidden */\n    private _refresh$ = new Subject<void>();\n\n    /** @hidden */\n    private readonly _destroyRef = inject(DestroyRef);\n\n    /** @hidden */\n    constructor(\n        private readonly _keyboardSupportService: KeyboardSupportService<ActionSheetItemComponent>,\n        readonly _contentDensityObserver: ContentDensityObserver\n    ) {}\n\n    /** Handler for mouse events */\n    @HostListener('click', ['$event'])\n    onClick(event: MouseEvent): void {\n        event.stopPropagation();\n    }\n\n    /** @hidden */\n    @HostListener('keydown', ['$event'])\n    keyDownHandler(event: KeyboardEvent): void {\n        if (this._keyboardSupportService.keyManager) {\n            this._keyboardSupportService.onKeyDown(event);\n        }\n    }\n\n    /** @hidden */\n    ngAfterViewInit(): void {\n        this._keyboardSupportService.setKeyboardService(this._items, false, false);\n\n        this._items.changes.pipe(startWith(null), takeUntilDestroyed(this._destroyRef)).subscribe(() => {\n            this._setupInteractionListeners();\n        });\n    }\n\n    /** @hidden */\n    private _setupInteractionListeners(): void {\n        this._refresh$.next();\n        this._refresh$.complete();\n        this._refresh$ = new Subject<void>();\n\n        merge(...this._items.toArray().map((i) => i.focused))\n            .pipe(takeUntil(this._refresh$), takeUntilDestroyed(this._destroyRef))\n            .subscribe((focusedItem) => {\n                this._items.forEach((item) => {\n                    item._tabIndex$.set(-1);\n                });\n                focusedItem._tabIndex$.set(0);\n                this._keyboardSupportService.keyManager.setActiveItem(focusedItem);\n            });\n    }\n}\n","<ul\n    #actionSheetElement\n    [attr.id]=\"actionSheetBodyId\"\n    [attr.aria-label]=\"ariaLabel\"\n    [attr.aria-labelledby]=\"ariaLabelledby\"\n    class=\"fd-action-sheet\"\n    [class.fd-action-sheet--mobile]=\"mobile\"\n    role=\"menu\"\n>\n    <ng-content select=\"[fd-action-sheet-item]\"></ng-content>\n</ul>\n","import { _getFocusedElementPierceShadowDom } from '@angular/cdk/platform';\nimport {\n    ChangeDetectionStrategy,\n    Component,\n    EventEmitter,\n    HostListener,\n    Output,\n    ViewEncapsulation\n} from '@angular/core';\n\n/**\n * A component used to enforce a certain layout for the action sheet.\n * ```html\n * <fd-action-sheet>\n *     <fd-action-sheet-control>Control Element</fd-action-sheet-control>\n *     <fd-action-sheet-body>\n *          <fd-action-sheet-item>Action Sheet Body</fd-action-sheet-item>\n *          <fd-action-sheet-item>Action Sheet Body</fd-action-sheet-item>\n *          <fd-action-sheet-item>Action Sheet Body</fd-action-sheet-item>\n *     </fd-action-sheet-body>\n * </fd-action-sheet>\n * ```\n */\n@Component({\n    selector: 'fd-action-sheet-control',\n    template: `<ng-content></ng-content>`,\n    encapsulation: ViewEncapsulation.None,\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    standalone: true\n})\nexport class ActionSheetControlComponent {\n    /** Emitted event when control button is clicked */\n    @Output()\n    clicked: EventEmitter<void> = new EventEmitter<void>();\n\n    /** saves element that is focused before dialog opened */\n    private _focusedElementBeforeDialogOpened: HTMLElement | null = null;\n\n    /** Handler for mouse events */\n    @HostListener('click')\n    onClick(): void {\n        this._focusedElementBeforeDialogOpened = _getFocusedElementPierceShadowDom();\n        this.clicked.emit();\n    }\n\n    /** @hidden */\n    _focus(): void {\n        this._focusedElementBeforeDialogOpened?.focus();\n    }\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, TemplateRef } from '@angular/core';\n\ntype OpenChangeHandle = (isOpen: boolean) => void;\n\n@Component({\n    selector: 'fd-action-sheet-mobile',\n    templateUrl: './action-sheet-mobile.component.html',\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    imports: [NgTemplateOutlet]\n})\nexport class ActionSheetMobileComponent {\n    /** Whenever links should be visible */\n    open = false;\n\n    /** @hidden */\n    childContent: {\n        actionSheetBodyTemplate: TemplateRef<any>;\n        isOpenChangeHandle: OpenChangeHandle;\n    } | null = null;\n\n    /** @hidden */\n    get _isOpenChangeHandle(): OpenChangeHandle | undefined {\n        return this.childContent?.isOpenChangeHandle;\n    }\n\n    /** @hidden */\n    constructor(private readonly _changeDetectionRef: ChangeDetectorRef) {}\n\n    /** @hidden */\n    toggleOpenState(isOpen: boolean): void {\n        this.open = isOpen;\n        this._changeDetectionRef.detectChanges();\n    }\n}\n","@if (open) {\n    <div\n        class=\"fd-action-sheet__wrapper fd-action-sheet__wrapper--active\"\n        (click)=\"_isOpenChangeHandle && _isOpenChangeHandle(false)\"\n    >\n        <ng-template [ngTemplateOutlet]=\"childContent?.actionSheetBodyTemplate || null\"></ng-template>\n    </div>\n}\n","import {\n    AfterContentInit,\n    AfterViewInit,\n    ChangeDetectionStrategy,\n    ChangeDetectorRef,\n    Component,\n    ComponentRef,\n    ContentChild,\n    ContentChildren,\n    DestroyRef,\n    EventEmitter,\n    inject,\n    Input,\n    OnDestroy,\n    Optional,\n    Output,\n    QueryList,\n    TemplateRef,\n    ViewChild,\n    ViewContainerRef,\n    ViewEncapsulation\n} from '@angular/core';\nimport { merge, Subject, Subscription } from 'rxjs';\nimport { startWith, takeUntil } from 'rxjs/operators';\n\nimport {\n    destroyObservable,\n    DynamicComponentService,\n    FocusEscapeDirection,\n    KeyboardSupportService,\n    Nullable\n} from '@fundamental-ngx/cdk/utils';\n\nimport { PopoverBodyComponent, PopoverComponent, PopoverControlComponent } from '@fundamental-ngx/core/popover';\nimport { FdTranslatePipe } from '@fundamental-ngx/i18n';\n\nimport { Placement } from '@fundamental-ngx/core/shared';\n\nimport { NgTemplateOutlet } from '@angular/common';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { ActionSheetBodyComponent } from './action-sheet-body/action-sheet-body.component';\nimport { ActionSheetControlComponent } from './action-sheet-control/action-sheet-control.component';\nimport { ActionSheetClickEvent, ActionSheetItemComponent } from './action-sheet-item/action-sheet-item.component';\nimport { ActionSheetMobileComponent } from './action-sheet-mobile/action-sheet-mobile.component';\n\n@Component({\n    selector: 'fd-action-sheet',\n    templateUrl: './action-sheet.component.html',\n    styleUrl: './action-sheet.component.scss',\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    encapsulation: ViewEncapsulation.None,\n    providers: [KeyboardSupportService, DynamicComponentService],\n    imports: [PopoverComponent, PopoverControlComponent, NgTemplateOutlet, PopoverBodyComponent, FdTranslatePipe]\n})\nexport class ActionSheetComponent implements AfterContentInit, AfterViewInit, OnDestroy {\n    /** Whether should be displayed in mobile mode */\n    @Input()\n    mobile = false;\n\n    /** The position of the popover body. Set to 'bottom' by default. */\n    @Input()\n    placement: Placement = 'bottom';\n\n    /** Whether the popover body has an arrow. Set to false by default. */\n    @Input()\n    noArrow = false;\n\n    /** Whenever links should be visible */\n    @Input()\n    isOpen = false;\n\n    /** Whether internal keyboard support should be enabled. It's enabled by default */\n    @Input()\n    keyboardSupport = true;\n\n    /**\n     * To allow user to determine what event he wants to trigger the messages to show\n     * Accepts any [HTML DOM Events](https://www.w3schools.com/jsref/dom_obj_event.asp).\n     */\n    @Input()\n    triggers: string[] = ['click'];\n\n    /** Value for the control title in mobile mode */\n    @Input()\n    controlTitle: Nullable<string>;\n\n    /**\n     * Value for the control title heading level\n     * A number between 1 and 6\n     * Default is set to 2\n     */\n    @Input()\n    controlTitleHeading: 1 | 2 | 3 | 4 | 5 | 6 = 2;\n\n    /** Event thrown, when focus escapes the list */\n    @Output()\n    focusEscapeList = new EventEmitter<FocusEscapeDirection>();\n\n    /** Event thrown, when the action sheet is opened or closed */\n    @Output()\n    readonly isOpenChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n    /** @hidden */\n    @ContentChild(ActionSheetBodyComponent)\n    actionSheetBody: ActionSheetBodyComponent;\n\n    /** @hidden */\n    @ContentChild(ActionSheetControlComponent)\n    actionSheetControl: ActionSheetControlComponent;\n\n    /** @hidden */\n    @ContentChildren(ActionSheetItemComponent, { descendants: true })\n    actionSheetItems: QueryList<ActionSheetItemComponent>;\n\n    /** @hidden */\n    @ViewChild('actionSheetBodyTemplate')\n    actionSheetBodyTemplate: TemplateRef<any>;\n\n    /** @hidden */\n    @ViewChild(PopoverComponent)\n    popoverComponent: PopoverComponent;\n\n    /** @hidden */\n    actionSheetMobileDynamic: ComponentRef<ActionSheetMobileComponent>;\n\n    /** @hidden */\n    private readonly _destroyRef = inject(DestroyRef);\n\n    /** @hidden */\n    private readonly _onRefresh$ = new Subject<void>();\n\n    /** @hidden */\n    private _subscriptions = new Subscription();\n\n    /** @hidden */\n    constructor(\n        private readonly _keyboardSupportService: KeyboardSupportService<ActionSheetItemComponent>,\n        private readonly _changeDetectionRef: ChangeDetectorRef,\n        private readonly _viewContainerRef: ViewContainerRef,\n        @Optional() private _dynamicComponentService: DynamicComponentService\n    ) {}\n\n    /** @hidden */\n    ngAfterContentInit(): void {\n        this._initializeChildrenState();\n        this._keyboardSupportService.setKeyboardService(this.actionSheetItems, true);\n        this._listenOnItemsChange();\n        this._actionControlHandle();\n    }\n\n    /** @hidden */\n    ngAfterViewInit(): void {\n        if (this.mobile) {\n            this._setUpMobileMode();\n        }\n    }\n\n    /** @hidden */\n    ngOnDestroy(): void {\n        this._subscriptions.unsubscribe();\n        this._onRefresh$.next();\n        this._onRefresh$.complete();\n    }\n\n    /** Method that opens action sheet */\n    open(): void {\n        this.isOpenChangeHandle(true);\n    }\n\n    /** Method that closes action sheet */\n    close(): void {\n        this.isOpenChangeHandle(false);\n    }\n\n    /** @hidden */\n    isOpenChangeHandle(isOpen: boolean): void {\n        if (this.isOpen === isOpen) {\n            return;\n        }\n\n        this.isOpen = isOpen;\n\n        if (this.mobile && this.actionSheetMobileDynamic) {\n            this.actionSheetMobileDynamic.instance.toggleOpenState(this.isOpen);\n        }\n\n        this.isOpenChange.emit(isOpen);\n\n        isOpen ? this._setItemActive(0) : this.actionSheetControl._focus();\n\n        this._changeDetectionRef.detectChanges();\n    }\n\n    /** @hidden */\n    private _initializeChildrenState(): void {\n        if (this.actionSheetBody) {\n            this.actionSheetBody.mobile = this.mobile;\n        }\n    }\n\n    /** @hidden */\n    private _actionControlHandle(): void {\n        this.actionSheetControl.clicked\n            .pipe(takeUntilDestroyed(this._destroyRef))\n            .subscribe(() => (this.isOpen ? this.close() : this.open()));\n    }\n\n    /** @hidden */\n    private _listenOnItemsChange(): void {\n        this.actionSheetItems.changes.pipe(startWith(1), takeUntilDestroyed(this._destroyRef)).subscribe(() => {\n            this._listenOnItemsClick();\n        });\n    }\n\n    /** @hidden */\n    private _listenOnItemsClick(): void {\n        /** Finish all of the streams, from before */\n        this._onRefresh$.next();\n        /** Merge refresh/destroy observables */\n        const refresh$ = merge(this._onRefresh$, destroyObservable(this._destroyRef));\n\n        this.actionSheetItems.forEach((item, index) =>\n            item.clicked.pipe(takeUntil(refresh$)).subscribe((event: ActionSheetClickEvent) => {\n                this._setItemActive(index);\n                if (event.shouldClose) {\n                    this.close();\n                }\n            })\n        );\n    }\n\n    /** @hidden Set fake focus on element with passed index */\n    private _setItemActive(index: number): void {\n        this._keyboardSupportService.keyManager?.setActiveItem(index);\n    }\n\n    /** @hidden */\n    private async _setUpMobileMode(): Promise<void> {\n        this.actionSheetMobileDynamic = this._dynamicComponentService.createDynamicComponent(\n            {\n                actionSheetBodyTemplate: this.actionSheetBodyTemplate,\n                isOpenChangeHandle: this.isOpenChangeHandle.bind(this)\n            },\n            ActionSheetMobileComponent,\n            {\n                containerRef: this._viewContainerRef\n            }\n        );\n    }\n}\n","@if (!mobile) {\n    <fd-popover\n        [placement]=\"placement\"\n        [isOpen]=\"isOpen\"\n        (isOpenChange)=\"isOpenChangeHandle($event)\"\n        [noArrow]=\"noArrow\"\n        [focusTrapped]=\"true\"\n        [triggers]=\"[]\"\n        [focusAutoCapture]=\"true\"\n    >\n        <fd-popover-control>\n            <ng-template [ngTemplateOutlet]=\"actionSheetControl\"></ng-template>\n        </fd-popover-control>\n        <fd-popover-body>\n            <ng-template [ngTemplateOutlet]=\"actionSheetBodyTemplate\"></ng-template>\n        </fd-popover-body>\n    </fd-popover>\n} @else {\n    <ng-template [ngTemplateOutlet]=\"actionSheetControl\"></ng-template>\n}\n<ng-template #actionSheetBodyTemplate>\n    @if (mobile && controlTitle) {\n        <div\n            class=\"fd-bar fd-action-sheet__bar\"\n            role=\"toolbar\"\n            [attr.aria-label]=\"('coreActionSheet.toolbarLabel' | fdTranslate)()\"\n        >\n            <div class=\"fd-bar__left\">\n                <div class=\"fd-bar__element\">\n                    <div role=\"heading\" [ariaLevel]=\"controlTitleHeading\" class=\"fd-action-sheet__title\">\n                        {{ controlTitle }}\n                    </div>\n                </div>\n            </div>\n        </div>\n    }\n    <ng-content select=\"fd-action-sheet-body\"></ng-content>\n</ng-template>\n<ng-template #actionSheetControl>\n    <ng-content select=\"fd-action-sheet-control\"></ng-content>\n</ng-template>\n","import { NgModule } from '@angular/core';\n\nimport { ActionSheetBodyComponent } from './action-sheet-body/action-sheet-body.component';\nimport { ActionSheetControlComponent } from './action-sheet-control/action-sheet-control.component';\nimport { ActionSheetItemComponent } from './action-sheet-item/action-sheet-item.component';\nimport { ActionSheetComponent } from './action-sheet.component';\n\nconst components = [\n    ActionSheetComponent,\n    ActionSheetControlComponent,\n    ActionSheetItemComponent,\n    ActionSheetBodyComponent\n];\n\n/**\n * @deprecated\n * Use direct imports of components.\n */\n@NgModule({\n    imports: [...components],\n    exports: [...components]\n})\nexport class ActionSheetModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["startWith","takeUntil"],"mappings":"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"}