react-mutation-mapper 0.8.59 → 0.8.61

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.
Files changed (35) hide show
  1. package/dist/component/ptm/PtmReferenceList.d.ts +1 -0
  2. package/dist/index.d.ts +0 -12
  3. package/dist/index.es.js +179 -1840
  4. package/dist/index.es.js.map +1 -1
  5. package/dist/index.js +190 -1875
  6. package/dist/index.js.map +1 -1
  7. package/dist/styles.css +0 -229
  8. package/package.json +5 -4
  9. package/dist/component/oncokb/ArticleAbstractItem.d.ts +0 -5
  10. package/dist/component/oncokb/OncoKB.d.ts +0 -33
  11. package/dist/component/oncokb/OncoKB.spec.d.ts +0 -1
  12. package/dist/component/oncokb/OncoKBSuggestAnnotationLinkout.d.ts +0 -6
  13. package/dist/component/oncokb/OncoKbCard.d.ts +0 -20
  14. package/dist/component/oncokb/OncoKbCardBody.d.ts +0 -15
  15. package/dist/component/oncokb/OncoKbCardLevelsOfEvidenceDropdown.d.ts +0 -15
  16. package/dist/component/oncokb/OncoKbCardTitle.d.ts +0 -8
  17. package/dist/component/oncokb/OncoKbFeedback.d.ts +0 -12
  18. package/dist/component/oncokb/OncoKbHelper.d.ts +0 -33
  19. package/dist/component/oncokb/OncoKbSummaryTable.d.ts +0 -31
  20. package/dist/component/oncokb/OncoKbTooltip.d.ts +0 -21
  21. package/dist/component/oncokb/OncoKbTreatmentTable.d.ts +0 -86
  22. package/dist/component/oncokb/PmidItem.d.ts +0 -12
  23. package/dist/component/oncokb/RefComponent.d.ts +0 -9
  24. package/dist/component/oncokb/ReferenceList.d.ts +0 -13
  25. package/dist/component/oncokb/SummaryWithRefs.d.ts +0 -11
  26. package/dist/component/oncokb/constants.d.ts +0 -10
  27. package/dist/component/oncokb/icon/AnnotationIcon.d.ts +0 -13
  28. package/dist/component/oncokb/icon/CompactAnnotationIcon.d.ts +0 -8
  29. package/dist/component/oncokb/icon/LevelIcon.d.ts +0 -6
  30. package/dist/component/oncokb/icon/OncogenicIcon.d.ts +0 -6
  31. package/dist/component/oncokb/oncokbCard/BiologicalContent.d.ts +0 -8
  32. package/dist/component/oncokb/oncokbCard/EvidenceReferenceContent.d.ts +0 -9
  33. package/dist/component/oncokb/oncokbCard/ImplicationContent.d.ts +0 -11
  34. package/dist/util/OncoKbUtils.d.ts +0 -40
  35. package/dist/util/OncoKbUtils.spec.d.ts +0 -1
package/dist/index.es.js CHANGED
@@ -1,28 +1,26 @@
1
- import { __extends, __decorate, __spreadArrays, __assign, __awaiter, __generator } from 'tslib';
1
+ import { __extends, __decorate, __awaiter, __generator, __assign, __spreadArrays } from 'tslib';
2
2
  import * as _ from 'lodash';
3
3
  import ___default from 'lodash';
4
- import { makeObservable, observable, action, computed, reaction } from 'mobx';
4
+ import { makeObservable, observable, computed, action, reaction } from 'mobx';
5
5
  import { observer } from 'mobx-react';
6
6
  import * as React from 'react';
7
- import React__default, { useState } from 'react';
8
- import { DefaultTooltip, TruncatedText, getNCBIlink, trimOffHtmlTagEntities, cachePostMethodsOnClient, CanonicalMutationType, MutationTumorTypeFrequencyTable, FREQUENCY_COLUMNS_DEFINITION, FrequencyTableColumnEnum, CheckedSelect, getSelectedValuesMap, Checklist, MUT_COLOR_MISSENSE, MUT_COLOR_MISSENSE_PASSENGER, MUT_COLOR_INFRAME, MUT_COLOR_INFRAME_PASSENGER, MUT_COLOR_TRUNC, MUT_COLOR_TRUNC_PASSENGER, MUT_COLOR_SPLICE, MUT_COLOR_SPLICE_PASSENGER, STRUCTURAL_VARIANT_COLOR, STRUCTURAL_VARIANT_PASSENGER_COLOR, MUT_COLOR_OTHER, getCanonicalMutationType, getProteinImpactTypeFromCanonical, ProteinImpactType, getProteinImpactType, resolveColumnVisibility, resolveColumnVisibilityByColumnDefinition, longestCommonStartingSubstring, getTextWidth, unhoverAllComponents, SVGAxis, getComponentIndex, defaultHitzoneConfig, initHitZoneFromConfig, EditableSpan, DownloadControls, EllipsisTextTooltip, remoteData, WindowWrapper } from 'cbioportal-frontend-commons';
9
- import { CIVIC_NA_VALUE, deriveStructuralVariantType, generateQueryStructuralVariantId, generateQueryVariantId, OncoKbCardDataType, parseMyCancerGenomeLink, defaultArraySortMethod, defaultSortMethod, LEVELS, uniqueGenomicLocations, indexAnnotationsByGenomicLocation, getCivicEntry, getRemoteDataGroupStatus, getMyCancerGenomeLinks, isLinearClusterHotspot, is3dHotspot, calculateOncoKbAvailableDataType, getVariantAnnotation, getDbsnpRsId, getMyVariantInfoAnnotation, generateHgvsgByMutation, calcProteinChangeSortValue, Pathogenicity, extendMutations, formatNumberValueInSignificantDigits, generateTumorTypeDecomposition, formatPercentValue, countMutationsByProteinChange, numberOfLeadingDecimalZeros, filterLinearClusterHotspotsByMutations, filter3dHotspotsByMutations, isHotspot, defaultHotspotFilter, defaultStringArraySortMethod, extractExonInformation, formatExonLocation, formatExonLength, ptmColor, compareByPtmTypePriority, UniprotTopologyTrackToColor, UniprotTopologyTypeToTitle, PtmSource, PTM_SOURCE_URL, getMyVariantInfoAnnotationsFromIndexedVariantAnnotations, generateProteinChangeQuery, StructuralVariantType, generateAnnotateStructuralVariantQuery, getMyCancerGenomeData, genomicLocationString, convertUniprotFeatureToPtm, convertDbPtmToPtm, UniprotCategory, convertUniprotFeatureToUniprotTopology, groupPtmDataByPosition, groupPtmDataByTypeAndPosition, groupCancerHotspotDataByPosition, indexHotspotsData, fetchCivicGenes, fetchCivicVariants, getMutationsByTranscriptId, groupMutationsByProteinStartPos, groupHotspotsByMutations } from 'cbioportal-utils';
10
- import classnames from 'classnames';
11
- import autobind from 'autobind-decorator';
12
- import oncoKbLogoImgSrc from 'oncokb-styles/dist/images/logo/oncokb.svg';
13
- import { Tabs, Tab, Modal, ButtonGroup } from 'react-bootstrap';
14
- import { Collapse } from 'react-collapse';
15
- import ReactTable from 'react-table';
16
- import { If, Then, Else } from 'react-if';
17
- import 'oncokb-styles/dist/oncokb.css';
7
+ import { DefaultTooltip, TruncatedText, getNCBIlink, cachePostMethodsOnClient, CanonicalMutationType, MutationTumorTypeFrequencyTable, FREQUENCY_COLUMNS_DEFINITION, FrequencyTableColumnEnum, CheckedSelect, getSelectedValuesMap, Checklist, MUT_COLOR_MISSENSE, MUT_COLOR_MISSENSE_PASSENGER, MUT_COLOR_INFRAME, MUT_COLOR_INFRAME_PASSENGER, MUT_COLOR_TRUNC, MUT_COLOR_TRUNC_PASSENGER, MUT_COLOR_SPLICE, MUT_COLOR_SPLICE_PASSENGER, STRUCTURAL_VARIANT_COLOR, STRUCTURAL_VARIANT_PASSENGER_COLOR, MUT_COLOR_OTHER, getCanonicalMutationType, getProteinImpactTypeFromCanonical, ProteinImpactType, getProteinImpactType, resolveColumnVisibility, resolveColumnVisibilityByColumnDefinition, longestCommonStartingSubstring, getTextWidth, unhoverAllComponents, SVGAxis, getComponentIndex, defaultHitzoneConfig, initHitZoneFromConfig, EditableSpan, DownloadControls, EllipsisTextTooltip, remoteData, WindowWrapper } from 'cbioportal-frontend-commons';
8
+ import classNames from 'classnames';
9
+ import { CIVIC_NA_VALUE, parseMyCancerGenomeLink, uniqueGenomicLocations, indexAnnotationsByGenomicLocation, getCivicEntry, getRemoteDataGroupStatus, getMyCancerGenomeLinks, isLinearClusterHotspot, is3dHotspot, OncoKbCardDataType, defaultArraySortMethod, getVariantAnnotation, defaultSortMethod, getDbsnpRsId, getMyVariantInfoAnnotation, generateHgvsgByMutation, calcProteinChangeSortValue, Pathogenicity, extendMutations, formatNumberValueInSignificantDigits, generateTumorTypeDecomposition, formatPercentValue, countMutationsByProteinChange, numberOfLeadingDecimalZeros, filterLinearClusterHotspotsByMutations, filter3dHotspotsByMutations, isHotspot, defaultHotspotFilter, extractExonInformation, formatExonLocation, formatExonLength, ptmColor, compareByPtmTypePriority, UniprotTopologyTrackToColor, UniprotTopologyTypeToTitle, PtmSource, PTM_SOURCE_URL, getMyVariantInfoAnnotationsFromIndexedVariantAnnotations, getMyCancerGenomeData, genomicLocationString, convertUniprotFeatureToPtm, convertDbPtmToPtm, UniprotCategory, convertUniprotFeatureToUniprotTopology, groupPtmDataByPosition, groupPtmDataByTypeAndPosition, groupCancerHotspotDataByPosition, indexHotspotsData, fetchCivicGenes, fetchCivicVariants, getMutationsByTranscriptId, groupMutationsByProteinStartPos, groupHotspotsByMutations } from 'cbioportal-utils';
10
+ import { getIndicatorData, calculateOncoKbAvailableDataType, oncoKbAnnotationSortValue, OncoKB, OncoKbSummaryTable, LEVELS, getTumorTypeNameWithExclusionInfo, ReferenceList, generateProteinChangeQuery, StructuralVariantType, generateAnnotateStructuralVariantQuery, defaultOncoKbFilter, groupOncoKbIndicatorDataByMutations, defaultOncoKbIndicatorFilter } from 'oncokb-frontend-commons';
18
11
  import { GenomeNexusAPI, GenomeNexusAPIInternal } from 'genome-nexus-ts-api-client';
19
12
  import { OncoKbAPI } from 'oncokb-ts-api-client';
13
+ import autobind from 'autobind-decorator';
14
+ import ReactTable from 'react-table';
20
15
  import 'rc-tooltip/assets/bootstrap_white.css';
21
16
  import Select, { components } from 'react-select';
22
17
  import $ from 'jquery';
18
+ import { Collapse } from 'react-collapse';
23
19
  import Slider from 'react-rangeslider';
24
20
  import 'react-rangeslider/lib/index.css';
25
21
  import oncoKbImg from 'oncokb-styles/dist/images/oncogenic.svg';
22
+ import 'oncokb-frontend-commons/dist/styles.css';
23
+ import { ButtonGroup } from 'react-bootstrap';
26
24
  import request, { get } from 'superagent';
27
25
  import memoize from 'memoize-weak-decorator';
28
26
  import { cached } from 'mobxpromise';
@@ -30,7 +28,7 @@ import { cached } from 'mobxpromise';
30
28
  var annotationStyles = {"annotation-item-load":"annotation-module_annotation-item-load__1pDN0","annotation-item-text":"annotation-module_annotation-item-text__Gy_Jv","annotation-item-error":"annotation-module_annotation-item-error__5BhTo","annotation-item":"annotation-module_annotation-item__2EgnB"};
31
29
 
