UNPKG

@junte/ui

Version:

Quality Angular UI components kit

36 lines 4.54 kB
import { __decorate, __metadata } from "tslib"; import { Component, ContentChildren, EventEmitter, HostBinding, Input, Output, QueryList } from '@angular/core'; import { UI } from '../../core/enums/ui'; import { AccordionSectionComponent } from './section/accordion-section.component'; let AccordionComponent = class AccordionComponent { constructor() { this.ui = UI; this.host = 'jnt-accordion-host'; this.active = 0; this.changed = new EventEmitter(); } }; __decorate([ HostBinding('attr.host'), __metadata("design:type", Object) ], AccordionComponent.prototype, "host", void 0); __decorate([ ContentChildren(AccordionSectionComponent), __metadata("design:type", QueryList) ], AccordionComponent.prototype, "sections", void 0); __decorate([ Input(), __metadata("design:type", Object) ], AccordionComponent.prototype, "active", void 0); __decorate([ Output(), __metadata("design:type", Object) ], AccordionComponent.prototype, "changed", void 0); AccordionComponent = __decorate([ Component({ selector: 'jnt-accordion', template: "<jnt-stack child-of=\"jnt-accordion-host\" [align]=\"ui.align.stretch\" [gutter]=\"ui.gutter.none\">\n <ng-container *ngFor=\"let section of sections; let i = index;\">\n <a child-of=\"jnt-accordion-host\" href=\"#\" data-title\n (click)=\"active == i ? active = null : active = i;changed.emit(active); $event.preventDefault()\"\n [attr.active]=\"active == i\">\n <jnt-icon child-of=\"jnt-accordion-host\" *ngIf=\"section.icon\" [icon]=\"section.icon\"></jnt-icon>\n <span child-of=\"jnt-accordion-host\" >{{section.title}}</span>\n\n <jnt-stack child-of=\"jnt-accordion-host\" data-state [orientation]=\"ui.orientation.horizontal\" [align]=\"ui.align.center\">\n <jnt-spinner child-of=\"jnt-accordion-host\" *ngIf=\"section.state === ui.state.loading\" [size]=\"ui.size.small\"></jnt-spinner>\n <jnt-icon child-of=\"jnt-accordion-host\" data-warning *ngIf=\"section.state === ui.state.warning\" [icon]=\"ui.icons.warning\"></jnt-icon>\n <jnt-icon child-of=\"jnt-accordion-host\" data-chevron [icon]=\"active == i ? ui.icons.chevronUp : ui.icons.chevronRight\"></jnt-icon>\n </jnt-stack>\n\n </a>\n <div child-of=\"jnt-accordion-host\" *ngIf=\"active == i\" data-content>\n <ng-container *ngTemplateOutlet=\"section.accordionContentTemplate\"></ng-container>\n </div>\n </ng-container>\n</jnt-stack>" }) ], AccordionComponent); export { AccordionComponent }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BqdW50ZS91aS8iLCJzb3VyY2VzIjpbImxpYi9uYXZpZ2F0aW9uL2FjY29yZGlvbi9hY2NvcmRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hILE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQU1sRixJQUFhLGtCQUFrQixHQUEvQixNQUFhLGtCQUFrQjtJQUEvQjtRQUVFLE9BQUUsR0FBRyxFQUFFLENBQUM7UUFFMkIsU0FBSSxHQUFHLG9CQUFvQixDQUFDO1FBTS9ELFdBQU0sR0FBRyxDQUFDLENBQUM7UUFHWCxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztJQUV2QyxDQUFDO0NBQUEsQ0FBQTtBQVgyQjtJQUF6QixXQUFXLENBQUMsV0FBVyxDQUFDOztnREFBc0M7QUFHL0Q7SUFEQyxlQUFlLENBQUMseUJBQXlCLENBQUM7OEJBQ2pDLFNBQVM7b0RBQTRCO0FBRy9DO0lBREMsS0FBSyxFQUFFOztrREFDRztBQUdYO0lBREMsTUFBTSxFQUFFOzttREFDNEI7QUFiMUIsa0JBQWtCO0lBSjlCLFNBQVMsQ0FBQztRQUNULFFBQVEsRUFBRSxlQUFlO1FBQ3pCLHUyQ0FBNEM7S0FDN0MsQ0FBQztHQUNXLGtCQUFrQixDQWU5QjtTQWZZLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ29udGVudENoaWxkcmVuLCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT3V0cHV0LCBRdWVyeUxpc3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVJIH0gZnJvbSAnLi4vLi4vY29yZS9lbnVtcy91aSc7XG5pbXBvcnQgeyBBY2NvcmRpb25TZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9zZWN0aW9uL2FjY29yZGlvbi1zZWN0aW9uLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2pudC1hY2NvcmRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vYWNjb3JkaW9uLmVuY2Fwc3VsYXRlZC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBBY2NvcmRpb25Db21wb25lbnQge1xuXG4gIHVpID0gVUk7XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmhvc3QnKSByZWFkb25seSBob3N0ID0gJ2pudC1hY2NvcmRpb24taG9zdCc7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihBY2NvcmRpb25TZWN0aW9uQ29tcG9uZW50KVxuICBzZWN0aW9uczogUXVlcnlMaXN0PEFjY29yZGlvblNlY3Rpb25Db21wb25lbnQ+O1xuXG4gIEBJbnB1dCgpXG4gIGFjdGl2ZSA9IDA7XG5cbiAgQE91dHB1dCgpXG4gIGNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxufVxuIl19