Index: trip-planner-front/node_modules/@angular/cdk/__ivy_ngcc__/fesm2015/stepper.js
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/__ivy_ngcc__/fesm2015/stepper.js	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
+++ trip-planner-front/node_modules/@angular/cdk/__ivy_ngcc__/fesm2015/stepper.js	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -0,0 +1,732 @@
+import { FocusKeyManager } from '@angular/cdk/a11y';
+import { Directionality, BidiModule } from '@angular/cdk/bidi';
+import { coerceBooleanProperty, coerceNumberProperty } from '@angular/cdk/coercion';
+import { hasModifierKey, SPACE, ENTER } from '@angular/cdk/keycodes';
+import { DOCUMENT } from '@angular/common';
+import { Directive, ElementRef, TemplateRef, InjectionToken, EventEmitter, Component, ViewEncapsulation, ChangeDetectionStrategy, Inject, forwardRef, Optional, ContentChild, ViewChild, Input, Output, QueryList, ChangeDetectorRef, ContentChildren, HostListener, NgModule } from '@angular/core';
+import { _getFocusedElementPierceShadowDom } from '@angular/cdk/platform';
+import { Subject, of } from 'rxjs';
+import { startWith, takeUntil } from 'rxjs/operators';
+
+/**
+ * @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
+ */
+import * as ɵngcc0 from '@angular/core';
+import * as ɵngcc1 from '@angular/cdk/bidi';
+
+function CdkStep_ng_template_0_Template(rf, ctx) { if (rf & 1) {
+    ɵngcc0.ɵɵprojection(0);
+} }
+const _c0 = ["*"];
+class CdkStepHeader {
+    constructor(_elementRef) {
+        this._elementRef = _elementRef;
+    }
+    /** Focuses the step header. */
+    focus() {
+        this._elementRef.nativeElement.focus();
+    }
+}
+CdkStepHeader.ɵfac = function CdkStepHeader_Factory(t) { return new (t || CdkStepHeader)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };
+CdkStepHeader.ɵdir = /*@__PURE__*/ ɵngcc0.ɵɵdefineDirective({ type: CdkStepHeader, selectors: [["", "cdkStepHeader", ""]], hostAttrs: ["role", "tab"] });
+CdkStepHeader.ctorParameters = () => [
+    { type: ElementRef }
+];
+(function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(CdkStepHeader, [{
+        type: Directive,
+        args: [{
+                selector: '[cdkStepHeader]',
+                host: {
+                    'role': 'tab'
+                }
+            }]
+    }], function () { return [{ type: ɵngcc0.ElementRef }]; }, null); })();
+
+/**
+ * @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
+ */
+class CdkStepLabel {
+    constructor(/** @docs-private */ template) {
+        this.template = template;
+    }
+}
+CdkStepLabel.ɵfac = function CdkStepLabel_Factory(t) { return new (t || CdkStepLabel)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.TemplateRef)); };
+CdkStepLabel.ɵdir = /*@__PURE__*/ ɵngcc0.ɵɵdefineDirective({ type: CdkStepLabel, selectors: [["", "cdkStepLabel", ""]] });
+CdkStepLabel.ctorParameters = () => [
+    { type: TemplateRef }
+];
+(function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(CdkStepLabel, [{
+        type: Directive,
+        args: [{
+                selector: '[cdkStepLabel]'
+            }]
+    }], function () { return [{ type: ɵngcc0.TemplateRef }]; }, null); })();
+
+/**
+ * @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
+ */
+/** Used to generate unique ID for each stepper component. */
+let nextId = 0;
+/** Change event emitted on selection changes. */
+class StepperSelectionEvent {
+}
+/** Enum to represent the different states of the steps. */
+const STEP_STATE = {
+    NUMBER: 'number',
+    EDIT: 'edit',
+    DONE: 'done',
+    ERROR: 'error'
+};
+/** InjectionToken that can be used to specify the global stepper options. */
+const STEPPER_GLOBAL_OPTIONS = new InjectionToken('STEPPER_GLOBAL_OPTIONS');
+class CdkStep {
+    constructor(_stepper, stepperOptions) {
+        this._stepper = _stepper;
+        /** Whether user has attempted to move away from the step. */
+        this.interacted = false;
+        /** Emits when the user has attempted to move away from the step. */
+        this.interactedStream = new EventEmitter();
+        this._editable = true;
+        this._optional = false;
+        this._completedOverride = null;
+        this._customError = null;
+        this._stepperOptions = stepperOptions ? stepperOptions : {};
+        this._displayDefaultIndicatorType = this._stepperOptions.displayDefaultIndicatorType !== false;
+    }
+    /** Whether the user can return to this step once it has been marked as completed. */
+    get editable() {
+        return this._editable;
+    }
+    set editable(value) {
+        this._editable = coerceBooleanProperty(value);
+    }
+    /** Whether the completion of step is optional. */
+    get optional() {
+        return this._optional;
+    }
+    set optional(value) {
+        this._optional = coerceBooleanProperty(value);
+    }
+    /** Whether step is marked as completed. */
+    get completed() {
+        return this._completedOverride == null ? this._getDefaultCompleted() : this._completedOverride;
+    }
+    set completed(value) {
+        this._completedOverride = coerceBooleanProperty(value);
+    }
+    _getDefaultCompleted() {
+        return this.stepControl ? this.stepControl.valid && this.interacted : this.interacted;
+    }
+    /** Whether step has an error. */
+    get hasError() {
+        return this._customError == null ? this._getDefaultError() : this._customError;
+    }
+    set hasError(value) {
+        this._customError = coerceBooleanProperty(value);
+    }
+    _getDefaultError() {
+        return this.stepControl && this.stepControl.invalid && this.interacted;
+    }
+    /** Selects this step component. */
+    select() {
+        this._stepper.selected = this;
+    }
+    /** Resets the step to its initial state. Note that this includes resetting form data. */
+    reset() {
+        this.interacted = false;
+        if (this._completedOverride != null) {
+            this._completedOverride = false;
+        }
+        if (this._customError != null) {
+            this._customError = false;
+        }
+        if (this.stepControl) {
+            this.stepControl.reset();
+        }
+    }
+    ngOnChanges() {
+        // 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();
+    }
+    _markAsInteracted() {
+        if (!this.interacted) {
+            this.interacted = true;
+            this.interactedStream.emit(this);
+        }
+    }
+    /** Determines whether the error state can be shown. */
+    _showError() {
+        var _a;
+        // We want to show the error state either if the user opted into/out of it using the
+        // global options, or if they've explicitly set it through the `hasError` input.
+        return (_a = this._stepperOptions.showError) !== null && _a !== void 0 ? _a : this._customError != null;
+    }
+}
+CdkStep.ɵfac = function CdkStep_Factory(t) { return new (t || CdkStep)(ɵngcc0.ɵɵdirectiveInject(forwardRef(() => CdkStepper)), ɵngcc0.ɵɵdirectiveInject(STEPPER_GLOBAL_OPTIONS, 8)); };
+CdkStep.ɵcmp = /*@__PURE__*/ ɵngcc0.ɵɵdefineComponent({ type: CdkStep, selectors: [["cdk-step"]], contentQueries: function CdkStep_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
+        ɵngcc0.ɵɵcontentQuery(dirIndex, CdkStepLabel, 5);
+    } if (rf & 2) {
+        let _t;
+        ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.stepLabel = _t.first);
+    } }, viewQuery: function CdkStep_Query(rf, ctx) { if (rf & 1) {
+        ɵngcc0.ɵɵviewQuery(TemplateRef, 7);
+    } if (rf & 2) {
+        let _t;
+        ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.content = _t.first);
+    } }, inputs: { editable: "editable", optional: "optional", completed: "completed", hasError: "hasError", stepControl: "stepControl", label: "label", errorMessage: "errorMessage", ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledby: ["aria-labelledby", "ariaLabelledby"], state: "state" }, outputs: { interactedStream: "interacted" }, exportAs: ["cdkStep"], features: [ɵngcc0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function CdkStep_Template(rf, ctx) { if (rf & 1) {
+        ɵngcc0.ɵɵprojectionDef();
+        ɵngcc0.ɵɵtemplate(0, CdkStep_ng_template_0_Template, 1, 0, "ng-template");
+    } }, encapsulation: 2, changeDetection: 0 });
+CdkStep.ctorParameters = () => [
+    { type: CdkStepper, decorators: [{ type: Inject, args: [forwardRef(() => CdkStepper),] }] },
+    { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [STEPPER_GLOBAL_OPTIONS,] }] }
+];
+CdkStep.propDecorators = {
+    stepLabel: [{ type: ContentChild, args: [CdkStepLabel,] }],
+    content: [{ type: ViewChild, args: [TemplateRef, { static: true },] }],
+    stepControl: [{ type: Input }],
+    interactedStream: [{ type: Output, args: ['interacted',] }],
+    label: [{ type: Input }],
+    errorMessage: [{ type: Input }],
+    ariaLabel: [{ type: Input, args: ['aria-label',] }],
+    ariaLabelledby: [{ type: Input, args: ['aria-labelledby',] }],
+    state: [{ type: Input }],
+    editable: [{ type: Input }],
+    optional: [{ type: Input }],
+    completed: [{ type: Input }],
+    hasError: [{ type: Input }]
+};
+(function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(CdkStep, [{
+        type: Component,
+        args: [{
+                selector: 'cdk-step',
+                exportAs: 'cdkStep',
+                template: '<ng-template><ng-content></ng-content></ng-template>',
+                encapsulation: ViewEncapsulation.None,
+                changeDetection: ChangeDetectionStrategy.OnPush
+            }]
+    }], function () { return [{ type: CdkStepper, decorators: [{
+                type: Inject,
+                args: [forwardRef(() => CdkStepper)]
+            }] }, { type: undefined, decorators: [{
+                type: Optional
+            }, {
+                type: Inject,
+                args: [STEPPER_GLOBAL_OPTIONS]
+            }] }]; }, { interactedStream: [{
+            type: Output,
+            args: ['interacted']
+        }], editable: [{
+            type: Input
+        }], optional: [{
+            type: Input
+        }], completed: [{
+            type: Input
+        }], hasError: [{
+            type: Input
+        }], stepLabel: [{
+            type: ContentChild,
+            args: [CdkStepLabel]
+        }], content: [{
+            type: ViewChild,
+            args: [TemplateRef, { static: true }]
+        }], stepControl: [{
+            type: Input
+        }], label: [{
+            type: Input
+        }], errorMessage: [{
+            type: Input
+        }], ariaLabel: [{
+            type: Input,
+            args: ['aria-label']
+        }], ariaLabelledby: [{
+            type: Input,
+            args: ['aria-labelledby']
+        }], state: [{
+            type: Input
+        }] }); })();
+class CdkStepper {
+    constructor(_dir, _changeDetectorRef, _elementRef, 
+    /**
+     * @deprecated No longer in use, to be removed.
+     * @breaking-change 13.0.0
+     */
+    _document) {
+        this._dir = _dir;
+        this._changeDetectorRef = _changeDetectorRef;
+        this._elementRef = _elementRef;
+        /** Emits when the component is destroyed. */
+        this._destroyed = new Subject();
+        /** Steps that belong to the current stepper, excluding ones from nested steppers. */
+        this.steps = new QueryList();
+        /** List of step headers sorted based on their DOM order. */
+        this._sortedHeaders = new QueryList();
+        this._linear = false;
+        this._selectedIndex = 0;
+        /** Event emitted when the selected step has changed. */
+        this.selectionChange = new EventEmitter();
+        /**
+         * @deprecated To be turned into a private property. Use `orientation` instead.
+         * @breaking-change 13.0.0
+         */
+        this._orientation = 'horizontal';
+        this._groupId = nextId++;
+    }
+    /** Whether the validity of previous steps should be checked or not. */
+    get linear() {
+        return this._linear;
+    }
+    set linear(value) {
+        this._linear = coerceBooleanProperty(value);
+    }
+    /** The index of the selected step. */
+    get selectedIndex() {
+        return this._selectedIndex;
+    }
+    set selectedIndex(index) {
+        var _a;
+        const newIndex = coerceNumberProperty(index);
+        if (this.steps && this._steps) {
+            // Ensure that the index can't be out of bounds.
+            if (!this._isValidIndex(index) && (typeof ngDevMode === 'undefined' || ngDevMode)) {
+                throw Error('cdkStepper: Cannot assign out-of-bounds value to `selectedIndex`.');
+            }
+            (_a = this.selected) === null || _a === void 0 ? void 0 : _a._markAsInteracted();
+            if (this._selectedIndex !== newIndex && !this._anyControlsInvalidOrPending(newIndex) &&
+                (newIndex >= this._selectedIndex || this.steps.toArray()[newIndex].editable)) {
+                this._updateSelectedItemIndex(index);
+            }
+        }
+        else {
+            this._selectedIndex = newIndex;
+        }
+    }
+    /** The step that is selected. */
+    get selected() {
+        return this.steps ? this.steps.toArray()[this.selectedIndex] : undefined;
+    }
+    set selected(step) {
+        this.selectedIndex = (step && this.steps) ? this.steps.toArray().indexOf(step) : -1;
+    }
+    /** Orientation of the stepper. */
+    get orientation() { return this._orientation; }
+    set orientation(value) {
+        // This is a protected method so that `MatSteppter` can hook into it.
+        this._orientation = value;
+        if (this._keyManager) {
+            this._keyManager.withVerticalOrientation(value === 'vertical');
+        }
+    }
+    ngAfterContentInit() {
+        this._steps.changes
+            .pipe(startWith(this._steps), takeUntil(this._destroyed))
+            .subscribe((steps) => {
+            this.steps.reset(steps.filter(step => step._stepper === this));
+            this.steps.notifyOnChanges();
+        });
+    }
+    ngAfterViewInit() {
+        // If the step headers are defined outside of the `ngFor` that renders the steps, like in the
+        // Material stepper, they won't appear in the `QueryList` in the same order as they're
+        // rendered in the DOM which will lead to incorrect keyboard navigation. We need to sort
+        // them manually to ensure that they're correct. Alternatively, we can change the Material
+        // template to inline the headers in the `ngFor`, but that'll result in a lot of
+        // code duplciation. See #23539.
+        this._stepHeader.changes
+            .pipe(startWith(this._stepHeader), takeUntil(this._destroyed))
+            .subscribe((headers) => {
+            this._sortedHeaders.reset(headers.toArray().sort((a, b) => {
+                const documentPosition = a._elementRef.nativeElement.compareDocumentPosition(b._elementRef.nativeElement);
+                // `compareDocumentPosition` returns a bitmask so we have to use a bitwise operator.
+                // https://developer.mozilla.org/en-US/docs/Web/API/Node/compareDocumentPosition
+                // tslint:disable-next-line:no-bitwise
+                return documentPosition & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : 1;
+            }));
+            this._sortedHeaders.notifyOnChanges();
+        });
+        // Note that while the step headers are content children by default, any components that
+        // extend this one might have them as view children. We initialize the keyboard handling in
+        // AfterViewInit so we're guaranteed for both view and content children to be defined.
+        this._keyManager = new FocusKeyManager(this._sortedHeaders)
+            .withWrap()
+            .withHomeAndEnd()
+            .withVerticalOrientation(this._orientation === 'vertical');
+        (this._dir ? this._dir.change : of())
+            .pipe(startWith(this._layoutDirection()), takeUntil(this._destroyed))
+            .subscribe(direction => this._keyManager.withHorizontalOrientation(direction));
+        this._keyManager.updateActiveItem(this._selectedIndex);
+        // No need to `takeUntil` here, because we're the ones destroying `steps`.
+        this.steps.changes.subscribe(() => {
+            if (!this.selected) {
+                this._selectedIndex = Math.max(this._selectedIndex - 1, 0);
+            }
+        });
+        // The logic which asserts that the selected index is within bounds doesn't run before the
+        // steps are initialized, because we don't how many steps there are yet so we may have an
+        // invalid index on init. If that's the case, auto-correct to the default so we don't throw.
+        if (!this._isValidIndex(this._selectedIndex)) {
+            this._selectedIndex = 0;
+        }
+    }
+    ngOnDestroy() {
+        this.steps.destroy();
+        this._sortedHeaders.destroy();
+        this._destroyed.next();
+        this._destroyed.complete();
+    }
+    /** Selects and focuses the next step in list. */
+    next() {
+        this.selectedIndex = Math.min(this._selectedIndex + 1, this.steps.length - 1);
+    }
+    /** Selects and focuses the previous step in list. */
+    previous() {
+        this.selectedIndex = Math.max(this._selectedIndex - 1, 0);
+    }
+    /** Resets the stepper to its initial state. Note that this includes clearing form data. */
+    reset() {
+        this._updateSelectedItemIndex(0);
+        this.steps.forEach(step => step.reset());
+        this._stateChanged();
+    }
+    /** Returns a unique id for each step label element. */
+    _getStepLabelId(i) {
+        return `cdk-step-label-${this._groupId}-${i}`;
+    }
+    /** Returns unique id for each step content element. */
+    _getStepContentId(i) {
+        return `cdk-step-content-${this._groupId}-${i}`;
+    }
+    /** Marks the component to be change detected. */
+    _stateChanged() {
+        this._changeDetectorRef.markForCheck();
+    }
+    /** Returns position state of the step with the given index. */
+    _getAnimationDirection(index) {
+        const 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. */
+    _getIndicatorType(index, state = STEP_STATE.NUMBER) {
+        const step = this.steps.toArray()[index];
+        const isCurrentStep = this._isCurrentStep(index);
+        return step._displayDefaultIndicatorType ? this._getDefaultIndicatorLogic(step, isCurrentStep) :
+            this._getGuidelineLogic(step, isCurrentStep, state);
+    }
+    _getDefaultIndicatorLogic(step, isCurrentStep) {
+        if (step._showError() && step.hasError && !isCurrentStep) {
+            return STEP_STATE.ERROR;
+        }
+        else if (!step.completed || isCurrentStep) {
+            return STEP_STATE.NUMBER;
+        }
+        else {
+            return step.editable ? STEP_STATE.EDIT : STEP_STATE.DONE;
+        }
+    }
+    _getGuidelineLogic(step, isCurrentStep, state = STEP_STATE.NUMBER) {
+        if (step._showError() && step.hasError && !isCurrentStep) {
+            return STEP_STATE.ERROR;
+        }
+        else if (step.completed && !isCurrentStep) {
+            return STEP_STATE.DONE;
+        }
+        else if (step.completed && isCurrentStep) {
+            return state;
+        }
+        else if (step.editable && isCurrentStep) {
+            return STEP_STATE.EDIT;
+        }
+        else {
+            return state;
+        }
+    }
+    _isCurrentStep(index) {
+        return this._selectedIndex === index;
+    }
+    /** Returns the index of the currently-focused step header. */
+    _getFocusIndex() {
+        return this._keyManager ? this._keyManager.activeItemIndex : this._selectedIndex;
+    }
+    _updateSelectedItemIndex(newIndex) {
+        const stepsArray = this.steps.toArray();
+        this.selectionChange.emit({
+            selectedIndex: newIndex,
+            previouslySelectedIndex: this._selectedIndex,
+            selectedStep: stepsArray[newIndex],
+            previouslySelectedStep: stepsArray[this._selectedIndex],
+        });
+        // If focus is inside the stepper, move it to the next header, otherwise it may become
+        // lost when the active step content is hidden. We can't be more granular with the check
+        // (e.g. checking whether focus is inside the active step), because we don't have a
+        // reference to the elements that are rendering out the content.
+        this._containsFocus() ? this._keyManager.setActiveItem(newIndex) :
+            this._keyManager.updateActiveItem(newIndex);
+        this._selectedIndex = newIndex;
+        this._stateChanged();
+    }
+    _onKeydown(event) {
+        const hasModifier = hasModifierKey(event);
+        const keyCode = event.keyCode;
+        const manager = this._keyManager;
+        if (manager.activeItemIndex != null && !hasModifier &&
+            (keyCode === SPACE || keyCode === ENTER)) {
+            this.selectedIndex = manager.activeItemIndex;
+            event.preventDefault();
+        }
+        else {
+            manager.onKeydown(event);
+        }
+    }
+    _anyControlsInvalidOrPending(index) {
+        if (this._linear && index >= 0) {
+            return this.steps.toArray().slice(0, index).some(step => {
+                const control = step.stepControl;
+                const isIncomplete = control ? (control.invalid || control.pending || !step.interacted) : !step.completed;
+                return isIncomplete && !step.optional && !step._completedOverride;
+            });
+        }
+        return false;
+    }
+    _layoutDirection() {
+        return this._dir && this._dir.value === 'rtl' ? 'rtl' : 'ltr';
+    }
+    /** Checks whether the stepper contains the focused element. */
+    _containsFocus() {
+        const stepperElement = this._elementRef.nativeElement;
+        const focusedElement = _getFocusedElementPierceShadowDom();
+        return stepperElement === focusedElement || stepperElement.contains(focusedElement);
+    }
+    /** Checks whether the passed-in index is a valid step index. */
+    _isValidIndex(index) {
+        return index > -1 && (!this.steps || index < this.steps.length);
+    }
+}
+CdkStepper.ɵfac = function CdkStepper_Factory(t) { return new (t || CdkStepper)(ɵngcc0.ɵɵdirectiveInject(ɵngcc1.Directionality, 8), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(DOCUMENT)); };
+CdkStepper.ɵdir = /*@__PURE__*/ ɵngcc0.ɵɵdefineDirective({ type: CdkStepper, selectors: [["", "cdkStepper", ""]], contentQueries: function CdkStepper_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
+        ɵngcc0.ɵɵcontentQuery(dirIndex, CdkStep, 5);
+        ɵngcc0.ɵɵcontentQuery(dirIndex, CdkStepHeader, 5);
+    } if (rf & 2) {
+        let _t;
+        ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx._steps = _t);
+        ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx._stepHeader = _t);
+    } }, inputs: { linear: "linear", selectedIndex: "selectedIndex", selected: "selected", orientation: "orientation" }, outputs: { selectionChange: "selectionChange" }, exportAs: ["cdkStepper"] });
+CdkStepper.ctorParameters = () => [
+    { type: Directionality, decorators: [{ type: Optional }] },
+    { type: ChangeDetectorRef },
+    { type: ElementRef },
+    { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] }
+];
+CdkStepper.propDecorators = {
+    _steps: [{ type: ContentChildren, args: [CdkStep, { descendants: true },] }],
+    _stepHeader: [{ type: ContentChildren, args: [CdkStepHeader, { descendants: true },] }],
+    linear: [{ type: Input }],
+    selectedIndex: [{ type: Input }],
+    selected: [{ type: Input }],
+    selectionChange: [{ type: Output }],
+    orientation: [{ type: Input }]
+};
+(function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(CdkStepper, [{
+        type: Directive,
+        args: [{
+                selector: '[cdkStepper]',
+                exportAs: 'cdkStepper'
+            }]
+    }], function () { return [{ type: ɵngcc1.Directionality, decorators: [{
+                type: Optional
+            }] }, { type: ɵngcc0.ChangeDetectorRef }, { type: ɵngcc0.ElementRef }, { type: undefined, decorators: [{
+                type: Inject,
+                args: [DOCUMENT]
+            }] }]; }, { selectionChange: [{
+            type: Output
+        }], linear: [{
+            type: Input
+        }], selectedIndex: [{
+            type: Input
+        }], selected: [{
+            type: Input
+        }], orientation: [{
+            type: Input
+        }], _steps: [{
+            type: ContentChildren,
+            args: [CdkStep, { descendants: true }]
+        }], _stepHeader: [{
+            type: ContentChildren,
+            args: [CdkStepHeader, { descendants: true }]
+        }] }); })();
+
+/**
+ * @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
+ */
+/** Button that moves to the next step in a stepper workflow. */
+class CdkStepperNext {
+    constructor(_stepper) {
+        this._stepper = _stepper;
+        /** Type of the next button. Defaults to "submit" if not specified. */
+        this.type = 'submit';
+    }
+    // We have to use a `HostListener` here in order to support both Ivy and ViewEngine.
+    // In Ivy the `host` bindings will be merged when this class is extended, whereas in
+    // ViewEngine they're overwritten.
+    // TODO(crisbeto): we move this back into `host` once Ivy is turned on by default.
+    // tslint:disable-next-line:no-host-decorator-in-concrete
+    _handleClick() {
+        this._stepper.next();
+    }
+}
+CdkStepperNext.ɵfac = function CdkStepperNext_Factory(t) { return new (t || CdkStepperNext)(ɵngcc0.ɵɵdirectiveInject(CdkStepper)); };
+CdkStepperNext.ɵdir = /*@__PURE__*/ ɵngcc0.ɵɵdefineDirective({ type: CdkStepperNext, selectors: [["button", "cdkStepperNext", ""]], hostVars: 1, hostBindings: function CdkStepperNext_HostBindings(rf, ctx) { if (rf & 1) {
+        ɵngcc0.ɵɵlistener("click", function CdkStepperNext_click_HostBindingHandler() { return ctx._handleClick(); });
+    } if (rf & 2) {
+        ɵngcc0.ɵɵhostProperty("type", ctx.type);
+    } }, inputs: { type: "type" } });
+CdkStepperNext.ctorParameters = () => [
+    { type: CdkStepper }
+];
+CdkStepperNext.propDecorators = {
+    type: [{ type: Input }],
+    _handleClick: [{ type: HostListener, args: ['click',] }]
+};
+(function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(CdkStepperNext, [{
+        type: Directive,
+        args: [{
+                selector: 'button[cdkStepperNext]',
+                host: {
+                    '[type]': 'type'
+                }
+            }]
+    }], function () { return [{ type: CdkStepper }]; }, { type: [{
+            type: Input
+        }], 
+    // We have to use a `HostListener` here in order to support both Ivy and ViewEngine.
+    // In Ivy the `host` bindings will be merged when this class is extended, whereas in
+    // ViewEngine they're overwritten.
+    // TODO(crisbeto): we move this back into `host` once Ivy is turned on by default.
+    // tslint:disable-next-line:no-host-decorator-in-concrete
+    _handleClick: [{
+            type: HostListener,
+            args: ['click']
+        }] }); })();
+/** Button that moves to the previous step in a stepper workflow. */
+class CdkStepperPrevious {
+    constructor(_stepper) {
+        this._stepper = _stepper;
+        /** Type of the previous button. Defaults to "button" if not specified. */
+        this.type = 'button';
+    }
+    // We have to use a `HostListener` here in order to support both Ivy and ViewEngine.
+    // In Ivy the `host` bindings will be merged when this class is extended, whereas in
+    // ViewEngine they're overwritten.
+    // TODO(crisbeto): we move this back into `host` once Ivy is turned on by default.
+    // tslint:disable-next-line:no-host-decorator-in-concrete
+    _handleClick() {
+        this._stepper.previous();
+    }
+}
+CdkStepperPrevious.ɵfac = function CdkStepperPrevious_Factory(t) { return new (t || CdkStepperPrevious)(ɵngcc0.ɵɵdirectiveInject(CdkStepper)); };
+CdkStepperPrevious.ɵdir = /*@__PURE__*/ ɵngcc0.ɵɵdefineDirective({ type: CdkStepperPrevious, selectors: [["button", "cdkStepperPrevious", ""]], hostVars: 1, hostBindings: function CdkStepperPrevious_HostBindings(rf, ctx) { if (rf & 1) {
+        ɵngcc0.ɵɵlistener("click", function CdkStepperPrevious_click_HostBindingHandler() { return ctx._handleClick(); });
+    } if (rf & 2) {
+        ɵngcc0.ɵɵhostProperty("type", ctx.type);
+    } }, inputs: { type: "type" } });
+CdkStepperPrevious.ctorParameters = () => [
+    { type: CdkStepper }
+];
+CdkStepperPrevious.propDecorators = {
+    type: [{ type: Input }],
+    _handleClick: [{ type: HostListener, args: ['click',] }]
+};
+(function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(CdkStepperPrevious, [{
+        type: Directive,
+        args: [{
+                selector: 'button[cdkStepperPrevious]',
+                host: {
+                    '[type]': 'type'
+                }
+            }]
+    }], function () { return [{ type: CdkStepper }]; }, { type: [{
+            type: Input
+        }], 
+    // We have to use a `HostListener` here in order to support both Ivy and ViewEngine.
+    // In Ivy the `host` bindings will be merged when this class is extended, whereas in
+    // ViewEngine they're overwritten.
+    // TODO(crisbeto): we move this back into `host` once Ivy is turned on by default.
+    // tslint:disable-next-line:no-host-decorator-in-concrete
+    _handleClick: [{
+            type: HostListener,
+            args: ['click']
+        }] }); })();
+
+/**
+ * @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
+ */
+class CdkStepperModule {
+}
+CdkStepperModule.ɵfac = function CdkStepperModule_Factory(t) { return new (t || CdkStepperModule)(); };
+CdkStepperModule.ɵmod = /*@__PURE__*/ ɵngcc0.ɵɵdefineNgModule({ type: CdkStepperModule });
+CdkStepperModule.ɵinj = /*@__PURE__*/ ɵngcc0.ɵɵdefineInjector({ imports: [[BidiModule]] });
+(function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(CdkStepperModule, [{
+        type: NgModule,
+        args: [{
+                imports: [BidiModule],
+                exports: [
+                    CdkStep,
+                    CdkStepper,
+                    CdkStepHeader,
+                    CdkStepLabel,
+                    CdkStepperNext,
+                    CdkStepperPrevious,
+                ],
+                declarations: [
+                    CdkStep,
+                    CdkStepper,
+                    CdkStepHeader,
+                    CdkStepLabel,
+                    CdkStepperNext,
+                    CdkStepperPrevious,
+                ]
+            }]
+    }], null, null); })();
+(function () { (typeof ngJitMode === "undefined" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(CdkStepperModule, { declarations: function () { return [CdkStep, CdkStepper, CdkStepHeader, CdkStepLabel, CdkStepperNext, CdkStepperPrevious]; }, imports: function () { return [BidiModule]; }, exports: function () { return [CdkStep, CdkStepper, CdkStepHeader, CdkStepLabel, CdkStepperNext, CdkStepperPrevious]; } }); })();
+
+/**
+ * @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
+ */
+
+/**
+ * Generated bundle index. Do not edit.
+ */
+
+export { CdkStep, CdkStepHeader, CdkStepLabel, CdkStepper, CdkStepperModule, CdkStepperNext, CdkStepperPrevious, STEPPER_GLOBAL_OPTIONS, STEP_STATE, StepperSelectionEvent };
+
+//# sourceMappingURL=stepper.js.map
Index: trip-planner-front/node_modules/@angular/cdk/__ivy_ngcc__/fesm2015/stepper.js.map
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/__ivy_ngcc__/fesm2015/stepper.js.map	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
+++ trip-planner-front/node_modules/@angular/cdk/__ivy_ngcc__/fesm2015/stepper.js.map	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -0,0 +1,1 @@
+{"version":3,"file":"stepper.js","sources":["../../../../../../src/cdk/stepper/step-header.ts","../../../../../../src/cdk/stepper/step-label.ts","../../../../../../src/cdk/stepper/stepper.ts","../../../../../../src/cdk/stepper/stepper-button.ts","../../../../../../src/cdk/stepper/stepper-module.ts","../../../../../../src/cdk/stepper/public-api.ts","../../../../../../src/cdk/stepper/index.ts"],"names":["observableOf"],"mappings":"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","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, 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(public _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","/**\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 {\n  BooleanInput,\n  coerceBooleanProperty,\n  coerceNumberProperty,\n  NumberInput\n} from '@angular/cdk/coercion';\nimport {ENTER, hasModifierKey, SPACE} from '@angular/cdk/keycodes';\nimport {DOCUMENT} from '@angular/common';\nimport {\n  AfterViewInit,\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  ContentChild,\n  ContentChildren,\n  Directive,\n  ElementRef,\n  EventEmitter,\n  forwardRef,\n  Inject,\n  InjectionToken,\n  Input,\n  OnChanges,\n  OnDestroy,\n  Optional,\n  Output,\n  QueryList,\n  TemplateRef,\n  ViewChild,\n  ViewEncapsulation,\n  AfterContentInit,\n} from '@angular/core';\nimport {_getFocusedElementPierceShadowDom} from '@angular/cdk/platform';\nimport {Observable, of as observableOf, Subject} from 'rxjs';\nimport {startWith, takeUntil} from 'rxjs/operators';\n\nimport {CdkStepHeader} from './step-header';\nimport {CdkStepLabel} from './step-label';\n\n/** Used to generate unique ID for each stepper component. */\nlet nextId = 0;\n\n/**\n * Position state of the content of each step in stepper that is used for transitioning\n * the content into correct position upon step selection change.\n */\nexport type StepContentPositionState = 'previous'|'current'|'next';\n\n/** Possible orientation of a stepper. */\nexport type StepperOrientation = 'horizontal'|'vertical';\n\n/** Change event emitted on selection changes. */\nexport class StepperSelectionEvent {\n  /** Index of the step now selected. */\n  selectedIndex: number;\n\n  /** Index of the step previously selected. */\n  previouslySelectedIndex: number;\n\n  /** The step instance now selected. */\n  selectedStep: CdkStep;\n\n  /** The step instance previously selected. */\n  previouslySelectedStep: CdkStep;\n}\n\n/** The state of each step. */\nexport type StepState = 'number'|'edit'|'done'|'error'|string;\n\n/** Enum to represent the different states of the steps. */\nexport const STEP_STATE = {\n  NUMBER: 'number',\n  EDIT: 'edit',\n  DONE: 'done',\n  ERROR: 'error'\n};\n\n/** InjectionToken that can be used to specify the global stepper options. */\nexport const STEPPER_GLOBAL_OPTIONS = new InjectionToken<StepperOptions>('STEPPER_GLOBAL_OPTIONS');\n\n/** 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  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  _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, {static: true}) content: TemplateRef<any>;\n\n  /** The top level abstract control of the step. */\n  @Input() stepControl: AbstractControlLike;\n\n  /** Whether user has attempted to move away from the step. */\n  interacted = false;\n\n  /** Emits when the user has attempted to move away from the step. */\n  @Output('interacted')\n  readonly interactedStream: EventEmitter<CdkStep> = new EventEmitter<CdkStep>();\n\n  /** Plain text label of the step. */\n  @Input() label: string;\n\n  /** Error message to display when there's an error. */\n  @Input() errorMessage: string;\n\n  /** Aria label for the tab. */\n  @Input('aria-label') ariaLabel: string;\n\n  /**\n   * Reference to the element that the tab is labelled by.\n   * Will be cleared if `aria-label` is set at the same time.\n   */\n  @Input('aria-labelledby') ariaLabelledby: string;\n\n  /** State of the step. */\n  @Input() state: StepState;\n\n  /** Whether the user can return to this step once it has been marked as completed. */\n  @Input()\n  get editable(): boolean {\n    return this._editable;\n  }\n  set editable(value: boolean) {\n    this._editable = coerceBooleanProperty(value);\n  }\n  private _editable = true;\n\n  /** Whether the completion of step is optional. */\n  @Input()\n  get optional(): boolean {\n    return this._optional;\n  }\n  set optional(value: boolean) {\n    this._optional = coerceBooleanProperty(value);\n  }\n  private _optional = false;\n\n  /** Whether step is marked as completed. */\n  @Input()\n  get completed(): boolean {\n    return this._completedOverride == null ? this._getDefaultCompleted() : this._completedOverride;\n  }\n  set completed(value: boolean) {\n    this._completedOverride = coerceBooleanProperty(value);\n  }\n  _completedOverride: boolean|null = null;\n\n  private _getDefaultCompleted() {\n    return this.stepControl ? this.stepControl.valid && this.interacted : this.interacted;\n  }\n\n  /** Whether step has an error. */\n  @Input()\n  get hasError(): boolean {\n    return this._customError == null ? this._getDefaultError() : this._customError;\n  }\n  set hasError(value: boolean) {\n    this._customError = coerceBooleanProperty(value);\n  }\n  private _customError: boolean|null = null;\n\n  private _getDefaultError() {\n    return this.stepControl && this.stepControl.invalid && this.interacted;\n  }\n\n  constructor(\n      @Inject(forwardRef(() => CdkStepper)) public _stepper: CdkStepper,\n      @Optional() @Inject(STEPPER_GLOBAL_OPTIONS) stepperOptions?: StepperOptions) {\n    this._stepperOptions = stepperOptions ? stepperOptions : {};\n    this._displayDefaultIndicatorType = this._stepperOptions.displayDefaultIndicatorType !== false;\n  }\n\n  /** Selects this step component. */\n  select(): void {\n    this._stepper.selected = this;\n  }\n\n  /** Resets the step to its initial state. Note that this includes resetting form data. */\n  reset(): void {\n    this.interacted = false;\n\n    if (this._completedOverride != null) {\n      this._completedOverride = false;\n    }\n\n    if (this._customError != null) {\n      this._customError = false;\n    }\n\n    if (this.stepControl) {\n      this.stepControl.reset();\n    }\n  }\n\n  ngOnChanges() {\n    // Since basically all inputs of the MatStep get proxied through the view down to the\n    // underlying MatStepHeader, we have to make sure that change detection runs correctly.\n    this._stepper._stateChanged();\n  }\n\n  _markAsInteracted() {\n    if (!this.interacted) {\n      this.interacted = true;\n      this.interactedStream.emit(this);\n    }\n  }\n\n  /** Determines whether the error state can be shown. */\n  _showError(): boolean {\n    // We want to show the error state either if the user opted into/out of it using the\n    // global options, or if they've explicitly set it through the `hasError` input.\n    return this._stepperOptions.showError ?? this._customError != null;\n  }\n\n  static ngAcceptInputType_editable: BooleanInput;\n  static ngAcceptInputType_hasError: BooleanInput;\n  static ngAcceptInputType_optional: BooleanInput;\n  static ngAcceptInputType_completed: BooleanInput;\n}\n\n@Directive({\n  selector: '[cdkStepper]',\n  exportAs: 'cdkStepper',\n})\nexport class CdkStepper implements AfterContentInit, AfterViewInit, OnDestroy {\n  /** Emits when the component is destroyed. */\n  protected readonly _destroyed = new Subject<void>();\n\n  /** Used for managing keyboard focus. */\n  private _keyManager: FocusKeyManager<FocusableOption>;\n\n  /** Full list of steps inside the stepper, including inside nested steppers. */\n  @ContentChildren(CdkStep, {descendants: true}) _steps: QueryList<CdkStep>;\n\n  /** Steps that belong to the current stepper, excluding ones from nested steppers. */\n  readonly steps: QueryList<CdkStep> = new QueryList<CdkStep>();\n\n  /** The list of step headers of the steps in the stepper. */\n  @ContentChildren(CdkStepHeader, {descendants: true}) _stepHeader: QueryList<CdkStepHeader>;\n\n  /** List of step headers sorted based on their DOM order. */\n  private _sortedHeaders = new QueryList<CdkStepHeader>();\n\n  /** Whether the validity of previous steps should be checked or not. */\n  @Input()\n  get linear(): boolean {\n    return this._linear;\n  }\n  set linear(value: boolean) {\n    this._linear = coerceBooleanProperty(value);\n  }\n  private _linear = false;\n\n  /** The index of the selected step. */\n  @Input()\n  get selectedIndex() {\n    return this._selectedIndex;\n  }\n  set selectedIndex(index: number) {\n    const newIndex = coerceNumberProperty(index);\n\n    if (this.steps && this._steps) {\n      // Ensure that the index can't be out of bounds.\n      if (!this._isValidIndex(index) && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n        throw Error('cdkStepper: Cannot assign out-of-bounds value to `selectedIndex`.');\n      }\n\n      this.selected?._markAsInteracted();\n\n      if (this._selectedIndex !== newIndex && !this._anyControlsInvalidOrPending(newIndex) &&\n          (newIndex >= this._selectedIndex || this.steps.toArray()[newIndex].editable)) {\n        this._updateSelectedItemIndex(index);\n      }\n    } else {\n      this._selectedIndex = newIndex;\n    }\n  }\n  private _selectedIndex = 0;\n\n  /** The step that is selected. */\n  @Input()\n  get selected(): CdkStep | undefined {\n    return this.steps ? this.steps.toArray()[this.selectedIndex] : undefined;\n  }\n  set selected(step: CdkStep | undefined) {\n    this.selectedIndex = (step && this.steps) ? this.steps.toArray().indexOf(step) : -1;\n  }\n\n  /** Event emitted when the selected step has changed. */\n  @Output() readonly selectionChange = new EventEmitter<StepperSelectionEvent>();\n\n  /** Used to track unique ID for each stepper component. */\n  _groupId: number;\n\n  /** Orientation of the stepper. */\n  @Input()\n  get orientation(): StepperOrientation { return this._orientation; }\n  set orientation(value: StepperOrientation) {\n    // This is a protected method so that `MatSteppter` can hook into it.\n    this._orientation = value;\n\n    if (this._keyManager) {\n      this._keyManager.withVerticalOrientation(value === 'vertical');\n    }\n  }\n\n  /**\n   * @deprecated To be turned into a private property. Use `orientation` instead.\n   * @breaking-change 13.0.0\n   */\n  protected _orientation: StepperOrientation = 'horizontal';\n\n  constructor(\n      @Optional() private _dir: Directionality, private _changeDetectorRef: ChangeDetectorRef,\n      private _elementRef: ElementRef<HTMLElement>,\n      /**\n       * @deprecated No longer in use, to be removed.\n       * @breaking-change 13.0.0\n       */\n      @Inject(DOCUMENT) _document: any) {\n    this._groupId = nextId++;\n  }\n\n  ngAfterContentInit() {\n    this._steps.changes\n      .pipe(startWith(this._steps), takeUntil(this._destroyed))\n      .subscribe((steps: QueryList<CdkStep>) => {\n        this.steps.reset(steps.filter(step => step._stepper === this));\n        this.steps.notifyOnChanges();\n      });\n  }\n\n  ngAfterViewInit() {\n    // If the step headers are defined outside of the `ngFor` that renders the steps, like in the\n    // Material stepper, they won't appear in the `QueryList` in the same order as they're\n    // rendered in the DOM which will lead to incorrect keyboard navigation. We need to sort\n    // them manually to ensure that they're correct. Alternatively, we can change the Material\n    // template to inline the headers in the `ngFor`, but that'll result in a lot of\n    // code duplciation. See #23539.\n    this._stepHeader.changes\n      .pipe(startWith(this._stepHeader), takeUntil(this._destroyed))\n      .subscribe((headers: QueryList<CdkStepHeader>) => {\n        this._sortedHeaders.reset(headers.toArray().sort((a, b) => {\n          const documentPosition =\n            a._elementRef.nativeElement.compareDocumentPosition(b._elementRef.nativeElement);\n\n          // `compareDocumentPosition` returns a bitmask so we have to use a bitwise operator.\n          // https://developer.mozilla.org/en-US/docs/Web/API/Node/compareDocumentPosition\n          // tslint:disable-next-line:no-bitwise\n          return documentPosition & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : 1;\n        }));\n        this._sortedHeaders.notifyOnChanges();\n      });\n\n    // Note that while the step headers are content children by default, any components that\n    // extend this one might have them as view children. 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._sortedHeaders)\n                           .withWrap()\n                           .withHomeAndEnd()\n                           .withVerticalOrientation(this._orientation === 'vertical');\n\n    (this._dir ? (this._dir.change as Observable<Direction>) : observableOf<Direction>())\n        .pipe(startWith(this._layoutDirection()), takeUntil(this._destroyed))\n        .subscribe(direction => this._keyManager.withHorizontalOrientation(direction));\n\n    this._keyManager.updateActiveItem(this._selectedIndex);\n\n    // No need to `takeUntil` here, because we're the ones destroying `steps`.\n    this.steps.changes.subscribe(() => {\n      if (!this.selected) {\n        this._selectedIndex = Math.max(this._selectedIndex - 1, 0);\n      }\n    });\n\n    // The logic which asserts that the selected index is within bounds doesn't run before the\n    // steps are initialized, because we don't how many steps there are yet so we may have an\n    // invalid index on init. If that's the case, auto-correct to the default so we don't throw.\n    if (!this._isValidIndex(this._selectedIndex)) {\n      this._selectedIndex = 0;\n    }\n  }\n\n  ngOnDestroy() {\n    this.steps.destroy();\n    this._sortedHeaders.destroy();\n    this._destroyed.next();\n    this._destroyed.complete();\n  }\n\n  /** Selects and focuses the next step in list. */\n  next(): void {\n    this.selectedIndex = Math.min(this._selectedIndex + 1, this.steps.length - 1);\n  }\n\n  /** Selects and focuses the previous step in list. */\n  previous(): void {\n    this.selectedIndex = Math.max(this._selectedIndex - 1, 0);\n  }\n\n  /** Resets the stepper to its initial state. Note that this includes clearing form data. */\n  reset(): void {\n    this._updateSelectedItemIndex(0);\n    this.steps.forEach(step => step.reset());\n    this._stateChanged();\n  }\n\n  /** Returns a unique id for each step label element. */\n  _getStepLabelId(i: number): string {\n    return `cdk-step-label-${this._groupId}-${i}`;\n  }\n\n  /** Returns unique id for each step content element. */\n  _getStepContentId(i: number): string {\n    return `cdk-step-content-${this._groupId}-${i}`;\n  }\n\n  /** Marks the component to be change detected. */\n  _stateChanged() {\n    this._changeDetectorRef.markForCheck();\n  }\n\n  /** Returns position state of the step with the given index. */\n  _getAnimationDirection(index: number): StepContentPositionState {\n    const position = index - this._selectedIndex;\n    if (position < 0) {\n      return this._layoutDirection() === 'rtl' ? 'next' : 'previous';\n    } else if (position > 0) {\n      return this._layoutDirection() === 'rtl' ? 'previous' : 'next';\n    }\n    return 'current';\n  }\n\n  /** Returns the type of icon to be displayed. */\n  _getIndicatorType(index: number, state: StepState = STEP_STATE.NUMBER): StepState {\n    const step = this.steps.toArray()[index];\n    const isCurrentStep = this._isCurrentStep(index);\n\n    return step._displayDefaultIndicatorType ? this._getDefaultIndicatorLogic(step, isCurrentStep) :\n                                               this._getGuidelineLogic(step, isCurrentStep, state);\n  }\n\n  private _getDefaultIndicatorLogic(step: CdkStep, isCurrentStep: boolean): StepState {\n    if (step._showError() && step.hasError && !isCurrentStep) {\n      return STEP_STATE.ERROR;\n    } else if (!step.completed || isCurrentStep) {\n      return STEP_STATE.NUMBER;\n    } else {\n      return step.editable ? STEP_STATE.EDIT : STEP_STATE.DONE;\n    }\n  }\n\n  private _getGuidelineLogic(\n      step: CdkStep, isCurrentStep: boolean, state: StepState = STEP_STATE.NUMBER): StepState {\n    if (step._showError() && step.hasError && !isCurrentStep) {\n      return STEP_STATE.ERROR;\n    } else if (step.completed && !isCurrentStep) {\n      return STEP_STATE.DONE;\n    } else if (step.completed && isCurrentStep) {\n      return state;\n    } else if (step.editable && isCurrentStep) {\n      return STEP_STATE.EDIT;\n    } else {\n      return state;\n    }\n  }\n\n  private _isCurrentStep(index: number) {\n    return this._selectedIndex === index;\n  }\n\n  /** Returns the index of the currently-focused step header. */\n  _getFocusIndex() {\n    return this._keyManager ? this._keyManager.activeItemIndex : this._selectedIndex;\n  }\n\n  private _updateSelectedItemIndex(newIndex: number): void {\n    const stepsArray = this.steps.toArray();\n    this.selectionChange.emit({\n      selectedIndex: newIndex,\n      previouslySelectedIndex: this._selectedIndex,\n      selectedStep: stepsArray[newIndex],\n      previouslySelectedStep: stepsArray[this._selectedIndex],\n    });\n\n    // If focus is inside the stepper, move it to the next header, otherwise it may become\n    // lost when the active step content is hidden. We can't be more granular with the check\n    // (e.g. checking whether focus is inside the active step), because we don't have a\n    // reference to the elements that are rendering out the content.\n    this._containsFocus() ? this._keyManager.setActiveItem(newIndex) :\n                            this._keyManager.updateActiveItem(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 {\n      manager.onKeydown(event);\n    }\n  }\n\n  private _anyControlsInvalidOrPending(index: number): boolean {\n    if (this._linear && index >= 0) {\n      return this.steps.toArray().slice(0, index).some(step => {\n        const control = step.stepControl;\n        const isIncomplete =\n            control ? (control.invalid || control.pending || !step.interacted) : !step.completed;\n        return isIncomplete && !step.optional && !step._completedOverride;\n      });\n    }\n\n    return false;\n  }\n\n  private _layoutDirection(): Direction {\n    return this._dir && this._dir.value === 'rtl' ? 'rtl' : 'ltr';\n  }\n\n  /** Checks whether the stepper contains the focused element. */\n  private _containsFocus(): boolean {\n    const stepperElement = this._elementRef.nativeElement;\n    const focusedElement = _getFocusedElementPierceShadowDom();\n    return stepperElement === focusedElement || stepperElement.contains(focusedElement);\n  }\n\n  /** Checks whether the passed-in index is a valid step index. */\n  private _isValidIndex(index: number): boolean {\n    return index > -1 && (!this.steps || index < this.steps.length);\n  }\n\n  static ngAcceptInputType_editable: BooleanInput;\n  static ngAcceptInputType_optional: BooleanInput;\n  static ngAcceptInputType_completed: BooleanInput;\n  static ngAcceptInputType_hasError: BooleanInput;\n  static ngAcceptInputType_linear: BooleanInput;\n  static ngAcceptInputType_selectedIndex: NumberInput;\n}\n\n\n/**\n * Simplified representation of an \"AbstractControl\" from @angular/forms.\n * Used to avoid having to bring in @angular/forms for a single optional interface.\n * @docs-private\n */\ninterface AbstractControlLike {\n  asyncValidator: ((control: any) => any) | null;\n  dirty: boolean;\n  disabled: boolean;\n  enabled: boolean;\n  errors: {[key: string]: any} | null;\n  invalid: boolean;\n  parent: any;\n  pending: boolean;\n  pristine: boolean;\n  root: AbstractControlLike;\n  status: string;\n  readonly statusChanges: Observable<any>;\n  touched: boolean;\n  untouched: boolean;\n  updateOn: any;\n  valid: boolean;\n  validator: ((control: any) => any) | null;\n  value: any;\n  readonly valueChanges: Observable<any>;\n  clearAsyncValidators(): void;\n  clearValidators(): void;\n  disable(opts?: any): void;\n  enable(opts?: any): void;\n  get(path: (string | number)[] | string): AbstractControlLike | null;\n  getError(errorCode: string, path?: (string | number)[] | string): any;\n  hasError(errorCode: string, path?: (string | number)[] | string): boolean;\n  markAllAsTouched(): void;\n  markAsDirty(opts?: any): void;\n  markAsPending(opts?: any): void;\n  markAsPristine(opts?: any): void;\n  markAsTouched(opts?: any): void;\n  markAsUntouched(opts?: any): void;\n  patchValue(value: any, options?: Object): void;\n  reset(value?: any, options?: Object): void;\n  setAsyncValidators(newValidator: (control: any) => any |\n    ((control: any) => any)[] | null): void;\n  setErrors(errors: {[key: string]: any} | null, opts?: any): void;\n  setParent(parent: any): void;\n  setValidators(newValidator: (control: any) => any |\n    ((control: any) => any)[] | null): void;\n  setValue(value: any, options?: Object): void;\n  updateValueAndValidity(opts?: any): void;\n  patchValue(value: any, options?: any): void;\n  reset(formState?: any, options?: any): void;\n  setValue(value: any, options?: any): void;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Directive, HostListener, Input} from '@angular/core';\n\nimport {CdkStepper} from './stepper';\n\n/** Button that moves to the next step in a stepper workflow. */\n@Directive({\n  selector: 'button[cdkStepperNext]',\n  host: {\n    '[type]': 'type',\n  }\n})\nexport class CdkStepperNext {\n  /** Type of the next button. Defaults to \"submit\" if not specified. */\n  @Input() type: string = 'submit';\n\n  constructor(public _stepper: CdkStepper) {}\n\n  // We have to use a `HostListener` here in order to support both Ivy and ViewEngine.\n  // In Ivy the `host` bindings will be merged when this class is extended, whereas in\n  // ViewEngine they're overwritten.\n  // TODO(crisbeto): we move this back into `host` once Ivy is turned on by default.\n  // tslint:disable-next-line:no-host-decorator-in-concrete\n  @HostListener('click')\n  _handleClick() {\n    this._stepper.next();\n  }\n}\n\n/** Button that moves to the previous step in a stepper workflow. */\n@Directive({\n  selector: 'button[cdkStepperPrevious]',\n  host: {\n    '[type]': 'type',\n  }\n})\nexport class CdkStepperPrevious {\n  /** Type of the previous button. Defaults to \"button\" if not specified. */\n  @Input() type: string = 'button';\n\n  constructor(public _stepper: CdkStepper) {}\n\n  // We have to use a `HostListener` here in order to support both Ivy and ViewEngine.\n  // In Ivy the `host` bindings will be merged when this class is extended, whereas in\n  // ViewEngine they're overwritten.\n  // TODO(crisbeto): we move this back into `host` once Ivy is turned on by default.\n  // tslint:disable-next-line:no-host-decorator-in-concrete\n  @HostListener('click')\n  _handleClick() {\n    this._stepper.previous();\n  }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {NgModule} from '@angular/core';\nimport {CdkStepper, CdkStep} from './stepper';\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],\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\nexport * from './stepper';\nexport * from './step-label';\nexport * from './stepper-button';\nexport * from './stepper-module';\nexport * from './step-header';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"]}
Index: trip-planner-front/node_modules/@angular/cdk/stepper/index.d.ts
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/stepper/index.d.ts	(revision e29cc2ea91f8c99a4329f6d20188305dfd752279)
+++ trip-planner-front/node_modules/@angular/cdk/stepper/index.d.ts	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -3,2 +3,4 @@
  */
 export * from './public-api';
