http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/eec354e6/node_modules/@angular/cdk/bundles/cdk-stepper.umd.js
----------------------------------------------------------------------
diff --git a/node_modules/@angular/cdk/bundles/cdk-stepper.umd.js 
b/node_modules/@angular/cdk/bundles/cdk-stepper.umd.js
new file mode 100644
index 0000000..5514336
--- /dev/null
+++ b/node_modules/@angular/cdk/bundles/cdk-stepper.umd.js
@@ -0,0 +1,633 @@
+/**
+ * @license
+ * Copyright Google LLC All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+(function (global, factory) {
+       typeof exports === 'object' && typeof module !== 'undefined' ? 
factory(exports, require('@angular/core'), require('@angular/cdk/keycodes'), 
require('@angular/cdk/coercion'), require('@angular/forms'), 
require('@angular/cdk/bidi'), require('rxjs/Subject'), 
require('@angular/common')) :
+       typeof define === 'function' && define.amd ? define(['exports', 
'@angular/core', '@angular/cdk/keycodes', '@angular/cdk/coercion', 
'@angular/forms', '@angular/cdk/bidi', 'rxjs/Subject', '@angular/common'], 
factory) :
+       (factory((global.ng = global.ng || {}, global.ng.cdk = global.ng.cdk || 
{}, global.ng.cdk.stepper = global.ng.cdk.stepper || 
{}),global.ng.core,global.ng.cdk.keycodes,global.ng.cdk.coercion,global.ng.forms,global.ng.cdk.bidi,global.Rx,global.ng.common));
+}(this, (function 
(exports,_angular_core,_angular_cdk_keycodes,_angular_cdk_coercion,_angular_forms,_angular_cdk_bidi,rxjs_Subject,_angular_common)
 { 'use strict';
+
+/**
+ * @fileoverview added by tsickle
+ * @suppress {checkTypes} checked by tsc
+ */
+
+var CdkStepLabel = /** @class */ (function () {
+    function CdkStepLabel(template) {
+        this.template = template;
+    }
+    CdkStepLabel.decorators = [
+        { type: _angular_core.Directive, args: [{
+                    selector: '[cdkStepLabel]',
+                },] },
+    ];
+    /** @nocollapse */
+    CdkStepLabel.ctorParameters = function () { return [
+        { type: _angular_core.TemplateRef, },
+    ]; };
+    return CdkStepLabel;
+}());
+
+/**
+ * @fileoverview added by tsickle
+ * @suppress {checkTypes} checked by tsc
+ */
+
+/**
+ * Used to generate unique ID for each stepper component.
+ */
+var nextId = 0;
+/**
+ * Change event emitted on selection changes.
+ */
+var StepperSelectionEvent = /** @class */ (function () {
+    function StepperSelectionEvent() {
+    }
+    return StepperSelectionEvent;
+}());
+var CdkStep = /** @class */ (function () {
+    function CdkStep(_stepper) {
+        this._stepper = _stepper;
+        /**
+         * Whether user has seen the expanded step content or not.
+         */
+        this.interacted = false;
+        this._editable = true;
+        this._optional = false;
+        this._customCompleted = null;
+    }
+    Object.defineProperty(CdkStep.prototype, "editable", {
+        get: /**
+         * Whether the user can return to this step once it has been marked as 
complted.
+         * @return {?}
+         */
+        function () { return this._editable; },
+        set: /**
+         * @param {?} value
+         * @return {?}
+         */
+        function (value) {
+            this._editable = 
_angular_cdk_coercion.coerceBooleanProperty(value);
+        },
+        enumerable: true,
+        configurable: true
+    });
+    Object.defineProperty(CdkStep.prototype, "optional", {
+        get: /**
+         * Whether the completion of step is optional.
+         * @return {?}
+         */
+        function () { return this._optional; },
+        set: /**
+         * @param {?} value
+         * @return {?}
+         */
+        function (value) {
+            this._optional = 
_angular_cdk_coercion.coerceBooleanProperty(value);
+        },
+        enumerable: true,
+        configurable: true
+    });
+    Object.defineProperty(CdkStep.prototype, "completed", {
+        get: /**
+         * Whether step is marked as completed.
+         * @return {?}
+         */
+        function () {
+            return this._customCompleted == null ? this._defaultCompleted : 
this._customCompleted;
+        },
+        set: /**
+         * @param {?} value
+         * @return {?}
+         */
+        function (value) {
+            this._customCompleted = 
_angular_cdk_coercion.coerceBooleanProperty(value);
+        },
+        enumerable: true,
+        configurable: true
+    });
+    Object.defineProperty(CdkStep.prototype, "_defaultCompleted", {
+        get: /**
+         * @return {?}
+         */
+        function () {
+            return this.stepControl ? this.stepControl.valid && 
this.interacted : this.interacted;
+        },
+        enumerable: true,
+        configurable: true
+    });
+    /** Selects this step component. */
+    /**
+     * Selects this step component.
+     * @return {?}
+     */
+    CdkStep.prototype.select = /**
+     * Selects this step component.
+     * @return {?}
+     */
+    function () {
+        this._stepper.selected = this;
+    };
+    /** Resets the step to its initial state. Note that this includes 
resetting form data. */
+    /**
+     * Resets the step to its initial state. Note that this includes resetting 
form data.
+     * @return {?}
+     */
+    CdkStep.prototype.reset = /**
+     * Resets the step to its initial state. Note that this includes resetting 
form data.
+     * @return {?}
+     */
+    function () {
+        this.interacted = false;
+        if (this._customCompleted != null) {
+            this._customCompleted = false;
+        }
+        if (this.stepControl) {
+            this.stepControl.reset();
+        }
+    };
+    /**
+     * @return {?}
+     */
+    CdkStep.prototype.ngOnChanges = /**
+     * @return {?}
+     */
+    function () {
+        // Since basically all inputs of the MatStep get proxied through the 
view down to the
+        // underlying MatStepHeader, we have to make sure that change 
detection runs correctly.
+        this._stepper._stateChanged();
+    };
+    CdkStep.decorators = [
+        { type: _angular_core.Component, args: [{selector: 'cdk-step',
+                    exportAs: 'cdkStep',
+                    template: 
"<ng-template><ng-content></ng-content></ng-template>",
+                    encapsulation: _angular_core.ViewEncapsulation.None,
+                    preserveWhitespaces: false,
+                    changeDetection: 
_angular_core.ChangeDetectionStrategy.OnPush,
+                },] },
+    ];
+    /** @nocollapse */
+    CdkStep.ctorParameters = function () { return [
+        { type: CdkStepper, decorators: [{ type: _angular_core.Inject, args: 
[_angular_core.forwardRef(function () { return CdkStepper; }),] },] },
+    ]; };
+    CdkStep.propDecorators = {
+        "stepLabel": [{ type: _angular_core.ContentChild, args: 
[CdkStepLabel,] },],
+        "content": [{ type: _angular_core.ViewChild, args: 
[_angular_core.TemplateRef,] },],
+        "stepControl": [{ type: _angular_core.Input },],
+        "label": [{ type: _angular_core.Input },],
+        "editable": [{ type: _angular_core.Input },],
+        "optional": [{ type: _angular_core.Input },],
+        "completed": [{ type: _angular_core.Input },],
+    };
+    return CdkStep;
+}());
+var CdkStepper = /** @class */ (function () {
+    function CdkStepper(_dir, _changeDetectorRef) {
+        this._dir = _dir;
+        this._changeDetectorRef = _changeDetectorRef;
+        /**
+         * Emits when the component is destroyed.
+         */
+        this._destroyed = new rxjs_Subject.Subject();
+        this._linear = false;
+        this._selectedIndex = 0;
+        /**
+         * Event emitted when the selected step has changed.
+         */
+        this.selectionChange = new _angular_core.EventEmitter();
+        /**
+         * The index of the step that the focus can be set.
+         */
+        this._focusIndex = 0;
+        this._orientation = 'horizontal';
+        this._groupId = nextId++;
+    }
+    Object.defineProperty(CdkStepper.prototype, "linear", {
+        get: /**
+         * Whether the validity of previous steps should be checked or not.
+         * @return {?}
+         */
+        function () { return this._linear; },
+        set: /**
+         * @param {?} value
+         * @return {?}
+         */
+        function (value) { this._linear = 
_angular_cdk_coercion.coerceBooleanProperty(value); },
+        enumerable: true,
+        configurable: true
+    });
+    Object.defineProperty(CdkStepper.prototype, "selectedIndex", {
+        get: /**
+         * The index of the selected step.
+         * @return {?}
+         */
+        function () { return this._selectedIndex; },
+        set: /**
+         * @param {?} index
+         * @return {?}
+         */
+        function (index) {
+            if (this._steps) {
+                // Ensure that the index can't be out of bounds.
+                if (index < 0 || index > this._steps.length - 1) {
+                    throw Error('cdkStepper: Cannot assign out-of-bounds value 
to `selectedIndex`.');
+                }
+                if (this._anyControlsInvalidOrPending(index) || index < 
this._selectedIndex &&
+                    !this._steps.toArray()[index].editable) {
+                    // remove focus from clicked step header if the step is 
not able to be selected
+                    this._stepHeader.toArray()[index].nativeElement.blur();
+                }
+                else if (this._selectedIndex != index) {
+                    this._emitStepperSelectionEvent(index);
+                    this._focusIndex = this._selectedIndex;
+                }
+            }
+            else {
+                this._selectedIndex = this._focusIndex = index;
+            }
+        },
+        enumerable: true,
+        configurable: true
+    });
+    Object.defineProperty(CdkStepper.prototype, "selected", {
+        get: /**
+         * The step that is selected.
+         * @return {?}
+         */
+        function () { return this._steps.toArray()[this.selectedIndex]; },
+        set: /**
+         * @param {?} step
+         * @return {?}
+         */
+        function (step) {
+            this.selectedIndex = this._steps.toArray().indexOf(step);
+        },
+        enumerable: true,
+        configurable: true
+    });
+    /**
+     * @return {?}
+     */
+    CdkStepper.prototype.ngOnDestroy = /**
+     * @return {?}
+     */
+    function () {
+        this._destroyed.next();
+        this._destroyed.complete();
+    };
+    /** Selects and focuses the next step in list. */
+    /**
+     * Selects and focuses the next step in list.
+     * @return {?}
+     */
+    CdkStepper.prototype.next = /**
+     * Selects and focuses the next step in list.
+     * @return {?}
+     */
+    function () {
+        this.selectedIndex = Math.min(this._selectedIndex + 1, 
this._steps.length - 1);
+    };
+    /** Selects and focuses the previous step in list. */
+    /**
+     * Selects and focuses the previous step in list.
+     * @return {?}
+     */
+    CdkStepper.prototype.previous = /**
+     * Selects and focuses the previous step in list.
+     * @return {?}
+     */
+    function () {
+        this.selectedIndex = Math.max(this._selectedIndex - 1, 0);
+    };
+    /** Resets the stepper to its initial state. Note that this includes 
clearing form data. */
+    /**
+     * Resets the stepper to its initial state. Note that this includes 
clearing form data.
+     * @return {?}
+     */
+    CdkStepper.prototype.reset = /**
+     * Resets the stepper to its initial state. Note that this includes 
clearing form data.
+     * @return {?}
+     */
+    function () {
+        this.selectedIndex = 0;
+        this._steps.forEach(function (step) { return step.reset(); });
+        this._stateChanged();
+    };
+    /** Returns a unique id for each step label element. */
+    /**
+     * Returns a unique id for each step label element.
+     * @param {?} i
+     * @return {?}
+     */
+    CdkStepper.prototype._getStepLabelId = /**
+     * Returns a unique id for each step label element.
+     * @param {?} i
+     * @return {?}
+     */
+    function (i) {
+        return "cdk-step-label-" + this._groupId + "-" + i;
+    };
+    /** Returns unique id for each step content element. */
+    /**
+     * Returns unique id for each step content element.
+     * @param {?} i
+     * @return {?}
+     */
+    CdkStepper.prototype._getStepContentId = /**
+     * Returns unique id for each step content element.
+     * @param {?} i
+     * @return {?}
+     */
+    function (i) {
+        return "cdk-step-content-" + this._groupId + "-" + i;
+    };
+    /** Marks the component to be change detected. */
+    /**
+     * Marks the component to be change detected.
+     * @return {?}
+     */
+    CdkStepper.prototype._stateChanged = /**
+     * Marks the component to be change detected.
+     * @return {?}
+     */
+    function () {
+        this._changeDetectorRef.markForCheck();
+    };
+    /** Returns position state of the step with the given index. */
+    /**
+     * Returns position state of the step with the given index.
+     * @param {?} index
+     * @return {?}
+     */
+    CdkStepper.prototype._getAnimationDirection = /**
+     * Returns position state of the step with the given index.
+     * @param {?} index
+     * @return {?}
+     */
+    function (index) {
+        var /** @type {?} */ position = index - this._selectedIndex;
+        if (position < 0) {
+            return this._layoutDirection() === 'rtl' ? 'next' : 'previous';
+        }
+        else if (position > 0) {
+            return this._layoutDirection() === 'rtl' ? 'previous' : 'next';
+        }
+        return 'current';
+    };
+    /** Returns the type of icon to be displayed. */
+    /**
+     * Returns the type of icon to be displayed.
+     * @param {?} index
+     * @return {?}
+     */
+    CdkStepper.prototype._getIndicatorType = /**
+     * Returns the type of icon to be displayed.
+     * @param {?} index
+     * @return {?}
+     */
+    function (index) {
+        var /** @type {?} */ step = this._steps.toArray()[index];
+        if (!step.completed || this._selectedIndex == index) {
+            return 'number';
+        }
+        else {
+            return step.editable ? 'edit' : 'done';
+        }
+    };
+    /**
+     * @param {?} newIndex
+     * @return {?}
+     */
+    CdkStepper.prototype._emitStepperSelectionEvent = /**
+     * @param {?} newIndex
+     * @return {?}
+     */
+    function (newIndex) {
+        var /** @type {?} */ stepsArray = this._steps.toArray();
+        this.selectionChange.emit({
+            selectedIndex: newIndex,
+            previouslySelectedIndex: this._selectedIndex,
+            selectedStep: stepsArray[newIndex],
+            previouslySelectedStep: stepsArray[this._selectedIndex],
+        });
+        this._selectedIndex = newIndex;
+        this._stateChanged();
+    };
+    /**
+     * @param {?} event
+     * @return {?}
+     */
+    CdkStepper.prototype._onKeydown = /**
+     * @param {?} event
+     * @return {?}
+     */
+    function (event) {
+        var /** @type {?} */ keyCode = event.keyCode;
+        // Note that the left/right arrows work both in vertical and 
horizontal mode.
+        if (keyCode === _angular_cdk_keycodes.RIGHT_ARROW) {
+            this._layoutDirection() === 'rtl' ? this._focusPreviousStep() : 
this._focusNextStep();
+            event.preventDefault();
+        }
+        if (keyCode === _angular_cdk_keycodes.LEFT_ARROW) {
+            this._layoutDirection() === 'rtl' ? this._focusNextStep() : 
this._focusPreviousStep();
+            event.preventDefault();
+        }
+        // Note that the up/down arrows only work in vertical mode.
+        // See: https://www.w3.org/TR/wai-aria-practices-1.1/#tabpanel
+        if (this._orientation === 'vertical' && (keyCode === 
_angular_cdk_keycodes.UP_ARROW || keyCode === 
_angular_cdk_keycodes.DOWN_ARROW)) {
+            keyCode === _angular_cdk_keycodes.UP_ARROW ? 
this._focusPreviousStep() : this._focusNextStep();
+            event.preventDefault();
+        }
+        if (keyCode === _angular_cdk_keycodes.SPACE || keyCode === 
_angular_cdk_keycodes.ENTER) {
+            this.selectedIndex = this._focusIndex;
+            event.preventDefault();
+        }
+        if (keyCode === _angular_cdk_keycodes.HOME) {
+            this._focusStep(0);
+            event.preventDefault();
+        }
+        if (keyCode === _angular_cdk_keycodes.END) {
+            this._focusStep(this._steps.length - 1);
+            event.preventDefault();
+        }
+    };
+    /**
+     * @return {?}
+     */
+    CdkStepper.prototype._focusNextStep = /**
+     * @return {?}
+     */
+    function () {
+        this._focusStep((this._focusIndex + 1) % this._steps.length);
+    };
+    /**
+     * @return {?}
+     */
+    CdkStepper.prototype._focusPreviousStep = /**
+     * @return {?}
+     */
+    function () {
+        this._focusStep((this._focusIndex + this._steps.length - 1) % 
this._steps.length);
+    };
+    /**
+     * @param {?} index
+     * @return {?}
+     */
+    CdkStepper.prototype._focusStep = /**
+     * @param {?} index
+     * @return {?}
+     */
+    function (index) {
+        this._focusIndex = index;
+        this._stepHeader.toArray()[this._focusIndex].nativeElement.focus();
+    };
+    /**
+     * @param {?} index
+     * @return {?}
+     */
+    CdkStepper.prototype._anyControlsInvalidOrPending = /**
+     * @param {?} index
+     * @return {?}
+     */
+    function (index) {
+        var /** @type {?} */ steps = this._steps.toArray();
+        steps[this._selectedIndex].interacted = true;
+        if (this._linear && index >= 0) {
+            return steps.slice(0, index).some(function (step) {
+                var /** @type {?} */ control = step.stepControl;
+                var /** @type {?} */ isIncomplete = control ? (control.invalid 
|| control.pending) : !step.completed;
+                return isIncomplete && !step.optional;
+            });
+        }
+        return false;
+    };
+    /**
+     * @return {?}
+     */
+    CdkStepper.prototype._layoutDirection = /**
+     * @return {?}
+     */
+    function () {
+        return this._dir && this._dir.value === 'rtl' ? 'rtl' : 'ltr';
+    };
+    CdkStepper.decorators = [
+        { type: _angular_core.Directive, args: [{
+                    selector: '[cdkStepper]',
+                    exportAs: 'cdkStepper',
+                },] },
+    ];
+    /** @nocollapse */
+    CdkStepper.ctorParameters = function () { return [
+        { type: _angular_cdk_bidi.Directionality, decorators: [{ type: 
_angular_core.Optional },] },
+        { type: _angular_core.ChangeDetectorRef, },
+    ]; };
+    CdkStepper.propDecorators = {
+        "_steps": [{ type: _angular_core.ContentChildren, args: [CdkStep,] },],
+        "linear": [{ type: _angular_core.Input },],
+        "selectedIndex": [{ type: _angular_core.Input },],
+        "selected": [{ type: _angular_core.Input },],
+        "selectionChange": [{ type: _angular_core.Output },],
+    };
+    return CdkStepper;
+}());
+
+/**
+ * @fileoverview added by tsickle
+ * @suppress {checkTypes} checked by tsc
+ */
+
+/**
+ * Button that moves to the next step in a stepper workflow.
+ */
+var CdkStepperNext = /** @class */ (function () {
+    function CdkStepperNext(_stepper) {
+        this._stepper = _stepper;
+        /**
+         * Type of the next button. Defaults to "submit" if not specified.
+         */
+        this.type = 'submit';
+    }
+    CdkStepperNext.decorators = [
+        { type: _angular_core.Directive, args: [{
+                    selector: 'button[cdkStepperNext]',
+                    host: {
+                        '(click)': '_stepper.next()',
+                        '[type]': 'type',
+                    }
+                },] },
+    ];
+    /** @nocollapse */
+    CdkStepperNext.ctorParameters = function () { return [
+        { type: CdkStepper, },
+    ]; };
+    CdkStepperNext.propDecorators = {
+        "type": [{ type: _angular_core.Input },],
+    };
+    return CdkStepperNext;
+}());
+/**
+ * Button that moves to the previous step in a stepper workflow.
+ */
+var CdkStepperPrevious = /** @class */ (function () {
+    function CdkStepperPrevious(_stepper) {
+        this._stepper = _stepper;
+        /**
+         * Type of the previous button. Defaults to "button" if not specified.
+         */
+        this.type = 'button';
+    }
+    CdkStepperPrevious.decorators = [
+        { type: _angular_core.Directive, args: [{
+                    selector: 'button[cdkStepperPrevious]',
+                    host: {
+                        '(click)': '_stepper.previous()',
+                        '[type]': 'type',
+                    }
+                },] },
+    ];
+    /** @nocollapse */
+    CdkStepperPrevious.ctorParameters = function () { return [
+        { type: CdkStepper, },
+    ]; };
+    CdkStepperPrevious.propDecorators = {
+        "type": [{ type: _angular_core.Input },],
+    };
+    return CdkStepperPrevious;
+}());
+
+/**
+ * @fileoverview added by tsickle
+ * @suppress {checkTypes} checked by tsc
+ */
+
+var CdkStepperModule = /** @class */ (function () {
+    function CdkStepperModule() {
+    }
+    CdkStepperModule.decorators = [
+        { type: _angular_core.NgModule, args: [{
+                    imports: [_angular_cdk_bidi.BidiModule, 
_angular_common.CommonModule],
+                    exports: [CdkStep, CdkStepper, CdkStepLabel, 
CdkStepperNext, CdkStepperPrevious],
+                    declarations: [CdkStep, CdkStepper, CdkStepLabel, 
CdkStepperNext, CdkStepperPrevious]
+                },] },
+    ];
+    /** @nocollapse */
+    CdkStepperModule.ctorParameters = function () { return []; };
+    return CdkStepperModule;
+}());
+
+exports.StepperSelectionEvent = StepperSelectionEvent;
+exports.CdkStep = CdkStep;
+exports.CdkStepper = CdkStepper;
+exports.CdkStepLabel = CdkStepLabel;
+exports.CdkStepperNext = CdkStepperNext;
+exports.CdkStepperPrevious = CdkStepperPrevious;
+exports.CdkStepperModule = CdkStepperModule;
+
+Object.defineProperty(exports, '__esModule', { value: true });
+
+})));
+//# sourceMappingURL=cdk-stepper.umd.js.map

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/eec354e6/node_modules/@angular/cdk/bundles/cdk-stepper.umd.js.map
----------------------------------------------------------------------
diff --git a/node_modules/@angular/cdk/bundles/cdk-stepper.umd.js.map 
b/node_modules/@angular/cdk/bundles/cdk-stepper.umd.js.map
new file mode 100644
index 0000000..bb8201a
--- /dev/null
+++ b/node_modules/@angular/cdk/bundles/cdk-stepper.umd.js.map
@@ -0,0 +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 CdkStepperModu
 le {}\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 {\n  ContentChildren,\n  
EventEmitter,\n  Input,\n  Output,\n  QueryList,\n  Directive,\n  ElementRef,\n 
 Component,\n  ContentChild,\n  ViewChild,\n  TemplateRef,\n  
ViewEncapsulation,\n  Optional,\n  Inject,\n  forwardRef,\n  
ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  OnChanges,\n  OnDestroy\n} 
from '@angular/core';\nimport {\n  LEFT_ARROW,\n  RIGHT_ARROW,\n  DOWN_ARROW,\n 
 UP_ARROW,\n  ENTER,\n  SPACE,\n  HOME,\n  END,\n} from 
