gramene-search 1.2.33 → 1.2.34

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.
@@ -1,2 +1,2 @@
1
- 85181864
2
- 1653596527148200000
1
+ 112144132
2
+ 1654530679311291000
Binary file
Binary file
package/dist/index.js CHANGED
@@ -302,12 +302,60 @@ $3ccb7bb553455c26$var$curatedGenes.reactCuratedGenes = $ByO3L$reduxbundler.creat
302
302
  actionCreator: 'doFetchCuratedGenes'
303
303
  };
304
304
  });
305
+ var $3ccb7bb553455c26$var$grameneExpressionStudies = $ByO3L$reduxbundler.createAsyncResourceBundle({
306
+ name: 'grameneExpressionStudies',
307
+ actionBaseType: 'GRAMENE_EXPRESSION_STUDIES',
308
+ persist: true,
309
+ getPromise: function getPromise(_ref6) {
310
+ var store = _ref6.store;
311
+ return fetch("".concat(store.selectGrameneAPI(), "/experiments?rows=-1")).then(function(res) {
312
+ return res.json();
313
+ }).then(function(res) {
314
+ return $3ccb7bb553455c26$var$_lodash["default"].keyBy(res, '_id');
315
+ });
316
+ }
317
+ });
318
+ $3ccb7bb553455c26$var$grameneExpressionStudies.reactGrameneExpressionStudies = $ByO3L$reduxbundler.createSelector('selectGrameneExpressionStudiesShouldUpdate', function(shouldUpdate) {
319
+ if (shouldUpdate) return {
320
+ actionCreator: 'doFetchGrameneExpressionStudies'
321
+ };
322
+ });
323
+ var $3ccb7bb553455c26$var$grameneExpressionAssays = $ByO3L$reduxbundler.createAsyncResourceBundle({
324
+ name: 'grameneExpressionAssays',
325
+ actionBaseType: 'GRAMENE_EXPRESSION_ASSAYS',
326
+ persist: true,
327
+ getPromise: function getPromise(_ref7) {
328
+ var store = _ref7.store;
329
+ return fetch("".concat(store.selectGrameneAPI(), "/assays?rows=-1")).then(function(res) {
330
+ return res.json();
331
+ }).then(function(res) {
332
+ var expr = {
333
+ };
334
+ res.forEach(function(assay) {
335
+ if (!expr.hasOwnProperty(assay.taxon_id)) expr[assay.taxon_id] = {
336
+ };
337
+ if (!expr[assay.taxon_id].hasOwnProperty(assay.experiment)) expr[assay.taxon_id][assay.experiment] = [];
338
+ assay.order = +assay.group.replace('g', '');
339
+ expr[assay.taxon_id][assay.experiment].push(assay);
340
+ }); // sort each experiment
341
+ for(var tid in expr)for(var exp in expr[tid])expr[tid][exp].sort(function(a, b) {
342
+ return a.order - b.order;
343
+ });
344
+ return expr;
345
+ });
346
+ }
347
+ });
348
+ $3ccb7bb553455c26$var$grameneExpressionAssays.reactGrameneExpressionAssays = $ByO3L$reduxbundler.createSelector('selectGrameneExpressionAssaysShouldUpdate', function(shouldUpdate) {
349
+ if (shouldUpdate) return {
350
+ actionCreator: 'doFetchGrameneExpressionAssays'
351
+ };
352
+ });
305
353
  var $3ccb7bb553455c26$var$grameneSearch = $ByO3L$reduxbundler.createAsyncResourceBundle({
306
354
  name: 'grameneSearch',
307
355
  actionBaseType: 'GRAMENE_SEARCH',
308
356
  persist: false,
309
- getPromise: function getPromise(_ref6) {
310
- var store = _ref6.store;
357
+ getPromise: function getPromise(_ref8) {
358
+ var store = _ref8.store;
311
359
  var offset = store.selectGrameneSearchOffset();
312
360
  var rows = store.selectGrameneSearchRows();
313
361
  var g = store.selectGrameneGenomes();
@@ -365,7 +413,7 @@ var $3ccb7bb553455c26$var$grameneTaxDist = {
365
413
  };
366
414
  return function() {
367
415
  var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;
368
- var _ref7 = arguments.length > 1 ? arguments[1] : undefined, type = _ref7.type, payload = _ref7.payload;
416
+ var _ref9 = arguments.length > 1 ? arguments[1] : undefined, type = _ref9.type, payload = _ref9.payload;
369
417
  return state;
370
418
  };
371
419
  },
@@ -394,7 +442,7 @@ var $3ccb7bb553455c26$var$grameneOrthologs = {
394
442
  };
395
443
  return function() {
396
444
  var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;
397
- var _ref8 = arguments.length > 1 ? arguments[1] : undefined, type = _ref8.type, payload = _ref8.payload;
445
+ var _ref10 = arguments.length > 1 ? arguments[1] : undefined, type = _ref10.type, payload = _ref10.payload;
398
446
  var newState;
399
447
  switch(type){
400
448
  case 'GRAMENE_ORTHOLOGS_REQUESTED':
@@ -413,8 +461,8 @@ var $3ccb7bb553455c26$var$grameneOrthologs = {
413
461
  };
414
462
  },
415
463
  doRequestOrthologs: function doRequestOrthologs(geneId) {
416
- return function(_ref9) {
417
- var dispatch = _ref9.dispatch, store = _ref9.store;
464
+ return function(_ref11) {
465
+ var dispatch = _ref11.dispatch, store = _ref11.store;
418
466
  var orthologs = store.selectGrameneOrthologs();
419
467
  if (!orthologs.hasOwnProperty(geneId)) {
420
468
  dispatch({
@@ -503,7 +551,7 @@ var $3ccb7bb553455c26$var$_default = [
503
551
  $3ccb7bb553455c26$var$grameneTaxDist,
504
552
  $3ccb7bb553455c26$var$grameneOrthologs,
505
553
  $3ccb7bb553455c26$var$curatedGenes
506
- ];
554
+ ]; //, grameneExpressionStudies, grameneExpressionAssays];
507
555
  module.exports["default"] = $3ccb7bb553455c26$var$_default;
508
556
 
509
557
  });
@@ -1270,6 +1318,8 @@ var $13d6dde2feda3111$var$grameneDocs = {
1270
1318
  domains: {
1271
1319
  },
1272
1320
  pathways: {
1321
+ },
1322
+ expression: {
1273
1323
  }
1274
1324
  };
1275
1325
  return function() {
@@ -1321,6 +1371,21 @@ var $13d6dde2feda3111$var$grameneDocs = {
1321
1371
  newState.pathways = Object.assign({
1322
1372
  }, state.pathways, payload);
1323
1373
  return newState;
1374
+ case 'PARALOG_EXPRESSION_REQUESTED':
1375
+ if (!state.expression.hasOwnProperty(payload)) {
1376
+ newState = Object.assign({
1377
+ }, state);
1378
+ newState.expression[payload] = [];
1379
+ return newState;
1380
+ }
1381
+ break;
1382
+ case 'PARALOG_EXPRESSION_RECEIVED':
1383
+ newState = Object.assign({
1384
+ }, state);
1385
+ newState.expression = Object.assign({
1386
+ }, state.expression);
1387
+ newState.expression[payload.id] = payload.paralogs;
1388
+ return newState;
1324
1389
  }
1325
1390
  return state;
1326
1391
  };
@@ -1414,6 +1479,58 @@ var $13d6dde2feda3111$var$grameneDocs = {
1414
1479
  }
1415
1480
  };
1416
1481
  },
1482
+ doRequestParalogExpression: function doRequestParalogExpression(id) {
1483
+ return function(_ref5) {
1484
+ var dispatch = _ref5.dispatch, store = _ref5.store;
1485
+ var expr = store.selectParalogExpression();
1486
+ if (!expr.hasOwnProperty(id)) {
1487
+ dispatch({
1488
+ type: 'PARALOG_EXPRESSION_REQUESTED',
1489
+ payload: id
1490
+ });
1491
+ fetch("".concat(store.selectGrameneAPI(), "/search?q=homology__within_species_paralog:").concat(id, "&fl=id,name,*__expr&rows=100")).then(function(res) {
1492
+ return res.json();
1493
+ }).then(function(res) {
1494
+ var assay_re = /(.+)_tpms_g(\d+)/;
1495
+ var paralogs = res.response.docs.map(function(d) {
1496
+ var p = {
1497
+ id: d.id,
1498
+ name: d.name,
1499
+ experiments: {
1500
+ },
1501
+ min: 1000,
1502
+ max: 0
1503
+ };
1504
+ delete d.id;
1505
+ delete d.name;
1506
+ Object.entries(d).forEach(function(assay) {
1507
+ var parsed = assay[0].match(assay_re);
1508
+ var expr1 = parsed[1].replace('_', '-');
1509
+ if (!p.experiments.hasOwnProperty(expr1)) p.experiments[expr1] = [];
1510
+ var g = parsed[2] - 1;
1511
+ var e = d[assay[0]];
1512
+ if (e < p.min) p.min = e;
1513
+ if (e > p.max) p.max = e;
1514
+ p.experiments[expr1][g] = e;
1515
+ });
1516
+ return p;
1517
+ }).map(function(p) {
1518
+ for(var _expr in p.experiments)p.experiments[_expr] = p.experiments[_expr].filter(function(e) {
1519
+ return e >= 0;
1520
+ });
1521
+ return p;
1522
+ });
1523
+ dispatch({
1524
+ type: 'PARALOG_EXPRESSION_RECEIVED',
1525
+ payload: {
1526
+ id: id,
1527
+ paralogs: paralogs
1528
+ }
1529
+ });
1530
+ });
1531
+ }
1532
+ };
1533
+ },
1417
1534
  selectGrameneGenes: function selectGrameneGenes(state) {
1418
1535
  return state.grameneDocs.genes;
1419
1536
  },
@@ -1422,6 +1539,9 @@ var $13d6dde2feda3111$var$grameneDocs = {
1422
1539
  },
1423
1540
  selectGramenePathways: function selectGramenePathways(state) {
1424
1541
  return state.grameneDocs.pathways;
1542
+ },
1543
+ selectParalogExpression: function selectParalogExpression(state) {
1544
+ return state.grameneDocs.expression;
1425
1545
  }
1426
1546
  };
1427
1547
  var $13d6dde2feda3111$var$_default = $13d6dde2feda3111$var$grameneDocs;
@@ -2197,24 +2317,41 @@ module.exports["default"] = void 0;
2197
2317
 
2198
2318
  var $9552550dff566159$var$_react = $9552550dff566159$var$_interopRequireDefault($ByO3L$react);
2199
2319
 
2320
+
2200
2321
  function $9552550dff566159$var$_interopRequireDefault(obj) {
2201
2322
  return obj && obj.__esModule ? obj : {
2202
2323
  "default": obj
2203
2324
  };
2204
2325
  }
2205
- var $9552550dff566159$var$PREFIX = $parcel$global.location ? $parcel$global.location.origin + $parcel$global.location.pathname + '/' : '';
2206
2326
  var $9552550dff566159$var$Detail = function Detail(props) {
2207
2327
  var gene = props.geneDocs[props.searchResult.id];
2208
- var url = "/static/atlasWidget.html?".concat(gene.taxon_id === 112509 ? gene.synonyms[0] : gene._id);
2209
- var height = '500px';
2210
- return(/*#__PURE__*/ $9552550dff566159$var$_react["default"].createElement("iframe", {
2211
- src: url,
2328
+ var paralogs_url;
2329
+ var gene_url = "/static/atlasWidget.html?reference=0&genes=".concat(gene._id);
2330
+ if (props.paralogExpression && props.paralogExpression[gene._id]) {
2331
+ var paralogs = props.paralogExpression[gene._id].map(function(p) {
2332
+ return p.id;
2333
+ });
2334
+ paralogs_url = "/static/atlasWidget.html?reference=1&genes=".concat(paralogs.join(' '));
2335
+ } else props.doRequestParalogExpression(gene._id);
2336
+ return(/*#__PURE__*/ $9552550dff566159$var$_react["default"].createElement($ByO3L$reactbootstrap.Tabs, null, /*#__PURE__*/ $9552550dff566159$var$_react["default"].createElement($ByO3L$reactbootstrap.Tab, {
2337
+ eventKey: "gene",
2338
+ title: "All Studies"
2339
+ }, /*#__PURE__*/ $9552550dff566159$var$_react["default"].createElement("iframe", {
2340
+ src: gene_url,
2341
+ frameBorder: "0",
2342
+ width: "100%",
2343
+ height: "500px"
2344
+ })), /*#__PURE__*/ $9552550dff566159$var$_react["default"].createElement($ByO3L$reactbootstrap.Tab, {
2345
+ eventKey: "paralogs",
2346
+ title: "Reference Study (all paralogs)"
2347
+ }, paralogs_url && /*#__PURE__*/ $9552550dff566159$var$_react["default"].createElement("iframe", {
2348
+ src: paralogs_url,
2212
2349
  frameBorder: "0",
2213
2350
  width: "100%",
2214
- height: height
2215
- }, /*#__PURE__*/ $9552550dff566159$var$_react["default"].createElement("p", null, "browser doesn't support iframes")));
2351
+ height: "500px"
2352
+ }))));
2216
2353
  };
2217
- var $9552550dff566159$var$_default = $ByO3L$reduxbundlerreact.connect($9552550dff566159$var$Detail);
2354
+ var $9552550dff566159$var$_default = $ByO3L$reduxbundlerreact.connect('selectParalogExpression', 'doRequestParalogExpression', $9552550dff566159$var$Detail);
2218
2355
  module.exports["default"] = $9552550dff566159$var$_default;
2219
2356
 
2220
2357
  });