materialize-angular
Version:
Material UI Angular library
93 lines • 7.67 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: app/completed-components/stepper/stepper.component.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/**
* @license
* Copyright Workylab. 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://raw.githubusercontent.com/workylab/materialize-angular/master/LICENSE
*/
import { Component, ContentChildren, Input, QueryList } from '@angular/core';
import { config } from '../../config';
import { StepComponent } from './step/step.component';
export class StepperComponent {
constructor() {
this.className = StepperComponent.defaultProps.className;
this.activeIndex = StepperComponent.defaultProps.activeIndex;
this.showTicks = StepperComponent.defaultProps.showTicks;
this.prefix = config.components.prefix;
this.isContentReady = true;
this.validateContent = this.validateContent.bind(this);
}
/**
* @return {?}
*/
ngAfterContentInit() {
this.validateContent();
this.steps.changes.subscribe(this.validateContent);
}
/**
* @return {?}
*/
validateContent() {
setTimeout((/**
* @return {?}
*/
() => {
this.isContentReady = false;
this.validateSteps();
}), 0);
}
/**
* @return {?}
*/
validateSteps() {
this.steps.forEach((/**
* @param {?} step
* @param {?} index
* @return {?}
*/
(step, index) => {
step.isCompleted = (index < this.activeIndex && this.showTicks);
}));
}
}
StepperComponent.defaultProps = {
activeIndex: 0,
className: '',
showTicks: true
};
StepperComponent.decorators = [
{ type: Component, args: [{
selector: `${config.components.prefix}-stepper }`,
template: "<div [ngClass]=\"[prefix + '-stepper', className]\">\n <ng-container *ngFor=\"let step of steps; index as i\">\n <div [ngClass]=\"prefix + '-step-divider'\" *ngIf=\"i > 0\" [class.completed]=\"i <= activeIndex\"></div>\n\n <div\n [ngClass]=\"prefix + '-step'\"\n [class.active]=\"i === activeIndex\"\n [class.completed]=\"i < activeIndex\"\n *ngIf=\"!isContentReady\"\n >\n <ng-template [ngTemplateOutlet]=\"step.indicatorTemplate\"></ng-template>\n <ng-template [ngTemplateOutlet]=\"step.labelTemplate\"></ng-template>\n </div>\n </ng-container>\n</div>\n"
}] }
];
/** @nocollapse */
StepperComponent.ctorParameters = () => [];
StepperComponent.propDecorators = {
className: [{ type: Input }],
activeIndex: [{ type: Input }],
showTicks: [{ type: Input }],
steps: [{ type: ContentChildren, args: [StepComponent,] }]
};
if (false) {
/** @type {?} */
StepperComponent.defaultProps;
/** @type {?} */
StepperComponent.prototype.className;
/** @type {?} */
StepperComponent.prototype.activeIndex;
/** @type {?} */
StepperComponent.prototype.showTicks;
/** @type {?} */
StepperComponent.prototype.steps;
/** @type {?} */
StepperComponent.prototype.prefix;
/** @type {?} */
StepperComponent.prototype.isContentReady;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9tYXRlcmlhbGl6ZS1hbmd1bGFyLyIsInNvdXJjZXMiOlsiYXBwL2NvbXBsZXRlZC1jb21wb25lbnRzL3N0ZXBwZXIvc3RlcHBlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBUUEsT0FBTyxFQUFvQixTQUFTLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0YsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN0QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFPdEQsTUFBTSxPQUFPLGdCQUFnQjtJQWdCM0I7UUFUUyxjQUFTLEdBQVcsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQztRQUM1RCxnQkFBVyxHQUFXLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUM7UUFDaEUsY0FBUyxHQUFZLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUM7UUFJL0QsV0FBTSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDO1FBQ2xDLG1CQUFjLEdBQUcsSUFBSSxDQUFDO1FBRzNCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekQsQ0FBQzs7OztJQUVELGtCQUFrQjtRQUNoQixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFdkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNyRCxDQUFDOzs7O0lBRUQsZUFBZTtRQUNiLFVBQVU7OztRQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1lBQzVCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN2QixDQUFDLEdBQUUsQ0FBQyxDQUFDLENBQUM7SUFDUixDQUFDOzs7O0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTzs7Ozs7UUFBQyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUNqQyxJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2xFLENBQUMsRUFBQyxDQUFDO0lBQ0wsQ0FBQzs7QUFwQ2UsNkJBQVksR0FBaUI7SUFDM0MsV0FBVyxFQUFFLENBQUM7SUFDZCxTQUFTLEVBQUUsRUFBRTtJQUNiLFNBQVMsRUFBRSxJQUFJO0NBQ2hCLENBQUM7O1lBVEgsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxHQUFJLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTyxZQUFZO2dCQUNuRCxvbUJBQXVDO2FBQ3hDOzs7Ozt3QkFRRSxLQUFLOzBCQUNMLEtBQUs7d0JBQ0wsS0FBSztvQkFFTCxlQUFlLFNBQUMsYUFBYTs7OztJQVY5Qiw4QkFJRTs7SUFFRixxQ0FBcUU7O0lBQ3JFLHVDQUF5RTs7SUFDekUscUNBQXNFOztJQUV0RSxpQ0FBZ0U7O0lBRWhFLGtDQUF5Qzs7SUFDekMsMENBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IFdvcmt5bGFiLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS93b3JreWxhYi9tYXRlcmlhbGl6ZS1hbmd1bGFyL21hc3Rlci9MSUNFTlNFXG4gKi9cblxuaW1wb3J0IHsgQWZ0ZXJDb250ZW50SW5pdCwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGRyZW4sIElucHV0LCBRdWVyeUxpc3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNvbmZpZyB9IGZyb20gJy4uLy4uL2NvbmZpZyc7XG5pbXBvcnQgeyBTdGVwQ29tcG9uZW50IH0gZnJvbSAnLi9zdGVwL3N0ZXAuY29tcG9uZW50JztcbmltcG9ydCB7IFN0ZXBwZXJNb2RlbCB9IGZyb20gJy4vc3RlcHBlci5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogYCR7IGNvbmZpZy5jb21wb25lbnRzLnByZWZpeCB9LXN0ZXBwZXIgfWAsXG4gIHRlbXBsYXRlVXJsOiAnLi9zdGVwcGVyLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBTdGVwcGVyQ29tcG9uZW50IGltcGxlbWVudHMgU3RlcHBlck1vZGVsLCBBZnRlckNvbnRlbnRJbml0IHtcbiAgc3RhdGljIHJlYWRvbmx5IGRlZmF1bHRQcm9wczogU3RlcHBlck1vZGVsID0ge1xuICAgIGFjdGl2ZUluZGV4OiAwLFxuICAgIGNsYXNzTmFtZTogJycsXG4gICAgc2hvd1RpY2tzOiB0cnVlXG4gIH07XG5cbiAgQElucHV0KCkgY2xhc3NOYW1lOiBzdHJpbmcgPSBTdGVwcGVyQ29tcG9uZW50LmRlZmF1bHRQcm9wcy5jbGFzc05hbWU7XG4gIEBJbnB1dCgpIGFjdGl2ZUluZGV4OiBudW1iZXIgPSBTdGVwcGVyQ29tcG9uZW50LmRlZmF1bHRQcm9wcy5hY3RpdmVJbmRleDtcbiAgQElucHV0KCkgc2hvd1RpY2tzOiBib29sZWFuID0gU3RlcHBlckNvbXBvbmVudC5kZWZhdWx0UHJvcHMuc2hvd1RpY2tzO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oU3RlcENvbXBvbmVudCkgc3RlcHM6IFF1ZXJ5TGlzdDxTdGVwQ29tcG9uZW50PjtcblxuICBwdWJsaWMgcHJlZml4ID0gY29uZmlnLmNvbXBvbmVudHMucHJlZml4O1xuICBwdWJsaWMgaXNDb250ZW50UmVhZHkgPSB0cnVlO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMudmFsaWRhdGVDb250ZW50ID0gdGhpcy52YWxpZGF0ZUNvbnRlbnQuYmluZCh0aGlzKTtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICB0aGlzLnZhbGlkYXRlQ29udGVudCgpO1xuXG4gICAgdGhpcy5zdGVwcy5jaGFuZ2VzLnN1YnNjcmliZSh0aGlzLnZhbGlkYXRlQ29udGVudCk7XG4gIH1cblxuICB2YWxpZGF0ZUNvbnRlbnQoKSB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmlzQ29udGVudFJlYWR5ID0gZmFsc2U7XG4gICAgICB0aGlzLnZhbGlkYXRlU3RlcHMoKTtcbiAgICB9LCAwKTtcbiAgfVxuXG4gIHZhbGlkYXRlU3RlcHMoKSB7XG4gICAgdGhpcy5zdGVwcy5mb3JFYWNoKChzdGVwLCBpbmRleCkgPT4ge1xuICAgICAgc3RlcC5pc0NvbXBsZXRlZCA9IChpbmRleCA8IHRoaXMuYWN0aXZlSW5kZXggJiYgdGhpcy5zaG93VGlja3MpO1xuICAgIH0pO1xuICB9XG59XG4iXX0=