{"version":3,"file":"clr-angular-button.mjs","sources":["../../../projects/angular/button/providers/button-in-group.service.ts","../../../projects/angular/button/button-group/button.ts","../../../projects/angular/button/providers/button-group-focus.enum.ts","../../../projects/angular/button/providers/button-group-focus-handler.service.ts","../../../projects/angular/button/button-group/button-group.ts","../../../projects/angular/button/button-group/button-group.html","../../../projects/angular/button/button-group/button-group.module.ts","../../../projects/angular/button/button-loading/loading-button.ts","../../../projects/angular/button/button-loading/loading-button.module.ts","../../../projects/angular/button/button.module.ts","../../../projects/angular/button/button-group/index.ts","../../../projects/angular/button/button-loading/index.ts","../../../projects/angular/button/index.ts","../../../projects/angular/button/clr-angular-button.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Injectable } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\nimport { ClrButton } from '../button-group/button';\n\n@Injectable()\nexport class ButtonInGroupService {\n  private _changes = new Subject<ClrButton>();\n\n  get changes(): Observable<ClrButton> {\n    return this._changes.asObservable();\n  }\n\n  updateButtonGroup(button: ClrButton): void {\n    this._changes.next(button);\n  }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Component, EventEmitter, Input, Optional, Output, SkipSelf, TemplateRef, ViewChild } from '@angular/core';\nimport { RouterLinkActive } from '@angular/router';\nimport { ClrLoadingState, LoadingListener, uniqueIdFactory } from '@clr/angular/utils';\n\nimport { ButtonInGroupService } from '../providers/button-in-group.service';\n\n@Component({\n  selector: 'clr-button',\n  template: `\n    <ng-template #buttonProjectedRef>\n      <button\n        [class]=\"classNames\"\n        (click)=\"emitClick()\"\n        [attr.type]=\"type\"\n        [attr.name]=\"name\"\n        [attr.disabled]=\"disabled\"\n        [attr.role]=\"role\"\n        [attr.id]=\"id\"\n      >\n        @if (loading) {\n          <span class=\"spinner spinner-inline\"></span>\n        }\n        <ng-content></ng-content>\n      </button>\n    </ng-template>\n  `,\n  providers: [{ provide: LoadingListener, useExisting: ClrButton }],\n  standalone: false,\n})\nexport class ClrButton implements LoadingListener {\n  @Output('click') _click = new EventEmitter<boolean>(false);\n  @Input('routerLinkActive') routerLinkActiveClasses: string;\n\n  @ViewChild('buttonProjectedRef', { static: true }) templateRef: TemplateRef<ClrButton>;\n\n  loading: boolean;\n\n  private _inMenu = false;\n  private _enableService = false;\n  private _classNames = 'btn';\n  private _name: string = null;\n  private _type: string = null;\n  private _disabled: any = null;\n  private _id: string = uniqueIdFactory();\n\n  constructor(\n    @Optional() private readonly routerLinkActive: RouterLinkActive,\n    @SkipSelf() @Optional() public buttonInGroupService: ButtonInGroupService\n  ) {}\n\n  @Input('clrInMenu')\n  get inMenu(): boolean {\n    return this._inMenu;\n  }\n  set inMenu(value: boolean) {\n    value = !!value;\n    if (this._inMenu !== value) {\n      this._inMenu = value;\n      // We check if the service flag is enabled\n      // and if the service exists because the service is optional\n      if (this._enableService && this.buttonInGroupService) {\n        this.buttonInGroupService.updateButtonGroup(this);\n      }\n    }\n  }\n\n  @Input('class')\n  get classNames(): string {\n    return this.routerLinkActive?.isActive ? `${this._classNames} ${this.routerLinkActiveClasses}` : this._classNames;\n  }\n  set classNames(value: string) {\n    if (typeof value === 'string') {\n      const classNames: string[] = value.split(' ');\n      if (classNames.indexOf('btn') === -1) {\n        classNames.push('btn');\n      }\n      this._classNames = classNames.join(' ');\n    }\n  }\n\n  @Input('name')\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    if (typeof value === 'string') {\n      this._name = value;\n    }\n  }\n\n  @Input('type')\n  get type(): string {\n    return this._type;\n  }\n  set type(value: string) {\n    if (typeof value === 'string') {\n      this._type = value;\n    }\n  }\n\n  @Input('id')\n  get id(): string {\n    return this._id;\n  }\n  set id(value: string) {\n    if (typeof value === 'string') {\n      this._id = value;\n    }\n  }\n\n  @Input('disabled')\n  get disabled(): any {\n    return this._disabled;\n  }\n  set disabled(value: any) {\n    if (value !== null && value !== false) {\n      this._disabled = '';\n    } else {\n      this._disabled = null;\n    }\n  }\n\n  get role(): string {\n    return this.inMenu ? 'menuitem' : null;\n  }\n\n  ngAfterViewInit() {\n    this._enableService = true;\n  }\n\n  loadingStateChange(state: ClrLoadingState): void {\n    this.loading = state === ClrLoadingState.LOADING;\n  }\n\n  emitClick(): void {\n    this._click.emit(true);\n  }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nexport enum InitialFocus {\n  FIRST_ITEM = 'first',\n  LAST_ITEM = 'last',\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Injectable, Renderer2 } from '@angular/core';\nimport { ClrPopoverService } from '@clr/angular/popover/common';\nimport { FocusableItem, FocusService, Linkers } from '@clr/angular/utils';\n\nimport { InitialFocus } from './button-group-focus.enum';\n@Injectable()\nexport class ButtonGroupFocusHandler {\n  initialFocus: InitialFocus = InitialFocus.FIRST_ITEM;\n\n  private menu: HTMLElement;\n  private menuToggle: HTMLElement;\n  private buttons: FocusableItem[];\n  private _unlistenFuncs: (() => void)[] = [];\n\n  constructor(\n    private focusService: FocusService,\n    private popoverService: ClrPopoverService,\n    private renderer: Renderer2\n  ) {}\n\n  ngOnDestroy() {\n    this._unlistenFuncs.forEach((unlisten: () => void) => unlisten());\n    this.focusService.detachListeners(this.menu);\n  }\n\n  initialize({ menu, menuToggle }: { menu: HTMLElement; menuToggle: HTMLElement }) {\n    this.menu = menu;\n    this.menuToggle = menuToggle;\n\n    this.focusService.registerContainer(this.menu);\n    this.listenToKeys();\n    this.linkButtons();\n\n    switch (this.initialFocus) {\n      case InitialFocus.LAST_ITEM:\n        this.focusLastItem();\n        break;\n      default:\n        this.focusFirstItem();\n        break;\n    }\n  }\n\n  private resetButtonsFocus() {\n    this.buttons.forEach(button => {\n      button.blur();\n    });\n  }\n\n  private listenToKeys() {\n    this._unlistenFuncs.push(\n      this.renderer.listen(this.menu, 'keydown.shift.tab', event => this.closeMenu(event, false))\n    );\n    this._unlistenFuncs.push(this.renderer.listen(this.menu, 'keydown.tab', event => this.closeMenu(event, true)));\n  }\n\n  private closeMenu(event: KeyboardEvent, focusBackOnToggle: boolean) {\n    this.popoverService.toggleWithEvent(event);\n    if (focusBackOnToggle) {\n      this.menuToggle.focus();\n    }\n    this.resetButtonsFocus();\n  }\n\n  private linkButtons() {\n    const buttonElements = Array.from(this.menu.children) as HTMLElement[];\n    this.buttons = buttonElements.map<FocusableItem>(buttonElement => {\n      this._unlistenFuncs.push(this.renderer.listen(buttonElement, 'click', event => this.closeMenu(event, true)));\n      return {\n        id: buttonElement.id,\n        value: buttonElement,\n        focus: () => {\n          buttonElement.setAttribute('tabindex', '0');\n          buttonElement.focus();\n        },\n        blur: () => {\n          buttonElement.setAttribute('tabindex', '-1');\n          buttonElement.blur();\n        },\n      };\n    });\n    this.resetButtonsFocus();\n    Linkers.linkVertical(this.buttons);\n  }\n\n  private focusFirstItem(): void {\n    if (this.buttons.length) {\n      this.focusService.moveTo(this.buttons[0]);\n    }\n    this.initialFocus = InitialFocus.FIRST_ITEM;\n  }\n\n  private focusLastItem(): void {\n    if (this.buttons.length) {\n      this.focusService.moveTo(this.buttons[this.buttons.length - 1]);\n    }\n    this.initialFocus = InitialFocus.FIRST_ITEM;\n  }\n}\n\nexport const BUTTON_GROUP_FOCUS_HANDLER_PROVIDER = {\n  provide: ButtonGroupFocusHandler,\n};\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport {\n  AfterContentInit,\n  AfterViewInit,\n  Component,\n  ContentChildren,\n  ElementRef,\n  Input,\n  QueryList,\n  ViewChild,\n} from '@angular/core';\nimport {\n  ClrPopoverHostDirective,\n  ClrPopoverPosition,\n  ClrPopoverService,\n  ClrPopoverType,\n  DROPDOWN_POSITIONS,\n} from '@clr/angular/popover/common';\nimport {\n  ClrCommonStringsService,\n  ClrDestroyService,\n  FOCUS_SERVICE_PROVIDER,\n  uniqueIdFactory,\n} from '@clr/angular/utils';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { ClrButton } from './button';\nimport {\n  BUTTON_GROUP_FOCUS_HANDLER_PROVIDER,\n  ButtonGroupFocusHandler,\n} from '../providers/button-group-focus-handler.service';\nimport { InitialFocus } from '../providers/button-group-focus.enum';\nimport { ButtonInGroupService } from '../providers/button-in-group.service';\n\n@Component({\n  selector: 'clr-button-group',\n  templateUrl: 'button-group.html',\n  providers: [ButtonInGroupService, ClrDestroyService, BUTTON_GROUP_FOCUS_HANDLER_PROVIDER, FOCUS_SERVICE_PROVIDER],\n  hostDirectives: [ClrPopoverHostDirective],\n  host: { '[class.btn-group]': 'true' },\n  standalone: false,\n})\nexport class ClrButtonGroup implements AfterContentInit, AfterViewInit {\n  @Input('clrToggleButtonAriaLabel') clrToggleButtonAriaLabel: string = this.commonStrings.keys.rowActions;\n\n  @ViewChild('menuToggle') menuToggle: ElementRef<HTMLElement>;\n  @ViewChild('menu') menu: ElementRef<HTMLElement>;\n\n  @ContentChildren(ClrButton) buttons: QueryList<ClrButton>;\n\n  popoverId = uniqueIdFactory();\n  InitialFocus = InitialFocus;\n\n  inlineButtons: ClrButton[] = [];\n  menuButtons: ClrButton[] = [];\n  protected popoverType = ClrPopoverType.DROPDOWN;\n  private _menuPosition = ClrPopoverPosition.BOTTOM_LEFT;\n\n  constructor(\n    public buttonGroupNewService: ButtonInGroupService,\n    private popoverService: ClrPopoverService,\n    public commonStrings: ClrCommonStringsService,\n    private destroy$: ClrDestroyService,\n    private focusHandler: ButtonGroupFocusHandler\n  ) {}\n\n  @Input('clrMenuPosition')\n  get menuPosition(): ClrPopoverPosition {\n    return this._menuPosition;\n  }\n  set menuPosition(pos: ClrPopoverPosition | string) {\n    if (!pos) {\n      return;\n    }\n\n    const posIndex = DROPDOWN_POSITIONS.indexOf(pos as ClrPopoverPosition);\n\n    if (posIndex === -1) {\n      return;\n    }\n\n    this._menuPosition = DROPDOWN_POSITIONS[posIndex];\n  }\n\n  get open() {\n    return this.popoverService.open;\n  }\n\n  /**\n   * 1. Initializes the initial Button Group View\n   * 2. Subscribes to changes on the ContentChildren\n   *    in case the user content projection changes\n   */\n  ngAfterContentInit() {\n    this.initializeButtons();\n    this.buttonGroupNewService.changes.pipe(takeUntil(this.destroy$)).subscribe(button => this.rearrangeButton(button));\n    this.buttons.changes.subscribe(() => {\n      this.initializeButtons();\n    });\n  }\n\n  ngAfterViewInit() {\n    this.handleFocusOnMenuOpen();\n  }\n\n  /**\n   * Moves the button into the other ViewContainer\n   * when an update is received.\n   *\n   * @param button\n   */\n  rearrangeButton(button: ClrButton): void {\n    let fromView: ClrButton[];\n    let toView: ClrButton[];\n    if (button.inMenu) {\n      fromView = this.inlineButtons;\n      toView = this.menuButtons;\n    } else {\n      fromView = this.menuButtons;\n      toView = this.inlineButtons;\n    }\n    const index: number = fromView.indexOf(button);\n    if (index > -1) {\n      fromView.splice(index, 1);\n      const moveIndex = this.getMoveIndex(button);\n      if (moveIndex <= toView.length) {\n        toView.splice(moveIndex, 0, button);\n      }\n    }\n  }\n\n  openMenu(event: Event, initialFocus: InitialFocus) {\n    this.focusHandler.initialFocus = initialFocus;\n    if (!this.popoverService.open) {\n      this.popoverService.toggleWithEvent(event);\n    }\n  }\n\n  /**\n   * Author: Eudes\n   *\n   * Finds the order of a button w.r.t other buttons\n   *\n   * @param buttonToMove\n   * @returns\n   */\n  getMoveIndex(buttonToMove: ClrButton): number {\n    const tempArr: ClrButton[] = this.buttons.filter(button => button.inMenu === buttonToMove.inMenu);\n    return tempArr.indexOf(buttonToMove);\n  }\n\n  initializeButtons(): void {\n    const tempInlineButtons: ClrButton[] = [];\n    const tempInMenuButtons: ClrButton[] = [];\n    this.buttons.forEach(button => {\n      if (button.inMenu) {\n        tempInMenuButtons.push(button);\n      } else {\n        tempInlineButtons.push(button);\n      }\n    });\n    this.inlineButtons = tempInlineButtons;\n    this.menuButtons = tempInMenuButtons;\n  }\n\n  private handleFocusOnMenuOpen() {\n    this.popoverService.popoverVisible.pipe(takeUntil(this.destroy$)).subscribe(visible => {\n      if (visible) {\n        this.focusHandler.initialize({\n          menu: this.menu.nativeElement,\n          menuToggle: this.menuToggle.nativeElement,\n        });\n      }\n    });\n  }\n}\n","<!--\n  ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n  ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n  ~ This software is released under MIT license.\n  ~ The full license information can be found in LICENSE in the root directory of this project.\n  -->\n\n@for (inlineButton of inlineButtons; track inlineButton) {\n<ng-template [ngTemplateOutlet]=\"inlineButton.templateRef\"></ng-template>\n} @if (menuButtons.length > 0) {\n<div class=\"btn-group-overflow open\" [ngClass]=\"menuPosition\">\n  <button\n    #menuToggle\n    class=\"btn dropdown-toggle\"\n    clrPopoverOrigin\n    clrPopoverOpenCloseButton\n    (keydown.arrowup)=\"openMenu($event, InitialFocus.LAST_ITEM)\"\n    (keydown.arrowdown)=\"openMenu($event, InitialFocus.FIRST_ITEM)\"\n    [attr.aria-controls]=\"popoverId\"\n    [attr.aria-expanded]=\"open\"\n    [attr.aria-label]=\"clrToggleButtonAriaLabel\"\n  >\n    <cds-icon shape=\"ellipsis-horizontal\" [attr.title]=\"commonStrings.keys.more\"></cds-icon>\n  </button>\n  <div\n    #menu\n    role=\"menu\"\n    class=\"dropdown-menu clr-button-group-menu\"\n    [id]=\"popoverId\"\n    [attr.id]=\"popoverId\"\n    [attr.aria-hidden]=\"!open\"\n    *clrPopoverContent=\"open; at menuPosition; type: popoverType; outsideClickToClose: true; scrollToClose: true\"\n  >\n    @for (menuButton of menuButtons; track menuButton) {\n    <ng-template [ngTemplateOutlet]=\"menuButton.templateRef\"></ng-template>\n    }\n  </div>\n</div>\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CommonModule } from '@angular/common';\nimport { NgModule, Type } from '@angular/core';\nimport { ClrIcon } from '@clr/angular/icon';\nimport { ClrPopoverModuleNext } from '@clr/angular/popover/common';\n\nimport { ClrButton } from './button';\nimport { ClrButtonGroup } from './button-group';\n\nexport const CLR_BUTTON_GROUP_DIRECTIVES: Type<any>[] = [ClrButton, ClrButtonGroup];\n\n@NgModule({\n  imports: [CommonModule, ClrIcon, ClrPopoverModuleNext],\n  declarations: [CLR_BUTTON_GROUP_DIRECTIVES],\n  exports: [CLR_BUTTON_GROUP_DIRECTIVES],\n})\nexport class ClrButtonGroupModule {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { animate, keyframes, style, transition, trigger } from '@angular/animations';\nimport { Component, ElementRef, EventEmitter, Input, Output, Renderer2 } from '@angular/core';\nimport { ClrLoadingState, LoadingListener } from '@clr/angular/utils';\n\n// minimum width to fit loading spinner\nconst MIN_BUTTON_WIDTH = 42;\n\n@Component({\n  selector: 'button[clrLoading]',\n  template: `\n    <span @parent>\n      @switch (state) {\n        @case (buttonState.LOADING) {\n          <span @spinner class=\"spinner spinner-inline\"></span>\n        }\n        @case (buttonState.SUCCESS) {\n          <span\n            @validated\n            (@validated.done)=\"this.loadingStateChange(this.buttonState.DEFAULT)\"\n            class=\"spinner spinner-inline spinner-check\"\n          ></span>\n        }\n        @case (buttonState.DEFAULT) {\n          <span @defaultButton class=\"clr-loading-btn-content\">\n            <ng-content></ng-content>\n          </span>\n        }\n      }\n    </span>\n  `,\n  providers: [{ provide: LoadingListener, useExisting: ClrLoadingButton }],\n  animations: [\n    trigger('parent', [\n      // Skip :enter animation on first render.\n      // The button text/content should only be faded when transitioning to or from a non-default state.\n      transition(':enter', []),\n    ]),\n    trigger('defaultButton', [\n      transition(':enter', [style({ opacity: 0 }), animate('200ms 100ms ease-in', style({ opacity: 1 }))]),\n      // TODO: see if we can get leave animation to work before spinner's enter animation\n      transition(':leave', [style({ opacity: 0 })]),\n    ]),\n    trigger('spinner', [\n      transition(':enter', [style({ opacity: 0 }), animate('200ms 100ms ease-in', style({ opacity: 1 }))]),\n      transition(':leave', [style({ opacity: 1 }), animate('100ms ease-out', style({ opacity: 0 }))]),\n    ]),\n    trigger('validated', [\n      transition(':enter', [\n        animate(\n          '600ms',\n          keyframes([\n            style({ transform: 'scale(0,0)', offset: 0 }),\n            style({ opacity: 1, offset: 0.2 }),\n            style({ transform: 'scale(1.2,1.2)', offset: 0.4 }),\n            style({ transform: 'scale(.9,.9)', offset: 0.6 }),\n            style({ transform: 'scale(1,1)', offset: 1 }),\n          ])\n        ),\n      ]),\n      transition(':leave', [style({ opacity: 1 }), animate('100ms ease-out', style({ opacity: 0 }))]),\n    ]),\n  ],\n  host: { '[attr.disabled]': \"disabled? '' : null\" },\n  standalone: false,\n})\nexport class ClrLoadingButton implements LoadingListener {\n  @Input('disabled') disabled: boolean;\n\n  @Output('clrLoadingChange') clrLoadingChange = new EventEmitter<ClrLoadingState>(false);\n\n  buttonState = ClrLoadingState;\n  state: ClrLoadingState = ClrLoadingState.DEFAULT;\n\n  constructor(\n    public el: ElementRef<HTMLButtonElement>,\n    private renderer: Renderer2\n  ) {}\n\n  loadingStateChange(state: ClrLoadingState): void {\n    if (state === this.state) {\n      return;\n    }\n    this.state = state;\n\n    switch (state) {\n      case ClrLoadingState.DEFAULT:\n        this.renderer.removeStyle(this.el.nativeElement, 'width');\n        this.renderer.removeStyle(this.el.nativeElement, 'transform'); // for chromium render bug see issue https://github.com/vmware/clarity/issues/2700\n        if (!this.disabled) {\n          this.renderer.removeAttribute(this.el.nativeElement, 'disabled');\n        }\n        break;\n      case ClrLoadingState.LOADING:\n        this.setExplicitButtonWidth();\n        this.renderer.setStyle(this.el.nativeElement, 'transform', 'translatez(0)'); // for chromium render bug see issue https://github.com/vmware/clarity/issues/2700\n        this.renderer.setAttribute(this.el.nativeElement, 'disabled', '');\n        break;\n      case ClrLoadingState.SUCCESS:\n        this.setExplicitButtonWidth();\n        break;\n      case ClrLoadingState.ERROR:\n        this.loadingStateChange(ClrLoadingState.DEFAULT);\n        break;\n      default:\n        break;\n    }\n    this.clrLoadingChange.emit(state);\n  }\n\n  private setExplicitButtonWidth() {\n    if (this.el.nativeElement && this.el.nativeElement.getBoundingClientRect) {\n      const boundingClientRect = this.el.nativeElement.getBoundingClientRect();\n      const width = Math.max(MIN_BUTTON_WIDTH, boundingClientRect.width);\n      this.renderer.setStyle(this.el.nativeElement, 'width', `${width}px`);\n    }\n  }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CommonModule } from '@angular/common';\nimport { NgModule, Type } from '@angular/core';\n\nimport { ClrLoadingButton } from './loading-button';\n\nexport const CLR_LOADING_BUTTON_DIRECTIVES: Type<any>[] = [ClrLoadingButton];\n\n@NgModule({\n  imports: [CommonModule],\n  declarations: [CLR_LOADING_BUTTON_DIRECTIVES],\n  exports: [CLR_LOADING_BUTTON_DIRECTIVES],\n})\nexport class ClrLoadingButtonModule {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { NgModule } from '@angular/core';\nimport { ClarityIcons, ellipsisHorizontalIcon } from '@clr/angular/icon';\n\nimport { ClrButtonGroupModule } from './button-group/button-group.module';\nimport { ClrLoadingButtonModule } from './button-loading/loading-button.module';\n\n@NgModule({\n  exports: [ClrLoadingButtonModule, ClrButtonGroupModule],\n})\nexport class ClrButtonModule {\n  constructor() {\n    ClarityIcons.addIcons(ellipsisHorizontalIcon);\n  }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nexport * from './button';\nexport * from './button-group';\nexport * from './button-group.module';\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nexport * from './loading-button';\nexport * from './loading-button.module';\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nexport * from './button.module';\nexport * from './button-group/index';\nexport * from './button-loading/index';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.ButtonInGroupService","i1","i1.ButtonInGroupService","i4.ButtonGroupFocusHandler"],"mappings":"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"}