+
+//# sourceMappingURL=index.d.ts.map
Index: trip-planner-front/node_modules/@angular/cdk/stepper/index.d.ts.__ivy_ngcc_bak
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/stepper/index.d.ts.__ivy_ngcc_bak	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
+++ trip-planner-front/node_modules/@angular/cdk/stepper/index.d.ts.__ivy_ngcc_bak	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -0,0 +1,4 @@
+/**
+ * Generated bundle index. Do not edit.
+ */
+export * from './public-api';
Index: trip-planner-front/node_modules/@angular/cdk/stepper/index.d.ts.map
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/stepper/index.d.ts.map	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
+++ trip-planner-front/node_modules/@angular/cdk/stepper/index.d.ts.map	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -0,0 +1,1 @@
+{"version":3,"file":"index.d.ts","sources":["index.d.ts"],"names":[],"mappings":"AAAA;AACA;AACA;AACA","sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\nexport * from './public-api';\n"]}
Index: trip-planner-front/node_modules/@angular/cdk/stepper/package.json
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/stepper/package.json	(revision e29cc2ea91f8c99a4329f6d20188305dfd752279)
+++ trip-planner-front/node_modules/@angular/cdk/stepper/package.json	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -2,8 +2,20 @@
   "name": "@angular/cdk/stepper",
   "main": "../bundles/cdk-stepper.umd.js",
