@apollo-annotation/shared 0.3.7 → 0.3.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Changes/AddAssemblyAndFeaturesFromFileChange.d.ts +3 -0
- package/dist/Changes/AddAssemblyAndFeaturesFromFileChange.js +6 -5
- package/dist/Changes/AddAssemblyAndFeaturesFromFileChange.js.map +1 -1
- package/dist/Changes/AddAssemblyFromFileChange.js +1 -1
- package/dist/Changes/AddAssemblyFromFileChange.js.map +1 -1
- package/dist/Changes/AddFeatureChange.js +14 -2
- package/dist/Changes/AddFeatureChange.js.map +1 -1
- package/dist/Changes/AddFeaturesFromFileChange.d.ts +3 -0
- package/dist/Changes/AddFeaturesFromFileChange.js +5 -2
- package/dist/Changes/AddFeaturesFromFileChange.js.map +1 -1
- package/dist/Changes/AddRefSeqAliasesChange.js +2 -7
- package/dist/Changes/AddRefSeqAliasesChange.js.map +1 -1
- package/dist/Changes/FromFileBaseChange.js +6 -6
- package/dist/Changes/FromFileBaseChange.js.map +1 -1
- package/dist/Changes/ImportJBrowseConfigChange.js +1 -1
- package/dist/Changes/ImportJBrowseConfigChange.js.map +1 -1
- package/dist/Changes/MergeExonsChange.d.ts +0 -1
- package/dist/Changes/MergeExonsChange.js +14 -30
- package/dist/Changes/MergeExonsChange.js.map +1 -1
- package/dist/Changes/MergeTranscriptsChange.d.ts +1 -3
- package/dist/Changes/MergeTranscriptsChange.js +55 -56
- package/dist/Changes/MergeTranscriptsChange.js.map +1 -1
- package/dist/Checks/CDSCheck.d.ts +1 -1
- package/dist/Checks/CDSCheck.js +12 -12
- package/dist/Checks/CDSCheck.js.map +1 -1
- package/dist/Checks/TranscriptCheck.d.ts +9 -0
- package/dist/Checks/TranscriptCheck.js +109 -0
- package/dist/Checks/TranscriptCheck.js.map +1 -0
- package/dist/Checks/index.d.ts +1 -0
- package/dist/Checks/index.js +1 -0
- package/dist/Checks/index.js.map +1 -1
- package/dist/Checks/util.d.ts +2 -0
- package/dist/Checks/util.js +15 -0
- package/dist/Checks/util.js.map +1 -0
- package/dist/GFF3/annotationFeatureToGFF3.js +3 -1
- package/dist/GFF3/annotationFeatureToGFF3.js.map +1 -1
- package/dist/GFF3/gff3ToAnnotationFeature.js +1 -1
- package/dist/GFF3/gff3ToAnnotationFeature.js.map +1 -1
- package/dist/GFF3/gff3ToAnnotationFeature.test.js +4 -4
- package/dist/GFF3/gff3ToAnnotationFeature.test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/util.d.ts +3 -0
- package/dist/util.js +33 -0
- package/dist/util.js.map +1 -1
- package/package.json +9 -9
- package/src/Changes/AddAssemblyAndFeaturesFromFileChange.ts +8 -6
- package/src/Changes/AddAssemblyFromFileChange.ts +1 -1
- package/src/Changes/AddFeatureChange.ts +16 -2
- package/src/Changes/AddFeaturesFromFileChange.ts +6 -1
- package/src/Changes/AddRefSeqAliasesChange.ts +2 -8
- package/src/Changes/FromFileBaseChange.ts +6 -6
- package/src/Changes/ImportJBrowseConfigChange.ts +1 -1
- package/src/Changes/MergeExonsChange.ts +52 -36
- package/src/Changes/MergeTranscriptsChange.ts +82 -67
- package/src/Checks/CDSCheck.ts +15 -13
- package/src/Checks/TranscriptCheck.ts +138 -0
- package/src/Checks/index.ts +1 -0
- package/src/Checks/util.ts +13 -0
- package/src/GFF3/annotationFeatureToGFF3.ts +4 -1
- package/src/GFF3/gff3ToAnnotationFeature.test.ts +4 -4
- package/src/GFF3/gff3ToAnnotationFeature.ts +1 -1
- package/src/util.ts +37 -0
- package/test_data/example01.json +20 -20
- package/test_data/example02.json +38 -38
- package/test_data/example04.json +57 -57
- package/test_data/gene_representations.gff3 +1054 -276
|
@@ -6,6 +6,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.MergeTranscriptsChange = void 0;
|
|
7
7
|
const common_1 = require("@apollo-annotation/common");
|
|
8
8
|
const util_1 = require("@jbrowse/core/util");
|
|
9
|
+
const mobx_state_tree_1 = require("mobx-state-tree");
|
|
10
|
+
const util_2 = require("../util");
|
|
9
11
|
const DeleteFeatureChange_1 = require("./DeleteFeatureChange");
|
|
10
12
|
const UndoMergeTranscriptsChange_1 = require("./UndoMergeTranscriptsChange");
|
|
11
13
|
class MergeTranscriptsChange extends common_1.FeatureChange {
|
|
@@ -15,6 +17,10 @@ class MergeTranscriptsChange extends common_1.FeatureChange {
|
|
|
15
17
|
super(json, options);
|
|
16
18
|
this.changes = 'changes' in json ? json.changes : [json];
|
|
17
19
|
}
|
|
20
|
+
// eslint-disable-next-line @typescript-eslint/class-literal-property-style
|
|
21
|
+
get notification() {
|
|
22
|
+
return 'Transcripts successfully merged';
|
|
23
|
+
}
|
|
18
24
|
toJSON() {
|
|
19
25
|
const { assembly, changedIds, changes, typeName } = this;
|
|
20
26
|
if (changes.length === 1) {
|
|
@@ -60,7 +66,16 @@ class MergeTranscriptsChange extends common_1.FeatureChange {
|
|
|
60
66
|
mergeTranscriptsOnServer(firstTranscript, secondTranscript) {
|
|
61
67
|
firstTranscript.min = Math.min(firstTranscript.min, secondTranscript.min);
|
|
62
68
|
firstTranscript.max = Math.max(firstTranscript.max, secondTranscript.max);
|
|
63
|
-
|
|
69
|
+
const mergedAttributes = firstTranscript.attributes
|
|
70
|
+
? JSON.parse(JSON.stringify(firstTranscript.attributes))
|
|
71
|
+
: {};
|
|
72
|
+
if (secondTranscript.attributes) {
|
|
73
|
+
if (!Object.keys(mergedAttributes).includes('merged_with')) {
|
|
74
|
+
mergedAttributes.merged_with = [];
|
|
75
|
+
}
|
|
76
|
+
mergedAttributes.merged_with.push((0, util_2.stringifyAttributes)((0, util_2.attributesToRecords)(secondTranscript.attributes)));
|
|
77
|
+
}
|
|
78
|
+
firstTranscript.attributes = mergedAttributes;
|
|
64
79
|
if (secondTranscript.children) {
|
|
65
80
|
for (const [, secondFeatureChild] of Object.entries(secondTranscript.children)) {
|
|
66
81
|
this.mergeFeatureIntoTranscriptOnServer(secondFeatureChild, firstTranscript);
|
|
@@ -73,19 +88,39 @@ class MergeTranscriptsChange extends common_1.FeatureChange {
|
|
|
73
88
|
}
|
|
74
89
|
let merged = false;
|
|
75
90
|
let mrgChild;
|
|
76
|
-
|
|
91
|
+
let toDelete;
|
|
92
|
+
for (const [, firstFeatureChild] of firstTranscript.children) {
|
|
77
93
|
if (!merged || !mrgChild) {
|
|
94
|
+
toDelete = false;
|
|
78
95
|
mrgChild = firstFeatureChild;
|
|
79
96
|
}
|
|
97
|
+
else {
|
|
98
|
+
toDelete = true;
|
|
99
|
+
}
|
|
80
100
|
if (mrgChild.type === secondFeatureChild.type &&
|
|
81
101
|
mrgChild.type === firstFeatureChild.type &&
|
|
82
102
|
(0, util_1.doesIntersect2)(secondFeatureChild.min, secondFeatureChild.max, mrgChild.min, mrgChild.max) &&
|
|
83
103
|
(0, util_1.doesIntersect2)(firstFeatureChild.min, firstFeatureChild.max, mrgChild.min, mrgChild.max)) {
|
|
84
104
|
mrgChild.min = Math.min(secondFeatureChild.min, mrgChild.min, firstFeatureChild.min);
|
|
85
105
|
mrgChild.max = Math.max(secondFeatureChild.max, mrgChild.max, firstFeatureChild.max);
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
106
|
+
if (!mrgChild.attributes) {
|
|
107
|
+
mrgChild.attributes = {};
|
|
108
|
+
}
|
|
109
|
+
const mrgChildAttr = JSON.parse(JSON.stringify(mrgChild.attributes));
|
|
110
|
+
if (!Object.keys(mrgChildAttr).includes('merged_with')) {
|
|
111
|
+
mrgChildAttr.merged_with = [];
|
|
112
|
+
}
|
|
113
|
+
const mergedWithAttributes = mrgChildAttr.merged_with;
|
|
114
|
+
mergedWithAttributes.push((0, util_2.stringifyAttributes)((0, util_2.attributesToRecords)(secondFeatureChild.attributes)));
|
|
115
|
+
if (toDelete) {
|
|
116
|
+
const recs = firstFeatureChild.attributes
|
|
117
|
+
? JSON.parse(JSON.stringify(firstFeatureChild.attributes))
|
|
118
|
+
: undefined;
|
|
119
|
+
mergedWithAttributes.push((0, util_2.stringifyAttributes)(recs));
|
|
120
|
+
firstTranscript.children.delete(firstFeatureChild._id.toString());
|
|
121
|
+
}
|
|
122
|
+
mrgChildAttr.merged_with = [...new Set(mergedWithAttributes)];
|
|
123
|
+
mrgChild.attributes = mrgChildAttr;
|
|
89
124
|
merged = true;
|
|
90
125
|
}
|
|
91
126
|
}
|
|
@@ -124,7 +159,13 @@ class MergeTranscriptsChange extends common_1.FeatureChange {
|
|
|
124
159
|
mergeTranscriptsOnClient(firstTranscript, secondTranscript) {
|
|
125
160
|
firstTranscript.setMin(Math.min(firstTranscript.min, secondTranscript.min));
|
|
126
161
|
firstTranscript.setMax(Math.max(firstTranscript.max, secondTranscript.max));
|
|
127
|
-
|
|
162
|
+
const mrg = firstTranscript.attributes.get('merged_with')?.slice() ?? [];
|
|
163
|
+
const mergedWith = (0, util_2.stringifyAttributes)((0, util_2.attributesToRecords)(secondTranscript.attributes));
|
|
164
|
+
if (!mrg.includes(mergedWith)) {
|
|
165
|
+
// executeOnClient runs twice (?!) so avoid adding this key again
|
|
166
|
+
mrg.push(mergedWith);
|
|
167
|
+
}
|
|
168
|
+
firstTranscript.setAttribute('merged_with', mrg);
|
|
128
169
|
if (secondTranscript.children) {
|
|
129
170
|
for (const [, secondFeatureChild] of Object.entries(secondTranscript.children)) {
|
|
130
171
|
this.mergeFeatureIntoTranscriptOnClient(secondFeatureChild, firstTranscript);
|
|
@@ -152,15 +193,13 @@ class MergeTranscriptsChange extends common_1.FeatureChange {
|
|
|
152
193
|
(0, util_1.doesIntersect2)(firstFeatureChild.min, firstFeatureChild.max, mrgChild.min, mrgChild.max)) {
|
|
153
194
|
mrgChild.setMin(Math.min(secondFeatureChild.min, mrgChild.min, firstFeatureChild.min));
|
|
154
195
|
mrgChild.setMax(Math.max(secondFeatureChild.max, mrgChild.max, firstFeatureChild.max));
|
|
155
|
-
const
|
|
156
|
-
|
|
157
|
-
if (mrgChild) {
|
|
158
|
-
mrgChild.setAttribute(key, value);
|
|
159
|
-
}
|
|
160
|
-
});
|
|
196
|
+
const mergedWithAttributes = mrgChild.attributes.get('merged_with')?.slice() ?? [];
|
|
197
|
+
mergedWithAttributes.push((0, util_2.stringifyAttributes)((0, util_2.attributesToRecords)(secondFeatureChild.attributes)));
|
|
161
198
|
if (toDelete) {
|
|
199
|
+
mergedWithAttributes.push((0, util_2.stringifyAttributes)((0, mobx_state_tree_1.getSnapshot)(firstFeatureChild).attributes));
|
|
162
200
|
firstTranscript.deleteChild(firstFeatureChild._id);
|
|
163
201
|
}
|
|
202
|
+
mrgChild.setAttribute('merged_with', [...new Set(mergedWithAttributes)]);
|
|
164
203
|
merged = true;
|
|
165
204
|
}
|
|
166
205
|
}
|
|
@@ -169,58 +208,18 @@ class MergeTranscriptsChange extends common_1.FeatureChange {
|
|
|
169
208
|
mrgChild.addChild(child);
|
|
170
209
|
});
|
|
171
210
|
}
|
|
172
|
-
if (
|
|
211
|
+
if (merged && mrgChild) {
|
|
212
|
+
firstTranscript.addChild((0, mobx_state_tree_1.getSnapshot)(mrgChild));
|
|
213
|
+
}
|
|
214
|
+
else {
|
|
173
215
|
// This secondFeatureChild has no overlap with any feature in the
|
|
174
216
|
// receiving transcript so we add it as it is to the receiving transcript
|
|
175
217
|
firstTranscript.addChild(secondFeatureChild);
|
|
176
218
|
}
|
|
177
219
|
}
|
|
178
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
179
|
-
isAnnotationFeature(obj) {
|
|
180
|
-
return (
|
|
181
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
|
|
182
|
-
typeof obj.setMin === 'function' &&
|
|
183
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
|
|
184
|
-
typeof obj.setMax === 'function' &&
|
|
185
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
|
|
186
|
-
typeof obj.addChild === 'function' &&
|
|
187
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
|
|
188
|
-
typeof obj.deleteChild === 'function');
|
|
189
|
-
}
|
|
190
220
|
async executeOnLocalGFF3(_backend) {
|
|
191
221
|
throw new Error('executeOnLocalGFF3 not implemented');
|
|
192
222
|
}
|
|
193
|
-
/* Merge attributes from source into destination */
|
|
194
|
-
mergeAttributes(destination, source) {
|
|
195
|
-
const destAttrs = destination.attributes
|
|
196
|
-
? JSON.parse(JSON.stringify(destination.attributes))
|
|
197
|
-
: {};
|
|
198
|
-
if (source.attributes) {
|
|
199
|
-
const sourceAttrs = JSON.parse(JSON.stringify(source.attributes));
|
|
200
|
-
Object.entries(sourceAttrs).map(([key, value]) => {
|
|
201
|
-
if (!(key in destAttrs)) {
|
|
202
|
-
destAttrs[key] = [];
|
|
203
|
-
}
|
|
204
|
-
value.map((x) => {
|
|
205
|
-
if (!destAttrs[key].includes(x)) {
|
|
206
|
-
destAttrs[key].push(x);
|
|
207
|
-
}
|
|
208
|
-
});
|
|
209
|
-
});
|
|
210
|
-
}
|
|
211
|
-
return destAttrs;
|
|
212
|
-
}
|
|
213
|
-
mergeTranscriptAttributes(firstTranscript, secondTranscript) {
|
|
214
|
-
const txAttrs = this.mergeAttributes(firstTranscript, secondTranscript);
|
|
215
|
-
if (this.isAnnotationFeature(firstTranscript)) {
|
|
216
|
-
Object.entries(txAttrs).map(([key, value]) => {
|
|
217
|
-
firstTranscript.setAttribute(key, value);
|
|
218
|
-
});
|
|
219
|
-
}
|
|
220
|
-
else {
|
|
221
|
-
firstTranscript.attributes = txAttrs;
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
223
|
getInverse() {
|
|
225
224
|
const { assembly, changedIds, changes, logger } = this;
|
|
226
225
|
const inverseChangedIds = [...changedIds].reverse();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MergeTranscriptsChange.js","sourceRoot":"","sources":["../../src/Changes/MergeTranscriptsChange.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,qDAAqD;AACrD,4DAA4D;;;AAE5D,sDAOkC;AAMlC,6CAAmD;
|
|
1
|
+
{"version":3,"file":"MergeTranscriptsChange.js","sourceRoot":"","sources":["../../src/Changes/MergeTranscriptsChange.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,qDAAqD;AACrD,4DAA4D;;;AAE5D,sDAOkC;AAMlC,6CAAmD;AACnD,qDAA6C;AAE7C,kCAAkE;AAElE,+DAAiE;AACjE,6EAAyE;AAyBzE,MAAa,sBAAuB,SAAQ,sBAAa;IACvD,QAAQ,GAAG,wBAAiC,CAAA;IAC5C,OAAO,CAAiC;IAExC,YAAY,IAAsC,EAAE,OAAuB;QACzE,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QACpB,IAAI,CAAC,OAAO,GAAG,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IAC1D,CAAC;IACD,2EAA2E;IAC3E,IAAI,YAAY;QACd,OAAO,iCAAiC,CAAA;IAC1C,CAAC;IAED,MAAM;QACJ,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;QACxD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,CAAC,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC,GAAG,OAAO,CAAA;YAExE,OAAO;gBACL,QAAQ;gBACR,UAAU;gBACV,QAAQ;gBACR,eAAe;gBACf,gBAAgB;gBAChB,eAAe;aAChB,CAAA;QACH,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAA;IACpD,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAAwB;QAC5C,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;QACzC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QAChC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,MAAM,CAAA;YACpD,MAAM,eAAe,GAAG,MAAM,YAAY;iBACvC,OAAO,CAAC,EAAE,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,CAAC;iBACxC,OAAO,CAAC,OAAO,CAAC;iBAChB,IAAI,EAAE,CAAA;YACT,IAAI,CAAC,eAAe,EAAE,CAAC;gBACrB,MAAM,MAAM,GAAG,kEAAkE,eAAe,CAAC,GAAG,GAAG,CAAA;gBACvG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;gBACpB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA;YACzB,CAAC;YACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAC5C,eAAe,EACf,eAAe,CAAC,GAAG,CACpB,CAAA;YACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,MAAM,MAAM,GAAG,2CAA2C,CAAA;gBAC1D,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;gBACpB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA;YACzB,CAAC;YACD,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CAAA;YACjE,MAAM,UAAU,GAAG,IAAA,+CAAyB,EAC1C,eAAe,EACf,gBAAgB,CAAC,GAAG,EACpB,IAAI,CACL,CAAA;YACD,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAA;YACrC,eAAe,CAAC,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM,CACpD,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,CACjC,CAAA;YACD,MAAM,eAAe,CAAC,IAAI,EAAE,CAAA;QAC9B,CAAC;IACH,CAAC;IAED,wBAAwB,CACtB,eAAwB,EACxB,gBAA2C;QAE3C,eAAe,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAA;QACzE,eAAe,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAA;QAEzE,MAAM,gBAAgB,GACpB,eAAe,CAAC,UAAU;YACxB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YACxD,CAAC,CAAC,EAAE,CAAA;QACR,IAAI,gBAAgB,CAAC,UAAU,EAAE,CAAC;YAChC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC3D,gBAAgB,CAAC,WAAW,GAAG,EAAE,CAAA;YACnC,CAAC;YACD,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAC/B,IAAA,0BAAmB,EAAC,IAAA,0BAAmB,EAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CACtE,CAAA;QACH,CAAC;QACD,eAAe,CAAC,UAAU,GAAG,gBAAgB,CAAA;QAE7C,IAAI,gBAAgB,CAAC,QAAQ,EAAE,CAAC;YAC9B,KAAK,MAAM,CAAC,EAAE,kBAAkB,CAAC,IAAI,MAAM,CAAC,OAAO,CACjD,gBAAgB,CAAC,QAAQ,CAC1B,EAAE,CAAC;gBACF,IAAI,CAAC,kCAAkC,CACrC,kBAAkB,EAClB,eAAe,CAChB,CAAA;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,kCAAkC,CAChC,kBAA6C,EAC7C,eAAwB;QAExB,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;YAC9B,eAAe,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAmB,CAAA;QACvD,CAAC;QACD,IAAI,MAAM,GAAG,KAAK,CAAA;QAClB,IAAI,QAA6B,CAAA;QACjC,IAAI,QAAQ,CAAA;QACZ,KAAK,MAAM,CAAC,EAAE,iBAAiB,CAAC,IAAI,eAAe,CAAC,QAAQ,EAAE,CAAC;YAC7D,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACzB,QAAQ,GAAG,KAAK,CAAA;gBAChB,QAAQ,GAAG,iBAAiB,CAAA;YAC9B,CAAC;iBAAM,CAAC;gBACN,QAAQ,GAAG,IAAI,CAAA;YACjB,CAAC;YACD,IACE,QAAQ,CAAC,IAAI,KAAK,kBAAkB,CAAC,IAAI;gBACzC,QAAQ,CAAC,IAAI,KAAK,iBAAiB,CAAC,IAAI;gBACxC,IAAA,qBAAc,EACZ,kBAAkB,CAAC,GAAG,EACtB,kBAAkB,CAAC,GAAG,EACtB,QAAQ,CAAC,GAAG,EACZ,QAAQ,CAAC,GAAG,CACb;gBACD,IAAA,qBAAc,EACZ,iBAAiB,CAAC,GAAG,EACrB,iBAAiB,CAAC,GAAG,EACrB,QAAQ,CAAC,GAAG,EACZ,QAAQ,CAAC,GAAG,CACb,EACD,CAAC;gBACD,QAAQ,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CACrB,kBAAkB,CAAC,GAAG,EACtB,QAAQ,CAAC,GAAG,EACZ,iBAAiB,CAAC,GAAG,CACtB,CAAA;gBACD,QAAQ,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CACrB,kBAAkB,CAAC,GAAG,EACtB,QAAQ,CAAC,GAAG,EACZ,iBAAiB,CAAC,GAAG,CACtB,CAAA;gBAED,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;oBACzB,QAAQ,CAAC,UAAU,GAAG,EAAE,CAAA;gBAC1B,CAAC;gBAED,MAAM,YAAY,GAA6B,IAAI,CAAC,KAAK,CACvD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CACpC,CAAA;gBAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;oBACvD,YAAY,CAAC,WAAW,GAAG,EAAE,CAAA;gBAC/B,CAAC;gBACD,MAAM,oBAAoB,GAAG,YAAY,CAAC,WAAW,CAAA;gBACrD,oBAAoB,CAAC,IAAI,CACvB,IAAA,0BAAmB,EACjB,IAAA,0BAAmB,EAAC,kBAAkB,CAAC,UAAU,CAAC,CACnD,CACF,CAAA;gBAED,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,IAAI,GACR,iBAAiB,CAAC,UAAU;wBAC1B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;wBAC1D,CAAC,CAAC,SAAS,CAAA;oBACf,oBAAoB,CAAC,IAAI,CAAC,IAAA,0BAAmB,EAAC,IAAI,CAAC,CAAC,CAAA;oBACpD,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAA;gBACnE,CAAC;gBAED,YAAY,CAAC,WAAW,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAA;gBAC7D,QAAQ,CAAC,UAAU,GAAG,YAAY,CAAA;gBAClC,MAAM,GAAG,IAAI,CAAA;YACf,CAAC;QACH,CAAC;QAED,IAAI,MAAM,IAAI,QAAQ,IAAI,kBAAkB,CAAC,QAAQ,EAAE,CAAC;YACtD,yCAAyC;YACzC,iEAAiE;YACjE,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE;gBAC5D,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;YAChC,CAAC,CAAC,CAAA;QACJ,CAAC;QAED,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;YACvB,IAAI,CAAC,QAAQ,CACX,eAAe,EACf,QAAgD,CACjD,CAAA;QACH,CAAC;aAAM,CAAC;YACN,iEAAiE;YACjE,yEAAyE;YACzE,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,kBAAkB,CAAC,CAAA;QACpD,CAAC;IACH,CAAC;IAED,uCAAuC;IAEvC,KAAK,CAAC,eAAe,CAAC,SAA0B;QAC9C,uEAAuE;QACvE,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAA;QAClC,CAAC;QACD,KAAK,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;YACzD,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YAC/D,MAAM,gBAAgB,GAAG,SAAS,CAAC,UAAU,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;YAClE,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,2CAA2C,SAAS,GAAG,CAAC,CAAA;YAC1E,CAAC;YACD,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CAAA;YACjE,gBAAgB,CAAC,MAAM,EAAE,WAAW,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAA;QAC5D,CAAC;IACH,CAAC;IAED,wBAAwB,CACtB,eAAkC,EAClC,gBAA2C;QAE3C,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAA;QAC3E,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAA;QAE3E,MAAM,GAAG,GAAG,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;QACxE,MAAM,UAAU,GAAG,IAAA,0BAAmB,EACpC,IAAA,0BAAmB,EAAC,gBAAgB,CAAC,UAAU,CAAC,CACjD,CAAA;QAED,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,iEAAiE;YACjE,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QACtB,CAAC;QACD,eAAe,CAAC,YAAY,CAAC,aAAa,EAAE,GAAG,CAAC,CAAA;QAEhD,IAAI,gBAAgB,CAAC,QAAQ,EAAE,CAAC;YAC9B,KAAK,MAAM,CAAC,EAAE,kBAAkB,CAAC,IAAI,MAAM,CAAC,OAAO,CACjD,gBAAgB,CAAC,QAAQ,CAC1B,EAAE,CAAC;gBACF,IAAI,CAAC,kCAAkC,CACrC,kBAAkB,EAClB,eAAe,CAChB,CAAA;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,kCAAkC,CAChC,kBAA6C,EAC7C,eAAkC;QAElC,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;YAC9B,eAAe,CAAC,QAAQ,GAAG,IAAI,GAAG,EAA6B,CAAA;QACjE,CAAC;QACD,IAAI,MAAM,GAAG,KAAK,CAAA;QAClB,IAAI,QAAuC,CAAA;QAC3C,IAAI,QAAQ,CAAA;QACZ,KAAK,MAAM,CAAC,EAAE,iBAAiB,CAAC,IAAI,eAAe,CAAC,QAAQ,EAAE,CAAC;YAC7D,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACzB,QAAQ,GAAG,KAAK,CAAA;gBAChB,QAAQ,GAAG,iBAAiB,CAAA;YAC9B,CAAC;iBAAM,CAAC;gBACN,QAAQ,GAAG,IAAI,CAAA;YACjB,CAAC;YACD,IACE,QAAQ,CAAC,IAAI,KAAK,kBAAkB,CAAC,IAAI;gBACzC,QAAQ,CAAC,IAAI,KAAK,iBAAiB,CAAC,IAAI;gBACxC,IAAA,qBAAc,EACZ,kBAAkB,CAAC,GAAG,EACtB,kBAAkB,CAAC,GAAG,EACtB,QAAQ,CAAC,GAAG,EACZ,QAAQ,CAAC,GAAG,CACb;gBACD,IAAA,qBAAc,EACZ,iBAAiB,CAAC,GAAG,EACrB,iBAAiB,CAAC,GAAG,EACrB,QAAQ,CAAC,GAAG,EACZ,QAAQ,CAAC,GAAG,CACb,EACD,CAAC;gBACD,QAAQ,CAAC,MAAM,CACb,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,iBAAiB,CAAC,GAAG,CAAC,CACtE,CAAA;gBACD,QAAQ,CAAC,MAAM,CACb,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,iBAAiB,CAAC,GAAG,CAAC,CACtE,CAAA;gBAED,MAAM,oBAAoB,GACxB,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;gBACvD,oBAAoB,CAAC,IAAI,CACvB,IAAA,0BAAmB,EACjB,IAAA,0BAAmB,EAAC,kBAAkB,CAAC,UAAU,CAAC,CACnD,CACF,CAAA;gBACD,IAAI,QAAQ,EAAE,CAAC;oBACb,oBAAoB,CAAC,IAAI,CACvB,IAAA,0BAAmB,EAAC,IAAA,6BAAW,EAAC,iBAAiB,CAAC,CAAC,UAAU,CAAC,CAC/D,CAAA;oBACD,eAAe,CAAC,WAAW,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAA;gBACpD,CAAC;gBACD,QAAQ,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAA;gBACxE,MAAM,GAAG,IAAI,CAAA;YACf,CAAC;QACH,CAAC;QAED,IAAI,MAAM,IAAI,QAAQ,IAAI,kBAAkB,CAAC,QAAQ,EAAE,CAAC;YACtD,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE;gBAC5D,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;YAC1B,CAAC,CAAC,CAAA;QACJ,CAAC;QAED,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;YACvB,eAAe,CAAC,QAAQ,CAAC,IAAA,6BAAW,EAAC,QAAQ,CAAC,CAAC,CAAA;QACjD,CAAC;aAAM,CAAC;YACN,iEAAiE;YACjE,yEAAyE;YACzE,eAAe,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAA;QAC9C,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,QAA4B;QACnD,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;IACvD,CAAC;IAED,UAAU;QACR,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QACtD,MAAM,iBAAiB,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,OAAO,EAAE,CAAA;QACnD,MAAM,cAAc,GAAG,CAAC,GAAG,OAAO,CAAC;aAChC,OAAO,EAAE;aACT,GAAG,CAAC,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC;YAC/B,oBAAoB,EAAE;gBACpB,qBAAqB,CAAC,eAAe;gBACrC,qBAAqB,CAAC,gBAAgB;aACvC;YACD,eAAe,EAAE,qBAAqB,CAAC,eAAe;SACvD,CAAC,CAAC,CAAA;QACL,MAAM,CAAC,KAAK,EAAE,CAAC,mBAAmB,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,CAAA;QACpE,OAAO,IAAI,uDAA0B,CACnC;YACE,UAAU,EAAE,iBAAiB;YAC7B,QAAQ,EAAE,4BAA4B;YACtC,OAAO,EAAE,cAAc;YACvB,QAAQ;SACT,EACD,EAAE,MAAM,EAAE,CACX,CAAA;IACH,CAAC;CACF;AAzVD,wDAyVC"}
|
|
@@ -4,6 +4,6 @@ export declare class CDSCheck extends Check {
|
|
|
4
4
|
name: string;
|
|
5
5
|
causes: string[];
|
|
6
6
|
version: number;
|
|
7
|
-
|
|
7
|
+
isDefault: boolean;
|
|
8
8
|
checkFeature(feature: AnnotationFeatureSnapshot, getSequence: (start: number, end: number) => Promise<string>): Promise<CheckResultSnapshot[]>;
|
|
9
9
|
}
|
package/dist/Checks/CDSCheck.js
CHANGED
|
@@ -5,6 +5,7 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const common_1 = require("@apollo-annotation/common");
|
|
6
6
|
const util_1 = require("@jbrowse/core/util");
|
|
7
7
|
const bson_objectid_1 = tslib_1.__importDefault(require("bson-objectid"));
|
|
8
|
+
const util_2 = require("./util");
|
|
8
9
|
var STOP_CODONS;
|
|
9
10
|
(function (STOP_CODONS) {
|
|
10
11
|
STOP_CODONS[STOP_CODONS["TAG"] = 0] = "TAG";
|
|
@@ -21,7 +22,6 @@ var CAUSES;
|
|
|
21
22
|
CAUSES[CAUSES["InternalStopCodon"] = 0] = "InternalStopCodon";
|
|
22
23
|
CAUSES[CAUSES["MissingStartCodon"] = 1] = "MissingStartCodon";
|
|
23
24
|
CAUSES[CAUSES["MissingStopCodon"] = 2] = "MissingStopCodon";
|
|
24
|
-
CAUSES[CAUSES["MultipleOfThree"] = 3] = "MultipleOfThree";
|
|
25
25
|
})(CAUSES || (CAUSES = {}));
|
|
26
26
|
const iupacComplements = {
|
|
27
27
|
G: 'C',
|
|
@@ -126,6 +126,9 @@ async function checkMRNA(feature, getSequence) {
|
|
|
126
126
|
for (const cdsLocation of cdsLocations) {
|
|
127
127
|
const sequence = await getCDSSequence(cdsLocation, strand, getSequence);
|
|
128
128
|
const codons = splitSequenceInCodons(sequence);
|
|
129
|
+
const cdsEnd = strand === -1
|
|
130
|
+
? cdsLocation.at(0)?.min ?? min
|
|
131
|
+
: cdsLocation.at(-1)?.max ?? max;
|
|
129
132
|
if (sequence.length % 3 === 0) {
|
|
130
133
|
const start_codon = codons.at(0);
|
|
131
134
|
if (start_codon && !(start_codon.toUpperCase() in START_CODONS)) {
|
|
@@ -141,14 +144,11 @@ async function checkMRNA(feature, getSequence) {
|
|
|
141
144
|
refSeq: refSeq.toString(),
|
|
142
145
|
start: cdsStart,
|
|
143
146
|
end: cdsStart,
|
|
144
|
-
message: `Unexpected start codon in feature "${
|
|
147
|
+
message: `Unexpected start codon "${start_codon}" in feature "${(0, util_2.getPrintableId)(feature)}": `,
|
|
145
148
|
});
|
|
146
149
|
}
|
|
147
150
|
const lastCodon = codons.at(-1); // Last codon is supposed to be a stop
|
|
148
151
|
if (lastCodon && !(lastCodon.toUpperCase() in STOP_CODONS)) {
|
|
149
|
-
const cdsEnd = strand === -1
|
|
150
|
-
? cdsLocation.at(0)?.min ?? min
|
|
151
|
-
: cdsLocation.at(-1)?.max ?? max;
|
|
152
152
|
checkResults.push({
|
|
153
153
|
_id: new bson_objectid_1.default().toHexString(),
|
|
154
154
|
name: CHECK_NAME,
|
|
@@ -157,7 +157,7 @@ async function checkMRNA(feature, getSequence) {
|
|
|
157
157
|
refSeq: refSeq.toString(),
|
|
158
158
|
start: cdsEnd,
|
|
159
159
|
end: cdsEnd,
|
|
160
|
-
message: `Missing stop codon
|
|
160
|
+
message: `Missing stop codon in feature "${(0, util_2.getPrintableId)(feature)}"`,
|
|
161
161
|
});
|
|
162
162
|
}
|
|
163
163
|
}
|
|
@@ -165,12 +165,12 @@ async function checkMRNA(feature, getSequence) {
|
|
|
165
165
|
checkResults.push({
|
|
166
166
|
_id: new bson_objectid_1.default().toHexString(),
|
|
167
167
|
name: CHECK_NAME,
|
|
168
|
-
cause: CAUSES[CAUSES.
|
|
168
|
+
cause: CAUSES[CAUSES.MissingStopCodon],
|
|
169
169
|
ids,
|
|
170
170
|
refSeq: refSeq.toString(),
|
|
171
|
-
start:
|
|
172
|
-
end:
|
|
173
|
-
message: `
|
|
171
|
+
start: cdsEnd,
|
|
172
|
+
end: cdsEnd,
|
|
173
|
+
message: `Missing stop codon in feature "${(0, util_2.getPrintableId)(feature)}"`,
|
|
174
174
|
});
|
|
175
175
|
}
|
|
176
176
|
for (const [idx, codon] of codons.entries()) {
|
|
@@ -189,7 +189,7 @@ async function checkMRNA(feature, getSequence) {
|
|
|
189
189
|
refSeq: refSeq.toString(),
|
|
190
190
|
start: codonStart,
|
|
191
191
|
end: codonEnd,
|
|
192
|
-
message: `
|
|
192
|
+
message: `Internal stop codon in feature "${(0, util_2.getPrintableId)(feature)}"`,
|
|
193
193
|
});
|
|
194
194
|
}
|
|
195
195
|
}
|
|
@@ -246,7 +246,7 @@ class CDSCheck extends common_1.Check {
|
|
|
246
246
|
name = CHECK_NAME;
|
|
247
247
|
causes = getCauses();
|
|
248
248
|
version = 1;
|
|
249
|
-
|
|
249
|
+
isDefault = true;
|
|
250
250
|
async checkFeature(feature, getSequence) {
|
|
251
251
|
if (feature.type === 'mRNA') {
|
|
252
252
|
return checkMRNA(feature, getSequence);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CDSCheck.js","sourceRoot":"","sources":["../../src/Checks/CDSCheck.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CDSCheck.js","sourceRoot":"","sources":["../../src/Checks/CDSCheck.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Check } from '@apollo-annotation/common';
|
|
2
|
+
import { type AnnotationFeatureSnapshot, type CheckResultSnapshot } from '@apollo-annotation/mst';
|
|
3
|
+
export declare class TranscriptCheck extends Check {
|
|
4
|
+
name: string;
|
|
5
|
+
causes: string[];
|
|
6
|
+
version: number;
|
|
7
|
+
isDefault: boolean;
|
|
8
|
+
checkFeature(feature: AnnotationFeatureSnapshot, getSequence: (start: number, end: number) => Promise<string>): Promise<CheckResultSnapshot[]>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TranscriptCheck = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const common_1 = require("@apollo-annotation/common");
|
|
6
|
+
const util_1 = require("@jbrowse/core/util");
|
|
7
|
+
const bson_objectid_1 = tslib_1.__importDefault(require("bson-objectid"));
|
|
8
|
+
const util_2 = require("./util");
|
|
9
|
+
var CAUSES;
|
|
10
|
+
(function (CAUSES) {
|
|
11
|
+
CAUSES[CAUSES["NonCanonicalSpliceSiteAtFivePrime"] = 0] = "NonCanonicalSpliceSiteAtFivePrime";
|
|
12
|
+
CAUSES[CAUSES["NonCanonicalSpliceSiteAtThreePrime"] = 1] = "NonCanonicalSpliceSiteAtThreePrime";
|
|
13
|
+
})(CAUSES || (CAUSES = {}));
|
|
14
|
+
const CHECK_NAME = 'TranscriptCheck';
|
|
15
|
+
async function getSpliceSequences(transcript, getSequence) {
|
|
16
|
+
if (!transcript.children) {
|
|
17
|
+
return [];
|
|
18
|
+
}
|
|
19
|
+
const exons = [];
|
|
20
|
+
for (const [, child] of Object.entries(transcript.children)) {
|
|
21
|
+
if (child.type === 'exon') {
|
|
22
|
+
exons.push(child);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
if (exons.length < 2) {
|
|
26
|
+
return [];
|
|
27
|
+
}
|
|
28
|
+
exons.sort((a, b) => (a.min < b.min ? -1 : 1));
|
|
29
|
+
const spliceSeq = [];
|
|
30
|
+
for (let i = 0; i < exons.length - 1; i++) {
|
|
31
|
+
let fivePrimeMin = exons[i].max;
|
|
32
|
+
let threePrimeMin = exons[i + 1].min;
|
|
33
|
+
if (transcript.strand === -1) {
|
|
34
|
+
;
|
|
35
|
+
[threePrimeMin, fivePrimeMin] = [fivePrimeMin, threePrimeMin];
|
|
36
|
+
fivePrimeMin -= 2;
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
threePrimeMin -= 2;
|
|
40
|
+
}
|
|
41
|
+
let fivePrimeSeq = await getSequence(fivePrimeMin, fivePrimeMin + 2);
|
|
42
|
+
let threePrimeSeq = await getSequence(threePrimeMin, threePrimeMin + 2);
|
|
43
|
+
if (transcript.strand === -1) {
|
|
44
|
+
threePrimeSeq = (0, util_1.revcom)(threePrimeSeq);
|
|
45
|
+
fivePrimeSeq = (0, util_1.revcom)(fivePrimeSeq);
|
|
46
|
+
}
|
|
47
|
+
spliceSeq.push({ fivePrimeSeq, fivePrimeMin, threePrimeSeq, threePrimeMin });
|
|
48
|
+
}
|
|
49
|
+
return spliceSeq;
|
|
50
|
+
}
|
|
51
|
+
async function checkTranscript(feature, getSequence) {
|
|
52
|
+
const checkResults = [];
|
|
53
|
+
const VALID_FIVE_PRIME_SEQ = new Set(['GT']);
|
|
54
|
+
const VALID_THREE_PRIME_SEQ = new Set(['AG']);
|
|
55
|
+
const spliceSequences = await getSpliceSequences(feature, getSequence);
|
|
56
|
+
for (const spliceSequence of spliceSequences) {
|
|
57
|
+
if (!VALID_FIVE_PRIME_SEQ.has(spliceSequence.fivePrimeSeq.toUpperCase())) {
|
|
58
|
+
checkResults.push({
|
|
59
|
+
_id: new bson_objectid_1.default().toHexString(),
|
|
60
|
+
name: CHECK_NAME,
|
|
61
|
+
cause: CAUSES[CAUSES.NonCanonicalSpliceSiteAtFivePrime],
|
|
62
|
+
ids: [feature._id],
|
|
63
|
+
refSeq: feature.refSeq.toString(),
|
|
64
|
+
start: spliceSequence.fivePrimeMin,
|
|
65
|
+
end: spliceSequence.fivePrimeMin + 2,
|
|
66
|
+
message: `Unexpected 5′ splice site in "${(0, util_2.getPrintableId)(feature)}". Expected: ${[...VALID_FIVE_PRIME_SEQ].join('|')}, got: ${spliceSequence.fivePrimeSeq}`,
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
if (!VALID_THREE_PRIME_SEQ.has(spliceSequence.threePrimeSeq.toUpperCase())) {
|
|
70
|
+
checkResults.push({
|
|
71
|
+
_id: new bson_objectid_1.default().toHexString(),
|
|
72
|
+
name: CHECK_NAME,
|
|
73
|
+
cause: CAUSES[CAUSES.NonCanonicalSpliceSiteAtThreePrime],
|
|
74
|
+
ids: [feature._id],
|
|
75
|
+
refSeq: feature.refSeq.toString(),
|
|
76
|
+
start: spliceSequence.threePrimeMin,
|
|
77
|
+
end: spliceSequence.threePrimeMin + 2,
|
|
78
|
+
message: `Unexpected 3′ splice site in "${(0, util_2.getPrintableId)(feature)}". Expected: ${[...VALID_THREE_PRIME_SEQ].join('|')}, got: ${spliceSequence.threePrimeSeq}`,
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return checkResults;
|
|
83
|
+
}
|
|
84
|
+
function getCauses() {
|
|
85
|
+
return Object.values(CAUSES).filter((x) => Number.isNaN(Number(x)));
|
|
86
|
+
}
|
|
87
|
+
class TranscriptCheck extends common_1.Check {
|
|
88
|
+
name = 'TranscriptCheck';
|
|
89
|
+
causes = getCauses();
|
|
90
|
+
version = 1;
|
|
91
|
+
isDefault = true;
|
|
92
|
+
async checkFeature(feature, getSequence) {
|
|
93
|
+
if (feature.type === 'mRNA' ||
|
|
94
|
+
feature.type === 'transcript' ||
|
|
95
|
+
feature.type === 'pseudogenic_transcript') {
|
|
96
|
+
return checkTranscript(feature, getSequence);
|
|
97
|
+
}
|
|
98
|
+
if (!feature.children) {
|
|
99
|
+
return [];
|
|
100
|
+
}
|
|
101
|
+
const checkResults = [];
|
|
102
|
+
for (const child of Object.values(feature.children)) {
|
|
103
|
+
checkResults.push(...(await this.checkFeature(child, getSequence)));
|
|
104
|
+
}
|
|
105
|
+
return checkResults;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
exports.TranscriptCheck = TranscriptCheck;
|
|
109
|
+
//# sourceMappingURL=TranscriptCheck.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TranscriptCheck.js","sourceRoot":"","sources":["../../src/Checks/TranscriptCheck.ts"],"names":[],"mappings":"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"}
|
package/dist/Checks/index.d.ts
CHANGED
package/dist/Checks/index.js
CHANGED
package/dist/Checks/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Checks/index.ts"],"names":[],"mappings":";;;AAAA,qDAA0B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Checks/index.ts"],"names":[],"mappings":";;;AAAA,qDAA0B;AAC1B,4DAAiC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getPrintableId = getPrintableId;
|
|
4
|
+
function getPrintableId(feature) {
|
|
5
|
+
const gff_id = feature.attributes?.gff_id?.join(', ');
|
|
6
|
+
if (gff_id) {
|
|
7
|
+
return `${gff_id} (_id: ${feature._id.toString()})`;
|
|
8
|
+
}
|
|
9
|
+
const gff_name = feature.attributes?.gff_name?.join(', ');
|
|
10
|
+
if (gff_name) {
|
|
11
|
+
return `${gff_name} (_id: ${feature._id.toString()})`;
|
|
12
|
+
}
|
|
13
|
+
return `_id: ${feature._id.toString()}`;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/Checks/util.ts"],"names":[],"mappings":";;AAEA,wCAUC;AAVD,SAAgB,cAAc,CAAC,OAAkC;IAC/D,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IACrD,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,GAAG,MAAM,UAAU,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAA;IACrD,CAAC;IACD,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IACzD,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,GAAG,QAAQ,UAAU,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAA;IACvD,CAAC;IACD,OAAO,QAAQ,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAA;AACzC,CAAC"}
|
|
@@ -87,7 +87,9 @@ function annotationFeatureToGFF3(feature, parentId, refSeqNames) {
|
|
|
87
87
|
score,
|
|
88
88
|
strand: feature.strand ? (feature.strand === 1 ? '+' : '-') : null,
|
|
89
89
|
phase: null,
|
|
90
|
-
attributes: Object.keys(attributes).length > 0
|
|
90
|
+
attributes: Object.keys(attributes).length > 0
|
|
91
|
+
? attributes
|
|
92
|
+
: null,
|
|
91
93
|
derived_features: [],
|
|
92
94
|
child_features: prepareChildFeatures(feature, attributes.ID?.[0], refSeqNames),
|
|
93
95
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"annotationFeatureToGFF3.js","sourceRoot":"","sources":["../../src/GFF3/annotationFeatureToGFF3.ts"],"names":[],"mappings":";AAAA,4DAA4D;;AAU5D,
|
|
1
|
+
{"version":3,"file":"annotationFeatureToGFF3.js","sourceRoot":"","sources":["../../src/GFF3/annotationFeatureToGFF3.ts"],"names":[],"mappings":"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"}
|
|
@@ -93,7 +93,7 @@ function convertFeatureAttributes(gff3Feature) {
|
|
|
93
93
|
if (attributesCollections.length > 0) {
|
|
94
94
|
for (const attributesCollection of attributesCollections) {
|
|
95
95
|
for (const [key, val] of Object.entries(attributesCollection)) {
|
|
96
|
-
if (
|
|
96
|
+
if (key === 'Parent') {
|
|
97
97
|
continue;
|
|
98
98
|
}
|
|
99
99
|
const newKey = (0, gffReservedKeys_1.isGFFReservedAttribute)(key) ? gffReservedKeys_1.gffToInternal[key] : key;
|