Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: deprecation warning for PP3_strong + PM1_strong (#324) #341

Merged
merged 2 commits into from
Dec 22, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion frontend/src/components/CaseInformationCard.vue
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ watch(
disease genes ranked by their CADA score. Also, you will see the rank in the details
section of each gene.
</p>
<p class="text-body-2 pb-3" v-if="caseStore.storageMode === StorageMode.Local">
<p v-if="caseStore.storageMode === StorageMode.Local" class="text-body-2 pb-3">
As you are not logged in, we will store the case information in the local browser
storage.
</p>
Expand Down
19 changes: 18 additions & 1 deletion frontend/src/components/SeqvarDetails/ClinsigCard.vue
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ import {
ACMG_EVIDENCE_LEVELS_PATHOGENIC,
ALL_ACMG_CRITERIA,
AcmgCriteria,
AcmgEvidenceLevel,
Presence
} from '@/lib/acmgSeqVar'
import { type Seqvar } from '@/lib/genomicVars'
Expand Down Expand Up @@ -100,7 +101,9 @@ enum Conflict {
/** PVS1 vs. PM4. */
Pvs1Pm4 = 'pvs1_pm4',
/** PVS1 vs. PP3. */
Pvs1Pp3 = 'pvs1_pp3'
Pvs1Pp3 = 'pvs1_pp3',
/** PP3_strong vs. PM1_strong. */
Pp3StrongPm1Strong = 'pp3_strong_pm1_strong'
}

/** Currently detected conflicts. */
Expand All @@ -124,6 +127,17 @@ const currentConflicts = computed<Conflict[]>(() => {
) {
result.push(Conflict.Pvs1Pp3)
}
// Check for combination of PP3_strong and PM1_strong which is discouraged by Pejaver et al. (2022).
if (
acmgRatingStore.acmgRating.getCriteriaState(AcmgCriteria.PP3).presence === Presence.Present &&
acmgRatingStore.acmgRating.getCriteriaState(AcmgCriteria.PP3).evidenceLevel ===
AcmgEvidenceLevel.PathogenicStrong &&
acmgRatingStore.acmgRating.getCriteriaState(AcmgCriteria.PM1).presence === Presence.Present &&
acmgRatingStore.acmgRating.getCriteriaState(AcmgCriteria.PM1).evidenceLevel ===
AcmgEvidenceLevel.PathogenicStrong
) {
result.push(Conflict.Pp3StrongPm1Strong)
}
return result
})

Expand Down Expand Up @@ -287,6 +301,9 @@ onMounted(async () => {
<li v-if="currentConflicts.includes(Conflict.Pvs1Pp3)">
PVS1 and PP3 cannot be applied at the same time.
</li>
<li v-if="currentConflicts.includes(Conflict.Pp3StrongPm1Strong)">
PP3_strong and PM1_strong should not be applied at the same time.
</li>
</ul>
</v-alert>
<!-- Actual criteria-->
Expand Down
2 changes: 2 additions & 0 deletions frontend/src/lib/acmgSeqVar.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ export enum AcmgEvidenceLevel {
PathogenicSupporting = 'Pathogenic Supporting',
BenignStandalone = 'Benign Standalone',
BenignStrong = 'Benign Strong',
BenignModerate = 'Benign Moderate',
BenignSupporting = 'Benign Supporting',
NotSet = 'Not Set'
}
Expand All @@ -21,6 +22,7 @@ export const ACMG_EVIDENCE_LEVELS_PATHOGENIC = [
/** Array of benign evidence levels. */
export const ACMG_EVIDENCE_LEVELS_BENIGN = [
AcmgEvidenceLevel.BenignStandalone,
AcmgEvidenceLevel.BenignModerate,
AcmgEvidenceLevel.BenignStrong,
AcmgEvidenceLevel.BenignSupporting
]
Expand Down
Loading