Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/restore-forms-gql' into mp_commo…
Browse files Browse the repository at this point in the history
…n_name
  • Loading branch information
susannasiebert committed Oct 23, 2023
2 parents 73451d9 + 91ec6bd commit 78ff7b2
Show file tree
Hide file tree
Showing 14 changed files with 3,310 additions and 1,258 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
query AssertionRevisableFields($assertionId: Int!) {
assertion(id: $assertionId) {
...RevisableAssertionFields
}
}

fragment RevisableAssertionFields on Assertion {
id
summary
description
molecularProfile {
id
name
link
}
variantOrigin
significance
disease {
id
doid
name
displayName
link
}
therapies {
id
ncitId
name
link
}
therapyInteractionType
assertionDirection
assertionType
phenotypes {
id
hpoId
name
}
ampLevel
acmgCodes {
id
name
code
description
tooltip
}
clingenCodes {
id
code
description
name
tooltip
exclusive
}
nccnGuideline {
id
name
}
nccnGuidelineVersion
regulatoryApproval
fdaCompanionTest
evidenceItems {
id
name
link
status
}
}

mutation SuggestAssertionRevision($input: SuggestAssertionRevisionInput!) {
suggestAssertionRevision(input: $input) {
clientMutationId
assertion {
id
}
results {
newlyCreated
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
mutation SubmitAssertion($input: SubmitAssertionInput!) {
submitAssertion(input: $input) {
clientMutationId
assertion {
id
}
}
}
35 changes: 17 additions & 18 deletions client/src/app/forms/config/evidence-revise/evidence-revise.form.ts
Original file line number Diff line number Diff line change
@@ -1,30 +1,29 @@
import {
AfterViewInit,
ChangeDetectionStrategy,
ChangeDetectorRef,
Component,
Input,
OnDestroy,
OnInit
AfterViewInit,
ChangeDetectionStrategy,
ChangeDetectorRef,
Component,
Input,
OnDestroy,
OnInit,
} from '@angular/core'
import { UntypedFormGroup } from '@angular/forms'
import { NetworkErrorsService } from '@app/core/services/network-errors.service'
import {
MutationState,
MutatorWithState
MutationState,
MutatorWithState,
} from '@app/core/utilities/mutation-state-wrapper'
import { EvidenceReviseModel } from '@app/forms/models/evidence-revise.model'
import { EvidenceState } from '@app/forms/states/evidence.state'
import {
evidenceFormModelToReviseInput,
evidenceToModelFields
evidenceFormModelToReviseInput,
evidenceToModelFields,
} from '@app/forms/utilities/evidence-to-model-fields'
import {
EvidenceItemRevisableFields2GQL,
SuggestEvidenceItemRevision2GQL,
SuggestEvidenceItemRevisionGQL,
SuggestEvidenceItemRevisionMutation,
SuggestEvidenceItemRevisionMutationVariables
EvidenceItemRevisableFieldsGQL,
SuggestEvidenceItemRevisionGQL,
SuggestEvidenceItemRevisionMutation,
SuggestEvidenceItemRevisionMutationVariables,
} from '@app/generated/civic.apollo'
import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy'
import { FormlyFieldConfig, FormlyFormOptions } from '@ngx-formly/core'
Expand Down Expand Up @@ -55,8 +54,8 @@ export class CvcEvidenceReviseForm implements OnInit, AfterViewInit, OnDestroy {
mutationState?: MutationState

constructor(
private revisableFieldsGQL: EvidenceItemRevisableFields2GQL,
private submitRevisionsGQL: SuggestEvidenceItemRevision2GQL,
private revisableFieldsGQL: EvidenceItemRevisableFieldsGQL,
private submitRevisionsGQL: SuggestEvidenceItemRevisionGQL,
private networkErrorService: NetworkErrorsService,
private cdr: ChangeDetectorRef
) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@

query EvidenceItemRevisableFields2($evidenceId: Int!) {
query EvidenceItemRevisableFields($evidenceId: Int!) {
evidenceItem(id: $evidenceId) {
...RevisableEvidenceFields2
...RevisableEvidenceFields
}
}

fragment RevisableEvidenceFields2 on EvidenceItem {
fragment RevisableEvidenceFields on EvidenceItem {
id
molecularProfile {
...MolecularProfileSelectTypeaheadFields
Expand All @@ -32,7 +31,7 @@ fragment RevisableEvidenceFields2 on EvidenceItem {
}
}

mutation SuggestEvidenceItemRevision2(
mutation SuggestEvidenceItemRevision(
$input: SuggestEvidenceItemRevisionInput!
) {
suggestEvidenceItemRevision(input: $input) {
Expand Down
47 changes: 29 additions & 18 deletions client/src/app/forms/config/evidence-submit/evidence-submit.form.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,12 @@ import {
} from '@app/core/utilities/mutation-state-wrapper'
import { EvidenceSubmitModel } from '@app/forms/models/evidence-submit.model'
import { EvidenceState } from '@app/forms/states/evidence.state'
import { evidenceToModelFields, evidenceFormModelToInput, } from '@app/forms/utilities/evidence-to-model-fields'
import {
EvidenceItemRevisableFields2GQL,
evidenceToModelFields,
evidenceFormModelToInput,
} from '@app/forms/utilities/evidence-to-model-fields'
import {
EvidenceItemRevisableFieldsGQL,
ExistingEvidenceCountGQL,
ExistingEvidenceCountQuery,
ExistingEvidenceCountQueryVariables,
Expand Down Expand Up @@ -61,11 +64,14 @@ export class CvcEvidenceSubmitForm implements OnDestroy, AfterViewInit, OnInit {
existingEvidenceId?: number
routeSub: Subscription

countQueryRef?: QueryRef<ExistingEvidenceCountQuery, ExistingEvidenceCountQueryVariables>
countQueryRef?: QueryRef<
ExistingEvidenceCountQuery,
ExistingEvidenceCountQueryVariables
>
existingEvidenceCount$?: Observable<number>

constructor(
private revisableFieldsGQL: EvidenceItemRevisableFields2GQL,
private revisableFieldsGQL: EvidenceItemRevisableFieldsGQL,
private submitEvidenceGQL: SubmitEvidenceItemGQL,
private existingEvidenceGQL: ExistingEvidenceCountGQL,
private cdr: ChangeDetectorRef,
Expand All @@ -82,11 +88,11 @@ export class CvcEvidenceSubmitForm implements OnDestroy, AfterViewInit, OnInit {
this.existingEvidenceId = +params.existingEvidenceId

let direction = this.getFieldConfig('direction-select')
if(direction) {
if (direction) {
direction.props!.formMode = 'clone'
}
let significance = this.getFieldConfig('significance-select')
if(significance) {
if (significance) {
significance.props!.formMode = 'clone'
}
} else {
Expand All @@ -96,23 +102,25 @@ export class CvcEvidenceSubmitForm implements OnDestroy, AfterViewInit, OnInit {
}

getFieldConfig(fieldKey: string) {
return this.fields?.[0]
.fieldGroup?.find(f => f.key === 'fields')
?.fieldGroup?.find(f => f.type === fieldKey)
return this.fields?.[0].fieldGroup
?.find((f) => f.key === 'fields')
?.fieldGroup?.find((f) => f.type === fieldKey)
}


ngOnInit(): void {
this.countQueryRef = this.existingEvidenceGQL.watch({molecularProfileId: 0, sourceId: 0})
this.countQueryRef = this.existingEvidenceGQL.watch({
molecularProfileId: 0,
sourceId: 0,
})
this.existingEvidenceCount$ = this.countQueryRef?.valueChanges.pipe(
map(c => c.data?.evidenceItems?.totalCount),
filter(isNonNulled),
untilDestroyed(this)
map((c) => c.data?.evidenceItems?.totalCount),
filter(isNonNulled),
untilDestroyed(this)
)
}

ngAfterViewInit(): void {
if(this.existingEvidenceId) {
if (this.existingEvidenceId) {
this.revisableFieldsGQL
.fetch({ evidenceId: this.existingEvidenceId })
.pipe(untilDestroyed(this))
Expand Down Expand Up @@ -157,16 +165,19 @@ export class CvcEvidenceSubmitForm implements OnDestroy, AfterViewInit, OnInit {

onModelChange(newModel: EvidenceSubmitModel) {
if (newModel.fields.sourceId && newModel.fields.molecularProfileId) {
if (newModel.fields.sourceId != this.selectedSourceId || newModel.fields.molecularProfileId != this.selectedMpId) {
if (
newModel.fields.sourceId != this.selectedSourceId ||
newModel.fields.molecularProfileId != this.selectedMpId
) {
this.selectedSourceId = newModel.fields.sourceId
this.selectedMpId = newModel.fields.molecularProfileId
this.countQueryRef?.refetch({
molecularProfileId: newModel.fields.molecularProfileId,
sourceId: newModel.fields.sourceId
sourceId: newModel.fields.sourceId,
})
}
} else {
this.countQueryRef?.refetch({molecularProfileId: 0, sourceId: 0})
this.countQueryRef?.refetch({ molecularProfileId: 0, sourceId: 0 })
}
}

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
query EvidenceFieldsFromSourceSuggestion(
$sourceId: Int
$molecularProfileId: Int
$diseaseId: Int
) {
sourceSuggestionValues(
molecularProfileId: $molecularProfileId
diseaseId: $diseaseId
sourceId: $sourceId
) {
molecularProfile {
id
name
link
}
disease {
id
name
link
}
source {
id
sourceType
citationId
citation
link
}
}
}

query EvidenceSubmittableFields($evidenceId: Int!) {
evidenceItem(id: $evidenceId) {
...SubmittableEvidenceFields
}
}

fragment SubmittableEvidenceFields on EvidenceItem {
id
description
variantOrigin
evidenceType
significance
evidenceLevel
evidenceDirection
evidenceRating
therapyInteractionType
source {
id
citation
sourceType
}
phenotypes {
id
name
}
therapies {
id
name
}
disease {
id
name
}
}

mutation SubmitEvidenceItem($input: SubmitEvidenceItemInput!) {
submitEvidence(input: $input) {
clientMutationId
evidenceItem {
id
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,11 @@ import {
variantGroupToModelFields,
} from '@app/forms/utilities/variant-group-to-model-fields'
import {
SuggestEvidenceItemRevision2GQL,
SuggestVariantGroupRevision2GQL,
SuggestEvidenceItemRevisionGQL,
SuggestVariantGroupRevisionGQL,
SuggestVariantGroupRevisionMutation,
SuggestVariantGroupRevisionMutationVariables,
VariantGroupRevisableFields2GQL,
VariantGroupRevisableFieldsGQL,
} from '@app/generated/civic.apollo'
import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy'
import { FormlyFieldConfig, FormlyFormOptions } from '@ngx-formly/core'
Expand Down Expand Up @@ -57,8 +56,8 @@ export class CvcVariantgroupReviseForm
url?: string

constructor(
private revisableFieldsGQL: VariantGroupRevisableFields2GQL,
private submitRevisionsGQL: SuggestVariantGroupRevision2GQL,
private revisableFieldsGQL: VariantGroupRevisableFieldsGQL,
private submitRevisionsGQL: SuggestVariantGroupRevisionGQL,
private networkErrorService: NetworkErrorsService,
private cdr: ChangeDetectorRef
) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
query VariantGroupRevisableFields2($variantGroupId: Int!) {
query VariantGroupRevisableFields($variantGroupId: Int!) {
variantGroup(id: $variantGroupId) {
...VariantGroupRevisableFields2
...VariantGroupRevisableFields
}
}

fragment VariantGroupRevisableFields2 on VariantGroup {
fragment VariantGroupRevisableFields on VariantGroup {
id
name
description
Expand All @@ -31,7 +31,7 @@ fragment VariantGroupRevisableFields2 on VariantGroup {
}
}

mutation SuggestVariantGroupRevision2(
mutation SuggestVariantGroupRevision(
$input: SuggestVariantGroupRevisionInput!
) {
suggestVariantGroupRevision(input: $input) {
Expand Down
Loading

0 comments on commit 78ff7b2

Please sign in to comment.