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.js CHANGED
@@ -8,23 +8,22 @@ var mobx = require('mobx');
8
8
  var mobxReact = require('mobx-react');
9
9
  var React = require('react');
10
10
  var cbioportalFrontendCommons = require('cbioportal-frontend-commons');
11
+ var classNames = require('classnames');
11
12
  var cbioportalUtils = require('cbioportal-utils');
12
- var classnames = require('classnames');
13
- var autobind = require('autobind-decorator');
14
- var oncoKbLogoImgSrc = require('oncokb-styles/dist/images/logo/oncokb.svg');
15
- var reactBootstrap = require('react-bootstrap');
16
- var reactCollapse = require('react-collapse');
17
- var ReactTable = require('react-table');
18
- var reactIf = require('react-if');
19
- require('oncokb-styles/dist/oncokb.css');
13
+ var oncokbFrontendCommons = require('oncokb-frontend-commons');
20
14
  var genomeNexusTsApiClient = require('genome-nexus-ts-api-client');
21
15
  var oncokbTsApiClient = require('oncokb-ts-api-client');
16
+ var autobind = require('autobind-decorator');
17
+ var ReactTable = require('react-table');
22
18
  require('rc-tooltip/assets/bootstrap_white.css');
23
19
  var Select = require('react-select');
24
20
  var $ = require('jquery');
21
+ var reactCollapse = require('react-collapse');
25
22
  var Slider = require('react-rangeslider');
26
23
  require('react-rangeslider/lib/index.css');
27
24
  var oncoKbImg = require('oncokb-styles/dist/images/oncogenic.svg');
25
+ require('oncokb-frontend-commons/dist/styles.css');
26
+ var reactBootstrap = require('react-bootstrap');
28
27
  var request = require('superagent');
29
28
  var memoize = require('memoize-weak-decorator');
30
29
  var mobxpromise = require('mobxpromise');
@@ -52,10 +51,8 @@ function _interopNamespace(e) {
52
51
  var ___default = /*#__PURE__*/_interopDefaultLegacy(_);
53
52
  var ___namespace = /*#__PURE__*/_interopNamespace(_);
54
53
  var React__namespace = /*#__PURE__*/_interopNamespace(React);
55
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
56
- var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
54
+ var classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames);
57
55
  var autobind__default = /*#__PURE__*/_interopDefaultLegacy(autobind);
58
- var oncoKbLogoImgSrc__default = /*#__PURE__*/_interopDefaultLegacy(oncoKbLogoImgSrc);
59
56
  var ReactTable__default = /*#__PURE__*/_interopDefaultLegacy(ReactTable);
60
57
  var Select__default = /*#__PURE__*/_interopDefaultLegacy(Select);
61
58
  var $__default = /*#__PURE__*/_interopDefaultLegacy($);
@@ -67,7 +64,7 @@ var memoize__default = /*#__PURE__*/_interopDefaultLegacy(memoize);
67
64
  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"};
68
65
 
