@vitessce/heatmap 2.0.0-beta.2 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/HeatmapSubscriber.js +1 -1
- package/package.json +9 -9
- package/dist/heatmap.worker.js +0 -56
|
@@ -3,7 +3,7 @@ import React, { useState, useCallback, useMemo, } from 'react';
|
|
|
3
3
|
import plur from 'plur';
|
|
4
4
|
import { TitleInfo, useDeckCanvasSize, useGetObsInfo, useReady, useUrls, useObsSetsData, useObsFeatureMatrixData, useMultiObsLabels, useFeatureLabelsData, useCoordination, useLoaders, useSetComponentHover, useSetComponentViewInfo, registerPluginViewType, } from '@vitessce/vit-s';
|
|
5
5
|
import { capitalize, commaNumber, getCellColors } from '@vitessce/utils';
|
|
6
|
-
import { mergeObsSets } from '@vitessce/sets';
|
|
6
|
+
import { mergeObsSets } from '@vitessce/sets-utils';
|
|
7
7
|
import { COMPONENT_COORDINATION_TYPES, ViewType } from '@vitessce/constants-internal';
|
|
8
8
|
import Heatmap from './Heatmap';
|
|
9
9
|
import HeatmapTooltipSubscriber from './HeatmapTooltipSubscriber';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vitessce/heatmap",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.1",
|
|
4
4
|
"author": "Gehlenborg Lab",
|
|
5
5
|
"homepage": "http://vitessce.io",
|
|
6
6
|
"repository": {
|
|
@@ -14,16 +14,16 @@
|
|
|
14
14
|
],
|
|
15
15
|
"dependencies": {
|
|
16
16
|
"@material-ui/core": "~4.12.3",
|
|
17
|
-
"@vitessce/constants-internal": "2.0.0-beta.2",
|
|
18
|
-
"@vitessce/gl": "2.0.0-beta.2",
|
|
19
|
-
"@vitessce/sets": "2.0.0-beta.2",
|
|
20
|
-
"@vitessce/tooltip": "2.0.0-beta.2",
|
|
21
|
-
"@vitessce/utils": "2.0.0-beta.2",
|
|
22
|
-
"@vitessce/vit-s": "2.0.0-beta.2",
|
|
23
|
-
"@vitessce/workers": "2.0.0-beta.2",
|
|
24
17
|
"lodash": "^4.17.21",
|
|
25
18
|
"plur": "^5.1.0",
|
|
26
|
-
"uuid": "^3.3.2"
|
|
19
|
+
"uuid": "^3.3.2",
|
|
20
|
+
"@vitessce/constants-internal": "2.0.1",
|
|
21
|
+
"@vitessce/gl": "2.0.1",
|
|
22
|
+
"@vitessce/sets-utils": "2.0.1",
|
|
23
|
+
"@vitessce/tooltip": "2.0.1",
|
|
24
|
+
"@vitessce/utils": "2.0.1",
|
|
25
|
+
"@vitessce/vit-s": "2.0.1",
|
|
26
|
+
"@vitessce/workers": "2.0.1"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"react": "^18.0.0",
|
package/dist/heatmap.worker.js
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
/* eslint-disable no-restricted-globals */
|
|
2
|
-
import { getCellByGeneTile, getGeneByCellTile } from './utils';
|
|
3
|
-
/**
|
|
4
|
-
* Map a gene expression matrix onto multiple square array tiles,
|
|
5
|
-
* taking into account the ordering/selection of cells.
|
|
6
|
-
* @param {object} params
|
|
7
|
-
* @param {string} params.curr The current task uuid.
|
|
8
|
-
* @param {number} params.xTiles How many tiles required in the x direction?
|
|
9
|
-
* @param {number} params.yTiles How many tiles required in the y direction?
|
|
10
|
-
* @param {number} params.tileSize How many entries along each tile axis?
|
|
11
|
-
* @param {string[]} params.cellOrdering The current ordering of cells.
|
|
12
|
-
* @param {string[]} params.cols The name of each column (gene ID).
|
|
13
|
-
* Does not take transpose into account (always genes).
|
|
14
|
-
* @param {ArrayBuffer} params.data The array buffer.
|
|
15
|
-
* Need to transfer back to main thread when done.
|
|
16
|
-
* @param {boolean} params.transpose Is the heatmap transposed?
|
|
17
|
-
* @param {boolean} params.expressionRowLookUp A lookup table for the array index of a given cell.
|
|
18
|
-
* This is needed for performance reasons instead of calling `indexOf` repeatedly.
|
|
19
|
-
* @returns {array} [message, transfers]
|
|
20
|
-
*/
|
|
21
|
-
function getTile({ curr, tileI, tileJ, tileSize, cellOrdering, cols, data, transpose, expressionRowLookUp, }) {
|
|
22
|
-
const view = new Uint8Array(data);
|
|
23
|
-
const numGenes = cols.length;
|
|
24
|
-
const numCells = cellOrdering.length;
|
|
25
|
-
const getTileFunction = (transpose ? getGeneByCellTile : getCellByGeneTile);
|
|
26
|
-
const result = getTileFunction(view, {
|
|
27
|
-
tileSize,
|
|
28
|
-
tileI,
|
|
29
|
-
tileJ,
|
|
30
|
-
numCells,
|
|
31
|
-
numGenes,
|
|
32
|
-
cellOrdering,
|
|
33
|
-
expressionRowLookUp,
|
|
34
|
-
});
|
|
35
|
-
return [{ tile: result, buffer: data, curr }, [data]];
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Worker message passing logic.
|
|
39
|
-
*/
|
|
40
|
-
if (typeof self !== 'undefined') {
|
|
41
|
-
const nameToFunction = {
|
|
42
|
-
getTile,
|
|
43
|
-
};
|
|
44
|
-
self.addEventListener('message', (event) => {
|
|
45
|
-
try {
|
|
46
|
-
if (Array.isArray(event.data)) {
|
|
47
|
-
const [name, args] = event.data;
|
|
48
|
-
const [message, transfers] = nameToFunction[name](args);
|
|
49
|
-
self.postMessage(message, transfers);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
catch (e) {
|
|
53
|
-
console.warn(e);
|
|
54
|
-
}
|
|
55
|
-
});
|
|
56
|
-
}
|