{"version":3,"file":"ng-devui-panel.mjs","sources":["../../devui/panel/panel-body.component.ts","../../devui/panel/panel-footer.component.ts","../../devui/panel/panel-header.component.ts","../../devui/panel/panel.component.ts","../../devui/panel/panel.component.html","../../devui/panel/panel.module.ts","../../devui/panel/ng-devui-panel.ts"],"sourcesContent":["import { Component, HostBinding } from '@angular/core';\n\n@Component({\n  selector: 'd-panel-body',\n  template: `<ng-content></ng-content>`,\n  preserveWhitespaces: false,\n})\nexport class PanelBodyComponent {\n  @HostBinding('class.d-panel-body') default = true;\n}\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'd-panel-footer',\n  template: `<ng-content></ng-content>`,\n  preserveWhitespaces: false,\n})\nexport class PanelFooterComponent { }\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'd-panel-header',\n  template: `<ng-content></ng-content>`,\n  preserveWhitespaces: false,\n})\nexport class PanelHeaderComponent { }\n","import {\n  transition,\n  trigger\n} from '@angular/animations';\nimport {\n  Component,\n  ContentChild,\n  EventEmitter,\n  Input,\n  Output\n} from '@angular/core';\nimport { DevConfigService, expandCollapseForDomDestroy, WithConfig } from 'ng-devui/utils';\nimport { Observable } from 'rxjs';\nimport { PanelBodyComponent } from './panel-body.component';\nimport { PanelFooterComponent } from './panel-footer.component';\nimport { PanelHeaderComponent } from './panel-header.component';\nimport { PanelType } from './panel.types';\n\n@Component({\n  selector: 'd-panel',\n  templateUrl: './panel.component.html',\n  styleUrls: ['./panel.component.scss'],\n  animations: [trigger('noAnimation', [transition(':enter', [])]), expandCollapseForDomDestroy],\n})\nexport class PanelComponent {\n  @Input() type: PanelType = 'default';\n  @Input() cssClass: string;\n  @Input() isCollapsed: boolean;\n  @Input() hasLeftPadding = true;\n  @Input() @WithConfig() showAnimation = true;\n  @Input() beforeToggle: (value) => boolean | Promise<boolean> | Observable<boolean>;\n  @Output() toggle: EventEmitter<boolean> = new EventEmitter<boolean>();\n  @ContentChild(PanelHeaderComponent) panelHeader;\n  @ContentChild(PanelFooterComponent) panelFooter;\n  @ContentChild(PanelBodyComponent) panelBody;\n  constructor(private devConfigService: DevConfigService) {  }\n  toggleBody() {\n    this.canToggle().then((val) => {\n      if (!val) {\n        return;\n      }\n      if (this.isCollapsed !== undefined) {\n        this.isCollapsed = !this.isCollapsed;\n        this.toggle.emit(this.isCollapsed);\n      }\n    });\n  }\n\n  canToggle() {\n    let changeResult = Promise.resolve(true);\n\n    if (this.beforeToggle) {\n      const result: any = this.beforeToggle(this.isCollapsed);\n      if (typeof result !== 'undefined') {\n        if (result.then) {\n          changeResult = result;\n        } else if (result.subscribe) {\n          changeResult = (result as Observable<boolean>).toPromise();\n        } else {\n          changeResult = Promise.resolve(result);\n        }\n      }\n    }\n\n    return changeResult;\n  }\n}\n","<div class=\"devui-panel devui-panel-{{ type }} {{ cssClass }}\" [@noAnimation]>\n  <div class=\"devui-panel-heading\" (click)=\"toggleBody()\" [style.cursor]=\"isCollapsed !== undefined ? 'pointer' : null\">\n    <ng-content select=\"d-panel-header\"></ng-content>\n  </div>\n  <div\n    class=\"devui-panel-body\"\n    [ngClass]=\"{ 'devui-panel-body-collapse': isCollapsed !== undefined, 'has-left-padding': hasLeftPadding }\"\n    @collapseForDomDestroy\n    [@.disabled]=\"!showAnimation\"\n    *ngIf=\"isCollapsed === undefined || isCollapsed\"\n  >\n    <ng-container *ngIf=\"panelFooter || panelHeader || panelBody; else elseTemplate\">\n      <ng-template [ngTemplateOutlet]=\"panelBodyTpl\"></ng-template>\n    </ng-container>\n    <ng-template #elseTemplate>\n      <div class=\"d-panel-body\">\n        <ng-content></ng-content>\n      </div>\n    </ng-template>\n  </div>\n  <div class=\"devui-panel-footer\" *ngIf=\"panelFooter\">\n    <ng-content select=\"d-panel-footer\"></ng-content>\n  </div>\n</div>\n\n<ng-template #panelBodyTpl>\n  <ng-content select=\"d-panel-body\"></ng-content>\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\n\nimport {PanelBodyComponent} from './panel-body.component';\nimport {PanelFooterComponent} from './panel-footer.component';\nimport {PanelHeaderComponent} from './panel-header.component';\nimport {PanelComponent} from './panel.component';\n\n@NgModule({\n  imports: [CommonModule],\n  exports: [\n    PanelComponent,\n    PanelHeaderComponent,\n    PanelBodyComponent,\n    PanelFooterComponent\n  ],\n  declarations: [\n    PanelComponent,\n    PanelHeaderComponent,\n    PanelBodyComponent,\n    PanelFooterComponent,\n  ],\n  providers: []\n})\nexport class PanelModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}