Skip to content

Commit b84853e

Browse files
Removed project release overline for non-release envs. Resolves #1204. (#1207)
* Added tracking of project tab view. Resolves #1163. Resolves #1161. * Updated GTM readme. * Removed project release overline depending for non-release envs. Resolves #1204.
1 parent 34ea90a commit b84853e

File tree

8 files changed

+32
-17
lines changed

8 files changed

+32
-17
lines changed

spa/src/app/app.component.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ describe("AppComponent:", () => {
108108
useValue: jasmine.createSpyObj("LocalStorageService", ["get", "set"])
109109
}, {
110110
provide: ReleaseService,
111-
useValue: jasmine.createSpyObj("ReleaseService", ["buildReleaseView", "createReleaseDatasetView", "fetch2020MarchRelease", "isReleaseVisible"])
111+
useValue: jasmine.createSpyObj("ReleaseService", ["buildReleaseView", "createReleaseDatasetView", "fetch2020MarchRelease", "isReleaseFeatureEnabled"])
112112
}, {
113113
provide: SearchTermUrlService,
114114
useValue: searchTermUrlService

spa/src/app/app.component.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ export class AppComponent implements OnInit, OnDestroy {
113113
*/
114114
public showRelease() {
115115

116-
if ( !this.releaseService.isReleaseVisible() ) {
116+
if ( !this.releaseService.isReleaseFeatureEnabled() ) {
117117
return false;
118118
}
119119

spa/src/app/files/project-detail/project-detail.component.html

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
11
<pop-layout [tabs]="getProjectDetailTabs()" *ngIf="state$ | async as state">
22
<ng-container title>Explore Project</ng-container>
3-
<project-nav nav [externalResourcesExist]="state.externalResourcesExist" [projectInRelease]="state.projectInRelease"></project-nav>
3+
<project-nav nav
4+
[externalResourcesExist]="state.externalResourcesExist"
5+
[projectInRelease]="state.projectInRelease"
6+
[releaseFeatureEnabled]="isReleaseFeatureEnabled()"></project-nav>
47
<div content>
58
<status-panel class="project-title">
6-
<release-title-overline *ngIf="state.projectInRelease"></release-title-overline>
9+
<release-title-overline *ngIf="isReleaseFeatureEnabled() && state.projectInRelease"></release-title-overline>
710
<h2 class="fontsize-xl">{{state.project.projectTitle}}</h2>
811
<div class="select-project"
912
(click)="onProjectSelected(state.projectSelected, state.project.entryId, state.project.projectShortname)">

spa/src/app/files/project-detail/project-detail.component.ts

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ import { SearchTerm } from "../search/search-term.model";
3131
import { EntityName } from "../shared/entity-name.model";
3232
import EntitySpec from "../shared/entity-spec";
3333
import { ProjectDetailState } from "./project-detail.state";
34+
import { ReleaseService } from "../shared/release.service";
3435

3536
@Component({
3637
selector: "project-detail",
@@ -45,12 +46,15 @@ export class ProjectDetailComponent {
4546
private state$: Observable<ProjectDetailState>;
4647

4748
/**
48-
*
49+
* @param {ReleaseService} releaseService
50+
* @param {Store<AppState>} store
4951
* @param {ActivatedRoute} activatedRoute
5052
* @param {Router} router
51-
* @param {Store<AppState>} store
5253
*/
53-
public constructor(private activatedRoute: ActivatedRoute, private router: Router, private store: Store<AppState>) {}
54+
public constructor(private releaseService: ReleaseService,
55+
private store: Store<AppState>,
56+
private activatedRoute: ActivatedRoute,
57+
private router: Router) {}
5458

5559
/**
5660
* Returns the class for the select box.
@@ -81,6 +85,16 @@ export class ProjectDetailComponent {
8185
return [{key: EntityName.PROJECTS, displayName: "Back"}];
8286
}
8387

88+
/**
89+
* Returns true if release feature is enabled.
90+
*
91+
* @returns {boolean}
92+
*/
93+
private isReleaseFeatureEnabled(): boolean {
94+
95+
return this.releaseService.isReleaseFeatureEnabled();
96+
}
97+
8498
/**
8599
* Handle click on term in list of terms - update store with selected / unselected project and returns user back to project table.
86100
*

spa/src/app/files/project-nav/project-nav.component.ts

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ import { takeUntil } from "rxjs/operators";
1616
import { ProjectNav } from "./project-nav.model";
1717
import { EntityName } from "../shared/entity-name.model";
1818
import { NavItem } from "../../shared/nav/nav-item.model";
19-
import { ReleaseService } from "../shared/release.service";
2019

2120
@Component({
2221
selector: "project-nav",
@@ -28,6 +27,7 @@ export class ProjectNavComponent {
2827
// Inputs
2928
@Input() externalResourcesExist: boolean;
3029
@Input() projectInRelease: boolean;
30+
@Input() releaseFeatureEnabled: boolean;
3131

3232
// Locals
3333
private dataCitation: NavItem;
@@ -43,11 +43,9 @@ export class ProjectNavComponent {
4343
/**
4444
* @param {ActivatedRoute} route
4545
* @param {DeviceDetectorService} deviceService
46-
* @param {ReleaseService} releaseService
4746
*/
4847
constructor(private route: ActivatedRoute,
49-
private deviceService: DeviceDetectorService,
50-
private releaseService: ReleaseService) {
48+
private deviceService: DeviceDetectorService) {
5149
}
5250

5351
/**
@@ -77,7 +75,7 @@ export class ProjectNavComponent {
7775
];
7876

7977
// Check if project is a part of the release and add "releases" to the nav accordingly
80-
if ( this.releaseService.isReleaseVisible() && this.projectInRelease ) {
78+
if ( this.releaseFeatureEnabled && this.projectInRelease ) {
8179

8280
navItemList.push(this.projectReleases);
8381
}
@@ -178,7 +176,7 @@ export class ProjectNavComponent {
178176
routerLink: this.buildRouterLinkForSection(projectId, ProjectNav.DATA_CITATION)
179177
};
180178

181-
if ( this.releaseService.isReleaseVisible() ) {
179+
if ( this.releaseFeatureEnabled ) {
182180
this.projectReleases = {
183181
disabled: false,
184182
display: "Releases",

spa/src/app/files/shared/release.service.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ export class ReleaseService {
130130
*
131131
* @returns {boolean}
132132
*/
133-
public isReleaseVisible(): boolean {
133+
public isReleaseFeatureEnabled(): boolean {
134134

135135
return this.configService.isEnvLocal() || this.configService.isEnvUxDev();
136136
}

spa/src/app/site/hca-toolbar/hca-toolbar.component.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@
5151
<span class="fontsize-xxs">APIs</span>
5252
</a>
5353
</toolbar-nav-item>
54-
<toolbar-nav-item *ngIf="isReleaseVisible()"
54+
<toolbar-nav-item *ngIf="isReleaseFeatureEnabled()"
5555
[ngClass]="{'active': isReleasesActiveUrl(), 'drop-down-menu': true}">
5656
<button class="link" (click)="toggleDropDownMenu($event)">
5757
<span class="fontsize-xs">March 2020 Release</span>

spa/src/app/site/hca-toolbar/hca-toolbar.component.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,9 +103,9 @@ export class HCAToolbarComponent implements OnDestroy, OnInit {
103103
*
104104
* @returns {boolean}
105105
*/
106-
public isReleaseVisible(): boolean {
106+
public isReleaseFeatureEnabled(): boolean {
107107

108-
return this.releaseService.isReleaseVisible();
108+
return this.releaseService.isReleaseFeatureEnabled();
109109
}
110110

111111
/**

0 commit comments

Comments
 (0)