'@angular/cdk/keycodes';\nimport {CdkStepLabel} from './step-label';\nimport 
{coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {AbstractControl} 
from '@angular/forms';\nimport {Direction, Directionalit
 y} from '@angular/cdk/bidi';\nimport {Subject} from 'rxjs/Subject';\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@Component({\n  moduleId: module.id,\n  selector: 'cdk-step',\n  
exportAs: 'cdkStep',\n  tem
 plateUrl: 'step.html',\n  encapsulation: ViewEncapsulation.None,\n  
preserveWhitespaces: false,\n  changeDetection: 
ChangeDetectionStrategy.OnPush,\n})\nexport class CdkStep implements OnChanges 
{\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  /** Label of the step. */\n  @Input() 
label: string;\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 optio
 nal(): 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._defaultCompleted : this._customCompleted;\n  }\n  set completed(value: 
boolean) {\n    this._customCompleted = coerceBooleanProperty(value);\n  }\n  
private _customCompleted: boolean | null = null;\n\n  private get 
_defaultCompleted() {\n    return this.stepControl ? this.stepControl.valid && 
this.interacted : this.interacted;\n  }\n\n  constructor(@Inject(forwardRef(() 
=> CdkStepper)) private _stepper: CdkStepper) { }\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._customC
 ompleted != null) {\n      this._customCompleted = 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 OnDestroy {\n  /** Emits when the component is destroyed. */\n  
protected _destroyed = new Subject<void>();\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<ElementRef>;\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(val
 ue: 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._anyControlsInvalidOrPending(index) || index < this._selectedIndex &&\n   
       !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      } else if 
(this._selectedIndex != index) {\n        
this._emitStepperSelectionEvent(index);\n        this._focusIndex = 
this._selectedIndex;\n      }\n    } else {\n      this._selectedIndex = 
this._focusIndex = index;
 \n    }\n  }\n  private _selectedIndex = 0;\n\n  /** The step that is 
selected. */\n  @Input()\n  get selected(): CdkStep { return 
this._steps.toArray()[this.selectedIndex]; }\n  set selected(step: CdkStep) {\n 
   this.selectedIndex = this._steps.toArray().indexOf(step);\n  }\n\n  /** 
Event emitted when the selected step has changed. */\n  @Output() 
selectionChange: EventEmitter<StepperSelectionEvent>\n      = new 
EventEmitter<StepperSelectionEvent>();\n\n  /** The index of the step that the 
focus can be set. */\n  _focusIndex: number = 0;\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    this._groupId = nextId++;\n  }\n\n  ngOnDestroy() {\n 
   this._destroyed.next();\n    this._destroyed.complete();\n  }\n\n  /** 
Selects and focuses the next step in list. */\n  n
 ext(): 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.selectedIndex = 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): 'number' | 'edit' | 