69
66
  function loaderIcon(className) {
70
- return (React__namespace.createElement("span", { className: classnames__default["default"]("" + annotationStyles['annotation-item'], "" + annotationStyles['annotation-item-load'], className) },
67
+ return (React__namespace.createElement("span", { className: classNames__default["default"]("" + annotationStyles['annotation-item'], "" + annotationStyles['annotation-item-load'], className) },
71
68
  React__namespace.createElement("i", { className: "fa fa-spinner fa-pulse" })));
72
69
  }
73
70
  function errorIcon(errorMessage) {
@@ -164,1607 +161,58 @@ var CivicCard = /** @class */ (function (_super) {
164
161
  React__namespace.createElement("p", null,
165
162
  React__namespace.createElement("span", { className: "civic-card-gene-name" },
166
163
  React__namespace.createElement("a", { href: this.props.geneUrl, target: "_blank" },
167
- React__namespace.createElement("b", null, this.props.geneName))),
168
- ' ',
169
- "- ",
170
- this.props.geneDescription)),
171
- React__namespace.createElement("div", { className: "col s12" },
172
- React__namespace.createElement("ul", null, this.generateVariants(this.props.variants))),
173
- React__namespace.createElement("div", { className: "item disclaimer" },
174
- React__namespace.createElement("span", null, "Disclaimer: This resource is intended for purely research purposes. It should not be used for emergencies or medical or professional advice.")))),
175
- React__namespace.createElement("div", { className: "item footer" },
176
- React__namespace.createElement("a", { href: this.props.geneUrl, target: "_blank" },
177
- React__namespace.createElement("img", { src: img$5, className: "civic-logo", alt: "CIViC" })))));
178
- }
179
- });
180
- return CivicCard;
181
- }(React__namespace.Component));
182
-
183
- var img$4 = "data:image/png;base64,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";
184
-
185
- var img$3 = "data:image/png;base64,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";
186
-
187
- function hideArrow$1(tooltipEl) {
188
- var arrowEl = tooltipEl.querySelector('.rc-tooltip-arrow');
189
- arrowEl.style.display = 'none';
190
- }
191
- function sortValue$8(civicEntry) {
192
- var score = 0;
193
- if (civicEntry) {
194
- score = 1;
195
- }
196
- return score;
197
- }
198
- function download$7(civicEntry) {
199
- if (!civicEntry) {
200
- return cbioportalUtils.CIVIC_NA_VALUE;
201
- }
202
- var variants = ___default["default"].values(civicEntry.variants);
203
- var values = [];
204
- if (variants && variants.length > 0 && variants[0].evidenceCounts) {
205
- ___default["default"].forEach(variants[0].evidenceCounts, function (value, key) {
206
- values.push(key + ": " + value);
207
- });
208
- }
209
- // this indicates that we have an entry but the evidence is empty
210
- if (values.length === 0) {
211
- return cbioportalUtils.CIVIC_NA_VALUE;
212
- }
213
- return values.join(', ');
214
- }
215
- var Civic = /** @class */ (function (_super) {
216
- tslib.__extends(Civic, _super);
217
- function Civic(props) {
218
- var _this = _super.call(this, props) || this;
219
- Object.defineProperty(_this, "tooltipDataLoadComplete", {
220
- enumerable: true,
221
- configurable: true,
222
- writable: true,
223
- value: false
224
- });
225
- mobx.makeObservable(_this);
226
- _this.cardContent = _this.cardContent.bind(_this);
227
- return _this;
228
- }
229
- Object.defineProperty(Civic.prototype, "render", {
230
- enumerable: false,
231
- configurable: true,
232
- writable: true,
233
- value: function () {
234
- var civicContent = (React__namespace.createElement("span", { className: "" + annotationStyles['annotation-item'] }));
235
- var civicImgWidth = 14;
236
- var civicImgHeight = 14;
237
- var civicImgSrc = !this.props.hasCivicVariants
238
- ? img$3
239
- : img$4;
240
- if (this.props.civicStatus == 'error') {
241
- civicContent = errorIcon('Error fetching Civic data');
242
- }
243
- else if (this.props.civicEntry !== undefined) {
244
- if (this.props.civicEntry !== null &&
245
- this.props.civicStatus == 'complete') {
246
- civicContent = (React__namespace.createElement("span", { className: "" + annotationStyles['annotation-item'] },
247
- React__namespace.createElement("img", { width: civicImgWidth, height: civicImgHeight, src: civicImgSrc, alt: "Civic Variant Entry" })));
248
- civicContent = (React__namespace.createElement(cbioportalFrontendCommons.DefaultTooltip, { overlay: this.cardContent.bind(this, this.props.civicEntry), placement: "right", trigger: ['hover', 'focus'], onPopupAlign: hideArrow$1, destroyTooltipOnHide: false }, civicContent));
249
- }
250
- }
251
- else {
252
- // It's still unknown (undefined) if the current gene has a Civic entry or not.
253
- civicContent = loaderIcon('pull-left');
254
- }
255
- return civicContent;
256
- }
257
- });
258
- Object.defineProperty(Civic.prototype, "cardContent", {
259
- enumerable: false,
260
- configurable: true,
261
- writable: true,
262
- value: function (civicEntry) {
263
- return (React__namespace.createElement(CivicCard, { title: "CIViC Variants", geneName: civicEntry.name, geneDescription: civicEntry.description, geneUrl: civicEntry.url, variants: civicEntry.variants }));
264
- }
265
- });
266
- tslib.__decorate([
267
- mobx.observable
268
- ], Civic.prototype, "tooltipDataLoadComplete", void 0);
269
- Civic = tslib.__decorate([
270
- mobxReact.observer
271
- ], Civic);
272
- return Civic;
273
- }(React__namespace.Component));
274
-
275
- var NoClinvarData = function () {
276
- return (React__namespace.createElement(cbioportalFrontendCommons.DefaultTooltip, { placement: "topLeft", overlay: React__namespace.createElement("span", null, "Variant has no ClinVar data.") },
277
- React__namespace.createElement("span", { style: {
278
- height: '100%',
279
- width: '100%',
280
- display: 'block',
281
- overflow: 'hidden',
282
- } }, "\u00A0")));
283
- };
284
- var ClinvarSummary = function (props) {
285
- if (!props.clinvar) {
286
- return React__namespace.createElement(NoClinvarData, null);
287
- }
288
- else {
289
- var clinvarId = props.clinvar.clinvarId;
290
- var clinvarLink = "https://www.ncbi.nlm.nih.gov/clinvar/variation/" + clinvarId + "/";
291
- var clinicalSignificance = props.clinvar.clinicalSignificance;
292
- var conflictingClinicalSignificance = props.clinvar.conflictingClinicalSignificance;
293
- return (React__namespace.createElement(cbioportalFrontendCommons.TruncatedText, { maxLength: 30, text: clinicalSignificance, addTooltip: "always", tooltip: React__namespace.createElement("div", { style: { maxWidth: 300 } },
294
- React__namespace.createElement("div", null, clinicalSignificance),
295
- conflictingClinicalSignificance && (React__namespace.createElement("div", null, conflictingClinicalSignificance)),
296
- React__namespace.createElement("div", null,
297
- "(ClinVar ID:",
298
- ' ',
299
- React__namespace.createElement("a", { href: clinvarLink, target: "_blank" }, clinvarId),
300
- ")")) }));
301
- }
302
- };
303
-
304
- // oncogenic value => score
305
- // (used for sorting purposes)
306
- var ONCOGENIC_SCORE = {
307
- Unknown: 0,
308
- Inconclusive: 0,
309
- 'Likely Neutral': 0,
310
- Resistance: 5,
311
- 'Likely Oncogenic': 5,
312
- Oncogenic: 5,
313
- };
314
- // sensitivity level => score
315
- // (used for sorting purposes)
316
- var SENSITIVITY_LEVEL_SCORE = {
317
- '4': 1,
318
- '3B': 2,
319
- '3A': 3,
320
- '2': 5,
321
- '1': 6,
322
- };
323
- // resistance level <-> score
324
- // (used for sorting purposes)
325
- var RESISTANCE_LEVEL_SCORE = {
326
- R3: 1,
327
- R2: 2,
328
- R1: 3,
329
- };
330
- // diagnostic level <-> score
331
- // (used for sorting purposes)
332
- var DIAGNOSTIC_LEVEL_SCORE = {
333
- Dx3: 1,
334
- Dx2: 2,
335
- Dx1: 3,
336
- };
337
- // prognostic level <-> score
338
- // (used for sorting purposes)
339
- var PROGNOSTIC_LEVEL_SCORE = {
340
- Px3: 1,
341
- Px2: 2,
342
- Px1: 3,
343
- };
344
- function normalizeLevel(level) {
345
- if (level) {
346
- var matchArray = level.match(/LEVEL_(.*)/);
347
- if (matchArray && matchArray.length >= 2) {
348
- return matchArray[1];
349
- }
350
- else {
351
- return level;
352
- }
353
- }
354
- else {
355
- return null;
356
- }
357
- }
358
- function normalizeOncogenicity(oncogenicity) {
359
- return (oncogenicity || 'unknown')
360
- .trim()
361
- .toLowerCase()
362
- .replace(/\s/, '-');
363
- }
364
- function levelIconClassNames(level) {
365
- if (level) {
366
- return "oncokb icon level-" + level;
367
- }
368
- return '';
369
- }
370
- function oncogenicityIconClassNames(oncogenicity) {
371
- return "oncokb icon " + normalizeOncogenicity(oncogenicity);
372
- }
373
- function annotationIconClassNames(type, highestLevel, indicator) {
374
- return type === cbioportalUtils.OncoKbCardDataType.BIOLOGICAL
375
- ? oncogenicityIconClassNames((indicator === null || indicator === void 0 ? void 0 : indicator.oncogenic) || '')
376
- : levelIconClassNames(normalizeLevel(highestLevel) || '');
377
- }
378
- function calcHighestIndicatorLevel(type, indicator) {
379
- var highestLevel = '';
380
- if (indicator) {
381
- switch (type) {
382
- case cbioportalUtils.OncoKbCardDataType.TXS:
383
- highestLevel = indicator.highestSensitiveLevel;
384
- break;
385
- case cbioportalUtils.OncoKbCardDataType.TXR:
386
- highestLevel = indicator.highestResistanceLevel;
387
- break;
388
- case cbioportalUtils.OncoKbCardDataType.DX:
389
- highestLevel = indicator.highestDiagnosticImplicationLevel;
390
- break;
391
- case cbioportalUtils.OncoKbCardDataType.PX:
392
- highestLevel = indicator.highestPrognosticImplicationLevel;
393
- break;
394
- }
395
- }
396
- return highestLevel;
397
- }
398
- function calcOncogenicScore(oncogenic) {
399
- return ONCOGENIC_SCORE[oncogenic] || 0;
400
- }
401
- function calcSensitivityLevelScore(level) {
402
- return SENSITIVITY_LEVEL_SCORE[normalizeLevel(level) || ''] || 0;
403
- }
404
- function calcResistanceLevelScore(level) {
405
- return RESISTANCE_LEVEL_SCORE[normalizeLevel(level) || ''] || 0;
406
- }
407
- function calcDiagnosticLevelScore(level) {
408
- return DIAGNOSTIC_LEVEL_SCORE[normalizeLevel(level) || ''] || 0;
409
- }
410
- function calcPrognosticLevelScore(level) {
411
- return PROGNOSTIC_LEVEL_SCORE[normalizeLevel(level) || ''] || 0;
412
- }
413
- /**
414
- * Return combined alterations name, separated by comma.
415
- * Same location variant will be truncated into AALocationAllele e.g. V600E/K
416
- *
417
- * @param {Array} alterations - List of alterations
418
- * @return {string} - Truncated alteration name
419
- */
420
- function mergeAlterations(alterations) {
421
- var positions = {};
422
- var regular = [];
423
- var regExp = new RegExp('^([A-Z])([0-9]+)([A-Z]$)');
424
- if (___default["default"].isString(alterations)) {
425
- return alterations;
426
- }
427
- ___default["default"].each(alterations, function (alteration) {
428
- var result = regExp.exec(alteration);
429
- if (___default["default"].isArray(result) && result.length === 4) {
430
- if (!positions.hasOwnProperty(result[2])) {
431
- positions[result[2]] = {};
432
- }
433
- if (!positions[result[2]].hasOwnProperty(result[1])) {
434
- // Avoid duplication, use object instead of array
435
- positions[result[2]][result[1]] = {};
436
- }
437
- positions[result[2]][result[1]][result[3]] = 1;
438
- }
439
- else {
440
- regular.push(alteration);
441
- }
442
- });
443
- ___default["default"].each(___default["default"].keys(positions)
444
- .map(function (e) {
445
- return Number(e);
446
- })
447
- .sort(), function (position) {
448
- ___default["default"].each(___default["default"].keys(positions[position]).sort(), function (aa) {
449
- regular.push(aa +
450
- position +
451
- ___default["default"].keys(positions[position][aa])
452
- .sort()
453
- .join('/'));
454
- });
455
- });
456
- return regular.join(', ');
457
- }
458
- /**
459
- * Return the positional variant of the missense mutation
460
- * @param alteration The missense mutation
461
- */
462
- function getPositionalVariant(alteration) {
463
- var regExp = new RegExp('^([A-Z]+)([0-9]+)([A-Z]*)$');
464
- var result = regExp.exec(alteration);
465
- // Only if the alteration is missense mutation or positional variant
466
- // result[0]: matched alteration
467
- // result[1]: reference alleles (there could be multiple reference alleles, we only return the first allele)
468
- // result[2]: position(protein start/end)
469
- // result[3]: variant alleles (empty if the alteration is positional variant already)
470
- if (___default["default"].isArray(result) &&
471
- result.length === 4 &&
472
- (!result[3] || result[1].length === result[3].length)) {
473
- return "" + result[1][0] + result[2];
474
- }
475
- return undefined;
476
- }
477
- function getTumorTypeName(tumorType) {
478
- if (!tumorType) {
479
- return '';
480
- }
481
- else if (tumorType.name) {
482
- return tumorType.name;
483
- }
484
- else if (tumorType.mainType) {
485
- return tumorType.mainType.name;
486
- }
487
- else {
488
- return '';
489
- }
490
- }
491
- function getTumorTypeNameWithExclusionInfo(tumorType, excludedTumorTypes) {
492
- var name = getTumorTypeName(tumorType);
493
- if (!___default["default"].isEmpty(excludedTumorTypes)) {
494
- name = name + " (excluding " + excludedTumorTypes
495
- .map(function (ett) { return getTumorTypeName(ett); })
496
- .join(', ') + ")";
497
- }
498
- return name;
499
- }
500
- function groupOncoKbIndicatorDataByMutations(mutationsByPosition, oncoKbData, getTumorType, getEntrezGeneId, filter) {
501
- var indicatorMap = {};
502
- ___default["default"].keys(mutationsByPosition).forEach(function (key) {
503
- var position = Number(key);
504
- var indicators = mutationsByPosition[position]
505
- .map(function (mutation) {
506
- return getIndicatorData(mutation, oncoKbData, getTumorType, getEntrezGeneId);
507
- })
508
- .filter(function (indicator) {
509
- return indicator !== undefined && (!filter || filter(indicator));
510
- });
511
- if (position > 0 && indicators.length > 0) {
512
- indicatorMap[position] = indicators;
513
- }
514
- });
515
- return indicatorMap;
516
- }
517
- function getIndicatorData(mutation, oncoKbData, getTumorType, getEntrezGeneId) {
518
- if (oncoKbData.indicatorMap === null) {
519
- return undefined;
520
- }
521
- var id = '';
522
- // @ts-ignore
523
- var sv = mutation.structuralVariant;
524
- if (sv) {
525
- var structuralVariantType = cbioportalUtils.deriveStructuralVariantType(sv);
526
- id = cbioportalUtils.generateQueryStructuralVariantId(sv.site1EntrezGeneId, sv.site2EntrezGeneId, getTumorType(mutation), structuralVariantType);
527
- }
528
- else {
529
- id = cbioportalUtils.generateQueryVariantId(getEntrezGeneId(mutation), getTumorType(mutation), mutation.proteinChange, mutation.mutationType);
530
- }
531
- return oncoKbData.indicatorMap[id];
532
- }
533
- function defaultOncoKbIndicatorFilter(indicator) {
534
- return indicator.oncogenic
535
- .toLowerCase()
536
- .trim()
537
- .includes('oncogenic');
538
- }
539
- function defaultOncoKbFilter(mutation, oncoKbData, getTumorType, getEntrezGeneId) {
540
- var filter = true;
541
- if (oncoKbData && getTumorType && getEntrezGeneId) {
542
- var indicatorData = getIndicatorData(mutation, oncoKbData, getTumorType, getEntrezGeneId);
543
- filter = indicatorData
544
- ? defaultOncoKbIndicatorFilter(indicatorData)
545
- : false;
546
- }
547
- return filter;
548
- }
549
-
550
- var img$2 = "data:image/png;base64,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";
551
-
552
- var mcgStyles = {"link-list":"myCancerGenome-module_link-list__2wFhH"};
553
-
554
- function placeArrow$1(tooltipEl) {
555
- var arrowEl = tooltipEl.querySelector('.rc-tooltip-arrow');
556
- arrowEl.style.left = '10px';
557
- }
558
- function sortValue$7(links) {
559
- return links.length > 0 ? 1 : 0;
560
- }
561
- function download$6(links) {
562
- return links.length > 0 ? 'present' : 'not present';
563
- }
564
- function myCancerGenomeLinks(linksHTML) {
565
- var links = [];
566
- ___default["default"].each(linksHTML, function (link, index) {
567
- // TODO this is a workaround, ideally we should fix the data itself
568
- // parse the data as an HTML dom element, since it is formatted as an HTML link.
569
- var myCancerGenomeLink = cbioportalUtils.parseMyCancerGenomeLink(link);
570
- if (myCancerGenomeLink) {
571
- links.push(React__namespace.createElement("li", { key: index },
572
- React__namespace.createElement("a", { href: myCancerGenomeLink.url, target: "_blank" }, myCancerGenomeLink.text)));
573
- }
574
- });
575
- return (React__namespace.createElement("span", null,
576
- React__namespace.createElement("b", null, "My Cancer Genome links:"),
577
- React__namespace.createElement("br", null),
578
- React__namespace.createElement("ul", { className: mcgStyles['link-list'] }, links)));
579
- }
580
- var MyCancerGenome = /** @class */ (function (_super) {
581
- tslib.__extends(MyCancerGenome, _super);
582
- function MyCancerGenome() {
583
- return _super !== null && _super.apply(this, arguments) || this;
584
- }
585
- Object.defineProperty(MyCancerGenome.prototype, "render", {
586
- enumerable: false,
587
- configurable: true,
588
- writable: true,
589
- value: function () {
590
- var myCancerGenomeContent = (React__namespace.createElement("span", { className: "" + annotationStyles['annotation-item'] }));
591
- if (this.props.linksHTML.length > 0) {
592
- var arrowContent = React__namespace.createElement("div", { className: "rc-tooltip-arrow-inner" });
593
- var tooltipContent = myCancerGenomeLinks(this.props.linksHTML);
594
- myCancerGenomeContent = (React__namespace.createElement(cbioportalFrontendCommons.DefaultTooltip, { overlay: tooltipContent, placement: "topLeft", trigger: ['hover', 'focus'], arrowContent: arrowContent, onPopupAlign: placeArrow$1 },
595
- React__namespace.createElement("span", { className: annotationStyles['annotation-item'] + " mcg" },
596
- React__namespace.createElement("img", { width: "14", height: "14", src: img$2, alt: "My Cancer Genome Symbol" }))));
597
- }
598
- return myCancerGenomeContent;
599
- }
600
- });
601
- return MyCancerGenome;
602
- }(React__namespace.Component));
603
-
604
- function hideArrow(tooltipEl) {
605
- var arrowEl = tooltipEl.querySelector('.rc-tooltip-arrow');
606
- arrowEl.style.display = 'none';
607
- }
608
- var AnnotationIcon = function (props) {
609
- if (props.availableDataTypes !== undefined &&
610
- !props.availableDataTypes.includes(props.type)) {
611
- return null;
612
- }
613
- var highestLevel = calcHighestIndicatorLevel(props.type, props.indicator);
614
- return (React__default["default"].createElement(AnnotationIconWithTooltip, { tooltipOverlay: props.tooltipOverlay, icon: React__default["default"].createElement("i", { className: annotationIconClassNames(props.type, highestLevel, props.indicator), "data-test": "oncogenic-icon-image" }) }));
615
- };
616
- var AnnotationIconWithTooltip = function (props) {
617
- if (props.icon) {
618
- return (React__default["default"].createElement(cbioportalFrontendCommons.DefaultTooltip, { overlayClassName: "oncokb-tooltip", overlay: function () {
619
- return props.tooltipOverlay ? props.tooltipOverlay : null;
620
- }, placement: "right", trigger: ['hover', 'focus'], onPopupAlign: hideArrow, destroyTooltipOnHide: true },
621
- React__default["default"].createElement("span", { className: "" + annotationStyles['annotation-item'] }, props.icon)));
622
- }
623
- else {
624
- return null;
625
- }
626
- };
627
-
628
- var BIOLOGICAL_COLOR_MAP = {
629
- oncogenic: '#0968C3',
630
- 'likely-oncogenic': '#0968C3',
631
- resistance: '#0968C3',
632
- neutral: '#696969',
633
- 'likely-neutral': '#696969',
634
- inconclusive: '#AAAAAA',
635
- vus: '#696969',
636
- unknown: '#CCCCCC',
637
- };
638
- var LEVEL_COLOR_MAP = {
639
- '1': '#33A02C',
640
- '2': '#1F78B4',
641
- '3': '#984EA3',
642
- '3A': '#984EA3',
643
- '3B': '#BE98CE',
644
- '4': '#424242',
645
- R1: '#EE3424',
646
- R2: '#F79A92',
647
- R3: '#FCD6D3',
648
- Dx1: '#33A02C',
649
- Dx2: '#1F78B4',
650
- Dx3: '#984EA3',
651
- Px1: '#33A02C',
652
- Px2: '#1F78B4',
653
- Px3: '#984EA3',
654
- };
655
- function getLevelColor(highestLevel, defaultColor) {
656
- if (defaultColor === void 0) { defaultColor = '#CCCCCC'; }
657
- var level = normalizeLevel(highestLevel || null) || '';
658
- return LEVEL_COLOR_MAP[level] || defaultColor;
659
- }
660
- function shouldDrawShape(type, level, availableDataTypes) {
661
- return (level &&
662
- availableDataTypes !== undefined &&
663
- availableDataTypes.includes(type));
664
- }
665
- function getOncogenicShape(indicator) {
666
- var oncogenicity = normalizeOncogenicity((indicator === null || indicator === void 0 ? void 0 : indicator.oncogenic) || '');
667
- var color = BIOLOGICAL_COLOR_MAP[oncogenicity] || '#CCCCCC';
668
- return (React__default["default"].createElement("g", { transform: "translate(9, 9)" },
669
- React__default["default"].createElement("circle", { r: "6", fill: "none", strokeWidth: "2", stroke: color }),
670
- oncogenicity !== 'vus' && oncogenicity !== 'unknown' && (React__default["default"].createElement("g", null,
671
- React__default["default"].createElement("circle", { r: "3", fill: "none", strokeWidth: "2", stroke: color }),
672
- React__default["default"].createElement("circle", { r: "1.5", fill: color, stroke: "none" })))));
673
- }
674
- function getTherapeuticSensitivityShape(indicator, availableDataTypes) {
675
- var highestLevel = indicator === null || indicator === void 0 ? void 0 : indicator.highestSensitiveLevel;
676
- if (!shouldDrawShape(cbioportalUtils.OncoKbCardDataType.TXS, highestLevel, availableDataTypes)) {
677
- return null;
678
- }
679
- var fillColor = getLevelColor(highestLevel, '#33A02C');
680
- return (React__default["default"].createElement("g", { transform: "translate(14.5, 3.5)" },
681
- React__default["default"].createElement("circle", { r: "4", fill: fillColor, stroke: "#ffffff", strokeWidth: "1" })));
682
- }
683
- function getTherapeuticResistanceShape(indicator, availableDataTypes) {
684
- var highestLevel = indicator === null || indicator === void 0 ? void 0 : indicator.highestResistanceLevel;
685
- if (!shouldDrawShape(cbioportalUtils.OncoKbCardDataType.TXR, highestLevel, availableDataTypes)) {
686
- return null;
687
- }
688
- var fillColor = getLevelColor(highestLevel, '#EE3424');
689
- return (React__default["default"].createElement("g", { transform: "translate(14.5, 14.5)" },
690
- React__default["default"].createElement("circle", { r: "4", fill: fillColor, stroke: "#ffffff", strokeWidth: "1" })));
691
- }
692
- function getDiagnosticShape(indicator, availableDataTypes) {
693
- var highestLevel = indicator === null || indicator === void 0 ? void 0 : indicator.highestDiagnosticImplicationLevel;
694
- if (!shouldDrawShape(cbioportalUtils.OncoKbCardDataType.DX, highestLevel, availableDataTypes)) {
695
- return null;
696
- }
697
- var fillColor = getLevelColor(highestLevel, '#33A02C');
698
- return (React__default["default"].createElement("g", { transform: "translate(-0.5, -0.5)" },
699
- React__default["default"].createElement("rect", { width: "7", height: "7", fill: fillColor, stroke: "#ffffff", strokeWidth: "1" })));
700
- }
701
- function getPrognosticShape(indicator, availableDataTypes) {
702
- var highestLevel = indicator === null || indicator === void 0 ? void 0 : indicator.highestPrognosticImplicationLevel;
703
- if (!shouldDrawShape(cbioportalUtils.OncoKbCardDataType.PX, highestLevel, availableDataTypes)) {
704
- return null;
705
- }
706
- var fillColor = getLevelColor(highestLevel, '#33A02C');
707
- return (React__default["default"].createElement("g", { transform: "translate(0, 10.5)" },
708
- React__default["default"].createElement("polygon", { points: "3.5 0, 8 8, -1 8", fill: fillColor, stroke: "#ffffff", strokeWidth: "1" })));
709
- }
710
- var CompactAnnotationIcon = function (props) {
711
- var indicatorForLevelIcons = props.usingPublicOncoKbInstance
712
- ? undefined
713
- : props.indicator;
714
- return (React__default["default"].createElement("svg", { version: "1.1", width: "18", height: "18", "data-test": "oncogenic-icon-image" },
715
- getOncogenicShape(props.indicator),
716
- getTherapeuticSensitivityShape(indicatorForLevelIcons, props.availableDataTypes),
717
- getTherapeuticResistanceShape(indicatorForLevelIcons, props.availableDataTypes),
718
- getDiagnosticShape(indicatorForLevelIcons, props.availableDataTypes),
719
- getPrognosticShape(indicatorForLevelIcons, props.availableDataTypes)));
720
- };
721
-
722
- 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"};
723
-
724
- var _a$4;
725
- exports.OtherBiomarkersQueryType = void 0;
726
- (function (OtherBiomarkersQueryType) {
727
- OtherBiomarkersQueryType["MSIH"] = "MSIH";
728
- OtherBiomarkersQueryType["TMBH"] = "TMBI";
729
- })(exports.OtherBiomarkersQueryType || (exports.OtherBiomarkersQueryType = {}));
730
- var OTHER_BIOMARKER_HUGO_SYMBOL = 'Other Biomarkers';
731
- var MSI_H_NAME = 'MSI-H';
732
- var TMB_H_NAME = 'TMB-H';
733
- var OTHER_BIOMARKER_NAME = (_a$4 = {},
734
- _a$4[exports.OtherBiomarkersQueryType.MSIH] = MSI_H_NAME,
735
- _a$4[exports.OtherBiomarkersQueryType.TMBH] = TMB_H_NAME,
736
- _a$4);
737
-
738
- var OncoKbCardTitle = function (props) {
739
- var titleContent = [];
740
- if (props.hugoSymbol &&
741
- props.hugoSymbol !== OTHER_BIOMARKER_HUGO_SYMBOL &&
742
- (!props.variant || !props.variant.includes(props.hugoSymbol))) {
743
- titleContent.push(props.hugoSymbol);
744
- }
745
- if (props.variant) {
746
- titleContent.push(props.variant);
747
- }
748
- if (props.tumorType) {
749
- if (titleContent.length > 0) {
750
- titleContent.push('in');
751
- }
752
- titleContent.push(props.tumorType);
753
- }
754
- return (React__namespace.createElement("div", { className: mainStyles['title'], "data-test": "oncokb-card-title" }, React__namespace.createElement("span", null, titleContent.join(' '))));
755
- };
756
-
757
- var levelStyles = {"levels":"level-module_levels__2ZL1B","levels-li":"level-module_levels-li__1tgCC"};
758
-
759
- var collapsibleStyles = {"collapsible-header":"collapsible-module_collapsible-header__3nZtU","levels-collapse":"collapsible-module_levels-collapse__2GBRW"};
760
-
761
- var OncoKbCardLevelsOfEvidenceDropdown = /** @class */ (function (_super) {
762
- tslib.__extends(OncoKbCardLevelsOfEvidenceDropdown, _super);
763
- function OncoKbCardLevelsOfEvidenceDropdown(props) {
764
- var _this = _super.call(this, props) || this;
765
- Object.defineProperty(_this, "levelsCollapsed", {
766
- enumerable: true,
767
- configurable: true,
768
- writable: true,
769
- value: true
770
- });
771
- mobx.makeObservable(_this);
772
- return _this;
773
- }
774
- Object.defineProperty(OncoKbCardLevelsOfEvidenceDropdown.prototype, "levelListItem", {
775
- enumerable: false,
776
- configurable: true,
777
- writable: true,
778
- value: function (level, levelDes) {
779
- return (React__default["default"].createElement("li", { key: level, className: levelStyles['levels-li'] },
780
- React__default["default"].createElement("i", { className: levelIconClassNames(level) }),
781
- levelDes));
782
- }
783
- });
784
- Object.defineProperty(OncoKbCardLevelsOfEvidenceDropdown.prototype, "generateLevelRows", {
785
- enumerable: false,
786
- configurable: true,
787
- writable: true,
788
- value: function () {
789
- var _this = this;
790
- var rows = [];
791
- this.props.levels.forEach(function (level) {
792
- rows.push(_this.levelListItem(level, _this.props.levelDes[level]));
793
- });
794
- return rows;
795
- }
796
- });
797
- Object.defineProperty(OncoKbCardLevelsOfEvidenceDropdown.prototype, "handleLevelCollapse", {
798
- enumerable: false,
799
- configurable: true,
800
- writable: true,
801
- value: function () {
802
- this.levelsCollapsed = !this.levelsCollapsed;
803
- }
804
- });
805
- Object.defineProperty(OncoKbCardLevelsOfEvidenceDropdown.prototype, "render", {
806
- enumerable: false,
807
- configurable: true,
808
- writable: true,
809
- value: function () {
810
- return (React__default["default"].createElement("div", null,
811
- React__default["default"].createElement("div", { "data-test": "oncokb-card-levels-of-evidence-dropdown-header", className: collapsibleStyles['collapsible-header'], onClick: this.handleLevelCollapse },
812
- "Levels of Evidence",
813
- React__default["default"].createElement("span", { style: { float: 'right' } }, this.levelsCollapsed ? (React__default["default"].createElement("i", { className: classnames__default["default"]('fa fa-chevron-down', mainStyles['blue-icon']) })) : (React__default["default"].createElement("i", { className: classnames__default["default"]('fa fa-chevron-up', mainStyles['blue-icon']) })))),
814
- React__default["default"].createElement(reactCollapse.Collapse, { isOpened: !this.levelsCollapsed },
815
- React__default["default"].createElement("div", { className: classnames__default["default"](levelStyles.levels, collapsibleStyles['levels-collapse']) },
816
- React__default["default"].createElement("ul", { style: {
817
- lineHeight: 8,
818
- padding: 0,
819
- } }, this.generateLevelRows())))));
820
- }
821
- });
822
- tslib.__decorate([
823
- mobx.observable
824
- ], OncoKbCardLevelsOfEvidenceDropdown.prototype, "levelsCollapsed", void 0);
825
- tslib.__decorate([
826
- mobx.action.bound
827
- ], OncoKbCardLevelsOfEvidenceDropdown.prototype, "handleLevelCollapse", null);
828
- OncoKbCardLevelsOfEvidenceDropdown = tslib.__decorate([
829
- mobxReact.observer
830
- ], OncoKbCardLevelsOfEvidenceDropdown);
831
- return OncoKbCardLevelsOfEvidenceDropdown;
832
- }(React__default["default"].Component));
833
-
834
- var OncoKBSuggestAnnotationLinkout = /** @class */ (function (_super) {
835
- tslib.__extends(OncoKBSuggestAnnotationLinkout, _super);
836
- function OncoKBSuggestAnnotationLinkout() {
837
- return _super !== null && _super.apply(this, arguments) || this;
838
- }
839
- Object.defineProperty(OncoKBSuggestAnnotationLinkout.prototype, "render", {
840
- enumerable: false,
841
- configurable: true,
842
- writable: true,
843
- value: function () {
844
- return (React__namespace.createElement("div", null,
845
- React__namespace.createElement("span", null, "The gene is listed under "),
846
- React__namespace.createElement("a", { href: "https://www.oncokb.org/cancerGenes", target: "_blank" }, "OncoKB Cancer Gene List"),
847
- React__namespace.createElement("span", null, " but hasn't been curated yet. Please feel free to "),
848
- React__namespace.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"),
849
- "."));
850
- }
851
- });
852
- return OncoKBSuggestAnnotationLinkout;
853
- }(React__namespace.Component));
854
-
855
- var levelTooltipContent = function (level) {
856
- return (React__namespace.createElement("div", { style: { maxWidth: '200px' } }, OncoKbHelper.LEVEL_DESC[level]));
857
- };
858
- var LevelIcon = function (props) {
859
- return (React__namespace.createElement(cbioportalFrontendCommons.DefaultTooltip, { overlay: levelTooltipContent(props.level), placement: "left", disabled: !props.showDescription, trigger: ['hover', 'focus'], destroyTooltipOnHide: true },
860
- React__namespace.createElement("i", { className: levelIconClassNames(props.level) })));
861
- };
862
-
863
- var OncoKbHelper = /** @class */ (function () {
864
- function OncoKbHelper() {
865
- }
866
- Object.defineProperty(OncoKbHelper, "TX_LEVELS", {
867
- get: function () {
868
- return ['1', '2', '3A', '3B', '4', 'R1', 'R2'];
869
- },
870
- enumerable: false,
871
- configurable: true
872
- });
873
- Object.defineProperty(OncoKbHelper, "DX_LEVELS", {
874
- get: function () {
875
- return ['Dx1', 'Dx2', 'Dx3'];
876
- },
877
- enumerable: false,
878
- configurable: true
879
- });
880
- Object.defineProperty(OncoKbHelper, "PX_LEVELS", {
881
- get: function () {
882
- return ['Px1', 'Px2', 'Px3'];
883
- },
884
- enumerable: false,
885
- configurable: true
886
- });
887
- Object.defineProperty(OncoKbHelper, "LEVELS", {
888
- get: function () {
889
- return tslib.__spreadArrays(this.TX_LEVELS, this.DX_LEVELS, this.PX_LEVELS);
890
- },
891
- enumerable: false,
892
- configurable: true
893
- });
894
- Object.defineProperty(OncoKbHelper, "getLevelsDesc", {
895
- enumerable: false,
896
- configurable: true,
897
- writable: true,
898
- value: function (dataType) {
899
- switch (dataType) {
900
- case cbioportalUtils.OncoKbCardDataType.TXS:
901
- case cbioportalUtils.OncoKbCardDataType.TXR:
902
- return ___default["default"].pick(this.LEVEL_DESC, this.TX_LEVELS);
903
- case cbioportalUtils.OncoKbCardDataType.DX:
904
- return ___default["default"].pick(this.LEVEL_DESC, this.DX_LEVELS);
905
- case cbioportalUtils.OncoKbCardDataType.PX:
906
- return ___default["default"].pick(this.LEVEL_DESC, this.PX_LEVELS);
907
- default:
908
- return {};
909
- }
910
- }
911
- });
912
- Object.defineProperty(OncoKbHelper, "LEVEL_DESC", {
913
- get: function () {
914
- return {
915
- '1': (React__namespace.createElement("span", null,
916
- React__namespace.createElement("b", null, "FDA-recognized"),
917
- " biomarker predictive of response to an",
918
- ' ',
919
- React__namespace.createElement("b", null, "FDA-approved drug"),
920
- " in this indication")),
921
- '2': (React__namespace.createElement("span", null,
922
- React__namespace.createElement("b", null, "Standard care"),
923
- " biomarker recommended by the NCCN or other expert panels predictive of response to an",
924
- ' ',
925
- React__namespace.createElement("b", null, "FDA-approved drug"),
926
- " in this indication")),
927
- '3A': (React__namespace.createElement("span", null,
928
- React__namespace.createElement("b", null, "Compelling clinical evidence"),
929
- " supports the biomarker as being predictive of response to a drug in this indication")),
930
- '3B': (React__namespace.createElement("span", null,
931
- React__namespace.createElement("b", null, "Standard care"),
932
- " or ",
933
- React__namespace.createElement("b", null, "investigational"),
934
- " biomarker",
935
- ' ',
936
- "predictive of response to an ",
937
- React__namespace.createElement("b", null, "FDA-approved"),
938
- " or",
939
- ' ',
940
- React__namespace.createElement("b", null, "investigational"),
941
- " drug in another indication")),
942
- '4': (React__namespace.createElement("span", null,
943
- React__namespace.createElement("b", null, "Compelling biological evidence"),
944
- " supports the biomarker as being predictive of response to a drug")),
945
- R1: (React__namespace.createElement("span", null,
946
- React__namespace.createElement("b", null, "Standard care"),
947
- " biomarker predictive of",
948
- ' ',
949
- React__namespace.createElement("b", null, "resistance"),
950
- " to an ",
951
- React__namespace.createElement("b", null, "FDA-approved"),
952
- " drug",
953
- ' ',
954
- React__namespace.createElement("b", null, "in this indication"))),
955
- R2: (React__namespace.createElement("span", null,
956
- React__namespace.createElement("b", null, "Compelling clinical evidence"),
957
- " supports the biomarker as being predictive of ",
958
- React__namespace.createElement("b", null, "resistance"),
959
- " to a drug")),
960
- Dx1: (React__namespace.createElement("span", null,
961
- React__namespace.createElement("b", null, "FDA and/or professional guideline-recognized"),
962
- ' ',
963
- "biomarker required for diagnosis in this indication")),
964
- Dx2: (React__namespace.createElement("span", null,
965
- React__namespace.createElement("b", null, "FDA and/or professional guideline-recognized"),
966
- ' ',
967
- "biomarker that supports diagnosis in this indication")),
968
- Dx3: (React__namespace.createElement("span", null,
969
- "Biomarker that ",
970
- React__namespace.createElement("b", null, "may assist disease diagnosis"),
971
- " in this indication based on ",
972
- React__namespace.createElement("b", null, "clinical evidence"))),
973
- Px1: (React__namespace.createElement("span", null,
974
- React__namespace.createElement("b", null, "FDA and/or professional guideline-recognized"),
975
- ' ',
976
- "biomarker prognostic in this indication based on",
977
- ' ',
978
- React__namespace.createElement("b", null, "well-powered studie(s)"))),
979
- Px2: (React__namespace.createElement("span", null,
980
- React__namespace.createElement("b", null, "FDA and/or professional guideline-recognized"),
981
- ' ',
982
- "biomarker prognostic in this indication based on",
983
- ' ',
984
- React__namespace.createElement("b", null, "a single or multiple small studies"))),
985
- Px3: (React__namespace.createElement("span", null,
986
- "Biomarker is prognostic in this indication based on",
987
- ' ',
988
- React__namespace.createElement("b", null, "clinical evidence"),
989
- " in ",
990
- React__namespace.createElement("b", null, "well-powered studies"))),
991
- };
992
- },
993
- enumerable: false,
994
- configurable: true
995
- });
996
- Object.defineProperty(OncoKbHelper, "getDefaultColumnDefinition", {
997
- enumerable: false,
998
- configurable: true,
999
- writable: true,
1000
- value: function (columnKey) {
1001
- switch (columnKey) {
1002
- case 'level':
1003
- return {
1004
- id: 'level',
1005
- Header: React__namespace.createElement("div", { style: { textAlign: 'center' } }, "Level"),
1006
- accessor: 'level',
1007
- maxWidth: 45,
1008
- sortMethod: function (a, b) {
1009
- return cbioportalUtils.defaultSortMethod(cbioportalUtils.LEVELS.all.indexOf(normalizeLevel(a) || ''), cbioportalUtils.LEVELS.all.indexOf(normalizeLevel(b) || ''));
1010
- },
1011
- Cell: function (props) {
1012
- var normalizedLevel = normalizeLevel(props.value) || '';
1013
- return (React__namespace.createElement(LevelIcon, { level: normalizedLevel, showDescription: true }));
1014
- },
1015
- };
1016
- case 'alterations':
1017
- return {
1018
- id: 'alterations',
1019
- Header: React__namespace.createElement("span", null, "Alteration(s)"),
1020
- accessor: 'alterations',
1021
- minWidth: 80,
1022
- sortMethod: function (a, b) {
1023
- return cbioportalUtils.defaultArraySortMethod(a, b);
1024
- },
1025
- };
1026
- }
1027
- }
1028
- });
1029
- Object.defineProperty(OncoKbHelper, "getAlterationsColumnCell", {
1030
- enumerable: true,
1031
- configurable: true,
1032
- writable: true,
1033
- value: function (alterations, variant) {
1034
- var mergedAlteration = mergeAlterations(alterations);
1035
- var content = React__namespace.createElement("span", null, mergedAlteration);
1036
- if (alterations.length > 5) {
1037
- var lowerCasedQueryVariant_1 = variant.toLowerCase();
1038
- var matchedAlteration = ___default["default"].find(alterations, function (alteration) {
1039
- return alteration.toLocaleLowerCase() === lowerCasedQueryVariant_1;
1040
- });
1041
- if (!matchedAlteration) {
1042
- matchedAlteration = getPositionalVariant(variant);
1043
- }
1044
- var pickedAlteration = matchedAlteration === undefined
1045
- ? alterations[0]
1046
- : matchedAlteration;
1047
- content = (React__namespace.createElement("span", null,
1048
- pickedAlteration,
1049
- " and",
1050
- ' ',
1051
- React__namespace.createElement(cbioportalFrontendCommons.DefaultTooltip, { overlay: React__namespace.createElement("div", { style: { maxWidth: '400px' } }, mergedAlteration), placement: "right", destroyTooltipOnHide: true },
1052
- React__namespace.createElement("a", null,
1053
- alterations.length - 1,
1054
- " other alterations"))));
1055
- }
1056
- return (React__namespace.createElement("div", { style: { whiteSpace: 'normal', lineHeight: '1rem' } }, content));
1057
- }
1058
- });
1059
- return OncoKbHelper;
1060
- }());
1061
-
1062
- 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"};
1063
-
1064
- var ArticleAbstractItem = /** @class */ (function (_super) {
1065
- tslib.__extends(ArticleAbstractItem, _super);
1066
- function ArticleAbstractItem() {
1067
- return _super !== null && _super.apply(this, arguments) || this;
1068
- }
1069
- Object.defineProperty(ArticleAbstractItem.prototype, "render", {
1070
- enumerable: false,
1071
- configurable: true,
1072
- writable: true,
1073
- value: function () {
1074
- var content = React__namespace.createElement("span", null, this.props.abstract);
1075
- if (this.props.link) {
1076
- content = (React__namespace.createElement("a", { href: this.props.link, target: "_blank" }, content));
1077
- }
1078
- return (React__namespace.createElement("li", { key: "abstract_" + this.props.abstract, className: styles$a['list-group-item'] },
1079
- React__namespace.createElement("span", { className: styles$a['list-group-item-title'] }, content)));
1080
- }
1081
- });
1082
- return ArticleAbstractItem;
1083
- }(React__namespace.Component));
1084
-
1085
- var PmidItem = /** @class */ (function (_super) {
1086
- tslib.__extends(PmidItem, _super);
1087
- function PmidItem() {
1088
- return _super !== null && _super.apply(this, arguments) || this;
1089
- }
1090
- Object.defineProperty(PmidItem.prototype, "render", {
1091
- enumerable: false,
1092
- configurable: true,
1093
- writable: true,
1094
- value: function () {
1095
- return (React__namespace.createElement("li", { key: this.props.pmid, className: styles$a['list-group-item'] },
1096
- React__namespace.createElement("a", { className: styles$a['list-group-item-title'], href: cbioportalFrontendCommons.getNCBIlink("/pubmed/" + this.props.pmid), target: "_blank" },
1097
- React__namespace.createElement("span", null, cbioportalFrontendCommons.trimOffHtmlTagEntities(this.props.title))),
1098
- React__namespace.createElement("div", { className: styles$a['list-group-item-content'] },
1099
- React__namespace.createElement("span", null,
1100
- this.props.author,
1101
- " ",
1102
- this.props.source,
1103
- ".",
1104
- ' ',
1105
- this.props.date),
1106
- React__namespace.createElement("span", null,
1107
- "PMID: ",
1108
- this.props.pmid))));
1109
- }
1110
- });
1111
- return PmidItem;
1112
- }(React__namespace.Component));
1113
-
1114
- var ReferenceList = /** @class */ (function (_super) {
1115
- tslib.__extends(ReferenceList, _super);
1116
- function ReferenceList() {
1117
- return _super !== null && _super.apply(this, arguments) || this;
1118
- }
1119
- Object.defineProperty(ReferenceList.prototype, "isLoading", {
1120
- get: function () {
1121
- var _this = this;
1122
- if (this.props.pmidData && this.props.pmids) {
1123
- var loadingItems = ___default["default"].filter(this.props.pmids, function (uid) {
1124
- var cacheData = _this.props.pmidData[uid.toString()];
1125
- // when the cacheData is undefined, the pmidData will fetch the uid info later which eventually results to an object with a status
1126
- return !cacheData || cacheData.status === 'pending';
1127
- });
1128
- return loadingItems.length > 0;
1129
- }
1130
- else {
1131
- return false;
1132
- }
1133
- },
1134
- enumerable: false,
1135
- configurable: true
1136
- });
1137
- Object.defineProperty(ReferenceList.prototype, "render", {
1138
- enumerable: false,
1139
- configurable: true,
1140
- writable: true,
1141
- value: function () {
1142
- var _this = this;
1143
- if (this.isLoading) {
1144
- return React__namespace.createElement("i", { className: "fa fa-spinner fa-pulse fa-2x" });
1145
- }
1146
- var list = [];
1147
- if (this.props.pmidData) {
1148
- this.props.pmids.forEach(function (uid) {
1149
- var cacheData = _this.props.pmidData[uid.toString()];
1150
- var articleContent = cacheData ? cacheData.data : null;
1151
- if (articleContent) {
1152
- list.push(React__namespace.createElement(PmidItem, { title: articleContent.title, author: ___default["default"].isArray(articleContent.authors) &&
1153
- articleContent.authors.length > 0
1154
- ? articleContent.authors[0].name + ' et al.'
1155
- : 'Unknown', source: articleContent.source, date: new Date(articleContent.pubdate)
1156
- .getFullYear()
1157
- .toString(), pmid: articleContent.uid }));
1158
- }
1159
- });
1160
- }
1161
- this.props.abstracts.forEach(function (abstract) {
1162
- list.push(React__namespace.createElement(ArticleAbstractItem, { abstract: abstract.abstract, link: abstract.link }));
1163
- });
1164
- return React__namespace.createElement("ul", { className: styles$a['no-style-ul'] }, list);
1165
- }
1166
- });
1167
- tslib.__decorate([
1168
- mobx.computed
1169
- ], ReferenceList.prototype, "isLoading", null);
1170
- ReferenceList = tslib.__decorate([
1171
- mobxReact.observer
1172
- ], ReferenceList);
1173
- return ReferenceList;
1174
- }(React__namespace.Component));
1175
-
1176
- var RefComponent = /** @class */ (function (_super) {
1177
- tslib.__extends(RefComponent, _super);
1178
- function RefComponent() {
1179
- return _super !== null && _super.apply(this, arguments) || this;
1180
- }
1181
- Object.defineProperty(RefComponent.prototype, "render", {
1182
- enumerable: false,
1183
- configurable: true,
1184
- writable: true,
1185
- value: function () {
1186
- var _this = this;
1187
- var parts = this.props.content.split(/pmid|nct/i);
1188
- if (parts.length < 2) {
1189
- return React__namespace.createElement("span", null, this.props.content);
1190
- }
1191
- var ids = parts[1].match(/[0-9]+/g);
1192
- if (!ids) {
1193
- return React__namespace.createElement("span", null, this.props.content);
1194
- }
1195
- var prefix;
1196
- if (this.props.content.toLowerCase().indexOf('pmid') >= 0) {
1197
- prefix = 'PMID: ';
1198
- }
1199
- else if (this.props.content.toLowerCase().indexOf('nct') >= 0) {
1200
- prefix = 'NCT';
1201
- }
1202
- var link;
1203
- if (prefix) {
1204
- link = (React__namespace.createElement("a", { target: "_blank", href: cbioportalFrontendCommons.getNCBIlink("/pubmed/" + ids.join(',')) }, "" + prefix + ids.join(',')));
1205
- }
1206
- if (this.props.componentType === 'tooltip') {
1207
- var tooltipContent = function () { return (React__namespace.createElement("div", { className: mainStyles['tooltip-refs'] },
1208
- React__namespace.createElement(ReferenceList, { pmids: ids.map(function (id) { return parseInt(id); }), pmidData: _this.props.pmidData, abstracts: [] }))); };
1209
- return (React__namespace.createElement("span", { key: this.props.content },
1210
- parts[0],
1211
- React__namespace.createElement(cbioportalFrontendCommons.DefaultTooltip, { overlay: tooltipContent, placement: "right", trigger: ['hover', 'focus'], destroyTooltipOnHide: true },
1212
- React__namespace.createElement("i", { className: "fa fa-book", style: { color: 'black' } })), ")"));
1213
- }
1214
- else if (link) {
1215
- return (React__namespace.createElement("span", { key: this.props.content },
1216
- parts[0],
1217
- link, ")"));
1218
- }
1219
- else {
1220
- return React__namespace.createElement("span", null, this.props.content);
1221
- }
1222
- }
1223
- });
1224
- return RefComponent;
1225
- }(React__namespace.Component));
1226
-
1227
- var SummaryWithRefs = /** @class */ (function (_super) {
1228
- tslib.__extends(SummaryWithRefs, _super);
1229
- function SummaryWithRefs() {
1230
- return _super !== null && _super.apply(this, arguments) || this;
1231
- }
1232
- Object.defineProperty(SummaryWithRefs.prototype, "render", {
1233
- enumerable: false,
1234
- configurable: true,
1235
- writable: true,
1236
- value: function () {
1237
- var _this = this;
1238
- if (!this.props.content) {
1239
- return React__namespace.createElement("span", null);
1240
- }
1241
- var content = [];
1242
- // example delimiters:
1243
- // (PMID: 11900253)
1244
- // (PMID: 11753428, 16007150, 21467160)
1245
- // (cBioPortal, MSKCC, May 2015, PMID: 24718888)
1246
- // (NCT1234567)
1247
- var regex = /(\(.*?[PMID|NCT].*?\))/i;
1248
- // split the string with delimiters included
1249
- var parts = this.props.content.split(regex);
1250
- parts.forEach(function (part) {
1251
- // if delimiter convert to a JSX component
1252
- if (part.match(regex)) {
1253
- content.push(React__namespace.createElement(RefComponent, { pmidData: _this.props.pmidData, componentType: _this.props.type, content: part }));
1254
- }
1255
- else {
1256
- content.push(React__namespace.createElement("span", null, part));
1257
- }
1258
- });
1259
- return React__namespace.createElement("span", null, content);
1260
- }
1261
- });
1262
- return SummaryWithRefs;
1263
- }(React__namespace.Component));
1264
-
1265
- var EvidenceReferenceContent = function (props) {
1266
- return (React__default["default"].createElement(reactIf.If, { condition: !!props.description },
1267
- React__default["default"].createElement(reactIf.Then, null,
1268
- React__default["default"].createElement(SummaryWithRefs, { content: props.description, type: 'tooltip', pmidData: props.pmidData })),
1269
- React__default["default"].createElement(reactIf.Else, null,
1270
- React__default["default"].createElement(reactIf.If, { condition: props.citations != undefined &&
1271
- (props.citations.abstracts.length > 0 ||
1272
- props.citations.pmids.length > 0) },
1273
- React__default["default"].createElement(reactIf.Then, null,
1274
- React__default["default"].createElement(ReferenceList, { pmidData: props.pmidData, pmids: props.citations.pmids.map(function (pmid) {
1275
- return Number(pmid);
1276
- }), abstracts: props.citations.abstracts })),
1277
- React__default["default"].createElement(reactIf.Else, null, props.noInfoDisclaimer
1278
- ? props.noInfoDisclaimer
1279
- : 'Information is not available.')))));
1280
- };
1281
-
1282
- var OncoKbTreatmentTable = /** @class */ (function (_super) {
1283
- tslib.__extends(OncoKbTreatmentTable, _super);
1284
- function OncoKbTreatmentTable() {
1285
- var _this = _super !== null && _super.apply(this, arguments) || this;
1286
- Object.defineProperty(_this, "levelTooltipContent", {
1287
- enumerable: true,
1288
- configurable: true,
1289
- writable: true,
1290
- value: function (level) {
1291
- return (React__namespace.createElement("div", { style: { maxWidth: '200px' } }, OncoKbHelper.LEVEL_DESC[level]));
1292
- }
1293
- });
1294
- Object.defineProperty(_this, "treatmentTooltipContent", {
1295
- enumerable: true,
1296
- configurable: true,
1297
- writable: true,
1298
- value: function (abstracts, pmids, pmidData, description) {
1299
- return abstracts.length > 0 || pmids.length > 0 ? (function () { return (React__namespace.createElement("div", { className: mainStyles['tooltip-refs'] },
1300
- React__namespace.createElement(EvidenceReferenceContent, { description: description, citations: {
1301
- pmids: pmids.map(function (pmid) { return pmid.toString(); }),
1302
- abstracts: abstracts,
1303
- }, pmidData: pmidData, noInfoDisclaimer: 'Mutation effect information is not available.' }))); }) : (React__namespace.createElement("span", null));
1304
- }
1305
- });
1306
- Object.defineProperty(_this, "columns", {
1307
- enumerable: true,
1308
- configurable: true,
1309
- writable: true,
1310
- value: [
1311
- OncoKbHelper.getDefaultColumnDefinition('level'),
1312
- tslib.__assign(tslib.__assign({}, OncoKbHelper.getDefaultColumnDefinition('alterations')), { Cell: function (props) {
1313
- return OncoKbHelper.getAlterationsColumnCell(props.value, _this.props.variant);
1314
- } }),
1315
- {
1316
- id: 'treatment',
1317
- Header: React__namespace.createElement("span", null, "Drug(s)"),
1318
- accessor: 'drugs',
1319
- Cell: function (props) { return (React__namespace.createElement("div", { style: { whiteSpace: 'normal', lineHeight: '1rem' } }, props.original.drugs
1320
- .map(function (drug) { return drug.drugName; })
1321
- .join(' + '))); },
1322
- },
1323
- {
1324
- id: 'cancerType',
1325
- Header: (React__namespace.createElement("span", null,
1326
- "Level-associated",
1327
- React__namespace.createElement("br", null),
1328
- "cancer type(s)")),
1329
- accessor: 'levelAssociatedCancerType',
1330
- minWidth: 120,
1331
- Cell: function (props) { return (React__namespace.createElement("div", { style: { whiteSpace: 'normal', lineHeight: '1rem' } }, getTumorTypeNameWithExclusionInfo(props.original.levelAssociatedCancerType, props.original.levelExcludedCancerTypes))); },
1332
- },
1333
- {
1334
- id: 'referenceList',
1335
- Header: React__namespace.createElement("span", null),
1336
- sortable: false,
1337
- maxWidth: 25,
1338
- Cell: function (props) {
1339
- return (props.original.abstracts.length > 0 ||
1340
- props.original.pmids.length > 0) && (React__namespace.createElement(cbioportalFrontendCommons.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 },
1341
- React__namespace.createElement("i", { className: "fa fa-book" })));
1342
- },
1343
- },
1344
- ]
1345
- });
1346
- return _this;
1347
- }
1348
- Object.defineProperty(OncoKbTreatmentTable.prototype, "render", {
1349
- enumerable: false,
1350
- configurable: true,
1351
- writable: true,
1352
- value: function () {
1353
- return (React__namespace.createElement("div", { className: "oncokb-treatment-table" },
1354
- React__namespace.createElement(ReactTable__default["default"], { data: this.props.treatments, columns: this.columns, showPagination: false, pageSize: this.props.treatments.length, className: "-striped -highlight" })));
1355
- }
1356
- });
1357
- OncoKbTreatmentTable = tslib.__decorate([
1358
- mobxReact.observer
1359
- ], OncoKbTreatmentTable);
1360
- return OncoKbTreatmentTable;
1361
- }(React__namespace.Component));
1362
-
1363
- var BiologicalContent = function (props) {
1364
- return (React__default["default"].createElement(EvidenceReferenceContent, { description: props.biologicalSummary, citations: props.mutationEffectCitations, pmidData: props.pmidData, noInfoDisclaimer: 'Mutation effect information is not available.' }));
1365
- };
1366
-
1367
- var ImplicationContent = function (props) {
1368
- var columns = [
1369
- tslib.__assign(tslib.__assign({}, OncoKbHelper.getDefaultColumnDefinition('level')), { accessor: 'levelOfEvidence', maxWidth: 100 }),
1370
- tslib.__assign(tslib.__assign({}, OncoKbHelper.getDefaultColumnDefinition('alterations')), { Cell: function (cellProps) {
1371
- return OncoKbHelper.getAlterationsColumnCell(cellProps.value, props.variant);
1372
- } }),
1373
- {
1374
- id: 'referenceList',
1375
- Header: React__namespace.createElement("span", null),
1376
- sortable: false,
1377
- maxWidth: 50,
1378
- Cell: function (cellProps) { return (React__namespace.createElement(cbioportalFrontendCommons.DefaultTooltip, { overlay: function () { return (React__namespace.createElement("div", { className: mainStyles['tooltip-refs'] },
1379
- React__namespace.createElement(EvidenceReferenceContent, { description: cellProps.original.description, citations: {
1380
- pmids: cellProps.original.pmids,
1381
- abstracts: cellProps.original.abstracts,
1382
- }, pmidData: props.pmidData, noInfoDisclaimer: 'Mutation effect information is not available.' }))); }, placement: "right", trigger: ['hover', 'focus'], destroyTooltipOnHide: true },
1383
- React__namespace.createElement("i", { className: "fa fa-book" }))); },
1384
- },
1385
- ];
1386
- return (React__namespace.createElement("div", null,
1387
- React__namespace.createElement("p", null, props.summary),
1388
- React__namespace.createElement("div", null,
1389
- React__namespace.createElement(ReactTable__default["default"], { data: props.implications, columns: columns, showPagination: false, pageSize: props.implications.length, className: "-striped -highlight" }))));
1390
- };
1391
-
1392
- 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_"};
1393
-
1394
- var OncogenicIcon = function (props) {
1395
- return (React__namespace.createElement(cbioportalFrontendCommons.DefaultTooltip, { overlay: React__namespace.createElement("span", null, props.oncogenicity), placement: "left", trigger: ['hover', 'focus'], destroyTooltipOnHide: true },
1396
- React__namespace.createElement("i", { className: oncogenicityIconClassNames(props.oncogenicity) })));
1397
- };
1398
-
1399
- var _a$3;
1400
- var OncoKbMedicalDisclaimer = (React__default["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."));
1401
- var ONCOKB_DATA_ACCESS_PAGE_LINK = 'https://docs.cbioportal.org/2.4-integration-with-other-webservices/oncokb-data-access';
1402
- var publicInstanceDisclaimerOverLay = (React__default["default"].createElement("div", null,
1403
- React__default["default"].createElement("p", null,
1404
- "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",
1405
- ' ',
1406
- React__default["default"].createElement("a", { href: ONCOKB_DATA_ACCESS_PAGE_LINK, target: '_blank' }, "these instructions"),
1407
- "."),
1408
- OncoKbMedicalDisclaimer));
1409
- var DATA_TYPE_TO_TITLE = (_a$3 = {},
1410
- _a$3[cbioportalUtils.OncoKbCardDataType.BIOLOGICAL] = 'Biological Effect',
1411
- _a$3[cbioportalUtils.OncoKbCardDataType.TXS] = 'Therapeutic Implications',
1412
- _a$3[cbioportalUtils.OncoKbCardDataType.TXR] = 'Therapeutic Implications',
1413
- _a$3[cbioportalUtils.OncoKbCardDataType.DX] = 'Diagnostic Implications',
1414
- _a$3[cbioportalUtils.OncoKbCardDataType.PX] = 'Prognostic Implications',
1415
- _a$3);
1416
- var TabContentWrapper = function (props) {
1417
- return React__default["default"].createElement("div", { className: mainStyles['tab-content'] }, props.children);
1418
- };
1419
- var TabTitle = function (props) {
1420
- var _a;
1421
- var title = DATA_TYPE_TO_TITLE[props.type];
1422
- var icon = props.displayHighestLevelInTabTitle ? (props.type === cbioportalUtils.OncoKbCardDataType.BIOLOGICAL ? (React__default["default"].createElement(OncogenicIcon, { oncogenicity: ((_a = props.indicator) === null || _a === void 0 ? void 0 : _a.oncogenic) || '', showDescription: true })) : (React__default["default"].createElement(LevelIcon, { level: normalizeLevel(calcHighestIndicatorLevel(props.type, props.indicator)) || '', showDescription: true }))) : null;
1423
- return icon ? (React__default["default"].createElement("span", { style: { display: 'flex' } },
1424
- icon,
1425
- " ",
1426
- title)) : (React__default["default"].createElement("span", null, title));
1427
- };
1428
- var OncoKbCardBody = function (props) {
1429
- var defaultTabActiveKey;
1430
- // Do not assign a default key if the data type specified through the property does not have any content
1431
- // When the content is not available, we do not render the tab.
1432
- if (dataTypeHasContent(props.type)) {
1433
- defaultTabActiveKey = props.type;
1434
- // 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
1435
- if ([cbioportalUtils.OncoKbCardDataType.TXS, cbioportalUtils.OncoKbCardDataType.TXR].includes(defaultTabActiveKey)) {
1436
- defaultTabActiveKey = cbioportalUtils.OncoKbCardDataType.TXS;
1437
- }
1438
- }
1439
- var _a = React.useState(defaultTabActiveKey), activateTabKey = _a[0], setActivateTabKey = _a[1];
1440
- var _b = React.useState(getLevelsOfEvidence(activateTabKey)), levelsOfEvidence = _b[0], setLevelsOfEvidence = _b[1];
1441
- function updateActivateTabKey(newKey) {
1442
- setActivateTabKey(newKey);
1443
- setLevelsOfEvidence(getLevelsOfEvidence(newKey));
1444
- }
1445
- function hasMutationEffectInfo(mutationEffect) {
1446
- return (mutationEffect &&
1447
- (mutationEffect.description ||
1448
- mutationEffect.citations.abstracts.length > 0 ||
1449
- mutationEffect.citations.pmids.length > 0));
1450
- }
1451
- function dataTypeHasContent(type) {
1452
- var _a, _b, _c, _d, _e;
1453
- switch (type) {
1454
- case cbioportalUtils.OncoKbCardDataType.BIOLOGICAL:
1455
- return hasMutationEffectInfo((_a = props.indicator) === null || _a === void 0 ? void 0 : _a.mutationEffect);
1456
- case cbioportalUtils.OncoKbCardDataType.TXS:
1457
- case cbioportalUtils.OncoKbCardDataType.TXR:
1458
- return (!!((_b = props.indicator) === null || _b === void 0 ? void 0 : _b.highestSensitiveLevel) ||
1459
- !!((_c = props.indicator) === null || _c === void 0 ? void 0 : _c.highestResistanceLevel));
1460
- case cbioportalUtils.OncoKbCardDataType.DX:
1461
- return !!((_d = props.indicator) === null || _d === void 0 ? void 0 : _d.highestDiagnosticImplicationLevel);
1462
- case cbioportalUtils.OncoKbCardDataType.PX:
1463
- return !!((_e = props.indicator) === null || _e === void 0 ? void 0 : _e.highestPrognosticImplicationLevel);
1464
- default:
1465
- return false;
1466
- }
1467
- }
1468
- function getBody(type, indicator) {
1469
- var tabs = [];
1470
- if (dataTypeHasContent(cbioportalUtils.OncoKbCardDataType.BIOLOGICAL)) {
1471
- tabs.push(React__default["default"].createElement(reactBootstrap.Tab, { eventKey: cbioportalUtils.OncoKbCardDataType.BIOLOGICAL, title: React__default["default"].createElement(TabTitle, { type: cbioportalUtils.OncoKbCardDataType.BIOLOGICAL, indicator: props.indicator, displayHighestLevelInTabTitle: props.displayHighestLevelInTabTitle }) },
1472
- React__default["default"].createElement(TabContentWrapper, null,
1473
- React__default["default"].createElement(BiologicalContent, { mutationEffectCitations: indicator.mutationEffect.citations, biologicalSummary: indicator.mutationEffect.description, pmidData: props.pmidData }))));
1474
- }
1475
- if (!props.usingPublicOncoKbInstance &&
1476
- dataTypeHasContent(cbioportalUtils.OncoKbCardDataType.TXS)) {
1477
- tabs.push(React__default["default"].createElement(reactBootstrap.Tab, { eventKey: cbioportalUtils.OncoKbCardDataType.TXS, title: React__default["default"].createElement(TabTitle, { type: cbioportalUtils.OncoKbCardDataType.TXS, indicator: props.indicator, displayHighestLevelInTabTitle: props.displayHighestLevelInTabTitle }) },
1478
- React__default["default"].createElement(TabContentWrapper, null,
1479
- React__default["default"].createElement("div", { style: {
1480
- marginTop: 10,
1481
- } },
1482
- React__default["default"].createElement(OncoKbTreatmentTable, { variant: indicator.query.alteration || '', pmidData: props.pmidData, treatments: indicator.treatments })))));
1483
- }
1484
- if (!props.usingPublicOncoKbInstance &&
1485
- dataTypeHasContent(cbioportalUtils.OncoKbCardDataType.DX)) {
1486
- tabs.push(React__default["default"].createElement(reactBootstrap.Tab, { eventKey: cbioportalUtils.OncoKbCardDataType.DX, title: React__default["default"].createElement(TabTitle, { type: cbioportalUtils.OncoKbCardDataType.DX, indicator: props.indicator, displayHighestLevelInTabTitle: props.displayHighestLevelInTabTitle }) },
1487
- React__default["default"].createElement(TabContentWrapper, null,
1488
- React__default["default"].createElement(ImplicationContent, { variant: indicator.query.alteration, summary: indicator.diagnosticSummary, implications: indicator.diagnosticImplications, pmidData: props.pmidData }))));
1489
- }
1490
- if (!props.usingPublicOncoKbInstance &&
1491
- dataTypeHasContent(cbioportalUtils.OncoKbCardDataType.PX)) {
1492
- tabs.push(React__default["default"].createElement(reactBootstrap.Tab, { eventKey: cbioportalUtils.OncoKbCardDataType.PX, title: React__default["default"].createElement(TabTitle, { type: cbioportalUtils.OncoKbCardDataType.PX, indicator: props.indicator, displayHighestLevelInTabTitle: props.displayHighestLevelInTabTitle }) },
1493
- React__default["default"].createElement(TabContentWrapper, null,
1494
- React__default["default"].createElement(ImplicationContent, { variant: indicator.query.alteration, summary: indicator.prognosticSummary, implications: indicator.prognosticImplications, pmidData: props.pmidData }))));
1495
- }
1496
- return (React__default["default"].createElement("div", { style: { padding: '10px' } },
1497
- React__default["default"].createElement("p", null, indicator.geneSummary),
1498
- React__default["default"].createElement("p", null, indicator.variantSummary),
1499
- props.usingPublicOncoKbInstance ? (React__default["default"].createElement("p", { className: mainStyles.disclaimer },
1500
- "Therapeutic, diagnostic and prognostic implications are not available in this instance of cBioPortal.",
1501
- ' ',
1502
- React__default["default"].createElement(cbioportalFrontendCommons.DefaultTooltip, { overlayStyle: {
1503
- maxWidth: 400,
1504
- }, overlay: publicInstanceDisclaimerOverLay },
1505
- React__default["default"].createElement("i", { className: 'fa fa-info-circle' })))) : (React__default["default"].createElement("p", null, indicator.tumorTypeSummary)),
1506
- tabs.length > 0 && (React__default["default"].createElement(reactBootstrap.Tabs, { defaultActiveKey: defaultTabActiveKey, className: classnames__default["default"]('oncokb-card-tabs'), onSelect: updateActivateTabKey }, tabs))));
1507
- }
1508
- function getLevelsOfEvidence(activateTabKey) {
1509
- switch (activateTabKey) {
1510
- case cbioportalUtils.OncoKbCardDataType.TXS:
1511
- case cbioportalUtils.OncoKbCardDataType.TXR:
1512
- return {
1513
- levels: OncoKbHelper.TX_LEVELS,
1514
- levelDes: OncoKbHelper.getLevelsDesc(activateTabKey),
1515
- };
1516
- case cbioportalUtils.OncoKbCardDataType.DX:
1517
- return {
1518
- levels: OncoKbHelper.DX_LEVELS,
1519
- levelDes: OncoKbHelper.getLevelsDesc(cbioportalUtils.OncoKbCardDataType.DX),
1520
- };
1521
- case cbioportalUtils.OncoKbCardDataType.PX:
1522
- return {
1523
- levels: OncoKbHelper.PX_LEVELS,
1524
- levelDes: OncoKbHelper.getLevelsDesc(cbioportalUtils.OncoKbCardDataType.PX),
1525
- };
1526
- default:
1527
- return {
1528
- levels: [],
1529
- levelDes: {},
1530
- };
1531
- }
1532
- }
1533
- var UNKNOWN = 'Unknown';
1534
- function getOncogenicity() {
1535
- var _a;
1536
- var oncogenicity = (_a = props.indicator) === null || _a === void 0 ? void 0 : _a.oncogenic;
1537
- if (!oncogenicity || oncogenicity === UNKNOWN) {
1538
- oncogenicity = 'Unknown Oncogenic Effect';
1539
- }
1540
- return oncogenicity;
1541
- }
1542
- function getMutationEffect() {
1543
- var _a;
1544
- var mutationEffect = (_a = props.indicator) === null || _a === void 0 ? void 0 : _a.mutationEffect.knownEffect;
1545
- if (!mutationEffect || mutationEffect === UNKNOWN) {
1546
- mutationEffect = 'Unknown Biological Effect';
1547
- }
1548
- return mutationEffect;
1549
- }
1550
- return (React__default["default"].createElement(React__default["default"].Fragment, null,
1551
- !props.geneNotExist && (React__default["default"].createElement("div", null,
1552
- props.indicator && (React__default["default"].createElement(React__default["default"].Fragment, null,
1553
- React__default["default"].createElement("div", { className: mainStyles['biological-info'] },
1554
- React__default["default"].createElement("div", { style: { flexGrow: 1 } }, getOncogenicity()),
1555
- React__default["default"].createElement("div", { style: { flexGrow: 1 } }, getMutationEffect())),
1556
- React__default["default"].createElement("div", { className: mainStyles['oncokb-card'], "data-test": "oncokb-card" }, getBody(props.type, props.indicator)))),
1557
- !props.usingPublicOncoKbInstance && (React__default["default"].createElement(React__default["default"].Fragment, null,
1558
- React__default["default"].createElement("div", { className: tabsStyles['tab-pane'] }, OncoKbMedicalDisclaimer),
1559
- levelsOfEvidence &&
1560
- levelsOfEvidence.levels.length > 0 && (React__default["default"].createElement(OncoKbCardLevelsOfEvidenceDropdown, { levels: levelsOfEvidence.levels, levelDes: levelsOfEvidence.levelDes })))))),
1561
- !props.isCancerGene && (React__default["default"].createElement("div", { className: mainStyles['additional-info'], "data-test": 'oncokb-card-additional-info' }, "There is currently no information about this gene in OncoKB.")),
1562
- props.geneNotExist && props.isCancerGene && (React__default["default"].createElement("div", { className: mainStyles['additional-info'] },
1563
- React__default["default"].createElement(OncoKBSuggestAnnotationLinkout, { gene: props.hugoSymbol })))));
1564
- };
1565
-
1566
- var OncoKbCard = /** @class */ (function (_super) {
1567
- tslib.__extends(OncoKbCard, _super);
1568
- function OncoKbCard(props) {
1569
- var _this = _super.call(this, props) || this;
1570
- mobx.makeObservable(_this);
1571
- return _this;
1572
- }
1573
- Object.defineProperty(OncoKbCard.prototype, "oncokbLinkOut", {
1574
- get: function () {
1575
- var link = undefined;
1576
- if (this.props.hugoSymbol) {
1577
- link = "https://www.oncokb.org/gene/" + this.props.hugoSymbol;
1578
- if (!this.props.geneNotExist &&
1579
- this.props.indicator &&
1580
- this.props.indicator.variantExist) {
1581
- link = link + "/" + this.props.indicator.query.alteration;
1582
- }
1583
- }
1584
- return link;
1585
- },
1586
- enumerable: false,
1587
- configurable: true
1588
- });
1589
- Object.defineProperty(OncoKbCard.prototype, "render", {
1590
- enumerable: false,
1591
- configurable: true,
1592
- writable: true,
1593
- value: function () {
1594
- var oncokbLogo = (React__namespace.createElement("img", { src: oncoKbLogoImgSrc__default["default"], className: mainStyles['oncokb-logo'], alt: "OncoKB\u2122" }));
1595
- return (React__namespace.createElement("div", { className: mainStyles['oncokb-card'], "data-test": "oncokb-card" },
1596
- React__namespace.createElement("div", null,
1597
- !this.props.geneNotExist && this.props.indicator && (React__namespace.createElement(OncoKbCardTitle, { hugoSymbol: this.props.indicator.query.hugoSymbol, variant: this.props.indicator.query.alteration, tumorType: this.props.indicator
1598
- ? this.props.indicator.query.tumorType
1599
- : '' })),
1600
- React__namespace.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 }),
1601
- React__namespace.createElement("div", { className: mainStyles.footer },
1602
- this.oncokbLinkOut === undefined ? ({ oncokbLogo: oncokbLogo }) : (React__namespace.createElement("a", { href: "" + this.oncokbLinkOut, target: "_blank", className: mainStyles['oncokb-logo'] }, oncokbLogo)),
1603
- this.props.handleFeedbackOpen && (React__namespace.createElement("span", null,
1604
- React__namespace.createElement("button", { className: "btn btn-default btn-xs", onClick: this.props.handleFeedbackOpen }, "Feedback")))))));
1605
- }
1606
- });
1607
- tslib.__decorate([
1608
- mobx.computed
1609
- ], OncoKbCard.prototype, "oncokbLinkOut", null);
1610
- OncoKbCard = tslib.__decorate([
1611
- mobxReact.observer
1612
- ], OncoKbCard);
1613
- return OncoKbCard;
1614
- }(React__namespace.Component));
1615
-
1616
- /**
1617
- * @author Selcuk Onur Sumer
1618
- */
1619
- var OncoKbTooltip = /** @class */ (function (_super) {
1620
- tslib.__extends(OncoKbTooltip, _super);
1621
- function OncoKbTooltip() {
1622
- return _super !== null && _super.apply(this, arguments) || this;
1623
- }
1624
- Object.defineProperty(OncoKbTooltip.prototype, "pmidData", {
1625
- get: function () {
1626
- if (this.props.pubMedCache) {
1627
- var allPmids_1 = [];
1628
- if (this.props.indicator) {
1629
- if (this.props.indicator.mutationEffect) {
1630
- allPmids_1 = allPmids_1.concat(this.props.indicator.mutationEffect.citations.pmids);
1631
- }
1632
- this.props.indicator.treatments.forEach(function (treatment) {
1633
- allPmids_1 = allPmids_1.concat(treatment.pmids);
1634
- });
1635
- this.props.indicator.diagnosticImplications.forEach(function (implication) {
1636
- allPmids_1 = allPmids_1.concat(implication.pmids);
1637
- });
1638
- this.props.indicator.prognosticImplications.forEach(function (implication) {
1639
- allPmids_1 = allPmids_1.concat(implication.pmids);
1640
- });
1641
- }
1642
- for (var _i = 0, _a = ___default["default"].uniq(allPmids_1).map(function (pmid) { return Number(pmid); }); _i < _a.length; _i++) {
1643
- var ref = _a[_i];
1644
- this.props.pubMedCache.get(ref);
1645
- }
1646
- }
1647
- return (this.props.pubMedCache && this.props.pubMedCache.cache) || {};
1648
- },
1649
- enumerable: false,
1650
- configurable: true
1651
- });
1652
- Object.defineProperty(OncoKbTooltip.prototype, "render", {
1653
- enumerable: false,
1654
- configurable: true,
1655
- writable: true,
1656
- value: function () {
1657
- var tooltipContent = React__namespace.createElement("span", null);
1658
- if (this.props.geneNotExist) {
1659
- tooltipContent = (React__namespace.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 }));
1660
- }
1661
- if (!this.props.indicator) {
1662
- return tooltipContent;
1663
- }
1664
- if (!this.props.geneNotExist) {
1665
- var pmidData = this.pmidData;
1666
- tooltipContent = (React__namespace.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 }));
1667
- }
1668
- return tooltipContent;
164
+ React__namespace.createElement("b", null, this.props.geneName))),
165
+ ' ',
166
+ "- ",
167
+ this.props.geneDescription)),
168
+ React__namespace.createElement("div", { className: "col s12" },
169
+ React__namespace.createElement("ul", null, this.generateVariants(this.props.variants))),
170
+ React__namespace.createElement("div", { className: "item disclaimer" },
171
+ React__namespace.createElement("span", null, "Disclaimer: This resource is intended for purely research purposes. It should not be used for emergencies or medical or professional advice.")))),
172
+ React__namespace.createElement("div", { className: "item footer" },
173
+ React__namespace.createElement("a", { href: this.props.geneUrl, target: "_blank" },
174
+ React__namespace.createElement("img", { src: img$5, className: "civic-logo", alt: "CIViC" })))));
1669
175
  }