32
30
  function loaderIcon(className) {
33
- return (React.createElement("span", { className: classnames("" + annotationStyles['annotation-item'], "" + annotationStyles['annotation-item-load'], className) },
31
+ return (React.createElement("span", { className: classNames("" + annotationStyles['annotation-item'], "" + annotationStyles['annotation-item-load'], className) },
34
32
  React.createElement("i", { className: "fa fa-spinner fa-pulse" })));
35
33
  }
36
34
  function errorIcon(errorMessage) {
@@ -127,1607 +125,58 @@ var CivicCard = /** @class */ (function (_super) {
127
125
  React.createElement("p", null,
128
126
  React.createElement("span", { className: "civic-card-gene-name" },
129
127
  React.createElement("a", { href: this.props.geneUrl, target: "_blank" },
130
- React.createElement("b", null, this.props.geneName))),
131
- ' ',
132
- "- ",
133
- this.props.geneDescription)),
134
- React.createElement("div", { className: "col s12" },
135
- React.createElement("ul", null, this.generateVariants(this.props.variants))),
136
- React.createElement("div", { className: "item disclaimer" },
137
- React.createElement("span", null, "Disclaimer: This resource is intended for purely research purposes. It should not be used for emergencies or medical or professional advice.")))),
138
- React.createElement("div", { className: "item footer" },
139
- React.createElement("a", { href: this.props.geneUrl, target: "_blank" },
140
- React.createElement("img", { src: img$5, className: "civic-logo", alt: "CIViC" })))));
141
- }
142
- });
143
- return CivicCard;
144
- }(React.Component));
145
-
146
- var img$4 = "data:image/png;base64,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";
147
-
148
- var img$3 = "data:image/png;base64,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";
149
-
150
- function hideArrow$1(tooltipEl) {
151
- var arrowEl = tooltipEl.querySelector('.rc-tooltip-arrow');
152
- arrowEl.style.display = 'none';
153
- }
154
- function sortValue$8(civicEntry) {
155
- var score = 0;
156
- if (civicEntry) {
157
- score = 1;
158
- }
159
- return score;
160
- }
161
- function download$7(civicEntry) {
162
- if (!civicEntry) {
163
- return CIVIC_NA_VALUE;
164
- }
165
- var variants = ___default.values(civicEntry.variants);
166
- var values = [];
167
- if (variants && variants.length > 0 && variants[0].evidenceCounts) {
168
- ___default.forEach(variants[0].evidenceCounts, function (value, key) {
169
- values.push(key + ": " + value);
170
- });
171
- }
172
- // this indicates that we have an entry but the evidence is empty
173
- if (values.length === 0) {
174
- return CIVIC_NA_VALUE;
175
- }
176
- return values.join(', ');
177
- }
178
- var Civic = /** @class */ (function (_super) {
179
- __extends(Civic, _super);
180
- function Civic(props) {
181
- var _this = _super.call(this, props) || this;
182
- Object.defineProperty(_this, "tooltipDataLoadComplete", {
183
- enumerable: true,
184
- configurable: true,
185
- writable: true,
186
- value: false
187
- });
188
- makeObservable(_this);
189
- _this.cardContent = _this.cardContent.bind(_this);
190
- return _this;
191
- }
192
- Object.defineProperty(Civic.prototype, "render", {
193
- enumerable: false,
194
- configurable: true,
195
- writable: true,
196
- value: function () {
197
- var civicContent = (React.createElement("span", { className: "" + annotationStyles['annotation-item'] }));
198
- var civicImgWidth = 14;
199
- var civicImgHeight = 14;
200
- var civicImgSrc = !this.props.hasCivicVariants
201
- ? img$3
202
- : img$4;
203
- if (this.props.civicStatus == 'error') {
204
- civicContent = errorIcon('Error fetching Civic data');
205
- }
206
- else if (this.props.civicEntry !== undefined) {
207
- if (this.props.civicEntry !== null &&
208
- this.props.civicStatus == 'complete') {
209
- civicContent = (React.createElement("span", { className: "" + annotationStyles['annotation-item'] },
210
- React.createElement("img", { width: civicImgWidth, height: civicImgHeight, src: civicImgSrc, alt: "Civic Variant Entry" })));
211
- civicContent = (React.createElement(DefaultTooltip, { overlay: this.cardContent.bind(this, this.props.civicEntry), placement: "right", trigger: ['hover', 'focus'], onPopupAlign: hideArrow$1, destroyTooltipOnHide: false }, civicContent));
212
- }
213
- }
214
- else {
215
- // It's still unknown (undefined) if the current gene has a Civic entry or not.
216
- civicContent = loaderIcon('pull-left');
217
- }
218
- return civicContent;
219
- }
220
- });
221
- Object.defineProperty(Civic.prototype, "cardContent", {
222
- enumerable: false,
223
- configurable: true,
224
- writable: true,
225
- value: function (civicEntry) {
226
- return (React.createElement(CivicCard, { title: "CIViC Variants", geneName: civicEntry.name, geneDescription: civicEntry.description, geneUrl: civicEntry.url, variants: civicEntry.variants }));
227
- }
228
- });
229
- __decorate([
230
- observable
231
- ], Civic.prototype, "tooltipDataLoadComplete", void 0);
232
- Civic = __decorate([
233
- observer
234
- ], Civic);
235
- return Civic;
236
- }(React.Component));
237
-
238
- var NoClinvarData = function () {
239
- return (React.createElement(DefaultTooltip, { placement: "topLeft", overlay: React.createElement("span", null, "Variant has no ClinVar data.") },
240
- React.createElement("span", { style: {
241
- height: '100%',
242
- width: '100%',
243
- display: 'block',
244
- overflow: 'hidden',
245
- } }, "\u00A0")));
246
- };
247
- var ClinvarSummary = function (props) {
248
- if (!props.clinvar) {
249
- return React.createElement(NoClinvarData, null);
250
- }
251
- else {
252
- var clinvarId = props.clinvar.clinvarId;
253
- var clinvarLink = "https://www.ncbi.nlm.nih.gov/clinvar/variation/" + clinvarId + "/";
254
- var clinicalSignificance = props.clinvar.clinicalSignificance;
255
- var conflictingClinicalSignificance = props.clinvar.conflictingClinicalSignificance;
256
- return (React.createElement(TruncatedText, { maxLength: 30, text: clinicalSignificance, addTooltip: "always", tooltip: React.createElement("div", { style: { maxWidth: 300 } },
257
- React.createElement("div", null, clinicalSignificance),
258
- conflictingClinicalSignificance && (React.createElement("div", null, conflictingClinicalSignificance)),
259
- React.createElement("div", null,
260
- "(ClinVar ID:",
261
- ' ',
262
- React.createElement("a", { href: clinvarLink, target: "_blank" }, clinvarId),
263
- ")")) }));
264
- }
265
- };
266
-
267
- // oncogenic value => score
268
- // (used for sorting purposes)
269
- var ONCOGENIC_SCORE = {
270
- Unknown: 0,
271
- Inconclusive: 0,
272
- 'Likely Neutral': 0,
273
- Resistance: 5,
274
- 'Likely Oncogenic': 5,
275
- Oncogenic: 5,
276
- };
277
- // sensitivity level => score
278
- // (used for sorting purposes)
279
- var SENSITIVITY_LEVEL_SCORE = {
280
- '4': 1,
281
- '3B': 2,
282
- '3A': 3,
283
- '2': 5,
284
- '1': 6,
285
- };
286
- // resistance level <-> score
287
- // (used for sorting purposes)
288
- var RESISTANCE_LEVEL_SCORE = {
289
- R3: 1,
290
- R2: 2,
291
- R1: 3,
292
- };
293
- // diagnostic level <-> score
294
- // (used for sorting purposes)
295
- var DIAGNOSTIC_LEVEL_SCORE = {
296
- Dx3: 1,
297
- Dx2: 2,
298
- Dx1: 3,
299
- };
300
- // prognostic level <-> score
301
- // (used for sorting purposes)
302
- var PROGNOSTIC_LEVEL_SCORE = {
303
- Px3: 1,
304
- Px2: 2,
305
- Px1: 3,
306
- };
307
- function normalizeLevel(level) {
308
- if (level) {
309
- var matchArray = level.match(/LEVEL_(.*)/);
310
- if (matchArray && matchArray.length >= 2) {
311
- return matchArray[1];
312
- }
313
- else {
314
- return level;
315
- }
316
- }
317
- else {
318
- return null;
319
- }
320
- }
321
- function normalizeOncogenicity(oncogenicity) {
322
- return (oncogenicity || 'unknown')
323
- .trim()
324
- .toLowerCase()
325
- .replace(/\s/, '-');
326
- }
327
- function levelIconClassNames(level) {
328
- if (level) {
329
- return "oncokb icon level-" + level;
330
- }
331
- return '';
332
- }
333
- function oncogenicityIconClassNames(oncogenicity) {
334
- return "oncokb icon " + normalizeOncogenicity(oncogenicity);
335
- }
336
- function annotationIconClassNames(type, highestLevel, indicator) {
337
- return type === OncoKbCardDataType.BIOLOGICAL
338
- ? oncogenicityIconClassNames((indicator === null || indicator === void 0 ? void 0 : indicator.oncogenic) || '')
339
- : levelIconClassNames(normalizeLevel(highestLevel) || '');
340
- }
341
- function calcHighestIndicatorLevel(type, indicator) {
342
- var highestLevel = '';
343
- if (indicator) {
344
- switch (type) {
345
- case OncoKbCardDataType.TXS:
346
- highestLevel = indicator.highestSensitiveLevel;
347
- break;
348
- case OncoKbCardDataType.TXR:
349
- highestLevel = indicator.highestResistanceLevel;
350
- break;
351
- case OncoKbCardDataType.DX:
352
- highestLevel = indicator.highestDiagnosticImplicationLevel;
353
- break;
354
- case OncoKbCardDataType.PX:
355
- highestLevel = indicator.highestPrognosticImplicationLevel;
356
- break;
357
- }
358
- }
359
- return highestLevel;
360
- }
361
- function calcOncogenicScore(oncogenic) {
362
- return ONCOGENIC_SCORE[oncogenic] || 0;
363
- }
364
- function calcSensitivityLevelScore(level) {
365
- return SENSITIVITY_LEVEL_SCORE[normalizeLevel(level) || ''] || 0;
366
- }
367
- function calcResistanceLevelScore(level) {
368
- return RESISTANCE_LEVEL_SCORE[normalizeLevel(level) || ''] || 0;
369
- }
370
- function calcDiagnosticLevelScore(level) {
371
- return DIAGNOSTIC_LEVEL_SCORE[normalizeLevel(level) || ''] || 0;
372
- }
373
- function calcPrognosticLevelScore(level) {
374
- return PROGNOSTIC_LEVEL_SCORE[normalizeLevel(level) || ''] || 0;
375
- }
376
- /**
377
- * Return combined alterations name, separated by comma.
378
- * Same location variant will be truncated into AALocationAllele e.g. V600E/K
379
- *
380
- * @param {Array} alterations - List of alterations
381
- * @return {string} - Truncated alteration name
382
- */
383
- function mergeAlterations(alterations) {
384
- var positions = {};
385
- var regular = [];
386
- var regExp = new RegExp('^([A-Z])([0-9]+)([A-Z]$)');
387
- if (___default.isString(alterations)) {
388
- return alterations;
389
- }
390
- ___default.each(alterations, function (alteration) {
391
- var result = regExp.exec(alteration);
392
- if (___default.isArray(result) && result.length === 4) {
393
- if (!positions.hasOwnProperty(result[2])) {
394
- positions[result[2]] = {};
395
- }
396
- if (!positions[result[2]].hasOwnProperty(result[1])) {
397
- // Avoid duplication, use object instead of array
398
- positions[result[2]][result[1]] = {};
399
- }
400
- positions[result[2]][result[1]][result[3]] = 1;
401
- }
402
- else {
403
- regular.push(alteration);
404
- }
405
- });
406
- ___default.each(___default.keys(positions)
407
- .map(function (e) {
408
- return Number(e);
409
- })
410
- .sort(), function (position) {
411
- ___default.each(___default.keys(positions[position]).sort(), function (aa) {
412
- regular.push(aa +
413
- position +
414
- ___default.keys(positions[position][aa])
415
- .sort()
416
- .join('/'));
417
- });
418
- });
419
- return regular.join(', ');
420
- }
421
- /**
422
- * Return the positional variant of the missense mutation
423
- * @param alteration The missense mutation
424
- */
425
- function getPositionalVariant(alteration) {
426
- var regExp = new RegExp('^([A-Z]+)([0-9]+)([A-Z]*)$');
427
- var result = regExp.exec(alteration);
428
- // Only if the alteration is missense mutation or positional variant
429
- // result[0]: matched alteration
430
- // result[1]: reference alleles (there could be multiple reference alleles, we only return the first allele)
431
- // result[2]: position(protein start/end)
432
- // result[3]: variant alleles (empty if the alteration is positional variant already)
433
- if (___default.isArray(result) &&
434
- result.length === 4 &&
435
- (!result[3] || result[1].length === result[3].length)) {
436
- return "" + result[1][0] + result[2];
437
- }
438
- return undefined;
439
- }
440
- function getTumorTypeName(tumorType) {
441
- if (!tumorType) {
442
- return '';
443
- }
444
- else if (tumorType.name) {
445
- return tumorType.name;
446
- }
447
- else if (tumorType.mainType) {
448
- return tumorType.mainType.name;
449
- }
450
- else {
451
- return '';
452
- }
453
- }
454
- function getTumorTypeNameWithExclusionInfo(tumorType, excludedTumorTypes) {
455
- var name = getTumorTypeName(tumorType);
456
- if (!___default.isEmpty(excludedTumorTypes)) {
457
- name = name + " (excluding " + excludedTumorTypes
458
- .map(function (ett) { return getTumorTypeName(ett); })
459
- .join(', ') + ")";
460
- }
461
- return name;
462
- }
463
- function groupOncoKbIndicatorDataByMutations(mutationsByPosition, oncoKbData, getTumorType, getEntrezGeneId, filter) {
464
- var indicatorMap = {};
465
- ___default.keys(mutationsByPosition).forEach(function (key) {
466
- var position = Number(key);
467
- var indicators = mutationsByPosition[position]
468
- .map(function (mutation) {
469
- return getIndicatorData(mutation, oncoKbData, getTumorType, getEntrezGeneId);
470
- })
471
- .filter(function (indicator) {
472
- return indicator !== undefined && (!filter || filter(indicator));
473
- });
474
- if (position > 0 && indicators.length > 0) {
475
- indicatorMap[position] = indicators;
476
- }
477
- });
478
- return indicatorMap;
479
- }
480
- function getIndicatorData(mutation, oncoKbData, getTumorType, getEntrezGeneId) {
481
- if (oncoKbData.indicatorMap === null) {
482
- return undefined;
483
- }
484
- var id = '';
485
- // @ts-ignore
486
- var sv = mutation.structuralVariant;
487
- if (sv) {
488
- var structuralVariantType = deriveStructuralVariantType(sv);
489
- id = generateQueryStructuralVariantId(sv.site1EntrezGeneId, sv.site2EntrezGeneId, getTumorType(mutation), structuralVariantType);
490
- }
491
- else {
492
- id = generateQueryVariantId(getEntrezGeneId(mutation), getTumorType(mutation), mutation.proteinChange, mutation.mutationType);
493
- }
494
- return oncoKbData.indicatorMap[id];
495
- }
496
- function defaultOncoKbIndicatorFilter(indicator) {
497
- return indicator.oncogenic
498
- .toLowerCase()
499
- .trim()
500
- .includes('oncogenic');
501
- }
502
- function defaultOncoKbFilter(mutation, oncoKbData, getTumorType, getEntrezGeneId) {
503
- var filter = true;
504
- if (oncoKbData && getTumorType && getEntrezGeneId) {
505
- var indicatorData = getIndicatorData(mutation, oncoKbData, getTumorType, getEntrezGeneId);
506
- filter = indicatorData
507
- ? defaultOncoKbIndicatorFilter(indicatorData)
508
- : false;
509
- }
510
- return filter;
511
- }
512
-
513
- var img$2 = "data:image/png;base64,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";
514
-
515
- var mcgStyles = {"link-list":"myCancerGenome-module_link-list__2wFhH"};
516
-
517
- function placeArrow$1(tooltipEl) {
518
- var arrowEl = tooltipEl.querySelector('.rc-tooltip-arrow');
519
- arrowEl.style.left = '10px';
520
- }
521
- function sortValue$7(links) {
522
- return links.length > 0 ? 1 : 0;
523
- }
524
- function download$6(links) {
525
- return links.length > 0 ? 'present' : 'not present';
526
- }
527
- function myCancerGenomeLinks(linksHTML) {
528
- var links = [];
529
- ___default.each(linksHTML, function (link, index) {
530
- // TODO this is a workaround, ideally we should fix the data itself
531
- // parse the data as an HTML dom element, since it is formatted as an HTML link.
532
- var myCancerGenomeLink = parseMyCancerGenomeLink(link);
533
- if (myCancerGenomeLink) {
534
- links.push(React.createElement("li", { key: index },
535
- React.createElement("a", { href: myCancerGenomeLink.url, target: "_blank" }, myCancerGenomeLink.text)));
536
- }
537
- });
538
- return (React.createElement("span", null,
539
- React.createElement("b", null, "My Cancer Genome links:"),
540
- React.createElement("br", null),
541
- React.createElement("ul", { className: mcgStyles['link-list'] }, links)));
542
- }
543
- var MyCancerGenome = /** @class */ (function (_super) {
544
- __extends(MyCancerGenome, _super);
545
- function MyCancerGenome() {
546
- return _super !== null && _super.apply(this, arguments) || this;
547
- }
548
- Object.defineProperty(MyCancerGenome.prototype, "render", {
549
- enumerable: false,
550
- configurable: true,
551
- writable: true,
552
- value: function () {
553
- var myCancerGenomeContent = (React.createElement("span", { className: "" + annotationStyles['annotation-item'] }));
554
- if (this.props.linksHTML.length > 0) {
555
- var arrowContent = React.createElement("div", { className: "rc-tooltip-arrow-inner" });
556
- var tooltipContent = myCancerGenomeLinks(this.props.linksHTML);
557
- myCancerGenomeContent = (React.createElement(DefaultTooltip, { overlay: tooltipContent, placement: "topLeft", trigger: ['hover', 'focus'], arrowContent: arrowContent, onPopupAlign: placeArrow$1 },
558
- React.createElement("span", { className: annotationStyles['annotation-item'] + " mcg" },
559
- React.createElement("img", { width: "14", height: "14", src: img$2, alt: "My Cancer Genome Symbol" }))));
560
- }
561
- return myCancerGenomeContent;
562
- }
563
- });
564
- return MyCancerGenome;
565
- }(React.Component));
566
-
567
- function hideArrow(tooltipEl) {
568
- var arrowEl = tooltipEl.querySelector('.rc-tooltip-arrow');
569
- arrowEl.style.display = 'none';
570
- }
571
- var AnnotationIcon = function (props) {
572
- if (props.availableDataTypes !== undefined &&
573
- !props.availableDataTypes.includes(props.type)) {
574
- return null;
575
- }
576
- var highestLevel = calcHighestIndicatorLevel(props.type, props.indicator);
577
- return (React__default.createElement(AnnotationIconWithTooltip, { tooltipOverlay: props.tooltipOverlay, icon: React__default.createElement("i", { className: annotationIconClassNames(props.type, highestLevel, props.indicator), "data-test": "oncogenic-icon-image" }) }));
578
- };
579
- var AnnotationIconWithTooltip = function (props) {
580
- if (props.icon) {
581
- return (React__default.createElement(DefaultTooltip, { overlayClassName: "oncokb-tooltip", overlay: function () {
582
- return props.tooltipOverlay ? props.tooltipOverlay : null;
583
- }, placement: "right", trigger: ['hover', 'focus'], onPopupAlign: hideArrow, destroyTooltipOnHide: true },
584
- React__default.createElement("span", { className: "" + annotationStyles['annotation-item'] }, props.icon)));
585
- }
586
- else {
587
- return null;
588
- }
589
- };
590
-
591
- var BIOLOGICAL_COLOR_MAP = {
592
- oncogenic: '#0968C3',
593
- 'likely-oncogenic': '#0968C3',
594
- resistance: '#0968C3',
595
- neutral: '#696969',
596
- 'likely-neutral': '#696969',
597
- inconclusive: '#AAAAAA',
598
- vus: '#696969',
599
- unknown: '#CCCCCC',
600
- };
601
- var LEVEL_COLOR_MAP = {
602
- '1': '#33A02C',
603
- '2': '#1F78B4',
604
- '3': '#984EA3',
605
- '3A': '#984EA3',
606
- '3B': '#BE98CE',
607
- '4': '#424242',
608
- R1: '#EE3424',
609
- R2: '#F79A92',
610
- R3: '#FCD6D3',
611
- Dx1: '#33A02C',
612
- Dx2: '#1F78B4',
613
- Dx3: '#984EA3',
614
- Px1: '#33A02C',
615
- Px2: '#1F78B4',
616
- Px3: '#984EA3',
617
- };
618
- function getLevelColor(highestLevel, defaultColor) {
619
- if (defaultColor === void 0) { defaultColor = '#CCCCCC'; }
620
- var level = normalizeLevel(highestLevel || null) || '';
621
- return LEVEL_COLOR_MAP[level] || defaultColor;
622
- }
623
- function shouldDrawShape(type, level, availableDataTypes) {
624
- return (level &&
625
- availableDataTypes !== undefined &&
626
- availableDataTypes.includes(type));
627
- }
628
- function getOncogenicShape(indicator) {
629
- var oncogenicity = normalizeOncogenicity((indicator === null || indicator === void 0 ? void 0 : indicator.oncogenic) || '');
630
- var color = BIOLOGICAL_COLOR_MAP[oncogenicity] || '#CCCCCC';
631
- return (React__default.createElement("g", { transform: "translate(9, 9)" },
632
- React__default.createElement("circle", { r: "6", fill: "none", strokeWidth: "2", stroke: color }),
633
- oncogenicity !== 'vus' && oncogenicity !== 'unknown' && (React__default.createElement("g", null,
634
- React__default.createElement("circle", { r: "3", fill: "none", strokeWidth: "2", stroke: color }),
635
- React__default.createElement("circle", { r: "1.5", fill: color, stroke: "none" })))));
636
- }
637
- function getTherapeuticSensitivityShape(indicator, availableDataTypes) {
638
- var highestLevel = indicator === null || indicator === void 0 ? void 0 : indicator.highestSensitiveLevel;
639
- if (!shouldDrawShape(OncoKbCardDataType.TXS, highestLevel, availableDataTypes)) {
640
- return null;
641
- }
642
- var fillColor = getLevelColor(highestLevel, '#33A02C');
643
- return (React__default.createElement("g", { transform: "translate(14.5, 3.5)" },
644
- React__default.createElement("circle", { r: "4", fill: fillColor, stroke: "#ffffff", strokeWidth: "1" })));
645
- }
646
- function getTherapeuticResistanceShape(indicator, availableDataTypes) {
647
- var highestLevel = indicator === null || indicator === void 0 ? void 0 : indicator.highestResistanceLevel;
648
- if (!shouldDrawShape(OncoKbCardDataType.TXR, highestLevel, availableDataTypes)) {
649
- return null;
650
- }
651
- var fillColor = getLevelColor(highestLevel, '#EE3424');
652
- return (React__default.createElement("g", { transform: "translate(14.5, 14.5)" },
653
- React__default.createElement("circle", { r: "4", fill: fillColor, stroke: "#ffffff", strokeWidth: "1" })));
654
- }
655
- function getDiagnosticShape(indicator, availableDataTypes) {
656
- var highestLevel = indicator === null || indicator === void 0 ? void 0 : indicator.highestDiagnosticImplicationLevel;
657
- if (!shouldDrawShape(OncoKbCardDataType.DX, highestLevel, availableDataTypes)) {
658
- return null;
659
- }
660
- var fillColor = getLevelColor(highestLevel, '#33A02C');
661
- return (React__default.createElement("g", { transform: "translate(-0.5, -0.5)" },
662
- React__default.createElement("rect", { width: "7", height: "7", fill: fillColor, stroke: "#ffffff", strokeWidth: "1" })));
663
- }
664
- function getPrognosticShape(indicator, availableDataTypes) {
665
- var highestLevel = indicator === null || indicator === void 0 ? void 0 : indicator.highestPrognosticImplicationLevel;
666
- if (!shouldDrawShape(OncoKbCardDataType.PX, highestLevel, availableDataTypes)) {
667
- return null;
668
- }
669
- var fillColor = getLevelColor(highestLevel, '#33A02C');
670
- return (React__default.createElement("g", { transform: "translate(0, 10.5)" },
671
- React__default.createElement("polygon", { points: "3.5 0, 8 8, -1 8", fill: fillColor, stroke: "#ffffff", strokeWidth: "1" })));
672
- }
673
- var CompactAnnotationIcon = function (props) {
674
- var indicatorForLevelIcons = props.usingPublicOncoKbInstance
675
- ? undefined
676
- : props.indicator;
677
- return (React__default.createElement("svg", { version: "1.1", width: "18", height: "18", "data-test": "oncogenic-icon-image" },
678
- getOncogenicShape(props.indicator),
679
- getTherapeuticSensitivityShape(indicatorForLevelIcons, props.availableDataTypes),
680
- getTherapeuticResistanceShape(indicatorForLevelIcons, props.availableDataTypes),
681
- getDiagnosticShape(indicatorForLevelIcons, props.availableDataTypes),
682
- getPrognosticShape(indicatorForLevelIcons, props.availableDataTypes)));
683
- };
684
-
685
- var mainStyles = {"oncokb-card":"main-module_oncokb-card__32DzD","tab-content":"main-module_tab-content__8nUyf","tooltip-refs":"main-module_tooltip-refs__SpA4W","disclaimer":"main-module_disclaimer__3CLlM","blue-icon":"main-module_blue-icon__2Hs-v","footer":"main-module_footer__2dc-8","oncokb-logo":"main-module_oncokb-logo__3RVg7","title":"main-module_title__2kT-n","additional-info":"main-module_additional-info__1nXTm","biological-info":"main-module_biological-info__2efDC","ellipsis-text-wrapper":"main-module_ellipsis-text-wrapper__18dny"};
686
-
687
- var _a$4;
688
- var OtherBiomarkersQueryType;
689
- (function (OtherBiomarkersQueryType) {
690
- OtherBiomarkersQueryType["MSIH"] = "MSIH";
691
- OtherBiomarkersQueryType["TMBH"] = "TMBI";
692
- })(OtherBiomarkersQueryType || (OtherBiomarkersQueryType = {}));
693
- var OTHER_BIOMARKER_HUGO_SYMBOL = 'Other Biomarkers';
694
- var MSI_H_NAME = 'MSI-H';
695
- var TMB_H_NAME = 'TMB-H';
696
- var OTHER_BIOMARKER_NAME = (_a$4 = {},
697
- _a$4[OtherBiomarkersQueryType.MSIH] = MSI_H_NAME,
698
- _a$4[OtherBiomarkersQueryType.TMBH] = TMB_H_NAME,
699
- _a$4);
700
-
701
- var OncoKbCardTitle = function (props) {
702
- var titleContent = [];
703
- if (props.hugoSymbol &&
704
- props.hugoSymbol !== OTHER_BIOMARKER_HUGO_SYMBOL &&
705
- (!props.variant || !props.variant.includes(props.hugoSymbol))) {
706
- titleContent.push(props.hugoSymbol);
707
- }
708
- if (props.variant) {
709
- titleContent.push(props.variant);
710
- }
711
- if (props.tumorType) {
712
- if (titleContent.length > 0) {
713
- titleContent.push('in');
714
- }
715
- titleContent.push(props.tumorType);
716
- }
717
- return (React.createElement("div", { className: mainStyles['title'], "data-test": "oncokb-card-title" }, React.createElement("span", null, titleContent.join(' '))));
718
- };
719
-
720
- var levelStyles = {"levels":"level-module_levels__2ZL1B","levels-li":"level-module_levels-li__1tgCC"};
721
-
722
- var collapsibleStyles = {"collapsible-header":"collapsible-module_collapsible-header__3nZtU","levels-collapse":"collapsible-module_levels-collapse__2GBRW"};
723
-
724
- var OncoKbCardLevelsOfEvidenceDropdown = /** @class */ (function (_super) {
725
- __extends(OncoKbCardLevelsOfEvidenceDropdown, _super);
726
- function OncoKbCardLevelsOfEvidenceDropdown(props) {
727
- var _this = _super.call(this, props) || this;
728
- Object.defineProperty(_this, "levelsCollapsed", {
729
- enumerable: true,
730
- configurable: true,
731
- writable: true,
732
- value: true
733
- });
734
- makeObservable(_this);
735
- return _this;
736
- }
737
- Object.defineProperty(OncoKbCardLevelsOfEvidenceDropdown.prototype, "levelListItem", {
738
- enumerable: false,
739
- configurable: true,
740
- writable: true,
741
- value: function (level, levelDes) {
742
- return (React__default.createElement("li", { key: level, className: levelStyles['levels-li'] },
743
- React__default.createElement("i", { className: levelIconClassNames(level) }),
744
- levelDes));
745
- }
746
- });
747
- Object.defineProperty(OncoKbCardLevelsOfEvidenceDropdown.prototype, "generateLevelRows", {
748
- enumerable: false,
749
- configurable: true,
750
- writable: true,
751
- value: function () {
752
- var _this = this;
753
- var rows = [];
754
- this.props.levels.forEach(function (level) {
755
- rows.push(_this.levelListItem(level, _this.props.levelDes[level]));
756
- });
757
- return rows;
758
- }
759
- });
760
- Object.defineProperty(OncoKbCardLevelsOfEvidenceDropdown.prototype, "handleLevelCollapse", {
761
- enumerable: false,
762
- configurable: true,
763
- writable: true,
764
- value: function () {
765
- this.levelsCollapsed = !this.levelsCollapsed;
766
- }
767
- });
768
- Object.defineProperty(OncoKbCardLevelsOfEvidenceDropdown.prototype, "render", {
769
- enumerable: false,
770
- configurable: true,
771
- writable: true,
772
- value: function () {
773
- return (React__default.createElement("div", null,
774
- React__default.createElement("div", { "data-test": "oncokb-card-levels-of-evidence-dropdown-header", className: collapsibleStyles['collapsible-header'], onClick: this.handleLevelCollapse },
775
- "Levels of Evidence",
776
- React__default.createElement("span", { style: { float: 'right' } }, this.levelsCollapsed ? (React__default.createElement("i", { className: classnames('fa fa-chevron-down', mainStyles['blue-icon']) })) : (React__default.createElement("i", { className: classnames('fa fa-chevron-up', mainStyles['blue-icon']) })))),
777
- React__default.createElement(Collapse, { isOpened: !this.levelsCollapsed },
778
- React__default.createElement("div", { className: classnames(levelStyles.levels, collapsibleStyles['levels-collapse']) },
779
- React__default.createElement("ul", { style: {
780
- lineHeight: 8,
781
- padding: 0,
782
- } }, this.generateLevelRows())))));
783
- }
784
- });
785
- __decorate([
786
- observable
787
- ], OncoKbCardLevelsOfEvidenceDropdown.prototype, "levelsCollapsed", void 0);
788
- __decorate([
789
- action.bound
790
- ], OncoKbCardLevelsOfEvidenceDropdown.prototype, "handleLevelCollapse", null);
791
- OncoKbCardLevelsOfEvidenceDropdown = __decorate([
792
- observer
793
- ], OncoKbCardLevelsOfEvidenceDropdown);
794
- return OncoKbCardLevelsOfEvidenceDropdown;
795
- }(React__default.Component));
796
-
797
- var OncoKBSuggestAnnotationLinkout = /** @class */ (function (_super) {
798
- __extends(OncoKBSuggestAnnotationLinkout, _super);
799
- function OncoKBSuggestAnnotationLinkout() {
800
- return _super !== null && _super.apply(this, arguments) || this;
801
- }
802
- Object.defineProperty(OncoKBSuggestAnnotationLinkout.prototype, "render", {
803
- enumerable: false,
804
- configurable: true,
805
- writable: true,
806
- value: function () {
807
- return (React.createElement("div", null,
808
- React.createElement("span", null, "The gene is listed under "),
809
- React.createElement("a", { href: "https://www.oncokb.org/cancerGenes", target: "_blank" }, "OncoKB Cancer Gene List"),
810
- React.createElement("span", null, " but hasn't been curated yet. Please feel free to "),
811
- React.createElement("a", { target: "_blank", href: "mailto:contact@oncokb.org?subject=Annotation suggestion for " + this.props.gene + "&&body=Thank you for using OncoKB\u2122.%0APlease provide the following information for " + this.props.gene + " curation:%0A%0AEvidence:%0APMIDs:%0AAbstracts:", title: "suggest to annotate this gene" }, "suggest the team annotate the gene"),
812
- "."));
813
- }
814
- });
815
- return OncoKBSuggestAnnotationLinkout;
816
- }(React.Component));
817
-
818
- var levelTooltipContent = function (level) {
819
- return (React.createElement("div", { style: { maxWidth: '200px' } }, OncoKbHelper.LEVEL_DESC[level]));
820
- };
821
- var LevelIcon = function (props) {
822
- return (React.createElement(DefaultTooltip, { overlay: levelTooltipContent(props.level), placement: "left", disabled: !props.showDescription, trigger: ['hover', 'focus'], destroyTooltipOnHide: true },
823
- React.createElement("i", { className: levelIconClassNames(props.level) })));
824
- };
825
-
826
- var OncoKbHelper = /** @class */ (function () {
827
- function OncoKbHelper() {
828
- }
829
- Object.defineProperty(OncoKbHelper, "TX_LEVELS", {
830
- get: function () {
831
- return ['1', '2', '3A', '3B', '4', 'R1', 'R2'];
832
- },
833
- enumerable: false,
834
- configurable: true
835
- });
836
- Object.defineProperty(OncoKbHelper, "DX_LEVELS", {
837
- get: function () {
838
- return ['Dx1', 'Dx2', 'Dx3'];
839
- },
840
- enumerable: false,
841
- configurable: true
842
- });
843
- Object.defineProperty(OncoKbHelper, "PX_LEVELS", {
844
- get: function () {
845
- return ['Px1', 'Px2', 'Px3'];
846
- },
847
- enumerable: false,
848
- configurable: true
849
- });
850
- Object.defineProperty(OncoKbHelper, "LEVELS", {
851
- get: function () {
852
- return __spreadArrays(this.TX_LEVELS, this.DX_LEVELS, this.PX_LEVELS);
853
- },
854
- enumerable: false,
855
- configurable: true
856
- });
857
- Object.defineProperty(OncoKbHelper, "getLevelsDesc", {
858
- enumerable: false,
859
- configurable: true,
860
- writable: true,
861
- value: function (dataType) {
862
- switch (dataType) {
863
- case OncoKbCardDataType.TXS:
864
- case OncoKbCardDataType.TXR:
865
- return ___default.pick(this.LEVEL_DESC, this.TX_LEVELS);
866
- case OncoKbCardDataType.DX:
867
- return ___default.pick(this.LEVEL_DESC, this.DX_LEVELS);
868
- case OncoKbCardDataType.PX:
869
- return ___default.pick(this.LEVEL_DESC, this.PX_LEVELS);
870
- default:
871
- return {};
872
- }
873
- }
874
- });
875
- Object.defineProperty(OncoKbHelper, "LEVEL_DESC", {
876
- get: function () {
877
- return {
878
- '1': (React.createElement("span", null,
879
- React.createElement("b", null, "FDA-recognized"),
880
- " biomarker predictive of response to an",
881
- ' ',
882
- React.createElement("b", null, "FDA-approved drug"),
883
- " in this indication")),
884
- '2': (React.createElement("span", null,
885
- React.createElement("b", null, "Standard care"),
886
- " biomarker recommended by the NCCN or other expert panels predictive of response to an",
887
- ' ',
888
- React.createElement("b", null, "FDA-approved drug"),
889
- " in this indication")),
890
- '3A': (React.createElement("span", null,
891
- React.createElement("b", null, "Compelling clinical evidence"),
892
- " supports the biomarker as being predictive of response to a drug in this indication")),
893
- '3B': (React.createElement("span", null,
894
- React.createElement("b", null, "Standard care"),
895
- " or ",
896
- React.createElement("b", null, "investigational"),
897
- " biomarker",
898
- ' ',
899
- "predictive of response to an ",
900
- React.createElement("b", null, "FDA-approved"),
901
- " or",
902
- ' ',
903
- React.createElement("b", null, "investigational"),
904
- " drug in another indication")),
905
- '4': (React.createElement("span", null,
906
- React.createElement("b", null, "Compelling biological evidence"),
907
- " supports the biomarker as being predictive of response to a drug")),
908
- R1: (React.createElement("span", null,
909
- React.createElement("b", null, "Standard care"),
910
- " biomarker predictive of",
911
- ' ',
912
- React.createElement("b", null, "resistance"),
913
- " to an ",
914
- React.createElement("b", null, "FDA-approved"),
915
- " drug",
916
- ' ',
917
- React.createElement("b", null, "in this indication"))),
918
- R2: (React.createElement("span", null,
919
- React.createElement("b", null, "Compelling clinical evidence"),
920
- " supports the biomarker as being predictive of ",
921
- React.createElement("b", null, "resistance"),
922
- " to a drug")),
923
- Dx1: (React.createElement("span", null,
924
- React.createElement("b", null, "FDA and/or professional guideline-recognized"),
925
- ' ',
926
- "biomarker required for diagnosis in this indication")),
927
- Dx2: (React.createElement("span", null,
928
- React.createElement("b", null, "FDA and/or professional guideline-recognized"),
929
- ' ',
930
- "biomarker that supports diagnosis in this indication")),
931
- Dx3: (React.createElement("span", null,
932
- "Biomarker that ",
933
- React.createElement("b", null, "may assist disease diagnosis"),
934
- " in this indication based on ",
935
- React.createElement("b", null, "clinical evidence"))),
936
- Px1: (React.createElement("span", null,
937
- React.createElement("b", null, "FDA and/or professional guideline-recognized"),
938
- ' ',
939
- "biomarker prognostic in this indication based on",
940
- ' ',
941
- React.createElement("b", null, "well-powered studie(s)"))),
942
- Px2: (React.createElement("span", null,
943
- React.createElement("b", null, "FDA and/or professional guideline-recognized"),
944
- ' ',
945
- "biomarker prognostic in this indication based on",
946
- ' ',
947
- React.createElement("b", null, "a single or multiple small studies"))),
948
- Px3: (React.createElement("span", null,
949
- "Biomarker is prognostic in this indication based on",
950
- ' ',
951
- React.createElement("b", null, "clinical evidence"),
952
- " in ",
953
- React.createElement("b", null, "well-powered studies"))),
954
- };
955
- },
956
- enumerable: false,
957
- configurable: true
958
- });
959
- Object.defineProperty(OncoKbHelper, "getDefaultColumnDefinition", {
960
- enumerable: false,
961
- configurable: true,
962
- writable: true,
963
- value: function (columnKey) {
964
- switch (columnKey) {
965
- case 'level':
966
- return {
967
- id: 'level',
968
- Header: React.createElement("div", { style: { textAlign: 'center' } }, "Level"),
969
- accessor: 'level',
970
- maxWidth: 45,
971
- sortMethod: function (a, b) {
972
- return defaultSortMethod(LEVELS.all.indexOf(normalizeLevel(a) || ''), LEVELS.all.indexOf(normalizeLevel(b) || ''));
973
- },
974
- Cell: function (props) {
975
- var normalizedLevel = normalizeLevel(props.value) || '';
976
- return (React.createElement(LevelIcon, { level: normalizedLevel, showDescription: true }));
977
- },
978
- };
979
- case 'alterations':
980
- return {
981
- id: 'alterations',
982
- Header: React.createElement("span", null, "Alteration(s)"),
983
- accessor: 'alterations',
984
- minWidth: 80,
985
- sortMethod: function (a, b) {
986
- return defaultArraySortMethod(a, b);
987
- },
988
- };
989
- }
990
- }
991
- });
992
- Object.defineProperty(OncoKbHelper, "getAlterationsColumnCell", {
993
- enumerable: true,
994
- configurable: true,
995
- writable: true,
996
- value: function (alterations, variant) {
997
- var mergedAlteration = mergeAlterations(alterations);
998
- var content = React.createElement("span", null, mergedAlteration);
999
- if (alterations.length > 5) {
1000
- var lowerCasedQueryVariant_1 = variant.toLowerCase();
1001
- var matchedAlteration = ___default.find(alterations, function (alteration) {
1002
- return alteration.toLocaleLowerCase() === lowerCasedQueryVariant_1;
1003
- });
1004
- if (!matchedAlteration) {
1005
- matchedAlteration = getPositionalVariant(variant);
1006
- }
1007
- var pickedAlteration = matchedAlteration === undefined
1008
- ? alterations[0]
1009
- : matchedAlteration;
1010
- content = (React.createElement("span", null,
1011
- pickedAlteration,
1012
- " and",
1013
- ' ',
1014
- React.createElement(DefaultTooltip, { overlay: React.createElement("div", { style: { maxWidth: '400px' } }, mergedAlteration), placement: "right", destroyTooltipOnHide: true },
1015
- React.createElement("a", null,
1016
- alterations.length - 1,
1017
- " other alterations"))));
1018
- }
1019
- return (React.createElement("div", { style: { whiteSpace: 'normal', lineHeight: '1rem' } }, content));
1020
- }
1021
- });
1022
- return OncoKbHelper;
1023
- }());
1024
-
1025
- var styles$a = {"list-group-item":"listGroupItem-module_list-group-item__1Y5zb","list-group-item-title":"listGroupItem-module_list-group-item-title__3diZg","list-group-item-content":"listGroupItem-module_list-group-item-content__Sspft","no-style-ul":"listGroupItem-module_no-style-ul__2Rf8i"};
1026
-
1027
- var ArticleAbstractItem = /** @class */ (function (_super) {
1028
- __extends(ArticleAbstractItem, _super);
1029
- function ArticleAbstractItem() {
1030
- return _super !== null && _super.apply(this, arguments) || this;
1031
- }
1032
- Object.defineProperty(ArticleAbstractItem.prototype, "render", {
1033
- enumerable: false,
1034
- configurable: true,
1035
- writable: true,
1036
- value: function () {
1037
- var content = React.createElement("span", null, this.props.abstract);
1038
- if (this.props.link) {
1039
- content = (React.createElement("a", { href: this.props.link, target: "_blank" }, content));
1040
- }
1041
- return (React.createElement("li", { key: "abstract_" + this.props.abstract, className: styles$a['list-group-item'] },
1042
- React.createElement("span", { className: styles$a['list-group-item-title'] }, content)));
1043
- }
1044
- });
1045
- return ArticleAbstractItem;
1046
- }(React.Component));
1047
-
1048
- var PmidItem = /** @class */ (function (_super) {
1049
- __extends(PmidItem, _super);
1050
- function PmidItem() {
1051
- return _super !== null && _super.apply(this, arguments) || this;
1052
- }
1053
- Object.defineProperty(PmidItem.prototype, "render", {
1054
- enumerable: false,
1055
- configurable: true,
1056
- writable: true,
1057
- value: function () {
1058
- return (React.createElement("li", { key: this.props.pmid, className: styles$a['list-group-item'] },
1059
- React.createElement("a", { className: styles$a['list-group-item-title'], href: getNCBIlink("/pubmed/" + this.props.pmid), target: "_blank" },
1060
- React.createElement("span", null, trimOffHtmlTagEntities(this.props.title))),
1061
- React.createElement("div", { className: styles$a['list-group-item-content'] },
1062
- React.createElement("span", null,
1063
- this.props.author,
1064
- " ",
1065
- this.props.source,
1066
- ".",
1067
- ' ',
1068
- this.props.date),
1069
- React.createElement("span", null,
1070
- "PMID: ",
1071
- this.props.pmid))));
1072
- }
1073
- });
1074
- return PmidItem;
1075
- }(React.Component));
1076
-
1077
- var ReferenceList = /** @class */ (function (_super) {
1078
- __extends(ReferenceList, _super);
1079
- function ReferenceList() {
1080
- return _super !== null && _super.apply(this, arguments) || this;
1081
- }
1082
- Object.defineProperty(ReferenceList.prototype, "isLoading", {
1083
- get: function () {
1084
- var _this = this;
1085
- if (this.props.pmidData && this.props.pmids) {
1086
- var loadingItems = ___default.filter(this.props.pmids, function (uid) {
1087
- var cacheData = _this.props.pmidData[uid.toString()];
1088
- // when the cacheData is undefined, the pmidData will fetch the uid info later which eventually results to an object with a status
1089
- return !cacheData || cacheData.status === 'pending';
1090
- });
1091
- return loadingItems.length > 0;
1092
- }
1093
- else {
1094
- return false;
1095
- }
1096
- },
1097
- enumerable: false,
1098
- configurable: true
1099
- });
1100
- Object.defineProperty(ReferenceList.prototype, "render", {
1101
- enumerable: false,
1102
- configurable: true,
1103
- writable: true,
1104
- value: function () {
1105
- var _this = this;
1106
- if (this.isLoading) {
1107
- return React.createElement("i", { className: "fa fa-spinner fa-pulse fa-2x" });
1108
- }
1109
- var list = [];
1110
- if (this.props.pmidData) {
1111
- this.props.pmids.forEach(function (uid) {
1112
- var cacheData = _this.props.pmidData[uid.toString()];
1113
- var articleContent = cacheData ? cacheData.data : null;
1114
- if (articleContent) {
1115
- list.push(React.createElement(PmidItem, { title: articleContent.title, author: ___default.isArray(articleContent.authors) &&
1116
- articleContent.authors.length > 0
1117
- ? articleContent.authors[0].name + ' et al.'
1118
- : 'Unknown', source: articleContent.source, date: new Date(articleContent.pubdate)
1119
- .getFullYear()
1120
- .toString(), pmid: articleContent.uid }));
1121
- }
1122
- });
1123
- }
1124
- this.props.abstracts.forEach(function (abstract) {
1125
- list.push(React.createElement(ArticleAbstractItem, { abstract: abstract.abstract, link: abstract.link }));
1126
- });
1127
- return React.createElement("ul", { className: styles$a['no-style-ul'] }, list);
1128
- }
1129
- });
1130
- __decorate([
1131
- computed
1132
- ], ReferenceList.prototype, "isLoading", null);
1133
- ReferenceList = __decorate([
1134
- observer
1135
- ], ReferenceList);
1136
- return ReferenceList;
1137
- }(React.Component));
1138
-
1139
- var RefComponent = /** @class */ (function (_super) {
1140
- __extends(RefComponent, _super);
1141
- function RefComponent() {
1142
- return _super !== null && _super.apply(this, arguments) || this;
1143
- }
1144
- Object.defineProperty(RefComponent.prototype, "render", {
1145
- enumerable: false,
1146
- configurable: true,
1147
- writable: true,
1148
- value: function () {
1149
- var _this = this;
1150
- var parts = this.props.content.split(/pmid|nct/i);
1151
- if (parts.length < 2) {
1152
- return React.createElement("span", null, this.props.content);
1153
- }
1154
- var ids = parts[1].match(/[0-9]+/g);
1155
- if (!ids) {
1156
- return React.createElement("span", null, this.props.content);
1157
- }
1158
- var prefix;
1159
- if (this.props.content.toLowerCase().indexOf('pmid') >= 0) {
1160
- prefix = 'PMID: ';
1161
- }
1162
- else if (this.props.content.toLowerCase().indexOf('nct') >= 0) {
1163
- prefix = 'NCT';
1164
- }
1165
- var link;
1166
- if (prefix) {
1167
- link = (React.createElement("a", { target: "_blank", href: getNCBIlink("/pubmed/" + ids.join(',')) }, "" + prefix + ids.join(',')));
1168
- }
1169
- if (this.props.componentType === 'tooltip') {
1170
- var tooltipContent = function () { return (React.createElement("div", { className: mainStyles['tooltip-refs'] },
1171
- React.createElement(ReferenceList, { pmids: ids.map(function (id) { return parseInt(id); }), pmidData: _this.props.pmidData, abstracts: [] }))); };
1172
- return (React.createElement("span", { key: this.props.content },
1173
- parts[0],
1174
- React.createElement(DefaultTooltip, { overlay: tooltipContent, placement: "right", trigger: ['hover', 'focus'], destroyTooltipOnHide: true },
1175
- React.createElement("i", { className: "fa fa-book", style: { color: 'black' } })), ")"));
1176
- }
1177
- else if (link) {
1178
- return (React.createElement("span", { key: this.props.content },
1179
- parts[0],
1180
- link, ")"));
1181
- }
1182
- else {
1183
- return React.createElement("span", null, this.props.content);
1184
- }
1185
- }
1186
- });
1187
- return RefComponent;
1188
- }(React.Component));
1189
-
1190
- var SummaryWithRefs = /** @class */ (function (_super) {
1191
- __extends(SummaryWithRefs, _super);
1192
- function SummaryWithRefs() {
1193
- return _super !== null && _super.apply(this, arguments) || this;
1194
- }
1195
- Object.defineProperty(SummaryWithRefs.prototype, "render", {
1196
- enumerable: false,
1197
- configurable: true,
1198
- writable: true,
1199
- value: function () {
1200
- var _this = this;
1201
- if (!this.props.content) {
1202
- return React.createElement("span", null);
1203
- }
1204
- var content = [];
1205
- // example delimiters:
1206
- // (PMID: 11900253)
1207
- // (PMID: 11753428, 16007150, 21467160)
1208
- // (cBioPortal, MSKCC, May 2015, PMID: 24718888)
1209
- // (NCT1234567)
1210
- var regex = /(\(.*?[PMID|NCT].*?\))/i;
1211
- // split the string with delimiters included
1212
- var parts = this.props.content.split(regex);
1213
- parts.forEach(function (part) {
1214
- // if delimiter convert to a JSX component
1215
- if (part.match(regex)) {
1216
- content.push(React.createElement(RefComponent, { pmidData: _this.props.pmidData, componentType: _this.props.type, content: part }));
1217
- }
1218
- else {
1219
- content.push(React.createElement("span", null, part));
1220
- }
1221
- });
1222
- return React.createElement("span", null, content);
1223
- }
1224
- });
1225
- return SummaryWithRefs;
1226
- }(React.Component));
1227
-
1228
- var EvidenceReferenceContent = function (props) {
1229
- return (React__default.createElement(If, { condition: !!props.description },
1230
- React__default.createElement(Then, null,
1231
- React__default.createElement(SummaryWithRefs, { content: props.description, type: 'tooltip', pmidData: props.pmidData })),
1232
- React__default.createElement(Else, null,
1233
- React__default.createElement(If, { condition: props.citations != undefined &&
1234
- (props.citations.abstracts.length > 0 ||
1235
- props.citations.pmids.length > 0) },
1236
- React__default.createElement(Then, null,
1237
- React__default.createElement(ReferenceList, { pmidData: props.pmidData, pmids: props.citations.pmids.map(function (pmid) {
1238
- return Number(pmid);
1239
- }), abstracts: props.citations.abstracts })),
1240
- React__default.createElement(Else, null, props.noInfoDisclaimer
1241
- ? props.noInfoDisclaimer
1242
- : 'Information is not available.')))));
1243
- };
1244
-
1245
- var OncoKbTreatmentTable = /** @class */ (function (_super) {
1246
- __extends(OncoKbTreatmentTable, _super);
1247
- function OncoKbTreatmentTable() {
1248
- var _this = _super !== null && _super.apply(this, arguments) || this;
1249
- Object.defineProperty(_this, "levelTooltipContent", {
1250
- enumerable: true,
1251
- configurable: true,
1252
- writable: true,
1253
- value: function (level) {
1254
- return (React.createElement("div", { style: { maxWidth: '200px' } }, OncoKbHelper.LEVEL_DESC[level]));
1255
- }
1256
- });
1257
- Object.defineProperty(_this, "treatmentTooltipContent", {
1258
- enumerable: true,
1259
- configurable: true,
1260
- writable: true,
1261
- value: function (abstracts, pmids, pmidData, description) {
1262
- return abstracts.length > 0 || pmids.length > 0 ? (function () { return (React.createElement("div", { className: mainStyles['tooltip-refs'] },
1263
- React.createElement(EvidenceReferenceContent, { description: description, citations: {
1264
- pmids: pmids.map(function (pmid) { return pmid.toString(); }),
1265
- abstracts: abstracts,
1266
- }, pmidData: pmidData, noInfoDisclaimer: 'Mutation effect information is not available.' }))); }) : (React.createElement("span", null));
1267
- }
1268
- });
1269
- Object.defineProperty(_this, "columns", {
1270
- enumerable: true,
1271
- configurable: true,
1272
- writable: true,
1273
- value: [
1274
- OncoKbHelper.getDefaultColumnDefinition('level'),
1275
- __assign(__assign({}, OncoKbHelper.getDefaultColumnDefinition('alterations')), { Cell: function (props) {
1276
- return OncoKbHelper.getAlterationsColumnCell(props.value, _this.props.variant);
1277
- } }),
1278
- {
1279
- id: 'treatment',
1280
- Header: React.createElement("span", null, "Drug(s)"),
1281
- accessor: 'drugs',
1282
- Cell: function (props) { return (React.createElement("div", { style: { whiteSpace: 'normal', lineHeight: '1rem' } }, props.original.drugs
1283
- .map(function (drug) { return drug.drugName; })
1284
- .join(' + '))); },
1285
- },
1286
- {
1287
- id: 'cancerType',
1288
- Header: (React.createElement("span", null,
1289
- "Level-associated",
1290
- React.createElement("br", null),
1291
- "cancer type(s)")),
1292
- accessor: 'levelAssociatedCancerType',
1293
- minWidth: 120,
1294
- Cell: function (props) { return (React.createElement("div", { style: { whiteSpace: 'normal', lineHeight: '1rem' } }, getTumorTypeNameWithExclusionInfo(props.original.levelAssociatedCancerType, props.original.levelExcludedCancerTypes))); },
1295
- },
1296
- {
1297
- id: 'referenceList',
1298
- Header: React.createElement("span", null),
1299
- sortable: false,
1300
- maxWidth: 25,
1301
- Cell: function (props) {
1302
- return (props.original.abstracts.length > 0 ||
1303
- props.original.pmids.length > 0) && (React.createElement(DefaultTooltip, { overlay: _this.treatmentTooltipContent(props.original.abstracts, props.original.pmids.map(function (pmid) { return Number(pmid); }), _this.props.pmidData, props.original.description), placement: "right", trigger: ['hover', 'focus'], destroyTooltipOnHide: true },
1304
- React.createElement("i", { className: "fa fa-book" })));
1305
- },
1306
- },
1307
- ]
1308
- });
1309
- return _this;
1310
- }
1311
- Object.defineProperty(OncoKbTreatmentTable.prototype, "render", {
1312
- enumerable: false,
1313
- configurable: true,
1314
- writable: true,
1315
- value: function () {
1316
- return (React.createElement("div", { className: "oncokb-treatment-table" },
1317
- React.createElement(ReactTable, { data: this.props.treatments, columns: this.columns, showPagination: false, pageSize: this.props.treatments.length, className: "-striped -highlight" })));
1318
- }
1319
- });
1320
- OncoKbTreatmentTable = __decorate([
1321
- observer
1322
- ], OncoKbTreatmentTable);
1323
- return OncoKbTreatmentTable;
1324
- }(React.Component));
1325
-
1326
- var BiologicalContent = function (props) {
1327
- return (React__default.createElement(EvidenceReferenceContent, { description: props.biologicalSummary, citations: props.mutationEffectCitations, pmidData: props.pmidData, noInfoDisclaimer: 'Mutation effect information is not available.' }));
1328
- };
1329
-
1330
- var ImplicationContent = function (props) {
1331
- var columns = [
1332
- __assign(__assign({}, OncoKbHelper.getDefaultColumnDefinition('level')), { accessor: 'levelOfEvidence', maxWidth: 100 }),
1333
- __assign(__assign({}, OncoKbHelper.getDefaultColumnDefinition('alterations')), { Cell: function (cellProps) {
1334
- return OncoKbHelper.getAlterationsColumnCell(cellProps.value, props.variant);
1335
- } }),
1336
- {
1337
- id: 'referenceList',
1338
- Header: React.createElement("span", null),
1339
- sortable: false,
1340
- maxWidth: 50,
1341
- Cell: function (cellProps) { return (React.createElement(DefaultTooltip, { overlay: function () { return (React.createElement("div", { className: mainStyles['tooltip-refs'] },
1342
- React.createElement(EvidenceReferenceContent, { description: cellProps.original.description, citations: {
1343
- pmids: cellProps.original.pmids,
1344
- abstracts: cellProps.original.abstracts,
1345
- }, pmidData: props.pmidData, noInfoDisclaimer: 'Mutation effect information is not available.' }))); }, placement: "right", trigger: ['hover', 'focus'], destroyTooltipOnHide: true },
1346
- React.createElement("i", { className: "fa fa-book" }))); },
1347
- },
1348
- ];
1349
- return (React.createElement("div", null,
1350
- React.createElement("p", null, props.summary),
1351
- React.createElement("div", null,
1352
- React.createElement(ReactTable, { data: props.implications, columns: columns, showPagination: false, pageSize: props.implications.length, className: "-striped -highlight" }))));
1353
- };
1354
-
1355
- var tabsStyles = {"tabs-wrapper":"tabs-module_tabs-wrapper__XKjzo","tabs":"tabs-module_tabs__2I3mz","tab":"tabs-module_tab__3MoDA","tab-pane":"tabs-module_tab-pane__sGd85","tab-title-a":"tabs-module_tab-title-a__2WTNA","tab-title":"tabs-module_tab-title__2z9-D","tab-subtitle":"tabs-module_tab-subtitle__1P8B_"};
1356
-
1357
- var OncogenicIcon = function (props) {
1358
- return (React.createElement(DefaultTooltip, { overlay: React.createElement("span", null, props.oncogenicity), placement: "left", trigger: ['hover', 'focus'], destroyTooltipOnHide: true },
1359
- React.createElement("i", { className: oncogenicityIconClassNames(props.oncogenicity) })));
1360
- };
1361
-
1362
- var _a$3;
1363
- var OncoKbMedicalDisclaimer = (React__default.createElement("p", { className: mainStyles.disclaimer }, "The information above is intended for research purposes only and should not be used as a substitute for professional diagnosis and treatment."));
1364
- var ONCOKB_DATA_ACCESS_PAGE_LINK = 'https://docs.cbioportal.org/2.4-integration-with-other-webservices/oncokb-data-access';
1365
- var publicInstanceDisclaimerOverLay = (React__default.createElement("div", null,
1366
- React__default.createElement("p", null,
1367
- "This cBioPortal instance is not linked to an OncoKB\u2122 license, and therefore some OncoKB content is not available including therapeutic, diagnostic and prognostic implications. To obtain a license, please follow",
1368
- ' ',
1369
- React__default.createElement("a", { href: ONCOKB_DATA_ACCESS_PAGE_LINK, target: '_blank' }, "these instructions"),
1370
- "."),
1371
- OncoKbMedicalDisclaimer));
1372
- var DATA_TYPE_TO_TITLE = (_a$3 = {},
1373
- _a$3[OncoKbCardDataType.BIOLOGICAL] = 'Biological Effect',
1374
- _a$3[OncoKbCardDataType.TXS] = 'Therapeutic Implications',
1375
- _a$3[OncoKbCardDataType.TXR] = 'Therapeutic Implications',
1376
- _a$3[OncoKbCardDataType.DX] = 'Diagnostic Implications',
1377
- _a$3[OncoKbCardDataType.PX] = 'Prognostic Implications',
1378
- _a$3);
1379
- var TabContentWrapper = function (props) {
1380
- return React__default.createElement("div", { className: mainStyles['tab-content'] }, props.children);
1381
- };
1382
- var TabTitle = function (props) {
1383
- var _a;
1384
- var title = DATA_TYPE_TO_TITLE[props.type];
1385
- var icon = props.displayHighestLevelInTabTitle ? (props.type === OncoKbCardDataType.BIOLOGICAL ? (React__default.createElement(OncogenicIcon, { oncogenicity: ((_a = props.indicator) === null || _a === void 0 ? void 0 : _a.oncogenic) || '', showDescription: true })) : (React__default.createElement(LevelIcon, { level: normalizeLevel(calcHighestIndicatorLevel(props.type, props.indicator)) || '', showDescription: true }))) : null;
1386
- return icon ? (React__default.createElement("span", { style: { display: 'flex' } },
1387
- icon,
1388
- " ",
1389
- title)) : (React__default.createElement("span", null, title));
1390
- };
1391
- var OncoKbCardBody = function (props) {
1392
- var defaultTabActiveKey;
1393
- // Do not assign a default key if the data type specified through the property does not have any content
1394
- // When the content is not available, we do not render the tab.
1395
- if (dataTypeHasContent(props.type)) {
1396
- defaultTabActiveKey = props.type;
1397
- // Both TXS and TXR are therapeutic implication data type which will be shown in the same tab. We use TXS as the tab key when rendering
1398
- if ([OncoKbCardDataType.TXS, OncoKbCardDataType.TXR].includes(defaultTabActiveKey)) {
1399
- defaultTabActiveKey = OncoKbCardDataType.TXS;
1400
- }
1401
- }
1402
- var _a = useState(defaultTabActiveKey), activateTabKey = _a[0], setActivateTabKey = _a[1];
1403
- var _b = useState(getLevelsOfEvidence(activateTabKey)), levelsOfEvidence = _b[0], setLevelsOfEvidence = _b[1];
1404
- function updateActivateTabKey(newKey) {
1405
- setActivateTabKey(newKey);
1406
- setLevelsOfEvidence(getLevelsOfEvidence(newKey));
1407
- }
1408
- function hasMutationEffectInfo(mutationEffect) {
1409
- return (mutationEffect &&
1410
- (mutationEffect.description ||
1411
- mutationEffect.citations.abstracts.length > 0 ||
1412
- mutationEffect.citations.pmids.length > 0));
1413
- }
1414
- function dataTypeHasContent(type) {
1415
- var _a, _b, _c, _d, _e;
1416
- switch (type) {
1417
- case OncoKbCardDataType.BIOLOGICAL:
1418
- return hasMutationEffectInfo((_a = props.indicator) === null || _a === void 0 ? void 0 : _a.mutationEffect);
1419
- case OncoKbCardDataType.TXS:
1420
- case OncoKbCardDataType.TXR:
1421
- return (!!((_b = props.indicator) === null || _b === void 0 ? void 0 : _b.highestSensitiveLevel) ||
1422
- !!((_c = props.indicator) === null || _c === void 0 ? void 0 : _c.highestResistanceLevel));
1423
- case OncoKbCardDataType.DX:
1424
- return !!((_d = props.indicator) === null || _d === void 0 ? void 0 : _d.highestDiagnosticImplicationLevel);
1425
- case OncoKbCardDataType.PX:
1426
- return !!((_e = props.indicator) === null || _e === void 0 ? void 0 : _e.highestPrognosticImplicationLevel);
1427
- default:
1428
- return false;
1429
- }
1430
- }
1431
- function getBody(type, indicator) {
1432
- var tabs = [];
1433
- if (dataTypeHasContent(OncoKbCardDataType.BIOLOGICAL)) {
1434
- tabs.push(React__default.createElement(Tab, { eventKey: OncoKbCardDataType.BIOLOGICAL, title: React__default.createElement(TabTitle, { type: OncoKbCardDataType.BIOLOGICAL, indicator: props.indicator, displayHighestLevelInTabTitle: props.displayHighestLevelInTabTitle }) },
1435
- React__default.createElement(TabContentWrapper, null,
1436
- React__default.createElement(BiologicalContent, { mutationEffectCitations: indicator.mutationEffect.citations, biologicalSummary: indicator.mutationEffect.description, pmidData: props.pmidData }))));
1437
- }
1438
- if (!props.usingPublicOncoKbInstance &&
1439
- dataTypeHasContent(OncoKbCardDataType.TXS)) {
1440
- tabs.push(React__default.createElement(Tab, { eventKey: OncoKbCardDataType.TXS, title: React__default.createElement(TabTitle, { type: OncoKbCardDataType.TXS, indicator: props.indicator, displayHighestLevelInTabTitle: props.displayHighestLevelInTabTitle }) },
1441
- React__default.createElement(TabContentWrapper, null,
1442
- React__default.createElement("div", { style: {
1443
- marginTop: 10,
1444
- } },
1445
- React__default.createElement(OncoKbTreatmentTable, { variant: indicator.query.alteration || '', pmidData: props.pmidData, treatments: indicator.treatments })))));
1446
- }
1447
- if (!props.usingPublicOncoKbInstance &&
1448
- dataTypeHasContent(OncoKbCardDataType.DX)) {
1449
- tabs.push(React__default.createElement(Tab, { eventKey: OncoKbCardDataType.DX, title: React__default.createElement(TabTitle, { type: OncoKbCardDataType.DX, indicator: props.indicator, displayHighestLevelInTabTitle: props.displayHighestLevelInTabTitle }) },
1450
- React__default.createElement(TabContentWrapper, null,
1451
- React__default.createElement(ImplicationContent, { variant: indicator.query.alteration, summary: indicator.diagnosticSummary, implications: indicator.diagnosticImplications, pmidData: props.pmidData }))));
1452
- }
1453
- if (!props.usingPublicOncoKbInstance &&
1454
- dataTypeHasContent(OncoKbCardDataType.PX)) {
1455
- tabs.push(React__default.createElement(Tab, { eventKey: OncoKbCardDataType.PX, title: React__default.createElement(TabTitle, { type: OncoKbCardDataType.PX, indicator: props.indicator, displayHighestLevelInTabTitle: props.displayHighestLevelInTabTitle }) },
1456
- React__default.createElement(TabContentWrapper, null,
1457
- React__default.createElement(ImplicationContent, { variant: indicator.query.alteration, summary: indicator.prognosticSummary, implications: indicator.prognosticImplications, pmidData: props.pmidData }))));
1458
- }
1459
- return (React__default.createElement("div", { style: { padding: '10px' } },
1460
- React__default.createElement("p", null, indicator.geneSummary),
1461
- React__default.createElement("p", null, indicator.variantSummary),
1462
- props.usingPublicOncoKbInstance ? (React__default.createElement("p", { className: mainStyles.disclaimer },
1463
- "Therapeutic, diagnostic and prognostic implications are not available in this instance of cBioPortal.",
1464
- ' ',
1465
- React__default.createElement(DefaultTooltip, { overlayStyle: {
1466
- maxWidth: 400,
1467
- }, overlay: publicInstanceDisclaimerOverLay },
1468
- React__default.createElement("i", { className: 'fa fa-info-circle' })))) : (React__default.createElement("p", null, indicator.tumorTypeSummary)),
1469
- tabs.length > 0 && (React__default.createElement(Tabs, { defaultActiveKey: defaultTabActiveKey, className: classnames('oncokb-card-tabs'), onSelect: updateActivateTabKey }, tabs))));
1470
- }
1471
- function getLevelsOfEvidence(activateTabKey) {
1472
- switch (activateTabKey) {
1473
- case OncoKbCardDataType.TXS:
1474
- case OncoKbCardDataType.TXR:
1475
- return {
1476
- levels: OncoKbHelper.TX_LEVELS,
1477
- levelDes: OncoKbHelper.getLevelsDesc(activateTabKey),
1478
- };
1479
- case OncoKbCardDataType.DX:
1480
- return {
1481
- levels: OncoKbHelper.DX_LEVELS,
1482
- levelDes: OncoKbHelper.getLevelsDesc(OncoKbCardDataType.DX),
1483
- };
1484
- case OncoKbCardDataType.PX:
1485
- return {
1486
- levels: OncoKbHelper.PX_LEVELS,
1487
- levelDes: OncoKbHelper.getLevelsDesc(OncoKbCardDataType.PX),
1488
- };
1489
- default:
1490
- return {
1491
- levels: [],
1492
- levelDes: {},
1493
- };
1494
- }
1495
- }
1496
- var UNKNOWN = 'Unknown';
1497
- function getOncogenicity() {
1498
- var _a;
1499
- var oncogenicity = (_a = props.indicator) === null || _a === void 0 ? void 0 : _a.oncogenic;
1500
- if (!oncogenicity || oncogenicity === UNKNOWN) {
1501
- oncogenicity = 'Unknown Oncogenic Effect';
1502
- }
1503
- return oncogenicity;
1504
- }
1505
- function getMutationEffect() {
1506
- var _a;
1507
- var mutationEffect = (_a = props.indicator) === null || _a === void 0 ? void 0 : _a.mutationEffect.knownEffect;
1508
- if (!mutationEffect || mutationEffect === UNKNOWN) {
1509
- mutationEffect = 'Unknown Biological Effect';
1510
- }
1511
- return mutationEffect;
1512
- }
1513
- return (React__default.createElement(React__default.Fragment, null,
1514
- !props.geneNotExist && (React__default.createElement("div", null,
1515
- props.indicator && (React__default.createElement(React__default.Fragment, null,
1516
- React__default.createElement("div", { className: mainStyles['biological-info'] },
1517
- React__default.createElement("div", { style: { flexGrow: 1 } }, getOncogenicity()),
1518
- React__default.createElement("div", { style: { flexGrow: 1 } }, getMutationEffect())),
1519
- React__default.createElement("div", { className: mainStyles['oncokb-card'], "data-test": "oncokb-card" }, getBody(props.type, props.indicator)))),
1520
- !props.usingPublicOncoKbInstance && (React__default.createElement(React__default.Fragment, null,
1521
- React__default.createElement("div", { className: tabsStyles['tab-pane'] }, OncoKbMedicalDisclaimer),
1522
- levelsOfEvidence &&
1523
- levelsOfEvidence.levels.length > 0 && (React__default.createElement(OncoKbCardLevelsOfEvidenceDropdown, { levels: levelsOfEvidence.levels, levelDes: levelsOfEvidence.levelDes })))))),
1524
- !props.isCancerGene && (React__default.createElement("div", { className: mainStyles['additional-info'], "data-test": 'oncokb-card-additional-info' }, "There is currently no information about this gene in OncoKB.")),
1525
- props.geneNotExist && props.isCancerGene && (React__default.createElement("div", { className: mainStyles['additional-info'] },
1526
- React__default.createElement(OncoKBSuggestAnnotationLinkout, { gene: props.hugoSymbol })))));
1527
- };
1528
-
1529
- var OncoKbCard = /** @class */ (function (_super) {
1530
- __extends(OncoKbCard, _super);
1531
- function OncoKbCard(props) {
1532
- var _this = _super.call(this, props) || this;
1533
- makeObservable(_this);
1534
- return _this;
1535
- }
1536
- Object.defineProperty(OncoKbCard.prototype, "oncokbLinkOut", {
1537
- get: function () {
1538
- var link = undefined;
1539
- if (this.props.hugoSymbol) {
1540
- link = "https://www.oncokb.org/gene/" + this.props.hugoSymbol;
1541
- if (!this.props.geneNotExist &&
1542
- this.props.indicator &&
1543
- this.props.indicator.variantExist) {
1544
- link = link + "/" + this.props.indicator.query.alteration;
1545
- }
1546
- }
1547
- return link;
1548
- },
1549
- enumerable: false,
1550
- configurable: true
1551
- });
1552
- Object.defineProperty(OncoKbCard.prototype, "render", {
1553
- enumerable: false,
1554
- configurable: true,
1555
- writable: true,
1556
- value: function () {
1557
- var oncokbLogo = (React.createElement("img", { src: oncoKbLogoImgSrc, className: mainStyles['oncokb-logo'], alt: "OncoKB\u2122" }));
1558
- return (React.createElement("div", { className: mainStyles['oncokb-card'], "data-test": "oncokb-card" },
1559
- React.createElement("div", null,
1560
- !this.props.geneNotExist && this.props.indicator && (React.createElement(OncoKbCardTitle, { hugoSymbol: this.props.indicator.query.hugoSymbol, variant: this.props.indicator.query.alteration, tumorType: this.props.indicator
1561
- ? this.props.indicator.query.tumorType
1562
- : '' })),
1563
- React.createElement(OncoKbCardBody, { type: this.props.type, indicator: this.props.indicator, geneNotExist: this.props.geneNotExist, isCancerGene: this.props.isCancerGene, hugoSymbol: this.props.hugoSymbol, pmidData: this.props.pmidData, usingPublicOncoKbInstance: this.props.usingPublicOncoKbInstance, displayHighestLevelInTabTitle: this.props.displayHighestLevelInTabTitle }),
1564
- React.createElement("div", { className: mainStyles.footer },
1565
- this.oncokbLinkOut === undefined ? ({ oncokbLogo: oncokbLogo }) : (React.createElement("a", { href: "" + this.oncokbLinkOut, target: "_blank", className: mainStyles['oncokb-logo'] }, oncokbLogo)),
1566
- this.props.handleFeedbackOpen && (React.createElement("span", null,
1567
- React.createElement("button", { className: "btn btn-default btn-xs", onClick: this.props.handleFeedbackOpen }, "Feedback")))))));
1568
- }
1569
- });
1570
- __decorate([
1571
- computed
1572
- ], OncoKbCard.prototype, "oncokbLinkOut", null);
1573
- OncoKbCard = __decorate([
1574
- observer
1575
- ], OncoKbCard);
1576
- return OncoKbCard;
1577
- }(React.Component));
1578
-
1579
- /**
1580
- * @author Selcuk Onur Sumer
1581
- */
1582
- var OncoKbTooltip = /** @class */ (function (_super) {
1583
- __extends(OncoKbTooltip, _super);
1584
- function OncoKbTooltip() {
1585
- return _super !== null && _super.apply(this, arguments) || this;
1586
- }
1587
- Object.defineProperty(OncoKbTooltip.prototype, "pmidData", {
1588
- get: function () {
1589
- if (this.props.pubMedCache) {
1590
- var allPmids_1 = [];
1591
- if (this.props.indicator) {
1592
- if (this.props.indicator.mutationEffect) {
1593
- allPmids_1 = allPmids_1.concat(this.props.indicator.mutationEffect.citations.pmids);
1594
- }
1595
- this.props.indicator.treatments.forEach(function (treatment) {
1596
- allPmids_1 = allPmids_1.concat(treatment.pmids);
1597
- });
1598
- this.props.indicator.diagnosticImplications.forEach(function (implication) {
1599
- allPmids_1 = allPmids_1.concat(implication.pmids);
1600
- });
1601
- this.props.indicator.prognosticImplications.forEach(function (implication) {
1602
- allPmids_1 = allPmids_1.concat(implication.pmids);
1603
- });
1604
- }
1605
- for (var _i = 0, _a = ___default.uniq(allPmids_1).map(function (pmid) { return Number(pmid); }); _i < _a.length; _i++) {
1606
- var ref = _a[_i];
1607
- this.props.pubMedCache.get(ref);
1608
- }
1609
- }
1610
- return (this.props.pubMedCache && this.props.pubMedCache.cache) || {};
1611
- },
1612
- enumerable: false,
1613
- configurable: true
1614
- });
1615
- Object.defineProperty(OncoKbTooltip.prototype, "render", {
1616
- enumerable: false,
1617
- configurable: true,
1618
- writable: true,
1619
- value: function () {
1620
- var tooltipContent = React.createElement("span", null);
1621
- if (this.props.geneNotExist) {
1622
- tooltipContent = (React.createElement(OncoKbCard, { type: this.props.type, usingPublicOncoKbInstance: this.props.usingPublicOncoKbInstance, hugoSymbol: this.props.hugoSymbol, geneNotExist: this.props.geneNotExist, isCancerGene: this.props.isCancerGene, pmidData: {}, handleFeedbackOpen: this.props.handleFeedbackOpen, displayHighestLevelInTabTitle: true }));
1623
- }
1624
- if (!this.props.indicator) {
1625
- return tooltipContent;
1626
- }
1627
- if (!this.props.geneNotExist) {
1628
- var pmidData = this.pmidData;
1629
- tooltipContent = (React.createElement(OncoKbCard, { type: this.props.type, usingPublicOncoKbInstance: this.props.usingPublicOncoKbInstance, geneNotExist: this.props.geneNotExist, isCancerGene: this.props.isCancerGene, hugoSymbol: this.props.hugoSymbol, indicator: this.props.indicator, pmidData: pmidData, handleFeedbackOpen: this.props.handleFeedbackOpen, displayHighestLevelInTabTitle: true }));
1630
- }
1631
- return tooltipContent;
128
+ React.createElement("b", null, this.props.geneName))),
129
+ ' ',
130
+ "- ",
131
+ this.props.geneDescription)),
132
+ React.createElement("div", { className: "col s12" },
133
+ React.createElement("ul", null, this.generateVariants(this.props.variants))),
134
+ React.createElement("div", { className: "item disclaimer" },
135
+ React.createElement("span", null, "Disclaimer: This resource is intended for purely research purposes. It should not be used for emergencies or medical or professional advice.")))),
136
+ React.createElement("div", { className: "item footer" },
137
+ React.createElement("a", { href: this.props.geneUrl, target: "_blank" },
138
+ React.createElement("img", { src: img$5, className: "civic-logo", alt: "CIViC" })))));
1632
139
  }