'done' {\n    const step = this._steps.toArray()[index];\n    if 
(!step.completed || this._selectedIndex == index) {\n      return 'number';\n   
 } else {\n      return step.editable ? 'edit' : 'done';\n    }\n  }\n\n  
private _emitStepperSelectionEvent(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    this._selectedIndex = newIndex;\n    
this._stateChanged();\n  }\n\n  _onKeydown(event: KeyboardEvent) {\n    const 
keyCode = event.keyCode;\n\n    // Note that the left/right arrows work both in 
vertical and horizontal mode.\n    if (keyCode === RIGHT_ARROW) {\n      
this._layoutDirection() === 'rtl' ? this._focusPreviousStep() : 
this._focusNextStep();\n      event.preventDefault();\n    }\n\n    if (keyCode 
=== LEFT_ARROW) {\n      this._layoutDirection() === 'rtl' ? 
this._focusNextStep() : this._focusPreviousStep();\n      
event.preventDefault();\n    }\n\n    // Note that the up/down arrows only work 
in vertical mode.\n    // See: 
https://www.w3.org/TR/wai-aria-practices-1.1/#tabpanel\n    if 
(this._orientation === 'vertical' && (keyCode === UP_ARROW || keyCode === 
DOWN_ARROW)) {\n      keyCode === UP_ARROW ? this._focusPreviousStep() : 
this._focusNextStep();\n      event.preventDefault();\n    }\n\n    if (keyCode 
=== SPACE || keyCode === ENTER) {\
 n      this.selectedIndex = this._focusIndex;\n      event.preventDefault();\n 
   }\n\n    if (keyCode === HOME) {\n      this._focusStep(0);\n      
event.preventDefault();\n    }\n\n    if (keyCode === END) {\n      
this._focusStep(this._steps.length - 1);\n      event.preventDefault();\n    
}\n  }\n\n  private _focusNextStep() {\n    this._focusStep((this._focusIndex + 
1) % this._steps.length);\n  }\n\n  private _focusPreviousStep() {\n    
this._focusStep((this._focusIndex + this._steps.length - 1) % 
this._steps.length);\n  }\n\n  private _focusStep(index: number) {\n    
this._focusIndex = index;\n    
this._stepHeader.toArray()[this._focusIndex].nativeElement.focus();\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 ? (control.invalid || control.pending) : 
!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","/**\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","END","HOME","SPACE","ENTER","LEFT_ARROW","RIGHT_ARROW","ChangeDetectionStrategy","ViewEncapsulation","Component","coerceBooleanProperty","TemplateRef"],"mappings":";;;;;;;;;;;;;;;;;;AGQA,IAAA,YA
 
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"}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/eec354e6/node_modules/@angular/cdk/bundles/cdk-stepper.umd.min.js
----------------------------------------------------------------------
diff --git a/node_modules/@angular/cdk/bundles/cdk-stepper.umd.min.js 
b/node_modules/@angular/cdk/bundles/cdk-stepper.umd.min.js
new file mode 100644
index 0000000..c8be99a
--- /dev/null
+++ b/node_modules/@angular/cdk/bundles/cdk-stepper.umd.min.js
@@ -0,0 +1,9 @@
+/**
+ * @license
+ * Copyright Google LLC All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+!function(e,t){"object"==typeof exports&&"undefined"!=typeof 
module?t(exports,require("@angular/core"),require("@angular/cdk/keycodes"),require("@angular/cdk/coercion"),require("@angular/forms"),require("@angular/cdk/bidi"),require("rxjs/Subject"),require("@angular/common")):"function"==typeof
 
define&&define.amd?define(["exports","@angular/core","@angular/cdk/keycodes","@angular/cdk/coercion","@angular/forms","@angular/cdk/bidi","rxjs/Subject","@angular/common"],t):t((e.ng=e.ng||{},e.ng.cdk=e.ng.cdk||{},e.ng.cdk.stepper=e.ng.cdk.stepper||{}),e.ng.core,e.ng.cdk.keycodes,e.ng.cdk.coercion,e.ng.forms,e.ng.cdk.bidi,e.Rx,e.ng.common)}(this,function(e,t,n,o,r,s,i,p){"use
 strict";var c=function(){function e(e){this.template=e}return 
e.decorators=[{type:t.Directive,args:[{selector:"[cdkStepLabel]"}]}],e.ctorParameters=function(){return[{type:t.TemplateRef}]},e}(),u=0,a=function(){function
 e(){}return e}(),d=function(){function 
e(e){this._stepper=e,this.interacted=!1,this._editable=!0,this._
 optional=!1,this._customCompleted=null}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._defaultCompleted:this._customCompleted},set:function(e){this._customCompleted=o.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_defaultCompleted",{get:function(){return
 
this.stepControl?this.stepControl.valid&&this.interacted:this.interacted},enumerable:!0,configurable:!0}),e.prototype.select=function(){this._stepper.selected=this},e.prototype.reset=function(){this.interacted=!1,null!=this._customCompleted&&(this._customCompleted=!1),this.stepContr
 
ol&&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,preserveWhitespaces:!1,changeDetection:t.ChangeDetectionStrategy.OnPush}]}],e.ctorParameters=function(){return[{type:l,decorators:[{type:t.Inject,args:[t.forwardRef(function(){return
 
l})]}]}]},e.propDecorators={stepLabel:[{type:t.ContentChild,args:[c]}],content:[{type:t.ViewChild,args:[t.TemplateRef]}],stepControl:[{type:t.Input}],label:[{type:t.Input}],editable:[{type:t.Input}],optional:[{type:t.Input}],completed:[{type:t.Input}]},e}(),l=function(){function
 e(e,n){this._dir=e,this._changeDetectorRef=n,this._destroyed=new 
i.Subject,this._linear=!1,this._selectedIndex=0,this.selectionChange=new 
t.EventEmitter,this._focusIndex=0,this._orientation="horizontal",this._groupId=u++}return
 Object.defineProperty(e.proto
 type,"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._anyControlsInvalidOrPending(e)||e<this._selectedIndex&&!this._steps.toArray()[e].editable?this._stepHeader.toArray()[e].nativeElement.blur():this._selectedIndex!=e&&(this._emitStepperSelectionEvent(e),this._focusIndex=this._selectedIndex)}else
 
this._selectedIndex=this._focusIndex=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selected",{get:function(){return
 
this._steps.toArray()[this.selectedIndex]},set:function(e){this.selectedIndex=this._steps.toArray().indexOf(e)},enumerable:!0,configurable:!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.selectedIndex=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){var
 t=this._steps.toArray()[e];return 
t.completed&&this._selectedIndex!=e?t.editable?"edit":"done":"number"},e.prototype._emitStepperSelectionEvent=function(e){var
 t=this._steps.toArray();this
 
.selectionChange.emit({selectedIndex:e,previouslySelectedIndex:this._selectedIndex,selectedStep:t[e],previouslySelectedStep:t[this._selectedIndex]}),this._selectedIndex=e,this._stateChanged()},e.prototype._onKeydown=function(e){var
 
t=e.keyCode;t===n.RIGHT_ARROW&&("rtl"===this._layoutDirection()?this._focusPreviousStep():this._focusNextStep(),e.preventDefault()),t===n.LEFT_ARROW&&("rtl"===this._layoutDirection()?this._focusNextStep():this._focusPreviousStep(),e.preventDefault()),"vertical"!==this._orientation||t!==n.UP_ARROW&&t!==n.DOWN_ARROW||(t===n.UP_ARROW?this._focusPreviousStep():this._focusNextStep(),e.preventDefault()),t!==n.SPACE&&t!==n.ENTER||(this.selectedIndex=this._focusIndex,e.preventDefault()),t===n.HOME&&(this._focusStep(0),e.preventDefault()),t===n.END&&(this._focusStep(this._steps.length-1),e.preventDefault())},e.prototype._focusNextStep=function(){this._focusStep((this._focusIndex+1)%this._steps.length)},e.prototype._focusPreviousStep=function(){this._focusStep((thi
 
s._focusIndex+this._steps.length-1)%this._steps.length)},e.prototype._focusStep=function(e){this._focusIndex=e,this._stepHeader.toArray()[this._focusIndex].nativeElement.focus()},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.completed)&&!e.optional})},e.prototype._layoutDirection=function(){return
 
this._dir&&"rtl"===this._dir.value?"rtl":"ltr"},e.decorators=[{type:t.Directive,args:[{selector:"[cdkStepper]",exportAs:"cdkStepper"}]}],e.ctorParameters=function(){return[{type:s.Directionality,decorators:[{type:t.Optional}]},{type:t.ChangeDetectorRef}]},e.propDecorators={_steps:[{type:t.ContentChildren,args:[d]}],linear:[{type:t.Input}],selectedIndex:[{type:t.Input}],selected:[{type:t.Input}],selectionChange:[{type:t.Output}]},e}(),h=function(){function
 e(e){this._stepper=e,this.type="submit"}return e.dec
 
orators=[{type:t.Directive,args:[{selector:"button[cdkStepperNext]",host:{"(click)":"_stepper.next()","[type]":"type"}}]}],e.ctorParameters=function(){return[{type:l}]},e.propDecorators={type:[{type:t.Input}]},e}(),f=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:l}]},e.propDecorators={type:[{type:t.Input}]},e}(),_=function(){function
 e(){}return 
e.decorators=[{type:t.NgModule,args:[{imports:[s.BidiModule,p.CommonModule],exports:[d,l,c,h,f],declarations:[d,l,c,h,f]}]}],e.ctorParameters=function(){return[]},e}();e.StepperSelectionEvent=a,e.CdkStep=d,e.CdkStepper=l,e.CdkStepLabel=c,e.CdkStepperNext=h,e.CdkStepperPrevious=f,e.CdkStepperModule=_,Object.defineProperty(e,"__esModule",{value:!0})});
+//# sourceMappingURL=cdk-stepper.umd.min.js.map

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/eec354e6/node_modules/@angular/cdk/bundles/cdk-stepper.umd.min.js.map
----------------------------------------------------------------------
diff --git a/node_modules/@angular/cdk/bundles/cdk-stepper.umd.min.js.map 
b/node_modules/@angular/cdk/bundles/cdk-stepper.umd.min.js.map
new file mode 100644
index 0000000..1ac6201
--- /dev/null
+++ b/node_modules/@angular/cdk/bundles/cdk-stepper.umd.min.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"cdk-stepper.umd.min.js","sources":["../../src/cdk/stepper/step-label.ts","../../src/cdk/stepper/stepper.ts","../../src/cdk/stepper/stepper-button.ts","../../src/cdk/stepper/stepper-module.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 {Directive, 
TemplateRef} from '@angular/core';\n\n@Directive({\n  selector: 
'[cdkStepLabel]',\n})\nexport class CdkStepLabel {\n  constructor(/** 
@docs-private */ public template: TemplateRef<any>) { }\n}\n","/**\n * 
@license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this 
source code is governed by an MIT-style license that can be\n * found in the 
LICENSE file at https://angular.io/license\n */\n\nimport {\n  
ContentChildren,\n  EventEmitter,\n  Input,\n  Output,\n  QueryList,\n  
Directive,\n  ElementRef,\n  Component,\n 
  ContentChild,\n  ViewChild,\n  TemplateRef,\n  ViewEncapsulation,\n  
Optional,\n  Inject,\n  forwardRef,\n  ChangeDetectionStrategy,\n  
ChangeDetectorRef,\n  OnChanges,\n  OnDestroy\n} from '@angular/core';\nimport 
{\n  LEFT_ARROW,\n  RIGHT_ARROW,\n  DOWN_ARROW,\n  UP_ARROW,\n  ENTER,\n  
SPACE,\n  HOME,\n  END,\n} from '@angular/cdk/keycodes';\nimport {CdkStepLabel} 
from './step-label';\nimport {coerceBooleanProperty} from 
'@angular/cdk/coercion';\nimport {AbstractControl} from 
'@angular/forms';\nimport {Direction, Directionality} from 
'@angular/cdk/bidi';\nimport {Subject} from 'rxjs/Subject';\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 StepperOrienta
 tion = '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@Component({\n  
