@apollo-annotation/mst 0.3.1 → 0.3.3

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.
@@ -97,16 +97,25 @@ exports.AnnotationFeatureModel = mobx_state_tree_1.types
97
97
  return false;
98
98
  },
99
99
  get transcriptParts() {
100
- if (self.type !== 'mRNA') {
101
- throw new Error('Only features of type "mRNA" or equivalent can calculate CDS locations');
100
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-explicit-any
101
+ const session = (0, util_1.getSession)(self);
102
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
103
+ const { apolloDataStore } = session;
104
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access
105
+ const { featureTypeOntology } = apolloDataStore.ontologyManager;
106
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access
107
+ if (!featureTypeOntology.isTypeOf(self.type, 'transcript')) {
108
+ throw new Error('Only features of type "transcript" or equivalent can calculate CDS locations');
102
109
  }
103
110
  const children = self.children;
104
111
  if (!children) {
105
- throw new Error('no CDS or exons in mRNA');
112
+ throw new Error('no CDS or exons in transcript');
106
113
  }
107
- const cdsChildren = [...children.values()].filter((child) => child.type === 'CDS');
114
+ const cdsChildren = [...children.values()].filter(
115
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access
116
+ (child) => featureTypeOntology.isTypeOf(child.type, 'CDS'));
108
117
  if (cdsChildren.length === 0) {
109
- throw new Error('no CDS in mRNA');
118
+ throw new Error('no CDS in transcript');
110
119
  }
111
120
  const transcriptParts = [];
112
121
  for (const cds of cdsChildren) {
@@ -115,7 +124,8 @@ exports.AnnotationFeatureModel = mobx_state_tree_1.types
115
124
  let hasIntersected = false;
116
125
  const exonLocations = [];
117
126
  for (const [, child] of children) {
118
- if (child.type === 'exon') {
127
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access
128
+ if (featureTypeOntology.isTypeOf(child.type, 'exon')) {
119
129
  exonLocations.push({ min: child.min, max: child.max });
120
130
  }
121
131
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AnnotationFeatureModel.js","sourceRoot":"","sources":["../src/AnnotationFeatureModel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AnnotationFeatureModel.js","sourceRoot":"","sources":["../src/AnnotationFeatureModel.ts"],"names":[],"mappings":"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"}