{"version":3,"file":"daffodil-design-radio.mjs","sources":["../../../libs/design/radio/src/radio-set/radio-set.component.ts","../../../libs/design/radio/src/radio-set/radio-set.component.html","../../../libs/design/radio/src/radio/radio.component.ts","../../../libs/design/radio/src/radio/radio.component.html","../../../libs/design/radio/src/registry/radio-registry.ts","../../../libs/design/radio/src/cva/radio-cva.directive.ts","../../../libs/design/radio/src/radio.module.ts","../../../libs/design/radio/src/radio.ts","../../../libs/design/radio/src/daffodil-design-radio.ts"],"sourcesContent":["import {\n  Component,\n  Input,\n  ChangeDetectionStrategy,\n} from '@angular/core';\n\n@Component({\n  selector: 'daff-radio-set',\n  templateUrl: './radio-set.component.html',\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  host: {\n    role: 'radiogroup',\n  },\n})\n\nexport class DaffRadioSetComponent {\n\n  @Input() name: string;\n\n  constructor() { }\n\n}\n","<ng-content></ng-content>","import {\n  Component,\n  OnInit,\n  Input,\n  ChangeDetectionStrategy,\n  Optional,\n  Output,\n  EventEmitter,\n} from '@angular/core';\n\nimport { DaffRadioSetComponent } from '../radio-set/radio-set.component';\n\nlet radioUniqueId = 0;\n\n@Component({\n  selector: 'daff-radio',\n  templateUrl: './radio.component.html',\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  host: {\n    role: 'radio',\n    '[class.focused]': 'focused',\n    '[class.disabled]': 'disabled',\n  },\n})\n\nexport class DaffRadioComponent implements OnInit {\n\n  /**\n   * @docs-private\n   */\n  _checked = false;\n  /**\n   * Output event of selection being changed\n   */\n  @Output() selectionChange: EventEmitter<boolean> = new EventEmitter();\n\n\n  /**\n   * The checked property of the radio\n   */\n  @Input()\n  get checked() {\n    return this._checked;\n  }\n  set checked(value: boolean) {\n    if (this._checked !== value) {\n      this._checked = value;\n      this.selectionChange.emit(this.value);\n    }\n  }\n  /**\n   * The value of the radio\n   */\n  @Input() value: any;\n  /**\n   * The id of the radio. It is uniquely generated but can be overwritten by the user. Must be unique.\n   */\n  @Input() id: string = 'daff-radio-' + radioUniqueId;\n\n  /**\n   * Name of the Radio\n   */\n  @Input() name = '';\n\n  /**\n   * Used for aria-label. Default to name if user does not input a label.\n   */\n  // eslint-disable-next-line @angular-eslint/no-input-rename\n  @Input('aria-label') label: string = this.name;\n\n  /**\n   * Used for aria-labelledby.\n   */\n  // eslint-disable-next-line @angular-eslint/no-input-rename\n  @Input('aria-labelledby') labelledby: string;\n\n\n  disabled = false;\n  focused = false;\n\n  constructor(@Optional() private radioset: DaffRadioSetComponent) {\n    radioUniqueId++;\n  }\n\n  /**\n   * @docs-private\n   */\n  ngOnInit() {\n    this.name = this.radioset ? this.radioset.name : this.name;\n  }\n\n  /**\n   * updates Focus styling\n   */\n  onFocus() {\n    this.focused = true;\n  }\n  /**\n   * updates Blur styling\n   */\n  onBlur() {\n    this.focused = false;\n  }\n  /**\n   * toggles checked attribute on\n   */\n  select(): void {\n    this.checked = true;\n  }\n  /**\n   * toggles checked attribute off\n   */\n  deselect(): void {\n    this.checked = false;\n  }\n  onChange() {\n    this.select();\n  };\n}\n","<input type=\"radio\" \n[attr.checked]=\"checked ? '' : null\" \n[attr.id]=\"id\" \n[attr.name]=\"name\" \n[attr.aria-label]=\"label\"\n[attr.aria-labelledby]=\"labelledby\"\n[attr.value]=\"value\"\n[attr.disabled] = \"disabled ? '' : null\" \n(change)=\"onChange()\"\n(blur)=\"onBlur()\"\n(focus)=\"onFocus()\"/>\n<label [attr.for]=\"id\">\n  <ng-content></ng-content>\n</label>","import { Injectable } from '@angular/core';\nimport { NgControl } from '@angular/forms';\n\nimport { DaffRadioControlValueAccessorDirective } from '../cva/radio-cva.directive';\n\nexport interface ControlAccessorPair {\n  control: NgControl;\n  accessor: DaffRadioControlValueAccessorDirective;\n}\n\n@Injectable({ providedIn: 'root' })\nexport class DaffRadioRegistry {\n  private _accessors: ControlAccessorPair[] = [];\n\n  /**\n   * @description\n   * Adds a control to the internal registry.\n   */\n  add(control: NgControl, accessor: DaffRadioControlValueAccessorDirective) {\n    this._accessors.push({\n      control,\n      accessor,\n    });\n  }\n\n  /**\n   * @description\n   * Removes a control from the internal registry.\n   */\n  remove(accessor: DaffRadioControlValueAccessorDirective) {\n    for (let i = this._accessors.length - 1; i >= 0; --i) {\n      if (this._accessors[i].accessor === accessor) {\n        this._accessors.splice(i, 1);\n        return;\n      }\n    }\n  }\n\n  /**\n   * @description\n   * Selects a radio button.\n   */\n  select(accessor: DaffRadioControlValueAccessorDirective) {\n    this._accessors.forEach((c) => {\n      if (this._isSameGroup(c, accessor) && c.accessor !== accessor) {\n        c.accessor.fireDeselect();\n      }\n    });\n  }\n\n  private _isSameGroup(\n    controlPair: ControlAccessorPair,\n    accessor: DaffRadioControlValueAccessorDirective): boolean {\n    if (!controlPair.control.control) {\n      return false;\n    }\n    return controlPair.control.control.parent === accessor._control.control.parent\n      && controlPair.accessor.name === accessor.name;\n  }\n}\n","import {\n  Directive,\n  Input,\n  OnInit,\n  Self,\n  Optional,\n} from '@angular/core';\nimport {\n  NgControl,\n  ControlValueAccessor,\n} from '@angular/forms';\n\nimport { DaffRadioComponent } from '../radio/radio.component';\nimport { DaffRadioRegistry } from '../registry/radio-registry';\n\n/**\n * ControlValueAccessor functionality for the DaffRadio\n */\n@Directive({\n  // eslint-disable-next-line @angular-eslint/directive-selector\n  selector: 'daff-radio[ngModel], daff-radio[formControl], daff-radio[formControlName]',\n})\nexport class DaffRadioControlValueAccessorDirective implements OnInit, ControlValueAccessor {\n  _onChange: () => void;\n  _onTouched: () => void;\n\n  /**\n   * The value of the ControlValueAccessor\n   */\n  @Input() value: any;\n\n  /**\n   * The name of the ControlValueAccessor\n   */\n  @Input() name: string;\n\n  constructor(\n    @Optional() @Self() public _control: NgControl,\n    private _registry: DaffRadioRegistry,\n    private _radio: DaffRadioComponent,\n  ) {\n    if (this._control != null) {\n      this._control.valueAccessor = this;\n    }\n  }\n\n  /**\n   * @docs-private\n   */\n  ngOnInit(): void {\n    if (this._control) {\n      this.writeValue(this._control.value);\n      this._registry.add(this._control, this);\n    }\n\n    this._radio.selectionChange.subscribe(\n      value => value ? this._onChange() : null,\n    );\n  }\n  /**\n   *\n   * writeValue function from the CVA interface\n   */\n  writeValue(value: any): void {\n    // the this._onChange null check here is necessary because of an ongoing bug in angular forms\n    // where writeValue can be called before the component initializes: https://github.com/angular/angular/issues/29218\n    if (this.value === value && this._onChange) {\n      this._onChange();\n      this.fireSelect();\n    }\n  }\n\n  /**\n   * registerOnChange implemented from the CVA interface\n   */\n  registerOnChange(fn: any): void {\n    this._onChange = () => {\n      fn(this.value);\n      this._registry.select(this);\n    };\n  }\n\n  /**\n   * registerOnTouch implemented from the CVA interface\n   */\n  registerOnTouched(fn: any): void {\n    this._onTouched = fn;\n  }\n\n  /**\n   * sets the disabled state.\n   */\n  setDisabledState?(isDisabled: boolean): void {\n    this._radio.disabled = isDisabled;\n  }\n\n  /**\n    calls select function for the radio\n   */\n  fireSelect() {\n    this._radio.select();\n  }\n\n  /**\n    calls deselect function for the radio\n   */\n  fireDeselect() {\n    this._radio.deselect();\n  }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffRadioControlValueAccessorDirective } from './cva/radio-cva.directive';\nimport { DaffRadioComponent } from './radio/radio.component';\nimport { DaffRadioSetComponent } from './radio-set/radio-set.component';\n\n@NgModule({\n  imports: [\n    CommonModule,\n    DaffRadioComponent,\n    DaffRadioSetComponent,\n    DaffRadioControlValueAccessorDirective,\n  ],\n  exports: [\n    DaffRadioComponent,\n    DaffRadioSetComponent,\n    DaffRadioControlValueAccessorDirective,\n  ],\n})\nexport class DaffRadioModule { }\n","import { DaffRadioControlValueAccessorDirective } from './cva/radio-cva.directive';\nimport { DaffRadioComponent } from './radio/radio.component';\nimport { DaffRadioSetComponent } from './radio-set/radio-set.component';\n/**\n * @docs-private\n */\nexport const DAFF_RADIO_COMPONENTS = <const> [\n  DaffRadioComponent,\n  DaffRadioSetComponent,\n  DaffRadioControlValueAccessorDirective,\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.DaffRadioSetComponent","i2.DaffRadioRegistry","i3.DaffRadioComponent"],"mappings":"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"}