+  "fesm2015_ivy_ngcc": "../__ivy_ngcc__/fesm2015/stepper.js",
   "fesm2015": "../fesm2015/stepper.js",
   "esm2015": "../esm2015/stepper/index.js",
   "typings": "./index.d.ts",
+  "module_ivy_ngcc": "../__ivy_ngcc__/fesm2015/stepper.js",
   "module": "../fesm2015/stepper.js",
-  "es2015": "../fesm2015/stepper.js"
+  "es2015_ivy_ngcc": "../__ivy_ngcc__/fesm2015/stepper.js",
+  "es2015": "../fesm2015/stepper.js",
+  "__processed_by_ivy_ngcc__": {
+    "es2015": "12.2.13",
+    "fesm2015": "12.2.13",
+    "module": "12.2.13",
+    "typings": "12.2.13"
+  },
+  "scripts": {
+    "prepublishOnly": "node --eval \"console.error('ERROR: Trying to publish a package that has been compiled by NGCC. This is not allowed.\\nPlease delete and rebuild the package, without compiling with NGCC, before attempting to publish.\\nNote that NGCC may have been run by importing this package into another project that is being built with Ivy enabled.\\n')\" && exit 1"
+  }
 }
Index: trip-planner-front/node_modules/@angular/cdk/stepper/step-header.d.ts
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/stepper/step-header.d.ts	(revision e29cc2ea91f8c99a4329f6d20188305dfd752279)
+++ trip-planner-front/node_modules/@angular/cdk/stepper/step-header.d.ts	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -8,4 +8,5 @@
 import { ElementRef } from '@angular/core';
 import { FocusableOption } from '@angular/cdk/a11y';
