UNPKG

9.81 kBTypeScriptView Raw
1import { _AbstractConstructor } from '@angular/material/core';
2import { AfterContentInit } from '@angular/core';
3import { BooleanInput } from '@angular/cdk/coercion';
4import { CanColor } from '@angular/material/core';
5import { CanDisable } from '@angular/material/core';
6import { CanDisableRipple } from '@angular/material/core';
7import { ChangeDetectorRef } from '@angular/core';
8import { CheckboxRequiredValidator } from '@angular/forms';
9import { _Constructor } from '@angular/material/core';
10import { ControlValueAccessor } from '@angular/forms';
11import { ElementRef } from '@angular/core';
12import { EventEmitter } from '@angular/core';
13import { FocusMonitor } from '@angular/cdk/a11y';
14import { FocusOrigin } from '@angular/cdk/a11y';
15import { HasTabIndex } from '@angular/material/core';
16import * as i0 from '@angular/core';
17import * as i3 from '@angular/material/core';
18import * as i4 from '@angular/cdk/observers';
19import { InjectionToken } from '@angular/core';
20import { OnDestroy } from '@angular/core';
21import { Provider } from '@angular/core';
22import { ThemePalette } from '@angular/material/core';
23import { Type } from '@angular/core';
24
25declare namespace i1 {
26 export {
27 MAT_SLIDE_TOGGLE_REQUIRED_VALIDATOR,
28 MatSlideToggleRequiredValidator
29 }
30}
31
32declare namespace i2 {
33 export {
34 MAT_SLIDE_TOGGLE_VALUE_ACCESSOR,
35 MatSlideToggleChange,
36 _MatSlideToggleBase,
37 MatSlideToggle
38 }
39}
40
41/** Injection token to be used to override the default options for `mat-slide-toggle`. */
42export declare const MAT_SLIDE_TOGGLE_DEFAULT_OPTIONS: InjectionToken<MatSlideToggleDefaultOptions>;
43
44export declare const MAT_SLIDE_TOGGLE_REQUIRED_VALIDATOR: Provider;
45
46/** @docs-private */
47export declare const MAT_SLIDE_TOGGLE_VALUE_ACCESSOR: {
48 provide: InjectionToken<readonly ControlValueAccessor[]>;
49 useExisting: Type<any>;
50 multi: boolean;
51};
52
53/** Represents a slidable "switch" toggle that can be moved between on and off. */
54export declare class MatSlideToggle extends _MatSlideToggleBase<MatSlideToggleChange> {
55 /** Reference to the underlying input element. */
56 _inputElement: ElementRef<HTMLInputElement>;
57 constructor(elementRef: ElementRef, focusMonitor: FocusMonitor, changeDetectorRef: ChangeDetectorRef, tabIndex: string, defaults: MatSlideToggleDefaultOptions, animationMode?: string);
58 protected _createChangeEvent(isChecked: boolean): MatSlideToggleChange;
59 /** Method being called whenever the underlying input emits a change event. */
60 _onChangeEvent(event: Event): void;
61 /** Method being called whenever the slide-toggle has been clicked. */
62 _onInputClick(event: Event): void;
63 /** Focuses the slide-toggle. */
64 focus(options?: FocusOptions, origin?: FocusOrigin): void;
65 /** Method being called whenever the label text changes. */
66 _onLabelTextChange(): void;
67 static ɵfac: i0.ɵɵFactoryDeclaration<MatSlideToggle, [null, null, null, { attribute: "tabindex"; }, null, { optional: true; }]>;
68 static ɵcmp: i0.ɵɵComponentDeclaration<MatSlideToggle, "mat-slide-toggle", ["matSlideToggle"], { "disabled": "disabled"; "disableRipple": "disableRipple"; "color": "color"; "tabIndex": "tabIndex"; }, {}, never, ["*"], false>;
69}
70
71export declare abstract class _MatSlideToggleBase<T> extends _MatSlideToggleMixinBase implements OnDestroy, AfterContentInit, ControlValueAccessor, CanDisable, CanColor, HasTabIndex, CanDisableRipple {
72 protected _focusMonitor: FocusMonitor;
73 protected _changeDetectorRef: ChangeDetectorRef;
74 defaults: MatSlideToggleDefaultOptions;
75 protected _onChange: (_: any) => void;
76 private _onTouched;
77 protected _uniqueId: string;
78 private _required;
79 private _checked;
80 protected abstract _createChangeEvent(isChecked: boolean): T;
81 abstract focus(options?: FocusOptions, origin?: FocusOrigin): void;
82 /** Whether noop animations are enabled. */
83 _noopAnimations: boolean;
84 /** Whether the slide toggle is currently focused. */
85 _focused: boolean;
86 /** Name value will be applied to the input element if present. */
87 name: string | null;
88 /** A unique id for the slide-toggle input. If none is supplied, it will be auto-generated. */
89 id: string;
90 /** Whether the label should appear after or before the slide-toggle. Defaults to 'after'. */
91 labelPosition: 'before' | 'after';
92 /** Used to set the aria-label attribute on the underlying input element. */
93 ariaLabel: string | null;
94 /** Used to set the aria-labelledby attribute on the underlying input element. */
95 ariaLabelledby: string | null;
96 /** Used to set the aria-describedby attribute on the underlying input element. */
97 ariaDescribedby: string;
98 /** Whether the slide-toggle is required. */
99 get required(): boolean;
100 set required(value: BooleanInput);
101 /** Whether the slide-toggle element is checked or not. */
102 get checked(): boolean;
103 set checked(value: BooleanInput);
104 /** An event will be dispatched each time the slide-toggle changes its value. */
105 readonly change: EventEmitter<T>;
106 /**
107 * An event will be dispatched each time the slide-toggle input is toggled.
108 * This event is always emitted when the user toggles the slide toggle, but this does not mean
109 * the slide toggle's value has changed.
110 */
111 readonly toggleChange: EventEmitter<void>;
112 /** Returns the unique id for the visual hidden input. */
113 get inputId(): string;
114 constructor(elementRef: ElementRef, _focusMonitor: FocusMonitor, _changeDetectorRef: ChangeDetectorRef, tabIndex: string, defaults: MatSlideToggleDefaultOptions, animationMode: string | undefined, idPrefix: string);
115 ngAfterContentInit(): void;
116 ngOnDestroy(): void;
117 /** Implemented as part of ControlValueAccessor. */
118 writeValue(value: any): void;
119 /** Implemented as part of ControlValueAccessor. */
120 registerOnChange(fn: any): void;
121 /** Implemented as part of ControlValueAccessor. */
122 registerOnTouched(fn: any): void;
123 /** Implemented as a part of ControlValueAccessor. */
124 setDisabledState(isDisabled: boolean): void;
125 /** Toggles the checked state of the slide-toggle. */
126 toggle(): void;
127 /**
128 * Emits a change event on the `change` output. Also notifies the FormControl about the change.
129 */
130 protected _emitChangeEvent(): void;
131 static ɵfac: i0.ɵɵFactoryDeclaration<_MatSlideToggleBase<any>, never>;
132 static ɵdir: i0.ɵɵDirectiveDeclaration<_MatSlideToggleBase<any>, never, never, { "name": "name"; "id": "id"; "labelPosition": "labelPosition"; "ariaLabel": "aria-label"; "ariaLabelledby": "aria-labelledby"; "ariaDescribedby": "aria-describedby"; "required": "required"; "checked": "checked"; }, { "change": "change"; "toggleChange": "toggleChange"; }, never, never, false>;
133}
134
135/** Change event object emitted by a MatSlideToggle. */
136export declare class MatSlideToggleChange {
137 /** The source MatSlideToggle of the event. */
138 source: MatSlideToggle;
139 /** The new `checked` value of the MatSlideToggle. */
140 checked: boolean;
141 constructor(
142 /** The source MatSlideToggle of the event. */
143 source: MatSlideToggle,
144 /** The new `checked` value of the MatSlideToggle. */
145 checked: boolean);
146}
147
148/** Default `mat-slide-toggle` options that can be overridden. */
149export declare interface MatSlideToggleDefaultOptions {
150 /** Whether toggle action triggers value changes in slide toggle. */
151 disableToggleValue?: boolean;
152 /** Default color for slide toggles. */
153 color?: ThemePalette;
154}
155
156/** @docs-private */
157declare const _MatSlideToggleMixinBase: _Constructor<HasTabIndex> & _AbstractConstructor<HasTabIndex> & _Constructor<CanColor> & _AbstractConstructor<CanColor> & _Constructor<CanDisableRipple> & _AbstractConstructor<CanDisableRipple> & _Constructor<CanDisable> & _AbstractConstructor<CanDisable> & {
158 new (_elementRef: ElementRef): {
159 _elementRef: ElementRef;
160 };
161};
162
163export declare class MatSlideToggleModule {
164 static ɵfac: i0.ɵɵFactoryDeclaration<MatSlideToggleModule, never>;
165 static ɵmod: i0.ɵɵNgModuleDeclaration<MatSlideToggleModule, [typeof i2.MatSlideToggle], [typeof _MatSlideToggleRequiredValidatorModule, typeof i3.MatRippleModule, typeof i3.MatCommonModule, typeof i4.ObserversModule], [typeof _MatSlideToggleRequiredValidatorModule, typeof i2.MatSlideToggle, typeof i3.MatCommonModule]>;
166 static ɵinj: i0.ɵɵInjectorDeclaration<MatSlideToggleModule>;
167}
168
169/**
170 * Validator for Material slide-toggle components with the required attribute in a
171 * template-driven form. The default validator for required form controls asserts
172 * that the control value is not undefined but that is not appropriate for a slide-toggle
173 * where the value is always defined.
174 *
175 * Required slide-toggle form controls are valid when checked.
176 */
177export declare class MatSlideToggleRequiredValidator extends CheckboxRequiredValidator {
178 static ɵfac: i0.ɵɵFactoryDeclaration<MatSlideToggleRequiredValidator, never>;
179 static ɵdir: i0.ɵɵDirectiveDeclaration<MatSlideToggleRequiredValidator, "mat-slide-toggle[required][formControlName], mat-slide-toggle[required][formControl], mat-slide-toggle[required][ngModel]", never, {}, {}, never, never, false>;
180}
181
182/** This module is used by both original and MDC-based slide-toggle implementations. */
183export declare class _MatSlideToggleRequiredValidatorModule {
184 static ɵfac: i0.ɵɵFactoryDeclaration<_MatSlideToggleRequiredValidatorModule, never>;
185 static ɵmod: i0.ɵɵNgModuleDeclaration<_MatSlideToggleRequiredValidatorModule, [typeof i1.MatSlideToggleRequiredValidator], never, [typeof i1.MatSlideToggleRequiredValidator]>;
186 static ɵinj: i0.ɵɵInjectorDeclaration<_MatSlideToggleRequiredValidatorModule>;
187}
188
189export { }