moduleId: module.id,\n  selector: 'cdk-step',\n  exportAs: 'cdkStep',\n  
templateUrl: 'step.html',\n  encapsulation: ViewEncapsulation.None,\n  
preserveWhitespaces: false,\n  changeDetection: 
ChangeDetectionStrategy.OnPush,\n})\nexport class CdkStep implements OnChanges 
{\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  /** Label of the step. */\n  
@Input() label: string;\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._defaultCompleted : this._customCompleted;\n  }\n  set completed(value: 
boolean) {\n    this._customCompleted = coerceBooleanProperty(value);\n  }\n  
private _
 customCompleted: boolean | null = null;\n\n  private get _defaultCompleted() 
{\n    return this.stepControl ? this.stepControl.valid && this.interacted : 
this.interacted;\n  }\n\n  constructor(@Inject(forwardRef(() => CdkStepper)) 
private _stepper: CdkStepper) { }\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.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 OnDestroy {\n  /** Emits when the 
component is destroyed. */\n  protected _destroyed = new Subject<void>();\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<ElementRef>;\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._anyControlsInvalidOrPending(index) || index 
< this._selectedIndex &&\n          !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     
 } else if (this._selectedIndex != index) {\n        
this._emitStepperSelectionEvent(index);\n        this._focusIndex = 
this._selectedIndex;\n      }\n    } else {\n      this._selectedIndex = 
this._focusIndex = index;\n    }\n  }\n  private _selectedIndex = 0;\n\n  /** 
The step that is selected. */\n  @Input()\n  get selected(): CdkStep { return 
this._steps.toArray()[this.selectedIndex]; }\n  set selected(step: CdkStep) {\n 
   this.selectedIndex = this._steps.toArray().indexOf(step);\n  }\n\n  /** 
Event emitted when the selected step has changed. */\n  @Output() 
selectionChange: EventEmitter<StepperSelectionEvent>\n      = new 
EventEmitter<StepperSelectionEvent>();\n\n  
 /** The index of the step that the focus can be set. */\n  _focusIndex: number 
