{"version":3,"file":"acorex-components-switch.mjs","sources":["../../../../packages/components/switch/src/lib/switch-content.component.ts","../../../../packages/components/switch/src/lib/switch.component.ts","../../../../packages/components/switch/src/lib/switch.component.html","../../../../packages/components/switch/src/lib/switch.module.ts","../../../../packages/components/switch/src/acorex-components-switch.ts"],"sourcesContent":["import { AXComponent, MXBaseComponent } from '@acorex/cdk/common';\nimport { Component } from '@angular/core';\n\n/**\n * @category\n * Displays content for different switch states using `<ng-content>`.\n */\n@Component({\n  selector:\n    'ax-switch-handler-content,ax-switch-handler-on-content,ax-switch-handler-off-content,ax-switch-off-content,ax-switch-on-content',\n  template: `<ng-content></ng-content>`,\n\n  providers: [{ provide: AXComponent, useExisting: AXSwitchContentComponent }],\n})\nexport class AXSwitchContentComponent extends MXBaseComponent {}\n","import { AXComponent, MXColorComponent, MXValueComponent } from '@acorex/cdk/common';\nimport { Component, HostBinding, Input, ViewEncapsulation, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { classes } from 'polytype';\n\n/**\n * @category\n * A switch component that allows toggling between on and off states.\n */\n@Component({\n  selector: 'ax-switch',\n  templateUrl: './switch.component.html',\n  styleUrls: ['./switch.component.css'],\n  inputs: ['disabled', 'readonly', 'color', 'tabIndex', 'value', 'name'],\n  outputs: ['onBlur', 'onFocus', 'valueChange', 'onValueChanged', 'readonlyChange', 'disabledChange'],\n  encapsulation: ViewEncapsulation.None,\n\n  providers: [\n    {\n      provide: NG_VALUE_ACCESSOR,\n      useExisting: forwardRef(() => AXSwitchComponent),\n      multi: true,\n    },\n    { provide: AXComponent, useExisting: AXSwitchComponent },\n  ],\n})\nexport class AXSwitchComponent extends classes(MXValueComponent<boolean>, MXColorComponent) {\n  /**\n   * Indicates whether the component is in a loading state.\n   */\n  @Input()\n  isLoading: boolean;\n\n  /**\n   * @ignore\n   */\n  protected _handleOnClickEvent(e: MouseEvent) {\n    this.onTouchedCallback();\n    if (this.readonly || this.disabled) {\n      e.preventDefault();\n      e.stopPropagation();\n    } else {\n      this.commitValue(!this.value, true);\n    }\n  }\n\n  /**\n   * @ignore\n   */\n  @HostBinding('class')\n  private get __hostClass(): string {\n    if (this.color === 'ax-default') {\n      return 'ax-primary';\n    } else {\n      return `${this.color ? this.color : 'ax-primary'}`;\n    }\n  }\n}\n","<button\n  type=\"button\"\n  role=\"switch\"\n  [class.ax-state-disabled]=\"disabled\"\n  [class.ax-state-readonly]=\"readonly\"\n  (focus)=\"emitOnFocusEvent($event)\"\n  (blur)=\"emitOnBlurEvent($event)\"\n  [class.ax-switch-checked]=\"value\"\n  (click)=\"_handleOnClickEvent($event)\"\n>\n  <div class=\"ax-switch-handle\">\n    @if (isLoading) {\n      <span class=\"ax-loader\"></span>\n    }\n    @if (!isLoading) {\n      <ng-content select=\"ax-switch-handler-content\"></ng-content>\n    }\n    @if (!isLoading && value) {\n      <ng-content select=\"ax-switch-handler-on-content\"></ng-content>\n    }\n    @if (!isLoading && !value) {\n      <ng-content select=\"ax-switch-handler-off-content\"></ng-content>\n    }\n  </div>\n  @if (!value) {\n    <ng-content select=\"ax-switch-off-content\"></ng-content>\n  }\n  @if (value) {\n    <ng-content select=\"ax-switch-on-content\"></ng-content>\n  }\n</button>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXSwitchContentComponent } from './switch-content.component';\nimport { AXSwitchComponent } from './switch.component';\n\n@NgModule({\n  imports: [CommonModule, FormsModule, AXSwitchComponent, AXSwitchContentComponent],\n  exports: [AXSwitchComponent, AXSwitchContentComponent],\n  providers: [],\n})\nexport class AXSwitchModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}