1633
140
  });
1634
- OncoKbTooltip = __decorate([
1635
- observer
1636
- ], OncoKbTooltip);
1637
- return OncoKbTooltip;
141
+ return CivicCard;
1638
142
  }(React.Component));
1639
143
 
1640
- var OncoKbFeedback = /** @class */ (function (_super) {
1641
- __extends(OncoKbFeedback, _super);
1642
- function OncoKbFeedback() {
1643
- return _super !== null && _super.apply(this, arguments) || this;
1644
- }
1645
- Object.defineProperty(OncoKbFeedback.prototype, "render", {
1646
- enumerable: false,
1647
- configurable: true,
1648
- writable: true,
1649
- value: function () {
1650
- var url = 'https://docs.google.com/forms/d/1lt6TtecxHrhIE06gAKVF_JW4zKFoowNFzxn6PJv4g7A/viewform';
1651
- var geneParam = "entry.1744186665=" + (this.props.hugoSymbol || '');
1652
- var alterationParam = "entry.1671960263=" + (this.props.alteration ||
1653
- '');
1654
- var userParam = "entry.1381123986=" + (this.props.userEmailAddress ||
1655
- '');
1656
- var uriParam = "entry.1083850662=" + encodeURIComponent(window.location.href);
1657
- return (React.createElement(Modal, { show: this.props.showFeedback, onHide: this.props.handleFeedbackClose },
1658
- React.createElement(Modal.Header, { closeButton: true },
1659
- React.createElement(Modal.Title, null, "OncoKB\u2122 Annotation Feedback")),
1660
- React.createElement(Modal.Body, null,
1661
- React.createElement("iframe", { src: url + "?" + geneParam + "&" + alterationParam + "&entry.118699694&entry.1568641202&" + userParam + "&" + uriParam + "&embedded=true", style: {
1662
- width: 550,
1663
- height: 500,
1664
- border: 'none',
1665
- marginLeft: '10px',
1666
- }, marginHeight: 0, marginWidth: 0 },
1667
- React.createElement("i", { className: "fa fa-spinner fa-pulse fa-2x" })))));
1668
- }
1669
- });
1670
- return OncoKbFeedback;
1671
- }(React.Component));
144
+ var img$4 = "data:image/png;base64,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";
145
+
146
+ var img$3 = "data:image/png;base64,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";
1672
147
 
