123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302 |
- import { FocusOrigin } from '@angular/cdk/a11y';
- import * as i0 from '@angular/core';
- import { InjectionToken, AfterContentInit, OnDestroy, EventEmitter, QueryList, OnInit, AfterViewInit, DoCheck, ElementRef } from '@angular/core';
- import { ControlValueAccessor } from '@angular/forms';
- import { T as ThemePalette } from '../palette.d-BSSFKjO6.js';
- import { M as MatCommonModule } from '../common-module.d-C8xzHJDr.js';
- import { M as MatRippleModule } from '../index.d-DG9eDM2-.js';
- import '@angular/cdk/bidi';
- import '../ripple.d-BxTUZJt7.js';
- import '@angular/cdk/platform';
- /** Change event object emitted by radio button and radio group. */
- declare class MatRadioChange<T = any> {
- /** The radio button that emits the change event. */
- source: MatRadioButton;
- /** The value of the radio button. */
- value: T;
- constructor(
- /** The radio button that emits the change event. */
- source: MatRadioButton,
- /** The value of the radio button. */
- value: T);
- }
- /**
- * Provider Expression that allows mat-radio-group to register as a ControlValueAccessor. This
- * allows it to support [(ngModel)] and ngControl.
- * @docs-private
- */
- declare const MAT_RADIO_GROUP_CONTROL_VALUE_ACCESSOR: any;
- /**
- * Injection token that can be used to inject instances of `MatRadioGroup`. It serves as
- * alternative token to the actual `MatRadioGroup` class which could cause unnecessary
- * retention of the class and its component metadata.
- */
- declare const MAT_RADIO_GROUP: InjectionToken<MatRadioGroup>;
- interface MatRadioDefaultOptions {
- /**
- * Theme color of the radio button. This API is supported in M2 themes only, it
- * has no effect in M3 themes. For color customization in M3, see https://material.angular.dev/components/radio/styling.
- *
- * For information on applying color variants in M3, see
- * https://material.angular.dev/guide/material-2-theming#optional-add-backwards-compatibility-styles-for-color-variants
- */
- color: ThemePalette;
- /** Whether disabled radio buttons should be interactive. */
- disabledInteractive?: boolean;
- }
- declare const MAT_RADIO_DEFAULT_OPTIONS: InjectionToken<MatRadioDefaultOptions>;
- /**
- * @docs-private
- * @deprecated No longer used, will be removed.
- * @breaking-change 21.0.0
- */
- declare function MAT_RADIO_DEFAULT_OPTIONS_FACTORY(): MatRadioDefaultOptions;
- /**
- * A group of radio buttons. May contain one or more `<mat-radio-button>` elements.
- */
- declare class MatRadioGroup implements AfterContentInit, OnDestroy, ControlValueAccessor {
- private _changeDetector;
- /** Selected value for the radio group. */
- private _value;
- /** The HTML name attribute applied to radio buttons in this group. */
- private _name;
- /** The currently selected radio button. Should match value. */
- private _selected;
- /** Whether the `value` has been set to its initial value. */
- private _isInitialized;
- /** Whether the labels should appear after or before the radio-buttons. Defaults to 'after' */
- private _labelPosition;
- /** Whether the radio group is disabled. */
- private _disabled;
- /** Whether the radio group is required. */
- private _required;
- /** Subscription to changes in amount of radio buttons. */
- private _buttonChanges;
- /** The method to be called in order to update ngModel */
- _controlValueAccessorChangeFn: (value: any) => void;
- /**
- * onTouch function registered via registerOnTouch (ControlValueAccessor).
- * @docs-private
- */
- onTouched: () => any;
- /**
- * Event emitted when the group value changes.
- * Change events are only emitted when the value changes due to user interaction with
- * a radio button (the same behavior as `<input type-"radio">`).
- */
- readonly change: EventEmitter<MatRadioChange>;
- /** Child radio buttons. */
- _radios: QueryList<MatRadioButton>;
- /**
- * Theme color of the radio buttons in the group. This API is supported in M2
- * themes only, it has no effect in M3 themes. For color customization in M3, see https://material.angular.dev/components/radio/styling.
- *
- * For information on applying color variants in M3, see
- * https://material.angular.dev/guide/material-2-theming#optional-add-backwards-compatibility-styles-for-color-variants
- */
- color: ThemePalette;
- /** Name of the radio button group. All radio buttons inside this group will use this name. */
- get name(): string;
- set name(value: string);
- /** Whether the labels should appear after or before the radio-buttons. Defaults to 'after' */
- get labelPosition(): 'before' | 'after';
- set labelPosition(v: "before" | "after");
- /**
- * Value for the radio-group. Should equal the value of the selected radio button if there is
- * a corresponding radio button with a matching value. If there is not such a corresponding
- * radio button, this value persists to be applied in case a new radio button is added with a
- * matching value.
- */
- get value(): any;
- set value(newValue: any);
- _checkSelectedRadioButton(): void;
- /**
- * The currently selected radio button. If set to a new radio button, the radio group value
- * will be updated to match the new selected button.
- */
- get selected(): MatRadioButton | null;
- set selected(selected: MatRadioButton | null);
- /** Whether the radio group is disabled */
- get disabled(): boolean;
- set disabled(value: boolean);
- /** Whether the radio group is required */
- get required(): boolean;
- set required(value: boolean);
- /** Whether buttons in the group should be interactive while they're disabled. */
- get disabledInteractive(): boolean;
- set disabledInteractive(value: boolean);
- private _disabledInteractive;
- constructor(...args: unknown[]);
- /**
- * Initialize properties once content children are available.
- * This allows us to propagate relevant attributes to associated buttons.
- */
- ngAfterContentInit(): void;
- ngOnDestroy(): void;
- /**
- * Mark this group as being "touched" (for ngModel). Meant to be called by the contained
- * radio buttons upon their blur.
- */
- _touch(): void;
- private _updateRadioButtonNames;
- /** Updates the `selected` radio button from the internal _value state. */
- private _updateSelectedRadioFromValue;
- /** Dispatch change event with current selection and group value. */
- _emitChangeEvent(): void;
- _markRadiosForCheck(): void;
- /**
- * Sets the model value. Implemented as part of ControlValueAccessor.
- * @param value
- */
- writeValue(value: any): void;
- /**
- * Registers a callback to be triggered when the model value changes.
- * Implemented as part of ControlValueAccessor.
- * @param fn Callback to be registered.
- */
- registerOnChange(fn: (value: any) => void): void;
- /**
- * Registers a callback to be triggered when the control is touched.
- * Implemented as part of ControlValueAccessor.
- * @param fn Callback to be registered.
- */
- registerOnTouched(fn: any): void;
- /**
- * Sets the disabled state of the control. Implemented as a part of ControlValueAccessor.
- * @param isDisabled Whether the control should be disabled.
- */
- setDisabledState(isDisabled: boolean): void;
- static ɵfac: i0.ɵɵFactoryDeclaration<MatRadioGroup, never>;
- static ɵdir: i0.ɵɵDirectiveDeclaration<MatRadioGroup, "mat-radio-group", ["matRadioGroup"], { "color": { "alias": "color"; "required": false; }; "name": { "alias": "name"; "required": false; }; "labelPosition": { "alias": "labelPosition"; "required": false; }; "value": { "alias": "value"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "required": { "alias": "required"; "required": false; }; "disabledInteractive": { "alias": "disabledInteractive"; "required": false; }; }, { "change": "change"; }, ["_radios"], never, true, never>;
- static ngAcceptInputType_disabled: unknown;
- static ngAcceptInputType_required: unknown;
- static ngAcceptInputType_disabledInteractive: unknown;
- }
- declare class MatRadioButton implements OnInit, AfterViewInit, DoCheck, OnDestroy {
- protected _elementRef: ElementRef<any>;
- private _changeDetector;
- private _focusMonitor;
- private _radioDispatcher;
- private _defaultOptions;
- private _ngZone;
- private _renderer;
- private _uniqueId;
- private _cleanupClick;
- /** The unique ID for the radio button. */
- id: string;
- /** Analog to HTML 'name' attribute used to group radios for unique selection. */
- name: string;
- /** Used to set the 'aria-label' attribute on the underlying input element. */
- ariaLabel: string;
- /** The 'aria-labelledby' attribute takes precedence as the element's text alternative. */
- ariaLabelledby: string;
- /** The 'aria-describedby' attribute is read after the element's label and field type. */
- ariaDescribedby: string;
- /** Whether ripples are disabled inside the radio button */
- disableRipple: boolean;
- /** Tabindex of the radio button. */
- tabIndex: number;
- /** Whether this radio button is checked. */
- get checked(): boolean;
- set checked(value: boolean);
- /** The value of this radio button. */
- get value(): any;
- set value(value: any);
- /** Whether the label should appear after or before the radio button. Defaults to 'after' */
- get labelPosition(): 'before' | 'after';
- set labelPosition(value: "before" | "after");
- private _labelPosition;
- /** Whether the radio button is disabled. */
- get disabled(): boolean;
- set disabled(value: boolean);
- /** Whether the radio button is required. */
- get required(): boolean;
- set required(value: boolean);
- /**
- * Theme color of the radio button. This API is supported in M2 themes only, it
- * has no effect in M3 themes. For color customization in M3, see https://material.angular.dev/components/radio/styling.
- *
- * For information on applying color variants in M3, see
- * https://material.angular.dev/guide/material-2-theming#optional-add-backwards-compatibility-styles-for-color-variants
- */
- get color(): ThemePalette;
- set color(newValue: ThemePalette);
- private _color;
- /** Whether the radio button should remain interactive when it is disabled. */
- get disabledInteractive(): boolean;
- set disabledInteractive(value: boolean);
- private _disabledInteractive;
- /**
- * Event emitted when the checked state of this radio button changes.
- * Change events are only emitted when the value changes due to user interaction with
- * the radio button (the same behavior as `<input type-"radio">`).
- */
- readonly change: EventEmitter<MatRadioChange>;
- /** The parent radio group. May or may not be present. */
- radioGroup: MatRadioGroup;
- /** ID of the native input element inside `<mat-radio-button>` */
- get inputId(): string;
- /** Whether this radio is checked. */
- private _checked;
- /** Whether this radio is disabled. */
- private _disabled;
- /** Whether this radio is required. */
- private _required;
- /** Value assigned to this radio. */
- private _value;
- /** Unregister function for _radioDispatcher */
- private _removeUniqueSelectionListener;
- /** Previous value of the input's tabindex. */
- private _previousTabIndex;
- /** The native `<input type=radio>` element */
- _inputElement: ElementRef<HTMLInputElement>;
- /** Trigger elements for the ripple events. */
- _rippleTrigger: ElementRef<HTMLElement>;
- /** Whether animations are disabled. */
- _noopAnimations: boolean;
- private _injector;
- constructor(...args: unknown[]);
- /** Focuses the radio button. */
- focus(options?: FocusOptions, origin?: FocusOrigin): void;
- /**
- * Marks the radio button as needing checking for change detection.
- * This method is exposed because the parent radio group will directly
- * update bound properties of the radio button.
- */
- _markForCheck(): void;
- ngOnInit(): void;
- ngDoCheck(): void;
- ngAfterViewInit(): void;
- ngOnDestroy(): void;
- /** Dispatch change event with current value. */
- private _emitChangeEvent;
- _isRippleDisabled(): boolean;
- /** Triggered when the radio button receives an interaction from the user. */
- _onInputInteraction(event: Event): void;
- /** Triggered when the user clicks on the touch target. */
- _onTouchTargetClick(event: Event): void;
- /** Sets the disabled state and marks for check if a change occurred. */
- protected _setDisabled(value: boolean): void;
- /** Called when the input is clicked. */
- private _onInputClick;
- /** Gets the tabindex for the underlying input element. */
- private _updateTabIndex;
- static ɵfac: i0.ɵɵFactoryDeclaration<MatRadioButton, never>;
- static ɵcmp: i0.ɵɵComponentDeclaration<MatRadioButton, "mat-radio-button", ["matRadioButton"], { "id": { "alias": "id"; "required": false; }; "name": { "alias": "name"; "required": false; }; "ariaLabel": { "alias": "aria-label"; "required": false; }; "ariaLabelledby": { "alias": "aria-labelledby"; "required": false; }; "ariaDescribedby": { "alias": "aria-describedby"; "required": false; }; "disableRipple": { "alias": "disableRipple"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "checked": { "alias": "checked"; "required": false; }; "value": { "alias": "value"; "required": false; }; "labelPosition": { "alias": "labelPosition"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "required": { "alias": "required"; "required": false; }; "color": { "alias": "color"; "required": false; }; "disabledInteractive": { "alias": "disabledInteractive"; "required": false; }; }, { "change": "change"; }, never, ["*"], true, never>;
- static ngAcceptInputType_disableRipple: unknown;
- static ngAcceptInputType_tabIndex: unknown;
- static ngAcceptInputType_checked: unknown;
- static ngAcceptInputType_disabled: unknown;
- static ngAcceptInputType_required: unknown;
- static ngAcceptInputType_disabledInteractive: unknown;
- }
- declare class MatRadioModule {
- static ɵfac: i0.ɵɵFactoryDeclaration<MatRadioModule, never>;
- static ɵmod: i0.ɵɵNgModuleDeclaration<MatRadioModule, never, [typeof MatCommonModule, typeof MatRippleModule, typeof MatRadioGroup, typeof MatRadioButton], [typeof MatCommonModule, typeof MatRadioGroup, typeof MatRadioButton]>;
- static ɵinj: i0.ɵɵInjectorDeclaration<MatRadioModule>;
- }
- export { MAT_RADIO_DEFAULT_OPTIONS, MAT_RADIO_DEFAULT_OPTIONS_FACTORY, MAT_RADIO_GROUP, MAT_RADIO_GROUP_CONTROL_VALUE_ACCESSOR, MatRadioButton, MatRadioChange, MatRadioGroup, MatRadioModule };
- export type { MatRadioDefaultOptions };
|