= 0;\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    
this._groupId = nextId++;\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.selectedIndex = 0;\n    
this._steps.forEach(step => step.reset());\n    this._stat
 eChanged();\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): 'number' | 'edit' | 
 'done' {\n    const step = this._steps.toArray()[index];\n    if 
(!step.completed || this._selectedIndex == index) {\n      return 'number';\n   
 } else {\n      return step.editable ? 'edit' : 'done';\n    }\n  }\n\n  
private _emitStepperSelectionEvent(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    this._selectedIndex = 
newIndex;\n    this._stateChanged();\n  }\n\n  _onKeydown(event: KeyboardEvent) 
{\n    const keyCode = event.keyCode;\n\n    // Note that the left/right arrows 
work both in vertical and horizontal mode.\n    if (keyCode === RIGHT_ARROW) 
{\n      this._layoutDirection() === 'rtl' ? this._focusPreviousStep() : 
this._focusNextStep();\n      event.preventDefault();\n    }\n\n    if (keyCode 
=== LEFT_ARROW) {\n
       this._layoutDirection() === 'rtl' ? this._focusNextStep() : 
this._focusPreviousStep();\n      event.preventDefault();\n    }\n\n    // Note 
that the up/down arrows only work in vertical mode.\n    // See: 
https://www.w3.org/TR/wai-aria-practices-1.1/#tabpanel\n    if 
(this._orientation === 'vertical' && (keyCode === UP_ARROW || keyCode === 
DOWN_ARROW)) {\n      keyCode === UP_ARROW ? this._focusPreviousStep() : 
this._focusNextStep();\n      event.preventDefault();\n    }\n\n    if (keyCode 
=== SPACE || keyCode === ENTER) {\n      this.selectedIndex = 
this._focusIndex;\n      event.preventDefault();\n    }\n\n    if (keyCode === 
HOME) {\n      this._focusStep(0);\n      event.preventDefault();\n    }\n\n    
if (keyCode === END) {\n      this._focusStep(this._steps.length - 1);\n      
event.preventDefault();\n    }\n  }\n\n  private _focusNextStep() {\n    
this._focusStep((this._focusIndex + 1) % this._steps.length);\n  }\n\n  private 
_focusPreviousStep() {\n    this._focusStep(
 (this._focusIndex + this._steps.length - 1) % this._steps.length);\n  }\n\n  
