ng-zorro-antd-mobile
Version:
An enterprise-class mobile UI components based on Ant Design and Angular
156 lines • 12.4 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Component, Input, ChangeDetectorRef, Output, EventEmitter, ViewEncapsulation, HostBinding } from '@angular/core';
import { animate, state, style, transition, trigger } from '@angular/animations';
import { AccordionService } from '../accordion.service';
import { isTemplateRef } from '../../core/util/check';
export class AccordionGroupComponent {
/**
* @param {?} _accordionService
* @param {?} _cdr
*/
constructor(_accordionService, _cdr) {
this._accordionService = _accordionService;
this._cdr = _cdr;
this.isShowChild = true;
this.isOpened = false;
this.disabled = false;
this.onOpen = new EventEmitter();
this.onClose = new EventEmitter();
this.onChange = new EventEmitter();
this.isTemplateRef = isTemplateRef;
this.amItem = true;
this.isActive = this.isOpened;
this.addon = true;
}
/**
* @return {?}
*/
checkAndToggle() {
this.toggle();
}
/**
* @return {?}
*/
get slide() {
return this.isOpened ? 'down' : 'up';
}
/**
* @return {?}
*/
toggle() {
if (this.disabled) {
return;
}
this.isShowChild = true;
/** @type {?} */
const isOpenedBeforeWeChange = this.isOpened;
if (this._accordionService.accordion) {
this._accordionService.component.closeAll();
}
this.isOpened = !isOpenedBeforeWeChange;
if (this.isOpened) {
this.onOpen.emit();
}
else {
this.onClose.emit();
}
this.onChange.emit(this.isOpened);
}
/**
* @return {?}
*/
openOnInitialization() {
setTimeout((/**
* @return {?}
*/
() => {
this.isOpened = true;
this._cdr.detectChanges();
}), 0);
}
/**
* @param {?} event
* @return {?}
*/
slideAnimationDoen(event) {
if (event.fromState === 'down' && event.toState === 'up') {
this.isShowChild = false;
}
}
}
AccordionGroupComponent.decorators = [
{ type: Component, args: [{
selector: 'AccordionPanel',
template: "<div\n role=\"tab\"\n class=\"am-accordion-header\"\n data-scale=\"true\"\n [attr.aria-expanded]=\"isOpened\"\n (click)=\"checkAndToggle()\"\n>\n <i class=\"arrow\"></i>\n <div *ngIf=\"!isTemplateRef(header)\" [innerHTML]=\"header | safeHTML\"></div>\n <ng-template *ngIf=\"isTemplateRef(header)\" [ngTemplateOutlet]=\"header\"></ng-template>\n</div>\n<div\n role=\"tabpanel\"\n class=\"am-accordion-content\"\n [ngClass]=\"{ 'am-accordion-content-active': isOpened }\"\n [@slide]=\"slide\"\n (@slide.done)=\"slideAnimationDoen($event)\"\n>\n <div *ngIf=\"isShowChild\" class=\"am-accordion-content-box\">\n <ng-content></ng-content>\n </div>\n</div>\n",
encapsulation: ViewEncapsulation.None,
animations: [
trigger('slide', [
state('up', style({ height: 0 })),
state('down', style({ height: '*' })),
transition('down => up', [animate(200, style({ height: 0 }))]),
transition('up => down', [
animate(200, style({
height: '*'
}))
])
])
]
}] }
];
/** @nocollapse */
AccordionGroupComponent.ctorParameters = () => [
{ type: AccordionService },
{ type: ChangeDetectorRef }
];
AccordionGroupComponent.propDecorators = {
key: [{ type: Input }],
header: [{ type: Input }],
isOpened: [{ type: Input }],
disabled: [{ type: Input }],
onOpen: [{ type: Output }],
onClose: [{ type: Output }],
onChange: [{ type: Output }],
amItem: [{ type: HostBinding, args: ['class.am-accordion-item',] }],
isActive: [{ type: HostBinding, args: ['class.am-accordion-item-active',] }],
addon: [{ type: HostBinding, args: ['class.addon',] }]
};
if (false) {
/** @type {?} */
AccordionGroupComponent.prototype.isShowChild;
/** @type {?} */
AccordionGroupComponent.prototype.key;
/** @type {?} */
AccordionGroupComponent.prototype.header;
/** @type {?} */
AccordionGroupComponent.prototype.isOpened;
/** @type {?} */
AccordionGroupComponent.prototype.disabled;
/** @type {?} */
AccordionGroupComponent.prototype.onOpen;
/** @type {?} */
AccordionGroupComponent.prototype.onClose;
/** @type {?} */
AccordionGroupComponent.prototype.onChange;
/** @type {?} */
AccordionGroupComponent.prototype.isTemplateRef;
/** @type {?} */
AccordionGroupComponent.prototype.amItem;
/** @type {?} */
AccordionGroupComponent.prototype.isActive;
/** @type {?} */
AccordionGroupComponent.prototype.addon;
/**
* @type {?}
* @private
*/
AccordionGroupComponent.prototype._accordionService;
/**
* @type {?}
* @private
*/
AccordionGroupComponent.prototype._cdr;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25nLXpvcnJvLWFudGQtbW9iaWxlLyIsInNvdXJjZXMiOlsiYWNjb3JkaW9uL2FjY29yZGlvbi1ncm91cC9hY2NvcmRpb24tZ3JvdXAuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFDTCxpQkFBaUIsRUFDakIsTUFBTSxFQUNOLFlBQVksRUFDWixpQkFBaUIsRUFDakIsV0FBVyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBc0J0RCxNQUFNLE9BQU8sdUJBQXVCOzs7OztJQXVCbEMsWUFBb0IsaUJBQW1DLEVBQVUsSUFBdUI7UUFBcEUsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFrQjtRQUFVLFNBQUksR0FBSixJQUFJLENBQW1CO1FBdEJ4RixnQkFBVyxHQUFZLElBQUksQ0FBQztRQU81QixhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUIsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFNUIsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFN0IsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDOUIsa0JBQWEsR0FBRyxhQUFhLENBQUM7UUFFaUIsV0FBTSxHQUFHLElBQUksQ0FBQztRQUNQLGFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQzVDLFVBQUssR0FBRyxJQUFJLENBQUM7SUFFMkMsQ0FBQzs7OztJ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SUFFcEMsb0RBQTJDOzs7OztJQUFFLHVDQUErQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIEhvc3RCaW5kaW5nXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgYW5pbWF0ZSwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBBY2NvcmRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vYWNjb3JkaW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgaXNUZW1wbGF0ZVJlZiB9IGZyb20gJy4uLy4uL2NvcmUvdXRpbC9jaGVjayc7XG5pbXBvcnQgeyBUZW1wbGF0ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyL3NyYy9yZW5kZXIzL3IzX2FzdCc7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdBY2NvcmRpb25QYW5lbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9hY2NvcmRpb24tZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcignc2xpZGUnLCBbXG4gICAgICBzdGF0ZSgndXAnLCBzdHlsZSh7IGhlaWdodDogMCB9KSksXG4gICAgICBzdGF0ZSgnZG93bicsIHN0eWxlKHsgaGVpZ2h0OiAnKicgfSkpLFxuICAgICAgdHJhbnNpdGlvbignZG93biA9PiB1cCcsIFthbmltYXRlKDIwMCwgc3R5bGUoeyBoZWlnaHQ6IDAgfSkpXSksXG4gICAgICB0cmFuc2l0aW9uKCd1cCA9PiBkb3duJywgW1xuICAgICAgICBhbmltYXRlKFxuICAgICAgICAgIDIwMCxcbiAgICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgICBoZWlnaHQ6ICcqJ1xuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgIF0pXG4gICAgXSlcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBBY2NvcmRpb25Hcm91cENvbXBvbmVudCB7XG4gIGlzU2hvd0NoaWxkOiBib29sZWFuID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBrZXk6IHN0cmluZztcbiAgQElucHV0KClcbiAgaGVhZGVyOiBzdHJpbmcgfCBUZW1wbGF0ZTtcbiAgQElucHV0KClcbiAgaXNPcGVuZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KClcbiAgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQE91dHB1dCgpXG4gIG9uT3BlbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpXG4gIG9uQ2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKVxuICBvbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgaXNUZW1wbGF0ZVJlZiA9IGlzVGVtcGxhdGVSZWY7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hbS1hY2NvcmRpb24taXRlbScpIHB1YmxpYyBhbUl0ZW0gPSB0cnVlO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmFtLWFjY29yZGlvbi1pdGVtLWFjdGl2ZScpIHB1YmxpYyBpc0FjdGl2ZSA9IHRoaXMuaXNPcGVuZWQ7XG4gIEBIb3N0QmluZGluZygnY2xhc3MuYWRkb24nKSBwdWJsaWMgYWRkb24gPSB0cnVlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2FjY29yZGlvblNlcnZpY2U6IEFjY29yZGlvblNlcnZpY2UsIHByaXZhdGUgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgY2hlY2tBbmRUb2dnbGUoKSB7XG4gICAgdGhpcy50b2dnbGUoKTtcbiAgfVxuXG4gIGdldCBzbGlkZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmlzT3BlbmVkID8gJ2Rvd24nIDogJ3VwJztcbiAgfVxuXG4gIHRvZ2dsZSgpIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmlzU2hvd0NoaWxkID0gdHJ1ZTtcbiAgICBjb25zdCBpc09wZW5lZEJlZm9yZVdlQ2hhbmdlID0gdGhpcy5pc09wZW5lZDtcbiAgICBpZiAodGhpcy5fYWNjb3JkaW9uU2VydmljZS5hY2NvcmRpb24pIHtcbiAgICAgIHRoaXMuX2FjY29yZGlvblNlcnZpY2UuY29tcG9uZW50LmNsb3NlQWxsKCk7XG4gICAgfVxuICAgIHRoaXMuaXNPcGVuZWQgPSAhaXNPcGVuZWRCZWZvcmVXZUNoYW5nZTtcbiAgICBpZiAodGhpcy5pc09wZW5lZCkge1xuICAgICAgdGhpcy5vbk9wZW4uZW1pdCgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm9uQ2xvc2UuZW1pdCgpO1xuICAgIH1cbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQodGhpcy5pc09wZW5lZCk7XG4gIH1cblxuICBvcGVuT25Jbml0aWFsaXphdGlvbigpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuaXNPcGVuZWQgPSB0cnVlO1xuICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9LCAwKTtcbiAgfVxuXG4gIHNsaWRlQW5pbWF0aW9uRG9lbihldmVudCkge1xuICAgIGlmIChldmVudC5mcm9tU3RhdGUgPT09ICdkb3duJyAmJiBldmVudC50b1N0YXRlID09PSAndXAnKSB7XG4gICAgICB0aGlzLmlzU2hvd0NoaWxkID0gZmFsc2U7XG4gICAgfVxuICB9XG59XG4iXX0=