UNPKG

@universal-material/angular

Version:

This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 16.1.0.

45 lines 6.58 kB
import { Component, HostBinding, Input } from '@angular/core'; import { Subject } from 'rxjs'; import * as i0 from "@angular/core"; import * as i1 from "@angular/common"; import * as i2 from "../collapse/collapse.component"; import * as i3 from "../ripple/ripple.directive"; export class ExpansionPanelComponent { get expanded() { return this._expanded; } set expanded(value) { this._expanded = value; this._toggleChange.next(this); } constructor(elementRef) { this._expanded = false; this.disabled = false; this.hideToggle = false; this._toggleChange = new Subject(); elementRef.nativeElement.classList.add('u-expansion-panel'); } toggle() { if (this.disabled) { return; } this.expanded = !this.expanded; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ExpansionPanelComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ExpansionPanelComponent, selector: "u-expansion-panel", inputs: { disabled: "disabled", hideToggle: "hideToggle" }, host: { properties: { "class.disabled": "this.disabled", "class.expanded": "this.expanded" } }, ngImport: i0, template: "<div class=\"u-expansion-panel-header\" uRipple [class.disabled]=\"disabled\" (click)=\"toggle()\">\n <ng-content select=\"[uExpansionPanelHeader]\"></ng-content>\n <div class=\"u-expansion-toggle-icon\" *ngIf=\"!hideToggle\" uExpansionPanelHeader>\n <i class=\"u-chevron-down\"></i>\n </div>\n</div>\n<u-collapse class=\"u-expansion-panel-content\" [show]=\"expanded\">\n <ng-content></ng-content>\n</u-collapse>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.CollapseComponent, selector: "u-collapse", inputs: ["show"] }, { kind: "directive", type: i3.RippleDirective, selector: "[uRipple]", inputs: ["rippleConfig", "rippleDisabled"] }] }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ExpansionPanelComponent, decorators: [{ type: Component, args: [{ selector: 'u-expansion-panel', template: "<div class=\"u-expansion-panel-header\" uRipple [class.disabled]=\"disabled\" (click)=\"toggle()\">\n <ng-content select=\"[uExpansionPanelHeader]\"></ng-content>\n <div class=\"u-expansion-toggle-icon\" *ngIf=\"!hideToggle\" uExpansionPanelHeader>\n <i class=\"u-chevron-down\"></i>\n </div>\n</div>\n<u-collapse class=\"u-expansion-panel-content\" [show]=\"expanded\">\n <ng-content></ng-content>\n</u-collapse>\n", styles: [":host{display:block}\n"] }] }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { disabled: [{ type: HostBinding, args: ['class.disabled'] }, { type: Input }], hideToggle: [{ type: Input }], expanded: [{ type: HostBinding, args: ['class.expanded'] }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5zaW9uLXBhbmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9leHBhbnNpb24tcGFuZWwvZXhwYW5zaW9uLXBhbmVsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9leHBhbnNpb24tcGFuZWwvZXhwYW5zaW9uLXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7OztBQU8vQixNQUFNLE9BQU8sdUJBQXVCO0lBT2xDLElBQ0ksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBSSxRQUFRLENBQUMsS0FBYztRQUN6QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBSUQsWUFBWSxVQUFzQjtRQWpCMUIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUVjLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDaEQsZUFBVSxHQUFHLEtBQUssQ0FBQztRQVk1QixrQkFBYSxHQUFHLElBQUksT0FBTyxFQUEyQixDQUFDO1FBR3JELFVBQVUsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ2pDLENBQUM7K0dBN0JVLHVCQUF1QjttR0FBdkIsdUJBQXVCLHFOQ1RwQyx3YUFTQTs7NEZEQWEsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLG1CQUFtQjtpR0FRVyxRQUFRO3NCQUEvQyxXQUFXO3VCQUFDLGdCQUFnQjs7c0JBQUcsS0FBSztnQkFDNUIsVUFBVTtzQkFBbEIsS0FBSztnQkFHRixRQUFRO3NCQURYLFdBQVc7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0QmluZGluZywgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd1LWV4cGFuc2lvbi1wYW5lbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9leHBhbnNpb24tcGFuZWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9leHBhbnNpb24tcGFuZWwuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBFeHBhbnNpb25QYW5lbENvbXBvbmVudCB7XG5cbiAgcHJpdmF0ZSBfZXhwYW5kZWQgPSBmYWxzZTtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmRpc2FibGVkJykgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgaGlkZVRvZ2dsZSA9IGZhbHNlO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuZXhwYW5kZWQnKVxuICBnZXQgZXhwYW5kZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2V4cGFuZGVkO1xuICB9XG5cbiAgc2V0IGV4cGFuZGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZXhwYW5kZWQgPSB2YWx1ZTtcbiAgICB0aGlzLl90b2dnbGVDaGFuZ2UubmV4dCh0aGlzKTtcbiAgfVxuXG4gIF90b2dnbGVDaGFuZ2UgPSBuZXcgU3ViamVjdDxFeHBhbnNpb25QYW5lbENvbXBvbmVudD4oKTtcblxuICBjb25zdHJ1Y3RvcihlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XG4gICAgZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoJ3UtZXhwYW5zaW9uLXBhbmVsJyk7XG4gIH1cblxuICB0b2dnbGUoKSB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmV4cGFuZGVkID0gIXRoaXMuZXhwYW5kZWQ7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ1LWV4cGFuc2lvbi1wYW5lbC1oZWFkZXJcIiB1UmlwcGxlIFtjbGFzcy5kaXNhYmxlZF09XCJkaXNhYmxlZFwiIChjbGljayk9XCJ0b2dnbGUoKVwiPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJbdUV4cGFuc2lvblBhbmVsSGVhZGVyXVwiPjwvbmctY29udGVudD5cbiAgPGRpdiBjbGFzcz1cInUtZXhwYW5zaW9uLXRvZ2dsZS1pY29uXCIgKm5nSWY9XCIhaGlkZVRvZ2dsZVwiIHVFeHBhbnNpb25QYW5lbEhlYWRlcj5cbiAgICA8aSBjbGFzcz1cInUtY2hldnJvbi1kb3duXCI+PC9pPlxuICA8L2Rpdj5cbjwvZGl2PlxuPHUtY29sbGFwc2UgY2xhc3M9XCJ1LWV4cGFuc2lvbi1wYW5lbC1jb250ZW50XCIgW3Nob3ddPVwiZXhwYW5kZWRcIj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC91LWNvbGxhcHNlPlxuIl19