UNPKG

materialize-angular

Version:
148 lines 11.2 kB
/** * @fileoverview added by tsickle * Generated from: app/completed-components/accordion/accordion.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, EventEmitter, Input, Output, QueryList } from '@angular/core'; import { CollapsibleComponent } from '../collapsible/collapsible.component'; import { config } from '../../config'; var AccordionComponent = /** @class */ (function () { function AccordionComponent() { this.className = AccordionComponent.defaultProps.className; this.activeIndex = AccordionComponent.defaultProps.activeIndex; this.initCollapsibles = this.initCollapsibles.bind(this); this.registerCollapsibles = this.registerCollapsibles.bind(this); this.onToggleEmitter = new EventEmitter(); } /** * @return {?} */ AccordionComponent.prototype.ngAfterContentInit = /** * @return {?} */ function () { this.initCollapsibles(); this.collapsiblesQueryList.changes.subscribe(this.initCollapsibles); }; /** * @return {?} */ AccordionComponent.prototype.initCollapsibles = /** * @return {?} */ function () { setTimeout(this.registerCollapsibles, 0); }; /** * @return {?} */ AccordionComponent.prototype.registerCollapsibles = /** * @return {?} */ function () { var _this = this; this.collapsiblesQueryList.forEach((/** * @param {?} item * @param {?} index * @return {?} */ function (item, index) { item.onOpenEmitter.subscribe((/** * @return {?} */ function () { _this.toggleCollapsibles(index); })); })); }; /** * @param {?} currentIndex * @return {?} */ AccordionComponent.prototype.toggleCollapsibles = /** * @param {?} currentIndex * @return {?} */ function (currentIndex) { this.activeIndex = currentIndex; this.onToggleEmitter.emit(this.activeIndex); this.collapsiblesQueryList.forEach((/** * @param {?} item * @param {?} index * @return {?} */ function (item, index) { if (index === currentIndex) { item.open(); } else { item.close(); } })); }; /** * @return {?} */ AccordionComponent.prototype.showNext = /** * @return {?} */ function () { /** @type {?} */ var nextIndex = this.activeIndex === null || this.activeIndex >= this.collapsiblesQueryList.length ? null : this.activeIndex + 1; this.toggleCollapsibles(nextIndex); }; /** * @return {?} */ AccordionComponent.prototype.showPrev = /** * @return {?} */ function () { /** @type {?} */ var prevIndex = this.activeIndex === null || this.activeIndex === 0 ? null : this.activeIndex - 1; this.toggleCollapsibles(prevIndex); }; AccordionComponent.defaultProps = { activeIndex: null, className: '' }; AccordionComponent.decorators = [ { type: Component, args: [{ selector: config.components.prefix + "-accordion }", template: "<div [ngClass]=\"className\">\n <ng-content select=\"materialize-collapsible\"></ng-content>\n</div>\n" }] } ]; /** @nocollapse */ AccordionComponent.ctorParameters = function () { return []; }; AccordionComponent.propDecorators = { collapsiblesQueryList: [{ type: ContentChildren, args: [CollapsibleComponent,] }], onToggleEmitter: [{ type: Output, args: ['onToggle',] }], className: [{ type: Input }] }; return AccordionComponent; }()); export { AccordionComponent }; if (false) { /** @type {?} */ AccordionComponent.defaultProps; /** @type {?} */ AccordionComponent.prototype.collapsiblesQueryList; /** @type {?} */ AccordionComponent.prototype.onToggleEmitter; /** @type {?} */ AccordionComponent.prototype.className; /** @type {?} */ AccordionComponent.prototype.activeIndex; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL21hdGVyaWFsaXplLWFuZ3VsYXIvIiwic291cmNlcyI6WyJhcHAvY29tcGxldGVkLWNvbXBvbmVudHMvYWNjb3JkaW9uL2FjY29yZGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBUUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxlQUFlLEVBQ2YsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFdEM7SUFrQkU7UUFKUyxjQUFTLEdBQVcsa0JBQWtCLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQztRQUtyRSxJQUFJLENBQUMsV0FBVyxHQUFHLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUM7UUFFL0QsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFakUsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBQzVDLENBQUM7Ozs7SUFFRCwrQ0FBa0I7OztJQUFsQjtRQUNFLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBRXhCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7Ozs7SUFFRCw2Q0FBZ0I7OztJQUFoQjtRQUNFLFVBQVUsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDM0MsQ0FBQzs7OztJQUVELGlEQUFvQjs7O0lBQXBCO1FBQUEsaUJBTUM7UUFMQyxJQUFJLENBQUMscUJBQXFCLENBQUMsT0FBTzs7Ozs7UUFBQyxVQUFDLElBQUksRUFBRSxLQUFLO1lBQzdDLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUzs7O1lBQUM7Z0JBQzNCLEtBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNqQyxDQUFDLEVBQUMsQ0FBQztRQUNMLENBQUMsRUFBQyxDQUFDO0lBQ0wsQ0FBQzs7Ozs7SUFFRCwrQ0FBa0I7Ozs7SUFBbEIsVUFBbUIsWUFBMkI7UUFDNUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxZQUFZLENBQUM7UUFFaEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRTVDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPOzs7OztRQUFDLFVBQUMsSUFBSSxFQUFFLEtBQUs7WUFDN0MsSUFBSSxLQUFLLEtBQUssWUFBWSxFQUFFO2dCQUMxQixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDYjtpQkFBTTtnQkFDTCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDZDtRQUNILENBQUMsRUFBQyxDQUFDO0lBQ0wsQ0FBQzs7OztJQUVELHFDQUFROzs7SUFBUjs7WUFDUSxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTTtZQUNsRyxDQUFDLENBQUMsSUFBSTtZQUNOLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxHQUFHLENBQUM7UUFFeEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7Ozs7SUFFRCxxQ0FBUTs7O0lBQVI7O1lBQ1EsU0FBUyxHQUFHLElBQUksQ0FBQyxXQUFXLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxXQUFXLEtBQUssQ0FBQztZQUNuRSxDQUFDLENBQUMsSUFBSTtZQUNOLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxHQUFHLENBQUM7UUFFeEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFwRWUsK0JBQVksR0FBbUI7UUFDN0MsV0FBVyxFQUFFLElBQUk7UUFDakIsU0FBUyxFQUFFLEVBQUU7S0FDZCxDQUFDOztnQkFSSCxTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFNLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxpQkFBZTtvQkFDckQsbUhBQXlDO2lCQUMxQzs7Ozs7d0NBT0UsZUFBZSxTQUFDLG9CQUFvQjtrQ0FFcEMsTUFBTSxTQUFDLFVBQVU7NEJBRWpCLEtBQUs7O0lBNERSLHlCQUFDO0NBQUEsQUExRUQsSUEwRUM7U0F0RVksa0JBQWtCOzs7SUFDN0IsZ0NBR0U7O0lBRUYsbURBQThGOztJQUU5Riw2Q0FBaUU7O0lBRWpFLHVDQUF1RTs7SUFFdkUseUNBQWtDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IFdvcmt5bGFiLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS93b3JreWxhYi9tYXRlcmlhbGl6ZS1hbmd1bGFyL21hc3Rlci9MSUNFTlNFXG4gKi9cblxuaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWNjb3JkaW9uTW9kZWwgfSBmcm9tICcuL2FjY29yZGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBDb2xsYXBzaWJsZUNvbXBvbmVudCB9IGZyb20gJy4uL2NvbGxhcHNpYmxlL2NvbGxhcHNpYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBjb25maWcgfSBmcm9tICcuLi8uLi9jb25maWcnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IGAkeyBjb25maWcuY29tcG9uZW50cy5wcmVmaXggfS1hY2NvcmRpb24gfWAsXG4gIHRlbXBsYXRlVXJsOiAnLi9hY2NvcmRpb24uY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEFjY29yZGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIEFjY29yZGlvbk1vZGVsLCBBZnRlckNvbnRlbnRJbml0IHtcbiAgc3RhdGljIHJlYWRvbmx5IGRlZmF1bHRQcm9wczogQWNjb3JkaW9uTW9kZWwgPSB7XG4gICAgYWN0aXZlSW5kZXg6IG51bGwsXG4gICAgY2xhc3NOYW1lOiAnJ1xuICB9O1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oQ29sbGFwc2libGVDb21wb25lbnQpIGNvbGxhcHNpYmxlc1F1ZXJ5TGlzdDogUXVlcnlMaXN0PENvbGxhcHNpYmxlQ29tcG9uZW50PjtcblxuICBAT3V0cHV0KCdvblRvZ2dsZScpIG9uVG9nZ2xlRW1pdHRlcjogRXZlbnRFbWl0dGVyPG51bWJlciB8IG51bGw+O1xuXG4gIEBJbnB1dCgpIGNsYXNzTmFtZTogc3RyaW5nID0gQWNjb3JkaW9uQ29tcG9uZW50LmRlZmF1bHRQcm9wcy5jbGFzc05hbWU7XG5cbiAgcHVibGljIGFjdGl2ZUluZGV4OiBudW1iZXIgfCBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuYWN0aXZlSW5kZXggPSBBY2NvcmRpb25Db21wb25lbnQuZGVmYXVsdFByb3BzLmFjdGl2ZUluZGV4O1xuXG4gICAgdGhpcy5pbml0Q29sbGFwc2libGVzID0gdGhpcy5pbml0Q29sbGFwc2libGVzLmJpbmQodGhpcyk7XG4gICAgdGhpcy5yZWdpc3RlckNvbGxhcHNpYmxlcyA9IHRoaXMucmVnaXN0ZXJDb2xsYXBzaWJsZXMuYmluZCh0aGlzKTtcblxuICAgIHRoaXMub25Ub2dnbGVFbWl0dGVyID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgIHRoaXMuaW5pdENvbGxhcHNpYmxlcygpO1xuXG4gICAgdGhpcy5jb2xsYXBzaWJsZXNRdWVyeUxpc3QuY2hhbmdlcy5zdWJzY3JpYmUodGhpcy5pbml0Q29sbGFwc2libGVzKTtcbiAgfVxuXG4gIGluaXRDb2xsYXBzaWJsZXMoKSB7XG4gICAgc2V0VGltZW91dCh0aGlzLnJlZ2lzdGVyQ29sbGFwc2libGVzLCAwKTtcbiAgfVxuXG4gIHJlZ2lzdGVyQ29sbGFwc2libGVzKCkge1xuICAgIHRoaXMuY29sbGFwc2libGVzUXVlcnlMaXN0LmZvckVhY2goKGl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICBpdGVtLm9uT3BlbkVtaXR0ZXIuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy50b2dnbGVDb2xsYXBzaWJsZXMoaW5kZXgpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICB0b2dnbGVDb2xsYXBzaWJsZXMoY3VycmVudEluZGV4OiBudW1iZXIgfCBudWxsKSB7XG4gICAgdGhpcy5hY3RpdmVJbmRleCA9IGN1cnJlbnRJbmRleDtcblxuICAgIHRoaXMub25Ub2dnbGVFbWl0dGVyLmVtaXQodGhpcy5hY3RpdmVJbmRleCk7XG5cbiAgICB0aGlzLmNvbGxhcHNpYmxlc1F1ZXJ5TGlzdC5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgaWYgKGluZGV4ID09PSBjdXJyZW50SW5kZXgpIHtcbiAgICAgICAgaXRlbS5vcGVuKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpdGVtLmNsb3NlKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBzaG93TmV4dCgpIHtcbiAgICBjb25zdCBuZXh0SW5kZXggPSB0aGlzLmFjdGl2ZUluZGV4ID09PSBudWxsIHx8IHRoaXMuYWN0aXZlSW5kZXggPj0gdGhpcy5jb2xsYXBzaWJsZXNRdWVyeUxpc3QubGVuZ3RoXG4gICAgICA/IG51bGxcbiAgICAgIDogdGhpcy5hY3RpdmVJbmRleCArIDE7XG5cbiAgICB0aGlzLnRvZ2dsZUNvbGxhcHNpYmxlcyhuZXh0SW5kZXgpO1xuICB9XG5cbiAgc2hvd1ByZXYoKSB7XG4gICAgY29uc3QgcHJldkluZGV4ID0gdGhpcy5hY3RpdmVJbmRleCA9PT0gbnVsbCB8fCB0aGlzLmFjdGl2ZUluZGV4ID09PSAwXG4gICAgICA/IG51bGxcbiAgICAgIDogdGhpcy5hY3RpdmVJbmRleCAtIDE7XG5cbiAgICB0aGlzLnRvZ2dsZUNvbGxhcHNpYmxlcyhwcmV2SW5kZXgpO1xuICB9XG59XG4iXX0=