Skip to content

Commit 8d8b7d1

Browse files
committed
fix(severity): updated severity for different components
1 parent a0d52a7 commit 8d8b7d1

9 files changed

Lines changed: 56 additions & 35 deletions

File tree

src/app/features/preprints/components/preprint-details/status-banner/status-banner.component.html

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<p-message styleClass="w-full" [severity]="severity()">
1+
<p-message styleClass="w-full" [severity]="messageSeverity()">
22
<ng-template #container>
33
<div class="banner-container w-full flex flex-row gap-2 align-items-start font-bold text-base">
44
<osf-icon class="pt-1" [iconClass]="'fas fa-' + iconClass()" />
@@ -7,8 +7,8 @@
77
@if (!isWithdrawn()) {
88
{{ status() | translate | titlecase }}: {{ bannerContent() }}
99

10-
<div>
11-
@if (reviewerComment() && !provider().reviewsCommentsPrivate && !isPendingWithdrawal()) {
10+
@if (reviewerComment() && !provider().reviewsCommentsPrivate && !isPendingWithdrawal()) {
11+
<div>
1212
<p-button
1313
class="cursor-pointer"
1414
[link]="true"
@@ -19,11 +19,11 @@
1919
<p-dialog
2020
[header]="'preprints.details.statusBanner.moderatorFeedback' | translate"
2121
[modal]="true"
22-
draggable="false"
22+
[draggable]="false"
2323
[(visible)]="feedbackDialogVisible"
2424
>
25-
<div class="flex flex-column gap-2 align-items-start">
26-
<p-tag [severity]="severity()"> {{ status() | translate | titlecase }}</p-tag>
25+
<div class="flex flex-column gap-4 align-items-start font-normal">
26+
<p-tag [severity]="tagSeverity()"> {{ status() | translate | titlecase }}</p-tag>
2727

2828
<p>{{ reviewerComment() }}</p>
2929

@@ -36,8 +36,8 @@
3636
</div>
3737
</div>
3838
</p-dialog>
39-
}
40-
</div>
39+
</div>
40+
}
4141
} @else {
4242
{{ bannerContent() }}
4343
}

src/app/features/preprints/components/preprint-details/status-banner/status-banner.component.ts

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ import {
1818
statusMessageByWorkflow,
1919
statusSeverityByState,
2020
statusSeverityByWorkflow,
21+
tagStatusSeverityByState,
22+
tagStatusSeverityByWorkflow,
2123
} from '@osf/features/preprints/constants';
2224
import { ProviderReviewsWorkflow, ReviewsState } from '@osf/features/preprints/enums';
2325
import { PreprintProviderDetails, PreprintRequestAction } from '@osf/features/preprints/models';
@@ -57,7 +59,7 @@ export class StatusBannerComponent {
5759
return this.preprint()?.reviewsState ?? ReviewsState.Pending;
5860
});
5961