1670
176
  });
1671
- OncoKbTooltip = tslib.__decorate([
1672
- mobxReact.observer
1673
- ], OncoKbTooltip);
1674
- return OncoKbTooltip;
177
+ return CivicCard;
1675
178
  }(React__namespace.Component));
1676
179
 
1677
- var OncoKbFeedback = /** @class */ (function (_super) {
1678
- tslib.__extends(OncoKbFeedback, _super);
1679
- function OncoKbFeedback() {
1680
- return _super !== null && _super.apply(this, arguments) || this;
1681
- }
1682
- Object.defineProperty(OncoKbFeedback.prototype, "render", {
1683
- enumerable: false,
1684
- configurable: true,
1685
- writable: true,
1686
- value: function () {
1687
- var url = 'https://docs.google.com/forms/d/1lt6TtecxHrhIE06gAKVF_JW4zKFoowNFzxn6PJv4g7A/viewform';
1688
- var geneParam = "entry.1744186665=" + (this.props.hugoSymbol || '');
1689
- var alterationParam = "entry.1671960263=" + (this.props.alteration ||
1690
- '');
1691
- var userParam = "entry.1381123986=" + (this.props.userEmailAddress ||
1692
- '');
1693
- var uriParam = "entry.1083850662=" + encodeURIComponent(window.location.href);
1694
- return (React__namespace.createElement(reactBootstrap.Modal, { show: this.props.showFeedback, onHide: this.props.handleFeedbackClose },
1695
- React__namespace.createElement(reactBootstrap.Modal.Header, { closeButton: true },
1696
- React__namespace.createElement(reactBootstrap.Modal.Title, null, "OncoKB\u2122 Annotation Feedback")),
1697
- React__namespace.createElement(reactBootstrap.Modal.Body, null,
1698
- React__namespace.createElement("iframe", { src: url + "?" + geneParam + "&" + alterationParam + "&entry.118699694&entry.1568641202&" + userParam + "&" + uriParam + "&embedded=true", style: {
1699
- width: 550,
1700
- height: 500,
1701
- border: 'none',
1702
- marginLeft: '10px',
1703
- }, marginHeight: 0, marginWidth: 0 },
1704
- React__namespace.createElement("i", { className: "fa fa-spinner fa-pulse fa-2x" })))));
1705
- }
1706
- });
1707
- return OncoKbFeedback;
1708
- }(React__namespace.Component));
180
+ var img$4 = "data:image/png;base64,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";
181
+
182
+ var img$3 = "data:image/png;base64,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";
1709
183
 
