@angular/cdk 7.0.4 → 7.2.1

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 (271) hide show
  1. package/LICENSE +1 -1
  2. package/_a11y.scss +1 -1
  3. package/a11y/typings/focus-monitor/focus-monitor.d.ts +20 -5
  4. package/a11y/typings/focus-trap/focus-trap.d.ts +2 -0
  5. package/a11y/typings/index.metadata.json +1 -1
  6. package/a11y/typings/live-announcer/live-announcer.d.ts +34 -3
  7. package/bundles/cdk-a11y.umd.js +477 -216
  8. package/bundles/cdk-a11y.umd.js.map +1 -1
  9. package/bundles/cdk-a11y.umd.min.js +1 -1
  10. package/bundles/cdk-a11y.umd.min.js.map +1 -1
  11. package/bundles/cdk-accordion.umd.js +16 -9
  12. package/bundles/cdk-accordion.umd.js.map +1 -1
  13. package/bundles/cdk-accordion.umd.min.js.map +1 -1
  14. package/bundles/cdk-bidi.umd.js +11 -6
  15. package/bundles/cdk-bidi.umd.js.map +1 -1
  16. package/bundles/cdk-bidi.umd.min.js.map +1 -1
  17. package/bundles/cdk-coercion.umd.js +25 -9
  18. package/bundles/cdk-coercion.umd.js.map +1 -1
  19. package/bundles/cdk-coercion.umd.min.js +1 -1
  20. package/bundles/cdk-coercion.umd.min.js.map +1 -1
  21. package/bundles/cdk-collections.umd.js +28 -5
  22. package/bundles/cdk-collections.umd.js.map +1 -1
  23. package/bundles/cdk-collections.umd.min.js.map +1 -1
  24. package/bundles/cdk-drag-drop.umd.js +2177 -915
  25. package/bundles/cdk-drag-drop.umd.js.map +1 -1
  26. package/bundles/cdk-drag-drop.umd.min.js +2 -1
  27. package/bundles/cdk-drag-drop.umd.min.js.map +1 -1
  28. package/bundles/cdk-keycodes.umd.js +33 -1
  29. package/bundles/cdk-keycodes.umd.js.map +1 -1
  30. package/bundles/cdk-keycodes.umd.min.js +1 -1
  31. package/bundles/cdk-keycodes.umd.min.js.map +1 -1
  32. package/bundles/cdk-layout.umd.js +29 -22
  33. package/bundles/cdk-layout.umd.js.map +1 -1
  34. package/bundles/cdk-layout.umd.min.js +1 -1
  35. package/bundles/cdk-layout.umd.min.js.map +1 -1
  36. package/bundles/cdk-observers.umd.js +26 -7
  37. package/bundles/cdk-observers.umd.js.map +1 -1
  38. package/bundles/cdk-observers.umd.min.js +1 -1
  39. package/bundles/cdk-observers.umd.min.js.map +1 -1
  40. package/bundles/cdk-overlay.umd.js +605 -258
  41. package/bundles/cdk-overlay.umd.js.map +1 -1
  42. package/bundles/cdk-overlay.umd.min.js +2 -2
  43. package/bundles/cdk-overlay.umd.min.js.map +1 -1
  44. package/bundles/cdk-platform.umd.js +50 -28
  45. package/bundles/cdk-platform.umd.js.map +1 -1
  46. package/bundles/cdk-platform.umd.min.js.map +1 -1
  47. package/bundles/cdk-portal.umd.js +14 -7
  48. package/bundles/cdk-portal.umd.js.map +1 -1
  49. package/bundles/cdk-portal.umd.min.js.map +1 -1
  50. package/bundles/cdk-scrolling.umd.js +139 -44
  51. package/bundles/cdk-scrolling.umd.js.map +1 -1
  52. package/bundles/cdk-scrolling.umd.min.js +1 -1
  53. package/bundles/cdk-scrolling.umd.min.js.map +1 -1
  54. package/bundles/cdk-stepper.umd.js +103 -19
  55. package/bundles/cdk-stepper.umd.js.map +1 -1
  56. package/bundles/cdk-stepper.umd.min.js +1 -1
  57. package/bundles/cdk-stepper.umd.min.js.map +1 -1
  58. package/bundles/cdk-table.umd.js +182 -48
  59. package/bundles/cdk-table.umd.js.map +1 -1
  60. package/bundles/cdk-table.umd.min.js.map +1 -1
  61. package/bundles/cdk-text-field.umd.js +76 -38
  62. package/bundles/cdk-text-field.umd.js.map +1 -1
  63. package/bundles/cdk-text-field.umd.min.js +1 -1
  64. package/bundles/cdk-text-field.umd.min.js.map +1 -1
  65. package/bundles/cdk-tree.umd.js +71 -34
  66. package/bundles/cdk-tree.umd.js.map +1 -1
  67. package/bundles/cdk-tree.umd.min.js +1 -1
  68. package/bundles/cdk-tree.umd.min.js.map +1 -1
  69. package/bundles/cdk.umd.js +5 -4
  70. package/bundles/cdk.umd.js.map +1 -1
  71. package/bundles/cdk.umd.min.js +1 -1
  72. package/bundles/cdk.umd.min.js.map +1 -1
  73. package/coercion/typings/element.d.ts +13 -0
  74. package/coercion/typings/index.metadata.json +1 -1
  75. package/coercion/typings/public-api.d.ts +1 -0
  76. package/drag-drop/typings/{drag-handle.d.ts → directives/drag-handle.d.ts} +3 -0
  77. package/drag-drop/typings/{drag-placeholder.d.ts → directives/drag-placeholder.d.ts} +0 -0
  78. package/drag-drop/typings/{drag-preview.d.ts → directives/drag-preview.d.ts} +0 -0
  79. package/drag-drop/typings/directives/drag.d.ts +109 -0
  80. package/{typings/drag-drop → drag-drop/typings/directives}/drop-list-group.d.ts +3 -0
  81. package/drag-drop/typings/directives/drop-list.d.ts +135 -0
  82. package/drag-drop/typings/drag-drop-registry.d.ts +8 -3
  83. package/drag-drop/typings/drag-events.d.ts +14 -7
  84. package/{typings/esm5/drag-drop/drag.d.ts → drag-drop/typings/drag-ref.d.ts} +152 -82
  85. package/drag-drop/typings/drop-list-container.d.ts +21 -3
  86. package/drag-drop/typings/{drop-list.d.ts → drop-list-ref.d.ts} +132 -81
  87. package/drag-drop/typings/index.d.ts +1 -0
  88. package/drag-drop/typings/index.metadata.json +1 -1
  89. package/drag-drop/typings/public-api.d.ts +13 -6
  90. package/esm2015/a11y.js +337 -190
  91. package/esm2015/a11y.js.map +1 -1
  92. package/esm2015/accordion.js +16 -11
  93. package/esm2015/accordion.js.map +1 -1
  94. package/esm2015/bidi.js +13 -8
  95. package/esm2015/bidi.js.map +1 -1
  96. package/esm2015/cdk.js +7 -6
  97. package/esm2015/cdk.js.map +1 -1
  98. package/esm2015/coercion.js +25 -8
  99. package/esm2015/coercion.js.map +1 -1
  100. package/esm2015/collections.js +22 -7
  101. package/esm2015/collections.js.map +1 -1
  102. package/esm2015/drag-drop.js +1587 -691
  103. package/esm2015/drag-drop.js.map +1 -1
  104. package/esm2015/keycodes.js +31 -4
  105. package/esm2015/keycodes.js.map +1 -1
  106. package/esm2015/layout.js +29 -19
  107. package/esm2015/layout.js.map +1 -1
  108. package/esm2015/observers.js +15 -10
  109. package/esm2015/observers.js.map +1 -1
  110. package/esm2015/overlay.js +393 -232
  111. package/esm2015/overlay.js.map +1 -1
  112. package/esm2015/platform.js +53 -31
  113. package/esm2015/platform.js.map +1 -1
  114. package/esm2015/portal.js +13 -9
  115. package/esm2015/portal.js.map +1 -1
  116. package/esm2015/scrolling.js +102 -45
  117. package/esm2015/scrolling.js.map +1 -1
  118. package/esm2015/stepper.js +93 -24
  119. package/esm2015/stepper.js.map +1 -1
  120. package/esm2015/table.js +89 -45
  121. package/esm2015/table.js.map +1 -1
  122. package/esm2015/text-field.js +54 -37
  123. package/esm2015/text-field.js.map +1 -1
  124. package/esm2015/tree.js +55 -36
  125. package/esm2015/tree.js.map +1 -1
  126. package/esm5/a11y.es5.js +481 -220
  127. package/esm5/a11y.es5.js.map +1 -1
  128. package/esm5/accordion.es5.js +18 -11
  129. package/esm5/accordion.es5.js.map +1 -1
  130. package/esm5/bidi.es5.js +13 -8
  131. package/esm5/bidi.es5.js.map +1 -1
  132. package/esm5/cdk.es5.js +7 -6
  133. package/esm5/cdk.es5.js.map +1 -1
  134. package/esm5/coercion.es5.js +25 -8
  135. package/esm5/coercion.es5.js.map +1 -1
  136. package/esm5/collections.es5.js +35 -7
  137. package/esm5/collections.es5.js.map +1 -1
  138. package/esm5/drag-drop.es5.js +2233 -972
  139. package/esm5/drag-drop.es5.js.map +1 -1
  140. package/esm5/keycodes.es5.js +35 -4
  141. package/esm5/keycodes.es5.js.map +1 -1
  142. package/esm5/layout.es5.js +31 -24
  143. package/esm5/layout.es5.js.map +1 -1
  144. package/esm5/observers.es5.js +29 -10
  145. package/esm5/observers.es5.js.map +1 -1
  146. package/esm5/overlay.es5.js +609 -262
  147. package/esm5/overlay.es5.js.map +1 -1
  148. package/esm5/platform.es5.js +52 -30
  149. package/esm5/platform.es5.js.map +1 -1
  150. package/esm5/portal.es5.js +16 -9
  151. package/esm5/portal.es5.js.map +1 -1
  152. package/esm5/scrolling.es5.js +141 -46
  153. package/esm5/scrolling.es5.js.map +1 -1
  154. package/esm5/stepper.es5.js +106 -24
  155. package/esm5/stepper.es5.js.map +1 -1
  156. package/esm5/table.es5.js +184 -50
  157. package/esm5/table.es5.js.map +1 -1
  158. package/esm5/text-field.es5.js +75 -37
  159. package/esm5/text-field.es5.js.map +1 -1
  160. package/esm5/tree.es5.js +74 -37
  161. package/esm5/tree.es5.js.map +1 -1
  162. package/keycodes/typings/index.metadata.json +1 -1
  163. package/keycodes/typings/modifiers.d.ts +14 -0
  164. package/keycodes/typings/public-api.d.ts +1 -0
  165. package/overlay/typings/index.metadata.json +1 -1
  166. package/overlay/typings/overlay-directives.d.ts +0 -2
  167. package/package.json +4 -4
  168. package/schematics/ng-generate/drag-drop/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts +2 -2
  169. package/schematics/ng-update/upgrade-data.js +2 -1
  170. package/schematics/ng-update/upgrade-data.js.map +1 -1
  171. package/schematics/ng-update/upgrade-rules/index.js +3 -2
  172. package/schematics/ng-update/upgrade-rules/index.js.map +1 -1
  173. package/schematics/utils/ast/ng-module-imports.d.ts +1 -1
  174. package/schematics/utils/ast/ng-module-imports.js +25 -13
  175. package/schematics/utils/ast/ng-module-imports.js.map +1 -1
  176. package/schematics/utils/get-project.js +2 -1
  177. package/schematics/utils/get-project.js.map +1 -1
  178. package/schematics/utils/parse5-element.js +3 -2
  179. package/schematics/utils/parse5-element.js.map +1 -1
  180. package/schematics/utils/project-targets.js +2 -1
  181. package/schematics/utils/project-targets.js.map +1 -1
  182. package/schematics/utils/version-agnostic-typescript.js +3 -2
  183. package/schematics/utils/version-agnostic-typescript.js.map +1 -1
  184. package/scrolling/typings/index.metadata.json +1 -1
  185. package/stepper/typings/index.metadata.json +1 -1
  186. package/stepper/typings/public-api.d.ts +1 -0
  187. package/stepper/typings/step-header.d.ts +15 -0
  188. package/stepper/typings/stepper.d.ts +11 -1
  189. package/text-field/typings/autosize.d.ts +6 -0
  190. package/text-field/typings/index.metadata.json +1 -1
  191. package/tree/typings/control/base-tree-control.d.ts +1 -1
  192. package/tree/typings/control/nested-tree-control.d.ts +2 -2
  193. package/tree/typings/control/tree-control.d.ts +1 -1
  194. package/tree/typings/nested-node.d.ts +5 -5
  195. package/typings/a11y/focus-monitor/focus-monitor.d.ts +20 -5
  196. package/typings/a11y/focus-trap/focus-trap.d.ts +2 -0
  197. package/typings/a11y/index.metadata.json +1 -1
  198. package/typings/a11y/live-announcer/live-announcer.d.ts +34 -3
  199. package/typings/coercion/element.d.ts +13 -0
  200. package/typings/coercion/index.metadata.json +1 -1
  201. package/typings/coercion/public-api.d.ts +1 -0
  202. package/typings/{esm5/drag-drop → drag-drop/directives}/drag-handle.d.ts +3 -0
  203. package/typings/drag-drop/{drag-placeholder.d.ts → directives/drag-placeholder.d.ts} +0 -0
  204. package/typings/drag-drop/{drag-preview.d.ts → directives/drag-preview.d.ts} +0 -0
  205. package/typings/drag-drop/directives/drag.d.ts +109 -0
  206. package/typings/{esm5/drag-drop → drag-drop/directives}/drop-list-group.d.ts +3 -0
  207. package/typings/drag-drop/directives/drop-list.d.ts +135 -0
  208. package/typings/drag-drop/drag-drop-registry.d.ts +8 -3
  209. package/typings/drag-drop/drag-events.d.ts +14 -7
  210. package/typings/drag-drop/{drag.d.ts → drag-ref.d.ts} +152 -82
  211. package/typings/drag-drop/drop-list-container.d.ts +21 -3
  212. package/typings/{esm5/drag-drop/drop-list.d.ts → drag-drop/drop-list-ref.d.ts} +132 -81
  213. package/typings/drag-drop/index.d.ts +1 -0
  214. package/typings/drag-drop/index.metadata.json +1 -1
  215. package/typings/drag-drop/public-api.d.ts +13 -6
  216. package/typings/esm5/a11y/focus-monitor/focus-monitor.d.ts +20 -5
  217. package/typings/esm5/a11y/focus-trap/focus-trap.d.ts +2 -0
  218. package/typings/esm5/a11y/index.metadata.json +1 -1
  219. package/typings/esm5/a11y/live-announcer/live-announcer.d.ts +34 -3
  220. package/typings/esm5/coercion/element.d.ts +13 -0
  221. package/typings/esm5/coercion/index.metadata.json +1 -1
  222. package/typings/esm5/coercion/public-api.d.ts +1 -0
  223. package/typings/{drag-drop → esm5/drag-drop/directives}/drag-handle.d.ts +3 -0
  224. package/typings/esm5/drag-drop/{drag-placeholder.d.ts → directives/drag-placeholder.d.ts} +0 -0
  225. package/typings/esm5/drag-drop/{drag-preview.d.ts → directives/drag-preview.d.ts} +0 -0
  226. package/typings/esm5/drag-drop/directives/drag.d.ts +109 -0
  227. package/{drag-drop/typings → typings/esm5/drag-drop/directives}/drop-list-group.d.ts +3 -0
  228. package/typings/esm5/drag-drop/directives/drop-list.d.ts +135 -0
  229. package/typings/esm5/drag-drop/drag-drop-registry.d.ts +8 -3
  230. package/typings/esm5/drag-drop/drag-events.d.ts +14 -7
  231. package/{drag-drop/typings/drag.d.ts → typings/esm5/drag-drop/drag-ref.d.ts} +152 -82
  232. package/typings/esm5/drag-drop/drop-list-container.d.ts +21 -3
  233. package/typings/{drag-drop/drop-list.d.ts → esm5/drag-drop/drop-list-ref.d.ts} +132 -81
  234. package/typings/esm5/drag-drop/index.d.ts +1 -0
  235. package/typings/esm5/drag-drop/index.metadata.json +1 -1
  236. package/typings/esm5/drag-drop/public-api.d.ts +13 -6
  237. package/typings/esm5/index.metadata.json +1 -1
  238. package/typings/esm5/keycodes/index.metadata.json +1 -1
  239. package/typings/esm5/keycodes/modifiers.d.ts +14 -0
  240. package/typings/esm5/keycodes/public-api.d.ts +1 -0
  241. package/typings/esm5/overlay/index.metadata.json +1 -1
  242. package/typings/esm5/overlay/overlay-directives.d.ts +0 -2
  243. package/typings/esm5/scrolling/index.metadata.json +1 -1
  244. package/typings/esm5/stepper/index.metadata.json +1 -1
  245. package/typings/esm5/stepper/public-api.d.ts +1 -0
  246. package/typings/esm5/stepper/step-header.d.ts +15 -0
  247. package/typings/esm5/stepper/stepper.d.ts +11 -1
  248. package/typings/esm5/text-field/autosize.d.ts +6 -0
  249. package/typings/esm5/text-field/index.metadata.json +1 -1
  250. package/typings/esm5/tree/control/base-tree-control.d.ts +1 -1
  251. package/typings/esm5/tree/control/nested-tree-control.d.ts +2 -2
  252. package/typings/esm5/tree/control/tree-control.d.ts +1 -1
  253. package/typings/esm5/tree/nested-node.d.ts +5 -5
  254. package/typings/index.metadata.json +1 -1
  255. package/typings/keycodes/index.metadata.json +1 -1
  256. package/typings/keycodes/modifiers.d.ts +14 -0
  257. package/typings/keycodes/public-api.d.ts +1 -0
  258. package/typings/overlay/index.metadata.json +1 -1
  259. package/typings/overlay/overlay-directives.d.ts +0 -2
  260. package/typings/schematics/utils/ast/ng-module-imports.d.ts +1 -1
  261. package/typings/scrolling/index.metadata.json +1 -1
  262. package/typings/stepper/index.metadata.json +1 -1
  263. package/typings/stepper/public-api.d.ts +1 -0
  264. package/typings/stepper/step-header.d.ts +15 -0
  265. package/typings/stepper/stepper.d.ts +11 -1
  266. package/typings/text-field/autosize.d.ts +6 -0
  267. package/typings/text-field/index.metadata.json +1 -1
  268. package/typings/tree/control/base-tree-control.d.ts +1 -1
  269. package/typings/tree/control/nested-tree-control.d.ts +2 -2
  270. package/typings/tree/control/tree-control.d.ts +1 -1
  271. package/typings/tree/nested-node.d.ts +5 -5
