Skip to content

Commit c706f4d

Browse files
committed
Merged in dspacecris-7-DSC-1415 (pull request DSpace#1072)
Revert changes to breadcrumbs.component un order to be aligned with community implementation
2 parents 3a8d385 + ed45f58 commit c706f4d

File tree

6 files changed

+7
-69
lines changed

6 files changed

+7
-69
lines changed

src/app/breadcrumbs/breadcrumbs.component.html

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -10,25 +10,11 @@
1010
</nav>
1111

1212
<ng-template #breadcrumb let-text="text" let-url="url">
13-
<li class="breadcrumb-item" *ngVar="(text | translate) as label">
14-
<div class="breadcrumb-item-limiter">
15-
<a [routerLink]="url" class="text-truncate"
16-
[ngbTooltip]="label | dsBreadcrumbTooltip"
17-
placement="bottom"
18-
>{{label | dsTruncateText}}</a>
19-
</div>
20-
</li>
13+
<li class="breadcrumb-item"><div class="breadcrumb-item-limiter"><a [routerLink]="url" class="text-truncate" [ngbTooltip]="text | translate" placement="bottom" >{{text | translate}}</a></div></li>
2114
</ng-template>
2215

2316
<ng-template #activeBreadcrumb let-text="text">
24-
<li class="breadcrumb-item active" aria-current="page" *ngVar="(text | translate) as label">
25-
<div class="breadcrumb-item-limiter">
26-
<div class="text-truncate"
27-
[ngbTooltip]="label | dsBreadcrumbTooltip"
28-
placement="bottom"
29-
>{{label | dsTruncateText}}</div>
30-
</div>
31-
</li>
17+
<li class="breadcrumb-item active" aria-current="page"><div class="breadcrumb-item-limiter"><div class="text-truncate">{{text | translate}}</div></div></li>
3218
</ng-template>
3319
</ng-container>
3420

src/app/breadcrumbs/breadcrumbs.component.spec.ts

Lines changed: 5 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -10,30 +10,22 @@ import { TranslateLoaderMock } from '../shared/testing/translate-loader.mock';
1010
import { RouterTestingModule } from '@angular/router/testing';
1111
import { of as observableOf } from 'rxjs';
1212
import { DebugElement } from '@angular/core';
13-
import { BreadcrumbTooltipPipe } from './breadcrumb/breadcrumb-tooltip.pipe';
14-
import { TruncateBreadcrumbItemCharactersPipe } from './breadcrumb/truncate-breadcrumb-item-characters.pipe';
15-
import { NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap';
1613

1714
describe('BreadcrumbsComponent', () => {
1815
let component: BreadcrumbsComponent;
1916
let fixture: ComponentFixture<BreadcrumbsComponent>;
2017
let breadcrumbsServiceMock: BreadcrumbsService;
21-
let truncateTextPipe: TruncateBreadcrumbItemCharactersPipe;
2218

2319
const expectBreadcrumb = (listItem: DebugElement, text: string, url: string) => {
2420
const anchor = listItem.query(By.css('a'));
25-
const truncatedText = truncateTextPipe.transform(text);
21+
2622
if (url == null) {
2723
expect(anchor).toBeNull();
28-
// remove leading whitespace characters
29-
const textWithoutSpaces = listItem.nativeElement.innerHTML.trimStart().replace(/^\s+/, '');
30-
expect(textWithoutSpaces).toEqual(truncatedText);
24+
expect(listItem.nativeElement.innerHTML).toEqual(text);
3125
} else {
3226
expect(anchor).toBeInstanceOf(DebugElement);
3327
expect(anchor.attributes.href).toEqual(url);
34-
// remove leading whitespace characters
35-
const textWithoutSpaces = anchor.nativeElement.innerHTML.trimStart().replace(/^\s+/, '');
36-
expect(textWithoutSpaces).toEqual(truncatedText);
28+
expect(anchor.nativeElement.innerHTML).toEqual(text);
3729
}
3830
};
3931

@@ -43,7 +35,6 @@ describe('BreadcrumbsComponent', () => {
4335
// NOTE: a root breadcrumb is automatically rendered
4436
new Breadcrumb('bc 1', 'example.com'),
4537
new Breadcrumb('bc 2', 'another.com'),
46-
new Breadcrumb('breadcrumb to be truncated', 'truncated.com'),
4738
]),
4839
showBreadcrumbs$: observableOf(true),
4940
} as BreadcrumbsService;
@@ -52,11 +43,8 @@ describe('BreadcrumbsComponent', () => {
5243
declarations: [
5344
BreadcrumbsComponent,
5445
VarDirective,
55-
BreadcrumbTooltipPipe,
56-
TruncateBreadcrumbItemCharactersPipe,
5746
],
5847
imports: [
59-
NgbTooltipModule,
6048
RouterTestingModule.withRoutes([]),
6149
TranslateModule.forRoot({
6250
loader: {
@@ -67,12 +55,10 @@ describe('BreadcrumbsComponent', () => {
6755
],
6856
providers: [
6957
{ provide: BreadcrumbsService, useValue: breadcrumbsServiceMock },
70-
{ provide: TruncateBreadcrumbItemCharactersPipe, useClass: TruncateBreadcrumbItemCharactersPipe },
7158
],
7259
}).compileComponents();
7360

7461
fixture = TestBed.createComponent(BreadcrumbsComponent);
75-
truncateTextPipe = TestBed.inject(TruncateBreadcrumbItemCharactersPipe);
7662
component = fixture.componentInstance;
7763
fixture.detectChanges();
7864
}));
@@ -81,35 +67,12 @@ describe('BreadcrumbsComponent', () => {
8167
expect(component).toBeTruthy();
8268
});
8369

84-
it('should render the breadcrumbs accordingly', () => {
70+
it('should render the breadcrumbs', () => {
8571
const breadcrumbs = fixture.debugElement.queryAll(By.css('.breadcrumb-item'));
86-
expect(breadcrumbs.length).toBe(4);
72+
expect(breadcrumbs.length).toBe(3);
8773
expectBreadcrumb(breadcrumbs[0], 'home.breadcrumbs', '/');
8874
expectBreadcrumb(breadcrumbs[1], 'bc 1', '/example.com');
8975
expectBreadcrumb(breadcrumbs[2].query(By.css('.text-truncate')), 'bc 2', null);
90-
expectBreadcrumb(breadcrumbs[3].query(By.css('.text-truncate')), 'breadcrumb...', null);
91-
});
92-
93-
it('should show tooltip only for truncated text', () => {
94-
const breadcrumbs = fixture.debugElement.queryAll(By.css('.breadcrumb-item .text-truncate'));
95-
expect(breadcrumbs.length).toBe(4);
96-
97-
const truncatable = breadcrumbs[3];
98-
truncatable.triggerEventHandler('mouseenter', null);
99-
fixture.detectChanges();
100-
let tooltip = truncatable.parent.query(By.css('div.tooltip-inner'));
101-
expect(tooltip).not.toBeNull();
102-
expect(tooltip.nativeElement.innerText).toBe('breadcrumb to be truncated');
103-
truncatable.triggerEventHandler('mouseleave', null);
104-
fixture.detectChanges();
105-
106-
const notTruncatable = breadcrumbs[2];
107-
notTruncatable.triggerEventHandler('mouseenter', null);
108-
fixture.detectChanges();
109-
const tooltip2 = notTruncatable.parent.query(By.css('div.tooltip-inner'));
110-
expect(tooltip2).toBeNull();
111-
notTruncatable.triggerEventHandler('mouseleave', null);
112-
fixture.detectChanges();
11376
});
11477

11578
});

src/app/root.module.ts

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -42,10 +42,6 @@ import {
4242
import { FooterModule } from './footer/footer.module';
4343
import { SocialModule } from './social/social.module';
4444
import { ExploreModule } from './shared/explore/explore.module';
45-
import { BreadcrumbTooltipPipe } from './breadcrumbs/breadcrumb/breadcrumb-tooltip.pipe';
46-
import {
47-
TruncateBreadcrumbItemCharactersPipe
48-
} from './breadcrumbs/breadcrumb/truncate-breadcrumb-item-characters.pipe';
4945
import { OpenaireModule } from './openaire/openaire.module';
5046

5147
const IMPORTS = [
@@ -89,8 +85,6 @@ const DECLARATIONS = [
8985
ThemedPageErrorComponent,
9086
PageErrorComponent,
9187
ContextHelpToggleComponent,
92-
TruncateBreadcrumbItemCharactersPipe,
93-
BreadcrumbTooltipPipe
9488
];
9589

9690
const EXPORTS = [

src/config/app-config.interface.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,6 @@ interface AppConfig extends Config {
6868
attachmentRendering: AttachmentRenderingConfig;
6969
advancedAttachmentRendering: AdvancedAttachmentRenderingConfig;
7070
searchResult: SearchResultConfig;
71-
breadcrumbCharLimit: number;
7271
}
7372

7473
/**

src/config/default-app-config.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -737,6 +737,4 @@ export class DefaultAppConfig implements AppConfig {
737737
additionalMetadataFields: [],
738738
authorMetadata: ['dc.contributor.author', 'dc.creator', 'dc.contributor.*'],
739739
};
740-
741-
breadcrumbCharLimit = 10;
742740
}

src/environments/environment.test.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -553,6 +553,4 @@ export const environment: BuildConfig = {
553553
],
554554
authorMetadata: ['dc.contributor.author', 'dc.contributor.editor', 'dc.contributor.contributor', 'dc.creator'],
555555
},
556-
557-
breadcrumbCharLimit: 10,
558556
};

0 commit comments

Comments
 (0)