1673
- function sortValue$6(indicator) {
1674
- var values = [0, 0, 0];
1675
- if (indicator) {
1676
- values[0] = calcOncogenicScore(indicator.oncogenic);
1677
- values[1] = calcSensitivityLevelScore(indicator.highestSensitiveLevel);
1678
- values[2] = calcResistanceLevelScore(indicator.highestResistanceLevel);
1679
- values[3] = calcDiagnosticLevelScore(indicator.highestDiagnosticImplicationLevel);
1680
- values[4] = calcPrognosticLevelScore(indicator.highestPrognosticImplicationLevel);
1681
- }
1682
- return values;
148
+ function hideArrow(tooltipEl) {
149
+ var arrowEl = tooltipEl.querySelector('.rc-tooltip-arrow');
150
+ arrowEl.style.display = 'none';
1683
151
  }
1684
- function download$5(indicator) {
1685
- var _a, _b;
1686
- if (!indicator) {
1687
- return 'NA';
152
+ function sortValue$7(civicEntry) {
153
+ var score = 0;
154
+ if (civicEntry) {
155
+ score = 1;
1688
156
  }
1689
- var oncogenic = indicator.oncogenic ? indicator.oncogenic : 'Unknown';
1690
- var sensitivityLevel = ((_a = indicator.highestSensitiveLevel) === null || _a === void 0 ? void 0 : _a.toLowerCase()) || 'level NA';
1691
- var resistanceLevel = ((_b = indicator.highestResistanceLevel) === null || _b === void 0 ? void 0 : _b.toLowerCase()) || 'resistance NA';
1692
- return oncogenic + ", " + sensitivityLevel + ", " + resistanceLevel;
157
+ return score;
1693
158
  }
1694
- function findDefaultDataTypeForTooltip(usingPublicOncoKbInstance, indicator, availableDataTypes) {
1695
- if (usingPublicOncoKbInstance || !indicator) {
1696
- return OncoKbCardDataType.BIOLOGICAL;
1697
- }
1698
- // priority is in this order: Tx > Dx > Px > Biological
1699
- if (indicator.highestSensitiveLevel &&
1700
- availableDataTypes &&
1701
- availableDataTypes.includes(OncoKbCardDataType.TXS)) {
1702
- return OncoKbCardDataType.TXS;
1703
- }
1704
- else if (indicator.highestResistanceLevel &&
1705
- availableDataTypes &&
1706
- availableDataTypes.includes(OncoKbCardDataType.TXR)) {
1707
- return OncoKbCardDataType.TXR;
1708
- }
1709
- else if (indicator.highestDiagnosticImplicationLevel &&
1710
- availableDataTypes &&
1711
- availableDataTypes.includes(OncoKbCardDataType.DX)) {
1712
- return OncoKbCardDataType.DX;
1713
- }
1714
- else if (indicator.highestPrognosticImplicationLevel &&
1715
- availableDataTypes &&
1716
- availableDataTypes.includes(OncoKbCardDataType.PX)) {
1717
- return OncoKbCardDataType.PX;
1718
- }
1719
- return OncoKbCardDataType.BIOLOGICAL;
159
+ function download$6(civicEntry) {
160
+ if (!civicEntry) {
161
+ return CIVIC_NA_VALUE;
162
+ }
163
+ var variants = ___default.values(civicEntry.variants);
164
+ var values = [];
165
+ if (variants && variants.length > 0 && variants[0].evidenceCounts) {
166
+ ___default.forEach(variants[0].evidenceCounts, function (value, key) {
167
+ values.push(key + ": " + value);
168
+ });
169
+ }
170
+ // this indicates that we have an entry but the evidence is empty
171
+ if (values.length === 0) {
172
+ return CIVIC_NA_VALUE;
173
+ }
174
+ return values.join(', ');
1720
175
  }
1721
- var OncoKB = /** @class */ (function (_super) {
1722
- __extends(OncoKB, _super);
1723
- function OncoKB(props) {
176
+ var Civic = /** @class */ (function (_super) {
177
+ __extends(Civic, _super);
178
+ function Civic(props) {
1724
179
  var _this = _super.call(this, props) || this;
1725
- Object.defineProperty(_this, "showFeedback", {
1726
- enumerable: true,
1727
- configurable: true,
1728
- writable: true,
1729
- value: false
1730
- });
1731
180
  Object.defineProperty(_this, "tooltipDataLoadComplete", {
1732
181
  enumerable: true,
1733
182
  configurable: true,
@@ -1735,125 +184,136 @@ var OncoKB = /** @class */ (function (_super) {
1735
184
  value: false
1736
185
  });
1737
186
  makeObservable(_this);
187
+ _this.cardContent = _this.cardContent.bind(_this);
1738
188
  return _this;
1739
189
  }
1740
- Object.defineProperty(OncoKB.prototype, "render", {
190
+ Object.defineProperty(Civic.prototype, "render", {
1741
191
  enumerable: false,
1742
192
  configurable: true,
1743
193
  writable: true,
1744
194
  value: function () {
1745
- var oncoKbContent;
1746
- if (this.props.status === 'error') {
1747
- oncoKbContent = errorIcon('Error fetching OncoKB data');
1748
- }
1749
- else if (this.props.status === 'pending') {
1750
- oncoKbContent = loaderIcon('pull-left');
195
+ var civicContent = (React.createElement("span", { className: "" + annotationStyles['annotation-item'] }));
196
+ var civicImgWidth = 14;
197
+ var civicImgHeight = 14;
198
+ var civicImgSrc = !this.props.hasCivicVariants
199
+ ? img$3
200
+ : img$4;
201
+ if (this.props.civicStatus == 'error') {
202
+ civicContent = errorIcon('Error fetching Civic data');
1751
203
  }
1752
- else {
1753
- oncoKbContent = this.props.mergeAnnotationIcons
1754
- ? this.singleAnnotationIcon()
1755
- : this.multiAnnotationIcon();
1756
- if (!this.props.disableFeedback && this.showFeedback) {
1757
- oncoKbContent = (React.createElement("span", null,
1758
- oncoKbContent,
1759
- React.createElement(OncoKbFeedback, { userEmailAddress: this.props.userEmailAddress, hugoSymbol: this.props.hugoGeneSymbol, alteration: this.props.indicator
1760
- ? this.props.indicator.query.alteration
1761
- : undefined, showFeedback: this.showFeedback, handleFeedbackClose: this.handleFeedbackClose })));
204
+ else if (this.props.civicEntry !== undefined) {
205
+ if (this.props.civicEntry !== null &&
206
+ this.props.civicStatus == 'complete') {
207
+ civicContent = (React.createElement("span", { className: "" + annotationStyles['annotation-item'] },
208
+ React.createElement("img", { width: civicImgWidth, height: civicImgHeight, src: civicImgSrc, alt: "Civic Variant Entry" })));
209
+ civicContent = (React.createElement(DefaultTooltip, { overlay: this.cardContent.bind(this, this.props.civicEntry), placement: "right", trigger: ['hover', 'focus'], onPopupAlign: hideArrow, destroyTooltipOnHide: false }, civicContent));
1762
210
  }
1763
211
  }
1764
- return oncoKbContent;
1765
- }
1766
- });
1767
- Object.defineProperty(OncoKB.prototype, "multiAnnotationIcon", {
1768
- enumerable: false,
1769
- configurable: true,
1770
- writable: true,
1771
- value: function () {
1772
- return (React.createElement("span", { className: "oncokb-content", style: { display: 'inline-flex' } },
1773
- React.createElement(AnnotationIcon, { type: OncoKbCardDataType.BIOLOGICAL, tooltipOverlay: this.tooltipContent(OncoKbCardDataType.BIOLOGICAL), indicator: this.props.indicator, availableDataTypes: this.props.availableDataTypes }),
1774
- this.levelIcons()));
1775
- }
1776
- });
1777
- Object.defineProperty(OncoKB.prototype, "levelIcons", {
1778
- enumerable: false,
1779
- configurable: true,
1780
- writable: true,
1781
- value: function () {
1782
- var _this = this;
1783
- if (this.props.usingPublicOncoKbInstance) {
1784
- return null;
1785
- }
1786
- if (this.props.indicator) {
1787
- return (React.createElement(React.Fragment, null, [
1788
- OncoKbCardDataType.TXS,
1789
- OncoKbCardDataType.TXR,
1790
- OncoKbCardDataType.DX,
1791
- OncoKbCardDataType.PX,
1792
- ].map(function (dataType) { return (React.createElement(AnnotationIcon, { type: dataType, tooltipOverlay: _this.tooltipContent(dataType), indicator: _this.props.indicator, availableDataTypes: _this.props.availableDataTypes })); })));
1793
- }
1794
212
  else {
1795
- // workaround: use content padding value to draw an empty icon when there is no indicator data.
1796
- // this is to keep the icon alignment consistent with the rest of the column.
1797
- // ideally we should implement grouped columns to avoid these kind of workarounds
1798
- // (see https://github.com/cBioPortal/cbioportal/issues/8723)
1799
- return React.createElement("i", { style: { paddingRight: this.props.contentPadding } });
213
+ // It's still unknown (undefined) if the current gene has a Civic entry or not.
214
+ civicContent = loaderIcon('pull-left');
1800
215
  }
216
+ return civicContent;
1801
217
  }
1802
218
  });
1803
- Object.defineProperty(OncoKB.prototype, "singleAnnotationIcon", {
1804
- enumerable: false,
1805
- configurable: true,
1806
- writable: true,
1807
- value: function () {
1808
- return (React.createElement("span", { className: "oncokb-content", style: { display: 'inline-flex' } },
1809
- React.createElement(AnnotationIconWithTooltip, { tooltipOverlay: this.tooltipContent(findDefaultDataTypeForTooltip(this.props.usingPublicOncoKbInstance, this.props.indicator, this.props.availableDataTypes)), icon: React.createElement(CompactAnnotationIcon, { indicator: this.props.indicator, availableDataTypes: this.props.availableDataTypes, usingPublicOncoKbInstance: this.props.usingPublicOncoKbInstance }) })));
1810
- }
1811
- });
1812
- Object.defineProperty(OncoKB.prototype, "tooltipContent", {
219
+ Object.defineProperty(Civic.prototype, "cardContent", {
1813
220
  enumerable: false,
1814
221
  configurable: true,
1815
222
  writable: true,
1816
- value: function (type) {
1817
- return (React.createElement(OncoKbTooltip, { type: type, usingPublicOncoKbInstance: this.props.usingPublicOncoKbInstance, hugoSymbol: this.props.hugoGeneSymbol, geneNotExist: this.props.geneNotExist, isCancerGene: this.props.isCancerGene, indicator: this.props.indicator || undefined, pubMedCache: this.props.pubMedCache, handleFeedbackOpen: this.props.disableFeedback
1818
- ? undefined
1819
- : this.handleFeedbackOpen }));
223
+ value: function (civicEntry) {
224
+ return (React.createElement(CivicCard, { title: "CIViC Variants", geneName: civicEntry.name, geneDescription: civicEntry.description, geneUrl: civicEntry.url, variants: civicEntry.variants }));
1820
225
  }
1821
226
  });
1822
- Object.defineProperty(OncoKB.prototype, "handleFeedbackOpen", {
1823
- enumerable: false,
1824
- configurable: true,
1825
- writable: true,
1826
- value: function () {
1827
- this.showFeedback = true;
227
+ __decorate([
228
+ observable
229
+ ], Civic.prototype, "tooltipDataLoadComplete", void 0);
230
+ Civic = __decorate([
231
+ observer
232
+ ], Civic);
233
+ return Civic;
234
+ }(React.Component));
235
+
236
+ var NoClinvarData = function () {
237
+ return (React.createElement(DefaultTooltip, { placement: "topLeft", overlay: React.createElement("span", null, "Variant has no ClinVar data.") },
238
+ React.createElement("span", { style: {
239
+ height: '100%',
240
+ width: '100%',
241
+ display: 'block',
242
+ overflow: 'hidden',
243
+ } }, "\u00A0")));
244
+ };
245
+ var ClinvarSummary = function (props) {
246
+ if (!props.clinvar) {
247
+ return React.createElement(NoClinvarData, null);
248
+ }
249
+ else {
250
+ var clinvarId = props.clinvar.clinvarId;
251
+ var clinvarLink = "https://www.ncbi.nlm.nih.gov/clinvar/variation/" + clinvarId + "/";
252
+ var clinicalSignificance = props.clinvar.clinicalSignificance;
253
+ var conflictingClinicalSignificance = props.clinvar.conflictingClinicalSignificance;
254
+ return (React.createElement(TruncatedText, { maxLength: 30, text: clinicalSignificance, addTooltip: "always", tooltip: React.createElement("div", { style: { maxWidth: 300 } },
255
+ React.createElement("div", null, clinicalSignificance),
256
+ conflictingClinicalSignificance && (React.createElement("div", null, conflictingClinicalSignificance)),
257
+ React.createElement("div", null,
258
+ "(ClinVar ID:",
259
+ ' ',
260
+ React.createElement("a", { href: clinvarLink, target: "_blank" }, clinvarId),
261
+ ")")) }));
262
+ }
263
+ };
264
+
265
+ var img$2 = "data:image/png;base64,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";
266
+
267
+ var mcgStyles = {"link-list":"myCancerGenome-module_link-list__2wFhH"};
268
+
269
+ function placeArrow$1(tooltipEl) {
270
+ var arrowEl = tooltipEl.querySelector('.rc-tooltip-arrow');
271
+ arrowEl.style.left = '10px';
272
+ }
273
+ function sortValue$6(links) {
274
+ return links.length > 0 ? 1 : 0;
275
+ }
276
+ function download$5(links) {
277
+ return links.length > 0 ? 'present' : 'not present';
278
+ }
279
+ function myCancerGenomeLinks(linksHTML) {
280
+ var links = [];
281
+ ___default.each(linksHTML, function (link, index) {
282
+ // TODO this is a workaround, ideally we should fix the data itself
283
+ // parse the data as an HTML dom element, since it is formatted as an HTML link.
284
+ var myCancerGenomeLink = parseMyCancerGenomeLink(link);
285
+ if (myCancerGenomeLink) {
286
+ links.push(React.createElement("li", { key: index },
287
+ React.createElement("a", { href: myCancerGenomeLink.url, target: "_blank" }, myCancerGenomeLink.text)));
1828
288
  }
1829
289
  });
1830
- Object.defineProperty(OncoKB.prototype, "handleFeedbackClose", {
290
+ return (React.createElement("span", null,
291
+ React.createElement("b", null, "My Cancer Genome links:"),
292
+ React.createElement("br", null),
293
+ React.createElement("ul", { className: mcgStyles['link-list'] }, links)));
294
+ }
295
+ var MyCancerGenome = /** @class */ (function (_super) {
296
+ __extends(MyCancerGenome, _super);
297
+ function MyCancerGenome() {
298
+ return _super !== null && _super.apply(this, arguments) || this;
299
+ }
300
+ Object.defineProperty(MyCancerGenome.prototype, "render", {
1831
301
  enumerable: false,
1832
302
  configurable: true,
1833
303
  writable: true,
1834
304
  value: function () {
1835
- this.showFeedback = false;
305
+ var myCancerGenomeContent = (React.createElement("span", { className: "" + annotationStyles['annotation-item'] }));
306
+ if (this.props.linksHTML.length > 0) {
307
+ var arrowContent = React.createElement("div", { className: "rc-tooltip-arrow-inner" });
308
+ var tooltipContent = myCancerGenomeLinks(this.props.linksHTML);
309
+ myCancerGenomeContent = (React.createElement(DefaultTooltip, { overlay: tooltipContent, placement: "topLeft", trigger: ['hover', 'focus'], arrowContent: arrowContent, onPopupAlign: placeArrow$1 },
310
+ React.createElement("span", { className: annotationStyles['annotation-item'] + " mcg" },
311
+ React.createElement("img", { width: "14", height: "14", src: img$2, alt: "My Cancer Genome Symbol" }))));
312
+ }
313
+ return myCancerGenomeContent;
1836
314
  }
1837
315
  });
1838
- __decorate([
1839
- observable
1840
- ], OncoKB.prototype, "showFeedback", void 0);
1841
- __decorate([
1842
- observable
1843
- ], OncoKB.prototype, "tooltipDataLoadComplete", void 0);
1844
- __decorate([
1845
- autobind
1846
- ], OncoKB.prototype, "tooltipContent", null);
1847
- __decorate([
1848
- autobind
1849
- ], OncoKB.prototype, "handleFeedbackOpen", null);
1850
- __decorate([
1851
- autobind
1852
- ], OncoKB.prototype, "handleFeedbackClose", null);
1853
- OncoKB = __decorate([
1854
- observer
1855
- ], OncoKB);
1856
- return OncoKB;
316
+ return MyCancerGenome;
1857
317
  }(React.Component));
1858
318
 
1859
319
  var hotspotStyles = {"hotspot-info":"hotspotInfo-module_hotspot-info__S24fX"};
@@ -2231,17 +691,17 @@ function annotationSortMethod(a, b) {
2231
691
  }
2232
692
  function sortValue$4(annotation) {
2233
693
  return ___default.flatten([
2234
- sortValue$6(annotation.oncoKbIndicator),
2235
- sortValue$8(annotation.civicEntry),
2236
- sortValue$7(annotation.myCancerGenomeLinks),
694
+ oncoKbAnnotationSortValue(annotation.oncoKbIndicator),
695
+ sortValue$7(annotation.civicEntry),
696
+ sortValue$6(annotation.myCancerGenomeLinks),
2237
697
  sortValue$5(annotation.isHotspot, annotation.is3dHotspot),
2238
698
  annotation.isOncoKbCancerGene ? 1 : 0,
2239
699
  ]);
2240
700
  }
2241
701
  function GenericAnnotation(props) {
2242
- var annotation = props.annotation, enableCivic = props.enableCivic, enableHotspot = props.enableHotspot, enableMyCancerGenome = props.enableMyCancerGenome, enableOncoKb = props.enableOncoKb, pubMedCache = props.pubMedCache, userEmailAddress = props.userEmailAddress, mergeOncoKbIcons = props.mergeOncoKbIcons, oncoKbContentPadding = props.oncoKbContentPadding;
702
+ var annotation = props.annotation, enableCivic = props.enableCivic, enableHotspot = props.enableHotspot, enableMyCancerGenome = props.enableMyCancerGenome, enableOncoKb = props.enableOncoKb; props.pubMedCache; var userEmailAddress = props.userEmailAddress, mergeOncoKbIcons = props.mergeOncoKbIcons, oncoKbContentPadding = props.oncoKbContentPadding;
2243
703
  return (React.createElement("span", { style: { display: 'flex', minWidth: 100 } },
2244
- enableOncoKb && (React.createElement(OncoKB, { usingPublicOncoKbInstance: annotation.usingPublicOncoKbInstance, hugoGeneSymbol: annotation.hugoGeneSymbol, geneNotExist: !annotation.oncoKbGeneExist, isCancerGene: annotation.isOncoKbCancerGene, status: annotation.oncoKbStatus, indicator: annotation.oncoKbIndicator, availableDataTypes: annotation.oncoKbAvailableDataTypes, mergeAnnotationIcons: mergeOncoKbIcons, pubMedCache: pubMedCache, userEmailAddress: userEmailAddress, contentPadding: oncoKbContentPadding })),
704
+ enableOncoKb && (React.createElement(OncoKB, { usingPublicOncoKbInstance: annotation.usingPublicOncoKbInstance, hugoGeneSymbol: annotation.hugoGeneSymbol, geneNotExist: !annotation.oncoKbGeneExist, isCancerGene: annotation.isOncoKbCancerGene, status: annotation.oncoKbStatus, indicator: annotation.oncoKbIndicator, availableDataTypes: annotation.oncoKbAvailableDataTypes, mergeAnnotationIcons: mergeOncoKbIcons, userEmailAddress: userEmailAddress, contentPadding: oncoKbContentPadding })),
2245
705
  enableCivic && (React.createElement(Civic, { civicEntry: annotation.civicEntry, civicStatus: annotation.civicStatus, hasCivicVariants: annotation.hasCivicVariants })),
2246
706
  enableMyCancerGenome && (React.createElement(MyCancerGenome, { linksHTML: annotation.myCancerGenomeLinks })),
2247
707
  enableHotspot && (React.createElement(HotspotAnnotation, { isHotspot: annotation.isHotspot, is3dHotspot: annotation.is3dHotspot, status: annotation.hotspotStatus }))));
@@ -3307,7 +1767,7 @@ var DropdownSelector = /** @class */ (function (_super) {
3307
1767
  var _a;
3308
1768
  var allValuesSelected = this.allValues.length === this.selectedValues.length;
3309
1769
  var classes = this.props.selectionIndicatorClassNames;
3310
- return classnames(classes.base, (_a = {},
1770
+ return classNames(classes.base, (_a = {},
3311
1771
  _a[classes.allSelected] = allValuesSelected,
3312
1772
  _a[classes.partiallySelected] = !allValuesSelected,
3313
1773
  _a));
@@ -4049,8 +2509,8 @@ var FilterResetPanel = /** @class */ (function (_super) {
4049
2509
  writable: true,
4050
2510
  value: {
4051
2511
  buttonText: 'Show all',
4052
- buttonClass: classnames('btn', 'btn-secondary', 'btn-sm'),
4053
- className: classnames('alert', 'alert-success', styles$7.filterResetPanel),
2512
+ buttonClass: classNames('btn', 'btn-secondary', 'btn-sm'),
2513
+ className: classNames('alert', 'alert-success', styles$7.filterResetPanel),
4054
2514
  }
4055
2515
  });
4056
2516
  FilterResetPanel = __decorate([
@@ -4465,7 +2925,7 @@ var DataTable = /** @class */ (function (_super) {
4465
2925
  value: function () {
4466
2926
  return (React.createElement("div", { className: "cbioportal-frontend" },
4467
2927
  React.createElement(DataTableToolbar, { visibilityToggle: this.onVisibilityToggle, showSearchBox: this.props.showSearchBox, onSearch: this.onSearch, filterInputRef: this.filterInputRef, searchDelay: this.props.searchDelay, searchPlaceHolder: this.props.searchPlaceholder, info: this.props.info, showColumnVisibility: this.props.showColumnVisibility, columnVisibility: this.columnVisibilityDef, columnSelectorProps: this.props.columnSelectorProps }),
4468
- React.createElement("div", { className: classnames(this.props.className, 'cbioportal-frontend', 'default-data-table') },
2928
+ React.createElement("div", { className: classNames(this.props.className, 'cbioportal-frontend', 'default-data-table') },
4469
2929
  React.createElement(ReactTable, __assign({ data: this.tableData, columns: this.columns, getTrProps: this.needToCustomizeRowStyle
4470
2930
  ? this.getTrProps
4471
2931
  : undefined, defaultSorted: this.defaultSorted, defaultPageSize: this.props.initialItemsPerPage, showPagination: this.showPagination, className: "-striped -highlight", previousText: "<", nextText: ">", expanded: this.expanded, onExpandedChange: this.onExpandedChange, onPageChange: this.resetExpander, onPageSizeChange: this.resetExpander, onSortedChange: this.resetExpander, minRows: 1 }, this.props.reactTableProps)))));
@@ -7334,7 +5794,7 @@ var LollipopMutationPlotControls = /** @class */ (function (_super) {
7334
5794
  });
7335
5795
  Object.defineProperty(LollipopMutationPlotControls.prototype, "trackSelector", {
7336
5796
  get: function () {
7337
- return (React.createElement("div", { className: classnames('annotation-track-selector', 'small'), style: { width: 180, marginRight: 7 } },
5797
+ return (React.createElement("div", { className: classNames('annotation-track-selector', 'small'), style: { width: 180, marginRight: 7 } },
7338
5798
  React.createElement(TrackSelector, { tracks: this.props.tracks, trackVisibility: this.props.trackVisibility, trackDataStatus: this.props.trackDataStatus, onChange: this.props.onTrackVisibilityChange })));
7339
5799
  },
7340
5800
  enumerable: false,
@@ -7361,7 +5821,7 @@ var LollipopMutationPlotControls = /** @class */ (function (_super) {
7361
5821
  configurable: true,
7362
5822
  writable: true,
7363
5823
  value: function () {
7364
- return (React.createElement("div", { className: classnames('lollipop_mutation_plot__controls', this.props.showControls
5824
+ return (React.createElement("div", { className: classNames('lollipop_mutation_plot__controls', this.props.showControls
7365
5825
  ? styles$5['fade-in']
7366
5826
  : styles$5['fade-out']) },
7367
5827
  React.createElement("div", { style: { display: 'flex', alignItems: 'center' } },
@@ -7974,7 +6434,7 @@ var Track = /** @class */ (function (_super) {
7974
6434
  position: 'relative',
7975
6435
  display: 'flex',
7976
6436
  } },
7977
- React.createElement("span", { className: classnames(styles$4.trackTitle, 'small', (this.props.isSubTrack ? 'subtrack-' : '') + "trackTitle") }, this.props.trackTitle),
6437
+ React.createElement("span", { className: classNames(styles$4.trackTitle, 'small', (this.props.isSubTrack ? 'subtrack-' : '') + "trackTitle") }, this.props.trackTitle),
7978
6438
  React.createElement("span", null,
7979
6439
  React.createElement(DefaultTooltip, __assign({ placement: this.getOverlayPlacement(), overlay: this.getOverlay, onVisibleChange: this.onTooltipVisibleChange, destroyTooltipOnHide: true }, this.tooltipVisibleProps), this.hitZone),
7980
6440
  React.createElement("span", { style: { marginLeft: this.props.xOffset }, onMouseOver: this.onMouseOver },
@@ -8134,130 +6594,6 @@ var OncoKbFilterValue;
8134
6594
  OncoKbFilterValue["Oncogenic"] = "ONCOGENIC";
8135
6595
  })(OncoKbFilterValue || (OncoKbFilterValue = {}));
8136
6596
 
8137
- var OncoKbSummaryTable = /** @class */ (function (_super) {
8138
- __extends(OncoKbSummaryTable, _super);
8139
- function OncoKbSummaryTable(props) {
8140
- var _this = _super.call(this, props) || this;
8141
- makeObservable(_this);
8142
- _this.state = {};
8143
- return _this;
8144
- }
8145
- OncoKbSummaryTable_1 = OncoKbSummaryTable;
8146
- Object.defineProperty(OncoKbSummaryTable.prototype, "hasLevelData", {
8147
- get: function () {
8148
- return this.props.data.find(function (d) { return d.level.length > 0; }) !== undefined;
8149
- },
8150
- enumerable: false,
8151
- configurable: true
8152
- });
8153
- Object.defineProperty(OncoKbSummaryTable.prototype, "columns", {
8154
- get: function () {
8155
- var columns = [
8156
- {
8157
- id: 'proteinChange',
8158
- accessor: 'proteinChange',
8159
- Header: 'Protein Change',
8160
- sortMethod: function (a, b) {
8161
- return defaultSortMethod(calcProteinChangeSortValue(a), calcProteinChangeSortValue(b));
8162
- },
8163
- },
8164
- {
8165
- id: 'count',
8166
- accessor: 'count',
8167
- Header: 'Occurrence',
8168
- maxWidth: 80,
8169
- },
8170
- {
8171
- id: 'clinicalImplication',
8172
- accessor: 'clinicalImplication',
8173
- Header: 'Implication',
8174
- Cell: function (props) { return (React.createElement("span", null, props.original.clinicalImplication.join(', '))); },
8175
- sortMethod: defaultStringArraySortMethod,
8176
- minWidth: 120,
8177
- },
8178
- {
8179
- id: 'biologicalEffect',
8180
- accessor: 'biologicalEffect',
8181
- Header: 'Effect',
8182
- Cell: function (props) { return (React.createElement("span", null, props.original.biologicalEffect.join(', '))); },
8183
- sortMethod: defaultStringArraySortMethod,
8184
- minWidth: 150,
8185
- },
8186
- ];
8187
- if (!this.props.usingPublicOncoKbInstance) {
8188
- columns.push({
8189
- id: 'level',
8190
- accessor: 'level',
8191
- Header: 'Level',
8192
- sortable: false,
8193
- Cell: function (props) { return (React.createElement(React.Fragment, null, props.original.level.map(function (level) { return (React.createElement("div", { key: level.level, style: {
8194
- display: 'flex',
8195
- overflow: 'hidden',
8196
- textOverflow: 'ellipsis',
8197
- } },
8198
- React.createElement(LevelIcon, { level: level.level, showDescription: true }),
8199
- React.createElement("span", { style: {
8200
- paddingRight: 3,
8201
- } }, ":"),
8202
- React.createElement(EllipsisTextTooltip, { text: level.tumorTypes.join(', '), style: {
8203
- overflow: 'hidden',
8204
- whiteSpace: 'nowrap',
8205
- textOverflow: 'ellipsis',
8206
- } }))); }))); },
8207
- minWidth: this.hasLevelData ? 180 : 50,
8208
- });
8209
- }
8210
- return columns;
8211
- },
8212
- enumerable: false,
8213
- configurable: true
8214
- });
8215
- Object.defineProperty(OncoKbSummaryTable.prototype, "render", {
8216
- enumerable: false,
8217
- configurable: true,
8218
- writable: true,
8219
- value: function () {
8220
- var _a = this.props, data = _a.data, initialSortColumn = _a.initialSortColumn, initialSortDirection = _a.initialSortDirection, initialItemsPerPage = _a.initialItemsPerPage;
8221
- var showPagination = data.length >
8222
- (this.props.initialItemsPerPage ||
8223
- OncoKbSummaryTable_1.defaultProps.initialItemsPerPage);
8224
- return (React.createElement("div", { className: classnames('cbioportal-frontend', 'default-track-tooltip-table') },
8225
- React.createElement(ReactTable, { data: data, columns: this.columns, defaultSorted: [
8226
- {
8227
- id: initialSortColumn ||
8228
- OncoKbSummaryTable_1.defaultProps
8229
- .initialSortColumn,
8230
- desc: initialSortDirection === 'desc',
8231
- },
8232
- ], defaultPageSize: data.length > initialItemsPerPage
8233
- ? initialItemsPerPage
8234
- : data.length, showPagination: showPagination, showPaginationTop: true, showPaginationBottom: false, className: "-striped -highlight", previousText: "<", nextText: ">" })));
8235
- }
8236
- });
8237
- var OncoKbSummaryTable_1;
8238
- Object.defineProperty(OncoKbSummaryTable, "defaultProps", {
8239
- enumerable: true,
8240
- configurable: true,
8241
- writable: true,
8242
- value: {
8243
- data: [],
8244
- initialSortColumn: 'count',
8245
- initialSortDirection: 'desc',
8246
- initialItemsPerPage: 10,
8247
- }
8248
- });
8249
- __decorate([
8250
- computed
8251
- ], OncoKbSummaryTable.prototype, "hasLevelData", null);
8252
- __decorate([
8253
- computed
8254
- ], OncoKbSummaryTable.prototype, "columns", null);
8255
- OncoKbSummaryTable = OncoKbSummaryTable_1 = __decorate([
8256
- observer
8257
- ], OncoKbSummaryTable);
8258
- return OncoKbSummaryTable;
8259
- }(React.Component));
8260
-
8261
6597
  function oncoKbTooltip(usingPublicOncoKbInstance, indicatorData) {
8262
6598
  var sampleCount = indicatorData.length;
8263
6599
  // generate info
@@ -8579,7 +6915,7 @@ var PtmReferenceList = /** @class */ (function (_super) {
8579
6915
  } },
8580
6916
  React.createElement(ReferenceList, { pmids: this.props.pubmedIds
8581
6917
  .map(function (id) { return extractNumericalPart(id); })
8582
- .filter(function (id) { return id !== undefined; }), pmidData: this.props.pmidData, abstracts: [] })), destroyTooltipOnHide: true },
6918
+ .filter(function (id) { return id !== undefined; }), abstracts: [] })), destroyTooltipOnHide: true },
8583
6919
  React.createElement("div", { style: { textAlign: 'right' } },
8584
6920
  React.createElement("i", { className: "fa fa-book", style: { color: 'black' } }))));
8585
6921
  }
@@ -8704,7 +7040,7 @@ var PtmAnnotationTable = /** @class */ (function (_super) {
8704
7040
  var showPagination = data.length >
8705
7041
  (this.props.initialItemsPerPage ||
8706
7042
  PtmAnnotationTable_1.defaultProps.initialItemsPerPage);
8707
- return (React.createElement("div", { className: classnames('cbioportal-frontend', 'default-track-tooltip-table') },
7043
+ return (React.createElement("div", { className: classNames('cbioportal-frontend', 'default-track-tooltip-table') },
8708
7044
  React.createElement(ReactTable, { data: data, columns: this.columns, defaultSorted: [
8709
7045
  {
8710
7046
  id: initialSortColumn ||
@@ -10128,7 +8464,7 @@ var AxisScaleSwitch = /** @class */ (function (_super) {
10128
8464
  configurable: true,
10129
8465
  writable: true,
10130
8466
  value: function (scale, onClick) {
10131
- return (React.createElement("button", { className: classnames({
8467
+ return (React.createElement("button", { className: classNames({
10132
8468
  'btn-secondary': this.props.selectedScale === scale,
10133
8469
  'btn-outline-secondary': this.props.selectedScale !== scale,
10134
8470
  }, 'btn', 'btn-sm', 'btn-axis-switch'), style: {
@@ -10139,6 +8475,9 @@ var AxisScaleSwitch = /** @class */ (function (_super) {
10139
8475
  fontWeight: this.props.selectedScale === scale
10140
8476
  ? 'bolder'
10141
8477
  : 'normal',
8478
+ color: this.props.selectedScale === scale ? '#fff' : '#6c757d',
8479
+ backgroundColor: this.props.selectedScale === scale ? '#6c757d' : '#fff',
8480
+ borderColor: '#6c757d',
10142
8481
  }, onClick: onClick }, scale));
10143
8482
  }
10144
8483
  });
@@ -12330,7 +10669,7 @@ var TranscriptDropdown = /** @class */ (function (_super) {
12330
10669
  canonicalTranscriptId &&
12331
10670
  transcriptsWithAnnotations.result &&
12332
10671
  transcriptsWithAnnotations.result.length > 0;
12333
- return (React.createElement("div", { className: classnames('small', styles$1.dropDown) },
10672
+ return (React.createElement("div", { className: classNames('small', styles$1.dropDown) },
12334
10673
  this.loadingIndicator(isLoading),
12335
10674
  !isLoading &&
12336
10675
  requiredData &&
@@ -12343,7 +10682,7 @@ var TranscriptDropdown = /** @class */ (function (_super) {
12343
10682
  var requiredData = transcriptsWithProteinLength.result &&
12344
10683
  transcriptsWithProteinLength.result.length > 0 &&
12345
10684
  canonicalTranscriptId;
12346
- return (React.createElement("div", { className: classnames('small', styles$1.dropDown) },
10685
+ return (React.createElement("div", { className: classNames('small', styles$1.dropDown) },
12347
10686
  this.loadingIndicator(isLoading),
12348
10687
  !isLoading &&
12349
10688
  requiredData &&
@@ -12971,5 +11310,5 @@ var MutationMapper = /** @class */ (function (_super) {
12971
11310
  return MutationMapper;
12972
11311
  }(React.Component));
12973
11312
 
12974
- export { Annotation, AxisScale, AxisScaleSwitch, BadgeLabel, BadgeSelector, Civic, ClinvarInterpretation, ClinvarSummary, ColumnHeader, ColumnSelector, ColumnSortDirection, DEFAULT_ANNOTATION_DATA, DEFAULT_GENOME_NEXUS_URL, DEFAULT_MUTATION_ALIGNER_PROXY_URL_TEMPLATE, DEFAULT_MUTATION_ALIGNER_URL_TEMPLATE, DEFAULT_MUTATION_COLUMNS, DEFAULT_MY_GENE_URL_TEMPLATE, DEFAULT_ONCO_KB_URL, DEFAULT_PROTEIN_IMPACT_TYPE_COLORS, DEFAULT_UNIPROT_ID_URL_TEMPLATE, DataFilterType, DataTable, Dbsnp, DbsnpId, DefaultMutationMapperDataFetcher, DefaultMutationMapperDataStore, DefaultMutationMapperFilterApplier, DefaultMutationMapperStore, DefaultMutationTable, Domain, DropdownSelector, FilterResetPanel, GenericAnnotation, Gnomad, GnomadFrequency, GnomadFrequencyBreakdown, GnomadFrequencyTable, GnomadFrequencyValue, Hgvsc, Hgvsg, HotspotAnnotation, HotspotInfo, Lollipop, LollipopMutationPlot, LollipopPlot, LollipopPlotNoTooltip, LollipopTooltipCountInfo, MSI_H_NAME, MUTATION_COLUMNS_DEFINITION, MUTATION_COLUMN_HEADERS, MUTATION_STATUS_BADGE_STYLE_OVERRIDE, MUTATION_TYPE_PRIORITY, MutationColumn, MutationColumnName, MutationMapper, MutationStatus, MutationStatusBadgeSelector, MyCancerGenome, ONCOKB_DEFAULT_DATA, ONCOKB_DEFAULT_INFO, OTHER_BIOMARKER_HUGO_SYMBOL, OTHER_BIOMARKER_NAME, OncoKB, OncoKBSuggestAnnotationLinkout, OncoKbFeedback, OncoKbHelper, OncoKbTooltip, OncoKbTreatmentTable, OtherBiomarkersQueryType, PercentToggle, ProteinChange, ProteinImpactTypeBadgeSelector, ProteinImpactTypeDropdownSelector, RefComponent, ReferenceList, LollipopPlot as Sequence, Signal, SignalTable, SummaryWithRefs, TEXT_INPUT_FILTER_ID, TMB_H_NAME, TrackName, TrackSelector, USE_DEFAULT_PUBLIC_INSTANCE_FOR_ONCOKB, sortValue$4 as annotationSortValue, applyDataFilters, applyDataFiltersOnDatum, applyDefaultMutationFilter, applyDefaultMutationStatusFilter, applyDefaultPositionFilter, applyDefaultProteinImpactTypeFilter, calculateGnomadAlleleFrequency, download$7 as civicDownload, sortValue$8 as civicSortValue, download$4 as clinvarDownload, sortValue$3 as clinvarSortValue, download$3 as dbsnpDownload, sortValue$2 as dbsnpSortValue, defaultOncoKbFilter, errorIcon, fetchVariantAnnotationsByMutation, fetchVariantAnnotationsIndexedByGenomicLocation, findAllUniquePositions, findNonTextInputFilters, findOneMutationFilterValue, findTextInputFilter, getAllOptionValues, getAnnotationData, getClinvarData, getColorForProteinImpactType, getGnomadData, getHgvscColumnData, getHgvsgColumnData, getProteinImpactTypeBadgeLabel, getProteinImpactTypeOptionLabel, getSelectedOptionValues, getSignalData, getSingleSignalValue, getTumorTypeNameWithExclusionInfo, getUrl, download$2 as gnomadDownload, sortValue$1 as gnomadSortValue, groupDataByGroupFilters, groupDataByProteinImpactType, groupOncoKbIndicatorDataByMutations, handleOptionSelect, download$1 as hgvscDownload, sortValue as hgvscSortValue, sortValue$5 as hotspotAnnotationSortValue, includesSearchTextIgnoreCase, indexPositions, initDefaultMutationMapperStore, initDefaultTrackVisibility, initGenomeNexusClient, initGenomeNexusInternalClient, initOncoKbClient, levelIconClassNames, loaderIcon, mergeColumns, mutationTypeSort, download$6 as myCancerGenomeDownload, sortValue$7 as myCancerGenomeSortValue, normalizeLevel, onFilterOptionSelect, download$5 as oncoKbAnnotationDownload, sortValue$6 as oncoKbAnnotationSortValue, oncogenicityIconClassNames, proteinChangeSortMethod, rightAlignedCell, download as signalDownload, getSortValue as signalSortValue, updatePositionHighlightFilters, updatePositionRangeHighlightFilters, updatePositionSelectionFilters };
11313
+ export { Annotation, AxisScale, AxisScaleSwitch, BadgeLabel, BadgeSelector, Civic, ClinvarInterpretation, ClinvarSummary, ColumnHeader, ColumnSelector, ColumnSortDirection, DEFAULT_ANNOTATION_DATA, DEFAULT_GENOME_NEXUS_URL, DEFAULT_MUTATION_ALIGNER_PROXY_URL_TEMPLATE, DEFAULT_MUTATION_ALIGNER_URL_TEMPLATE, DEFAULT_MUTATION_COLUMNS, DEFAULT_MY_GENE_URL_TEMPLATE, DEFAULT_ONCO_KB_URL, DEFAULT_PROTEIN_IMPACT_TYPE_COLORS, DEFAULT_UNIPROT_ID_URL_TEMPLATE, DataFilterType, DataTable, Dbsnp, DbsnpId, DefaultMutationMapperDataFetcher, DefaultMutationMapperDataStore, DefaultMutationMapperFilterApplier, DefaultMutationMapperStore, DefaultMutationTable, Domain, DropdownSelector, FilterResetPanel, GenericAnnotation, Gnomad, GnomadFrequency, GnomadFrequencyBreakdown, GnomadFrequencyTable, GnomadFrequencyValue, Hgvsc, Hgvsg, HotspotAnnotation, HotspotInfo, Lollipop, LollipopMutationPlot, LollipopPlot, LollipopPlotNoTooltip, LollipopTooltipCountInfo, MUTATION_COLUMNS_DEFINITION, MUTATION_COLUMN_HEADERS, MUTATION_STATUS_BADGE_STYLE_OVERRIDE, MUTATION_TYPE_PRIORITY, MutationColumn, MutationColumnName, MutationMapper, MutationStatus, MutationStatusBadgeSelector, MyCancerGenome, ONCOKB_DEFAULT_DATA, ONCOKB_DEFAULT_INFO, PercentToggle, ProteinChange, ProteinImpactTypeBadgeSelector, ProteinImpactTypeDropdownSelector, LollipopPlot as Sequence, Signal, SignalTable, TEXT_INPUT_FILTER_ID, TrackName, TrackSelector, USE_DEFAULT_PUBLIC_INSTANCE_FOR_ONCOKB, sortValue$4 as annotationSortValue, applyDataFilters, applyDataFiltersOnDatum, applyDefaultMutationFilter, applyDefaultMutationStatusFilter, applyDefaultPositionFilter, applyDefaultProteinImpactTypeFilter, calculateGnomadAlleleFrequency, download$6 as civicDownload, sortValue$7 as civicSortValue, download$4 as clinvarDownload, sortValue$3 as clinvarSortValue, download$3 as dbsnpDownload, sortValue$2 as dbsnpSortValue, fetchVariantAnnotationsByMutation, fetchVariantAnnotationsIndexedByGenomicLocation, findAllUniquePositions, findNonTextInputFilters, findOneMutationFilterValue, findTextInputFilter, getAllOptionValues, getAnnotationData, getClinvarData, getColorForProteinImpactType, getGnomadData, getHgvscColumnData, getHgvsgColumnData, getProteinImpactTypeBadgeLabel, getProteinImpactTypeOptionLabel, getSelectedOptionValues, getSignalData, getSingleSignalValue, getUrl, download$2 as gnomadDownload, sortValue$1 as gnomadSortValue, groupDataByGroupFilters, groupDataByProteinImpactType, handleOptionSelect, download$1 as hgvscDownload, sortValue as hgvscSortValue, sortValue$5 as hotspotAnnotationSortValue, includesSearchTextIgnoreCase, indexPositions, initDefaultMutationMapperStore, initDefaultTrackVisibility, initGenomeNexusClient, initGenomeNexusInternalClient, initOncoKbClient, mergeColumns, mutationTypeSort, download$5 as myCancerGenomeDownload, sortValue$6 as myCancerGenomeSortValue, onFilterOptionSelect, proteinChangeSortMethod, rightAlignedCell, download as signalDownload, getSortValue as signalSortValue, updatePositionHighlightFilters, updatePositionRangeHighlightFilters, updatePositionSelectionFilters };
12975
11314
  //# sourceMappingURL=index.es.js.map