60-
severity = computed(() => {
62+
messageSeverity = computed(() => {
6163
const currentState = this.currentState();
6264
const workflow = this.provider()?.reviewsWorkflow;
6365

@@ -72,6 +74,21 @@ export class StatusBannerComponent {
7274
return statusSeverityByState[currentState];
7375
});
7476

77+
tagSeverity = computed(() => {
78+
const currentState = this.currentState();
79+
const workflow = this.provider()?.reviewsWorkflow;
80+
81+
if (this.isWithdrawn()) {
82+
return tagStatusSeverityByState[ReviewsState.Withdrawn];
83+
}
84+
85+
if (currentState === ReviewsState.Pending && workflow) {
86+
return tagStatusSeverityByWorkflow[workflow];
87+
}
88+
89+
return tagStatusSeverityByState[currentState];
90+
});
91+
7592
status = computed(() => statusLabelKeyByState[this.currentState()]!);
7693
iconClass = computed(() => statusIconByState[this.currentState()]);
7794

src/app/features/preprints/constants/status-banner.const.ts

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import { ProviderReviewsWorkflow, ReviewsState } from '../enums';
1+
import { MessageSeverityType, TagSeverityType } from '@osf/shared/models/severity.type';
22

3-
export type StatusSeverity = 'warn' | 'secondary' | 'success' | 'error';
3+
import { ProviderReviewsWorkflow, ReviewsState } from '../enums';
44

55
export const statusLabelKeyByState: Partial<Record<ReviewsState, string>> = {
66
[ReviewsState.Pending]: 'preprints.details.statusBanner.pending',
@@ -33,12 +33,12 @@ export const statusMessageByState: Partial<Record<ReviewsState, string>> = {
3333
[ReviewsState.Withdrawn]: 'preprints.details.statusBanner.messages.withdrawn',
3434
};
3535

36-
export const statusSeverityByWorkflow: Record<ProviderReviewsWorkflow, StatusSeverity> = {
36+
export const statusSeverityByWorkflow: Record<ProviderReviewsWorkflow, MessageSeverityType> = {
3737
[ProviderReviewsWorkflow.PreModeration]: 'warn',
3838
[ProviderReviewsWorkflow.PostModeration]: 'secondary',
3939
};
4040

41-
export const statusSeverityByState: Partial<Record<ReviewsState, StatusSeverity>> = {
41+
export const statusSeverityByState: Partial<Record<ReviewsState, MessageSeverityType>> = {
4242
[ReviewsState.Accepted]: 'success',
4343
[ReviewsState.Rejected]: 'error',
4444
[ReviewsState.PendingWithdrawal]: 'error',
@@ -47,6 +47,20 @@ export const statusSeverityByState: Partial<Record<ReviewsState, StatusSeverity>
4747
[ReviewsState.Pending]: 'warn',
4848
};
4949

50+
export const tagStatusSeverityByWorkflow: Record<ProviderReviewsWorkflow, TagSeverityType> = {
51+
[ProviderReviewsWorkflow.PreModeration]: 'warn',
52+
[ProviderReviewsWorkflow.PostModeration]: 'secondary',
53+
};
54+
55+
export const tagStatusSeverityByState: Partial<Record<ReviewsState, TagSeverityType>> = {
56+
[ReviewsState.Accepted]: 'success',
57+
[ReviewsState.Rejected]: 'danger',
58+
[ReviewsState.PendingWithdrawal]: 'danger',
59+
[ReviewsState.WithdrawalRejected]: 'danger',
60+
[ReviewsState.Withdrawn]: 'warn',
61+
[ReviewsState.Pending]: 'warn',
62+
};
63+
5064
type ActivityMap = Partial<Record<ReviewsState, string>>;
5165

5266
export const recentActivityMessageByState: ActivityMap & {

src/app/shared/components/copy-button/copy-button.component.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
11
import { TranslatePipe } from '@ngx-translate/core';
22

3-
import { Button } from 'primeng/button';
3+
import { Button, ButtonSeverity } from 'primeng/button';
44
import { Tooltip } from 'primeng/tooltip';
55

66
import { Clipboard } from '@angular/cdk/clipboard';
77
import { ChangeDetectionStrategy, Component, inject, input } from '@angular/core';
88

99
import { ToastService } from '@osf/shared/services/toast.service';
10-
import { SeverityType } from '@shared/models/severity.type';
1110

1211
@Component({
1312
selector: 'osf-copy-button',
@@ -20,7 +19,7 @@ export class CopyButtonComponent {
2019
copyItem = input<string>('');
2120
tooltip = input<string>('common.buttons.copy');
2221
label = input<string>('');
23-
severity = input<SeverityType>('contrast');
22+
severity = input<ButtonSeverity>('contrast');
2423
ariaLabel = input<string>('common.accessibility.copyButtonInfo');
2524

2625
private readonly clipboard = inject(Clipboard);

src/app/shared/components/status-badge/status-badge.component.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import { ChangeDetectionStrategy, Component, input } from '@angular/core';
66

77
import { RegistryStatusMap } from '@osf/shared/constants/registration-statuses';
88
import { RegistryStatus } from '@osf/shared/enums/registry-status.enum';
9-
import { SeverityType } from '@shared/models/severity.type';
9+
import { TagSeverityType } from '@osf/shared/models/severity.type';
1010

1111
@Component({
1212
selector: 'osf-status-badge',
@@ -22,7 +22,7 @@ export class StatusBadgeComponent {
2222
return RegistryStatusMap[this.status()]?.label ?? 'Unknown';
2323
}
2424

25-
get severity(): SeverityType | null {
25+
get severity(): TagSeverityType | null {
2626
return RegistryStatusMap[this.status()]?.severity ?? null;
2727
}
2828
}

src/app/shared/helpers/collection-submission-status.util.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import { CollectionSubmissionReviewState } from '@osf/shared/enums/collection-submission-review-state.enum';
22

33
import { CustomOption } from '../models/select-option.model';
4-
import { SeverityType } from '../models/severity.type';
4+
import { TagSeverityType } from '../models/severity.type';
55

66
export const COLLECTION_SUBMISSION_STATUS_SEVERITY: Record<
77
CollectionSubmissionReviewState,
8-
CustomOption<SeverityType>
8+
CustomOption<TagSeverityType>
99
> = {
1010
[CollectionSubmissionReviewState.Accepted]: { label: 'moderation.submissionReviewStatus.approved', value: 'success' },
1111
[CollectionSubmissionReviewState.Rejected]: { label: 'moderation.submissionReviewStatus.rejected', value: 'danger' },
Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,2 @@
1-
export type SeverityType =
2-
| 'success'
3-
| 'info'
4-
| 'warn'
5-
| 'danger'
6-
| 'help'
7-
| 'primary'
8-
| 'secondary'
9-
| 'contrast'
10-
| null
11-
| undefined;
1+
export type TagSeverityType = 'success' | 'secondary' | 'info' | 'warn' | 'danger' | 'contrast' | undefined | null;
2+
export type MessageSeverityType = 'success' | 'info' | 'warn' | 'error' | 'secondary' | 'contrast' | undefined | null;
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import { SeverityType } from './severity.type';
1+
import { TagSeverityType } from './severity.type';
22

33
export interface StatusInfo {
44
label: string;
5-
severity: SeverityType | null;
5+
severity: TagSeverityType | null;
66
}

src/app/shared/pipes/collection-status-severity.pipe.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@ import { Pipe, PipeTransform } from '@angular/core';
33
import { CollectionSubmissionReviewState } from '../enums/collection-submission-review-state.enum';
44
import { COLLECTION_SUBMISSION_STATUS_SEVERITY } from '../helpers/collection-submission-status.util';
55
import { CustomOption } from '../models/select-option.model';
6-
import { SeverityType } from '../models/severity.type';
6+
import { TagSeverityType } from '../models/severity.type';
77

88
@Pipe({
99
name: 'collectionStatusSeverity',
1010
})
1111
export class CollectionStatusSeverityPipe implements PipeTransform {
12-
transform(status: CollectionSubmissionReviewState): CustomOption<SeverityType> {
12+
transform(status: CollectionSubmissionReviewState): CustomOption<TagSeverityType> {
1313
return COLLECTION_SUBMISSION_STATUS_SEVERITY[status];
1414
}
1515
}

0 commit comments

Comments
 (0)