@asi-ngtools/lib
Version:
This project is a little components library, simple to use, which will help you to simplify your project.
92 lines (91 loc) • 7.03 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
import { Component, Input, ContentChild, Output, EventEmitter } from '@angular/core';
import { trigger, style, animate, transition } from '@angular/animations';
import { AsiComponentTemplateCollapseHeaderDef } from '../common/asi-component-template';
var AsiCollapseComponent = /** @class */ (function () {
function AsiCollapseComponent() {
/**
* Is collapsed
*/
this.collapsed = true;
/**
* is enabled/disabled
*/
this.disabled = false;
/**
* Event emitted with the collapse status change
*/
this.onCollapse = new EventEmitter();
this.state = 'collapsed';
}
/**
* @return {?}
*/
AsiCollapseComponent.prototype.toggleCollapse = /**
* @return {?}
*/
function () {
this.collapsed = !this.collapsed;
this.state = (this.collapsed) ? 'collapsed' : 'notcollapsed';
this.onCollapse.emit(this.collapsed);
};
AsiCollapseComponent.decorators = [
{ type: Component, args: [{
selector: 'asi-collapse',
host: { 'class': 'asi-component asi-collapse' },
template: "<button type=\"button\" class=\"collapse-header\" [disabled]=\"disabled\" (click)=\"toggleCollapse()\">\r\n <span *ngIf=\"headerDef == null\">\r\n {{label | translate }}\r\n </span>\r\n <ng-template *ngIf=\"headerDef != null\" [ngTemplateOutlet]=\"headerDef.template\" [ngTemplateOutletContext]=\"{$implicit : {collapsed : collapsed, disabled : disabled}}\"></ng-template>\r\n</button>\r\n<div class=\"collapse-panel\" *ngIf=\"!collapsed\" [@reveal]>\r\n <ng-content></ng-content>\r\n</div>",
animations: [
trigger('reveal', [
transition('void => *', [
style({ height: 0 }),
animate('250ms ease-in-out', style({ height: '*' }))
]),
transition('* => void', [
animate('250ms ease-in-out', style({ height: 0 }))
])
])
]
}] }
];
/** @nocollapse */
AsiCollapseComponent.ctorParameters = function () { return []; };
AsiCollapseComponent.propDecorators = {
label: [{ type: Input }],
collapsed: [{ type: Input }],
disabled: [{ type: Input }],
onCollapse: [{ type: Output }],
headerDef: [{ type: ContentChild, args: [AsiComponentTemplateCollapseHeaderDef,] }]
};
return AsiCollapseComponent;
}());
export { AsiCollapseComponent };
if (false) {
/**
* Collapse label
* @type {?}
*/
AsiCollapseComponent.prototype.label;
/**
* Is collapsed
* @type {?}
*/
AsiCollapseComponent.prototype.collapsed;
/**
* is enabled/disabled
* @type {?}
*/
AsiCollapseComponent.prototype.disabled;
/**
* Event emitted with the collapse status change
* @type {?}
*/
AsiCollapseComponent.prototype.onCollapse;
/** @type {?} */
AsiCollapseComponent.prototype.headerDef;
/** @type {?} */
AsiCollapseComponent.prototype.state;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNpLWNvbGxhcHNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bhc2ktbmd0b29scy9saWIvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9hc2ktY29sbGFwc2UvYXNpLWNvbGxhcHNlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckYsT0FBTyxFQUFHLE9BQU8sRUFBRyxLQUFLLEVBQUcsT0FBTyxFQUFHLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzlFLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOztJQWtDdkY7Ozs7eUJBWHFCLElBQUk7Ozs7d0JBRUwsS0FBSzs7OzswQkFHRixJQUFJLFlBQVksRUFBVztxQkFJMUMsV0FBVztLQUdsQjs7OztJQUVELDZDQUFjOzs7SUFBZDtRQUNFLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDO1FBQzdELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztLQUN0Qzs7Z0JBdkNGLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsSUFBSSxFQUFFLEVBQUUsT0FBTyxFQUFFLDRCQUE0QixFQUFFO29CQUMvQyw2ZkFBNEM7b0JBQzVDLFVBQVUsRUFBRTt3QkFDVixPQUFPLENBQUMsUUFBUSxFQUFFOzRCQUNoQixVQUFVLENBQUMsV0FBVyxFQUFFO2dDQUN0QixLQUFLLENBQUMsRUFBQyxNQUFNLEVBQUUsQ0FBQyxFQUFDLENBQUM7Z0NBQ2xCLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRSxLQUFLLENBQUMsRUFBQyxNQUFNLEVBQUUsR0FBRyxFQUFDLENBQUMsQ0FBQzs2QkFDbkQsQ0FBQzs0QkFDRixVQUFVLENBQUMsV0FBVyxFQUFFO2dDQUN0QixPQUFPLENBQUMsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLEVBQUMsTUFBTSxFQUFFLENBQUMsRUFBQyxDQUFDLENBQUM7NkJBQ2pELENBQUM7eUJBQ0gsQ0FBQztxQkFDSDtpQkFDRjs7Ozs7d0JBSUUsS0FBSzs0QkFFTCxLQUFLOzJCQUVMLEtBQUs7NkJBR0wsTUFBTTs0QkFFTixZQUFZLFNBQUMscUNBQXFDOzsrQkFoQ3JEOztTQW9CYSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBDb250ZW50Q2hpbGQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7ICB0cmlnZ2VyLCAgc3R5bGUsICBhbmltYXRlLCAgdHJhbnNpdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBBc2lDb21wb25lbnRUZW1wbGF0ZUNvbGxhcHNlSGVhZGVyRGVmIH0gZnJvbSAnLi4vY29tbW9uL2FzaS1jb21wb25lbnQtdGVtcGxhdGUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhc2ktY29sbGFwc2UnLFxyXG4gIGhvc3Q6IHsgJ2NsYXNzJzogJ2FzaS1jb21wb25lbnQgYXNpLWNvbGxhcHNlJyB9LFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hc2ktY29sbGFwc2UuY29tcG9uZW50Lmh0bWwnLFxyXG4gIGFuaW1hdGlvbnM6IFtcclxuICAgIHRyaWdnZXIoJ3JldmVhbCcsIFtcclxuICAgICAgdHJhbnNpdGlvbigndm9pZCA9PiAqJywgW1xyXG4gICAgICAgIHN0eWxlKHtoZWlnaHQ6IDB9KSxcclxuICAgICAgICBhbmltYXRlKCcyNTBtcyBlYXNlLWluLW91dCcsIHN0eWxlKHtoZWlnaHQ6ICcqJ30pKVxyXG4gICAgICBdKSxcclxuICAgICAgdHJhbnNpdGlvbignKiA9PiB2b2lkJywgW1xyXG4gICAgICAgIGFuaW1hdGUoJzI1MG1zIGVhc2UtaW4tb3V0Jywgc3R5bGUoe2hlaWdodDogMH0pKVxyXG4gICAgICBdKVxyXG4gICAgXSlcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBc2lDb2xsYXBzZUNvbXBvbmVudCAge1xyXG5cclxuICAvKiogQ29sbGFwc2UgbGFiZWwgKi9cclxuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nO1xyXG4gIC8qKiBJcyBjb2xsYXBzZWQgICovXHJcbiAgQElucHV0KCkgY29sbGFwc2VkID0gdHJ1ZTtcclxuICAvKiogaXMgZW5hYmxlZC9kaXNhYmxlZCAqL1xyXG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XHJcblxyXG4gIC8qKiBFdmVudCBlbWl0dGVkIHdpdGggdGhlIGNvbGxhcHNlIHN0YXR1cyBjaGFuZ2UgKi9cclxuICBAT3V0cHV0KCkgb25Db2xsYXBzZSA9IG5ldyBFdmVudEVtaXR0ZXI8Qm9vbGVhbj4oKTtcclxuXHJcbiAgQENvbnRlbnRDaGlsZChBc2lDb21wb25lbnRUZW1wbGF0ZUNvbGxhcHNlSGVhZGVyRGVmKSBoZWFkZXJEZWY6IEFzaUNvbXBvbmVudFRlbXBsYXRlQ29sbGFwc2VIZWFkZXJEZWY7XHJcblxyXG4gIHN0YXRlID0gJ2NvbGxhcHNlZCc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gIH1cclxuXHJcbiAgdG9nZ2xlQ29sbGFwc2UoKSB7XHJcbiAgICB0aGlzLmNvbGxhcHNlZCA9ICF0aGlzLmNvbGxhcHNlZDtcclxuICAgIHRoaXMuc3RhdGUgPSAodGhpcy5jb2xsYXBzZWQpID8gJ2NvbGxhcHNlZCcgOiAnbm90Y29sbGFwc2VkJztcclxuICAgIHRoaXMub25Db2xsYXBzZS5lbWl0KHRoaXMuY29sbGFwc2VkKTtcclxuICB9XHJcbn1cclxuIl19