+import * as ɵngcc0 from '@angular/core';
 export declare class CdkStepHeader implements FocusableOption {
     _elementRef: ElementRef<HTMLElement>;
@@ -13,3 +14,7 @@
     /** Focuses the step header. */
     focus(): void;
+    static ɵfac: ɵngcc0.ɵɵFactoryDeclaration<CdkStepHeader, never>;
+    static ɵdir: ɵngcc0.ɵɵDirectiveDeclaration<CdkStepHeader, "[cdkStepHeader]", never, {}, {}, never>;
 }
+
+//# sourceMappingURL=step-header.d.ts.map
Index: trip-planner-front/node_modules/@angular/cdk/stepper/step-header.d.ts.__ivy_ngcc_bak
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/stepper/step-header.d.ts.__ivy_ngcc_bak	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
+++ trip-planner-front/node_modules/@angular/cdk/stepper/step-header.d.ts.__ivy_ngcc_bak	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -0,0 +1,15 @@
+/**
+ * @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
+ */
+import { ElementRef } from '@angular/core';
+import { FocusableOption } from '@angular/cdk/a11y';
+export declare class CdkStepHeader implements FocusableOption {
+    _elementRef: ElementRef<HTMLElement>;
+    constructor(_elementRef: ElementRef<HTMLElement>);
+    /** Focuses the step header. */
+    focus(): void;
+}
Index: trip-planner-front/node_modules/@angular/cdk/stepper/step-header.d.ts.map
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/stepper/step-header.d.ts.map	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
+++ trip-planner-front/node_modules/@angular/cdk/stepper/step-header.d.ts.map	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -0,0 +1,1 @@
+{"version":3,"file":"step-header.d.ts","sources":["step-header.d.ts"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;;;AACA","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 */\nimport { ElementRef } from '@angular/core';\nimport { FocusableOption } from '@angular/cdk/a11y';\nexport declare class CdkStepHeader implements FocusableOption {\n    _elementRef: ElementRef<HTMLElement>;\n    constructor(_elementRef: ElementRef<HTMLElement>);\n    /** Focuses the step header. */\n    focus(): void;\n}\n"]}
Index: trip-planner-front/node_modules/@angular/cdk/stepper/step-label.d.ts
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/stepper/step-label.d.ts	(revision e29cc2ea91f8c99a4329f6d20188305dfd752279)
+++ trip-planner-front/node_modules/@angular/cdk/stepper/step-label.d.ts	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -7,6 +7,11 @@
  */
 import { TemplateRef } from '@angular/core';
+import * as ɵngcc0 from '@angular/core';
 export declare class CdkStepLabel {
     template: TemplateRef<any>;
     constructor(/** @docs-private */ template: TemplateRef<any>);
+    static ɵfac: ɵngcc0.ɵɵFactoryDeclaration<CdkStepLabel, never>;
+    static ɵdir: ɵngcc0.ɵɵDirectiveDeclaration<CdkStepLabel, "[cdkStepLabel]", never, {}, {}, never>;
 }
+
+//# sourceMappingURL=step-label.d.ts.map
Index: trip-planner-front/node_modules/@angular/cdk/stepper/step-label.d.ts.__ivy_ngcc_bak
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/stepper/step-label.d.ts.__ivy_ngcc_bak	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
+++ trip-planner-front/node_modules/@angular/cdk/stepper/step-label.d.ts.__ivy_ngcc_bak	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -0,0 +1,12 @@
+/**
+ * @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
+ */
+import { TemplateRef } from '@angular/core';
+export declare class CdkStepLabel {
+    template: TemplateRef<any>;
+    constructor(/** @docs-private */ template: TemplateRef<any>);
+}
Index: trip-planner-front/node_modules/@angular/cdk/stepper/step-label.d.ts.map
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/stepper/step-label.d.ts.map	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
+++ trip-planner-front/node_modules/@angular/cdk/stepper/step-label.d.ts.map	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -0,0 +1,1 @@
+{"version":3,"file":"step-label.d.ts","sources":["step-label.d.ts"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;;;AACA","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 */\nimport { TemplateRef } from '@angular/core';\nexport declare class CdkStepLabel {\n    template: TemplateRef<any>;\n    constructor(/** @docs-private */ template: TemplateRef<any>);\n}\n"]}
Index: trip-planner-front/node_modules/@angular/cdk/stepper/stepper-button.d.ts
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/stepper/stepper-button.d.ts	(revision e29cc2ea91f8c99a4329f6d20188305dfd752279)
+++ trip-planner-front/node_modules/@angular/cdk/stepper/stepper-button.d.ts	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -8,4 +8,5 @@
 import { CdkStepper } from './stepper';
 /** Button that moves to the next step in a stepper workflow. */
+import * as ɵngcc0 from '@angular/core';
 export declare class CdkStepperNext {
     _stepper: CdkStepper;
@@ -14,4 +15,6 @@
     constructor(_stepper: CdkStepper);
     _handleClick(): void;
+    static ɵfac: ɵngcc0.ɵɵFactoryDeclaration<CdkStepperNext, never>;
+    static ɵdir: ɵngcc0.ɵɵDirectiveDeclaration<CdkStepperNext, "button[cdkStepperNext]", never, { "type": "type"; }, {}, never>;
 }
 /** Button that moves to the previous step in a stepper workflow. */
@@ -22,3 +25,7 @@
     constructor(_stepper: CdkStepper);
     _handleClick(): void;
+    static ɵfac: ɵngcc0.ɵɵFactoryDeclaration<CdkStepperPrevious, never>;
+    static ɵdir: ɵngcc0.ɵɵDirectiveDeclaration<CdkStepperPrevious, "button[cdkStepperPrevious]", never, { "type": "type"; }, {}, never>;
 }
+
+//# sourceMappingURL=stepper-button.d.ts.map
Index: trip-planner-front/node_modules/@angular/cdk/stepper/stepper-button.d.ts.__ivy_ngcc_bak
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/stepper/stepper-button.d.ts.__ivy_ngcc_bak	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
+++ trip-planner-front/node_modules/@angular/cdk/stepper/stepper-button.d.ts.__ivy_ngcc_bak	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -0,0 +1,24 @@
+/**
+ * @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
+ */
+import { CdkStepper } from './stepper';
+/** Button that moves to the next step in a stepper workflow. */
+export declare class CdkStepperNext {
+    _stepper: CdkStepper;
+    /** Type of the next button. Defaults to "submit" if not specified. */
+    type: string;
+    constructor(_stepper: CdkStepper);
+    _handleClick(): void;
+}
+/** Button that moves to the previous step in a stepper workflow. */
+export declare class CdkStepperPrevious {
+    _stepper: CdkStepper;
+    /** Type of the previous button. Defaults to "button" if not specified. */
+    type: string;
+    constructor(_stepper: CdkStepper);
+    _handleClick(): void;
+}
Index: trip-planner-front/node_modules/@angular/cdk/stepper/stepper-button.d.ts.map
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/stepper/stepper-button.d.ts.map	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
+++ trip-planner-front/node_modules/@angular/cdk/stepper/stepper-button.d.ts.map	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -0,0 +1,1 @@
+{"version":3,"file":"stepper-button.d.ts","sources":["stepper-button.d.ts"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA","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 */\nimport { CdkStepper } from './stepper';\n/** Button that moves to the next step in a stepper workflow. */\nexport declare class CdkStepperNext {\n    _stepper: CdkStepper;\n    /** Type of the next button. Defaults to \"submit\" if not specified. */\n    type: string;\n    constructor(_stepper: CdkStepper);\n    _handleClick(): void;\n}\n/** Button that moves to the previous step in a stepper workflow. */\nexport declare class CdkStepperPrevious {\n    _stepper: CdkStepper;\n    /** Type of the previous button. Defaults to \"button\" if not specified. */\n    type: string;\n    constructor(_stepper: CdkStepper);\n    _handleClick(): void;\n}\n"]}
Index: trip-planner-front/node_modules/@angular/cdk/stepper/stepper-module.d.ts
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/stepper/stepper-module.d.ts	(revision e29cc2ea91f8c99a4329f6d20188305dfd752279)
+++ trip-planner-front/node_modules/@angular/cdk/stepper/stepper-module.d.ts	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -6,4 +6,15 @@
  * found in the LICENSE file at https://angular.io/license
  */
+import * as ɵngcc0 from '@angular/core';
+import * as ɵngcc1 from './stepper';
+import * as ɵngcc2 from './step-header';
+import * as ɵngcc3 from './step-label';
+import * as ɵngcc4 from './stepper-button';
+import * as ɵngcc5 from '@angular/cdk/bidi';
 export declare class CdkStepperModule {
+    static ɵfac: ɵngcc0.ɵɵFactoryDeclaration<CdkStepperModule, never>;
+    static ɵmod: ɵngcc0.ɵɵNgModuleDeclaration<CdkStepperModule, [typeof ɵngcc1.CdkStep, typeof ɵngcc1.CdkStepper, typeof ɵngcc2.CdkStepHeader, typeof ɵngcc3.CdkStepLabel, typeof ɵngcc4.CdkStepperNext, typeof ɵngcc4.CdkStepperPrevious], [typeof ɵngcc5.BidiModule], [typeof ɵngcc1.CdkStep, typeof ɵngcc1.CdkStepper, typeof ɵngcc2.CdkStepHeader, typeof ɵngcc3.CdkStepLabel, typeof ɵngcc4.CdkStepperNext, typeof ɵngcc4.CdkStepperPrevious]>;
+    static ɵinj: ɵngcc0.ɵɵInjectorDeclaration<CdkStepperModule>;
 }
+
+//# sourceMappingURL=stepper-module.d.ts.map
Index: trip-planner-front/node_modules/@angular/cdk/stepper/stepper-module.d.ts.__ivy_ngcc_bak
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/stepper/stepper-module.d.ts.__ivy_ngcc_bak	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
+++ trip-planner-front/node_modules/@angular/cdk/stepper/stepper-module.d.ts.__ivy_ngcc_bak	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -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
+ */
+export declare class CdkStepperModule {
+}
Index: trip-planner-front/node_modules/@angular/cdk/stepper/stepper-module.d.ts.map
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/stepper/stepper-module.d.ts.map	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
+++ trip-planner-front/node_modules/@angular/cdk/stepper/stepper-module.d.ts.map	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -0,0 +1,1 @@
+{"version":3,"file":"stepper-module.d.ts","sources":["stepper-module.d.ts"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;AACA;;;;AACA","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 */\nexport declare class CdkStepperModule {\n}\n"]}
Index: trip-planner-front/node_modules/@angular/cdk/stepper/stepper.d.ts
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/stepper/stepper.d.ts	(revision e29cc2ea91f8c99a4329f6d20188305dfd752279)
+++ trip-planner-front/node_modules/@angular/cdk/stepper/stepper.d.ts	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -16,4 +16,5 @@
  * the content into correct position upon step selection change.
  */
+import * as ɵngcc0 from '@angular/core';
 export declare type StepContentPositionState = 'previous' | 'current' | 'next';
 /** Possible orientation of a stepper. */
@@ -113,4 +114,6 @@
     static ngAcceptInputType_optional: BooleanInput;
     static ngAcceptInputType_completed: BooleanInput;
+    static ɵfac: ɵngcc0.ɵɵFactoryDeclaration<CdkStep, [null, { optional: true; }]>;
+    static ɵcmp: ɵngcc0.ɵɵComponentDeclaration<CdkStep, "cdk-step", ["cdkStep"], { "editable": "editable"; "optional": "optional"; "completed": "completed"; "hasError": "hasError"; "stepControl": "stepControl"; "label": "label"; "errorMessage": "errorMessage"; "ariaLabel": "aria-label"; "ariaLabelledby": "aria-labelledby"; "state": "state"; }, { "interactedStream": "interacted"; }, ["stepLabel"], ["*"]>;
 }
 export declare class CdkStepper implements AfterContentInit, AfterViewInit, OnDestroy {
@@ -197,4 +200,6 @@
     static ngAcceptInputType_linear: BooleanInput;
     static ngAcceptInputType_selectedIndex: NumberInput;
+    static ɵfac: ɵngcc0.ɵɵFactoryDeclaration<CdkStepper, [{ optional: true; }, null, null, null]>;
+    static ɵdir: ɵngcc0.ɵɵDirectiveDeclaration<CdkStepper, "[cdkStepper]", ["cdkStepper"], { "linear": "linear"; "selectedIndex": "selectedIndex"; "selected": "selected"; "orientation": "orientation"; }, { "selectionChange": "selectionChange"; }, ["_steps", "_stepHeader"]>;
 }
 /**
@@ -253,2 +258,4 @@
 }
 export {};
+
+//# sourceMappingURL=stepper.d.ts.map
Index: trip-planner-front/node_modules/@angular/cdk/stepper/stepper.d.ts.__ivy_ngcc_bak
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/stepper/stepper.d.ts.__ivy_ngcc_bak	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
+++ trip-planner-front/node_modules/@angular/cdk/stepper/stepper.d.ts.__ivy_ngcc_bak	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -0,0 +1,254 @@
+/**
+ * @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
+ */
+import { Directionality } from '@angular/cdk/bidi';
+import { BooleanInput, NumberInput } from '@angular/cdk/coercion';
+import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, InjectionToken, OnChanges, OnDestroy, QueryList, TemplateRef, AfterContentInit } from '@angular/core';
+import { Observable, Subject } from 'rxjs';
+import { CdkStepHeader } from './step-header';
+import { CdkStepLabel } from './step-label';
+/**
+ * Position state of the content of each step in stepper that is used for transitioning
+ * the content into correct position upon step selection change.
+ */
+export declare type StepContentPositionState = 'previous' | 'current' | 'next';
+/** Possible orientation of a stepper. */
+export declare type StepperOrientation = 'horizontal' | 'vertical';
+/** Change event emitted on selection changes. */
+export declare class StepperSelectionEvent {
+    /** Index of the step now selected. */
+    selectedIndex: number;
+    /** Index of the step previously selected. */
+    previouslySelectedIndex: number;
+    /** The step instance now selected. */
+    selectedStep: CdkStep;
+    /** The step instance previously selected. */
+    previouslySelectedStep: CdkStep;
+}
+/** The state of each step. */
+export declare type StepState = 'number' | 'edit' | 'done' | 'error' | string;
+/** Enum to represent the different states of the steps. */
+export declare const STEP_STATE: {
+    NUMBER: string;
+    EDIT: string;
+    DONE: string;
+    ERROR: string;
+};
+/** InjectionToken that can be used to specify the global stepper options. */
+export declare const STEPPER_GLOBAL_OPTIONS: InjectionToken<StepperOptions>;
+/** Configurable options for stepper. */
+export interface StepperOptions {
+    /**
+     * Whether the stepper should display an error state or not.
+     * Default behavior is assumed to be false.
+     */
+    showError?: boolean;
+    /**
+     * Whether the stepper should display the default indicator type
+     * or not.
+     * Default behavior is assumed to be true.
+     */
+    displayDefaultIndicatorType?: boolean;
+}
+export declare class CdkStep implements OnChanges {
+    _stepper: CdkStepper;
+    private _stepperOptions;
+    _displayDefaultIndicatorType: boolean;
+    /** Template for step label if it exists. */
+    stepLabel: CdkStepLabel;
+    /** Template for step content. */
+    content: TemplateRef<any>;
+    /** The top level abstract control of the step. */
+    stepControl: AbstractControlLike;
+    /** Whether user has attempted to move away from the step. */
+    interacted: boolean;
+    /** Emits when the user has attempted to move away from the step. */
+    readonly interactedStream: EventEmitter<CdkStep>;
+    /** Plain text label of the step. */
+    label: string;
+    /** Error message to display when there's an error. */
+    errorMessage: string;
+    /** Aria label for the tab. */
+    ariaLabel: string;
+    /**
+     * Reference to the element that the tab is labelled by.
+     * Will be cleared if `aria-label` is set at the same time.
+     */
+    ariaLabelledby: string;
+    /** State of the step. */
+    state: StepState;
+    /** Whether the user can return to this step once it has been marked as completed. */
+    get editable(): boolean;
+    set editable(value: boolean);
+    private _editable;
+    /** Whether the completion of step is optional. */
+    get optional(): boolean;
+    set optional(value: boolean);
+    private _optional;
+    /** Whether step is marked as completed. */
+    get completed(): boolean;
+    set completed(value: boolean);
+    _completedOverride: boolean | null;
+    private _getDefaultCompleted;
+    /** Whether step has an error. */
+    get hasError(): boolean;
+    set hasError(value: boolean);
+    private _customError;
+    private _getDefaultError;
+    constructor(_stepper: CdkStepper, stepperOptions?: StepperOptions);
+    /** Selects this step component. */
+    select(): void;
+    /** Resets the step to its initial state. Note that this includes resetting form data. */
+    reset(): void;
+    ngOnChanges(): void;
+    _markAsInteracted(): void;
+    /** Determines whether the error state can be shown. */
+    _showError(): boolean;
+    static ngAcceptInputType_editable: BooleanInput;
+    static ngAcceptInputType_hasError: BooleanInput;
+    static ngAcceptInputType_optional: BooleanInput;
+    static ngAcceptInputType_completed: BooleanInput;
+}
+export declare class CdkStepper implements AfterContentInit, AfterViewInit, OnDestroy {
+    private _dir;
+    private _changeDetectorRef;
+    private _elementRef;
+    /** Emits when the component is destroyed. */
+    protected readonly _destroyed: Subject<void>;
+    /** Used for managing keyboard focus. */
+    private _keyManager;
+    /** Full list of steps inside the stepper, including inside nested steppers. */
+    _steps: QueryList<CdkStep>;
+    /** Steps that belong to the current stepper, excluding ones from nested steppers. */
+    readonly steps: QueryList<CdkStep>;
+    /** The list of step headers of the steps in the stepper. */
+    _stepHeader: QueryList<CdkStepHeader>;
+    /** List of step headers sorted based on their DOM order. */
+    private _sortedHeaders;
+    /** Whether the validity of previous steps should be checked or not. */
+    get linear(): boolean;
+    set linear(value: boolean);
+    private _linear;
+    /** The index of the selected step. */
+    get selectedIndex(): number;
+    set selectedIndex(index: number);
+    private _selectedIndex;
+    /** The step that is selected. */
+    get selected(): CdkStep | undefined;
+    set selected(step: CdkStep | undefined);
+    /** Event emitted when the selected step has changed. */
+    readonly selectionChange: EventEmitter<StepperSelectionEvent>;
+    /** Used to track unique ID for each stepper component. */
+    _groupId: number;
+    /** Orientation of the stepper. */
+    get orientation(): StepperOrientation;
+    set orientation(value: StepperOrientation);
+    /**
+     * @deprecated To be turned into a private property. Use `orientation` instead.
+     * @breaking-change 13.0.0
+     */
+    protected _orientation: StepperOrientation;
+    constructor(_dir: Directionality, _changeDetectorRef: ChangeDetectorRef, _elementRef: ElementRef<HTMLElement>, 
+    /**
+     * @deprecated No longer in use, to be removed.
+     * @breaking-change 13.0.0
+     */
+    _document: any);
+    ngAfterContentInit(): void;
+    ngAfterViewInit(): void;
+    ngOnDestroy(): void;
+    /** Selects and focuses the next step in list. */
+    next(): void;
+    /** Selects and focuses the previous step in list. */
+    previous(): void;
+    /** Resets the stepper to its initial state. Note that this includes clearing form data. */
+    reset(): void;
+    /** Returns a unique id for each step label element. */
+    _getStepLabelId(i: number): string;
+    /** Returns unique id for each step content element. */
+    _getStepContentId(i: number): string;
+    /** Marks the component to be change detected. */
+    _stateChanged(): void;
+    /** Returns position state of the step with the given index. */
+    _getAnimationDirection(index: number): StepContentPositionState;
+    /** Returns the type of icon to be displayed. */
+    _getIndicatorType(index: number, state?: StepState): StepState;
+    private _getDefaultIndicatorLogic;
+    private _getGuidelineLogic;
+    private _isCurrentStep;
+    /** Returns the index of the currently-focused step header. */
+    _getFocusIndex(): number | null;
+    private _updateSelectedItemIndex;
+    _onKeydown(event: KeyboardEvent): void;
+    private _anyControlsInvalidOrPending;
+    private _layoutDirection;
+    /** Checks whether the stepper contains the focused element. */
+    private _containsFocus;
+    /** Checks whether the passed-in index is a valid step index. */
+    private _isValidIndex;
+    static ngAcceptInputType_editable: BooleanInput;
+    static ngAcceptInputType_optional: BooleanInput;
+    static ngAcceptInputType_completed: BooleanInput;
+    static ngAcceptInputType_hasError: BooleanInput;
+    static ngAcceptInputType_linear: BooleanInput;
+    static ngAcceptInputType_selectedIndex: NumberInput;
+}
+/**
+ * Simplified representation of an "AbstractControl" from @angular/forms.
+ * Used to avoid having to bring in @angular/forms for a single optional interface.
+ * @docs-private
+ */
+interface AbstractControlLike {
+    asyncValidator: ((control: any) => any) | null;
+    dirty: boolean;
+    disabled: boolean;
+    enabled: boolean;
+    errors: {
+        [key: string]: any;
+    } | null;
+    invalid: boolean;
+    parent: any;
+    pending: boolean;
+    pristine: boolean;
+    root: AbstractControlLike;
+    status: string;
+    readonly statusChanges: Observable<any>;
+    touched: boolean;
+    untouched: boolean;
+    updateOn: any;
+    valid: boolean;
+    validator: ((control: any) => any) | null;
+    value: any;
+    readonly valueChanges: Observable<any>;
+    clearAsyncValidators(): void;
+    clearValidators(): void;
+    disable(opts?: any): void;
+    enable(opts?: any): void;
+    get(path: (string | number)[] | string): AbstractControlLike | null;
+    getError(errorCode: string, path?: (string | number)[] | string): any;
+    hasError(errorCode: string, path?: (string | number)[] | string): boolean;
+    markAllAsTouched(): void;
+    markAsDirty(opts?: any): void;
+    markAsPending(opts?: any): void;
+    markAsPristine(opts?: any): void;
+    markAsTouched(opts?: any): void;
+    markAsUntouched(opts?: any): void;
+    patchValue(value: any, options?: Object): void;
+    reset(value?: any, options?: Object): void;
+    setAsyncValidators(newValidator: (control: any) => any | ((control: any) => any)[] | null): void;
+    setErrors(errors: {
+        [key: string]: any;
+    } | null, opts?: any): void;
+    setParent(parent: any): void;
+    setValidators(newValidator: (control: any) => any | ((control: any) => any)[] | null): void;
+    setValue(value: any, options?: Object): void;
+    updateValueAndValidity(opts?: any): void;
+    patchValue(value: any, options?: any): void;
+    reset(formState?: any, options?: any): void;
+    setValue(value: any, options?: any): void;
+}
+export {};
Index: trip-planner-front/node_modules/@angular/cdk/stepper/stepper.d.ts.map
===================================================================
--- trip-planner-front/node_modules/@angular/cdk/stepper/stepper.d.ts.map	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
+++ trip-planner-front/node_modules/@angular/cdk/stepper/stepper.d.ts.map	(revision 571e0df9a7a5e798c9941a85842f785177bedbbd)
@@ -0,0 +1,1 @@
+{"version":3,"file":"stepper.d.ts","sources":["stepper.d.ts"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","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 */\nimport { Directionality } from '@angular/cdk/bidi';\nimport { BooleanInput, NumberInput } from '@angular/cdk/coercion';\nimport { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, InjectionToken, OnChanges, OnDestroy, QueryList, TemplateRef, AfterContentInit } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\nimport { CdkStepHeader } from './step-header';\nimport { CdkStepLabel } from './step-label';\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 declare type StepContentPositionState = 'previous' | 'current' | 'next';\n/** Possible orientation of a stepper. */\nexport declare type StepperOrientation = 'horizontal' | 'vertical';\n/** Change event emitted on selection changes. */\nexport declare class StepperSelectionEvent {\n    /** Index of the step now selected. */\n    selectedIndex: number;\n    /** Index of the step previously selected. */\n    previouslySelectedIndex: number;\n    /** The step instance now selected. */\n    selectedStep: CdkStep;\n    /** The step instance previously selected. */\n    previouslySelectedStep: CdkStep;\n}\n/** The state of each step. */\nexport declare type StepState = 'number' | 'edit' | 'done' | 'error' | string;\n/** Enum to represent the different states of the steps. */\nexport declare const STEP_STATE: {\n    NUMBER: string;\n    EDIT: string;\n    DONE: string;\n    ERROR: string;\n};\n/** InjectionToken that can be used to specify the global stepper options. */\nexport declare const STEPPER_GLOBAL_OPTIONS: InjectionToken<StepperOptions>;\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     * 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}\nexport declare class CdkStep implements OnChanges {\n    _stepper: CdkStepper;\n    private _stepperOptions;\n    _displayDefaultIndicatorType: boolean;\n    /** Template for step label if it exists. */\n    stepLabel: CdkStepLabel;\n    /** Template for step content. */\n    content: TemplateRef<any>;\n    /** The top level abstract control of the step. */\n    stepControl: AbstractControlLike;\n    /** Whether user has attempted to move away from the step. */\n    interacted: boolean;\n    /** Emits when the user has attempted to move away from the step. */\n    readonly interactedStream: EventEmitter<CdkStep>;\n    /** Plain text label of the step. */\n    label: string;\n    /** Error message to display when there's an error. */\n    errorMessage: string;\n    /** Aria label for the tab. */\n    ariaLabel: string;\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    ariaLabelledby: string;\n    /** State of the step. */\n    state: StepState;\n    /** Whether the user can return to this step once it has been marked as completed. */\n    get editable(): boolean;\n    set editable(value: boolean);\n    private _editable;\n    /** Whether the completion of step is optional. */\n    get optional(): boolean;\n    set optional(value: boolean);\n    private _optional;\n    /** Whether step is marked as completed. */\n    get completed(): boolean;\n    set completed(value: boolean);\n    _completedOverride: boolean | null;\n    private _getDefaultCompleted;\n    /** Whether step has an error. */\n    get hasError(): boolean;\n    set hasError(value: boolean);\n    private _customError;\n    private _getDefaultError;\n    constructor(_stepper: CdkStepper, stepperOptions?: StepperOptions);\n    /** Selects this step component. */\n    select(): void;\n    /** Resets the step to its initial state. Note that this includes resetting form data. */\n    reset(): void;\n    ngOnChanges(): void;\n    _markAsInteracted(): void;\n    /** Determines whether the error state can be shown. */\n    _showError(): boolean;\n    static ngAcceptInputType_editable: BooleanInput;\n    static ngAcceptInputType_hasError: BooleanInput;\n    static ngAcceptInputType_optional: BooleanInput;\n    static ngAcceptInputType_completed: BooleanInput;\n}\nexport declare class CdkStepper implements AfterContentInit, AfterViewInit, OnDestroy {\n    private _dir;\n    private _changeDetectorRef;\n    private _elementRef;\n    /** Emits when the component is destroyed. */\n    protected readonly _destroyed: Subject<void>;\n    /** Used for managing keyboard focus. */\n    private _keyManager;\n    /** Full list of steps inside the stepper, including inside nested steppers. */\n    _steps: QueryList<CdkStep>;\n    /** Steps that belong to the current stepper, excluding ones from nested steppers. */\n    readonly steps: QueryList<CdkStep>;\n    /** The list of step headers of the steps in the stepper. */\n    _stepHeader: QueryList<CdkStepHeader>;\n    /** List of step headers sorted based on their DOM order. */\n    private _sortedHeaders;\n    /** Whether the validity of previous steps should be checked or not. */\n    get linear(): boolean;\n    set linear(value: boolean);\n    private _linear;\n    /** The index of the selected step. */\n    get selectedIndex(): number;\n    set selectedIndex(index: number);\n    private _selectedIndex;\n    /** The step that is selected. */\n    get selected(): CdkStep | undefined;\n    set selected(step: CdkStep | undefined);\n    /** Event emitted when the selected step has changed. */\n    readonly selectionChange: EventEmitter<StepperSelectionEvent>;\n    /** Used to track unique ID for each stepper component. */\n    _groupId: number;\n    /** Orientation of the stepper. */\n    get orientation(): StepperOrientation;\n    set orientation(value: StepperOrientation);\n    /**\n     * @deprecated To be turned into a private property. Use `orientation` instead.\n     * @breaking-change 13.0.0\n     */\n    protected _orientation: StepperOrientation;\n    constructor(_dir: Directionality, _changeDetectorRef: ChangeDetectorRef, _elementRef: ElementRef<HTMLElement>, \n    /**\n     * @deprecated No longer in use, to be removed.\n     * @breaking-change 13.0.0\n     */\n    _document: any);\n    ngAfterContentInit(): void;\n    ngAfterViewInit(): void;\n    ngOnDestroy(): void;\n    /** Selects and focuses the next step in list. */\n    next(): void;\n    /** Selects and focuses the previous step in list. */\n    previous(): void;\n    /** Resets the stepper to its initial state. Note that this includes clearing form data. */\n    reset(): void;\n    /** Returns a unique id for each step label element. */\n    _getStepLabelId(i: number): string;\n    /** Returns unique id for each step content element. */\n    _getStepContentId(i: number): string;\n    /** Marks the component to be change detected. */\n    _stateChanged(): void;\n    /** Returns position state of the step with the given index. */\n    _getAnimationDirection(index: number): StepContentPositionState;\n    /** Returns the type of icon to be displayed. */\n    _getIndicatorType(index: number, state?: StepState): StepState;\n    private _getDefaultIndicatorLogic;\n    private _getGuidelineLogic;\n    private _isCurrentStep;\n    /** Returns the index of the currently-focused step header. */\n    _getFocusIndex(): number | null;\n    private _updateSelectedItemIndex;\n    _onKeydown(event: KeyboardEvent): void;\n    private _anyControlsInvalidOrPending;\n    private _layoutDirection;\n    /** Checks whether the stepper contains the focused element. */\n    private _containsFocus;\n    /** Checks whether the passed-in index is a valid step index. */\n    private _isValidIndex;\n    static ngAcceptInputType_editable: BooleanInput;\n    static ngAcceptInputType_optional: BooleanInput;\n    static ngAcceptInputType_completed: BooleanInput;\n    static ngAcceptInputType_hasError: BooleanInput;\n    static ngAcceptInputType_linear: BooleanInput;\n    static ngAcceptInputType_selectedIndex: NumberInput;\n}\n/**\n * Simplified representation of an \"AbstractControl\" from @angular/forms.\n * Used to avoid having to bring in @angular/forms for a single optional interface.\n * @docs-private\n */\ninterface AbstractControlLike {\n    asyncValidator: ((control: any) => any) | null;\n    dirty: boolean;\n    disabled: boolean;\n    enabled: boolean;\n    errors: {\n        [key: string]: any;\n    } | null;\n    invalid: boolean;\n    parent: any;\n    pending: boolean;\n    pristine: boolean;\n    root: AbstractControlLike;\n    status: string;\n    readonly statusChanges: Observable<any>;\n    touched: boolean;\n    untouched: boolean;\n    updateOn: any;\n    valid: boolean;\n    validator: ((control: any) => any) | null;\n    value: any;\n    readonly valueChanges: Observable<any>;\n    clearAsyncValidators(): void;\n    clearValidators(): void;\n    disable(opts?: any): void;\n    enable(opts?: any): void;\n    get(path: (string | number)[] | string): AbstractControlLike | null;\n    getError(errorCode: string, path?: (string | number)[] | string): any;\n    hasError(errorCode: string, path?: (string | number)[] | string): boolean;\n    markAllAsTouched(): void;\n    markAsDirty(opts?: any): void;\n    markAsPending(opts?: any): void;\n    markAsPristine(opts?: any): void;\n    markAsTouched(opts?: any): void;\n    markAsUntouched(opts?: any): void;\n    patchValue(value: any, options?: Object): void;\n    reset(value?: any, options?: Object): void;\n    setAsyncValidators(newValidator: (control: any) => any | ((control: any) => any)[] | null): void;\n    setErrors(errors: {\n        [key: string]: any;\n    } | null, opts?: any): void;\n    setParent(parent: any): void;\n    setValidators(newValidator: (control: any) => any | ((control: any) => any)[] | null): void;\n    setValue(value: any, options?: Object): void;\n    updateValueAndValidity(opts?: any): void;\n    patchValue(value: any, options?: any): void;\n    reset(formState?: any, options?: any): void;\n    setValue(value: any, options?: any): void;\n}\nexport {};\n"]}
