@angular/cdk 8.2.2 → 8.2.3

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.
Files changed (63) hide show
  1. package/a11y/typings/index.metadata.json +1 -1
  2. package/bundles/cdk-a11y.umd.js +4 -1
  3. package/bundles/cdk-a11y.umd.js.map +1 -1
  4. package/bundles/cdk-a11y.umd.min.js +1 -1
  5. package/bundles/cdk-a11y.umd.min.js.map +1 -1
  6. package/bundles/cdk-drag-drop.umd.js +2 -1
  7. package/bundles/cdk-drag-drop.umd.js.map +1 -1
  8. package/bundles/cdk-drag-drop.umd.min.js +2 -2
  9. package/bundles/cdk-drag-drop.umd.min.js.map +1 -1
  10. package/bundles/cdk-overlay.umd.js +4 -1
  11. package/bundles/cdk-overlay.umd.js.map +1 -1
  12. package/bundles/cdk-overlay.umd.min.js +1 -1
  13. package/bundles/cdk-overlay.umd.min.js.map +1 -1
  14. package/bundles/cdk-stepper.umd.js +46 -40
  15. package/bundles/cdk-stepper.umd.js.map +1 -1
  16. package/bundles/cdk-stepper.umd.min.js +1 -1
  17. package/bundles/cdk-stepper.umd.min.js.map +1 -1
  18. package/bundles/cdk-testing.umd.js +2 -1
  19. package/bundles/cdk-testing.umd.js.map +1 -1
  20. package/bundles/cdk-testing.umd.min.js.map +1 -1
  21. package/bundles/cdk.umd.js +1 -1
  22. package/bundles/cdk.umd.js.map +1 -1
  23. package/bundles/cdk.umd.min.js +1 -1
  24. package/bundles/cdk.umd.min.js.map +1 -1
  25. package/esm2015/a11y.js +4 -1
  26. package/esm2015/a11y.js.map +1 -1
  27. package/esm2015/cdk.js +1 -1
  28. package/esm2015/cdk.js.map +1 -1
  29. package/esm2015/drag-drop.js +2 -1
  30. package/esm2015/drag-drop.js.map +1 -1
  31. package/esm2015/overlay.js +4 -1
  32. package/esm2015/overlay.js.map +1 -1
  33. package/esm2015/stepper.js +51 -45
  34. package/esm2015/stepper.js.map +1 -1
  35. package/esm2015/testing.js +2 -1
  36. package/esm2015/testing.js.map +1 -1
  37. package/esm5/a11y.es5.js +4 -1
  38. package/esm5/a11y.es5.js.map +1 -1
  39. package/esm5/cdk.es5.js +1 -1
  40. package/esm5/cdk.es5.js.map +1 -1
  41. package/esm5/drag-drop.es5.js +2 -1
  42. package/esm5/drag-drop.es5.js.map +1 -1
  43. package/esm5/overlay.es5.js +4 -1
  44. package/esm5/overlay.es5.js.map +1 -1
  45. package/esm5/stepper.es5.js +49 -43
  46. package/esm5/stepper.es5.js.map +1 -1
  47. package/esm5/testing.es5.js +2 -1
  48. package/esm5/testing.es5.js.map +1 -1
  49. package/package.json +3 -3
  50. package/schematics/ng-update/test-cases/misc/global-stylesheets-test.css +1 -0
  51. package/schematics/tsconfig.tsbuildinfo +2894 -2894
  52. package/schematics/update-tool/index.js +9 -5
  53. package/schematics/update-tool/index.js.map +1 -1
  54. package/stepper/typings/index.metadata.json +1 -1
  55. package/stepper/typings/stepper.d.ts +3 -3
  56. package/typings/a11y/index.metadata.json +1 -1
  57. package/typings/esm5/a11y/index.metadata.json +1 -1
  58. package/typings/esm5/index.metadata.json +1 -1
  59. package/typings/esm5/stepper/index.metadata.json +1 -1
  60. package/typings/esm5/stepper/stepper.d.ts +3 -3
  61. package/typings/index.metadata.json +1 -1
  62. package/typings/stepper/index.metadata.json +1 -1
  63. package/typings/stepper/stepper.d.ts +3 -3
@@ -5,35 +5,15 @@
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
- import { Directive, TemplateRef, ElementRef, ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, ContentChildren, EventEmitter, forwardRef, Inject, Input, Optional, Output, ViewChild, ViewEncapsulation, InjectionToken, HostListener, NgModule } from '@angular/core';
8
+ import { Directive, ElementRef, TemplateRef, ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, ContentChildren, EventEmitter, forwardRef, Inject, InjectionToken, Input, Optional, Output, ViewChild, ViewEncapsulation, HostListener, NgModule } from '@angular/core';
9
9
  import { FocusKeyManager } from '@angular/cdk/a11y';
10
10
  import { Directionality, BidiModule } from '@angular/cdk/bidi';
11
11
  import { coerceBooleanProperty, coerceNumberProperty } from '@angular/cdk/coercion';
12
- import { END, ENTER, HOME, SPACE, hasModifierKey } from '@angular/cdk/keycodes';
12
+ import { END, ENTER, hasModifierKey, HOME, SPACE } from '@angular/cdk/keycodes';
13
13
  import { DOCUMENT, CommonModule } from '@angular/common';
14
- import { Subject, of } from 'rxjs';
14
+ import { of, Subject } from 'rxjs';
15
15
  import { startWith, takeUntil } from 'rxjs/operators';
16
16
 
17
- /**
18
- * @fileoverview added by tsickle
19
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
20
- */
21
- var CdkStepLabel = /** @class */ (function () {
22
- function CdkStepLabel(/** @docs-private */ template) {
23
- this.template = template;
24
- }
25
- CdkStepLabel.decorators = [
26
- { type: Directive, args: [{
27
- selector: '[cdkStepLabel]',
28
- },] },
29
- ];
30
- /** @nocollapse */
31
- CdkStepLabel.ctorParameters = function () { return [
32
- { type: TemplateRef }
33
- ]; };
34
- return CdkStepLabel;
35
- }());
36
-
37
17
  /**
38
18
  * @fileoverview added by tsickle
39
19
  * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
@@ -69,6 +49,26 @@ var CdkStepHeader = /** @class */ (function () {
69
49
  return CdkStepHeader;
70
50
  }());
71
51
 
