@angular/cdk 12.0.6 → 12.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/a11y/focus-monitor/focus-monitor.d.ts +25 -31
- package/a11y/index.metadata.json +1 -1
- package/a11y/input-modality/input-modality-detector.d.ts +105 -0
- package/a11y/public-api.d.ts +1 -0
- package/bundles/cdk-a11y.umd.js +296 -157
- package/bundles/cdk-a11y.umd.js.map +1 -1
- package/bundles/cdk-coercion.umd.js +14 -11
- package/bundles/cdk-coercion.umd.js.map +1 -1
- package/bundles/cdk-collections.umd.js +14 -11
- package/bundles/cdk-collections.umd.js.map +1 -1
- package/bundles/cdk-drag-drop.umd.js +14 -11
- package/bundles/cdk-drag-drop.umd.js.map +1 -1
- package/bundles/cdk-overlay.umd.js +14 -11
- package/bundles/cdk-overlay.umd.js.map +1 -1
- package/bundles/cdk-portal.umd.js +14 -11
- package/bundles/cdk-portal.umd.js.map +1 -1
- package/bundles/cdk-scrolling.umd.js +14 -11
- package/bundles/cdk-scrolling.umd.js.map +1 -1
- package/bundles/cdk-stepper.umd.js +9 -3
- package/bundles/cdk-stepper.umd.js.map +1 -1
- package/bundles/cdk-table.umd.js +14 -11
- package/bundles/cdk-table.umd.js.map +1 -1
- package/bundles/cdk-testing-protractor.umd.js +14 -11
- package/bundles/cdk-testing-protractor.umd.js.map +1 -1
- package/bundles/cdk-testing-selenium-webdriver.umd.js +14 -11
- package/bundles/cdk-testing-selenium-webdriver.umd.js.map +1 -1
- package/bundles/cdk-testing-testbed.umd.js +26 -17
- package/bundles/cdk-testing-testbed.umd.js.map +1 -1
- package/bundles/cdk-testing.umd.js +14 -11
- package/bundles/cdk-testing.umd.js.map +1 -1
- package/bundles/cdk-tree.umd.js +14 -11
- package/bundles/cdk-tree.umd.js.map +1 -1
- package/bundles/cdk.umd.js +1 -1
- package/bundles/cdk.umd.js.map +1 -1
- package/esm2015/a11y/focus-monitor/focus-monitor.js +81 -121
- package/esm2015/a11y/input-modality/input-modality-detector.js +179 -0
- package/esm2015/a11y/public-api.js +2 -1
- package/esm2015/stepper/stepper.js +10 -4
- package/esm2015/testing/testbed/fake-events/dispatch-events.js +3 -3
- package/esm2015/testing/testbed/fake-events/event-objects.js +5 -3
- package/esm2015/version.js +1 -1
- package/fesm2015/a11y.js +276 -149
- package/fesm2015/a11y.js.map +1 -1
- package/fesm2015/cdk.js +1 -1
- package/fesm2015/cdk.js.map +1 -1
- package/fesm2015/stepper.js +9 -3
- package/fesm2015/stepper.js.map +1 -1
- package/fesm2015/testing/testbed.js +6 -4
- package/fesm2015/testing/testbed.js.map +1 -1
- package/package.json +2 -2
- package/schematics/ng-add/index.js +1 -1
- package/schematics/ng-add/index.mjs +1 -1
- package/stepper/index.metadata.json +1 -1
- package/stepper/stepper.d.ts +2 -1
- package/testing/testbed/fake-events/dispatch-events.d.ts +1 -1
- package/testing/testbed/fake-events/event-objects.d.ts +1 -1
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
import { Platform } from '@angular/cdk/platform';
|
|
9
9
|
import { ElementRef, EventEmitter, InjectionToken, NgZone, OnDestroy, AfterViewInit } from '@angular/core';
|
|
10
10
|
import { Observable } from 'rxjs';
|
|
11
|
-
|
|
11
|
+
import { InputModalityDetector } from '../input-modality/input-modality-detector';
|
|
12
12
|
export declare type FocusOrigin = 'touch' | 'mouse' | 'keyboard' | 'program' | null;
|
|
13
13
|
/**
|
|
14
14
|
* Corresponds to the options that can be passed to the native `focus` event.
|
|
@@ -28,7 +28,7 @@ export declare const enum FocusMonitorDetectionMode {
|
|
|
28
28
|
IMMEDIATE = 0,
|
|
29
29
|
/**
|
|
30
30
|
* A focus event's origin is always attributed to the last corresponding
|
|
31
|
-
* mousedown, keydown, or touchstart event, no matter how long ago it
|
|
31
|
+
* mousedown, keydown, or touchstart event, no matter how long ago it occurred.
|
|
32
32
|
*/
|
|
33
33
|
EVENTUAL = 1
|
|
34
34
|
}
|
|
@@ -42,20 +42,22 @@ export declare const FOCUS_MONITOR_DEFAULT_OPTIONS: InjectionToken<FocusMonitorO
|
|
|
42
42
|
export declare class FocusMonitor implements OnDestroy {
|
|
43
43
|
private _ngZone;
|
|
44
44
|
private _platform;
|
|
45
|
+
private readonly _inputModalityDetector;
|
|
45
46
|
/** The focus origin that the next focus event is a result of. */
|
|
46
47
|
private _origin;
|
|
47
48
|
/** The FocusOrigin of the last focus event tracked by the FocusMonitor. */
|
|
48
49
|
private _lastFocusOrigin;
|
|
49
50
|
/** Whether the window has just been focused. */
|
|
50
51
|
private _windowFocused;
|
|
51
|
-
/** The target of the last touch event. */
|
|
52
|
-
private _lastTouchTarget;
|
|
53
|
-
/** The timeout id of the touch timeout, used to cancel timeout later. */
|
|
54
|
-
private _touchTimeoutId;
|
|
55
52
|
/** The timeout id of the window focus timeout. */
|
|
56
53
|
private _windowFocusTimeoutId;
|
|
57
54
|
/** The timeout id of the origin clearing timeout. */
|
|
58
55
|
private _originTimeoutId;
|
|
56
|
+
/**
|
|
57
|
+
* Whether the origin was determined via a touch interaction. Necessary as properly attributing
|
|
58
|
+
* focus events to touch interactions requires special logic.
|
|
59
|
+
*/
|
|
60
|
+
private _originFromTouchInteraction;
|
|
59
61
|
/** Map of elements being monitored to their info. */
|
|
60
62
|
private _elementInfo;
|
|
61
63
|
/** The number of elements currently being monitored. */
|
|
@@ -72,21 +74,6 @@ export declare class FocusMonitor implements OnDestroy {
|
|
|
72
74
|
* event.
|
|
73
75
|
*/
|
|
74
76
|
private readonly _detectionMode;
|
|
75
|
-
/**
|
|
76
|
-
* Event listener for `keydown` events on the document.
|
|
77
|
-
* Needs to be an arrow function in order to preserve the context when it gets bound.
|
|
78
|
-
*/
|
|
79
|
-
private _documentKeydownListener;
|
|
80
|
-
/**
|
|
81
|
-
* Event listener for `mousedown` events on the document.
|
|
82
|
-
* Needs to be an arrow function in order to preserve the context when it gets bound.
|
|
83
|
-
*/
|
|
84
|
-
private _documentMousedownListener;
|
|
85
|
-
/**
|
|
86
|
-
* Event listener for `touchstart` events on the document.
|
|
87
|
-
* Needs to be an arrow function in order to preserve the context when it gets bound.
|
|
88
|
-
*/
|
|
89
|
-
private _documentTouchstartListener;
|
|
90
77
|
/**
|
|
91
78
|
* Event listener for `focus` events on the window.
|
|
92
79
|
* Needs to be an arrow function in order to preserve the context when it gets bound.
|
|
@@ -94,7 +81,9 @@ export declare class FocusMonitor implements OnDestroy {
|
|
|
94
81
|
private _windowFocusListener;
|
|
95
82
|
/** Used to reference correct document/window */
|
|
96
83
|
protected _document?: Document;
|
|
97
|
-
|
|
84
|
+
/** Subject for stopping our InputModalityDetector subscription. */
|
|
85
|
+
private readonly _stopInputModalityDetector;
|
|
86
|
+
constructor(_ngZone: NgZone, _platform: Platform, _inputModalityDetector: InputModalityDetector,
|
|
98
87
|
/** @breaking-change 11.0.0 make document required */
|
|
99
88
|
document: any | null, options: FocusMonitorOptions | null);
|
|
100
89
|
/**
|
|
@@ -149,6 +138,15 @@ export declare class FocusMonitor implements OnDestroy {
|
|
|
149
138
|
private _getWindow;
|
|
150
139
|
private _toggleClass;
|
|
151
140
|
private _getFocusOrigin;
|
|
141
|
+
/**
|
|
142
|
+
* Returns whether the focus event should be attributed to touch. Recall that in IMMEDIATE mode, a
|
|
143
|
+
* touch origin isn't immediately reset at the next tick (see _setOrigin). This means that when we
|
|
144
|
+
* handle a focus event following a touch interaction, we need to determine whether (1) the focus
|
|
145
|
+
* event was directly caused by the touch interaction or (2) the focus event was caused by a
|
|
146
|
+
* subsequent programmatic focus call triggered by the touch interaction.
|
|
147
|
+
* @param focusEventTarget The target of the focus event under examination.
|
|
148
|
+
*/
|
|
149
|
+
private _shouldBeAttributedToTouch;
|
|
152
150
|
/**
|
|
153
151
|
* Sets the focus classes on the element based on the given focus origin.
|
|
154
152
|
* @param element The element to update the classes on.
|
|
@@ -156,17 +154,13 @@ export declare class FocusMonitor implements OnDestroy {
|
|
|
156
154
|
*/
|
|
157
155
|
private _setClasses;
|
|
158
156
|
/**
|
|
159
|
-
*
|
|
160
|
-
*
|
|
157
|
+
* Updates the focus origin. If we're using immediate detection mode, we schedule an async
|
|
158
|
+
* function to clear the origin at the end of a timeout. The duration of the timeout depends on
|
|
159
|
+
* the origin being set.
|
|
161
160
|
* @param origin The origin to set.
|
|
161
|
+
* @param isFromInteraction Whether we are setting the origin from an interaction event.
|
|
162
162
|
*/
|
|
163
|
-
private
|
|
164
|
-
/**
|
|
165
|
-
* Checks whether the given focus event was caused by a touchstart event.
|
|
166
|
-
* @param event The focus event to check.
|
|
167
|
-
* @returns Whether the event was caused by a touch.
|
|
168
|
-
*/
|
|
169
|
-
private _wasCausedByTouch;
|
|
163
|
+
private _setOrigin;
|
|
170
164
|
/**
|
|
171
165
|
* Handles focus events on a registered element.
|
|
172
166
|
* @param event The focus event.
|
package/a11y/index.metadata.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"__symbolic":"module","version":4,"metadata":{"RegisteredMessage":{"__symbolic":"interface"},"MESSAGES_CONTAINER_ID":"cdk-describedby-message-container","CDK_DESCRIBEDBY_ID_PREFIX":"cdk-describedby-message","CDK_DESCRIBEDBY_HOST_ATTRIBUTE":"cdk-describedby-host","AriaDescriber":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":48,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":53,"character":5},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":53,"character":12}]}]],"parameters":[{"__symbolic":"reference","name":"any"}]}],"describe":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"removeDescription":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_createMessageElement":[{"__symbolic":"method"}],"_deleteMessageElement":[{"__symbolic":"method"}],"_createMessagesContainer":[{"__symbolic":"method"}],"_deleteMessagesContainer":[{"__symbolic":"method"}],"_removeCdkDescribedByReferenceIds":[{"__symbolic":"method"}],"_addMessageReference":[{"__symbolic":"method"}],"_removeMessageReference":[{"__symbolic":"method"}],"_isElementDescribedByMessage":[{"__symbolic":"method"}],"_canBeDescribed":[{"__symbolic":"method"}],"_isElementNode":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"Highlightable":{"__symbolic":"interface"},"ActiveDescendantKeyManager":{"__symbolic":"class","arity":1,"extends":{"__symbolic":"reference","name":"ListKeyManager"},"members":{"setActiveItem":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}]}},"FocusableOption":{"__symbolic":"interface"},"FocusKeyManager":{"__symbolic":"class","arity":1,"extends":{"__symbolic":"reference","name":"ListKeyManager"},"members":{"setFocusOrigin":[{"__symbolic":"method"}],"setActiveItem":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}]}},"ListKeyManagerOption":{"__symbolic":"interface"},"ListKeyManagerModifierKey":{"__symbolic":"interface"},"ListKeyManager":{"__symbolic":"class","arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"QueryList","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":62,"character":40,"context":{"typeName":"T"},"module":"./key-manager/list-key-manager"}]}]}],"skipPredicate":[{"__symbolic":"method"}],"withWrap":[{"__symbolic":"method"}],"withVerticalOrientation":[{"__symbolic":"method"}],"withHorizontalOrientation":[{"__symbolic":"method"}],"withAllowedModifierKeys":[{"__symbolic":"method"}],"withTypeAhead":[{"__symbolic":"method"}],"withHomeAndEnd":[{"__symbolic":"method"}],"setActiveItem":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"onKeydown":[{"__symbolic":"method"}],"isTyping":[{"__symbolic":"method"}],"setFirstItemActive":[{"__symbolic":"method"}],"setLastItemActive":[{"__symbolic":"method"}],"setNextItemActive":[{"__symbolic":"method"}],"setPreviousItemActive":[{"__symbolic":"method"}],"updateActiveItem":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"_setActiveItemByDelta":[{"__symbolic":"method"}],"_setActiveInWrapMode":[{"__symbolic":"method"}],"_setActiveInDefaultMode":[{"__symbolic":"method"}],"_setActiveItemByIndex":[{"__symbolic":"method"}],"_getItemsArray":[{"__symbolic":"method"}]}},"ConfigurableFocusTrap":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"FocusTrap"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Could not resolve type","line":34,"character":14,"context":{"typeName":"HTMLElement"},"module":"./focus-trap/configurable-focus-trap"},{"__symbolic":"reference","name":"InteractivityChecker"},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":36,"character":13},{"__symbolic":"error","message":"Could not resolve type","line":37,"character":15,"context":{"typeName":"Document"},"module":"./focus-trap/configurable-focus-trap"},{"__symbolic":"reference","name":"ɵangular_material_src_cdk_a11y_a11y_a"},{"__symbolic":"reference","name":"FocusTrapInertStrategy"},{"__symbolic":"reference","name":"ConfigurableFocusTrapConfig"}]}],"destroy":[{"__symbolic":"method"}],"_enable":[{"__symbolic":"method"}],"_disable":[{"__symbolic":"method"}]}},"ConfigurableFocusTrapConfig":{"__symbolic":"interface"},"ConfigurableFocusTrapFactory":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":23,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":32,"character":7},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":32,"character":14}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":33,"character":7}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":33,"character":19},"arguments":[{"__symbolic":"reference","name":"FOCUS_TRAP_INERT_STRATEGY"}]}]],"parameters":[{"__symbolic":"reference","name":"InteractivityChecker"},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":30,"character":23},{"__symbolic":"reference","name":"ɵangular_material_src_cdk_a11y_a11y_a"},{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"FocusTrapInertStrategy"}]}],"create":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"EventListenerFocusTrapInertStrategy":{"__symbolic":"class","members":{"preventFocus":[{"__symbolic":"method"}],"allowFocus":[{"__symbolic":"method"}],"_trapFocus":[{"__symbolic":"method"}]}},"FocusTrap":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Could not resolve type","line":60,"character":23,"context":{"typeName":"HTMLElement"},"module":"./focus-trap/focus-trap"},{"__symbolic":"reference","name":"InteractivityChecker"},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":62,"character":22},{"__symbolic":"error","message":"Could not resolve type","line":63,"character":24,"context":{"typeName":"Document"},"module":"./focus-trap/focus-trap"},null]}],"destroy":[{"__symbolic":"method"}],"attachAnchors":[{"__symbolic":"method"}],"focusInitialElementWhenReady":[{"__symbolic":"method"}],"focusFirstTabbableElementWhenReady":[{"__symbolic":"method"}],"focusLastTabbableElementWhenReady":[{"__symbolic":"method"}],"_getRegionBoundary":[{"__symbolic":"method"}],"focusInitialElement":[{"__symbolic":"method"}],"focusFirstTabbableElement":[{"__symbolic":"method"}],"focusLastTabbableElement":[{"__symbolic":"method"}],"hasAttached":[{"__symbolic":"method"}],"_getFirstTabbableElement":[{"__symbolic":"method"}],"_getLastTabbableElement":[{"__symbolic":"method"}],"_createAnchor":[{"__symbolic":"method"}],"_toggleAnchorTabIndex":[{"__symbolic":"method"}],"toggleAnchors":[{"__symbolic":"method"}],"_executeOnStable":[{"__symbolic":"method"}]}},"FocusTrapFactory":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":360,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":367,"character":7},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":367,"character":14}]}]],"parameters":[{"__symbolic":"reference","name":"InteractivityChecker"},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":62,"character":22},{"__symbolic":"reference","name":"any"}]}],"create":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"CdkTrapFocus":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":386,"character":1},"arguments":[{"selector":"[cdkTrapFocus]","exportAs":"cdkTrapFocus"}]}],"members":{"enabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":398,"character":3},"arguments":["cdkTrapFocus"]}]}],"autoCapture":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":406,"character":3},"arguments":["cdkTrapFocusAutoCapture"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":418,"character":7},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":418,"character":14}]}]],"parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":412,"character":38,"context":{"typeName":"HTMLElement"},"module":"./focus-trap/focus-trap"}]},{"__symbolic":"reference","name":"FocusTrapFactory"},{"__symbolic":"reference","name":"any"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"ngAfterContentInit":[{"__symbolic":"method"}],"ngDoCheck":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"_captureFocus":[{"__symbolic":"method"}]}},"FOCUS_TRAP_INERT_STRATEGY":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":14,"character":6},"arguments":["FOCUS_TRAP_INERT_STRATEGY"]},"FocusTrapInertStrategy":{"__symbolic":"interface"},"IsFocusableConfig":{"__symbolic":"class","members":{}},"InteractivityChecker":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":29,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/cdk/platform","name":"Platform","line":32,"character":33}]}],"isDisabled":[{"__symbolic":"method"}],"isVisible":[{"__symbolic":"method"}],"isTabbable":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"LiveAnnouncer":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":29,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":36,"character":7}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":36,"character":19},"arguments":[{"__symbolic":"reference","name":"LIVE_ANNOUNCER_ELEMENT_TOKEN"}]}],null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":38,"character":7},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":38,"character":14}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":39,"character":7}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":39,"character":19},"arguments":[{"__symbolic":"reference","name":"LIVE_ANNOUNCER_DEFAULT_OPTIONS"}]}]],"parameters":[{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":37,"character":23},{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"LiveAnnouncerDefaultOptions"}]}],"announce":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_createLiveElement":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"CdkAriaLive":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":179,"character":1},"arguments":[{"selector":"[cdkAriaLive]","exportAs":"cdkAriaLive"}]}],"members":{"politeness":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":185,"character":3},"arguments":["cdkAriaLive"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":217,"character":35},{"__symbolic":"reference","name":"LiveAnnouncer"},{"__symbolic":"reference","module":"@angular/cdk/observers","name":"ContentObserver","line":218,"character":40},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":37,"character":23}]}],"ngOnDestroy":[{"__symbolic":"method"}]}},"AriaLivePoliteness":{"__symbolic":"interface"},"LIVE_ANNOUNCER_ELEMENT_TOKEN":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":17,"character":8},"arguments":["liveAnnouncerElement",{"providedIn":"root","factory":{"__symbolic":"reference","name":"LIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY"}}]},"LIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY":{"__symbolic":"function","parameters":[],"value":null},"LiveAnnouncerDefaultOptions":{"__symbolic":"interface"},"LIVE_ANNOUNCER_DEFAULT_OPTIONS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":38,"character":8},"arguments":["LIVE_ANNOUNCER_DEFAULT_OPTIONS"]},"TOUCH_BUFFER_MS":650,"FocusOrigin":{"__symbolic":"interface"},"FocusOptions":{"__symbolic":"interface"},"FocusMonitorDetectionMode":{"IMMEDIATE":0,"EVENTUAL":1},"FocusMonitorOptions":{"__symbolic":"interface"},"FOCUS_MONITOR_DEFAULT_OPTIONS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":69,"character":8},"arguments":["cdk-focus-monitor-default-options"]},"FocusMonitor":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":88,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":196,"character":7}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":196,"character":19},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":196,"character":26}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":197,"character":7}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":197,"character":19},"arguments":[{"__symbolic":"reference","name":"FOCUS_MONITOR_DEFAULT_OPTIONS"}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":193,"character":23},{"__symbolic":"reference","module":"@angular/cdk/platform","name":"Platform","line":194,"character":25},{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"any"}]}],"monitor":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"stopMonitoring":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"focusVia":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_getDocument":[{"__symbolic":"method"}],"_getWindow":[{"__symbolic":"method"}],"_toggleClass":[{"__symbolic":"method"}],"_getFocusOrigin":[{"__symbolic":"method"}],"_setClasses":[{"__symbolic":"method"}],"_setOriginForCurrentEventQueue":[{"__symbolic":"method"}],"_wasCausedByTouch":[{"__symbolic":"method"}],"_onFocus":[{"__symbolic":"method"}],"_onBlur":[{"__symbolic":"method"}],"_emitOrigin":[{"__symbolic":"method"}],"_registerGlobalListeners":[{"__symbolic":"method"}],"_removeGlobalListeners":[{"__symbolic":"method"}],"_originChanged":[{"__symbolic":"method"}],"_getClosestElementsInfo":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"CdkMonitorFocus":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":601,"character":1},"arguments":[{"selector":"[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]"}]}],"members":{"cdkFocusChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":606,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":608,"character":46,"context":{"typeName":"HTMLElement"},"module":"./focus-monitor/focus-monitor"}]},{"__symbolic":"reference","name":"FocusMonitor"}]}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"isFakeMousedownFromScreenReader":{"__symbolic":"function","parameters":["event"],"value":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"event"},"member":"buttons"},"right":0}},"isFakeTouchstartFromScreenReader":{"__symbolic":"function"},"A11yModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":17,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/cdk/platform","name":"PlatformModule","line":18,"character":12},{"__symbolic":"reference","module":"@angular/cdk/observers","name":"ObserversModule","line":18,"character":28}],"declarations":[{"__symbolic":"reference","name":"CdkAriaLive"},{"__symbolic":"reference","name":"CdkTrapFocus"},{"__symbolic":"reference","name":"CdkMonitorFocus"}],"exports":[{"__symbolic":"reference","name":"CdkAriaLive"},{"__symbolic":"reference","name":"CdkTrapFocus"},{"__symbolic":"reference","name":"CdkMonitorFocus"}]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"HighContrastModeDetector"}]}]}},"HighContrastModeDetector":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":40,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":49,"character":44},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":49,"character":51}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/cdk/platform","name":"Platform","line":49,"character":33},{"__symbolic":"reference","name":"any"}]}],"getHighContrastMode":[{"__symbolic":"method"}],"_applyBodyHighContrastModeCssClasses":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"HighContrastMode":{"NONE":0,"BLACK_ON_WHITE":1,"WHITE_ON_BLACK":2},"ɵangular_material_src_cdk_a11y_a11y_a":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":21,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"register":[{"__symbolic":"method"}],"deregister":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}}},"origins":{"RegisteredMessage":"./aria-describer/aria-describer","MESSAGES_CONTAINER_ID":"./aria-describer/aria-describer","CDK_DESCRIBEDBY_ID_PREFIX":"./aria-describer/aria-describer","CDK_DESCRIBEDBY_HOST_ATTRIBUTE":"./aria-describer/aria-describer","AriaDescriber":"./aria-describer/aria-describer","Highlightable":"./key-manager/activedescendant-key-manager","ActiveDescendantKeyManager":"./key-manager/activedescendant-key-manager","FocusableOption":"./key-manager/focus-key-manager","FocusKeyManager":"./key-manager/focus-key-manager","ListKeyManagerOption":"./key-manager/list-key-manager","ListKeyManagerModifierKey":"./key-manager/list-key-manager","ListKeyManager":"./key-manager/list-key-manager","ConfigurableFocusTrap":"./focus-trap/configurable-focus-trap","ConfigurableFocusTrapConfig":"./focus-trap/configurable-focus-trap-config","ConfigurableFocusTrapFactory":"./focus-trap/configurable-focus-trap-factory","EventListenerFocusTrapInertStrategy":"./focus-trap/event-listener-inert-strategy","FocusTrap":"./focus-trap/focus-trap","FocusTrapFactory":"./focus-trap/focus-trap","CdkTrapFocus":"./focus-trap/focus-trap","FOCUS_TRAP_INERT_STRATEGY":"./focus-trap/focus-trap-inert-strategy","FocusTrapInertStrategy":"./focus-trap/focus-trap-inert-strategy","IsFocusableConfig":"./interactivity-checker/interactivity-checker","InteractivityChecker":"./interactivity-checker/interactivity-checker","LiveAnnouncer":"./live-announcer/live-announcer","CdkAriaLive":"./live-announcer/live-announcer","AriaLivePoliteness":"./live-announcer/live-announcer-tokens","LIVE_ANNOUNCER_ELEMENT_TOKEN":"./live-announcer/live-announcer-tokens","LIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY":"./live-announcer/live-announcer-tokens","LiveAnnouncerDefaultOptions":"./live-announcer/live-announcer-tokens","LIVE_ANNOUNCER_DEFAULT_OPTIONS":"./live-announcer/live-announcer-tokens","TOUCH_BUFFER_MS":"./focus-monitor/focus-monitor","FocusOrigin":"./focus-monitor/focus-monitor","FocusOptions":"./focus-monitor/focus-monitor","FocusMonitorDetectionMode":"./focus-monitor/focus-monitor","FocusMonitorOptions":"./focus-monitor/focus-monitor","FOCUS_MONITOR_DEFAULT_OPTIONS":"./focus-monitor/focus-monitor","FocusMonitor":"./focus-monitor/focus-monitor","CdkMonitorFocus":"./focus-monitor/focus-monitor","isFakeMousedownFromScreenReader":"./fake-event-detection","isFakeTouchstartFromScreenReader":"./fake-event-detection","A11yModule":"./a11y-module","HighContrastModeDetector":"./high-contrast-mode/high-contrast-mode-detector","HighContrastMode":"./high-contrast-mode/high-contrast-mode-detector","ɵangular_material_src_cdk_a11y_a11y_a":"./focus-trap/focus-trap-manager"},"importAs":"@angular/cdk/a11y"}
|
|
1
|
+
{"__symbolic":"module","version":4,"metadata":{"RegisteredMessage":{"__symbolic":"interface"},"MESSAGES_CONTAINER_ID":"cdk-describedby-message-container","CDK_DESCRIBEDBY_ID_PREFIX":"cdk-describedby-message","CDK_DESCRIBEDBY_HOST_ATTRIBUTE":"cdk-describedby-host","AriaDescriber":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":48,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":53,"character":5},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":53,"character":12}]}]],"parameters":[{"__symbolic":"reference","name":"any"}]}],"describe":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"removeDescription":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_createMessageElement":[{"__symbolic":"method"}],"_deleteMessageElement":[{"__symbolic":"method"}],"_createMessagesContainer":[{"__symbolic":"method"}],"_deleteMessagesContainer":[{"__symbolic":"method"}],"_removeCdkDescribedByReferenceIds":[{"__symbolic":"method"}],"_addMessageReference":[{"__symbolic":"method"}],"_removeMessageReference":[{"__symbolic":"method"}],"_isElementDescribedByMessage":[{"__symbolic":"method"}],"_canBeDescribed":[{"__symbolic":"method"}],"_isElementNode":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"Highlightable":{"__symbolic":"interface"},"ActiveDescendantKeyManager":{"__symbolic":"class","arity":1,"extends":{"__symbolic":"reference","name":"ListKeyManager"},"members":{"setActiveItem":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}]}},"FocusableOption":{"__symbolic":"interface"},"FocusKeyManager":{"__symbolic":"class","arity":1,"extends":{"__symbolic":"reference","name":"ListKeyManager"},"members":{"setFocusOrigin":[{"__symbolic":"method"}],"setActiveItem":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}]}},"ListKeyManagerOption":{"__symbolic":"interface"},"ListKeyManagerModifierKey":{"__symbolic":"interface"},"ListKeyManager":{"__symbolic":"class","arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"QueryList","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":62,"character":40,"context":{"typeName":"T"},"module":"./key-manager/list-key-manager"}]}]}],"skipPredicate":[{"__symbolic":"method"}],"withWrap":[{"__symbolic":"method"}],"withVerticalOrientation":[{"__symbolic":"method"}],"withHorizontalOrientation":[{"__symbolic":"method"}],"withAllowedModifierKeys":[{"__symbolic":"method"}],"withTypeAhead":[{"__symbolic":"method"}],"withHomeAndEnd":[{"__symbolic":"method"}],"setActiveItem":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"onKeydown":[{"__symbolic":"method"}],"isTyping":[{"__symbolic":"method"}],"setFirstItemActive":[{"__symbolic":"method"}],"setLastItemActive":[{"__symbolic":"method"}],"setNextItemActive":[{"__symbolic":"method"}],"setPreviousItemActive":[{"__symbolic":"method"}],"updateActiveItem":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"_setActiveItemByDelta":[{"__symbolic":"method"}],"_setActiveInWrapMode":[{"__symbolic":"method"}],"_setActiveInDefaultMode":[{"__symbolic":"method"}],"_setActiveItemByIndex":[{"__symbolic":"method"}],"_getItemsArray":[{"__symbolic":"method"}]}},"ConfigurableFocusTrap":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"FocusTrap"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Could not resolve type","line":34,"character":14,"context":{"typeName":"HTMLElement"},"module":"./focus-trap/configurable-focus-trap"},{"__symbolic":"reference","name":"InteractivityChecker"},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":36,"character":13},{"__symbolic":"error","message":"Could not resolve type","line":37,"character":15,"context":{"typeName":"Document"},"module":"./focus-trap/configurable-focus-trap"},{"__symbolic":"reference","name":"ɵangular_material_src_cdk_a11y_a11y_a"},{"__symbolic":"reference","name":"FocusTrapInertStrategy"},{"__symbolic":"reference","name":"ConfigurableFocusTrapConfig"}]}],"destroy":[{"__symbolic":"method"}],"_enable":[{"__symbolic":"method"}],"_disable":[{"__symbolic":"method"}]}},"ConfigurableFocusTrapConfig":{"__symbolic":"interface"},"ConfigurableFocusTrapFactory":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":23,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":32,"character":7},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":32,"character":14}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":33,"character":7}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":33,"character":19},"arguments":[{"__symbolic":"reference","name":"FOCUS_TRAP_INERT_STRATEGY"}]}]],"parameters":[{"__symbolic":"reference","name":"InteractivityChecker"},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":30,"character":23},{"__symbolic":"reference","name":"ɵangular_material_src_cdk_a11y_a11y_a"},{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"FocusTrapInertStrategy"}]}],"create":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"EventListenerFocusTrapInertStrategy":{"__symbolic":"class","members":{"preventFocus":[{"__symbolic":"method"}],"allowFocus":[{"__symbolic":"method"}],"_trapFocus":[{"__symbolic":"method"}]}},"FocusTrap":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Could not resolve type","line":60,"character":23,"context":{"typeName":"HTMLElement"},"module":"./focus-trap/focus-trap"},{"__symbolic":"reference","name":"InteractivityChecker"},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":62,"character":22},{"__symbolic":"error","message":"Could not resolve type","line":63,"character":24,"context":{"typeName":"Document"},"module":"./focus-trap/focus-trap"},null]}],"destroy":[{"__symbolic":"method"}],"attachAnchors":[{"__symbolic":"method"}],"focusInitialElementWhenReady":[{"__symbolic":"method"}],"focusFirstTabbableElementWhenReady":[{"__symbolic":"method"}],"focusLastTabbableElementWhenReady":[{"__symbolic":"method"}],"_getRegionBoundary":[{"__symbolic":"method"}],"focusInitialElement":[{"__symbolic":"method"}],"focusFirstTabbableElement":[{"__symbolic":"method"}],"focusLastTabbableElement":[{"__symbolic":"method"}],"hasAttached":[{"__symbolic":"method"}],"_getFirstTabbableElement":[{"__symbolic":"method"}],"_getLastTabbableElement":[{"__symbolic":"method"}],"_createAnchor":[{"__symbolic":"method"}],"_toggleAnchorTabIndex":[{"__symbolic":"method"}],"toggleAnchors":[{"__symbolic":"method"}],"_executeOnStable":[{"__symbolic":"method"}]}},"FocusTrapFactory":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":360,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":367,"character":7},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":367,"character":14}]}]],"parameters":[{"__symbolic":"reference","name":"InteractivityChecker"},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":62,"character":22},{"__symbolic":"reference","name":"any"}]}],"create":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"CdkTrapFocus":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":386,"character":1},"arguments":[{"selector":"[cdkTrapFocus]","exportAs":"cdkTrapFocus"}]}],"members":{"enabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":398,"character":3},"arguments":["cdkTrapFocus"]}]}],"autoCapture":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":406,"character":3},"arguments":["cdkTrapFocusAutoCapture"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":418,"character":7},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":418,"character":14}]}]],"parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":412,"character":38,"context":{"typeName":"HTMLElement"},"module":"./focus-trap/focus-trap"}]},{"__symbolic":"reference","name":"FocusTrapFactory"},{"__symbolic":"reference","name":"any"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"ngAfterContentInit":[{"__symbolic":"method"}],"ngDoCheck":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"_captureFocus":[{"__symbolic":"method"}]}},"FOCUS_TRAP_INERT_STRATEGY":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":14,"character":6},"arguments":["FOCUS_TRAP_INERT_STRATEGY"]},"FocusTrapInertStrategy":{"__symbolic":"interface"},"IsFocusableConfig":{"__symbolic":"class","members":{}},"InteractivityChecker":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":29,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/cdk/platform","name":"Platform","line":32,"character":33}]}],"isDisabled":[{"__symbolic":"method"}],"isVisible":[{"__symbolic":"method"}],"isTabbable":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"InputModality":{"__symbolic":"interface"},"InputModalityDetector":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":89,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":172,"character":7},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":172,"character":14}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":173,"character":7}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":173,"character":19},"arguments":[{"__symbolic":"reference","name":"INPUT_MODALITY_DETECTOR_OPTIONS"}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/cdk/platform","name":"Platform","line":170,"character":34},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":171,"character":14},{"__symbolic":"error","message":"Could not resolve type","line":172,"character":34,"context":{"typeName":"Document"},"module":"./input-modality/input-modality-detector"},{"__symbolic":"reference","name":"any"}]}],"ngOnDestroy":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"InputModalityDetectorOptions":{"__symbolic":"interface"},"INPUT_MODALITY_DETECTOR_DEFAULT_OPTIONS":{"ignoreKeys":[{"__symbolic":"reference","module":"@angular/cdk/keycodes","name":"ALT","line":54,"character":15},{"__symbolic":"reference","module":"@angular/cdk/keycodes","name":"CONTROL","line":54,"character":20},{"__symbolic":"reference","module":"@angular/cdk/keycodes","name":"MAC_META","line":54,"character":29},{"__symbolic":"reference","module":"@angular/cdk/keycodes","name":"META","line":54,"character":39},{"__symbolic":"reference","module":"@angular/cdk/keycodes","name":"SHIFT","line":54,"character":45}]},"INPUT_MODALITY_DETECTOR_OPTIONS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":35,"character":6},"arguments":["cdk-input-modality-detector-options"]},"LiveAnnouncer":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":29,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":36,"character":7}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":36,"character":19},"arguments":[{"__symbolic":"reference","name":"LIVE_ANNOUNCER_ELEMENT_TOKEN"}]}],null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":38,"character":7},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":38,"character":14}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":39,"character":7}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":39,"character":19},"arguments":[{"__symbolic":"reference","name":"LIVE_ANNOUNCER_DEFAULT_OPTIONS"}]}]],"parameters":[{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":37,"character":23},{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"LiveAnnouncerDefaultOptions"}]}],"announce":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_createLiveElement":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"CdkAriaLive":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":179,"character":1},"arguments":[{"selector":"[cdkAriaLive]","exportAs":"cdkAriaLive"}]}],"members":{"politeness":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":185,"character":3},"arguments":["cdkAriaLive"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":217,"character":35},{"__symbolic":"reference","name":"LiveAnnouncer"},{"__symbolic":"reference","module":"@angular/cdk/observers","name":"ContentObserver","line":218,"character":40},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":37,"character":23}]}],"ngOnDestroy":[{"__symbolic":"method"}]}},"AriaLivePoliteness":{"__symbolic":"interface"},"LIVE_ANNOUNCER_ELEMENT_TOKEN":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":17,"character":8},"arguments":["liveAnnouncerElement",{"providedIn":"root","factory":{"__symbolic":"reference","name":"LIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY"}}]},"LIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY":{"__symbolic":"function","parameters":[],"value":null},"LiveAnnouncerDefaultOptions":{"__symbolic":"interface"},"LIVE_ANNOUNCER_DEFAULT_OPTIONS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":38,"character":8},"arguments":["LIVE_ANNOUNCER_DEFAULT_OPTIONS"]},"FocusOrigin":{"__symbolic":"interface"},"FocusOptions":{"__symbolic":"interface"},"FocusMonitorDetectionMode":{"IMMEDIATE":0,"EVENTUAL":1},"FocusMonitorOptions":{"__symbolic":"interface"},"FOCUS_MONITOR_DEFAULT_OPTIONS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":66,"character":8},"arguments":["cdk-focus-monitor-default-options"]},"FocusMonitor":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":85,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":150,"character":7}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":150,"character":19},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":150,"character":26}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":151,"character":7}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":151,"character":19},"arguments":[{"__symbolic":"reference","name":"FOCUS_MONITOR_DEFAULT_OPTIONS"}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":146,"character":23},{"__symbolic":"reference","module":"@angular/cdk/platform","name":"Platform","line":147,"character":25},{"__symbolic":"reference","name":"InputModalityDetector"},{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"any"}]}],"monitor":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"stopMonitoring":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"focusVia":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_getDocument":[{"__symbolic":"method"}],"_getWindow":[{"__symbolic":"method"}],"_toggleClass":[{"__symbolic":"method"}],"_getFocusOrigin":[{"__symbolic":"method"}],"_shouldBeAttributedToTouch":[{"__symbolic":"method"}],"_setClasses":[{"__symbolic":"method"}],"_setOrigin":[{"__symbolic":"method"}],"_onFocus":[{"__symbolic":"method"}],"_onBlur":[{"__symbolic":"method"}],"_emitOrigin":[{"__symbolic":"method"}],"_registerGlobalListeners":[{"__symbolic":"method"}],"_removeGlobalListeners":[{"__symbolic":"method"}],"_originChanged":[{"__symbolic":"method"}],"_getClosestElementsInfo":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"CdkMonitorFocus":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":544,"character":1},"arguments":[{"selector":"[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]"}]}],"members":{"cdkFocusChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":549,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":551,"character":46,"context":{"typeName":"HTMLElement"},"module":"./focus-monitor/focus-monitor"}]},{"__symbolic":"reference","name":"FocusMonitor"}]}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"isFakeMousedownFromScreenReader":{"__symbolic":"function","parameters":["event"],"value":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"event"},"member":"buttons"},"right":0}},"isFakeTouchstartFromScreenReader":{"__symbolic":"function"},"A11yModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":17,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/cdk/platform","name":"PlatformModule","line":18,"character":12},{"__symbolic":"reference","module":"@angular/cdk/observers","name":"ObserversModule","line":18,"character":28}],"declarations":[{"__symbolic":"reference","name":"CdkAriaLive"},{"__symbolic":"reference","name":"CdkTrapFocus"},{"__symbolic":"reference","name":"CdkMonitorFocus"}],"exports":[{"__symbolic":"reference","name":"CdkAriaLive"},{"__symbolic":"reference","name":"CdkTrapFocus"},{"__symbolic":"reference","name":"CdkMonitorFocus"}]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"HighContrastModeDetector"}]}]}},"HighContrastModeDetector":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":40,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":49,"character":44},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":49,"character":51}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/cdk/platform","name":"Platform","line":49,"character":33},{"__symbolic":"reference","name":"any"}]}],"getHighContrastMode":[{"__symbolic":"method"}],"_applyBodyHighContrastModeCssClasses":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"HighContrastMode":{"NONE":0,"BLACK_ON_WHITE":1,"WHITE_ON_BLACK":2},"ɵangular_material_src_cdk_a11y_a11y_a":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":21,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"register":[{"__symbolic":"method"}],"deregister":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}}},"origins":{"RegisteredMessage":"./aria-describer/aria-describer","MESSAGES_CONTAINER_ID":"./aria-describer/aria-describer","CDK_DESCRIBEDBY_ID_PREFIX":"./aria-describer/aria-describer","CDK_DESCRIBEDBY_HOST_ATTRIBUTE":"./aria-describer/aria-describer","AriaDescriber":"./aria-describer/aria-describer","Highlightable":"./key-manager/activedescendant-key-manager","ActiveDescendantKeyManager":"./key-manager/activedescendant-key-manager","FocusableOption":"./key-manager/focus-key-manager","FocusKeyManager":"./key-manager/focus-key-manager","ListKeyManagerOption":"./key-manager/list-key-manager","ListKeyManagerModifierKey":"./key-manager/list-key-manager","ListKeyManager":"./key-manager/list-key-manager","ConfigurableFocusTrap":"./focus-trap/configurable-focus-trap","ConfigurableFocusTrapConfig":"./focus-trap/configurable-focus-trap-config","ConfigurableFocusTrapFactory":"./focus-trap/configurable-focus-trap-factory","EventListenerFocusTrapInertStrategy":"./focus-trap/event-listener-inert-strategy","FocusTrap":"./focus-trap/focus-trap","FocusTrapFactory":"./focus-trap/focus-trap","CdkTrapFocus":"./focus-trap/focus-trap","FOCUS_TRAP_INERT_STRATEGY":"./focus-trap/focus-trap-inert-strategy","FocusTrapInertStrategy":"./focus-trap/focus-trap-inert-strategy","IsFocusableConfig":"./interactivity-checker/interactivity-checker","InteractivityChecker":"./interactivity-checker/interactivity-checker","InputModality":"./input-modality/input-modality-detector","InputModalityDetector":"./input-modality/input-modality-detector","InputModalityDetectorOptions":"./input-modality/input-modality-detector","INPUT_MODALITY_DETECTOR_DEFAULT_OPTIONS":"./input-modality/input-modality-detector","INPUT_MODALITY_DETECTOR_OPTIONS":"./input-modality/input-modality-detector","LiveAnnouncer":"./live-announcer/live-announcer","CdkAriaLive":"./live-announcer/live-announcer","AriaLivePoliteness":"./live-announcer/live-announcer-tokens","LIVE_ANNOUNCER_ELEMENT_TOKEN":"./live-announcer/live-announcer-tokens","LIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY":"./live-announcer/live-announcer-tokens","LiveAnnouncerDefaultOptions":"./live-announcer/live-announcer-tokens","LIVE_ANNOUNCER_DEFAULT_OPTIONS":"./live-announcer/live-announcer-tokens","FocusOrigin":"./focus-monitor/focus-monitor","FocusOptions":"./focus-monitor/focus-monitor","FocusMonitorDetectionMode":"./focus-monitor/focus-monitor","FocusMonitorOptions":"./focus-monitor/focus-monitor","FOCUS_MONITOR_DEFAULT_OPTIONS":"./focus-monitor/focus-monitor","FocusMonitor":"./focus-monitor/focus-monitor","CdkMonitorFocus":"./focus-monitor/focus-monitor","isFakeMousedownFromScreenReader":"./fake-event-detection","isFakeTouchstartFromScreenReader":"./fake-event-detection","A11yModule":"./a11y-module","HighContrastModeDetector":"./high-contrast-mode/high-contrast-mode-detector","HighContrastMode":"./high-contrast-mode/high-contrast-mode-detector","ɵangular_material_src_cdk_a11y_a11y_a":"./focus-trap/focus-trap-manager"},"importAs":"@angular/cdk/a11y"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.io/license
|
|
7
|
+
*/
|
|
8
|
+
import { InjectionToken, OnDestroy, NgZone } from '@angular/core';
|
|
9
|
+
import { Platform } from '@angular/cdk/platform';
|
|
10
|
+
import { Observable } from 'rxjs';
|
|
11
|
+
/**
|
|
12
|
+
* The input modalities detected by this service. Null is used if the input modality is unknown.
|
|
13
|
+
*/
|
|
14
|
+
export declare type InputModality = 'keyboard' | 'mouse' | 'touch' | null;
|
|
15
|
+
/** Options to configure the behavior of the InputModalityDetector. */
|
|
16
|
+
export interface InputModalityDetectorOptions {
|
|
17
|
+
/** Keys to ignore when detecting keyboard input modality. */
|
|
18
|
+
ignoreKeys?: number[];
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Injectable options for the InputModalityDetector. These are shallowly merged with the default
|
|
22
|
+
* options.
|
|
23
|
+
*/
|
|
24
|
+
export declare const INPUT_MODALITY_DETECTOR_OPTIONS: InjectionToken<InputModalityDetectorOptions>;
|
|
25
|
+
/**
|
|
26
|
+
* Default options for the InputModalityDetector.
|
|
27
|
+
*
|
|
28
|
+
* Modifier keys are ignored by default (i.e. when pressed won't cause the service to detect
|
|
29
|
+
* keyboard input modality) for two reasons:
|
|
30
|
+
*
|
|
31
|
+
* 1. Modifier keys are commonly used with mouse to perform actions such as 'right click' or 'open
|
|
32
|
+
* in new tab', and are thus less representative of actual keyboard interaction.
|
|
33
|
+
* 2. VoiceOver triggers some keyboard events when linearly navigating with Control + Option (but
|
|
34
|
+
* confusingly not with Caps Lock). Thus, to have parity with other screen readers, we ignore
|
|
35
|
+
* these keys so as to not update the input modality.
|
|
36
|
+
*
|
|
37
|
+
* Note that we do not by default ignore the right Meta key on Safari because it has the same key
|
|
38
|
+
* code as the ContextMenu key on other browsers. When we switch to using event.key, we can
|
|
39
|
+
* distinguish between the two.
|
|
40
|
+
*/
|
|
41
|
+
export declare const INPUT_MODALITY_DETECTOR_DEFAULT_OPTIONS: InputModalityDetectorOptions;
|
|
42
|
+
/**
|
|
43
|
+
* The amount of time needed to pass after a touchstart event in order for a subsequent mousedown
|
|
44
|
+
* event to be attributed as mouse and not touch.
|
|
45
|
+
*
|
|
46
|
+
* This is the value used by AngularJS Material. Through trial and error (on iPhone 6S) they found
|
|
47
|
+
* that a value of around 650ms seems appropriate.
|
|
48
|
+
*/
|
|
49
|
+
export declare const TOUCH_BUFFER_MS = 650;
|
|
50
|
+
/**
|
|
51
|
+
* Service that detects the user's input modality.
|
|
52
|
+
*
|
|
53
|
+
* This service does not update the input modality when a user navigates with a screen reader
|
|
54
|
+
* (e.g. linear navigation with VoiceOver, object navigation / browse mode with NVDA, virtual PC
|
|
55
|
+
* cursor mode with JAWS). This is in part due to technical limitations (i.e. keyboard events do not
|
|
56
|
+
* fire as expected in these modes) but is also arguably the correct behavior. Navigating with a
|
|
57
|
+
* screen reader is akin to visually scanning a page, and should not be interpreted as actual user
|
|
58
|
+
* input interaction.
|
|
59
|
+
*
|
|
60
|
+
* When a user is not navigating but *interacting* with a screen reader, this service attempts to
|
|
61
|
+
* update the input modality to keyboard, but in general this service's behavior is largely
|
|
62
|
+
* undefined.
|
|
63
|
+
*/
|
|
64
|
+
export declare class InputModalityDetector implements OnDestroy {
|
|
65
|
+
private readonly _platform;
|
|
66
|
+
/** Emits whenever an input modality is detected. */
|
|
67
|
+
readonly modalityDetected: Observable<InputModality>;
|
|
68
|
+
/** Emits when the input modality changes. */
|
|
69
|
+
readonly modalityChanged: Observable<InputModality>;
|
|
70
|
+
/** The most recently detected input modality. */
|
|
71
|
+
get mostRecentModality(): InputModality;
|
|
72
|
+
/**
|
|
73
|
+
* The most recently detected input modality event target. Is null if no input modality has been
|
|
74
|
+
* detected or if the associated event target is null for some unknown reason.
|
|
75
|
+
*/
|
|
76
|
+
_mostRecentTarget: HTMLElement | null;
|
|
77
|
+
/** The underlying BehaviorSubject that emits whenever an input modality is detected. */
|
|
78
|
+
private readonly _modality;
|
|
79
|
+
/** Options for this InputModalityDetector. */
|
|
80
|
+
private readonly _options;
|
|
81
|
+
/**
|
|
82
|
+
* The timestamp of the last touch input modality. Used to determine whether mousedown events
|
|
83
|
+
* should be attributed to mouse or touch.
|
|
84
|
+
*/
|
|
85
|
+
private _lastTouchMs;
|
|
86
|
+
/**
|
|
87
|
+
* Handles keydown events. Must be an arrow function in order to preserve the context when it gets
|
|
88
|
+
* bound.
|
|
89
|
+
*/
|
|
90
|
+
private _onKeydown;
|
|
91
|
+
/**
|
|
92
|
+
* Handles mousedown events. Must be an arrow function in order to preserve the context when it
|
|
93
|
+
* gets bound.
|
|
94
|
+
*/
|
|
95
|
+
private _onMousedown;
|
|
96
|
+
/**
|
|
97
|
+
* Handles touchstart events. Must be an arrow function in order to preserve the context when it
|
|
98
|
+
* gets bound.
|
|
99
|
+
*/
|
|
100
|
+
private _onTouchstart;
|
|
101
|
+
constructor(_platform: Platform, ngZone: NgZone, document: Document, options?: InputModalityDetectorOptions);
|
|
102
|
+
ngOnDestroy(): void;
|
|
103
|
+
}
|
|
104
|
+
/** Gets the target of an event, accounting for Shadow DOM. */
|
|
105
|
+
export declare function getTarget(event: Event): HTMLElement | null;
|
package/a11y/public-api.d.ts
CHANGED
|
@@ -16,6 +16,7 @@ export * from './focus-trap/event-listener-inert-strategy';
|
|
|
16
16
|
export * from './focus-trap/focus-trap';
|
|
17
17
|
export * from './focus-trap/focus-trap-inert-strategy';
|
|
18
18
|
export * from './interactivity-checker/interactivity-checker';
|
|
19
|
+
export { InputModality, InputModalityDetector, InputModalityDetectorOptions, INPUT_MODALITY_DETECTOR_DEFAULT_OPTIONS, INPUT_MODALITY_DETECTOR_OPTIONS, } from './input-modality/input-modality-detector';
|
|
19
20
|
export * from './live-announcer/live-announcer';
|
|
20
21
|
export * from './live-announcer/live-announcer-tokens';
|
|
21
22
|
export * from './focus-monitor/focus-monitor';
|