{"version":3,"file":"cdk-stepper.umd.js","sources":["cdk/stepper.es5.js"],"sourcesContent":["/**\n * @license\n * Copyright Google Inc. 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 */\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, ContentChildren, Directive, EventEmitter, Inject, Input, NgModule, Optional, Output, TemplateRef, ViewChild, ViewEncapsulation, forwardRef } from '@angular/core';\nimport { ENTER, LEFT_ARROW, RIGHT_ARROW, SPACE } from '@angular/cdk/keycodes';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { BidiModule, Directionality } from '@angular/cdk/bidi';\nimport { CommonModule } from '@angular/common';\n\nvar CdkStepLabel = (function () {\n /**\n * @param {?} template\n */\n function CdkStepLabel(template) {\n this.template = template;\n }\n CdkStepLabel.decorators = [\n { type: Directive, args: [{\n selector: '[cdkStepLabel]',\n },] },\n ];\n /**\n * @nocollapse\n */\n CdkStepLabel.ctorParameters = function () { return [\n { type: TemplateRef, },\n ]; };\n return CdkStepLabel;\n}());\n\n/**\n * Used to generate unique ID for each stepper component.\n */\nvar nextId = 0;\n/**\n * Change event emitted on selection changes.\n */\nvar StepperSelectionEvent = (function () {\n function StepperSelectionEvent() {\n }\n return StepperSelectionEvent;\n}());\nvar CdkStep = (function () {\n /**\n * @param {?} _stepper\n */\n function CdkStep(_stepper) {\n this._stepper = _stepper;\n /**\n * Whether user has seen the expanded step content or not.\n */\n this.interacted = false;\n this._editable = true;\n this._optional = false;\n this._customCompleted = null;\n }\n Object.defineProperty(CdkStep.prototype, \"editable\", {\n /**\n * @return {?}\n */\n get: function () { return this._editable; },\n /**\n * @param {?} value\n * @return {?}\n */\n set: function (value) {\n this._editable = coerceBooleanProperty(value);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(CdkStep.prototype, \"optional\", {\n /**\n * Whether the completion of step is optional or not.\n * @return {?}\n */\n get: function () { return this._optional; },\n /**\n * @param {?} value\n * @return {?}\n */\n set: function (value) {\n this._optional = coerceBooleanProperty(value);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(CdkStep.prototype, \"completed\", {\n /**\n * Return whether step is completed or not.\n * @return {?}\n */\n get: function () {\n return this._customCompleted == null ? this._defaultCompleted : this._customCompleted;\n },\n /**\n * @param {?} value\n * @return {?}\n */\n set: function (value) {\n this._customCompleted = coerceBooleanProperty(value);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(CdkStep.prototype, \"_defaultCompleted\", {\n /**\n * @return {?}\n */\n get: function () {\n return this.stepControl ? this.stepControl.valid && this.interacted : this.interacted;\n },\n enumerable: true,\n configurable: true\n });\n /**\n * Selects this step component.\n * @return {?}\n */\n CdkStep.prototype.select = function () {\n this._stepper.selected = this;\n };\n /**\n * @return {?}\n */\n CdkStep.prototype.ngOnChanges = function () {\n // Since basically all inputs of the MdStep get proxied through the view down to the\n // underlying MdStepHeader, we have to make sure that change detection runs correctly.\n this._stepper._stateChanged();\n };\n CdkStep.decorators = [\n { type: Component, args: [{selector: 'cdk-step',\n exportAs: 'cdkStep',\n template: \"\",\n encapsulation: ViewEncapsulation.None,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n },] },\n ];\n /**\n * @nocollapse\n */\n CdkStep.ctorParameters = function () { return [\n { type: CdkStepper, decorators: [{ type: Inject, args: [forwardRef(function () { return CdkStepper; }),] },] },\n ]; };\n CdkStep.propDecorators = {\n 'stepLabel': [{ type: ContentChild, args: [CdkStepLabel,] },],\n 'content': [{ type: ViewChild, args: [TemplateRef,] },],\n 'stepControl': [{ type: Input },],\n 'label': [{ type: Input },],\n 'editable': [{ type: Input },],\n 'optional': [{ type: Input },],\n 'completed': [{ type: Input },],\n };\n return CdkStep;\n}());\nvar CdkStepper = (function () {\n /**\n * @param {?} _dir\n * @param {?} _changeDetectorRef\n */\n function CdkStepper(_dir, _changeDetectorRef) {\n this._dir = _dir;\n this._changeDetectorRef = _changeDetectorRef;\n this._linear = false;\n this._selectedIndex = 0;\n /**\n * Event emitted when the selected step has changed.\n */\n this.selectionChange = new EventEmitter();\n /**\n * The index of the step that the focus can be set.\n */\n this._focusIndex = 0;\n this._groupId = nextId++;\n }\n Object.defineProperty(CdkStepper.prototype, \"linear\", {\n /**\n * Whether the validity of previous steps should be checked or not.\n * @return {?}\n */\n get: function () { return this._linear; },\n /**\n * @param {?} value\n * @return {?}\n */\n set: function (value) { this._linear = coerceBooleanProperty(value); },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(CdkStepper.prototype, \"selectedIndex\", {\n /**\n * The index of the selected step.\n * @return {?}\n */\n get: function () { return this._selectedIndex; },\n /**\n * @param {?} index\n * @return {?}\n */\n set: function (index) {\n if (this._anyControlsInvalid(index)\n || index < this._selectedIndex && !this._steps.toArray()[index].editable) {\n // remove focus from clicked step header if the step is not able to be selected\n this._stepHeader.toArray()[index].nativeElement.blur();\n }\n else if (this._selectedIndex != index) {\n this._emitStepperSelectionEvent(index);\n this._focusIndex = this._selectedIndex;\n }\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(CdkStepper.prototype, \"selected\", {\n /**\n * The step that is selected.\n * @return {?}\n */\n get: function () { return this._steps.toArray()[this.selectedIndex]; },\n /**\n * @param {?} step\n * @return {?}\n */\n set: function (step) {\n this.selectedIndex = this._steps.toArray().indexOf(step);\n },\n enumerable: true,\n configurable: true\n });\n /**\n * Selects and focuses the next step in list.\n * @return {?}\n */\n CdkStepper.prototype.next = function () {\n this.selectedIndex = Math.min(this._selectedIndex + 1, this._steps.length - 1);\n };\n /**\n * Selects and focuses the previous step in list.\n * @return {?}\n */\n CdkStepper.prototype.previous = function () {\n this.selectedIndex = Math.max(this._selectedIndex - 1, 0);\n };\n /**\n * Returns a unique id for each step label element.\n * @param {?} i\n * @return {?}\n */\n CdkStepper.prototype._getStepLabelId = function (i) {\n return \"mat-step-label-\" + this._groupId + \"-\" + i;\n };\n /**\n * Returns unique id for each step content element.\n * @param {?} i\n * @return {?}\n */\n CdkStepper.prototype._getStepContentId = function (i) {\n return \"mat-step-content-\" + this._groupId + \"-\" + i;\n };\n /**\n * Marks the component to be change detected.\n * @return {?}\n */\n CdkStepper.prototype._stateChanged = function () {\n this._changeDetectorRef.markForCheck();\n };\n /**\n * Returns position state of the step with the given index.\n * @param {?} index\n * @return {?}\n */\n CdkStepper.prototype._getAnimationDirection = function (index) {\n var /** @type {?} */ position = index - this._selectedIndex;\n if (position < 0) {\n return this._layoutDirection() === 'rtl' ? 'next' : 'previous';\n }\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 * @param {?} index\n * @return {?}\n */\n CdkStepper.prototype._getIndicatorType = function (index) {\n var /** @type {?} */ step = this._steps.toArray()[index];\n if (!step.completed || this._selectedIndex == index) {\n return 'number';\n }\n else {\n return step.editable ? 'edit' : 'done';\n }\n };\n /**\n * @param {?} newIndex\n * @return {?}\n */\n CdkStepper.prototype._emitStepperSelectionEvent = function (newIndex) {\n var /** @type {?} */ 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 this._selectedIndex = newIndex;\n this._stateChanged();\n };\n /**\n * @param {?} event\n * @return {?}\n */\n CdkStepper.prototype._onKeydown = function (event) {\n switch (event.keyCode) {\n case RIGHT_ARROW:\n if (this._layoutDirection() === 'rtl') {\n this._focusPreviousStep();\n }\n else {\n this._focusNextStep();\n }\n break;\n case LEFT_ARROW:\n if (this._layoutDirection() === 'rtl') {\n this._focusNextStep();\n }\n else {\n this._focusPreviousStep();\n }\n break;\n case SPACE:\n case ENTER:\n this.selectedIndex = this._focusIndex;\n break;\n default:\n // Return to avoid calling preventDefault on keys that are not explicitly handled.\n return;\n }\n event.preventDefault();\n };\n /**\n * @return {?}\n */\n CdkStepper.prototype._focusNextStep = function () {\n this._focusStep((this._focusIndex + 1) % this._steps.length);\n };\n /**\n * @return {?}\n */\n CdkStepper.prototype._focusPreviousStep = function () {\n this._focusStep((this._focusIndex + this._steps.length - 1) % this._steps.length);\n };\n /**\n * @param {?} index\n * @return {?}\n */\n CdkStepper.prototype._focusStep = function (index) {\n this._focusIndex = index;\n this._stepHeader.toArray()[this._focusIndex].nativeElement.focus();\n };\n /**\n * @param {?} index\n * @return {?}\n */\n CdkStepper.prototype._anyControlsInvalid = function (index) {\n this._steps.toArray()[this._selectedIndex].interacted = true;\n if (this._linear && index >= 0) {\n return this._steps.toArray().slice(0, index).some(function (step) { return step.stepControl.invalid; });\n }\n return false;\n };\n /**\n * @return {?}\n */\n CdkStepper.prototype._layoutDirection = function () {\n return this._dir && this._dir.value === 'rtl' ? 'rtl' : 'ltr';\n };\n CdkStepper.decorators = [\n { type: Directive, args: [{\n selector: '[cdkStepper]',\n exportAs: 'cdkStepper',\n },] },\n ];\n /**\n * @nocollapse\n */\n CdkStepper.ctorParameters = function () { return [\n { type: Directionality, decorators: [{ type: Optional },] },\n { type: ChangeDetectorRef, },\n ]; };\n CdkStepper.propDecorators = {\n '_steps': [{ type: ContentChildren, args: [CdkStep,] },],\n 'linear': [{ type: Input },],\n 'selectedIndex': [{ type: Input },],\n 'selected': [{ type: Input },],\n 'selectionChange': [{ type: Output },],\n };\n return CdkStepper;\n}());\n\n/**\n * Button that moves to the next step in a stepper workflow.\n */\nvar CdkStepperNext = (function () {\n /**\n * @param {?} _stepper\n */\n function CdkStepperNext(_stepper) {\n this._stepper = _stepper;\n }\n CdkStepperNext.decorators = [\n { type: Directive, args: [{\n selector: 'button[cdkStepperNext]',\n host: { '(click)': '_stepper.next()' }\n },] },\n ];\n /**\n * @nocollapse\n */\n CdkStepperNext.ctorParameters = function () { return [\n { type: CdkStepper, },\n ]; };\n return CdkStepperNext;\n}());\n/**\n * Button that moves to the previous step in a stepper workflow.\n */\nvar CdkStepperPrevious = (function () {\n /**\n * @param {?} _stepper\n */\n function CdkStepperPrevious(_stepper) {\n this._stepper = _stepper;\n }\n CdkStepperPrevious.decorators = [\n { type: Directive, args: [{\n selector: 'button[cdkStepperPrevious]',\n host: { '(click)': '_stepper.previous()' }\n },] },\n ];\n /**\n * @nocollapse\n */\n CdkStepperPrevious.ctorParameters = function () { return [\n { type: CdkStepper, },\n ]; };\n return CdkStepperPrevious;\n}());\n\nvar CdkStepperModule = (function () {\n function CdkStepperModule() {\n }\n CdkStepperModule.decorators = [\n { type: NgModule, args: [{\n imports: [BidiModule, CommonModule],\n exports: [CdkStep, CdkStepper, CdkStepLabel, CdkStepperNext, CdkStepperPrevious],\n declarations: [CdkStep, CdkStepper, CdkStepLabel, CdkStepperNext, CdkStepperPrevious]\n },] },\n ];\n /**\n * @nocollapse\n */\n CdkStepperModule.ctorParameters = function () { return []; };\n return CdkStepperModule;\n}());\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { StepperSelectionEvent, CdkStep, CdkStepper, CdkStepLabel, CdkStepperNext, CdkStepperPrevious, CdkStepperModule };\n//# sourceMappingURL=stepper.es5.js.map\n"],"names":["Directive","TemplateRef","coerceBooleanProperty","Component","ViewEncapsulation","ChangeDetectionStrategy","Inject","forwardRef","ContentChild","ViewChild","Input","EventEmitter","RIGHT_ARROW","LEFT_ARROW","SPACE","ENTER","Directionality","Optional","ChangeDetectorRef","ContentChildren","Output","NgModule","BidiModule","CommonModule"],"mappings":"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"}