@@ -13,10 +13,10 @@
13
13
 
14
14
  /**
15
15
  * @fileoverview added by tsickle
16
- * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
16
+ * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
17
17
  */
18
18
  var CdkStepLabel = /** @class */ (function () {
19
- function CdkStepLabel(template) {
19
+ function CdkStepLabel(/** @docs-private */ template) {
20
20
  this.template = template;
21
21
  }
22
22
  CdkStepLabel.decorators = [
@@ -33,11 +33,47 @@ var CdkStepLabel = /** @class */ (function () {
33
33
 
34
34
  /**
35
35
  * @fileoverview added by tsickle
36
- * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
36
+ * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
37
37
  */
38
- /** *
38
+ var CdkStepHeader = /** @class */ (function () {
39
+ function CdkStepHeader(_elementRef) {
40
+ this._elementRef = _elementRef;
41
+ }
42
+ /** Focuses the step header. */
43
+ /**
44
+ * Focuses the step header.
45
+ * @return {?}
46
+ */
47
+ CdkStepHeader.prototype.focus = /**
48
+ * Focuses the step header.
49
+ * @return {?}
50
+ */
51
+ function () {
52
+ this._elementRef.nativeElement.focus();
53
+ };
54
+ CdkStepHeader.decorators = [
55
+ { type: core.Directive, args: [{
56
+ selector: '[cdkStepHeader]',
57
+ host: {
58
+ 'role': 'tab',
59
+ },
60
+ },] },
61
+ ];
62
+ /** @nocollapse */
63
+ CdkStepHeader.ctorParameters = function () { return [
64
+ { type: core.ElementRef }
65
+ ]; };
66
+ return CdkStepHeader;
67
+ }());
68
+
69
+ /**
70
+ * @fileoverview added by tsickle
71
+ * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
72
+ */
73
+ /**
39
74
  * Used to generate unique ID for each stepper component.
40
- @type {?} */
75
+ * @type {?}
76
+ */
41
77
  var nextId = 0;
42
78
  /**
43
79
  * Change event emitted on selection changes.
@@ -50,19 +86,28 @@ StepperSelectionEvent = /** @class */ (function () {
50
86
  }
51
87
  return StepperSelectionEvent;
52
88
  }());
53
- /** *
89
+ /**
54
90
  * Enum to represent the different states of the steps.
55
- @type {?} */
91
+ * @type {?}
92
+ */
56
93
  var STEP_STATE = {
57
94
  NUMBER: 'number',
58
95
  EDIT: 'edit',
59
96
  DONE: 'done',
60
97
  ERROR: 'error'
61
98
  };
62
- /** *
99
+ /**
63
100
  * InjectionToken that can be used to specify the global stepper options.
64
- @type {?} */
65
- var MAT_STEPPER_GLOBAL_OPTIONS = new core.InjectionToken('mat-stepper-global-options');
101
+ * @type {?}
102
+ */
103
+ var STEPPER_GLOBAL_OPTIONS = new core.InjectionToken('STEPPER_GLOBAL_OPTIONS');
104
+ /**
105
+ * InjectionToken that can be used to specify the global stepper options.
106
+ * @deprecated Use `STEPPER_GLOBAL_OPTIONS` instead.
107
+ * \@breaking-change 8.0.0.
108
+ * @type {?}
109
+ */
110
+ var MAT_STEPPER_GLOBAL_OPTIONS = STEPPER_GLOBAL_OPTIONS;
66
111
  var CdkStep = /** @class */ (function () {
67
112
  /** @breaking-change 8.0.0 remove the `?` after `stepperOptions` */
68
113
  function CdkStep(_stepper, stepperOptions) {
@@ -133,9 +178,11 @@ var CdkStep = /** @class */ (function () {
133
178
  configurable: true
134
179
  });
135
180
  /**
181
+ * @private
136
182
  * @return {?}
137
183
  */
138
184
  CdkStep.prototype._getDefaultCompleted = /**
185
+ * @private
139
186
  * @return {?}
140
187
  */
141
188
  function () {
@@ -148,7 +195,7 @@ var CdkStep = /** @class */ (function () {
148
195
  * @return {?}
149
196
  */
150
197
  function () {
151
- return this._customError || this._getDefaultError();
198
+ return this._customError == null ? this._getDefaultError() : this._customError;
152
199
  },
153
200
  set: /**
154
201
  * @param {?} value
@@ -161,9 +208,11 @@ var CdkStep = /** @class */ (function () {
161
208
  configurable: true
162
209
  });
163
210
  /**
211
+ * @private
164
212
  * @return {?}
165
213
  */
166
214
  CdkStep.prototype._getDefaultError = /**
215
+ * @private
167
216
  * @return {?}
168
217
  */
169
218
  function () {
@@ -224,7 +273,7 @@ var CdkStep = /** @class */ (function () {
224
273
  /** @nocollapse */
225
274
  CdkStep.ctorParameters = function () { return [
226
275
  { type: CdkStepper, decorators: [{ type: core.Inject, args: [core.forwardRef(function () { return CdkStepper; }),] }] },
227
- { type: undefined, decorators: [{ type: core.Optional }, { type: core.Inject, args: [MAT_STEPPER_GLOBAL_OPTIONS,] }] }
276
+ { type: undefined, decorators: [{ type: core.Optional }, { type: core.Inject, args: [STEPPER_GLOBAL_OPTIONS,] }] }
228
277
  ]; };
229
278
  CdkStep.propDecorators = {
230
279
  stepLabel: [{ type: core.ContentChild, args: [CdkStepLabel,] }],
@@ -314,7 +363,7 @@ var CdkStepper = /** @class */ (function () {
314
363
  */
315
364
  function () {
316
365
  // @breaking-change 8.0.0 Change return type to `CdkStep | undefined`.
317
- return this._steps ? this._steps.toArray()[this.selectedIndex] : /** @type {?} */ ((undefined));
366
+ return this._steps ? this._steps.toArray()[this.selectedIndex] : (/** @type {?} */ (undefined));
318
367
  },
319
368
  set: /**
320
369
  * @param {?} step
@@ -334,10 +383,13 @@ var CdkStepper = /** @class */ (function () {
334
383
  */
335
384
  function () {
336
385
  var _this = this;
386
+ // Note that while the step headers are content children by default, any components that
387
+ // extend this one might have them as view chidren. We initialize the keyboard handling in
388
+ // AfterViewInit so we're guaranteed for both view and content children to be defined.
337
389
  this._keyManager = new a11y.FocusKeyManager(this._stepHeader)
338
390
  .withWrap()
339
391
  .withVerticalOrientation(this._orientation === 'vertical');
340
- (this._dir ? /** @type {?} */ (this._dir.change) : rxjs.of())
392
+ (this._dir ? (/** @type {?} */ (this._dir.change)) : rxjs.of())
341
393
  .pipe(operators.startWith(this._layoutDirection()), operators.takeUntil(this._destroyed))
342
394
  .subscribe(function (direction) { return _this._keyManager.withHorizontalOrientation(direction); });
343
395
  this._keyManager.updateActiveItemIndex(this._selectedIndex);
@@ -481,11 +533,13 @@ var CdkStepper = /** @class */ (function () {
481
533
  : this._getGuidelineLogic(step, isCurrentStep, state);
482
534
  };
483
535
  /**
536
+ * @private
484
537
  * @param {?} step
485
538
  * @param {?} isCurrentStep
486
539
  * @return {?}
487
540
  */
488
541
  CdkStepper.prototype._getDefaultIndicatorLogic = /**
542
+ * @private
489
543
  * @param {?} step
490
544
  * @param {?} isCurrentStep
491
545
  * @return {?}
@@ -502,12 +556,14 @@ var CdkStepper = /** @class */ (function () {
502
556
  }
503
557
  };
504
558
  /**
559
+ * @private
505
560
  * @param {?} step
506
561
  * @param {?} isCurrentStep
507
562
  * @param {?=} state
508
563
  * @return {?}
509
564
  */
510
565
  CdkStepper.prototype._getGuidelineLogic = /**
566
+ * @private
511
567
  * @param {?} step
512
568
  * @param {?} isCurrentStep
513
569
  * @param {?=} state
@@ -532,10 +588,12 @@ var CdkStepper = /** @class */ (function () {
532
588
  }
533
589
  };
534
590
  /**
591
+ * @private
535
592
  * @param {?} index
536
593
  * @return {?}
537
594
  */
538
595
  CdkStepper.prototype._isCurrentStep = /**
596
+ * @private
539
597
  * @param {?} index
540
598
  * @return {?}
541
599
  */
@@ -555,10 +613,12 @@ var CdkStepper = /** @class */ (function () {
555
613
  return this._keyManager ? this._keyManager.activeItemIndex : this._selectedIndex;
556
614
  };
557
615
  /**
616
+ * @private
558
617
  * @param {?} newIndex
559
618
  * @return {?}
560
619
  */
561
620
  CdkStepper.prototype._updateSelectedItemIndex = /**
621
+ * @private
562
622
  * @param {?} newIndex
563
623
  * @return {?}
564
624
  */
@@ -590,7 +650,7 @@ var CdkStepper = /** @class */ (function () {
590
650
  */
591
651
  function (event) {
592
652
  /** @type {?} */
593
- var hasModifier = event.altKey || event.shiftKey || event.ctrlKey || event.metaKey;
653
+ var hasModifier = keycodes.hasModifierKey(event);
594
654
  /** @type {?} */
595
655
  var keyCode = event.keyCode;
596
656
  /** @type {?} */
@@ -613,10 +673,12 @@ var CdkStepper = /** @class */ (function () {
613
673
  }
614
674
  };
615
675
  /**
676
+ * @private
616
677
  * @param {?} index
617
678
  * @return {?}
618
679
  */
619
680
  CdkStepper.prototype._anyControlsInvalidOrPending = /**
681
+ * @private
620
682
  * @param {?} index
621
683
  * @return {?}
622
684
  */
@@ -638,20 +700,25 @@ var CdkStepper = /** @class */ (function () {
638
700
  return false;
639
701
  };
640
702
  /**
703
+ * @private
641
704
  * @return {?}
642
705
  */
643
706
  CdkStepper.prototype._layoutDirection = /**
707
+ * @private
644
708
  * @return {?}
645
709
  */
646
710
  function () {
647
711
  return this._dir && this._dir.value === 'rtl' ? 'rtl' : 'ltr';
648
712
  };
713
+ /** Checks whether the stepper contains the focused element. */
649
714
  /**
650
715
  * Checks whether the stepper contains the focused element.
716
+ * @private
651
717
  * @return {?}
652
718
  */
653
719
  CdkStepper.prototype._containsFocus = /**
654
720
  * Checks whether the stepper contains the focused element.
721
+ * @private
655
722
  * @return {?}
656
723
  */
657
724
  function () {
@@ -679,6 +746,7 @@ var CdkStepper = /** @class */ (function () {
679
746
  ]; };
680
747
  CdkStepper.propDecorators = {
681
748
  _steps: [{ type: core.ContentChildren, args: [CdkStep,] }],
749
+ _stepHeader: [{ type: core.ContentChildren, args: [CdkStepHeader,] }],
682
750
  linear: [{ type: core.Input }],
683
751
  selectedIndex: [{ type: core.Input }],
684
752
  selected: [{ type: core.Input }],
@@ -689,7 +757,7 @@ var CdkStepper = /** @class */ (function () {
689
757
 
690
758
  /**
691
759
  * @fileoverview added by tsickle
692
- * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
760
+ * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
693
761
  */
694
762
  /**
695
763
  * Button that moves to the next step in a stepper workflow.
@@ -752,7 +820,7 @@ var CdkStepperPrevious = /** @class */ (function () {
752
820
 
753
821
  /**
754
822
  * @fileoverview added by tsickle
755
- * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
823
+ * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
756
824
  */
757
825
  var CdkStepperModule = /** @class */ (function () {
758
826
  function CdkStepperModule() {
@@ -760,8 +828,22 @@ var CdkStepperModule = /** @class */ (function () {
760
828
  CdkStepperModule.decorators = [
761
829
  { type: core.NgModule, args: [{
762
830
  imports: [bidi.BidiModule, common.CommonModule],
763
- exports: [CdkStep, CdkStepper, CdkStepLabel, CdkStepperNext, CdkStepperPrevious],
764
- declarations: [CdkStep, CdkStepper, CdkStepLabel, CdkStepperNext, CdkStepperPrevious]
831
+ exports: [
832
+ CdkStep,
833
+ CdkStepper,
834
+ CdkStepHeader,
835
+ CdkStepLabel,
836
+ CdkStepperNext,
837
+ CdkStepperPrevious,
838
+ ],
839
+ declarations: [
840
+ CdkStep,
841
+ CdkStepper,
842
+ CdkStepHeader,
843
+ CdkStepLabel,
844
+ CdkStepperNext,
845
+ CdkStepperPrevious,
846
+ ]
765
847
  },] },
766
848
  ];
767
849
  return CdkStepperModule;
@@ -769,6 +851,7 @@ var CdkStepperModule = /** @class */ (function () {
769
851
 
770
852
  exports.StepperSelectionEvent = StepperSelectionEvent;
771
853
  exports.STEP_STATE = STEP_STATE;
854
+ exports.STEPPER_GLOBAL_OPTIONS = STEPPER_GLOBAL_OPTIONS;
772
855
  exports.MAT_STEPPER_GLOBAL_OPTIONS = MAT_STEPPER_GLOBAL_OPTIONS;
773
856
  exports.CdkStep = CdkStep;
774
857
  exports.CdkStepper = CdkStepper;
@@ -776,6 +859,7 @@ exports.CdkStepLabel = CdkStepLabel;
776
859
  exports.CdkStepperNext = CdkStepperNext;
777
860
  exports.CdkStepperPrevious = CdkStepperPrevious;
778
861
  exports.CdkStepperModule = CdkStepperModule;
862
+ exports.CdkStepHeader = CdkStepHeader;
779
863
 
780
864
  Object.defineProperty(exports, '__esModule', { value: true });
781
865
 
@@ -1 +1 @@
1
- {"version":3,"file":"cdk-stepper.umd.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"],"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 {BidiModule} from '@angular/cdk/bidi';\n\n@NgModule({\n imports: [BidiModule, CommonModule],\n exports: [CdkStep, CdkStepper, CdkStepLabel, CdkStepperNext, CdkStepperPrevious],\n declarations: [CdkStep, CdkStepper, CdkStepLabel, CdkStepperNext, CdkStepperPrevious]\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, Input} from '@angular/core';\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 '(click)': '_stepper.next()',\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\n/** Button that moves to the previous step in a stepper workflow. */\n@Directive({\n selector: 'button[cdkStepperPrevious]',\n host: {\n '(click)': '_stepper.previous()',\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","/**\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} from '@angular/cdk/coercion';\nimport {END, ENTER, HOME, SPACE} 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 {AbstractControl} from '@angular/forms';\nimport {CdkStepLabel} from './step-label';\nimport {Observable, Subject, of as obaservableOf} from 'rxjs';\nimport {startWith, takeUntil} from 'rxjs/operators';\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 MAT_STEPPER_GLOBAL_OPTIONS =\n new InjectionToken<StepperOptions>('mat-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) stepLabel: CdkStepLabel;\n\n /** Template for step content. */\n @ViewChild(TemplateRef) content: TemplateRef<any>;\n\n /** The top level abstract control of the step. */\n @Input() stepControl: AbstractControl;\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 complted. */\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 || this._getDefaultError();\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(MAT_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 /** The list of step components that the stepper is holding. */\n @ContentChildren(CdkStep) _steps: QueryList<CdkStep>;\n\n /** The list of step headers of the steps in the stepper. */\n _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 if (this._steps) {\n // Ensure that the index can't be out of bounds.\n if (index < 0 || index > this._steps.length - 1) {\n throw Error('cdkStepper: Cannot assign out-of-bounds value to `selectedIndex`.');\n }\n\n if (this._selectedIndex != index &&\n !this._anyControlsInvalidOrPending(index) &&\n (index >= this._selectedIndex || this._steps.toArray()[index].editable)) {\n this._updateSelectedItemIndex(index);\n }\n } else {\n this._selectedIndex = index;\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 this._keyManager = new FocusKeyManager(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 // TODO(crisbeto): move into a CDK utility once\n // the similar PRs for other components are merged in.\n const hasModifier = event.altKey || event.shiftKey || event.ctrlKey || event.metaKey;\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 * @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":["BidiModule","CommonModule","NgModule","Input","Directive","Output","Inject","DOCUMENT","ElementRef","END","HOME","SPACE","ENTER","takeUntil","startWith","obaservableOf","FocusKeyManager","ChangeDetectionStrategy","ViewEncapsulation","Component","coerceBooleanProperty","InjectionToken","TemplateRef"],"mappings":"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"}
1
+ {"version":3,"file":"cdk-stepper.umd.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, Input} from '@angular/core';\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 '(click)': '_stepper.next()',\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\n/** Button that moves to the previous step in a stepper workflow. */\n@Directive({\n selector: 'button[cdkStepperPrevious]',\n host: {\n '(click)': '_stepper.previous()',\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","/**\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} 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 {AbstractControl} from '@angular/forms';\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) stepLabel: CdkStepLabel;\n\n /** Template for step content. */\n @ViewChild(TemplateRef) content: TemplateRef<any>;\n\n /** The top level abstract control of the step. */\n @Input() stepControl: AbstractControl;\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 complted. */\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 /** The list of step components that the stepper is holding. */\n @ContentChildren(CdkStep) _steps: QueryList<CdkStep>;\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 if (this._steps) {\n // Ensure that the index can't be out of bounds.\n if (index < 0 || index > this._steps.length - 1) {\n throw Error('cdkStepper: Cannot assign out-of-bounds value to `selectedIndex`.');\n }\n\n if (this._selectedIndex != index &&\n !this._anyControlsInvalidOrPending(index) &&\n (index >= this._selectedIndex || this._steps.toArray()[index].editable)) {\n this._updateSelectedItemIndex(index);\n }\n } else {\n this._selectedIndex = index;\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 * @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":["BidiModule","CommonModule","NgModule","Input","Directive","Output","Inject","DOCUMENT","ElementRef","END","HOME","SPACE","ENTER","hasModifierKey","takeUntil","startWith","obaservableOf","FocusKeyManager","ChangeDetectionStrategy","ViewEncapsulation","Component","coerceBooleanProperty","InjectionToken","TemplateRef"],"mappings":"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"}
@@ -5,5 +5,5 @@
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
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/cdk/a11y"),require("@angular/cdk/bidi"),require("@angular/cdk/coercion"),require("@angular/cdk/keycodes"),require("@angular/common"),require("@angular/forms"),require("rxjs"),require("rxjs/operators")):"function"==typeof define&&define.amd?define("@angular/cdk/stepper",["exports","@angular/core","@angular/cdk/a11y","@angular/cdk/bidi","@angular/cdk/coercion","@angular/cdk/keycodes","@angular/common","@angular/forms","rxjs","rxjs/operators"],t):t((e.ng=e.ng||{},e.ng.cdk=e.ng.cdk||{},e.ng.cdk.stepper={}),e.ng.core,e.ng.cdk.a11y,e.ng.cdk.bidi,e.ng.cdk.coercion,e.ng.cdk.keycodes,e.ng.common,e.ng.forms,e.rxjs,e.rxjs.operators)}(this,function(e,t,r,n,o,i,s,p,c,a){"use strict";var u=function(){function e(e){this.template=e}return e.decorators=[{type:t.Directive,args:[{selector:"[cdkStepLabel]"}]}],e.ctorParameters=function(){return[{type:t.TemplateRef}]},e}(),d=0,l=function(){function e(){}return e}(),h={NUMBER:"number",EDIT:"edit",DONE:"done",ERROR:"error"},y=new t.InjectionToken("mat-stepper-global-options"),_=function(){function e(e,t){this._stepper=e,this.interacted=!1,this._editable=!0,this._optional=!1,this._customCompleted=null,this._customError=null,this._stepperOptions=t||{},this._displayDefaultIndicatorType=!1!==this._stepperOptions.displayDefaultIndicatorType,this._showError=!!this._stepperOptions.showError}return Object.defineProperty(e.prototype,"editable",{get:function(){return this._editable},set:function(e){this._editable=o.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"optional",{get:function(){return this._optional},set:function(e){this._optional=o.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"completed",{get:function(){return null==this._customCompleted?this._getDefaultCompleted():this._customCompleted},set:function(e){this._customCompleted=o.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),e.prototype._getDefaultCompleted=function(){return this.stepControl?this.stepControl.valid&&this.interacted:this.interacted},Object.defineProperty(e.prototype,"hasError",{get:function(){return this._customError||this._getDefaultError()},set:function(e){this._customError=o.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),e.prototype._getDefaultError=function(){return this.stepControl&&this.stepControl.invalid&&this.interacted},e.prototype.select=function(){this._stepper.selected=this},e.prototype.reset=function(){this.interacted=!1,null!=this._customCompleted&&(this._customCompleted=!1),null!=this._customError&&(this._customError=!1),this.stepControl&&this.stepControl.reset()},e.prototype.ngOnChanges=function(){this._stepper._stateChanged()},e.decorators=[{type:t.Component,args:[{selector:"cdk-step",exportAs:"cdkStep",template:"<ng-template><ng-content></ng-content></ng-template>",encapsulation:t.ViewEncapsulation.None,changeDetection:t.ChangeDetectionStrategy.OnPush}]}],e.ctorParameters=function(){return[{type:f,decorators:[{type:t.Inject,args:[t.forwardRef(function(){return f})]}]},{type:void 0,decorators:[{type:t.Optional},{type:t.Inject,args:[y]}]}]},e.propDecorators={stepLabel:[{type:t.ContentChild,args:[u]}],content:[{type:t.ViewChild,args:[t.TemplateRef]}],stepControl:[{type:t.Input}],label:[{type:t.Input}],errorMessage:[{type:t.Input}],ariaLabel:[{type:t.Input,args:["aria-label"]}],ariaLabelledby:[{type:t.Input,args:["aria-labelledby"]}],state:[{type:t.Input}],editable:[{type:t.Input}],optional:[{type:t.Input}],completed:[{type:t.Input}],hasError:[{type:t.Input}]},e}(),f=function(){function e(e,r,n,o){this._dir=e,this._changeDetectorRef=r,this._elementRef=n,this._destroyed=new c.Subject,this._linear=!1,this._selectedIndex=0,this.selectionChange=new t.EventEmitter,this._orientation="horizontal",this._groupId=d++,this._document=o}return Object.defineProperty(e.prototype,"linear",{get:function(){return this._linear},set:function(e){this._linear=o.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selectedIndex",{get:function(){return this._selectedIndex},set:function(e){if(this._steps){if(e<0||e>this._steps.length-1)throw Error("cdkStepper: Cannot assign out-of-bounds value to `selectedIndex`.");this._selectedIndex!=e&&!this._anyControlsInvalidOrPending(e)&&(e>=this._selectedIndex||this._steps.toArray()[e].editable)&&this._updateSelectedItemIndex(e)}else this._selectedIndex=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selected",{get:function(){return this._steps?this._steps.toArray()[this.selectedIndex]:void 0},set:function(e){this.selectedIndex=this._steps?this._steps.toArray().indexOf(e):-1},enumerable:!0,configurable:!0}),e.prototype.ngAfterViewInit=function(){var e=this;this._keyManager=new r.FocusKeyManager(this._stepHeader).withWrap().withVerticalOrientation("vertical"===this._orientation),(this._dir?this._dir.change:c.of()).pipe(a.startWith(this._layoutDirection()),a.takeUntil(this._destroyed)).subscribe(function(t){return e._keyManager.withHorizontalOrientation(t)}),this._keyManager.updateActiveItemIndex(this._selectedIndex),this._steps.changes.pipe(a.takeUntil(this._destroyed)).subscribe(function(){e.selected||(e._selectedIndex=Math.max(e._selectedIndex-1,0))})},e.prototype.ngOnDestroy=function(){this._destroyed.next(),this._destroyed.complete()},e.prototype.next=function(){this.selectedIndex=Math.min(this._selectedIndex+1,this._steps.length-1)},e.prototype.previous=function(){this.selectedIndex=Math.max(this._selectedIndex-1,0)},e.prototype.reset=function(){this._updateSelectedItemIndex(0),this._steps.forEach(function(e){return e.reset()}),this._stateChanged()},e.prototype._getStepLabelId=function(e){return"cdk-step-label-"+this._groupId+"-"+e},e.prototype._getStepContentId=function(e){return"cdk-step-content-"+this._groupId+"-"+e},e.prototype._stateChanged=function(){this._changeDetectorRef.markForCheck()},e.prototype._getAnimationDirection=function(e){var t=e-this._selectedIndex;return t<0?"rtl"===this._layoutDirection()?"next":"previous":t>0?"rtl"===this._layoutDirection()?"previous":"next":"current"},e.prototype._getIndicatorType=function(e,t){void 0===t&&(t=h.NUMBER);var r=this._steps.toArray()[e],n=this._isCurrentStep(e);return r._displayDefaultIndicatorType?this._getDefaultIndicatorLogic(r,n):this._getGuidelineLogic(r,n,t)},e.prototype._getDefaultIndicatorLogic=function(e,t){return e._showError&&e.hasError&&!t?h.ERROR:!e.completed||t?h.NUMBER:e.editable?h.EDIT:h.DONE},e.prototype._getGuidelineLogic=function(e,t,r){return void 0===r&&(r=h.NUMBER),e._showError&&e.hasError&&!t?h.ERROR:e.completed&&!t?h.DONE:e.completed&&t?r:e.editable&&t?h.EDIT:r},e.prototype._isCurrentStep=function(e){return this._selectedIndex===e},e.prototype._getFocusIndex=function(){return this._keyManager?this._keyManager.activeItemIndex:this._selectedIndex},e.prototype._updateSelectedItemIndex=function(e){var t=this._steps.toArray();this.selectionChange.emit({selectedIndex:e,previouslySelectedIndex:this._selectedIndex,selectedStep:t[e],previouslySelectedStep:t[this._selectedIndex]}),this._containsFocus()?this._keyManager.setActiveItem(e):this._keyManager.updateActiveItemIndex(e),this._selectedIndex=e,this._stateChanged()},e.prototype._onKeydown=function(e){var t=e.altKey||e.shiftKey||e.ctrlKey||e.metaKey,r=e.keyCode,n=this._keyManager;null==n.activeItemIndex||t||r!==i.SPACE&&r!==i.ENTER?r===i.HOME?(n.setFirstItemActive(),e.preventDefault()):r===i.END?(n.setLastItemActive(),e.preventDefault()):n.onKeydown(e):(this.selectedIndex=n.activeItemIndex,e.preventDefault())},e.prototype._anyControlsInvalidOrPending=function(e){var t=this._steps.toArray();return t[this._selectedIndex].interacted=!0,!!(this._linear&&e>=0)&&t.slice(0,e).some(function(e){var t=e.stepControl;return(t?t.invalid||t.pending||!e.interacted:!e.completed)&&!e.optional})},e.prototype._layoutDirection=function(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"},e.prototype._containsFocus=function(){if(!this._document||!this._elementRef)return!1;var e=this._elementRef.nativeElement,t=this._document.activeElement;return e===t||e.contains(t)},e.decorators=[{type:t.Directive,args:[{selector:"[cdkStepper]",exportAs:"cdkStepper"}]}],e.ctorParameters=function(){return[{type:n.Directionality,decorators:[{type:t.Optional}]},{type:t.ChangeDetectorRef},{type:t.ElementRef},{type:void 0,decorators:[{type:t.Inject,args:[s.DOCUMENT]}]}]},e.propDecorators={_steps:[{type:t.ContentChildren,args:[_]}],linear:[{type:t.Input}],selectedIndex:[{type:t.Input}],selected:[{type:t.Input}],selectionChange:[{type:t.Output}]},e}(),g=function(){function e(e){this._stepper=e,this.type="submit"}return e.decorators=[{type:t.Directive,args:[{selector:"button[cdkStepperNext]",host:{"(click)":"_stepper.next()","[type]":"type"}}]}],e.ctorParameters=function(){return[{type:f}]},e.propDecorators={type:[{type:t.Input}]},e}(),m=function(){function e(e){this._stepper=e,this.type="button"}return e.decorators=[{type:t.Directive,args:[{selector:"button[cdkStepperPrevious]",host:{"(click)":"_stepper.previous()","[type]":"type"}}]}],e.ctorParameters=function(){return[{type:f}]},e.propDecorators={type:[{type:t.Input}]},e}(),I=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.BidiModule,s.CommonModule],exports:[_,f,u,g,m],declarations:[_,f,u,g,m]}]}],e}();e.StepperSelectionEvent=l,e.STEP_STATE=h,e.MAT_STEPPER_GLOBAL_OPTIONS=y,e.CdkStep=_,e.CdkStepper=f,e.CdkStepLabel=u,e.CdkStepperNext=g,e.CdkStepperPrevious=m,e.CdkStepperModule=I,Object.defineProperty(e,"__esModule",{value:!0})});
8
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/cdk/a11y"),require("@angular/cdk/bidi"),require("@angular/cdk/coercion"),require("@angular/cdk/keycodes"),require("@angular/common"),require("@angular/forms"),require("rxjs"),require("rxjs/operators")):"function"==typeof define&&define.amd?define("@angular/cdk/stepper",["exports","@angular/core","@angular/cdk/a11y","@angular/cdk/bidi","@angular/cdk/coercion","@angular/cdk/keycodes","@angular/common","@angular/forms","rxjs","rxjs/operators"],t):t((e.ng=e.ng||{},e.ng.cdk=e.ng.cdk||{},e.ng.cdk.stepper={}),e.ng.core,e.ng.cdk.a11y,e.ng.cdk.bidi,e.ng.cdk.coercion,e.ng.cdk.keycodes,e.ng.common,e.ng.forms,e.rxjs,e.rxjs.operators)}(this,function(e,t,r,n,o,i,s,p,c,a){"use strict";var u=function(){function e(e){this.template=e}return e.decorators=[{type:t.Directive,args:[{selector:"[cdkStepLabel]"}]}],e.ctorParameters=function(){return[{type:t.TemplateRef}]},e}(),d=function(){function e(e){this._elementRef=e}return e.prototype.focus=function(){this._elementRef.nativeElement.focus()},e.decorators=[{type:t.Directive,args:[{selector:"[cdkStepHeader]",host:{role:"tab"}}]}],e.ctorParameters=function(){return[{type:t.ElementRef}]},e}(),l=0,h=function(){function e(){}return e}(),y={NUMBER:"number",EDIT:"edit",DONE:"done",ERROR:"error"},_=new t.InjectionToken("STEPPER_GLOBAL_OPTIONS"),f=_,g=function(){function e(e,t){this._stepper=e,this.interacted=!1,this._editable=!0,this._optional=!1,this._customCompleted=null,this._customError=null,this._stepperOptions=t||{},this._displayDefaultIndicatorType=!1!==this._stepperOptions.displayDefaultIndicatorType,this._showError=!!this._stepperOptions.showError}return Object.defineProperty(e.prototype,"editable",{get:function(){return this._editable},set:function(e){this._editable=o.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"optional",{get:function(){return this._optional},set:function(e){this._optional=o.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"completed",{get:function(){return null==this._customCompleted?this._getDefaultCompleted():this._customCompleted},set:function(e){this._customCompleted=o.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),e.prototype._getDefaultCompleted=function(){return this.stepControl?this.stepControl.valid&&this.interacted:this.interacted},Object.defineProperty(e.prototype,"hasError",{get:function(){return null==this._customError?this._getDefaultError():this._customError},set:function(e){this._customError=o.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),e.prototype._getDefaultError=function(){return this.stepControl&&this.stepControl.invalid&&this.interacted},e.prototype.select=function(){this._stepper.selected=this},e.prototype.reset=function(){this.interacted=!1,null!=this._customCompleted&&(this._customCompleted=!1),null!=this._customError&&(this._customError=!1),this.stepControl&&this.stepControl.reset()},e.prototype.ngOnChanges=function(){this._stepper._stateChanged()},e.decorators=[{type:t.Component,args:[{selector:"cdk-step",exportAs:"cdkStep",template:"<ng-template><ng-content></ng-content></ng-template>",encapsulation:t.ViewEncapsulation.None,changeDetection:t.ChangeDetectionStrategy.OnPush}]}],e.ctorParameters=function(){return[{type:m,decorators:[{type:t.Inject,args:[t.forwardRef(function(){return m})]}]},{type:void 0,decorators:[{type:t.Optional},{type:t.Inject,args:[_]}]}]},e.propDecorators={stepLabel:[{type:t.ContentChild,args:[u]}],content:[{type:t.ViewChild,args:[t.TemplateRef]}],stepControl:[{type:t.Input}],label:[{type:t.Input}],errorMessage:[{type:t.Input}],ariaLabel:[{type:t.Input,args:["aria-label"]}],ariaLabelledby:[{type:t.Input,args:["aria-labelledby"]}],state:[{type:t.Input}],editable:[{type:t.Input}],optional:[{type:t.Input}],completed:[{type:t.Input}],hasError:[{type:t.Input}]},e}(),m=function(){function e(e,r,n,o){this._dir=e,this._changeDetectorRef=r,this._elementRef=n,this._destroyed=new c.Subject,this._linear=!1,this._selectedIndex=0,this.selectionChange=new t.EventEmitter,this._orientation="horizontal",this._groupId=l++,this._document=o}return Object.defineProperty(e.prototype,"linear",{get:function(){return this._linear},set:function(e){this._linear=o.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selectedIndex",{get:function(){return this._selectedIndex},set:function(e){if(this._steps){if(e<0||e>this._steps.length-1)throw Error("cdkStepper: Cannot assign out-of-bounds value to `selectedIndex`.");this._selectedIndex!=e&&!this._anyControlsInvalidOrPending(e)&&(e>=this._selectedIndex||this._steps.toArray()[e].editable)&&this._updateSelectedItemIndex(e)}else this._selectedIndex=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selected",{get:function(){return this._steps?this._steps.toArray()[this.selectedIndex]:void 0},set:function(e){this.selectedIndex=this._steps?this._steps.toArray().indexOf(e):-1},enumerable:!0,configurable:!0}),e.prototype.ngAfterViewInit=function(){var e=this;this._keyManager=new r.FocusKeyManager(this._stepHeader).withWrap().withVerticalOrientation("vertical"===this._orientation),(this._dir?this._dir.change:c.of()).pipe(a.startWith(this._layoutDirection()),a.takeUntil(this._destroyed)).subscribe(function(t){return e._keyManager.withHorizontalOrientation(t)}),this._keyManager.updateActiveItemIndex(this._selectedIndex),this._steps.changes.pipe(a.takeUntil(this._destroyed)).subscribe(function(){e.selected||(e._selectedIndex=Math.max(e._selectedIndex-1,0))})},e.prototype.ngOnDestroy=function(){this._destroyed.next(),this._destroyed.complete()},e.prototype.next=function(){this.selectedIndex=Math.min(this._selectedIndex+1,this._steps.length-1)},e.prototype.previous=function(){this.selectedIndex=Math.max(this._selectedIndex-1,0)},e.prototype.reset=function(){this._updateSelectedItemIndex(0),this._steps.forEach(function(e){return e.reset()}),this._stateChanged()},e.prototype._getStepLabelId=function(e){return"cdk-step-label-"+this._groupId+"-"+e},e.prototype._getStepContentId=function(e){return"cdk-step-content-"+this._groupId+"-"+e},e.prototype._stateChanged=function(){this._changeDetectorRef.markForCheck()},e.prototype._getAnimationDirection=function(e){var t=e-this._selectedIndex;return t<0?"rtl"===this._layoutDirection()?"next":"previous":t>0?"rtl"===this._layoutDirection()?"previous":"next":"current"},e.prototype._getIndicatorType=function(e,t){void 0===t&&(t=y.NUMBER);var r=this._steps.toArray()[e],n=this._isCurrentStep(e);return r._displayDefaultIndicatorType?this._getDefaultIndicatorLogic(r,n):this._getGuidelineLogic(r,n,t)},e.prototype._getDefaultIndicatorLogic=function(e,t){return e._showError&&e.hasError&&!t?y.ERROR:!e.completed||t?y.NUMBER:e.editable?y.EDIT:y.DONE},e.prototype._getGuidelineLogic=function(e,t,r){return void 0===r&&(r=y.NUMBER),e._showError&&e.hasError&&!t?y.ERROR:e.completed&&!t?y.DONE:e.completed&&t?r:e.editable&&t?y.EDIT:r},e.prototype._isCurrentStep=function(e){return this._selectedIndex===e},e.prototype._getFocusIndex=function(){return this._keyManager?this._keyManager.activeItemIndex:this._selectedIndex},e.prototype._updateSelectedItemIndex=function(e){var t=this._steps.toArray();this.selectionChange.emit({selectedIndex:e,previouslySelectedIndex:this._selectedIndex,selectedStep:t[e],previouslySelectedStep:t[this._selectedIndex]}),this._containsFocus()?this._keyManager.setActiveItem(e):this._keyManager.updateActiveItemIndex(e),this._selectedIndex=e,this._stateChanged()},e.prototype._onKeydown=function(e){var t=i.hasModifierKey(e),r=e.keyCode,n=this._keyManager;null==n.activeItemIndex||t||r!==i.SPACE&&r!==i.ENTER?r===i.HOME?(n.setFirstItemActive(),e.preventDefault()):r===i.END?(n.setLastItemActive(),e.preventDefault()):n.onKeydown(e):(this.selectedIndex=n.activeItemIndex,e.preventDefault())},e.prototype._anyControlsInvalidOrPending=function(e){var t=this._steps.toArray();return t[this._selectedIndex].interacted=!0,!!(this._linear&&e>=0)&&t.slice(0,e).some(function(e){var t=e.stepControl;return(t?t.invalid||t.pending||!e.interacted:!e.completed)&&!e.optional})},e.prototype._layoutDirection=function(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"},e.prototype._containsFocus=function(){if(!this._document||!this._elementRef)return!1;var e=this._elementRef.nativeElement,t=this._document.activeElement;return e===t||e.contains(t)},e.decorators=[{type:t.Directive,args:[{selector:"[cdkStepper]",exportAs:"cdkStepper"}]}],e.ctorParameters=function(){return[{type:n.Directionality,decorators:[{type:t.Optional}]},{type:t.ChangeDetectorRef},{type:t.ElementRef},{type:void 0,decorators:[{type:t.Inject,args:[s.DOCUMENT]}]}]},e.propDecorators={_steps:[{type:t.ContentChildren,args:[g]}],_stepHeader:[{type:t.ContentChildren,args:[d]}],linear:[{type:t.Input}],selectedIndex:[{type:t.Input}],selected:[{type:t.Input}],selectionChange:[{type:t.Output}]},e}(),I=function(){function e(e){this._stepper=e,this.type="submit"}return e.decorators=[{type:t.Directive,args:[{selector:"button[cdkStepperNext]",host:{"(click)":"_stepper.next()","[type]":"type"}}]}],e.ctorParameters=function(){return[{type:m}]},e.propDecorators={type:[{type:t.Input}]},e}(),b=function(){function e(e){this._stepper=e,this.type="button"}return e.decorators=[{type:t.Directive,args:[{selector:"button[cdkStepperPrevious]",host:{"(click)":"_stepper.previous()","[type]":"type"}}]}],e.ctorParameters=function(){return[{type:m}]},e.propDecorators={type:[{type:t.Input}]},e}(),x=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.BidiModule,s.CommonModule],exports:[g,m,d,u,I,b],declarations:[g,m,d,u,I,b]}]}],e}();e.StepperSelectionEvent=h,e.STEP_STATE=y,e.STEPPER_GLOBAL_OPTIONS=_,e.MAT_STEPPER_GLOBAL_OPTIONS=f,e.CdkStep=g,e.CdkStepper=m,e.CdkStepLabel=u,e.CdkStepperNext=I,e.CdkStepperPrevious=b,e.CdkStepperModule=x,e.CdkStepHeader=d,Object.defineProperty(e,"__esModule",{value:!0})});
9
9
  //# sourceMappingURL=cdk-stepper.umd.min.js.map