private _focusStep(index: number) {\n    this._focusIndex = index;\n    
this._stepHeader.toArray()[this._focusIndex].nativeElement.focus();\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 ? (control.invalid || control.pending) : 
!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","/**\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 LICE
 NSE 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 Rig
 hts 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"],"names":["CdkStepLabel","template","this","type","Directive","args","selector","TemplateRef","nextId","StepperSelectionEvent","CdkStep","_stepper","interacted","_editable","_optional","_customCompleted","Object","defineProperty","prototype","value","coerceBooleanPrope
 
rty","_defaultCompleted","stepControl","valid","select","selected","reset","ngOnChanges","_stateChanged","Component","exportAs","encapsulation","ViewEncapsulation","None","preserveWhitespaces","changeDetection","ChangeDetectionStrategy","OnPush","propDecorators","Input","label","editable","optional","completed","CdkStepper","_changeDetectorRef","_selectedIndex","_groupId","get","configurable","index","_steps","length","_anyControlsInvalidOrPending","toArray","_stepHeader","nativeElement","blur","_emitStepperSelectionEvent","_focusIndex","enumerable","_destroyed","complete","forEach","step","position","_layoutDirection","selectionChange","emit","selectedIndex","newIndex","previouslySelectedIndex","selectedStep","stepsArray","previouslySelectedStep","keyCode","RIGHT_ARROW","event","preventDefault","LEFT_ARROW","_focusNextStep","_focusPreviousStep","SPACE","ENTER","HOME","_focusStep","END","focus","steps","_linear","slice","some","control","invalid","pending","decorators","Output","Cdk
 
StepperNext","host","(click)","[type]","CdkStepperPrevious","CdkStepperModule","NgModule","imports","BidiModule","CommonModule","exports","declarations"],"mappings":"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"}
\ No newline at end of file

Reply via email to