diff --git a/src/components/screens/ScoreSetCreator.vue b/src/components/screens/ScoreSetCreator.vue
index 32084320..e51907a7 100644
--- a/src/components/screens/ScoreSetCreator.vue
+++ b/src/components/screens/ScoreSetCreator.vue
@@ -551,6 +551,20 @@
+
Does this score set describe variants with respect to more than one target?
@@ -1341,6 +1355,7 @@ export default {
validationErrors: {},
isTargetSequence: true,
+ isBaseEditor: false,
isMultiTarget: false,
isProvidingScoreRanges: false,
@@ -2238,6 +2253,10 @@ export default {
targetGene.targetAccession.gene = targetGene.targetAccession.gene.name
}
+ if (!this.isTargetSequence) {
+ targetGene.targetAccession.isBaseEditor = this.isBaseEditor
+ }
+
return targetGene
}
)
diff --git a/src/components/screens/ScoreSetEditor.vue b/src/components/screens/ScoreSetEditor.vue
index 328df301..e7a5dd1b 100644
--- a/src/components/screens/ScoreSetEditor.vue
+++ b/src/components/screens/ScoreSetEditor.vue
@@ -640,6 +640,13 @@
+
+
+
+
+ {{ isBaseEditor ? 'This score set represents base editor data.' : 'This score set does not represent base editor data.' }}
+
+
{{validationErrors['targetGenes']}}
@@ -720,6 +727,7 @@
import InputGroupAddon from 'primevue/inputgroupaddon'
import InputNumber from 'primevue/inputnumber'
import InputText from 'primevue/inputtext'
+ import InputSwitch from 'primevue/inputswitch'
import Message from 'primevue/message'
import Multiselect from 'primevue/multiselect'
import ProgressSpinner from 'primevue/progressspinner'
@@ -784,7 +792,7 @@ import { TARGET_GENE_CATEGORIES, textForTargetGeneCategory } from '@/lib/target-
export default {
name: 'ScoreSetEditor',
- components: { AutoComplete, Button, Card, Chips, Column, Checkbox, DataTable, DefaultLayout, Dropdown, EmailPrompt, EntityLink, FileUpload, InputGroup, InputGroupAddon, InputNumber, InputText, Message, Multiselect, ProgressSpinner, SelectButton, TabPanel, TabView, Textarea },
+ components: { AutoComplete, Button, Card, Chips, Column, Checkbox, DataTable, DefaultLayout, Dropdown, EmailPrompt, EntityLink, FileUpload, InputGroup, InputGroupAddon, InputNumber, InputText, InputSwitch, Message, Multiselect, ProgressSpinner, SelectButton, TabPanel, TabView, Textarea },
setup: () => {
const publicationIdentifierSuggestions = useItems({ itemTypeName: 'publication-identifier-search' })
@@ -899,7 +907,9 @@ import { TARGET_GENE_CATEGORIES, textForTargetGeneCategory } from '@/lib/target-
metaAnalyzesScoreSetSuggestions: [],
supersededScoreSetSuggestions: [],
targetGeneAccessionSuggestions: [],
- validationErrors: {}
+ validationErrors: {},
+
+ isBaseEditor: false
}),
computed: {
@@ -1551,6 +1561,10 @@ import { TARGET_GENE_CATEGORIES, textForTargetGeneCategory } from '@/lib/target-
this.scoreRangeBoundaryHelper[idx].upperBoundIsInfinity = this.scoreRanges.ranges[idx].range[1] === null
})
this.extraMetadata = this.item.extraMetadata
+
+ if (this.targetGenes[0]?.targetAccession) {
+ this.isBaseEditor = this.targetGenes[0].targetAccession.isBaseEditor
+ }
} else {
this.experiment = null
this.licenseId = this.defaultLicenseId
@@ -1660,7 +1674,12 @@ import { TARGET_GENE_CATEGORIES, textForTargetGeneCategory } from '@/lib/target-
dataUsagePolicy: this.dataUsagePolicy,
extraMetadata: {},
// eslint-disable-next-line no-unused-vars
- targetGenes: this.targetGenes.map(({ index, ...target }) => target), // drop index property from target genes before save
+ targetGenes: this.targetGenes.map(({ index, ...target }) => { // drop index property from target genes before save
+ if (target.targetAccession) {
+ target.targetAccession.isBaseEditor = this.isBaseEditor
+ }
+ return target
+ }),
scoreRanges: this.scoreRanges
}
if (!this.item) {
diff --git a/src/components/screens/ScoreSetView.vue b/src/components/screens/ScoreSetView.vue
index 9a4f268a..cb888cca 100644
--- a/src/components/screens/ScoreSetView.vue
+++ b/src/components/screens/ScoreSetView.vue
@@ -290,6 +290,11 @@
+