52
+ /**
53
+ * @fileoverview added by tsickle
54
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
55
+ */
56
+ var CdkStepLabel = /** @class */ (function () {
57
+ function CdkStepLabel(/** @docs-private */ template) {
58
+ this.template = template;
59
+ }
60
+ CdkStepLabel.decorators = [
61
+ { type: Directive, args: [{
62
+ selector: '[cdkStepLabel]',
63
+ },] },
64
+ ];
65
+ /** @nocollapse */
66
+ CdkStepLabel.ctorParameters = function () { return [
67
+ { type: TemplateRef }
68
+ ]; };
69
+ return CdkStepLabel;
70
+ }());
71
+
72
72
  /**
73
73
  * @fileoverview added by tsickle
74
74
  * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
@@ -121,7 +121,7 @@ var CdkStep = /** @class */ (function () {
121
121
  this.interacted = false;
122
122
  this._editable = true;
123
123
  this._optional = false;
124
- this._customCompleted = null;
124
+ this._completedOverride = null;
125
125
  this._customError = null;
126
126
  this._stepperOptions = stepperOptions ? stepperOptions : {};
127
127
  this._displayDefaultIndicatorType = this._stepperOptions.displayDefaultIndicatorType !== false;
@@ -133,7 +133,9 @@ var CdkStep = /** @class */ (function () {
133
133
  * Whether the user can return to this step once it has been marked as completed.
134
134
  * @return {?}
135
135
  */
136
- function () { return this._editable; },
136
+ function () {
137
+ return this._editable;
138
+ },
137
139
  set: /**
138
140
  * @param {?} value
139
141
  * @return {?}
@@ -150,7 +152,9 @@ var CdkStep = /** @class */ (function () {
150
152
  * Whether the completion of step is optional.
151
153
  * @return {?}
152
154
  */
153
- function () { return this._optional; },
155
+ function () {
156
+ return this._optional;
157
+ },
154
158
  set: /**
155
159
  * @param {?} value
156
160
  * @return {?}
@@ -168,14 +172,14 @@ var CdkStep = /** @class */ (function () {
168
172
  * @return {?}
169
173
  */
170
174
  function () {
171
- return this._customCompleted == null ? this._getDefaultCompleted() : this._customCompleted;
175
+ return this._completedOverride == null ? this._getDefaultCompleted() : this._completedOverride;
172
176
  },
173
177
  set: /**
174
178
  * @param {?} value
175
179
  * @return {?}
176
180
  */
177
181
  function (value) {
178
- this._customCompleted = coerceBooleanProperty(value);
182
+ this._completedOverride = coerceBooleanProperty(value);
179
183
  },
180
184
  enumerable: true,
181
185
  configurable: true
@@ -244,8 +248,8 @@ var CdkStep = /** @class */ (function () {
244
248
  */
245
249
  function () {
246
250
  this.interacted = false;
247
- if (this._customCompleted != null) {
248
- this._customCompleted = false;
251
+ if (this._completedOverride != null) {
252
+ this._completedOverride = false;
249
253
  }
250
254
  if (this._customError != null) {
251
255
  this._customError = false;
@@ -334,12 +338,16 @@ var CdkStepper = /** @class */ (function () {
334
338
  * Whether the validity of previous steps should be checked or not.
335
339
  * @return {?}
336
340
  */
337
- function () { return this._linear; },
341
+ function () {
342
+ return this._linear;
343
+ },
338
344
  set: /**
339
345
  * @param {?} value
340
346
  * @return {?}
341
347
  */
342
- function (value) { this._linear = coerceBooleanProperty(value); },
348
+ function (value) {
349
+ this._linear = coerceBooleanProperty(value);
350
+ },
343
351
  enumerable: true,
344
352
  configurable: true
345
353
  });
@@ -349,7 +357,9 @@ var CdkStepper = /** @class */ (function () {
349
357
  * The index of the selected step.
350
358
  * @return {?}
351
359
  */
352
- function () { return this._selectedIndex; },
360
+ function () {
361
+ return this._selectedIndex;
362
+ },
353
363
  set: /**
354
364
  * @param {?} index
355
365
  * @return {?}
@@ -362,8 +372,7 @@ var CdkStepper = /** @class */ (function () {
362
372
  if (newIndex < 0 || newIndex > this.steps.length - 1) {
363
373
  throw Error('cdkStepper: Cannot assign out-of-bounds value to `selectedIndex`.');
364
374
  }
365
- if (this._selectedIndex != newIndex &&
366
- !this._anyControlsInvalidOrPending(newIndex) &&
375
+ if (this._selectedIndex != newIndex && !this._anyControlsInvalidOrPending(newIndex) &&
367
376
  (newIndex >= this._selectedIndex || this.steps.toArray()[newIndex].editable)) {
368
377
  this._updateSelectedItemIndex(index);
369
378
  }
@@ -409,7 +418,7 @@ var CdkStepper = /** @class */ (function () {
409
418
  this._keyManager = new FocusKeyManager(this._stepHeader)
410
419
  .withWrap()
411
420
  .withVerticalOrientation(this._orientation === 'vertical');
412
- (this._dir ? (/** @type {?} */ (this._dir.change)) : of())
421
+ (this._dir ? ((/** @type {?} */ (this._dir.change))) : of())
413
422
  .pipe(startWith(this._layoutDirection()), takeUntil(this._destroyed))
414
423
  .subscribe((/**
415
424
  * @param {?} direction
@@ -559,9 +568,8 @@ var CdkStepper = /** @class */ (function () {
559
568
  var step = this.steps.toArray()[index];
560
569
  /** @type {?} */
561
570
  var isCurrentStep = this._isCurrentStep(index);
562
- return step._displayDefaultIndicatorType
563
- ? this._getDefaultIndicatorLogic(step, isCurrentStep)
564
- : this._getGuidelineLogic(step, isCurrentStep, state);
571
+ return step._displayDefaultIndicatorType ? this._getDefaultIndicatorLogic(step, isCurrentStep) :
572
+ this._getGuidelineLogic(step, isCurrentStep, state);
565
573
  };
566
574
  /**
567
575
  * @private
@@ -726,10 +734,8 @@ var CdkStepper = /** @class */ (function () {
726
734
  /** @type {?} */
727
735
  var control = step.stepControl;
728
736
  /** @type {?} */
729
- var isIncomplete = control ?
730
- (control.invalid || control.pending || !step.interacted) :
731
- !step.completed;
732
- return isIncomplete && !step.optional;
737
+ var isIncomplete = control ? (control.invalid || control.pending || !step.interacted) : !step.completed;
738
+ return isIncomplete && !step.optional && !step._completedOverride;
733
739
  }));
734
740
  }
735
741
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"stepper.es5.js","sources":["../../../src/cdk/stepper/stepper-module.ts","../../../src/cdk/stepper/stepper-button.ts","../../../src/cdk/stepper/stepper.ts","../../../src/cdk/stepper/step-header.ts","../../../src/cdk/stepper/step-label.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.io/license\n */\n\nimport {NgModule} from '@angular/core';\nimport {CdkStepper, CdkStep} from './stepper';\nimport {CommonModule} from '@angular/common';\nimport {CdkStepLabel} from './step-label';\nimport {CdkStepperNext, CdkStepperPrevious} from './stepper-button';\nimport {CdkStepHeader} from './step-header';\nimport {BidiModule} from '@angular/cdk/bidi';\n\n@NgModule({\n imports: [BidiModule, CommonModule],\n exports: [\n CdkStep,\n CdkStepper,\n CdkStepHeader,\n CdkStepLabel,\n CdkStepperNext,\n CdkStepperPrevious,\n ],\n declarations: [\n CdkStep,\n CdkStepper,\n CdkStepHeader,\n CdkStepLabel,\n CdkStepperNext,\n CdkStepperPrevious,\n ]\n})\nexport class CdkStepperModule {}\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.io/license\n */\n\nimport {Directive, HostListener, Input} from '@angular/core';\n\nimport {CdkStepper} from './stepper';\n\n/** Button that moves to the next step in a stepper workflow. */\n@Directive({\n selector: 'button[cdkStepperNext]',\n host: {\n '[type]': 'type',\n }\n})\nexport class CdkStepperNext {\n /** Type of the next button. Defaults to \"submit\" if not specified. */\n @Input() type: string = 'submit';\n\n constructor(public _stepper: CdkStepper) {}\n\n // We have to use a `HostListener` here in order to support both Ivy and ViewEngine.\n // In Ivy the `host` bindings will be merged when this class is extended, whereas in\n // ViewEngine they're overwritten.\n // TODO(crisbeto): we move this back into `host` once Ivy is turned on by default.\n // tslint:disable-next-line:no-host-decorator-in-concrete\n @HostListener('click')\n _handleClick() {\n this._stepper.next();\n }\n}\n\n/** Button that moves to the previous step in a stepper workflow. */\n@Directive({\n selector: 'button[cdkStepperPrevious]',\n host: {\n '[type]': 'type',\n }\n})\nexport class CdkStepperPrevious {\n /** Type of the previous button. Defaults to \"button\" if not specified. */\n @Input() type: string = 'button';\n\n constructor(public _stepper: CdkStepper) {}\n\n // We have to use a `HostListener` here in order to support both Ivy and ViewEngine.\n // In Ivy the `host` bindings will be merged when this class is extended, whereas in\n // ViewEngine they're overwritten.\n // TODO(crisbeto): we move this back into `host` once Ivy is turned on by default.\n // tslint:disable-next-line:no-host-decorator-in-concrete\n @HostListener('click')\n _handleClick() {\n this._stepper.previous();\n }\n}\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.io/license\n */\n\nimport {FocusableOption, FocusKeyManager} from '@angular/cdk/a11y';\nimport {Direction, Directionality} from '@angular/cdk/bidi';\nimport {coerceBooleanProperty, coerceNumberProperty} from '@angular/cdk/coercion';\nimport {END, ENTER, HOME, SPACE, hasModifierKey} from '@angular/cdk/keycodes';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n Directive,\n EventEmitter,\n ElementRef,\n forwardRef,\n Inject,\n Input,\n OnChanges,\n OnDestroy,\n Optional,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n InjectionToken,\n} from '@angular/core';\nimport {DOCUMENT} from '@angular/common';\nimport {CdkStepLabel} from './step-label';\nimport {Observable, Subject, of as obaservableOf} from 'rxjs';\nimport {startWith, takeUntil} from 'rxjs/operators';\nimport {CdkStepHeader} from './step-header';\n\n/** Used to generate unique ID for each stepper component. */\nlet nextId = 0;\n\n/**\n * Position state of the content of each step in stepper that is used for transitioning\n * the content into correct position upon step selection change.\n */\nexport type StepContentPositionState = 'previous' | 'current' | 'next';\n\n/** Possible orientation of a stepper. */\nexport type StepperOrientation = 'horizontal' | 'vertical';\n\n/** Change event emitted on selection changes. */\nexport class StepperSelectionEvent {\n /** Index of the step now selected. */\n selectedIndex: number;\n\n /** Index of the step previously selected. */\n previouslySelectedIndex: number;\n\n /** The step instance now selected. */\n selectedStep: CdkStep;\n\n /** The step instance previously selected. */\n previouslySelectedStep: CdkStep;\n}\n\n/** The state of each step. */\nexport type StepState = 'number' | 'edit' | 'done' | 'error' | string;\n\n/** Enum to represent the different states of the steps. */\nexport const STEP_STATE = {\n NUMBER: 'number',\n EDIT: 'edit',\n DONE: 'done',\n ERROR: 'error'\n};\n\n/** InjectionToken that can be used to specify the global stepper options. */\nexport const STEPPER_GLOBAL_OPTIONS =\n new InjectionToken<StepperOptions>('STEPPER_GLOBAL_OPTIONS');\n\n/**\n * InjectionToken that can be used to specify the global stepper options.\n * @deprecated Use `STEPPER_GLOBAL_OPTIONS` instead.\n * @breaking-change 8.0.0.\n */\nexport const MAT_STEPPER_GLOBAL_OPTIONS = STEPPER_GLOBAL_OPTIONS;\n\n/** Configurable options for stepper. */\nexport interface StepperOptions {\n /**\n * Whether the stepper should display an error state or not.\n * Default behavior is assumed to be false.\n */\n showError?: boolean;\n\n /**\n * Whether the stepper should display the default indicator type\n * or not.\n * Default behavior is assumed to be true.\n */\n displayDefaultIndicatorType?: boolean;\n}\n\n@Component({\n moduleId: module.id,\n selector: 'cdk-step',\n exportAs: 'cdkStep',\n template: '<ng-template><ng-content></ng-content></ng-template>',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CdkStep implements OnChanges {\n private _stepperOptions: StepperOptions;\n _showError: boolean;\n _displayDefaultIndicatorType: boolean;\n\n /** Template for step label if it exists. */\n @ContentChild(CdkStepLabel, {static: false}) stepLabel: CdkStepLabel;\n\n /** Template for step content. */\n @ViewChild(TemplateRef, {static: true}) content: TemplateRef<any>;\n\n /** The top level abstract control of the step. */\n @Input() stepControl: FormControlLike;\n\n /** Whether user has seen the expanded step content or not. */\n interacted = false;\n\n /** Plain text label of the step. */\n @Input() label: string;\n\n /** Error message to display when there's an error. */\n @Input() errorMessage: string;\n\n /** Aria label for the tab. */\n @Input('aria-label') ariaLabel: string;\n\n /**\n * Reference to the element that the tab is labelled by.\n * Will be cleared if `aria-label` is set at the same time.\n */\n @Input('aria-labelledby') ariaLabelledby: string;\n\n /** State of the step. */\n @Input() state: StepState;\n\n /** Whether the user can return to this step once it has been marked as completed. */\n @Input()\n get editable(): boolean { return this._editable; }\n set editable(value: boolean) {\n this._editable = coerceBooleanProperty(value);\n }\n private _editable = true;\n\n /** Whether the completion of step is optional. */\n @Input()\n get optional(): boolean { return this._optional; }\n set optional(value: boolean) {\n this._optional = coerceBooleanProperty(value);\n }\n private _optional = false;\n\n /** Whether step is marked as completed. */\n @Input()\n get completed(): boolean {\n return this._customCompleted == null ? this._getDefaultCompleted() : this._customCompleted;\n }\n set completed(value: boolean) {\n this._customCompleted = coerceBooleanProperty(value);\n }\n private _customCompleted: boolean | null = null;\n\n private _getDefaultCompleted() {\n return this.stepControl ? this.stepControl.valid && this.interacted : this.interacted;\n }\n\n /** Whether step has an error. */\n @Input()\n get hasError(): boolean {\n return this._customError == null ? this._getDefaultError() : this._customError;\n }\n set hasError(value: boolean) {\n this._customError = coerceBooleanProperty(value);\n }\n private _customError: boolean | null = null;\n\n private _getDefaultError() {\n return this.stepControl && this.stepControl.invalid && this.interacted;\n }\n\n /** @breaking-change 8.0.0 remove the `?` after `stepperOptions` */\n constructor(\n @Inject(forwardRef(() => CdkStepper)) private _stepper: CdkStepper,\n @Optional() @Inject(STEPPER_GLOBAL_OPTIONS) stepperOptions?: StepperOptions) {\n this._stepperOptions = stepperOptions ? stepperOptions : {};\n this._displayDefaultIndicatorType = this._stepperOptions.displayDefaultIndicatorType !== false;\n this._showError = !!this._stepperOptions.showError;\n }\n\n /** Selects this step component. */\n select(): void {\n this._stepper.selected = this;\n }\n\n /** Resets the step to its initial state. Note that this includes resetting form data. */\n reset(): void {\n this.interacted = false;\n\n if (this._customCompleted != null) {\n this._customCompleted = false;\n }\n\n if (this._customError != null) {\n this._customError = false;\n }\n\n if (this.stepControl) {\n this.stepControl.reset();\n }\n }\n\n ngOnChanges() {\n // Since basically all inputs of the MatStep get proxied through the view down to the\n // underlying MatStepHeader, we have to make sure that change detection runs correctly.\n this._stepper._stateChanged();\n }\n}\n\n@Directive({\n selector: '[cdkStepper]',\n exportAs: 'cdkStepper',\n})\nexport class CdkStepper implements AfterViewInit, OnDestroy {\n /** Emits when the component is destroyed. */\n protected _destroyed = new Subject<void>();\n\n /** Used for managing keyboard focus. */\n private _keyManager: FocusKeyManager<FocusableOption>;\n\n /**\n * @breaking-change 8.0.0 Remove `| undefined` once the `_document`\n * constructor param is required.\n */\n private _document: Document | undefined;\n\n /**\n * The list of step components that the stepper is holding.\n * @deprecated use `steps` instead\n * @breaking-change 9.0.0 remove this property\n */\n @ContentChildren(CdkStep) _steps: QueryList<CdkStep>;\n\n /** The list of step components that the stepper is holding. */\n get steps(): QueryList<CdkStep> {\n return this._steps;\n }\n\n /**\n * The list of step headers of the steps in the stepper.\n * @deprecated Type to be changed to `QueryList<CdkStepHeader>`.\n * @breaking-change 8.0.0\n */\n @ContentChildren(CdkStepHeader) _stepHeader: QueryList<FocusableOption>;\n\n /** Whether the validity of previous steps should be checked or not. */\n @Input()\n get linear(): boolean { return this._linear; }\n set linear(value: boolean) { this._linear = coerceBooleanProperty(value); }\n private _linear = false;\n\n /** The index of the selected step. */\n @Input()\n get selectedIndex() { return this._selectedIndex; }\n set selectedIndex(index: number) {\n const newIndex = coerceNumberProperty(index);\n\n if (this.steps) {\n // Ensure that the index can't be out of bounds.\n if (newIndex < 0 || newIndex > this.steps.length - 1) {\n throw Error('cdkStepper: Cannot assign out-of-bounds value to `selectedIndex`.');\n }\n\n if (this._selectedIndex != newIndex &&\n !this._anyControlsInvalidOrPending(newIndex) &&\n (newIndex >= this._selectedIndex || this.steps.toArray()[newIndex].editable)) {\n this._updateSelectedItemIndex(index);\n }\n } else {\n this._selectedIndex = newIndex;\n }\n }\n private _selectedIndex = 0;\n\n /** The step that is selected. */\n @Input()\n get selected(): CdkStep {\n // @breaking-change 8.0.0 Change return type to `CdkStep | undefined`.\n return this.steps ? this.steps.toArray()[this.selectedIndex] : undefined!;\n }\n set selected(step: CdkStep) {\n this.selectedIndex = this.steps ? this.steps.toArray().indexOf(step) : -1;\n }\n\n /** Event emitted when the selected step has changed. */\n @Output() selectionChange: EventEmitter<StepperSelectionEvent>\n = new EventEmitter<StepperSelectionEvent>();\n\n /** Used to track unique ID for each stepper component. */\n _groupId: number;\n\n protected _orientation: StepperOrientation = 'horizontal';\n\n constructor(\n @Optional() private _dir: Directionality,\n private _changeDetectorRef: ChangeDetectorRef,\n // @breaking-change 8.0.0 `_elementRef` and `_document` parameters to become required.\n private _elementRef?: ElementRef<HTMLElement>,\n @Inject(DOCUMENT) _document?: any) {\n this._groupId = nextId++;\n this._document = _document;\n }\n\n ngAfterViewInit() {\n // Note that while the step headers are content children by default, any components that\n // extend this one might have them as view chidren. We initialize the keyboard handling in\n // AfterViewInit so we're guaranteed for both view and content children to be defined.\n this._keyManager = new FocusKeyManager<FocusableOption>(this._stepHeader)\n .withWrap()\n .withVerticalOrientation(this._orientation === 'vertical');\n\n (this._dir ? this._dir.change as Observable<Direction> : obaservableOf<Direction>())\n .pipe(startWith(this._layoutDirection()), takeUntil(this._destroyed))\n .subscribe(direction => this._keyManager.withHorizontalOrientation(direction));\n\n this._keyManager.updateActiveItemIndex(this._selectedIndex);\n\n this.steps.changes.pipe(takeUntil(this._destroyed)).subscribe(() => {\n if (!this.selected) {\n this._selectedIndex = Math.max(this._selectedIndex - 1, 0);\n }\n });\n }\n\n ngOnDestroy() {\n this._destroyed.next();\n this._destroyed.complete();\n }\n\n /** Selects and focuses the next step in list. */\n next(): void {\n this.selectedIndex = Math.min(this._selectedIndex + 1, this.steps.length - 1);\n }\n\n /** Selects and focuses the previous step in list. */\n previous(): void {\n this.selectedIndex = Math.max(this._selectedIndex - 1, 0);\n }\n\n /** Resets the stepper to its initial state. Note that this includes clearing form data. */\n reset(): void {\n this._updateSelectedItemIndex(0);\n this.steps.forEach(step => step.reset());\n this._stateChanged();\n }\n\n /** Returns a unique id for each step label element. */\n _getStepLabelId(i: number): string {\n return `cdk-step-label-${this._groupId}-${i}`;\n }\n\n /** Returns unique id for each step content element. */\n _getStepContentId(i: number): string {\n return `cdk-step-content-${this._groupId}-${i}`;\n }\n\n /** Marks the component to be change detected. */\n _stateChanged() {\n this._changeDetectorRef.markForCheck();\n }\n\n /** Returns position state of the step with the given index. */\n _getAnimationDirection(index: number): StepContentPositionState {\n const position = index - this._selectedIndex;\n if (position < 0) {\n return this._layoutDirection() === 'rtl' ? 'next' : 'previous';\n } else if (position > 0) {\n return this._layoutDirection() === 'rtl' ? 'previous' : 'next';\n }\n return 'current';\n }\n\n /** Returns the type of icon to be displayed. */\n _getIndicatorType(index: number, state: StepState = STEP_STATE.NUMBER): StepState {\n const step = this.steps.toArray()[index];\n const isCurrentStep = this._isCurrentStep(index);\n\n return step._displayDefaultIndicatorType\n ? this._getDefaultIndicatorLogic(step, isCurrentStep)\n : this._getGuidelineLogic(step, isCurrentStep, state);\n }\n\n private _getDefaultIndicatorLogic(step: CdkStep, isCurrentStep: boolean): StepState {\n if (step._showError && step.hasError && !isCurrentStep) {\n return STEP_STATE.ERROR;\n } else if (!step.completed || isCurrentStep) {\n return STEP_STATE.NUMBER;\n } else {\n return step.editable ? STEP_STATE.EDIT : STEP_STATE.DONE;\n }\n }\n\n private _getGuidelineLogic(\n step: CdkStep,\n isCurrentStep: boolean,\n state: StepState = STEP_STATE.NUMBER): StepState {\n if (step._showError && step.hasError && !isCurrentStep) {\n return STEP_STATE.ERROR;\n } else if (step.completed && !isCurrentStep) {\n return STEP_STATE.DONE;\n } else if (step.completed && isCurrentStep) {\n return state;\n } else if (step.editable && isCurrentStep) {\n return STEP_STATE.EDIT;\n } else {\n return state;\n }\n }\n\n private _isCurrentStep(index: number) {\n return this._selectedIndex === index;\n }\n\n /** Returns the index of the currently-focused step header. */\n _getFocusIndex() {\n return this._keyManager ? this._keyManager.activeItemIndex : this._selectedIndex;\n }\n\n private _updateSelectedItemIndex(newIndex: number): void {\n const stepsArray = this.steps.toArray();\n this.selectionChange.emit({\n selectedIndex: newIndex,\n previouslySelectedIndex: this._selectedIndex,\n selectedStep: stepsArray[newIndex],\n previouslySelectedStep: stepsArray[this._selectedIndex],\n });\n\n // If focus is inside the stepper, move it to the next header, otherwise it may become\n // lost when the active step content is hidden. We can't be more granular with the check\n // (e.g. checking whether focus is inside the active step), because we don't have a\n // reference to the elements that are rendering out the content.\n this._containsFocus() ? this._keyManager.setActiveItem(newIndex) :\n this._keyManager.updateActiveItemIndex(newIndex);\n\n this._selectedIndex = newIndex;\n this._stateChanged();\n }\n\n _onKeydown(event: KeyboardEvent) {\n const hasModifier = hasModifierKey(event);\n const keyCode = event.keyCode;\n const manager = this._keyManager;\n\n if (manager.activeItemIndex != null && !hasModifier &&\n (keyCode === SPACE || keyCode === ENTER)) {\n this.selectedIndex = manager.activeItemIndex;\n event.preventDefault();\n } else if (keyCode === HOME) {\n manager.setFirstItemActive();\n event.preventDefault();\n } else if (keyCode === END) {\n manager.setLastItemActive();\n event.preventDefault();\n } else {\n manager.onKeydown(event);\n }\n }\n\n private _anyControlsInvalidOrPending(index: number): boolean {\n const steps = this.steps.toArray();\n\n steps[this._selectedIndex].interacted = true;\n\n if (this._linear && index >= 0) {\n return steps.slice(0, index).some(step => {\n const control = step.stepControl;\n const isIncomplete = control ?\n (control.invalid || control.pending || !step.interacted) :\n !step.completed;\n return isIncomplete && !step.optional;\n });\n }\n\n return false;\n }\n\n private _layoutDirection(): Direction {\n return this._dir && this._dir.value === 'rtl' ? 'rtl' : 'ltr';\n }\n\n /** Checks whether the stepper contains the focused element. */\n private _containsFocus(): boolean {\n if (!this._document || !this._elementRef) {\n return false;\n }\n\n const stepperElement = this._elementRef.nativeElement;\n const focusedElement = this._document.activeElement;\n return stepperElement === focusedElement || stepperElement.contains(focusedElement);\n }\n}\n\n\n/**\n * Simplified representation of a FormControl from @angular/forms.\n * Used to avoid having to bring in @angular/forms for a single optional interface.\n * @docs-private\n */\ninterface FormControlLike {\n asyncValidator: () => any | null;\n dirty: boolean;\n disabled: boolean;\n enabled: boolean;\n errors: {[key: string]: any} | null;\n invalid: boolean;\n parent: any;\n pending: boolean;\n pristine: boolean;\n root: FormControlLike;\n status: string;\n statusChanges: Observable<any>;\n touched: boolean;\n untouched: boolean;\n updateOn: any;\n valid: boolean;\n validator: () => any | null;\n value: any;\n valueChanges: Observable<any>;\n clearAsyncValidators(): void;\n clearValidators(): void;\n disable(opts?: any): void;\n enable(opts?: any): void;\n get(path: (string | number)[] | string): FormControlLike | null;\n getError(errorCode: string, path?: (string | number)[] | string): any;\n hasError(errorCode: string, path?: (string | number)[] | string): boolean;\n markAllAsTouched(): void;\n markAsDirty(opts?: any): void;\n markAsPending(opts?: any): void;\n markAsPristine(opts?: any): void;\n markAsTouched(opts?: any): void;\n markAsUntouched(opts?: any): void;\n patchValue(value: any, options?: Object): void;\n reset(value?: any, options?: Object): void;\n setAsyncValidators(newValidator: () => any | (() => any)[] | null): void;\n setErrors(errors: {[key: string]: any} | null, opts?: any): void;\n setParent(parent: any): void;\n setValidators(newValidator: () => any | (() => any)[] | null): void;\n setValue(value: any, options?: Object): void;\n updateValueAndValidity(opts?: any): void;\n patchValue(value: any, options?: any): void;\n registerOnChange(fn: Function): void;\n registerOnDisabledChange(fn: (isDisabled: boolean) => void): void;\n reset(formState?: any, options?: any): void;\n setValue(value: any, options?: any): void;\n}\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.io/license\n */\n\nimport {Directive, ElementRef} from '@angular/core';\nimport {FocusableOption} from '@angular/cdk/a11y';\n\n\n@Directive({\n selector: '[cdkStepHeader]',\n host: {\n 'role': 'tab',\n },\n})\nexport class CdkStepHeader implements FocusableOption {\n constructor(protected _elementRef: ElementRef<HTMLElement>) {}\n\n /** Focuses the step header. */\n focus() {\n this._elementRef.nativeElement.focus();\n }\n}\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.io/license\n */\n\nimport {Directive, TemplateRef} from '@angular/core';\n\n@Directive({\n selector: '[cdkStepLabel]',\n})\nexport class CdkStepLabel {\n constructor(/** @docs-private */ public template: TemplateRef<any>) { }\n}\n"],"names":["obaservableOf"],"mappings":"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"}
1
+ {"version":3,"file":"stepper.es5.js","sources":["../../../src/cdk/stepper/stepper-module.ts","../../../src/cdk/stepper/stepper-button.ts","../../../src/cdk/stepper/stepper.ts","../../../src/cdk/stepper/step-label.ts","../../../src/cdk/stepper/step-header.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.io/license\n */\n\nimport {NgModule} from '@angular/core';\nimport {CdkStepper, CdkStep} from './stepper';\nimport {CommonModule} from '@angular/common';\nimport {CdkStepLabel} from './step-label';\nimport {CdkStepperNext, CdkStepperPrevious} from './stepper-button';\nimport {CdkStepHeader} from './step-header';\nimport {BidiModule} from '@angular/cdk/bidi';\n\n@NgModule({\n imports: [BidiModule, CommonModule],\n exports: [\n CdkStep,\n CdkStepper,\n CdkStepHeader,\n CdkStepLabel,\n CdkStepperNext,\n CdkStepperPrevious,\n ],\n declarations: [\n CdkStep,\n CdkStepper,\n CdkStepHeader,\n CdkStepLabel,\n CdkStepperNext,\n CdkStepperPrevious,\n ]\n})\nexport class CdkStepperModule {}\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.io/license\n */\n\nimport {Directive, HostListener, Input} from '@angular/core';\n\nimport {CdkStepper} from './stepper';\n\n/** Button that moves to the next step in a stepper workflow. */\n@Directive({\n selector: 'button[cdkStepperNext]',\n host: {\n '[type]': 'type',\n }\n})\nexport class CdkStepperNext {\n /** Type of the next button. Defaults to \"submit\" if not specified. */\n @Input() type: string = 'submit';\n\n constructor(public _stepper: CdkStepper) {}\n\n // We have to use a `HostListener` here in order to support both Ivy and ViewEngine.\n // In Ivy the `host` bindings will be merged when this class is extended, whereas in\n // ViewEngine they're overwritten.\n // TODO(crisbeto): we move this back into `host` once Ivy is turned on by default.\n // tslint:disable-next-line:no-host-decorator-in-concrete\n @HostListener('click')\n _handleClick() {\n this._stepper.next();\n }\n}\n\n/** Button that moves to the previous step in a stepper workflow. */\n@Directive({\n selector: 'button[cdkStepperPrevious]',\n host: {\n '[type]': 'type',\n }\n})\nexport class CdkStepperPrevious {\n /** Type of the previous button. Defaults to \"button\" if not specified. */\n @Input() type: string = 'button';\n\n constructor(public _stepper: CdkStepper) {}\n\n // We have to use a `HostListener` here in order to support both Ivy and ViewEngine.\n // In Ivy the `host` bindings will be merged when this class is extended, whereas in\n // ViewEngine they're overwritten.\n // TODO(crisbeto): we move this back into `host` once Ivy is turned on by default.\n // tslint:disable-next-line:no-host-decorator-in-concrete\n @HostListener('click')\n _handleClick() {\n this._stepper.previous();\n }\n}\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.io/license\n */\n\nimport {FocusableOption, FocusKeyManager} from '@angular/cdk/a11y';\nimport {Direction, Directionality} from '@angular/cdk/bidi';\nimport {coerceBooleanProperty, coerceNumberProperty} from '@angular/cdk/coercion';\nimport {END, ENTER, hasModifierKey, HOME, SPACE} from '@angular/cdk/keycodes';\nimport {DOCUMENT} from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n Directive,\n ElementRef,\n EventEmitter,\n forwardRef,\n Inject,\n InjectionToken,\n Input,\n OnChanges,\n OnDestroy,\n Optional,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport {Observable, of as obaservableOf, Subject} from 'rxjs';\nimport {startWith, takeUntil} from 'rxjs/operators';\n\nimport {CdkStepHeader} from './step-header';\nimport {CdkStepLabel} from './step-label';\n\n/** Used to generate unique ID for each stepper component. */\nlet nextId = 0;\n\n/**\n * Position state of the content of each step in stepper that is used for transitioning\n * the content into correct position upon step selection change.\n */\nexport type StepContentPositionState = 'previous'|'current'|'next';\n\n/** Possible orientation of a stepper. */\nexport type StepperOrientation = 'horizontal'|'vertical';\n\n/** Change event emitted on selection changes. */\nexport class StepperSelectionEvent {\n /** Index of the step now selected. */\n selectedIndex: number;\n\n /** Index of the step previously selected. */\n previouslySelectedIndex: number;\n\n /** The step instance now selected. */\n selectedStep: CdkStep;\n\n /** The step instance previously selected. */\n previouslySelectedStep: CdkStep;\n}\n\n/** The state of each step. */\nexport type StepState = 'number'|'edit'|'done'|'error'|string;\n\n/** Enum to represent the different states of the steps. */\nexport const STEP_STATE = {\n NUMBER: 'number',\n EDIT: 'edit',\n DONE: 'done',\n ERROR: 'error'\n};\n\n/** InjectionToken that can be used to specify the global stepper options. */\nexport const STEPPER_GLOBAL_OPTIONS = new InjectionToken<StepperOptions>('STEPPER_GLOBAL_OPTIONS');\n\n/**\n * InjectionToken that can be used to specify the global stepper options.\n * @deprecated Use `STEPPER_GLOBAL_OPTIONS` instead.\n * @breaking-change 8.0.0.\n */\nexport const MAT_STEPPER_GLOBAL_OPTIONS = STEPPER_GLOBAL_OPTIONS;\n\n/** Configurable options for stepper. */\nexport interface StepperOptions {\n /**\n * Whether the stepper should display an error state or not.\n * Default behavior is assumed to be false.\n */\n showError?: boolean;\n\n /**\n * Whether the stepper should display the default indicator type\n * or not.\n * Default behavior is assumed to be true.\n */\n displayDefaultIndicatorType?: boolean;\n}\n\n@Component({\n moduleId: module.id,\n selector: 'cdk-step',\n exportAs: 'cdkStep',\n template: '<ng-template><ng-content></ng-content></ng-template>',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CdkStep implements OnChanges {\n private _stepperOptions: StepperOptions;\n _showError: boolean;\n _displayDefaultIndicatorType: boolean;\n\n /** Template for step label if it exists. */\n @ContentChild(CdkStepLabel, {static: false}) stepLabel: CdkStepLabel;\n\n /** Template for step content. */\n @ViewChild(TemplateRef, {static: true}) content: TemplateRef<any>;\n\n /** The top level abstract control of the step. */\n @Input() stepControl: FormControlLike;\n\n /** Whether user has seen the expanded step content or not. */\n interacted = false;\n\n /** Plain text label of the step. */\n @Input() label: string;\n\n /** Error message to display when there's an error. */\n @Input() errorMessage: string;\n\n /** Aria label for the tab. */\n @Input('aria-label') ariaLabel: string;\n\n /**\n * Reference to the element that the tab is labelled by.\n * Will be cleared if `aria-label` is set at the same time.\n */\n @Input('aria-labelledby') ariaLabelledby: string;\n\n /** State of the step. */\n @Input() state: StepState;\n\n /** Whether the user can return to this step once it has been marked as completed. */\n @Input()\n get editable(): boolean {\n return this._editable;\n }\n set editable(value: boolean) {\n this._editable = coerceBooleanProperty(value);\n }\n private _editable = true;\n\n /** Whether the completion of step is optional. */\n @Input()\n get optional(): boolean {\n return this._optional;\n }\n set optional(value: boolean) {\n this._optional = coerceBooleanProperty(value);\n }\n private _optional = false;\n\n /** Whether step is marked as completed. */\n @Input()\n get completed(): boolean {\n return this._completedOverride == null ? this._getDefaultCompleted() : this._completedOverride;\n }\n set completed(value: boolean) {\n this._completedOverride = coerceBooleanProperty(value);\n }\n _completedOverride: boolean|null = null;\n\n private _getDefaultCompleted() {\n return this.stepControl ? this.stepControl.valid && this.interacted : this.interacted;\n }\n\n /** Whether step has an error. */\n @Input()\n get hasError(): boolean {\n return this._customError == null ? this._getDefaultError() : this._customError;\n }\n set hasError(value: boolean) {\n this._customError = coerceBooleanProperty(value);\n }\n private _customError: boolean|null = null;\n\n private _getDefaultError() {\n return this.stepControl && this.stepControl.invalid && this.interacted;\n }\n\n /** @breaking-change 8.0.0 remove the `?` after `stepperOptions` */\n constructor(\n @Inject(forwardRef(() => CdkStepper)) private _stepper: CdkStepper,\n @Optional() @Inject(STEPPER_GLOBAL_OPTIONS) stepperOptions?: StepperOptions) {\n this._stepperOptions = stepperOptions ? stepperOptions : {};\n this._displayDefaultIndicatorType = this._stepperOptions.displayDefaultIndicatorType !== false;\n this._showError = !!this._stepperOptions.showError;\n }\n\n /** Selects this step component. */\n select(): void {\n this._stepper.selected = this;\n }\n\n /** Resets the step to its initial state. Note that this includes resetting form data. */\n reset(): void {\n this.interacted = false;\n\n if (this._completedOverride != null) {\n this._completedOverride = false;\n }\n\n if (this._customError != null) {\n this._customError = false;\n }\n\n if (this.stepControl) {\n this.stepControl.reset();\n }\n }\n\n ngOnChanges() {\n // Since basically all inputs of the MatStep get proxied through the view down to the\n // underlying MatStepHeader, we have to make sure that change detection runs correctly.\n this._stepper._stateChanged();\n }\n}\n\n@Directive({\n selector: '[cdkStepper]',\n exportAs: 'cdkStepper',\n})\nexport class CdkStepper implements AfterViewInit, OnDestroy {\n /** Emits when the component is destroyed. */\n protected _destroyed = new Subject<void>();\n\n /** Used for managing keyboard focus. */\n private _keyManager: FocusKeyManager<FocusableOption>;\n\n /**\n * @breaking-change 8.0.0 Remove `| undefined` once the `_document`\n * constructor param is required.\n */\n private _document: Document|undefined;\n\n /**\n * The list of step components that the stepper is holding.\n * @deprecated use `steps` instead\n * @breaking-change 9.0.0 remove this property\n */\n @ContentChildren(CdkStep) _steps: QueryList<CdkStep>;\n\n /** The list of step components that the stepper is holding. */\n get steps(): QueryList<CdkStep> {\n return this._steps;\n }\n\n /**\n * The list of step headers of the steps in the stepper.\n * @deprecated Type to be changed to `QueryList<CdkStepHeader>`.\n * @breaking-change 8.0.0\n */\n @ContentChildren(CdkStepHeader) _stepHeader: QueryList<FocusableOption>;\n\n /** Whether the validity of previous steps should be checked or not. */\n @Input()\n get linear(): boolean {\n return this._linear;\n }\n set linear(value: boolean) {\n this._linear = coerceBooleanProperty(value);\n }\n private _linear = false;\n\n /** The index of the selected step. */\n @Input()\n get selectedIndex() {\n return this._selectedIndex;\n }\n set selectedIndex(index: number) {\n const newIndex = coerceNumberProperty(index);\n\n if (this.steps) {\n // Ensure that the index can't be out of bounds.\n if (newIndex < 0 || newIndex > this.steps.length - 1) {\n throw Error('cdkStepper: Cannot assign out-of-bounds value to `selectedIndex`.');\n }\n\n if (this._selectedIndex != newIndex && !this._anyControlsInvalidOrPending(newIndex) &&\n (newIndex >= this._selectedIndex || this.steps.toArray()[newIndex].editable)) {\n this._updateSelectedItemIndex(index);\n }\n } else {\n this._selectedIndex = newIndex;\n }\n }\n private _selectedIndex = 0;\n\n /** The step that is selected. */\n @Input()\n get selected(): CdkStep {\n // @breaking-change 8.0.0 Change return type to `CdkStep | undefined`.\n return this.steps ? this.steps.toArray()[this.selectedIndex] : undefined!;\n }\n set selected(step: CdkStep) {\n this.selectedIndex = this.steps ? this.steps.toArray().indexOf(step) : -1;\n }\n\n /** Event emitted when the selected step has changed. */\n @Output()\n selectionChange: EventEmitter<StepperSelectionEvent> = new EventEmitter<StepperSelectionEvent>();\n\n /** Used to track unique ID for each stepper component. */\n _groupId: number;\n\n protected _orientation: StepperOrientation = 'horizontal';\n\n constructor(\n @Optional() private _dir: Directionality, private _changeDetectorRef: ChangeDetectorRef,\n // @breaking-change 8.0.0 `_elementRef` and `_document` parameters to become required.\n private _elementRef?: ElementRef<HTMLElement>, @Inject(DOCUMENT) _document?: any) {\n this._groupId = nextId++;\n this._document = _document;\n }\n\n ngAfterViewInit() {\n // Note that while the step headers are content children by default, any components that\n // extend this one might have them as view chidren. We initialize the keyboard handling in\n // AfterViewInit so we're guaranteed for both view and content children to be defined.\n this._keyManager = new FocusKeyManager<FocusableOption>(this._stepHeader)\n .withWrap()\n .withVerticalOrientation(this._orientation === 'vertical');\n\n (this._dir ? (this._dir.change as Observable<Direction>) : obaservableOf<Direction>())\n .pipe(startWith(this._layoutDirection()), takeUntil(this._destroyed))\n .subscribe(direction => this._keyManager.withHorizontalOrientation(direction));\n\n this._keyManager.updateActiveItemIndex(this._selectedIndex);\n\n this.steps.changes.pipe(takeUntil(this._destroyed)).subscribe(() => {\n if (!this.selected) {\n this._selectedIndex = Math.max(this._selectedIndex - 1, 0);\n }\n });\n }\n\n ngOnDestroy() {\n this._destroyed.next();\n this._destroyed.complete();\n }\n\n /** Selects and focuses the next step in list. */\n next(): void {\n this.selectedIndex = Math.min(this._selectedIndex + 1, this.steps.length - 1);\n }\n\n /** Selects and focuses the previous step in list. */\n previous(): void {\n this.selectedIndex = Math.max(this._selectedIndex - 1, 0);\n }\n\n /** Resets the stepper to its initial state. Note that this includes clearing form data. */\n reset(): void {\n this._updateSelectedItemIndex(0);\n this.steps.forEach(step => step.reset());\n this._stateChanged();\n }\n\n /** Returns a unique id for each step label element. */\n _getStepLabelId(i: number): string {\n return `cdk-step-label-${this._groupId}-${i}`;\n }\n\n /** Returns unique id for each step content element. */\n _getStepContentId(i: number): string {\n return `cdk-step-content-${this._groupId}-${i}`;\n }\n\n /** Marks the component to be change detected. */\n _stateChanged() {\n this._changeDetectorRef.markForCheck();\n }\n\n /** Returns position state of the step with the given index. */\n _getAnimationDirection(index: number): StepContentPositionState {\n const position = index - this._selectedIndex;\n if (position < 0) {\n return this._layoutDirection() === 'rtl' ? 'next' : 'previous';\n } else if (position > 0) {\n return this._layoutDirection() === 'rtl' ? 'previous' : 'next';\n }\n return 'current';\n }\n\n /** Returns the type of icon to be displayed. */\n _getIndicatorType(index: number, state: StepState = STEP_STATE.NUMBER): StepState {\n const step = this.steps.toArray()[index];\n const isCurrentStep = this._isCurrentStep(index);\n\n return step._displayDefaultIndicatorType ? this._getDefaultIndicatorLogic(step, isCurrentStep) :\n this._getGuidelineLogic(step, isCurrentStep, state);\n }\n\n private _getDefaultIndicatorLogic(step: CdkStep, isCurrentStep: boolean): StepState {\n if (step._showError && step.hasError && !isCurrentStep) {\n return STEP_STATE.ERROR;\n } else if (!step.completed || isCurrentStep) {\n return STEP_STATE.NUMBER;\n } else {\n return step.editable ? STEP_STATE.EDIT : STEP_STATE.DONE;\n }\n }\n\n private _getGuidelineLogic(\n step: CdkStep, isCurrentStep: boolean, state: StepState = STEP_STATE.NUMBER): StepState {\n if (step._showError && step.hasError && !isCurrentStep) {\n return STEP_STATE.ERROR;\n } else if (step.completed && !isCurrentStep) {\n return STEP_STATE.DONE;\n } else if (step.completed && isCurrentStep) {\n return state;\n } else if (step.editable && isCurrentStep) {\n return STEP_STATE.EDIT;\n } else {\n return state;\n }\n }\n\n private _isCurrentStep(index: number) {\n return this._selectedIndex === index;\n }\n\n /** Returns the index of the currently-focused step header. */\n _getFocusIndex() {\n return this._keyManager ? this._keyManager.activeItemIndex : this._selectedIndex;\n }\n\n private _updateSelectedItemIndex(newIndex: number): void {\n const stepsArray = this.steps.toArray();\n this.selectionChange.emit({\n selectedIndex: newIndex,\n previouslySelectedIndex: this._selectedIndex,\n selectedStep: stepsArray[newIndex],\n previouslySelectedStep: stepsArray[this._selectedIndex],\n });\n\n // If focus is inside the stepper, move it to the next header, otherwise it may become\n // lost when the active step content is hidden. We can't be more granular with the check\n // (e.g. checking whether focus is inside the active step), because we don't have a\n // reference to the elements that are rendering out the content.\n this._containsFocus() ? this._keyManager.setActiveItem(newIndex) :\n this._keyManager.updateActiveItemIndex(newIndex);\n\n this._selectedIndex = newIndex;\n this._stateChanged();\n }\n\n _onKeydown(event: KeyboardEvent) {\n const hasModifier = hasModifierKey(event);\n const keyCode = event.keyCode;\n const manager = this._keyManager;\n\n if (manager.activeItemIndex != null && !hasModifier &&\n (keyCode === SPACE || keyCode === ENTER)) {\n this.selectedIndex = manager.activeItemIndex;\n event.preventDefault();\n } else if (keyCode === HOME) {\n manager.setFirstItemActive();\n event.preventDefault();\n } else if (keyCode === END) {\n manager.setLastItemActive();\n event.preventDefault();\n } else {\n manager.onKeydown(event);\n }\n }\n\n private _anyControlsInvalidOrPending(index: number): boolean {\n const steps = this.steps.toArray();\n\n steps[this._selectedIndex].interacted = true;\n\n if (this._linear && index >= 0) {\n return steps.slice(0, index).some(step => {\n const control = step.stepControl;\n const isIncomplete =\n control ? (control.invalid || control.pending || !step.interacted) : !step.completed;\n return isIncomplete && !step.optional && !step._completedOverride;\n });\n }\n\n return false;\n }\n\n private _layoutDirection(): Direction {\n return this._dir && this._dir.value === 'rtl' ? 'rtl' : 'ltr';\n }\n\n /** Checks whether the stepper contains the focused element. */\n private _containsFocus(): boolean {\n if (!this._document || !this._elementRef) {\n return false;\n }\n\n const stepperElement = this._elementRef.nativeElement;\n const focusedElement = this._document.activeElement;\n return stepperElement === focusedElement || stepperElement.contains(focusedElement);\n }\n}\n\n\n/**\n * Simplified representation of a FormControl from @angular/forms.\n * Used to avoid having to bring in @angular/forms for a single optional interface.\n * @docs-private\n */\ninterface FormControlLike {\n asyncValidator: () => any | null;\n dirty: boolean;\n disabled: boolean;\n enabled: boolean;\n errors: {[key: string]: any} | null;\n invalid: boolean;\n parent: any;\n pending: boolean;\n pristine: boolean;\n root: FormControlLike;\n status: string;\n statusChanges: Observable<any>;\n touched: boolean;\n untouched: boolean;\n updateOn: any;\n valid: boolean;\n validator: () => any | null;\n value: any;\n valueChanges: Observable<any>;\n clearAsyncValidators(): void;\n clearValidators(): void;\n disable(opts?: any): void;\n enable(opts?: any): void;\n get(path: (string | number)[] | string): FormControlLike | null;\n getError(errorCode: string, path?: (string | number)[] | string): any;\n hasError(errorCode: string, path?: (string | number)[] | string): boolean;\n markAllAsTouched(): void;\n markAsDirty(opts?: any): void;\n markAsPending(opts?: any): void;\n markAsPristine(opts?: any): void;\n markAsTouched(opts?: any): void;\n markAsUntouched(opts?: any): void;\n patchValue(value: any, options?: Object): void;\n reset(value?: any, options?: Object): void;\n setAsyncValidators(newValidator: () => any | (() => any)[] | null): void;\n setErrors(errors: {[key: string]: any} | null, opts?: any): void;\n setParent(parent: any): void;\n setValidators(newValidator: () => any | (() => any)[] | null): void;\n setValue(value: any, options?: Object): void;\n updateValueAndValidity(opts?: any): void;\n patchValue(value: any, options?: any): void;\n registerOnChange(fn: Function): void;\n registerOnDisabledChange(fn: (isDisabled: boolean) => void): void;\n reset(formState?: any, options?: any): void;\n setValue(value: any, options?: any): void;\n}\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.io/license\n */\n\nimport {Directive, TemplateRef} from '@angular/core';\n\n@Directive({\n selector: '[cdkStepLabel]',\n})\nexport class CdkStepLabel {\n constructor(/** @docs-private */ public template: TemplateRef<any>) { }\n}\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.io/license\n */\n\nimport {Directive, ElementRef} from '@angular/core';\nimport {FocusableOption} from '@angular/cdk/a11y';\n\n\n@Directive({\n selector: '[cdkStepHeader]',\n host: {\n 'role': 'tab',\n },\n})\nexport class CdkStepHeader implements FocusableOption {\n constructor(protected _elementRef: ElementRef<HTMLElement>) {}\n\n /** Focuses the step header. */\n focus() {\n this._elementRef.nativeElement.focus();\n }\n}\n"],"names":["obaservableOf"],"mappings":"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"}
@@ -63,7 +63,8 @@ function createTouchEvent(type, pageX, pageY) {
63
63
  var event = document.createEvent('UIEvent');
64
64
  /** @type {?} */
65
65
  var touchDetails = { pageX: pageX, pageY: pageY };
66
- event.initUIEvent(type, true, true, window, 0);
66
+ // TS3.6 removes the initUIEvent method and suggests porting to "new UIEvent()".
67
+ ((/** @type {?} */ (event))).initUIEvent(type, true, true, window, 0);
67
68
  // Most of the browsers don't have a "initTouchEvent" method that can be used to define
68
69
  // the touch details.
69
70
  Object.defineProperties(event, {
@@ -1 +1 @@
1
- {"version":3,"file":"testing.es5.js","sources":["../../../src/cdk/testing/type-in-element.ts","../../../src/cdk/testing/element-focus.ts","../../../src/cdk/testing/dispatch-events.ts","../../../src/cdk/testing/event-objects.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.io/license\n */\n\nimport {dispatchFakeEvent, dispatchKeyboardEvent} from './dispatch-events';\nimport {triggerFocus} from './element-focus';\nimport {ModifierKeys} from './event-objects';\n\n/**\n * Checks whether the given Element is a text input element.\n * @docs-private\n */\nexport function isTextInput(element: Element): element is HTMLInputElement | HTMLTextAreaElement {\n return element.nodeName.toLowerCase() === 'input' ||\n element.nodeName.toLowerCase() === 'textarea' ;\n}\n\n/**\n * Focuses an input, sets its value and dispatches\n * the `input` event, simulating the user typing.\n * @param element Element onto which to set the value.\n * @param keys The keys to send to the element.\n * @docs-private\n */\nexport function typeInElement(\n element: HTMLElement, ...keys: (string | {keyCode?: number, key?: string})[]): void;\n\n/**\n * Focuses an input, sets its value and dispatches\n * the `input` event, simulating the user typing.\n * @param element Element onto which to set the value.\n * @param modifiers Modifier keys that are held while typing.\n * @param keys The keys to send to the element.\n * @docs-private\n */\nexport function typeInElement(element: HTMLElement, modifiers: ModifierKeys,\n ...keys: (string | {keyCode?: number, key?: string})[]): void;\n\nexport function typeInElement(element: HTMLElement, ...modifiersAndKeys: any) {\n const first = modifiersAndKeys[0];\n let modifiers: ModifierKeys;\n let rest: (string | {keyCode?: number, key?: string})[];\n if (typeof first !== 'string' && first.keyCode === undefined && first.key === undefined) {\n modifiers = first;\n rest = modifiersAndKeys.slice(1);\n } else {\n modifiers = {};\n rest = modifiersAndKeys;\n }\n const keys: {keyCode?: number, key?: string}[] = rest\n .map(k => typeof k === 'string' ?\n k.split('').map(c => ({keyCode: c.toUpperCase().charCodeAt(0), key: c})) : [k])\n .reduce((arr, k) => arr.concat(k), []);\n\n triggerFocus(element);\n for (const key of keys) {\n dispatchKeyboardEvent(element, 'keydown', key.keyCode, key.key, element, modifiers);\n dispatchKeyboardEvent(element, 'keypress', key.keyCode, key.key, element, modifiers);\n if (isTextInput(element) && key.key && key.key.length === 1) {\n element.value += key.key;\n dispatchFakeEvent(element, 'input');\n }\n dispatchKeyboardEvent(element, 'keyup', key.keyCode, key.key, element, modifiers);\n }\n}\n\n/**\n * Clears the text in an input or textarea element.\n * @docs-private\n */\nexport function clearElement(element: HTMLInputElement | HTMLTextAreaElement) {\n triggerFocus(element as HTMLElement);\n element.value = '';\n dispatchFakeEvent(element, 'input');\n}\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.io/license\n */\n\nimport {dispatchFakeEvent} from './dispatch-events';\n\nfunction triggerFocusChange(element: HTMLElement, event: 'focus' | 'blur') {\n let eventFired = false;\n const handler = () => eventFired = true;\n element.addEventListener(event, handler);\n element[event]();\n element.removeEventListener(event, handler);\n if (!eventFired) {\n dispatchFakeEvent(element, event);\n }\n}\n\n/**\n * Patches an elements focus and blur methods to emit events consistently and predictably.\n * This is necessary, because some browsers, like IE11, will call the focus handlers asynchronously,\n * while others won't fire them at all if the browser window is not focused.\n * @docs-private\n */\nexport function patchElementFocus(element: HTMLElement) {\n element.focus = () => dispatchFakeEvent(element, 'focus');\n element.blur = () => dispatchFakeEvent(element, 'blur');\n}\n\n/** @docs-private */\nexport function triggerFocus(element: HTMLElement) {\n triggerFocusChange(element, 'focus');\n}\n\n/** @docs-private */\nexport function triggerBlur(element: HTMLElement) {\n triggerFocusChange(element, 'blur');\n}\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.io/license\n */\n\nimport {\n createFakeEvent,\n createKeyboardEvent,\n createMouseEvent,\n createTouchEvent,\n ModifierKeys\n} from './event-objects';\n\n/**\n * Utility to dispatch any event on a Node.\n * @docs-private\n */\nexport function dispatchEvent(node: Node | Window, event: Event): Event {\n node.dispatchEvent(event);\n return event;\n}\n\n/**\n * Shorthand to dispatch a fake event on a specified node.\n * @docs-private\n */\nexport function dispatchFakeEvent(node: Node | Window, type: string, canBubble?: boolean): Event {\n return dispatchEvent(node, createFakeEvent(type, canBubble));\n}\n\n/**\n * Shorthand to dispatch a keyboard event with a specified key code.\n * @docs-private\n */\nexport function dispatchKeyboardEvent(node: Node, type: string, keyCode?: number, key?: string,\n target?: Element, modifiers?: ModifierKeys): KeyboardEvent {\n return dispatchEvent(node,\n createKeyboardEvent(type, keyCode, key, target, modifiers)) as KeyboardEvent;\n}\n\n/**\n * Shorthand to dispatch a mouse event on the specified coordinates.\n * @docs-private\n */\nexport function dispatchMouseEvent(node: Node, type: string, x = 0, y = 0,\n event = createMouseEvent(type, x, y)): MouseEvent {\n return dispatchEvent(node, event) as MouseEvent;\n}\n\n/**\n * Shorthand to dispatch a touch event on the specified coordinates.\n * @docs-private\n */\nexport function dispatchTouchEvent(node: Node, type: string, x = 0, y = 0) {\n return dispatchEvent(node, createTouchEvent(type, x, y));\n}\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.io/license\n */\n\n/** Modifier keys that may be held while typing. */\nexport interface ModifierKeys {\n control?: boolean;\n alt?: boolean;\n shift?: boolean;\n meta?: boolean;\n}\n\n/**\n * Creates a browser MouseEvent with the specified options.\n * @docs-private\n */\nexport function createMouseEvent(type: string, x = 0, y = 0, button = 0) {\n const event = document.createEvent('MouseEvent');\n const originalPreventDefault = event.preventDefault;\n\n event.initMouseEvent(type,\n true, /* canBubble */\n true, /* cancelable */\n window, /* view */\n 0, /* detail */\n x, /* screenX */\n y, /* screenY */\n x, /* clientX */\n y, /* clientY */\n false, /* ctrlKey */\n false, /* altKey */\n false, /* shiftKey */\n false, /* metaKey */\n button, /* button */\n null /* relatedTarget */);\n\n // `initMouseEvent` doesn't allow us to pass the `buttons` and\n // defaults it to 0 which looks like a fake event.\n Object.defineProperty(event, 'buttons', {get: () => 1});\n\n // IE won't set `defaultPrevented` on synthetic events so we need to do it manually.\n event.preventDefault = function() {\n Object.defineProperty(event, 'defaultPrevented', { get: () => true });\n return originalPreventDefault.apply(this, arguments);\n };\n\n return event;\n}\n\n/**\n * Creates a browser TouchEvent with the specified pointer coordinates.\n * @docs-private\n */\nexport function createTouchEvent(type: string, pageX = 0, pageY = 0) {\n // In favor of creating events that work for most of the browsers, the event is created\n // as a basic UI Event. The necessary details for the event will be set manually.\n const event = document.createEvent('UIEvent');\n const touchDetails = {pageX, pageY};\n\n event.initUIEvent(type, true, true, window, 0);\n\n // Most of the browsers don't have a \"initTouchEvent\" method that can be used to define\n // the touch details.\n Object.defineProperties(event, {\n touches: {value: [touchDetails]},\n targetTouches: {value: [touchDetails]},\n changedTouches: {value: [touchDetails]}\n });\n\n return event;\n}\n\n/**\n * Dispatches a keydown event from an element.\n * @docs-private\n */\nexport function createKeyboardEvent(type: string, keyCode: number = 0, key: string = '',\n target?: Element, modifiers: ModifierKeys = {}) {\n const event = document.createEvent('KeyboardEvent') as any;\n const originalPreventDefault = event.preventDefault;\n\n // Firefox does not support `initKeyboardEvent`, but supports `initKeyEvent`.\n if (event.initKeyEvent) {\n event.initKeyEvent(type, true, true, window, modifiers.control, modifiers.alt, modifiers.shift,\n modifiers.meta, keyCode);\n } else {\n // `initKeyboardEvent` expects to receive modifiers as a whitespace-delimited string\n // See https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/initKeyboardEvent\n const modifiersStr = (modifiers.control ? 'Control ' : '' + modifiers.alt ? 'Alt ' : '' +\n modifiers.shift ? 'Shift ' : '' + modifiers.meta ? 'Meta' : '').trim();\n event.initKeyboardEvent(type,\n true, /* canBubble */\n true, /* cancelable */\n window, /* view */\n 0, /* char */\n key, /* key */\n 0, /* location */\n modifiersStr, /* modifiersList */\n false /* repeat */);\n }\n\n // Webkit Browsers don't set the keyCode when calling the init function.\n // See related bug https://bugs.webkit.org/show_bug.cgi?id=16735\n Object.defineProperties(event, {\n keyCode: { get: () => keyCode },\n key: { get: () => key },\n target: { get: () => target },\n ctrlKey: { get: () => !!modifiers.control },\n altKey: { get: () => !!modifiers.alt },\n shiftKey: { get: () => !!modifiers.shift },\n metaKey: { get: () => !!modifiers.meta }\n });\n\n // IE won't set `defaultPrevented` on synthetic events so we need to do it manually.\n event.preventDefault = function() {\n Object.defineProperty(event, 'defaultPrevented', { get: () => true });\n return originalPreventDefault.apply(this, arguments);\n };\n\n return event;\n}\n\n/**\n * Creates a fake event object with any desired event type.\n * @docs-private\n */\nexport function createFakeEvent(type: string, canBubble = false, cancelable = true) {\n const event = document.createEvent('Event');\n event.initEvent(type, canBubble, cancelable);\n return event;\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"testing.es5.js","sources":["../../../src/cdk/testing/type-in-element.ts","../../../src/cdk/testing/element-focus.ts","../../../src/cdk/testing/dispatch-events.ts","../../../src/cdk/testing/event-objects.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.io/license\n */\n\nimport {dispatchFakeEvent, dispatchKeyboardEvent} from './dispatch-events';\nimport {triggerFocus} from './element-focus';\nimport {ModifierKeys} from './event-objects';\n\n/**\n * Checks whether the given Element is a text input element.\n * @docs-private\n */\nexport function isTextInput(element: Element): element is HTMLInputElement | HTMLTextAreaElement {\n return element.nodeName.toLowerCase() === 'input' ||\n element.nodeName.toLowerCase() === 'textarea' ;\n}\n\n/**\n * Focuses an input, sets its value and dispatches\n * the `input` event, simulating the user typing.\n * @param element Element onto which to set the value.\n * @param keys The keys to send to the element.\n * @docs-private\n */\nexport function typeInElement(\n element: HTMLElement, ...keys: (string | {keyCode?: number, key?: string})[]): void;\n\n/**\n * Focuses an input, sets its value and dispatches\n * the `input` event, simulating the user typing.\n * @param element Element onto which to set the value.\n * @param modifiers Modifier keys that are held while typing.\n * @param keys The keys to send to the element.\n * @docs-private\n */\nexport function typeInElement(element: HTMLElement, modifiers: ModifierKeys,\n ...keys: (string | {keyCode?: number, key?: string})[]): void;\n\nexport function typeInElement(element: HTMLElement, ...modifiersAndKeys: any) {\n const first = modifiersAndKeys[0];\n let modifiers: ModifierKeys;\n let rest: (string | {keyCode?: number, key?: string})[];\n if (typeof first !== 'string' && first.keyCode === undefined && first.key === undefined) {\n modifiers = first;\n rest = modifiersAndKeys.slice(1);\n } else {\n modifiers = {};\n rest = modifiersAndKeys;\n }\n const keys: {keyCode?: number, key?: string}[] = rest\n .map(k => typeof k === 'string' ?\n k.split('').map(c => ({keyCode: c.toUpperCase().charCodeAt(0), key: c})) : [k])\n .reduce((arr, k) => arr.concat(k), []);\n\n triggerFocus(element);\n for (const key of keys) {\n dispatchKeyboardEvent(element, 'keydown', key.keyCode, key.key, element, modifiers);\n dispatchKeyboardEvent(element, 'keypress', key.keyCode, key.key, element, modifiers);\n if (isTextInput(element) && key.key && key.key.length === 1) {\n element.value += key.key;\n dispatchFakeEvent(element, 'input');\n }\n dispatchKeyboardEvent(element, 'keyup', key.keyCode, key.key, element, modifiers);\n }\n}\n\n/**\n * Clears the text in an input or textarea element.\n * @docs-private\n */\nexport function clearElement(element: HTMLInputElement | HTMLTextAreaElement) {\n triggerFocus(element as HTMLElement);\n element.value = '';\n dispatchFakeEvent(element, 'input');\n}\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.io/license\n */\n\nimport {dispatchFakeEvent} from './dispatch-events';\n\nfunction triggerFocusChange(element: HTMLElement, event: 'focus' | 'blur') {\n let eventFired = false;\n const handler = () => eventFired = true;\n element.addEventListener(event, handler);\n element[event]();\n element.removeEventListener(event, handler);\n if (!eventFired) {\n dispatchFakeEvent(element, event);\n }\n}\n\n/**\n * Patches an elements focus and blur methods to emit events consistently and predictably.\n * This is necessary, because some browsers, like IE11, will call the focus handlers asynchronously,\n * while others won't fire them at all if the browser window is not focused.\n * @docs-private\n */\nexport function patchElementFocus(element: HTMLElement) {\n element.focus = () => dispatchFakeEvent(element, 'focus');\n element.blur = () => dispatchFakeEvent(element, 'blur');\n}\n\n/** @docs-private */\nexport function triggerFocus(element: HTMLElement) {\n triggerFocusChange(element, 'focus');\n}\n\n/** @docs-private */\nexport function triggerBlur(element: HTMLElement) {\n triggerFocusChange(element, 'blur');\n}\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.io/license\n */\n\nimport {\n createFakeEvent,\n createKeyboardEvent,\n createMouseEvent,\n createTouchEvent,\n ModifierKeys\n} from './event-objects';\n\n/**\n * Utility to dispatch any event on a Node.\n * @docs-private\n */\nexport function dispatchEvent(node: Node | Window, event: Event): Event {\n node.dispatchEvent(event);\n return event;\n}\n\n/**\n * Shorthand to dispatch a fake event on a specified node.\n * @docs-private\n */\nexport function dispatchFakeEvent(node: Node | Window, type: string, canBubble?: boolean): Event {\n return dispatchEvent(node, createFakeEvent(type, canBubble));\n}\n\n/**\n * Shorthand to dispatch a keyboard event with a specified key code.\n * @docs-private\n */\nexport function dispatchKeyboardEvent(node: Node, type: string, keyCode?: number, key?: string,\n target?: Element, modifiers?: ModifierKeys): KeyboardEvent {\n return dispatchEvent(node,\n createKeyboardEvent(type, keyCode, key, target, modifiers)) as KeyboardEvent;\n}\n\n/**\n * Shorthand to dispatch a mouse event on the specified coordinates.\n * @docs-private\n */\nexport function dispatchMouseEvent(node: Node, type: string, x = 0, y = 0,\n event = createMouseEvent(type, x, y)): MouseEvent {\n return dispatchEvent(node, event) as MouseEvent;\n}\n\n/**\n * Shorthand to dispatch a touch event on the specified coordinates.\n * @docs-private\n */\nexport function dispatchTouchEvent(node: Node, type: string, x = 0, y = 0) {\n return dispatchEvent(node, createTouchEvent(type, x, y));\n}\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.io/license\n */\n\n/** Modifier keys that may be held while typing. */\nexport interface ModifierKeys {\n control?: boolean;\n alt?: boolean;\n shift?: boolean;\n meta?: boolean;\n}\n\n/**\n * Creates a browser MouseEvent with the specified options.\n * @docs-private\n */\nexport function createMouseEvent(type: string, x = 0, y = 0, button = 0) {\n const event = document.createEvent('MouseEvent');\n const originalPreventDefault = event.preventDefault;\n\n event.initMouseEvent(type,\n true, /* canBubble */\n true, /* cancelable */\n window, /* view */\n 0, /* detail */\n x, /* screenX */\n y, /* screenY */\n x, /* clientX */\n y, /* clientY */\n false, /* ctrlKey */\n false, /* altKey */\n false, /* shiftKey */\n false, /* metaKey */\n button, /* button */\n null /* relatedTarget */);\n\n // `initMouseEvent` doesn't allow us to pass the `buttons` and\n // defaults it to 0 which looks like a fake event.\n Object.defineProperty(event, 'buttons', {get: () => 1});\n\n // IE won't set `defaultPrevented` on synthetic events so we need to do it manually.\n event.preventDefault = function() {\n Object.defineProperty(event, 'defaultPrevented', { get: () => true });\n return originalPreventDefault.apply(this, arguments);\n };\n\n return event;\n}\n\n/**\n * Creates a browser TouchEvent with the specified pointer coordinates.\n * @docs-private\n */\nexport function createTouchEvent(type: string, pageX = 0, pageY = 0) {\n // In favor of creating events that work for most of the browsers, the event is created\n // as a basic UI Event. The necessary details for the event will be set manually.\n const event = document.createEvent('UIEvent');\n const touchDetails = {pageX, pageY};\n\n // TS3.6 removes the initUIEvent method and suggests porting to \"new UIEvent()\".\n (event as any).initUIEvent(type, true, true, window, 0);\n\n // Most of the browsers don't have a \"initTouchEvent\" method that can be used to define\n // the touch details.\n Object.defineProperties(event, {\n touches: {value: [touchDetails]},\n targetTouches: {value: [touchDetails]},\n changedTouches: {value: [touchDetails]}\n });\n\n return event;\n}\n\n/**\n * Dispatches a keydown event from an element.\n * @docs-private\n */\nexport function createKeyboardEvent(type: string, keyCode: number = 0, key: string = '',\n target?: Element, modifiers: ModifierKeys = {}) {\n const event = document.createEvent('KeyboardEvent') as any;\n const originalPreventDefault = event.preventDefault;\n\n // Firefox does not support `initKeyboardEvent`, but supports `initKeyEvent`.\n if (event.initKeyEvent) {\n event.initKeyEvent(type, true, true, window, modifiers.control, modifiers.alt, modifiers.shift,\n modifiers.meta, keyCode);\n } else {\n // `initKeyboardEvent` expects to receive modifiers as a whitespace-delimited string\n // See https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/initKeyboardEvent\n const modifiersStr = (modifiers.control ? 'Control ' : '' + modifiers.alt ? 'Alt ' : '' +\n modifiers.shift ? 'Shift ' : '' + modifiers.meta ? 'Meta' : '').trim();\n event.initKeyboardEvent(type,\n true, /* canBubble */\n true, /* cancelable */\n window, /* view */\n 0, /* char */\n key, /* key */\n 0, /* location */\n modifiersStr, /* modifiersList */\n false /* repeat */);\n }\n\n // Webkit Browsers don't set the keyCode when calling the init function.\n // See related bug https://bugs.webkit.org/show_bug.cgi?id=16735\n Object.defineProperties(event, {\n keyCode: { get: () => keyCode },\n key: { get: () => key },\n target: { get: () => target },\n ctrlKey: { get: () => !!modifiers.control },\n altKey: { get: () => !!modifiers.alt },\n shiftKey: { get: () => !!modifiers.shift },\n metaKey: { get: () => !!modifiers.meta }\n });\n\n // IE won't set `defaultPrevented` on synthetic events so we need to do it manually.\n event.preventDefault = function() {\n Object.defineProperty(event, 'defaultPrevented', { get: () => true });\n return originalPreventDefault.apply(this, arguments);\n };\n\n return event;\n}\n\n/**\n * Creates a fake event object with any desired event type.\n * @docs-private\n */\nexport function createFakeEvent(type: string, canBubble = false, cancelable = true) {\n const event = document.createEvent('Event');\n event.initEvent(type, canBubble, cancelable);\n return event;\n}\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@angular/cdk",
3
- "version": "8.2.2",
3
+ "version": "8.2.3",
4
4
  "description": "Angular Material Component Development Kit",
5
5
  "main": "./bundles/cdk.umd.js",
6
6
  "module": "./esm5/cdk.es5.js",
@@ -37,7 +37,7 @@
37
37
  "migrations": "./schematics/migration.json"
38
38
  },
39
39
  "sideEffects": false,
40
- "releaseGitCommitSha": "04625994e04120a42a5608140898868293de2f09",
40
+ "releaseGitCommitSha": "0b175c619f37f450f147d42f8c562f08333ed330",
41
41
  "releaseGitBranch": "8.2.x",
42
- "releaseGitUser": "Andrew Seguin <andrewjs@google.com>"
42
+ "releaseGitUser": "Miles Malerba <mmalerba@google.com>"
43
43
  }
@@ -0,0 +1 @@
1
+ [cdkPortalHost]{color:red}