{"version":3,"file":"checkbox.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/checkbox/checkbox-config.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/checkbox/checkbox.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/checkbox/checkbox.html","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/checkbox/checkbox-module.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\nimport {InjectionToken} from '@angular/core';\nimport {ThemePalette} from '../core';\n\n/** Default `mat-checkbox` options that can be overridden. */\nexport interface MatCheckboxDefaultOptions {\n  /**\n   * Default theme color of the checkbox. This API is supported in M2 themes\n   * only, it has no effect in M3 themes. For color customization in M3, see https://material.angular.dev/components/checkbox/styling.\n   *\n   * For information on applying color variants in M3, see\n   * https://material.angular.dev/guide/material-2-theming#optional-add-backwards-compatibility-styles-for-color-variants\n   */\n  color?: ThemePalette;\n\n  /** Default checkbox click action for checkboxes. */\n  clickAction?: MatCheckboxClickAction;\n\n  /** Whether disabled checkboxes should be interactive. */\n  disabledInteractive?: boolean;\n}\n\nexport const checkboxDefaults: MatCheckboxDefaultOptions = {\n  color: 'accent',\n  clickAction: 'check-indeterminate',\n  disabledInteractive: false,\n};\n\n/** Injection token to be used to override the default options for `mat-checkbox`. */\nexport const MAT_CHECKBOX_DEFAULT_OPTIONS = new InjectionToken<MatCheckboxDefaultOptions>(\n  'mat-checkbox-default-options',\n  {\n    providedIn: 'root',\n    factory: () => checkboxDefaults,\n  },\n);\n\n/**\n * Checkbox click action when user click on input element.\n * noop: Do not toggle checked or indeterminate.\n * check: Only toggle checked status, ignore indeterminate.\n * check-indeterminate: Toggle checked status, set indeterminate to false. Default behavior.\n * undefined: Same as `check-indeterminate`.\n */\nexport type MatCheckboxClickAction = 'noop' | 'check' | 'check-indeterminate' | undefined;\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {_IdGenerator, FocusableOption} from '@angular/cdk/a11y';\nimport {\n  AfterViewInit,\n  ChangeDetectorRef,\n  Component,\n  ElementRef,\n  EventEmitter,\n  Input,\n  NgZone,\n  OnChanges,\n  Output,\n  SimpleChanges,\n  ViewChild,\n  ViewEncapsulation,\n  booleanAttribute,\n  forwardRef,\n  numberAttribute,\n  inject,\n  HostAttributeToken,\n  signal,\n} from '@angular/core';\nimport {\n  AbstractControl,\n  ControlValueAccessor,\n  NG_VALIDATORS,\n  NG_VALUE_ACCESSOR,\n  ValidationErrors,\n  Validator,\n} from '@angular/forms';\nimport {\n  MatRipple,\n  _MatInternalFormField,\n  _StructuralStylesLoader,\n  _animationsDisabled,\n} from '../core';\nimport {\n  checkboxDefaults,\n  MAT_CHECKBOX_DEFAULT_OPTIONS,\n  MatCheckboxDefaultOptions,\n} from './checkbox-config';\nimport {_CdkPrivateStyleLoader} from '@angular/cdk/private';\n\n/**\n * Represents the different states that require custom transitions between them.\n * @docs-private\n */\nexport enum TransitionCheckState {\n  /** The initial state of the component before any user interaction. */\n  Init,\n  /** The state representing the component when it's becoming checked. */\n  Checked,\n  /** The state representing the component when it's becoming unchecked. */\n  Unchecked,\n  /** The state representing the component when it's becoming indeterminate. */\n  Indeterminate,\n}\n\n/** Change event object emitted by checkbox. */\nexport class MatCheckboxChange {\n  /** The source checkbox of the event. */\n  source!: MatCheckbox;\n  /** The new `checked` value of the checkbox. */\n  checked!: boolean;\n}\n\n@Component({\n  selector: 'mat-checkbox',\n  templateUrl: 'checkbox.html',\n  styleUrl: 'checkbox.css',\n  host: {\n    'class': 'mat-mdc-checkbox',\n    '[attr.tabindex]': 'null',\n    '[attr.aria-label]': 'null',\n    '[attr.aria-labelledby]': 'null',\n    '[class._mat-animation-noopable]': '_animationsDisabled',\n    '[class.mdc-checkbox--disabled]': 'disabled',\n    '[id]': 'id',\n    // Add classes that users can use to more easily target disabled or checked checkboxes.\n    '[class.mat-mdc-checkbox-disabled]': 'disabled',\n    '[class.mat-mdc-checkbox-checked]': 'checked',\n    '[class.mat-mdc-checkbox-disabled-interactive]': 'disabledInteractive',\n    '[class]': 'color ? \"mat-\" + color : \"mat-accent\"',\n  },\n  providers: [\n    {\n      provide: NG_VALUE_ACCESSOR,\n      useExisting: forwardRef(() => MatCheckbox),\n      multi: true,\n    },\n    {\n      provide: NG_VALIDATORS,\n      useExisting: MatCheckbox,\n      multi: true,\n    },\n  ],\n  exportAs: 'matCheckbox',\n  encapsulation: ViewEncapsulation.None,\n  imports: [MatRipple, _MatInternalFormField],\n})\nexport class MatCheckbox\n  implements AfterViewInit, OnChanges, ControlValueAccessor, Validator, FocusableOption\n{\n  _elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n  private _changeDetectorRef = inject(ChangeDetectorRef);\n  private _ngZone = inject(NgZone);\n  protected _animationsDisabled = _animationsDisabled();\n  private _options = inject<MatCheckboxDefaultOptions>(MAT_CHECKBOX_DEFAULT_OPTIONS, {\n    optional: true,\n  });\n\n  /** Focuses the checkbox. */\n  focus() {\n    this._inputElement.nativeElement.focus();\n  }\n\n  /** Creates the change event that will be emitted by the checkbox. */\n  protected _createChangeEvent(isChecked: boolean) {\n    const event = new MatCheckboxChange();\n    event.source = this;\n    event.checked = isChecked;\n    return event;\n  }\n\n  /** Gets the element on which to add the animation CSS classes. */\n  protected _getAnimationTargetElement() {\n    return this._inputElement?.nativeElement;\n  }\n\n  /** CSS classes to add when transitioning between the different checkbox states. */\n  protected _animationClasses = {\n    uncheckedToChecked: 'mdc-checkbox--anim-unchecked-checked',\n    uncheckedToIndeterminate: 'mdc-checkbox--anim-unchecked-indeterminate',\n    checkedToUnchecked: 'mdc-checkbox--anim-checked-unchecked',\n    checkedToIndeterminate: 'mdc-checkbox--anim-checked-indeterminate',\n    indeterminateToChecked: 'mdc-checkbox--anim-indeterminate-checked',\n    indeterminateToUnchecked: 'mdc-checkbox--anim-indeterminate-unchecked',\n  };\n\n  /**\n   * Attached to the aria-label attribute of the host element. In most cases, aria-labelledby will\n   * take precedence so this may be omitted.\n   */\n  @Input('aria-label') ariaLabel: string = '';\n\n  /**\n   * Users can specify the `aria-labelledby` attribute which will be forwarded to the input element\n   */\n  @Input('aria-labelledby') ariaLabelledby: string | null = null;\n\n  /** The 'aria-describedby' attribute is read after the element's label and field type. */\n  @Input('aria-describedby') ariaDescribedby!: string;\n\n  /**\n   * Users can specify the `aria-expanded` attribute which will be forwarded to the input element\n   */\n  @Input({alias: 'aria-expanded', transform: booleanAttribute}) ariaExpanded!: boolean;\n\n  /**\n   * Users can specify the `aria-controls` attribute which will be forwarded to the input element\n   */\n  @Input('aria-controls') ariaControls!: string;\n\n  /** Users can specify the `aria-owns` attribute which will be forwarded to the input element */\n  @Input('aria-owns') ariaOwns!: string;\n\n  private _uniqueId: string;\n\n  /** A unique id for the checkbox input. If none is supplied, it will be auto-generated. */\n  @Input() id: string;\n\n  /** Returns the unique id for the visual hidden input. */\n  get inputId(): string {\n    return `${this.id || this._uniqueId}-input`;\n  }\n\n  /** Whether the checkbox is required. */\n  @Input({transform: booleanAttribute}) required: boolean = false;\n\n  /** Whether the label should appear after or before the checkbox. Defaults to 'after' */\n  @Input() labelPosition: 'before' | 'after' = 'after';\n\n  /** Name value will be applied to the input element if present */\n  @Input() name: string | null = null;\n\n  /** Event emitted when the checkbox's `checked` value changes. */\n  @Output() readonly change = new EventEmitter<MatCheckboxChange>();\n\n  /** Event emitted when the checkbox's `indeterminate` value changes. */\n  @Output() readonly indeterminateChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n  /** The value attribute of the native input element */\n  @Input() value!: string;\n\n  /** Whether the checkbox has a ripple. */\n  @Input({transform: booleanAttribute}) disableRipple: boolean = false;\n\n  /** The native `<input type=\"checkbox\">` element */\n  @ViewChild('input') _inputElement!: ElementRef<HTMLInputElement>;\n\n  /** Tabindex for the checkbox. */\n  @Input({transform: (value: unknown) => (value == null ? undefined : numberAttribute(value))})\n  tabIndex: number;\n\n  // TODO(crisbeto): this should be a ThemePalette, but some internal apps were abusing\n  // the lack of type checking previously and assigning random strings.\n  /**\n   * Theme color of the checkbox. This API is supported in M2 themes only, it\n   * has no effect in M3 themes. For color customization in M3, see https://material.angular.dev/components/checkbox/styling.\n   *\n   * For information on applying color variants in M3, see\n   * https://material.angular.dev/guide/material-2-theming#optional-add-backwards-compatibility-styles-for-color-variants\n   */\n  @Input() color: string | undefined;\n\n  /** Whether the checkbox should remain interactive when it is disabled. */\n  @Input({transform: booleanAttribute})\n  disabledInteractive: boolean;\n\n  /**\n   * Called when the checkbox is blurred. Needed to properly implement ControlValueAccessor.\n   * @docs-private\n   */\n  _onTouched: () => any = () => {};\n\n  private _currentAnimationClass: string = '';\n  private _currentCheckState: TransitionCheckState = TransitionCheckState.Init;\n  private _controlValueAccessorChangeFn: (value: any) => void = () => {};\n  private _validatorChangeFn = () => {};\n\n  constructor() {\n    inject(_CdkPrivateStyleLoader).load(_StructuralStylesLoader);\n    const tabIndex = inject(new HostAttributeToken('tabindex'), {optional: true});\n    this._options = this._options || checkboxDefaults;\n    this.color = this._options.color || checkboxDefaults.color;\n    this.tabIndex = tabIndex == null ? 0 : parseInt(tabIndex) || 0;\n    this.id = this._uniqueId = inject(_IdGenerator).getId('mat-mdc-checkbox-');\n    this.disabledInteractive = this._options?.disabledInteractive ?? false;\n  }\n\n  ngOnChanges(changes: SimpleChanges<this>) {\n    if (changes['required']) {\n      this._validatorChangeFn();\n    }\n  }\n\n  ngAfterViewInit() {\n    this._syncIndeterminate(this.indeterminate);\n  }\n\n  /** Whether the checkbox is checked. */\n  @Input({transform: booleanAttribute})\n  get checked(): boolean {\n    return this._checked;\n  }\n  set checked(value: boolean) {\n    if (value != this.checked) {\n      this._checked = value;\n      this._changeDetectorRef.markForCheck();\n    }\n  }\n  private _checked: boolean = false;\n\n  /** Whether the checkbox is disabled. */\n  @Input({transform: booleanAttribute})\n  get disabled(): boolean {\n    return this._disabled;\n  }\n  set disabled(value: boolean) {\n    if (value !== this.disabled) {\n      this._disabled = value;\n      this._changeDetectorRef.markForCheck();\n    }\n  }\n  private _disabled: boolean = false;\n\n  /**\n   * Whether the checkbox is indeterminate. This is also known as \"mixed\" mode and can be used to\n   * represent a checkbox with three states, e.g. a checkbox that represents a nested list of\n   * checkable items. Note that whenever checkbox is manually clicked, indeterminate is immediately\n   * set to false.\n   */\n  @Input({transform: booleanAttribute})\n  get indeterminate(): boolean {\n    return this._indeterminate();\n  }\n  set indeterminate(value: boolean) {\n    const changed = value != this._indeterminate();\n    this._indeterminate.set(value);\n\n    if (changed) {\n      if (value) {\n        this._transitionCheckState(TransitionCheckState.Indeterminate);\n      } else {\n        this._transitionCheckState(\n          this.checked ? TransitionCheckState.Checked : TransitionCheckState.Unchecked,\n        );\n      }\n      this.indeterminateChange.emit(value);\n    }\n\n    this._syncIndeterminate(value);\n  }\n  private _indeterminate = signal(false);\n\n  _isRippleDisabled() {\n    return this.disableRipple || this.disabled;\n  }\n\n  /** Method being called whenever the label text changes. */\n  _onLabelTextChange() {\n    // Since the event of the `cdkObserveContent` directive runs outside of the zone, the checkbox\n    // component will be only marked for check, but no actual change detection runs automatically.\n    // Instead of going back into the zone in order to trigger a change detection which causes\n    // *all* components to be checked (if explicitly marked or not using OnPush), we only trigger\n    // an explicit change detection for the checkbox view and its children.\n    this._changeDetectorRef.detectChanges();\n  }\n\n  // Implemented as part of ControlValueAccessor.\n  writeValue(value: any) {\n    this.checked = !!value;\n  }\n\n  // Implemented as part of ControlValueAccessor.\n  registerOnChange(fn: (value: any) => void) {\n    this._controlValueAccessorChangeFn = fn;\n  }\n\n  // Implemented as part of ControlValueAccessor.\n  registerOnTouched(fn: any) {\n    this._onTouched = fn;\n  }\n\n  // Implemented as part of ControlValueAccessor.\n  setDisabledState(isDisabled: boolean) {\n    this.disabled = isDisabled;\n  }\n\n  // Implemented as a part of Validator.\n  validate(control: AbstractControl<boolean>): ValidationErrors | null {\n    return this.required && control.value !== true ? {'required': true} : null;\n  }\n\n  // Implemented as a part of Validator.\n  registerOnValidatorChange(fn: () => void): void {\n    this._validatorChangeFn = fn;\n  }\n\n  private _transitionCheckState(newState: TransitionCheckState) {\n    let oldState = this._currentCheckState;\n    let element = this._getAnimationTargetElement();\n\n    if (oldState === newState || !element) {\n      return;\n    }\n    if (this._currentAnimationClass) {\n      element.classList.remove(this._currentAnimationClass);\n    }\n\n    this._currentAnimationClass = this._getAnimationClassForCheckStateTransition(\n      oldState,\n      newState,\n    );\n    this._currentCheckState = newState;\n\n    if (this._currentAnimationClass.length > 0) {\n      element.classList.add(this._currentAnimationClass);\n\n      // Remove the animation class to avoid animation when the checkbox is moved between containers\n      const animationClass = this._currentAnimationClass;\n\n      this._ngZone.runOutsideAngular(() => {\n        setTimeout(() => {\n          element!.classList.remove(animationClass);\n        }, 1000);\n      });\n    }\n  }\n\n  private _emitChangeEvent() {\n    this._controlValueAccessorChangeFn(this.checked);\n    this.change.emit(this._createChangeEvent(this.checked));\n\n    // Assigning the value again here is redundant, but we have to do it in case it was\n    // changed inside the `change` listener which will cause the input to be out of sync.\n    if (this._inputElement) {\n      this._inputElement.nativeElement.checked = this.checked;\n    }\n  }\n\n  /** Toggles the `checked` state of the checkbox. */\n  toggle(): void {\n    this.checked = !this.checked;\n    this._controlValueAccessorChangeFn(this.checked);\n  }\n\n  protected _handleInputClick() {\n    const clickAction = this._options?.clickAction;\n\n    // If resetIndeterminate is false, and the current state is indeterminate, do nothing on click\n    if (!this.disabled && clickAction !== 'noop') {\n      // When user manually click on the checkbox, `indeterminate` is set to false.\n      if (this.indeterminate && clickAction !== 'check') {\n        Promise.resolve().then(() => {\n          this._indeterminate.set(false);\n          this.indeterminateChange.emit(false);\n        });\n      }\n\n      this._checked = !this._checked;\n      this._transitionCheckState(\n        this._checked ? TransitionCheckState.Checked : TransitionCheckState.Unchecked,\n      );\n\n      // Emit our custom change event if the native input emitted one.\n      // It is important to only emit it, if the native input triggered one, because\n      // we don't want to trigger a change event, when the `checked` variable changes for example.\n      this._emitChangeEvent();\n    } else if (\n      (this.disabled && this.disabledInteractive) ||\n      (!this.disabled && clickAction === 'noop')\n    ) {\n      // Reset native input when clicked with noop. The native checkbox becomes checked after\n      // click, reset it to be align with `checked` value of `mat-checkbox`.\n      this._inputElement.nativeElement.checked = this.checked;\n      this._inputElement.nativeElement.indeterminate = this.indeterminate;\n    }\n  }\n\n  _onInteractionEvent(event: Event) {\n    // We always have to stop propagation on the change event.\n    // Otherwise the change event, from the input element, will bubble up and\n    // emit its event object to the `change` output.\n    event.stopPropagation();\n  }\n\n  _onBlur() {\n    // When a focused element becomes disabled, the browser *immediately* fires a blur event.\n    // Angular does not expect events to be raised during change detection, so any state change\n    // (such as a form control's 'ng-touched') will cause a changed-after-checked error.\n    // See https://github.com/angular/angular/issues/17793. To work around this, we defer\n    // telling the form control it has been touched until the next tick.\n    Promise.resolve().then(() => {\n      this._onTouched();\n      this._changeDetectorRef.markForCheck();\n    });\n  }\n\n  private _getAnimationClassForCheckStateTransition(\n    oldState: TransitionCheckState,\n    newState: TransitionCheckState,\n  ): string {\n    // Don't transition if animations are disabled.\n    if (this._animationsDisabled) {\n      return '';\n    }\n\n    switch (oldState) {\n      case TransitionCheckState.Init:\n        // Handle edge case where user interacts with checkbox that does not have [(ngModel)] or\n        // [checked] bound to it.\n        if (newState === TransitionCheckState.Checked) {\n          return this._animationClasses.uncheckedToChecked;\n        } else if (newState == TransitionCheckState.Indeterminate) {\n          return this._checked\n            ? this._animationClasses.checkedToIndeterminate\n            : this._animationClasses.uncheckedToIndeterminate;\n        }\n        break;\n      case TransitionCheckState.Unchecked:\n        return newState === TransitionCheckState.Checked\n          ? this._animationClasses.uncheckedToChecked\n          : this._animationClasses.uncheckedToIndeterminate;\n      case TransitionCheckState.Checked:\n        return newState === TransitionCheckState.Unchecked\n          ? this._animationClasses.checkedToUnchecked\n          : this._animationClasses.checkedToIndeterminate;\n      case TransitionCheckState.Indeterminate:\n        return newState === TransitionCheckState.Checked\n          ? this._animationClasses.indeterminateToChecked\n          : this._animationClasses.indeterminateToUnchecked;\n    }\n\n    return '';\n  }\n\n  /**\n   * Syncs the indeterminate value with the checkbox DOM node.\n   *\n   * We sync `indeterminate` directly on the DOM node, because in Ivy the check for whether a\n   * property is supported on an element boils down to `if (propName in element)`. Domino's\n   * HTMLInputElement doesn't have an `indeterminate` property so Ivy will warn during\n   * server-side rendering.\n   */\n  private _syncIndeterminate(value: boolean) {\n    const nativeCheckbox = this._inputElement;\n\n    if (nativeCheckbox) {\n      nativeCheckbox.nativeElement.indeterminate = value;\n    }\n  }\n\n  _onInputClick() {\n    this._handleInputClick();\n  }\n\n  /**\n   *  Prevent click events that come from the `<label/>` element from bubbling. This prevents the\n   *  click handler on the host from triggering twice when clicking on the `<label/>` element. After\n   *  the click event on the `<label/>` propagates, the browsers dispatches click on the associated\n   *  `<input/>`. By preventing clicks on the label by bubbling, we ensure only one click event\n   *  bubbles when the label is clicked.\n   */\n  _preventBubblingFromLabel(event: MouseEvent) {\n    if (event.target && this._inputElement && event.target !== this._inputElement.nativeElement) {\n      event.stopPropagation();\n    }\n  }\n}\n","<label\n  mat-internal-form-field\n  [labelPosition]=\"labelPosition\"\n  [for]=\"inputId\"\n  (click)=\"_preventBubblingFromLabel($event)\">\n  <span #checkbox class=\"mdc-checkbox\">\n    <!-- Render this element first so the input is on top. -->\n    <span class=\"mat-mdc-checkbox-touch-target\" aria-hidden=\"true\"></span>\n    <input #input\n           type=\"checkbox\"\n           class=\"mdc-checkbox__native-control\"\n           [class.mdc-checkbox--selected]=\"checked\"\n           [attr.aria-label]=\"ariaLabel || null\"\n           [attr.aria-labelledby]=\"ariaLabelledby\"\n           [attr.aria-describedby]=\"ariaDescribedby\"\n           [attr.aria-checked]=\"indeterminate ? 'mixed' : null\"\n           [attr.aria-controls]=\"ariaControls\"\n           [attr.aria-disabled]=\"disabled && disabledInteractive ? true : null\"\n           [attr.aria-expanded]=\"ariaExpanded\"\n           [attr.aria-owns]=\"ariaOwns\"\n           [attr.name]=\"name\"\n           [attr.value]=\"value\"\n           [checked]=\"checked\"\n           [indeterminate]=\"indeterminate\"\n           [disabled]=\"disabled && !disabledInteractive\"\n           [id]=\"inputId\"\n           [required]=\"required\"\n           [tabIndex]=\"disabled && !disabledInteractive ? -1 : tabIndex\"\n           (blur)=\"_onBlur()\"\n           (click)=\"_onInputClick()\"\n           (change)=\"_onInteractionEvent($event)\"/>\n    <span class=\"mdc-checkbox__ripple\" aria-hidden=\"true\"></span>\n    <span class=\"mdc-checkbox__background\" aria-hidden=\"true\">\n      <svg class=\"mdc-checkbox__checkmark\"\n           focusable=\"false\"\n           viewBox=\"0 0 24 24\">\n        <path class=\"mdc-checkbox__checkmark-path\"\n              fill=\"none\"\n              d=\"M1.73,12.91 8.1,19.28 22.79,4.59\"/>\n      </svg>\n      <span class=\"mdc-checkbox__mixedmark\"></span>\n    </span>\n    <span class=\"mat-mdc-checkbox-ripple mat-focus-indicator\"\n      mat-ripple\n      aria-hidden=\"true\"\n      [matRippleTrigger]=\"checkbox\"\n      [matRippleDisabled]=\"disableRipple || disabled\"\n      [matRippleCentered]=\"true\"></span>\n  </span>\n\n  <span #label class=\"mat-internal-form-field-label mdc-label\">\n    <ng-content></ng-content>\n  </span>\n</label>\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {BidiModule} from '@angular/cdk/bidi';\nimport {NgModule} from '@angular/core';\nimport {MatCheckbox} from './checkbox';\n\n@NgModule({\n  imports: [MatCheckbox],\n  exports: [MatCheckbox, BidiModule],\n})\nexport class MatCheckboxModule {}\n"],"names":[],"mappings":"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"}