{"version":3,"file":"acorex-components-bottom-navigation.mjs","sources":["../../../../packages/components/bottom-navigation/src/lib/bottom-navigation-item/bottom-navigation-item.component.ts","../../../../packages/components/bottom-navigation/src/lib/bottom-navigation-item/bottom-navigation-item.component.html","../../../../packages/components/bottom-navigation/src/lib/bottom-navigation.component.ts","../../../../packages/components/bottom-navigation/src/lib/bottom-navigation.component.html","../../../../packages/components/bottom-navigation/src/lib/bottom-navigation.module.ts","../../../../packages/components/bottom-navigation/src/acorex-components-bottom-navigation.ts"],"sourcesContent":["import {\n  AXClickEvent,\n  AXComponent,\n  AXRippleDirective,\n  MXInteractiveComponent,\n  MXLookComponent,\n} from '@acorex/cdk/common';\nimport { Component, EventEmitter, HostBinding, HostListener, Input, Output, ViewEncapsulation } from '@angular/core';\nimport { classes } from 'polytype';\n\n@Component({\n  selector: 'ax-bottom-navigation-item',\n  templateUrl: './bottom-navigation-item.component.html',\n  inputs: ['disabled', 'tabIndex'],\n  outputs: ['disabledChange', 'onFocus', 'onBlur'],\n\n  encapsulation: ViewEncapsulation.None,\n  hostDirectives: [AXRippleDirective],\n  providers: [{ provide: AXComponent, useExisting: AXBottomNavigationItemComponent }],\n})\nexport class AXBottomNavigationItemComponent extends classes(MXInteractiveComponent, MXLookComponent) {\n  /**\n   * The name of the navigation item.\n   */\n  @Input() name: string;\n\n  /**\n   * Indicates if the item is currently active.\n   */\n  @Input() active = false;\n\n  /**\n   * Emitted when the item is clicked. Payload is the click event.\n   */\n  @Output() onClick = new EventEmitter<AXClickEvent>();\n\n  @HostBinding('class')\n  get __hostClass(): string {\n    return `${this.active ? 'ax-state-active' : ''} ${this.disabled ? 'ax-state-disabled' : ''} `;\n  }\n\n  @HostListener('click', ['$event'])\n  protected handleClick(e: MouseEvent) {\n    if (this.disabled) return;\n    const dataset = (e.target as any).dataset;\n    this.onClick.emit({\n      component: this,\n      htmlElement: this.getHostElement(),\n      nativeEvent: e,\n      data: { active: this.active, name: this.name, ...dataset },\n      isUserInteraction: e.isTrusted,\n    });\n  }\n}\n","<ng-content select=\"ax-prefix, ax-icon\"></ng-content>\n<ng-content select=\"ax-text, ng-content, ng-container\"></ng-content>\n<ng-content select=\"ax-suffix\"></ng-content>\n","import { AXClickEvent, AXComponent } from '@acorex/cdk/common';\nimport {\n  AfterContentInit,\n  Component,\n  ContentChildren,\n  HostBinding,\n  QueryList,\n  ViewEncapsulation,\n  input,\n  output,\n} from '@angular/core';\nimport { AXBottomNavigationItemComponent } from './bottom-navigation-item/bottom-navigation-item.component';\n\nexport type AXBottomNavigationLook = 'solid' | 'with-line' | 'pills' | 'pills-color';\n\n/**\n * The BottomNavigation component provides a navigational bar at the bottom of the screen with customizable appearance and behavior.\n *\n * @category Components\n */\n@Component({\n  selector: 'ax-bottom-navigation',\n  templateUrl: './bottom-navigation.component.html',\n  styleUrls: ['./bottom-navigation.component.css'],\n\n  encapsulation: ViewEncapsulation.None,\n  providers: [{ provide: AXComponent, useExisting: AXBottomNavigationComponent }],\n})\nexport class AXBottomNavigationComponent implements AfterContentInit {\n  /**\n   *  @ignore\n   */\n  @ContentChildren(AXBottomNavigationItemComponent)\n  private _contentButtons: QueryList<AXBottomNavigationItemComponent>;\n  look = input<AXBottomNavigationLook>('solid');\n\n  /**\n   * This will be displayed as an interface\n   */\n  hasBorder = input(false);\n\n  /**\n   * Determines the position of the indicator relative to the button.\n   *\n   * @defaultValue 'top'\n   */\n  indicatorPosition = input<'top' | 'bottom'>('top');\n\n  /**\n   * Emit item click.\n   * @returns The AXClickEvent\n   */\n  onItemClick = output<AXClickEvent>();\n\n  //@Output() onItemClick = new EventEmitter<AXClickEvent>();\n\n  /**\n   *  @ignore\n   */\n  ngAfterContentInit(): void {\n    this._bindEvents();\n  }\n\n  /** @ignore */\n  private _bindEvents() {\n    this._contentButtons?.forEach((i: any) => {\n      if (!i.onClick.length)\n        i.onClick.subscribe((event: AXClickEvent) => {\n          this._handleClickEvent(event);\n        });\n    });\n  }\n\n  /** @ignore */\n  _handleClickEvent(item: AXClickEvent) {\n    this.onItemClick.emit(item);\n  }\n\n  /** @ignore */\n  @HostBinding('class')\n  get __hostClass(): string {\n    return ` ax-look-${this.look()} ax-indicator-${this.indicatorPosition()} ${this.hasBorder() ? 'ax-has-border' : ''}`;\n  }\n}\n","<ng-content select=\"ng-container, ax-bottom-navigation-item\"></ng-content>\n","import { NgModule } from '@angular/core';\nimport { AXBottomNavigationItemComponent } from './bottom-navigation-item/bottom-navigation-item.component';\nimport { AXBottomNavigationComponent } from './bottom-navigation.component';\n\n@NgModule({\n  imports: [AXBottomNavigationComponent, AXBottomNavigationItemComponent],\n  exports: [AXBottomNavigationComponent, AXBottomNavigationItemComponent],\n})\nexport class AXBottomNavigationModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}