1710
- function sortValue$6(indicator) {
1711
- var values = [0, 0, 0];
1712
- if (indicator) {
1713
- values[0] = calcOncogenicScore(indicator.oncogenic);
1714
- values[1] = calcSensitivityLevelScore(indicator.highestSensitiveLevel);
1715
- values[2] = calcResistanceLevelScore(indicator.highestResistanceLevel);
1716
- values[3] = calcDiagnosticLevelScore(indicator.highestDiagnosticImplicationLevel);
1717
- values[4] = calcPrognosticLevelScore(indicator.highestPrognosticImplicationLevel);
1718
- }
1719
- return values;
184
+ function hideArrow(tooltipEl) {
185
+ var arrowEl = tooltipEl.querySelector('.rc-tooltip-arrow');
186
+ arrowEl.style.display = 'none';
1720
187
  }
1721
- function download$5(indicator) {
1722
- var _a, _b;
1723
- if (!indicator) {
1724
- return 'NA';
188
+ function sortValue$7(civicEntry) {
189
+ var score = 0;
190
+ if (civicEntry) {
191
+ score = 1;
1725
192
  }
1726
- var oncogenic = indicator.oncogenic ? indicator.oncogenic : 'Unknown';
1727
- var sensitivityLevel = ((_a = indicator.highestSensitiveLevel) === null || _a === void 0 ? void 0 : _a.toLowerCase()) || 'level NA';
1728
- var resistanceLevel = ((_b = indicator.highestResistanceLevel) === null || _b === void 0 ? void 0 : _b.toLowerCase()) || 'resistance NA';
1729
- return oncogenic + ", " + sensitivityLevel + ", " + resistanceLevel;
193
+ return score;
1730
194
  }
1731
- function findDefaultDataTypeForTooltip(usingPublicOncoKbInstance, indicator, availableDataTypes) {
1732
- if (usingPublicOncoKbInstance || !indicator) {
1733
- return cbioportalUtils.OncoKbCardDataType.BIOLOGICAL;
1734
- }
1735
- // priority is in this order: Tx > Dx > Px > Biological
1736
- if (indicator.highestSensitiveLevel &&
1737
- availableDataTypes &&
1738
- availableDataTypes.includes(cbioportalUtils.OncoKbCardDataType.TXS)) {
1739
- return cbioportalUtils.OncoKbCardDataType.TXS;
1740
- }
1741
- else if (indicator.highestResistanceLevel &&
1742
- availableDataTypes &&
1743
- availableDataTypes.includes(cbioportalUtils.OncoKbCardDataType.TXR)) {
1744
- return cbioportalUtils.OncoKbCardDataType.TXR;
1745
- }
1746
- else if (indicator.highestDiagnosticImplicationLevel &&
1747
- availableDataTypes &&
1748
- availableDataTypes.includes(cbioportalUtils.OncoKbCardDataType.DX)) {
1749
- return cbioportalUtils.OncoKbCardDataType.DX;
1750
- }
1751
- else if (indicator.highestPrognosticImplicationLevel &&
1752
- availableDataTypes &&
1753
- availableDataTypes.includes(cbioportalUtils.OncoKbCardDataType.PX)) {
1754
- return cbioportalUtils.OncoKbCardDataType.PX;
1755
- }
1756
- return cbioportalUtils.OncoKbCardDataType.BIOLOGICAL;
195
+ function download$6(civicEntry) {
196
+ if (!civicEntry) {
197
+ return cbioportalUtils.CIVIC_NA_VALUE;
198
+ }
199
+ var variants = ___default["default"].values(civicEntry.variants);
200
+ var values = [];
201
+ if (variants && variants.length > 0 && variants[0].evidenceCounts) {
202
+ ___default["default"].forEach(variants[0].evidenceCounts, function (value, key) {
203
+ values.push(key + ": " + value);
204
+ });
205
+ }
206
+ // this indicates that we have an entry but the evidence is empty
207
+ if (values.length === 0) {
208
+ return cbioportalUtils.CIVIC_NA_VALUE;
209
+ }
210
+ return values.join(', ');
1757
211
  }
1758
- var OncoKB = /** @class */ (function (_super) {
1759
- tslib.__extends(OncoKB, _super);
1760
- function OncoKB(props) {
212
+ var Civic = /** @class */ (function (_super) {
213
+ tslib.__extends(Civic, _super);
214
+ function Civic(props) {
1761
215
  var _this = _super.call(this, props) || this;
1762
- Object.defineProperty(_this, "showFeedback", {
1763
- enumerable: true,
1764
- configurable: true,
1765
- writable: true,
1766
- value: false
1767
- });
1768
216
  Object.defineProperty(_this, "tooltipDataLoadComplete", {
1769
217
  enumerable: true,
1770
218
  configurable: true,
@@ -1772,125 +220,136 @@ var OncoKB = /** @class */ (function (_super) {
1772
220
  value: false
1773
221
  });
1774
222
  mobx.makeObservable(_this);
223
+ _this.cardContent = _this.cardContent.bind(_this);
1775
224
  return _this;
1776
225
  }
1777
- Object.defineProperty(OncoKB.prototype, "render", {
226
+ Object.defineProperty(Civic.prototype, "render", {
1778
227
  enumerable: false,
1779
228
  configurable: true,
1780
229
  writable: true,
1781
230
  value: function () {
1782
- var oncoKbContent;
1783
- if (this.props.status === 'error') {
1784
- oncoKbContent = errorIcon('Error fetching OncoKB data');
1785
- }
1786
- else if (this.props.status === 'pending') {
1787
- oncoKbContent = loaderIcon('pull-left');
231
+ var civicContent = (React__namespace.createElement("span", { className: "" + annotationStyles['annotation-item'] }));
232
+ var civicImgWidth = 14;
233
+ var civicImgHeight = 14;
234
+ var civicImgSrc = !this.props.hasCivicVariants
235
+ ? img$3
236
+ : img$4;
237
+ if (this.props.civicStatus == 'error') {
238
+ civicContent = errorIcon('Error fetching Civic data');
1788
239
  }
1789
- else {
1790
- oncoKbContent = this.props.mergeAnnotationIcons
1791
- ? this.singleAnnotationIcon()
1792
- : this.multiAnnotationIcon();
1793
- if (!this.props.disableFeedback && this.showFeedback) {
1794
- oncoKbContent = (React__namespace.createElement("span", null,
1795
- oncoKbContent,
1796
- React__namespace.createElement(OncoKbFeedback, { userEmailAddress: this.props.userEmailAddress, hugoSymbol: this.props.hugoGeneSymbol, alteration: this.props.indicator
1797
- ? this.props.indicator.query.alteration
1798
- : undefined, showFeedback: this.showFeedback, handleFeedbackClose: this.handleFeedbackClose })));
240
+ else if (this.props.civicEntry !== undefined) {
241
+ if (this.props.civicEntry !== null &&
242
+ this.props.civicStatus == 'complete') {
243
+ civicContent = (React__namespace.createElement("span", { className: "" + annotationStyles['annotation-item'] },
244
+ React__namespace.createElement("img", { width: civicImgWidth, height: civicImgHeight, src: civicImgSrc, alt: "Civic Variant Entry" })));
245
+ civicContent = (React__namespace.createElement(cbioportalFrontendCommons.DefaultTooltip, { overlay: this.cardContent.bind(this, this.props.civicEntry), placement: "right", trigger: ['hover', 'focus'], onPopupAlign: hideArrow, destroyTooltipOnHide: false }, civicContent));
1799
246
  }
1800
247
  }
1801
- return oncoKbContent;
1802
- }
1803
- });
1804
- Object.defineProperty(OncoKB.prototype, "multiAnnotationIcon", {
1805
- enumerable: false,
1806
- configurable: true,
1807
- writable: true,
1808
- value: function () {
1809
- return (React__namespace.createElement("span", { className: "oncokb-content", style: { display: 'inline-flex' } },
1810
- React__namespace.createElement(AnnotationIcon, { type: cbioportalUtils.OncoKbCardDataType.BIOLOGICAL, tooltipOverlay: this.tooltipContent(cbioportalUtils.OncoKbCardDataType.BIOLOGICAL), indicator: this.props.indicator, availableDataTypes: this.props.availableDataTypes }),
1811
- this.levelIcons()));
1812
- }
1813
- });
1814
- Object.defineProperty(OncoKB.prototype, "levelIcons", {
1815
- enumerable: false,
1816
- configurable: true,
1817
- writable: true,
1818
- value: function () {
1819
- var _this = this;
1820
- if (this.props.usingPublicOncoKbInstance) {
1821
- return null;
1822
- }
1823
- if (this.props.indicator) {
1824
- return (React__namespace.createElement(React__namespace.Fragment, null, [
1825
- cbioportalUtils.OncoKbCardDataType.TXS,
1826
- cbioportalUtils.OncoKbCardDataType.TXR,
1827
- cbioportalUtils.OncoKbCardDataType.DX,
1828
- cbioportalUtils.OncoKbCardDataType.PX,
1829
- ].map(function (dataType) { return (React__namespace.createElement(AnnotationIcon, { type: dataType, tooltipOverlay: _this.tooltipContent(dataType), indicator: _this.props.indicator, availableDataTypes: _this.props.availableDataTypes })); })));
1830
- }
1831
248
  else {
1832
- // workaround: use content padding value to draw an empty icon when there is no indicator data.
1833
- // this is to keep the icon alignment consistent with the rest of the column.
1834
- // ideally we should implement grouped columns to avoid these kind of workarounds
1835
- // (see https://github.com/cBioPortal/cbioportal/issues/8723)
1836
- return React__namespace.createElement("i", { style: { paddingRight: this.props.contentPadding } });
249
+ // It's still unknown (undefined) if the current gene has a Civic entry or not.
250
+ civicContent = loaderIcon('pull-left');
1837
251
  }
252
+ return civicContent;
1838
253
  }
1839
254
  });
1840
- Object.defineProperty(OncoKB.prototype, "singleAnnotationIcon", {
1841
- enumerable: false,
1842
- configurable: true,
1843
- writable: true,
1844
- value: function () {
1845
- return (React__namespace.createElement("span", { className: "oncokb-content", style: { display: 'inline-flex' } },
1846
- React__namespace.createElement(AnnotationIconWithTooltip, { tooltipOverlay: this.tooltipContent(findDefaultDataTypeForTooltip(this.props.usingPublicOncoKbInstance, this.props.indicator, this.props.availableDataTypes)), icon: React__namespace.createElement(CompactAnnotationIcon, { indicator: this.props.indicator, availableDataTypes: this.props.availableDataTypes, usingPublicOncoKbInstance: this.props.usingPublicOncoKbInstance }) })));
1847
- }
1848
- });
1849
- Object.defineProperty(OncoKB.prototype, "tooltipContent", {
255
+ Object.defineProperty(Civic.prototype, "cardContent", {
1850
256
  enumerable: false,
1851
257
  configurable: true,
1852
258
  writable: true,
1853
- value: function (type) {
1854
- return (React__namespace.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
1855
- ? undefined
1856
- : this.handleFeedbackOpen }));
259
+ value: function (civicEntry) {
260
+ return (React__namespace.createElement(CivicCard, { title: "CIViC Variants", geneName: civicEntry.name, geneDescription: civicEntry.description, geneUrl: civicEntry.url, variants: civicEntry.variants }));
1857
261
  }
1858
262
  });
1859
- Object.defineProperty(OncoKB.prototype, "handleFeedbackOpen", {
1860
- enumerable: false,
1861
- configurable: true,
1862
- writable: true,
1863
- value: function () {
1864
- this.showFeedback = true;
263
+ tslib.__decorate([
264
+ mobx.observable
265
+ ], Civic.prototype, "tooltipDataLoadComplete", void 0);
266
+ Civic = tslib.__decorate([
267
+ mobxReact.observer
268
+ ], Civic);
269
+ return Civic;
270
+ }(React__namespace.Component));
271
+
272
+ var NoClinvarData = function () {
273
+ return (React__namespace.createElement(cbioportalFrontendCommons.DefaultTooltip, { placement: "topLeft", overlay: React__namespace.createElement("span", null, "Variant has no ClinVar data.") },
274
+ React__namespace.createElement("span", { style: {
275
+ height: '100%',
276
+ width: '100%',
277
+ display: 'block',
278
+ overflow: 'hidden',
279
+ } }, "\u00A0")));
280
+ };
281
+ var ClinvarSummary = function (props) {
282
+ if (!props.clinvar) {
283
+ return React__namespace.createElement(NoClinvarData, null);
284
+ }
285
+ else {
286
+ var clinvarId = props.clinvar.clinvarId;
287
+ var clinvarLink = "https://www.ncbi.nlm.nih.gov/clinvar/variation/" + clinvarId + "/";
288
+ var clinicalSignificance = props.clinvar.clinicalSignificance;
289
+ var conflictingClinicalSignificance = props.clinvar.conflictingClinicalSignificance;
290
+ return (React__namespace.createElement(cbioportalFrontendCommons.TruncatedText, { maxLength: 30, text: clinicalSignificance, addTooltip: "always", tooltip: React__namespace.createElement("div", { style: { maxWidth: 300 } },
291
+ React__namespace.createElement("div", null, clinicalSignificance),
292
+ conflictingClinicalSignificance && (React__namespace.createElement("div", null, conflictingClinicalSignificance)),
293
+ React__namespace.createElement("div", null,
294
+ "(ClinVar ID:",
295
+ ' ',
296
+ React__namespace.createElement("a", { href: clinvarLink, target: "_blank" }, clinvarId),
297
+ ")")) }));
298
+ }
299
+ };
300
+
301
+ var img$2 = "data:image/png;base64,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";
302
+
303
+ var mcgStyles = {"link-list":"myCancerGenome-module_link-list__2wFhH"};
304
+
305
+ function placeArrow$1(tooltipEl) {
306
+ var arrowEl = tooltipEl.querySelector('.rc-tooltip-arrow');
307
+ arrowEl.style.left = '10px';
308
+ }
309
+ function sortValue$6(links) {
310
+ return links.length > 0 ? 1 : 0;
311
+ }
312
+ function download$5(links) {
313
+ return links.length > 0 ? 'present' : 'not present';
314
+ }
315
+ function myCancerGenomeLinks(linksHTML) {
316
+ var links = [];
317
+ ___default["default"].each(linksHTML, function (link, index) {
318
+ // TODO this is a workaround, ideally we should fix the data itself
319
+ // parse the data as an HTML dom element, since it is formatted as an HTML link.
320
+ var myCancerGenomeLink = cbioportalUtils.parseMyCancerGenomeLink(link);
321
+ if (myCancerGenomeLink) {
322
+ links.push(React__namespace.createElement("li", { key: index },
323
+ React__namespace.createElement("a", { href: myCancerGenomeLink.url, target: "_blank" }, myCancerGenomeLink.text)));
1865
324
  }
1866
325
  });
1867
- Object.defineProperty(OncoKB.prototype, "handleFeedbackClose", {
326
+ return (React__namespace.createElement("span", null,
327
+ React__namespace.createElement("b", null, "My Cancer Genome links:"),
328
+ React__namespace.createElement("br", null),
329
+ React__namespace.createElement("ul", { className: mcgStyles['link-list'] }, links)));
330
+ }
331
+ var MyCancerGenome = /** @class */ (function (_super) {
332
+ tslib.__extends(MyCancerGenome, _super);
333
+ function MyCancerGenome() {
334
+ return _super !== null && _super.apply(this, arguments) || this;
335
+ }
336
+ Object.defineProperty(MyCancerGenome.prototype, "render", {
1868
337
  enumerable: false,
1869
338
  configurable: true,
1870
339
  writable: true,
1871
340
  value: function () {
1872
- this.showFeedback = false;
341
+ var myCancerGenomeContent = (React__namespace.createElement("span", { className: "" + annotationStyles['annotation-item'] }));
342
+ if (this.props.linksHTML.length > 0) {
343
+ var arrowContent = React__namespace.createElement("div", { className: "rc-tooltip-arrow-inner" });
344
+ var tooltipContent = myCancerGenomeLinks(this.props.linksHTML);
345
+ myCancerGenomeContent = (React__namespace.createElement(cbioportalFrontendCommons.DefaultTooltip, { overlay: tooltipContent, placement: "topLeft", trigger: ['hover', 'focus'], arrowContent: arrowContent, onPopupAlign: placeArrow$1 },
346
+ React__namespace.createElement("span", { className: annotationStyles['annotation-item'] + " mcg" },
347
+ React__namespace.createElement("img", { width: "14", height: "14", src: img$2, alt: "My Cancer Genome Symbol" }))));
348
+ }
349
+ return myCancerGenomeContent;
1873
350
  }
1874
351
  });
1875
- tslib.__decorate([
1876
- mobx.observable
1877
- ], OncoKB.prototype, "showFeedback", void 0);
1878
- tslib.__decorate([
1879
- mobx.observable
1880
- ], OncoKB.prototype, "tooltipDataLoadComplete", void 0);
1881
- tslib.__decorate([
1882
- autobind__default["default"]
1883
- ], OncoKB.prototype, "tooltipContent", null);
1884
- tslib.__decorate([
1885
- autobind__default["default"]
1886
- ], OncoKB.prototype, "handleFeedbackOpen", null);
1887
- tslib.__decorate([
1888
- autobind__default["default"]
1889
- ], OncoKB.prototype, "handleFeedbackClose", null);
1890
- OncoKB = tslib.__decorate([
1891
- mobxReact.observer
1892
- ], OncoKB);
1893
- return OncoKB;
352
+ return MyCancerGenome;
1894
353
  }(React__namespace.Component));
1895
354
 
1896
355
  var hotspotStyles = {"hotspot-info":"hotspotInfo-module_hotspot-info__S24fX"};
@@ -2242,8 +701,8 @@ function getAnnotationData(mutation, oncoKbCancerGenes, hotspotData, myCancerGen
2242
701
  oncoKbData.result &&
2243
702
  !(oncoKbData.result instanceof Error) &&
2244
703
  oncoKbData.status === 'complete') {
2245
- oncoKbIndicator = getIndicatorData(mutation, oncoKbData.result, resolveTumorType, resolveEntrezGeneId);
2246
- oncoKbAvailableDataTypes = ___default["default"].uniq(tslib.__spreadArrays(oncoKbAvailableDataTypes, cbioportalUtils.calculateOncoKbAvailableDataType(___default["default"].values(oncoKbData.result.indicatorMap))));
704
+ oncoKbIndicator = oncokbFrontendCommons.getIndicatorData(mutation, oncoKbData.result, resolveTumorType, resolveEntrezGeneId);
705
+ oncoKbAvailableDataTypes = ___default["default"].uniq(tslib.__spreadArrays(oncoKbAvailableDataTypes, oncokbFrontendCommons.calculateOncoKbAvailableDataType(___default["default"].values(oncoKbData.result.indicatorMap))));
2247
706
  }
2248
707
  value = tslib.__assign(tslib.__assign({}, value), { oncoKbStatus: oncoKbData ? oncoKbData.status : 'pending', oncoKbIndicator: oncoKbIndicator,
2249
708
  oncoKbAvailableDataTypes: oncoKbAvailableDataTypes });
@@ -2268,17 +727,17 @@ function annotationSortMethod(a, b) {
2268
727
  }
2269
728
  function sortValue$4(annotation) {
2270
729
  return ___default["default"].flatten([
2271
- sortValue$6(annotation.oncoKbIndicator),
2272
- sortValue$8(annotation.civicEntry),
2273
- sortValue$7(annotation.myCancerGenomeLinks),
730
+ oncokbFrontendCommons.oncoKbAnnotationSortValue(annotation.oncoKbIndicator),
731
+ sortValue$7(annotation.civicEntry),
732
+ sortValue$6(annotation.myCancerGenomeLinks),
2274
733
  sortValue$5(annotation.isHotspot, annotation.is3dHotspot),
2275
734
  annotation.isOncoKbCancerGene ? 1 : 0,
2276
735
  ]);
2277
736
  }
2278
737
  function GenericAnnotation(props) {
2279
- 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;
738
+ 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;
2280
739
  return (React__namespace.createElement("span", { style: { display: 'flex', minWidth: 100 } },
2281
- enableOncoKb && (React__namespace.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 })),
740
+ enableOncoKb && (React__namespace.createElement(oncokbFrontendCommons.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 })),
2282
741
  enableCivic && (React__namespace.createElement(Civic, { civicEntry: annotation.civicEntry, civicStatus: annotation.civicStatus, hasCivicVariants: annotation.hasCivicVariants })),
2283
742
  enableMyCancerGenome && (React__namespace.createElement(MyCancerGenome, { linksHTML: annotation.myCancerGenomeLinks })),
2284
743
  enableHotspot && (React__namespace.createElement(HotspotAnnotation, { isHotspot: annotation.isHotspot, is3dHotspot: annotation.is3dHotspot, status: annotation.hotspotStatus }))));
@@ -3344,7 +1803,7 @@ var DropdownSelector = /** @class */ (function (_super) {
3344
1803
  var _a;
3345
1804
  var allValuesSelected = this.allValues.length === this.selectedValues.length;
3346
1805
  var classes = this.props.selectionIndicatorClassNames;
3347
- return classnames__default["default"](classes.base, (_a = {},
1806
+ return classNames__default["default"](classes.base, (_a = {},
3348
1807
  _a[classes.allSelected] = allValuesSelected,
3349
1808
  _a[classes.partiallySelected] = !allValuesSelected,
3350
1809
  _a));
@@ -4086,8 +2545,8 @@ var FilterResetPanel = /** @class */ (function (_super) {
4086
2545
  writable: true,
4087
2546
  value: {
4088
2547
  buttonText: 'Show all',
4089
- buttonClass: classnames__default["default"]('btn', 'btn-secondary', 'btn-sm'),
4090
- className: classnames__default["default"]('alert', 'alert-success', styles$7.filterResetPanel),
2548
+ buttonClass: classNames__default["default"]('btn', 'btn-secondary', 'btn-sm'),
2549
+ className: classNames__default["default"]('alert', 'alert-success', styles$7.filterResetPanel),
4091
2550
  }
4092
2551
  });
4093
2552
  FilterResetPanel = tslib.__decorate([
@@ -4502,7 +2961,7 @@ var DataTable = /** @class */ (function (_super) {
4502
2961
  value: function () {
4503
2962
  return (React__namespace.createElement("div", { className: "cbioportal-frontend" },
4504
2963
  React__namespace.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 }),
4505
- React__namespace.createElement("div", { className: classnames__default["default"](this.props.className, 'cbioportal-frontend', 'default-data-table') },
2964
+ React__namespace.createElement("div", { className: classNames__default["default"](this.props.className, 'cbioportal-frontend', 'default-data-table') },
4506
2965
  React__namespace.createElement(ReactTable__default["default"], tslib.__assign({ data: this.tableData, columns: this.columns, getTrProps: this.needToCustomizeRowStyle
4507
2966
  ? this.getTrProps
4508
2967
  : 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)))));
@@ -7371,7 +5830,7 @@ var LollipopMutationPlotControls = /** @class */ (function (_super) {
7371
5830
  });
7372
5831
  Object.defineProperty(LollipopMutationPlotControls.prototype, "trackSelector", {
7373
5832
  get: function () {
7374
- return (React__namespace.createElement("div", { className: classnames__default["default"]('annotation-track-selector', 'small'), style: { width: 180, marginRight: 7 } },
5833
+ return (React__namespace.createElement("div", { className: classNames__default["default"]('annotation-track-selector', 'small'), style: { width: 180, marginRight: 7 } },
7375
5834
  React__namespace.createElement(TrackSelector, { tracks: this.props.tracks, trackVisibility: this.props.trackVisibility, trackDataStatus: this.props.trackDataStatus, onChange: this.props.onTrackVisibilityChange })));
7376
5835
  },
7377
5836
  enumerable: false,
@@ -7398,7 +5857,7 @@ var LollipopMutationPlotControls = /** @class */ (function (_super) {
7398
5857
  configurable: true,
7399
5858
  writable: true,
7400
5859
  value: function () {
7401
- return (React__namespace.createElement("div", { className: classnames__default["default"]('lollipop_mutation_plot__controls', this.props.showControls
5860
+ return (React__namespace.createElement("div", { className: classNames__default["default"]('lollipop_mutation_plot__controls', this.props.showControls
7402
5861
  ? styles$5['fade-in']
7403
5862
  : styles$5['fade-out']) },
7404
5863
  React__namespace.createElement("div", { style: { display: 'flex', alignItems: 'center' } },
@@ -8011,7 +6470,7 @@ var Track = /** @class */ (function (_super) {
8011
6470
  position: 'relative',
8012
6471
  display: 'flex',
8013
6472
  } },
8014
- React__namespace.createElement("span", { className: classnames__default["default"](styles$4.trackTitle, 'small', (this.props.isSubTrack ? 'subtrack-' : '') + "trackTitle") }, this.props.trackTitle),
6473
+ React__namespace.createElement("span", { className: classNames__default["default"](styles$4.trackTitle, 'small', (this.props.isSubTrack ? 'subtrack-' : '') + "trackTitle") }, this.props.trackTitle),
8015
6474
  React__namespace.createElement("span", null,
8016
6475
  React__namespace.createElement(cbioportalFrontendCommons.DefaultTooltip, tslib.__assign({ placement: this.getOverlayPlacement(), overlay: this.getOverlay, onVisibleChange: this.onTooltipVisibleChange, destroyTooltipOnHide: true }, this.tooltipVisibleProps), this.hitZone),
8017
6476
  React__namespace.createElement("span", { style: { marginLeft: this.props.xOffset }, onMouseOver: this.onMouseOver },
@@ -8171,130 +6630,6 @@ var OncoKbFilterValue;
8171
6630
  OncoKbFilterValue["Oncogenic"] = "ONCOGENIC";
8172
6631
  })(OncoKbFilterValue || (OncoKbFilterValue = {}));
8173
6632
 
8174
- var OncoKbSummaryTable = /** @class */ (function (_super) {
8175
- tslib.__extends(OncoKbSummaryTable, _super);
8176
- function OncoKbSummaryTable(props) {
8177
- var _this = _super.call(this, props) || this;
8178
- mobx.makeObservable(_this);
8179
- _this.state = {};
8180
- return _this;
8181
- }
8182
- OncoKbSummaryTable_1 = OncoKbSummaryTable;
8183
- Object.defineProperty(OncoKbSummaryTable.prototype, "hasLevelData", {
8184
- get: function () {
8185
- return this.props.data.find(function (d) { return d.level.length > 0; }) !== undefined;
8186
- },
8187
- enumerable: false,
8188
- configurable: true
8189
- });
8190
- Object.defineProperty(OncoKbSummaryTable.prototype, "columns", {
8191
- get: function () {
8192
- var columns = [
8193
- {
8194
- id: 'proteinChange',
8195
- accessor: 'proteinChange',
8196
- Header: 'Protein Change',
8197
- sortMethod: function (a, b) {
8198
- return cbioportalUtils.defaultSortMethod(cbioportalUtils.calcProteinChangeSortValue(a), cbioportalUtils.calcProteinChangeSortValue(b));
8199
- },
8200
- },
8201
- {
8202
- id: 'count',
8203
- accessor: 'count',
8204
- Header: 'Occurrence',
8205
- maxWidth: 80,
8206
- },
8207
- {
8208
- id: 'clinicalImplication',
8209
- accessor: 'clinicalImplication',
8210
- Header: 'Implication',
8211
- Cell: function (props) { return (React__namespace.createElement("span", null, props.original.clinicalImplication.join(', '))); },
8212
- sortMethod: cbioportalUtils.defaultStringArraySortMethod,
8213
- minWidth: 120,
8214
- },
8215
- {
8216
- id: 'biologicalEffect',
8217
- accessor: 'biologicalEffect',
8218
- Header: 'Effect',
8219
- Cell: function (props) { return (React__namespace.createElement("span", null, props.original.biologicalEffect.join(', '))); },
8220
- sortMethod: cbioportalUtils.defaultStringArraySortMethod,
8221
- minWidth: 150,
8222
- },
8223
- ];
8224
- if (!this.props.usingPublicOncoKbInstance) {
8225
- columns.push({
8226
- id: 'level',
8227
- accessor: 'level',
8228
- Header: 'Level',
8229
- sortable: false,
8230
- Cell: function (props) { return (React__namespace.createElement(React__namespace.Fragment, null, props.original.level.map(function (level) { return (React__namespace.createElement("div", { key: level.level, style: {
8231
- display: 'flex',
8232
- overflow: 'hidden',
8233
- textOverflow: 'ellipsis',
8234
- } },
8235
- React__namespace.createElement(LevelIcon, { level: level.level, showDescription: true }),
8236
- React__namespace.createElement("span", { style: {
8237
- paddingRight: 3,
8238
- } }, ":"),
8239
- React__namespace.createElement(cbioportalFrontendCommons.EllipsisTextTooltip, { text: level.tumorTypes.join(', '), style: {
8240
- overflow: 'hidden',
8241
- whiteSpace: 'nowrap',
8242
- textOverflow: 'ellipsis',
8243
- } }))); }))); },
8244
- minWidth: this.hasLevelData ? 180 : 50,
8245
- });
8246
- }
8247
- return columns;
8248
- },
8249
- enumerable: false,
8250
- configurable: true
8251
- });
8252
- Object.defineProperty(OncoKbSummaryTable.prototype, "render", {
8253
- enumerable: false,
8254
- configurable: true,
8255
- writable: true,
8256
- value: function () {
8257
- var _a = this.props, data = _a.data, initialSortColumn = _a.initialSortColumn, initialSortDirection = _a.initialSortDirection, initialItemsPerPage = _a.initialItemsPerPage;
8258
- var showPagination = data.length >
8259
- (this.props.initialItemsPerPage ||
8260
- OncoKbSummaryTable_1.defaultProps.initialItemsPerPage);
8261
- return (React__namespace.createElement("div", { className: classnames__default["default"]('cbioportal-frontend', 'default-track-tooltip-table') },
8262
- React__namespace.createElement(ReactTable__default["default"], { data: data, columns: this.columns, defaultSorted: [
8263
- {
8264
- id: initialSortColumn ||
8265
- OncoKbSummaryTable_1.defaultProps
8266
- .initialSortColumn,
8267
- desc: initialSortDirection === 'desc',
8268
- },
8269
- ], defaultPageSize: data.length > initialItemsPerPage
8270
- ? initialItemsPerPage
8271
- : data.length, showPagination: showPagination, showPaginationTop: true, showPaginationBottom: false, className: "-striped -highlight", previousText: "<", nextText: ">" })));
8272
- }
8273
- });
8274
- var OncoKbSummaryTable_1;
8275
- Object.defineProperty(OncoKbSummaryTable, "defaultProps", {
8276
- enumerable: true,
8277
- configurable: true,
8278
- writable: true,
8279
- value: {
8280
- data: [],
8281
- initialSortColumn: 'count',
8282
- initialSortDirection: 'desc',
8283
- initialItemsPerPage: 10,
8284
- }
8285
- });
8286
- tslib.__decorate([
8287
- mobx.computed
8288
- ], OncoKbSummaryTable.prototype, "hasLevelData", null);
8289
- tslib.__decorate([
8290
- mobx.computed
8291
- ], OncoKbSummaryTable.prototype, "columns", null);
8292
- OncoKbSummaryTable = OncoKbSummaryTable_1 = tslib.__decorate([
8293
- mobxReact.observer
8294
- ], OncoKbSummaryTable);
8295
- return OncoKbSummaryTable;
8296
- }(React__namespace.Component));
8297
-
8298
6633
  function oncoKbTooltip(usingPublicOncoKbInstance, indicatorData) {
8299
6634
  var sampleCount = indicatorData.length;
8300
6635
  // generate info
@@ -8343,7 +6678,7 @@ function oncoKbTooltip(usingPublicOncoKbInstance, indicatorData) {
8343
6678
  oncogenicInfo,
8344
6679
  ' ',
8345
6680
  "mutations.",
8346
- React__namespace.createElement(OncoKbSummaryTable, { usingPublicOncoKbInstance: usingPublicOncoKbInstance, data: tableData })));
6681
+ React__namespace.createElement(oncokbFrontendCommons.OncoKbSummaryTable, { usingPublicOncoKbInstance: usingPublicOncoKbInstance, data: tableData })));
8347
6682
  }
8348
6683
  function generateLevelData(indicatorData) {
8349
6684
  var levels = {};
@@ -8352,12 +6687,12 @@ function generateLevelData(indicatorData) {
8352
6687
  var parts = treatment.level.split('_');
8353
6688
  var level = parts.length === 2 ? parts[1] : treatment.level;
8354
6689
  levels[level] = levels[level] || [];
8355
- levels[level].push(getTumorTypeNameWithExclusionInfo(treatment.levelAssociatedCancerType, treatment.levelExcludedCancerTypes));
6690
+ levels[level].push(oncokbFrontendCommons.getTumorTypeNameWithExclusionInfo(treatment.levelAssociatedCancerType, treatment.levelExcludedCancerTypes));
8356
6691
  });
8357
6692
  });
8358
6693
  return ___default["default"].keys(levels)
8359
6694
  .sort(function (a, b) {
8360
- return cbioportalUtils.LEVELS.all.indexOf(a) > cbioportalUtils.LEVELS.all.indexOf(b) ? -1 : 1;
6695
+ return oncokbFrontendCommons.LEVELS.all.indexOf(a) > oncokbFrontendCommons.LEVELS.all.indexOf(b) ? -1 : 1;
8361
6696
  })
8362
6697
  .map(function (level) { return ({ level: level, tumorTypes: ___default["default"].uniq(levels[level]) }); });
8363
6698
  }
@@ -8614,9 +6949,9 @@ var PtmReferenceList = /** @class */ (function (_super) {
8614
6949
  maxHeight: 400,
8615
6950
  overflowY: 'auto',
8616
6951
  } },
8617
- React__namespace.createElement(ReferenceList, { pmids: this.props.pubmedIds
6952
+ React__namespace.createElement(oncokbFrontendCommons.ReferenceList, { pmids: this.props.pubmedIds
8618
6953
  .map(function (id) { return extractNumericalPart(id); })
8619
- .filter(function (id) { return id !== undefined; }), pmidData: this.props.pmidData, abstracts: [] })), destroyTooltipOnHide: true },
6954
+ .filter(function (id) { return id !== undefined; }), abstracts: [] })), destroyTooltipOnHide: true },
8620
6955
  React__namespace.createElement("div", { style: { textAlign: 'right' } },
8621
6956
  React__namespace.createElement("i", { className: "fa fa-book", style: { color: 'black' } }))));
8622
6957
  }
@@ -8741,7 +7076,7 @@ var PtmAnnotationTable = /** @class */ (function (_super) {
8741
7076
  var showPagination = data.length >
8742
7077
  (this.props.initialItemsPerPage ||
8743
7078
  PtmAnnotationTable_1.defaultProps.initialItemsPerPage);
8744
- return (React__namespace.createElement("div", { className: classnames__default["default"]('cbioportal-frontend', 'default-track-tooltip-table') },
7079
+ return (React__namespace.createElement("div", { className: classNames__default["default"]('cbioportal-frontend', 'default-track-tooltip-table') },
8745
7080
  React__namespace.createElement(ReactTable__default["default"], { data: data, columns: this.columns, defaultSorted: [
8746
7081
  {
8747
7082
  id: initialSortColumn ||
@@ -10165,7 +8500,7 @@ var AxisScaleSwitch = /** @class */ (function (_super) {
10165
8500
  configurable: true,
10166
8501
  writable: true,
10167
8502
  value: function (scale, onClick) {
10168
- return (React__namespace.createElement("button", { className: classnames__default["default"]({
8503
+ return (React__namespace.createElement("button", { className: classNames__default["default"]({
10169
8504
  'btn-secondary': this.props.selectedScale === scale,
10170
8505
  'btn-outline-secondary': this.props.selectedScale !== scale,
10171
8506
  }, 'btn', 'btn-sm', 'btn-axis-switch'), style: {
@@ -10176,6 +8511,9 @@ var AxisScaleSwitch = /** @class */ (function (_super) {
10176
8511
  fontWeight: this.props.selectedScale === scale
10177
8512
  ? 'bolder'
10178
8513
  : 'normal',
8514
+ color: this.props.selectedScale === scale ? '#fff' : '#6c757d',
8515
+ backgroundColor: this.props.selectedScale === scale ? '#6c757d' : '#fff',
8516
+ borderColor: '#6c757d',
10179
8517
  }, onClick: onClick }, scale));
10180
8518
  }
10181
8519
  });
@@ -11005,14 +9343,14 @@ var DefaultMutationMapperDataFetcher = /** @class */ (function () {
11005
9343
  switch (_c.label) {
11006
9344
  case 0:
11007
9345
  mutationQueryVariants = ___default["default"].uniqBy(___default["default"].map(queryVariants.filter(function (mutation) { return mutation.mutationType !== 'Fusion'; }), function (mutation) {
11008
- return cbioportalUtils.generateProteinChangeQuery(getEntrezGeneId(mutation), getTumorType(mutation), mutation.proteinChange, mutation.mutationType, mutation.proteinPosStart, mutation.proteinPosEnd, evidenceTypes);
9346
+ return oncokbFrontendCommons.generateProteinChangeQuery(getEntrezGeneId(mutation), getTumorType(mutation), mutation.proteinChange, mutation.mutationType, mutation.proteinPosStart, mutation.proteinPosEnd, evidenceTypes);
11009
9347
  }), 'id');
11010
9348
  structuralQueryVariants = ___default["default"].uniqBy(___default["default"].map(queryVariants.filter(function (mutation) {
11011
9349
  var _a;
11012
9350
  return ((_a = mutation.mutationType) === null || _a === void 0 ? void 0 : _a.toUpperCase()) ===
11013
- cbioportalUtils.StructuralVariantType.FUSION;
9351
+ oncokbFrontendCommons.StructuralVariantType.FUSION;
11014
9352
  }), function (mutation) {
11015
- return cbioportalUtils.generateAnnotateStructuralVariantQuery(
9353
+ return oncokbFrontendCommons.generateAnnotateStructuralVariantQuery(
11016
9354
  /* @ts-ignore */
11017
9355
  mutation.structuralVariant, getTumorType(mutation), evidenceTypes);
11018
9356
  }), 'id');
@@ -11118,7 +9456,7 @@ var DefaultMutationMapperFilterApplier = /** @class */ (function () {
11118
9456
  return (!filter.values ||
11119
9457
  !this.oncoKbData.result ||
11120
9458
  this.oncoKbData.result instanceof Error ||
11121
- defaultOncoKbFilter(mutation, this.oncoKbData.result, this.getDefaultTumorType, this.getDefaultEntrezGeneId));
9459
+ oncokbFrontendCommons.defaultOncoKbFilter(mutation, this.oncoKbData.result, this.getDefaultTumorType, this.getDefaultEntrezGeneId));
11122
9460
  }
11123
9461
  });
11124
9462
  Object.defineProperty(DefaultMutationMapperFilterApplier.prototype, "applyHostpotFilter", {
@@ -12174,7 +10512,7 @@ var DefaultMutationMapperStore = /** @class */ (function () {
12174
10512
  get: function () {
12175
10513
  if (this.oncoKbData.result &&
12176
10514
  !(this.oncoKbData.result instanceof Error)) {
12177
- return groupOncoKbIndicatorDataByMutations(this.mutationsByPosition, this.oncoKbData.result, this.getDefaultTumorType, this.getDefaultEntrezGeneId, defaultOncoKbIndicatorFilter);
10515
+ return oncokbFrontendCommons.groupOncoKbIndicatorDataByMutations(this.mutationsByPosition, this.oncoKbData.result, this.getDefaultTumorType, this.getDefaultEntrezGeneId, oncokbFrontendCommons.defaultOncoKbIndicatorFilter);
12178
10516
  }
12179
10517
  else {
12180
10518
  return {};
@@ -12367,7 +10705,7 @@ var TranscriptDropdown = /** @class */ (function (_super) {
12367
10705
  canonicalTranscriptId &&
12368
10706
  transcriptsWithAnnotations.result &&
12369
10707
  transcriptsWithAnnotations.result.length > 0;
12370
- return (React__namespace.createElement("div", { className: classnames__default["default"]('small', styles$1.dropDown) },
10708
+ return (React__namespace.createElement("div", { className: classNames__default["default"]('small', styles$1.dropDown) },
12371
10709
  this.loadingIndicator(isLoading),
12372
10710
  !isLoading &&
12373
10711
  requiredData &&
@@ -12380,7 +10718,7 @@ var TranscriptDropdown = /** @class */ (function (_super) {
12380
10718
  var requiredData = transcriptsWithProteinLength.result &&
12381
10719
  transcriptsWithProteinLength.result.length > 0 &&
12382
10720
  canonicalTranscriptId;
12383
- return (React__namespace.createElement("div", { className: classnames__default["default"]('small', styles$1.dropDown) },
10721
+ return (React__namespace.createElement("div", { className: classNames__default["default"]('small', styles$1.dropDown) },
12384
10722
  this.loadingIndicator(isLoading),
12385
10723
  !isLoading &&
12386
10724
  requiredData &&
@@ -13052,7 +11390,6 @@ exports.LollipopMutationPlot = LollipopMutationPlot;
13052
11390
  exports.LollipopPlot = LollipopPlot;
13053
11391
  exports.LollipopPlotNoTooltip = LollipopPlotNoTooltip;
13054
11392
  exports.LollipopTooltipCountInfo = LollipopTooltipCountInfo;
13055
- exports.MSI_H_NAME = MSI_H_NAME;
13056
11393
  exports.MUTATION_COLUMNS_DEFINITION = MUTATION_COLUMNS_DEFINITION;
13057
11394
  exports.MUTATION_COLUMN_HEADERS = MUTATION_COLUMN_HEADERS;
13058
11395
  exports.MUTATION_STATUS_BADGE_STYLE_OVERRIDE = MUTATION_STATUS_BADGE_STYLE_OVERRIDE;
@@ -13063,26 +11400,14 @@ exports.MutationStatusBadgeSelector = MutationStatusBadgeSelector;
13063
11400
  exports.MyCancerGenome = MyCancerGenome;
13064
11401
  exports.ONCOKB_DEFAULT_DATA = ONCOKB_DEFAULT_DATA;
13065
11402
  exports.ONCOKB_DEFAULT_INFO = ONCOKB_DEFAULT_INFO;
13066
- exports.OTHER_BIOMARKER_HUGO_SYMBOL = OTHER_BIOMARKER_HUGO_SYMBOL;
13067
- exports.OTHER_BIOMARKER_NAME = OTHER_BIOMARKER_NAME;
13068
- exports.OncoKB = OncoKB;
13069
- exports.OncoKBSuggestAnnotationLinkout = OncoKBSuggestAnnotationLinkout;
13070
- exports.OncoKbFeedback = OncoKbFeedback;
13071
- exports.OncoKbHelper = OncoKbHelper;
13072
- exports.OncoKbTooltip = OncoKbTooltip;
13073
- exports.OncoKbTreatmentTable = OncoKbTreatmentTable;
13074
11403
  exports.PercentToggle = PercentToggle;
13075
11404
  exports.ProteinChange = ProteinChange;
13076
11405
  exports.ProteinImpactTypeBadgeSelector = ProteinImpactTypeBadgeSelector;
13077
11406
  exports.ProteinImpactTypeDropdownSelector = ProteinImpactTypeDropdownSelector;
13078
- exports.RefComponent = RefComponent;
13079
- exports.ReferenceList = ReferenceList;
13080
11407
  exports.Sequence = LollipopPlot;
13081
11408
  exports.Signal = Signal;
13082
11409
  exports.SignalTable = SignalTable;
13083
- exports.SummaryWithRefs = SummaryWithRefs;
13084
11410
  exports.TEXT_INPUT_FILTER_ID = TEXT_INPUT_FILTER_ID;
13085
- exports.TMB_H_NAME = TMB_H_NAME;
13086
11411
  exports.TrackSelector = TrackSelector;
13087
11412
  exports.USE_DEFAULT_PUBLIC_INSTANCE_FOR_ONCOKB = USE_DEFAULT_PUBLIC_INSTANCE_FOR_ONCOKB;
13088
11413
  exports.annotationSortValue = sortValue$4;
@@ -13093,14 +11418,12 @@ exports.applyDefaultMutationStatusFilter = applyDefaultMutationStatusFilter;
13093
11418
  exports.applyDefaultPositionFilter = applyDefaultPositionFilter;
13094
11419
  exports.applyDefaultProteinImpactTypeFilter = applyDefaultProteinImpactTypeFilter;
13095
11420
  exports.calculateGnomadAlleleFrequency = calculateGnomadAlleleFrequency;
13096
- exports.civicDownload = download$7;
13097
- exports.civicSortValue = sortValue$8;
11421
+ exports.civicDownload = download$6;
11422
+ exports.civicSortValue = sortValue$7;
13098
11423
  exports.clinvarDownload = download$4;
13099
11424
  exports.clinvarSortValue = sortValue$3;
13100
11425
  exports.dbsnpDownload = download$3;
13101
11426
  exports.dbsnpSortValue = sortValue$2;
13102
- exports.defaultOncoKbFilter = defaultOncoKbFilter;
13103
- exports.errorIcon = errorIcon;
13104
11427
  exports.fetchVariantAnnotationsByMutation = fetchVariantAnnotationsByMutation;
13105
11428
  exports.fetchVariantAnnotationsIndexedByGenomicLocation = fetchVariantAnnotationsIndexedByGenomicLocation;
13106
11429
  exports.findAllUniquePositions = findAllUniquePositions;
@@ -13119,13 +11442,11 @@ exports.getProteinImpactTypeOptionLabel = getProteinImpactTypeOptionLabel;
13119
11442
  exports.getSelectedOptionValues = getSelectedOptionValues;
13120
11443
  exports.getSignalData = getSignalData;
13121
11444
  exports.getSingleSignalValue = getSingleSignalValue;
13122
- exports.getTumorTypeNameWithExclusionInfo = getTumorTypeNameWithExclusionInfo;
13123
11445
  exports.getUrl = getUrl;
13124
11446
  exports.gnomadDownload = download$2;
13125
11447
  exports.gnomadSortValue = sortValue$1;
13126
11448
  exports.groupDataByGroupFilters = groupDataByGroupFilters;
13127
11449
  exports.groupDataByProteinImpactType = groupDataByProteinImpactType;
13128
- exports.groupOncoKbIndicatorDataByMutations = groupOncoKbIndicatorDataByMutations;
13129
11450
  exports.handleOptionSelect = handleOptionSelect;
13130
11451
  exports.hgvscDownload = download$1;
13131
11452
  exports.hgvscSortValue = sortValue;
@@ -13137,17 +11458,11 @@ exports.initDefaultTrackVisibility = initDefaultTrackVisibility;
13137
11458
  exports.initGenomeNexusClient = initGenomeNexusClient;
13138
11459
  exports.initGenomeNexusInternalClient = initGenomeNexusInternalClient;
13139
11460
  exports.initOncoKbClient = initOncoKbClient;
13140
- exports.levelIconClassNames = levelIconClassNames;
13141
- exports.loaderIcon = loaderIcon;
13142
11461
  exports.mergeColumns = mergeColumns;
13143
11462
  exports.mutationTypeSort = mutationTypeSort;
13144
- exports.myCancerGenomeDownload = download$6;
13145
- exports.myCancerGenomeSortValue = sortValue$7;
13146
- exports.normalizeLevel = normalizeLevel;
11463
+ exports.myCancerGenomeDownload = download$5;
11464
+ exports.myCancerGenomeSortValue = sortValue$6;
13147
11465
  exports.onFilterOptionSelect = onFilterOptionSelect;
13148
- exports.oncoKbAnnotationDownload = download$5;
13149
- exports.oncoKbAnnotationSortValue = sortValue$6;
13150
- exports.oncogenicityIconClassNames = oncogenicityIconClassNames;
13151
11466
  exports.proteinChangeSortMethod = proteinChangeSortMethod;
13152
11467
  exports.rightAlignedCell = rightAlignedCell;
13153
11468
  exports.signalDownload = download;