Skip to content

Commit

Permalink
fix(accordion): hide panel when destroyOnHide set to false
Browse files Browse the repository at this point in the history
Add .collapse class to panel. When destoyOnHide is set to `false`, the panel remains visible due to a missing bootstrap class

Fixes #1915
  • Loading branch information
bbalvanera authored and maxokorokov committed Nov 21, 2017
1 parent 8e0ddb4 commit 9e2df7f
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 2 deletions.
18 changes: 18 additions & 0 deletions src/accordion/accordion.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -251,6 +251,24 @@ describe('ngb-accordion', () => {
});
});

it('should have the appropriate CSS visibility classes', () => {
const fixture = TestBed.createComponent(TestComponent);
fixture.detectChanges();

const compiled = fixture.nativeElement;
fixture.componentInstance.activeIds = 'one,two,three';

fixture.detectChanges();

const contents = getPanelsContent(compiled);
expect(contents.length).not.toBe(0);

contents.forEach((content: HTMLElement) => {
expect(content).toHaveCssClass('collapse');
expect(content).toHaveCssClass('show');
});
});

it('should only open one at a time', () => {
const fixture = TestBed.createComponent(TestComponent);
const tc = fixture.componentInstance;
Expand Down
4 changes: 2 additions & 2 deletions src/accordion/accordion.ts
Original file line number Diff line number Diff line change
Expand Up @@ -110,8 +110,8 @@ export interface NgbPanelChangeEvent {
{{panel.title}}<ng-template [ngTemplateOutlet]="panel.titleTpl?.templateRef"></ng-template>
</a>
</div>
<div id="{{panel.id}}" role="tabpanel" [attr.aria-labelledby]="panel.id + '-header'"
class="card-body {{panel.isOpen ? 'show' : null}}" *ngIf="!destroyOnHide || panel.isOpen">
<div id="{{panel.id}}" role="tabpanel" [attr.aria-labelledby]="panel.id + '-header'"
class="card-body collapse {{panel.isOpen ? 'show' : null}}" *ngIf="!destroyOnHide || panel.isOpen">
<ng-template [ngTemplateOutlet]="panel.contentTpl.templateRef"></ng-template>
</div>
</div>
Expand Down

0 comments on commit 9e2df7f

Please sign in to comment.