@ohif/app 3.8.0-beta.86 → 3.8.0-beta.87
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/117.bundle.a5e6959bf225da5cf4ed.js +6552 -0
- package/dist/164.bundle.96c0518b435ea19ef8c4.js +11816 -0
- package/dist/{433.bundle.c92d3f716a797127c1be.js → 203.bundle.846a90d1ede185c941b0.js} +4765 -6951
- package/dist/{206.bundle.1203a96e327b365264e5.js → 206.bundle.096c1d86defe1cf7e9ae.js} +4 -4
- package/dist/{183.bundle.c88c4355c4829ed94a88.js → 236.bundle.fb6c65ae3a5aa0c58727.js} +17541 -23678
- package/dist/{321.bundle.5bd98d3324768715f634.js → 321.bundle.7d6d0ead9384fcb67a5c.js} +19 -22
- package/dist/{342.bundle.8c74ac4c7871bd4a6f60.js → 342.bundle.36ee082163b01284eeba.js} +1 -1
- package/dist/{41.bundle.45737afb9f85e7e69ff3.js → 41.bundle.2f52dafa60516e97cd03.js} +2 -2
- package/dist/{217.bundle.bbc6090836dcca555dfc.js → 416.bundle.837e0b84baddd2193d67.js} +61564 -70419
- package/dist/{448.bundle.fde8b8e0fd744f39389d.js → 448.bundle.7c47e50e0db23eeace58.js} +2 -2
- package/dist/473.bundle.f6804e7ac014a561eff8.js +7256 -0
- package/dist/483.bundle.9263b25c34b349aae80e.js +2287 -0
- package/dist/{487.bundle.8d0477af42cf9f8c0937.js → 487.bundle.adf730aff4ec37332b88.js} +7 -7
- package/dist/{544.bundle.80c013bb477a263bcf10.js → 544.bundle.1b6998bb61d6f8f88da9.js} +2 -2
- package/dist/{574.bundle.9919f94ea252d4a45aaf.js → 574.bundle.d6f15a036af7ecaf82f9.js} +4 -4
- package/dist/{633.bundle.3961c49efec0b913b9cc.js → 633.bundle.ad22fd57eb95ee5f056a.js} +4 -4
- package/dist/{669.bundle.5652fa450c1d63575a5a.js → 669.bundle.796543c57c658097fe75.js} +9 -9
- package/dist/{335.bundle.fab6af469f98e7a59bfa.js → 7.bundle.ea90a6f6f1d4ab030dfb.js} +185 -228
- package/dist/{722.bundle.a91ce7b563b901b25db0.js → 722.bundle.05e8759e64d484f4554d.js} +2 -2
- package/dist/{724.bundle.634bee9667a518d1202f.js → 724.bundle.275035c2002c8fd78471.js} +234 -7
- package/dist/{726.bundle.0b3d9277d22fe7e15b89.js → 726.bundle.c8de818cf1a3ff0cf7d2.js} +2 -2
- package/dist/{164.bundle.288b10692cc72b81a98d.js → 783.bundle.b28ae6b134602470e2f1.js} +1 -1
- package/dist/{835.bundle.15aff0b7433bb0dd6d6d.js → 835.bundle.4c0eaa2c1a427ee41817.js} +2 -2
- package/dist/{862.bundle.217ce894d955626c78c5.js → 862.bundle.4be5d148c2b1adf4dbf3.js} +2 -2
- package/dist/{889.bundle.e2700d7456565ce71dad.js → 889.bundle.1a646aa901e073328cad.js} +1 -1
- package/dist/{94.bundle.b35c818d871de99336d8.js → 94.bundle.d6749c52eb6327bd45de.js} +4 -4
- package/dist/{app.bundle.ce0e385dbbb6c1c1769f.js → app.bundle.177823343bc7e2b039a2.js} +44486 -42404
- package/dist/cornerstoneDICOMImageLoader.min.js +1 -1
- package/dist/cornerstoneDICOMImageLoader.min.js.map +1 -1
- package/dist/index.html +1 -1
- package/dist/{polySeg.bundle.c2653f8ce77f44ae095b.js → polySeg.bundle.43bf3490e07982491e2b.js} +3 -3
- package/dist/suv-peak-worker.bundle.1f9b9e6887eebc07c50a.js +404 -0
- package/dist/sw.js +1 -1
- package/package.json +18 -18
- /package/dist/{188.bundle.d9b13c4a2910858bca9b.js → 188.bundle.bef5c8babdde7064bdbe.js} +0 -0
- /package/dist/{325.bundle.ac07a6ca0a4e66bed604.js → 325.bundle.357db826733b5379bd1d.js} +0 -0
- /package/dist/{594.bundle.e8e1b20c5c46cf16ffa3.js → 594.bundle.9a7fd38c5fc9823216e5.js} +0 -0
- /package/dist/{699.bundle.7228b225e0c2b8100077.js → 699.bundle.4d75ac5add81a2e4ef3b.js} +0 -0
- /package/dist/{905.bundle.ec6275a2096f7f096618.js → 905.bundle.36ce5f219e58ff9ddf9b.js} +0 -0
- /package/dist/{907.bundle.d2823642d3a32b5209a2.js → 907.bundle.64fa9f550bd239e92346.js} +0 -0
- /package/dist/{961.bundle.34a9b1fbf372d18b9b36.js → 961.bundle.6a18125a324bca120651.js} +0 -0
package/dist/index.html
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
<!doctype html><html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"/><meta name="theme-color" content="#000000"/><meta name="mobile-web-app-capable" content="yes"/><meta name="application-name" content="OHIF Viewer"/><meta name="apple-mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/><meta name="apple-mobile-web-app-title" content="@ohif/app"/><meta name="msapplication-TileColor" content="#fff"/><meta name="msapplication-TileImage" content="/assets/mstile-144x144.png"/><meta name="msapplication-config" content="/assets/browserconfig.xml"/><script>console.time('scriptToView');
|
|
2
|
-
window.PUBLIC_URL = '/';</script><link rel="manifest" href="/manifest.json"/><link rel="shortcut icon" href="/assets/favicon.ico"/><link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon-16x16.png"/><link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon-32x32.png"/><link rel="apple-touch-icon" sizes="57x57" href="/assets/apple-touch-icon-57x57.png"/><link rel="apple-touch-icon" sizes="60x60" href="/assets/apple-touch-icon-60x60.png"/><link rel="apple-touch-icon" sizes="72x72" href="/assets/apple-touch-icon-72x72.png"/><link rel="apple-touch-icon" sizes="76x76" href="/assets/apple-touch-icon-76x76.png"/><link rel="apple-touch-icon" sizes="114x114" href="/assets/apple-touch-icon-114x114.png"/><link rel="apple-touch-icon" sizes="120x120" href="/assets/apple-touch-icon-120x120.png"/><link rel="apple-touch-icon" sizes="144x144" href="/assets/apple-touch-icon-144x144.png"/><link rel="apple-touch-icon" sizes="152x152" href="/assets/apple-touch-icon-152x152.png"/><link rel="apple-touch-icon" sizes="167x167" href="/assets/apple-touch-icon-167x167.png"/><link rel="apple-touch-icon" sizes="180x180" href="/assets/apple-touch-icon-180x180.png"/><link rel="apple-touch-icon" sizes="1024x1024" href="/assets/apple-touch-icon-1024x1024.png"/><link rel="apple-touch-startup-image" media="(device-width: 320px) and (device-height: 480px) and (-webkit-device-pixel-ratio: 1)" href="/assets/apple-touch-startup-image-320x460.png"/><link rel="apple-touch-startup-image" media="(device-width: 320px) and (device-height: 480px) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-640x920.png"/><link rel="apple-touch-startup-image" media="(device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-640x1096.png"/><link rel="apple-touch-startup-image" media="(device-width: 375px) and (device-height: 667px) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-750x1294.png"/><link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 736px) and (orientation: landscape) and (-webkit-device-pixel-ratio: 3)" href="/assets/apple-touch-startup-image-1182x2208.png"/><link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 736px) and (orientation: portrait) and (-webkit-device-pixel-ratio: 3)" href="/assets/apple-touch-startup-image-1242x2148.png"/><link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (orientation: landscape) and (-webkit-device-pixel-ratio: 1)" href="/assets/apple-touch-startup-image-748x1024.png"/><link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (orientation: portrait) and (-webkit-device-pixel-ratio: 1)" href="/assets/apple-touch-startup-image-768x1004.png"/><link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (orientation: landscape) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-1496x2048.png"/><link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (orientation: portrait) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-1536x2008.png"/><link rel="icon" type="image/png" sizes="228x228" href="/assets/coast-228x228.png"/><link rel="yandex-tableau-widget" href="/assets/yandex-browser-manifest.json"/><script rel="preload" as="script" src="/app-config.js"></script><script rel="preload" as="script" type="module" src="/init-service-worker.js"></script><title>OHIF Viewer</title><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin/><link href="https://fonts.googleapis.com/css?family=Inter:100,300,400,500,700&display=swap" rel="stylesheet" rel="preload" as="style"/><script defer="defer" src="/app.bundle.
|
|
2
|
+
window.PUBLIC_URL = '/';</script><link rel="manifest" href="/manifest.json"/><link rel="shortcut icon" href="/assets/favicon.ico"/><link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon-16x16.png"/><link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon-32x32.png"/><link rel="apple-touch-icon" sizes="57x57" href="/assets/apple-touch-icon-57x57.png"/><link rel="apple-touch-icon" sizes="60x60" href="/assets/apple-touch-icon-60x60.png"/><link rel="apple-touch-icon" sizes="72x72" href="/assets/apple-touch-icon-72x72.png"/><link rel="apple-touch-icon" sizes="76x76" href="/assets/apple-touch-icon-76x76.png"/><link rel="apple-touch-icon" sizes="114x114" href="/assets/apple-touch-icon-114x114.png"/><link rel="apple-touch-icon" sizes="120x120" href="/assets/apple-touch-icon-120x120.png"/><link rel="apple-touch-icon" sizes="144x144" href="/assets/apple-touch-icon-144x144.png"/><link rel="apple-touch-icon" sizes="152x152" href="/assets/apple-touch-icon-152x152.png"/><link rel="apple-touch-icon" sizes="167x167" href="/assets/apple-touch-icon-167x167.png"/><link rel="apple-touch-icon" sizes="180x180" href="/assets/apple-touch-icon-180x180.png"/><link rel="apple-touch-icon" sizes="1024x1024" href="/assets/apple-touch-icon-1024x1024.png"/><link rel="apple-touch-startup-image" media="(device-width: 320px) and (device-height: 480px) and (-webkit-device-pixel-ratio: 1)" href="/assets/apple-touch-startup-image-320x460.png"/><link rel="apple-touch-startup-image" media="(device-width: 320px) and (device-height: 480px) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-640x920.png"/><link rel="apple-touch-startup-image" media="(device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-640x1096.png"/><link rel="apple-touch-startup-image" media="(device-width: 375px) and (device-height: 667px) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-750x1294.png"/><link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 736px) and (orientation: landscape) and (-webkit-device-pixel-ratio: 3)" href="/assets/apple-touch-startup-image-1182x2208.png"/><link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 736px) and (orientation: portrait) and (-webkit-device-pixel-ratio: 3)" href="/assets/apple-touch-startup-image-1242x2148.png"/><link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (orientation: landscape) and (-webkit-device-pixel-ratio: 1)" href="/assets/apple-touch-startup-image-748x1024.png"/><link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (orientation: portrait) and (-webkit-device-pixel-ratio: 1)" href="/assets/apple-touch-startup-image-768x1004.png"/><link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (orientation: landscape) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-1496x2048.png"/><link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (orientation: portrait) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-1536x2008.png"/><link rel="icon" type="image/png" sizes="228x228" href="/assets/coast-228x228.png"/><link rel="yandex-tableau-widget" href="/assets/yandex-browser-manifest.json"/><script rel="preload" as="script" src="/app-config.js"></script><script rel="preload" as="script" type="module" src="/init-service-worker.js"></script><title>OHIF Viewer</title><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin/><link href="https://fonts.googleapis.com/css?family=Inter:100,300,400,500,700&display=swap" rel="stylesheet" rel="preload" as="style"/><script defer="defer" src="/app.bundle.177823343bc7e2b039a2.js"></script><link href="/app.bundle.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="react-portal"></div><div id="root"></div></body></html>
|
package/dist/{polySeg.bundle.c2653f8ce77f44ae095b.js → polySeg.bundle.43bf3490e07982491e2b.js}
RENAMED
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
/******/ __webpack_require__.x = () => {
|
|
45
45
|
/******/ // Load entry module and return exports
|
|
46
46
|
/******/ // This entry module depends on other loaded chunks and execution need to be delayed
|
|
47
|
-
/******/ var __webpack_exports__ = __webpack_require__.O(undefined, [
|
|
47
|
+
/******/ var __webpack_exports__ = __webpack_require__.O(undefined, [203,483,702,416,164], () => (__webpack_require__(95989)))
|
|
48
48
|
/******/ __webpack_exports__ = __webpack_require__.O(__webpack_exports__);
|
|
49
49
|
/******/ return __webpack_exports__;
|
|
50
50
|
/******/ };
|
|
@@ -136,7 +136,7 @@
|
|
|
136
136
|
/******/ // This function allow to reference async chunks and sibling chunks for the entrypoint
|
|
137
137
|
/******/ __webpack_require__.u = (chunkId) => {
|
|
138
138
|
/******/ // return url for filenames based on template
|
|
139
|
-
/******/ return "" + (chunkId === 572 ? "polySeg" : chunkId) + ".bundle." + {"
|
|
139
|
+
/******/ return "" + (chunkId === 572 ? "polySeg" : chunkId) + ".bundle." + {"164":"96c0518b435ea19ef8c4","203":"846a90d1ede185c941b0","416":"837e0b84baddd2193d67","483":"9263b25c34b349aae80e","572":"43bf3490e07982491e2b","702":"963481fbf871984b646f"}[chunkId] + ".js";
|
|
140
140
|
/******/ };
|
|
141
141
|
/******/ })();
|
|
142
142
|
/******/
|
|
@@ -236,7 +236,7 @@
|
|
|
236
236
|
/******/ (() => {
|
|
237
237
|
/******/ var next = __webpack_require__.x;
|
|
238
238
|
/******/ __webpack_require__.x = () => {
|
|
239
|
-
/******/ return Promise.all([
|
|
239
|
+
/******/ return Promise.all([203,483,702,416,164].map(__webpack_require__.e, __webpack_require__)).then(next);
|
|
240
240
|
/******/ };
|
|
241
241
|
/******/ })();
|
|
242
242
|
/******/
|
|
@@ -0,0 +1,404 @@
|
|
|
1
|
+
/******/ (() => { // webpackBootstrap
|
|
2
|
+
/******/ var __webpack_modules__ = ({
|
|
3
|
+
|
|
4
|
+
/***/ 72962:
|
|
5
|
+
/***/ ((__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) => {
|
|
6
|
+
|
|
7
|
+
"use strict";
|
|
8
|
+
/* harmony import */ var _cornerstonejs_tools__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(39371);
|
|
9
|
+
/* harmony import */ var gl_matrix__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(44753);
|
|
10
|
+
/* harmony import */ var _kitware_vtk_js_Common_DataModel_ImageData__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(51250);
|
|
11
|
+
/* harmony import */ var _kitware_vtk_js_Common_Core_DataArray__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(45128);
|
|
12
|
+
/* harmony import */ var comlink__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(99178);
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
const createVolume = ({
|
|
19
|
+
dimensions,
|
|
20
|
+
origin,
|
|
21
|
+
direction,
|
|
22
|
+
spacing,
|
|
23
|
+
scalarData,
|
|
24
|
+
metadata
|
|
25
|
+
}) => {
|
|
26
|
+
const imageData = _kitware_vtk_js_Common_DataModel_ImageData__WEBPACK_IMPORTED_MODULE_2__/* ["default"].newInstance */ .Ay.newInstance();
|
|
27
|
+
imageData.setDimensions(dimensions);
|
|
28
|
+
imageData.setOrigin(origin);
|
|
29
|
+
imageData.setDirection(direction);
|
|
30
|
+
imageData.setSpacing(spacing);
|
|
31
|
+
const scalarArray = _kitware_vtk_js_Common_Core_DataArray__WEBPACK_IMPORTED_MODULE_3__/* ["default"].newInstance */ .Ay.newInstance({
|
|
32
|
+
name: 'Pixels',
|
|
33
|
+
numberOfComponents: 1,
|
|
34
|
+
values: scalarData
|
|
35
|
+
});
|
|
36
|
+
imageData.getPointData().setScalars(scalarArray);
|
|
37
|
+
imageData.modified();
|
|
38
|
+
return {
|
|
39
|
+
imageData,
|
|
40
|
+
metadata,
|
|
41
|
+
getScalarData: () => scalarData
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* This method calculates the SUV peak on a segmented ROI from a reference PET
|
|
46
|
+
* volume. If a rectangle annotation is provided, the peak is calculated within that
|
|
47
|
+
* rectangle. Otherwise, the calculation is performed on the entire volume which
|
|
48
|
+
* will be slower but same result.
|
|
49
|
+
* @param viewport Viewport to use for the calculation
|
|
50
|
+
* @param labelmap Labelmap from which the mask is taken
|
|
51
|
+
* @param referenceVolume PET volume to use for SUV calculation
|
|
52
|
+
* @param toolData [Optional] list of toolData to use for SUV calculation
|
|
53
|
+
* @param segmentIndex The index of the segment to use for masking
|
|
54
|
+
* @returns
|
|
55
|
+
*/
|
|
56
|
+
function calculateSuvPeak({
|
|
57
|
+
labelmapProps,
|
|
58
|
+
referenceVolumeProps,
|
|
59
|
+
annotations,
|
|
60
|
+
segmentIndex = 1
|
|
61
|
+
}) {
|
|
62
|
+
const labelmap = createVolume(labelmapProps);
|
|
63
|
+
const referenceVolume = createVolume(referenceVolumeProps);
|
|
64
|
+
if (referenceVolume.metadata.Modality !== 'PT') {
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
const labelmapData = labelmap.getScalarData();
|
|
68
|
+
const referenceVolumeData = referenceVolume.getScalarData();
|
|
69
|
+
if (labelmapData.length !== referenceVolumeData.length) {
|
|
70
|
+
throw new Error('labelmap and referenceVolume must have the same number of pixels');
|
|
71
|
+
}
|
|
72
|
+
const {
|
|
73
|
+
dimensions,
|
|
74
|
+
imageData: labelmapImageData
|
|
75
|
+
} = labelmap;
|
|
76
|
+
const {
|
|
77
|
+
imageData: referenceVolumeImageData
|
|
78
|
+
} = referenceVolume;
|
|
79
|
+
let boundsIJK;
|
|
80
|
+
// Todo: using the first annotation for now
|
|
81
|
+
if (annotations?.length && annotations[0].data?.cachedStats) {
|
|
82
|
+
const {
|
|
83
|
+
projectionPoints
|
|
84
|
+
} = annotations[0].data.cachedStats;
|
|
85
|
+
const pointsToUse = [].concat(...projectionPoints); // cannot use flat() because of typescript compiler right now
|
|
86
|
+
|
|
87
|
+
const rectangleCornersIJK = pointsToUse.map(world => {
|
|
88
|
+
const ijk = gl_matrix__WEBPACK_IMPORTED_MODULE_1__/* .vec3.fromValues */ .eR.fromValues(0, 0, 0);
|
|
89
|
+
referenceVolumeImageData.worldToIndex(world, ijk);
|
|
90
|
+
return ijk;
|
|
91
|
+
});
|
|
92
|
+
boundsIJK = _cornerstonejs_tools__WEBPACK_IMPORTED_MODULE_0__.utilities.boundingBox.getBoundingBoxAroundShape(rectangleCornersIJK, dimensions);
|
|
93
|
+
}
|
|
94
|
+
let max = 0;
|
|
95
|
+
let maxIJK = [0, 0, 0];
|
|
96
|
+
let maxLPS = [0, 0, 0];
|
|
97
|
+
const callback = ({
|
|
98
|
+
pointIJK,
|
|
99
|
+
pointLPS
|
|
100
|
+
}) => {
|
|
101
|
+
const offset = referenceVolumeImageData.computeOffsetIndex(pointIJK);
|
|
102
|
+
const value = labelmapData[offset];
|
|
103
|
+
if (value !== segmentIndex) {
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
const referenceValue = referenceVolumeData[offset];
|
|
107
|
+
if (referenceValue > max) {
|
|
108
|
+
max = referenceValue;
|
|
109
|
+
maxIJK = pointIJK;
|
|
110
|
+
maxLPS = pointLPS;
|
|
111
|
+
}
|
|
112
|
+
};
|
|
113
|
+
_cornerstonejs_tools__WEBPACK_IMPORTED_MODULE_0__.utilities.pointInShapeCallback(labelmapImageData, () => true, callback, boundsIJK);
|
|
114
|
+
const direction = labelmapImageData.getDirection().slice(0, 3);
|
|
115
|
+
|
|
116
|
+
/**
|
|
117
|
+
* 2. Find the bottom and top of the great circle for the second sphere (1cc sphere)
|
|
118
|
+
* V = (4/3)πr3
|
|
119
|
+
*/
|
|
120
|
+
const radius = Math.pow(1 / (4 / 3 * Math.PI), 1 / 3) * 10;
|
|
121
|
+
const diameter = radius * 2;
|
|
122
|
+
const secondaryCircleWorld = gl_matrix__WEBPACK_IMPORTED_MODULE_1__/* .vec3.create */ .eR.create();
|
|
123
|
+
const bottomWorld = gl_matrix__WEBPACK_IMPORTED_MODULE_1__/* .vec3.create */ .eR.create();
|
|
124
|
+
const topWorld = gl_matrix__WEBPACK_IMPORTED_MODULE_1__/* .vec3.create */ .eR.create();
|
|
125
|
+
referenceVolumeImageData.indexToWorld(maxIJK, secondaryCircleWorld);
|
|
126
|
+
gl_matrix__WEBPACK_IMPORTED_MODULE_1__/* .vec3.scaleAndAdd */ .eR.scaleAndAdd(bottomWorld, secondaryCircleWorld, direction, -diameter / 2);
|
|
127
|
+
gl_matrix__WEBPACK_IMPORTED_MODULE_1__/* .vec3.scaleAndAdd */ .eR.scaleAndAdd(topWorld, secondaryCircleWorld, direction, diameter / 2);
|
|
128
|
+
const suvPeakCirclePoints = [bottomWorld, topWorld];
|
|
129
|
+
|
|
130
|
+
/**
|
|
131
|
+
* 3. Find the Mean and Max of the 1cc sphere centered on the suv Max of the previous
|
|
132
|
+
* sphere
|
|
133
|
+
*/
|
|
134
|
+
let count = 0;
|
|
135
|
+
let acc = 0;
|
|
136
|
+
const suvPeakMeanCallback = ({
|
|
137
|
+
value
|
|
138
|
+
}) => {
|
|
139
|
+
acc += value;
|
|
140
|
+
count += 1;
|
|
141
|
+
};
|
|
142
|
+
_cornerstonejs_tools__WEBPACK_IMPORTED_MODULE_0__.utilities.pointInSurroundingSphereCallback(referenceVolumeImageData, suvPeakCirclePoints, suvPeakMeanCallback);
|
|
143
|
+
const mean = acc / count;
|
|
144
|
+
return {
|
|
145
|
+
max,
|
|
146
|
+
maxIJK,
|
|
147
|
+
maxLPS,
|
|
148
|
+
mean
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
const obj = {
|
|
152
|
+
calculateSuvPeak
|
|
153
|
+
};
|
|
154
|
+
(0,comlink__WEBPACK_IMPORTED_MODULE_4__/* .expose */ .p)(obj);
|
|
155
|
+
|
|
156
|
+
/***/ }),
|
|
157
|
+
|
|
158
|
+
/***/ 89288:
|
|
159
|
+
/***/ (() => {
|
|
160
|
+
|
|
161
|
+
/* (ignored) */
|
|
162
|
+
|
|
163
|
+
/***/ })
|
|
164
|
+
|
|
165
|
+
/******/ });
|
|
166
|
+
/************************************************************************/
|
|
167
|
+
/******/ // The module cache
|
|
168
|
+
/******/ var __webpack_module_cache__ = {};
|
|
169
|
+
/******/
|
|
170
|
+
/******/ // The require function
|
|
171
|
+
/******/ function __webpack_require__(moduleId) {
|
|
172
|
+
/******/ // Check if module is in cache
|
|
173
|
+
/******/ var cachedModule = __webpack_module_cache__[moduleId];
|
|
174
|
+
/******/ if (cachedModule !== undefined) {
|
|
175
|
+
/******/ return cachedModule.exports;
|
|
176
|
+
/******/ }
|
|
177
|
+
/******/ // Create a new module (and put it into the cache)
|
|
178
|
+
/******/ var module = __webpack_module_cache__[moduleId] = {
|
|
179
|
+
/******/ id: moduleId,
|
|
180
|
+
/******/ loaded: false,
|
|
181
|
+
/******/ exports: {}
|
|
182
|
+
/******/ };
|
|
183
|
+
/******/
|
|
184
|
+
/******/ // Execute the module function
|
|
185
|
+
/******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
|
|
186
|
+
/******/
|
|
187
|
+
/******/ // Flag the module as loaded
|
|
188
|
+
/******/ module.loaded = true;
|
|
189
|
+
/******/
|
|
190
|
+
/******/ // Return the exports of the module
|
|
191
|
+
/******/ return module.exports;
|
|
192
|
+
/******/ }
|
|
193
|
+
/******/
|
|
194
|
+
/******/ // expose the modules object (__webpack_modules__)
|
|
195
|
+
/******/ __webpack_require__.m = __webpack_modules__;
|
|
196
|
+
/******/
|
|
197
|
+
/******/ // the startup function
|
|
198
|
+
/******/ __webpack_require__.x = () => {
|
|
199
|
+
/******/ // Load entry module and return exports
|
|
200
|
+
/******/ // This entry module depends on other loaded chunks and execution need to be delayed
|
|
201
|
+
/******/ var __webpack_exports__ = __webpack_require__.O(undefined, [203,473,702,416,117], () => (__webpack_require__(72962)))
|
|
202
|
+
/******/ __webpack_exports__ = __webpack_require__.O(__webpack_exports__);
|
|
203
|
+
/******/ return __webpack_exports__;
|
|
204
|
+
/******/ };
|
|
205
|
+
/******/
|
|
206
|
+
/************************************************************************/
|
|
207
|
+
/******/ /* webpack/runtime/amd define */
|
|
208
|
+
/******/ (() => {
|
|
209
|
+
/******/ __webpack_require__.amdD = function () {
|
|
210
|
+
/******/ throw new Error('define cannot be used indirect');
|
|
211
|
+
/******/ };
|
|
212
|
+
/******/ })();
|
|
213
|
+
/******/
|
|
214
|
+
/******/ /* webpack/runtime/amd options */
|
|
215
|
+
/******/ (() => {
|
|
216
|
+
/******/ __webpack_require__.amdO = {};
|
|
217
|
+
/******/ })();
|
|
218
|
+
/******/
|
|
219
|
+
/******/ /* webpack/runtime/chunk loaded */
|
|
220
|
+
/******/ (() => {
|
|
221
|
+
/******/ var deferred = [];
|
|
222
|
+
/******/ __webpack_require__.O = (result, chunkIds, fn, priority) => {
|
|
223
|
+
/******/ if(chunkIds) {
|
|
224
|
+
/******/ priority = priority || 0;
|
|
225
|
+
/******/ for(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];
|
|
226
|
+
/******/ deferred[i] = [chunkIds, fn, priority];
|
|
227
|
+
/******/ return;
|
|
228
|
+
/******/ }
|
|
229
|
+
/******/ var notFulfilled = Infinity;
|
|
230
|
+
/******/ for (var i = 0; i < deferred.length; i++) {
|
|
231
|
+
/******/ var [chunkIds, fn, priority] = deferred[i];
|
|
232
|
+
/******/ var fulfilled = true;
|
|
233
|
+
/******/ for (var j = 0; j < chunkIds.length; j++) {
|
|
234
|
+
/******/ if ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {
|
|
235
|
+
/******/ chunkIds.splice(j--, 1);
|
|
236
|
+
/******/ } else {
|
|
237
|
+
/******/ fulfilled = false;
|
|
238
|
+
/******/ if(priority < notFulfilled) notFulfilled = priority;
|
|
239
|
+
/******/ }
|
|
240
|
+
/******/ }
|
|
241
|
+
/******/ if(fulfilled) {
|
|
242
|
+
/******/ deferred.splice(i--, 1)
|
|
243
|
+
/******/ var r = fn();
|
|
244
|
+
/******/ if (r !== undefined) result = r;
|
|
245
|
+
/******/ }
|
|
246
|
+
/******/ }
|
|
247
|
+
/******/ return result;
|
|
248
|
+
/******/ };
|
|
249
|
+
/******/ })();
|
|
250
|
+
/******/
|
|
251
|
+
/******/ /* webpack/runtime/compat get default export */
|
|
252
|
+
/******/ (() => {
|
|
253
|
+
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
|
254
|
+
/******/ __webpack_require__.n = (module) => {
|
|
255
|
+
/******/ var getter = module && module.__esModule ?
|
|
256
|
+
/******/ () => (module['default']) :
|
|
257
|
+
/******/ () => (module);
|
|
258
|
+
/******/ __webpack_require__.d(getter, { a: getter });
|
|
259
|
+
/******/ return getter;
|
|
260
|
+
/******/ };
|
|
261
|
+
/******/ })();
|
|
262
|
+
/******/
|
|
263
|
+
/******/ /* webpack/runtime/define property getters */
|
|
264
|
+
/******/ (() => {
|
|
265
|
+
/******/ // define getter functions for harmony exports
|
|
266
|
+
/******/ __webpack_require__.d = (exports, definition) => {
|
|
267
|
+
/******/ for(var key in definition) {
|
|
268
|
+
/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
|
|
269
|
+
/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
|
|
270
|
+
/******/ }
|
|
271
|
+
/******/ }
|
|
272
|
+
/******/ };
|
|
273
|
+
/******/ })();
|
|
274
|
+
/******/
|
|
275
|
+
/******/ /* webpack/runtime/ensure chunk */
|
|
276
|
+
/******/ (() => {
|
|
277
|
+
/******/ __webpack_require__.f = {};
|
|
278
|
+
/******/ // This file contains only the entry chunk.
|
|
279
|
+
/******/ // The chunk loading function for additional chunks
|
|
280
|
+
/******/ __webpack_require__.e = (chunkId) => {
|
|
281
|
+
/******/ return Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {
|
|
282
|
+
/******/ __webpack_require__.f[key](chunkId, promises);
|
|
283
|
+
/******/ return promises;
|
|
284
|
+
/******/ }, []));
|
|
285
|
+
/******/ };
|
|
286
|
+
/******/ })();
|
|
287
|
+
/******/
|
|
288
|
+
/******/ /* webpack/runtime/get javascript chunk filename */
|
|
289
|
+
/******/ (() => {
|
|
290
|
+
/******/ // This function allow to reference async chunks and sibling chunks for the entrypoint
|
|
291
|
+
/******/ __webpack_require__.u = (chunkId) => {
|
|
292
|
+
/******/ // return url for filenames based on template
|
|
293
|
+
/******/ return "" + (chunkId === 572 ? "polySeg" : chunkId) + ".bundle." + {"117":"a5e6959bf225da5cf4ed","203":"846a90d1ede185c941b0","416":"837e0b84baddd2193d67","473":"f6804e7ac014a561eff8","572":"43bf3490e07982491e2b","702":"963481fbf871984b646f"}[chunkId] + ".js";
|
|
294
|
+
/******/ };
|
|
295
|
+
/******/ })();
|
|
296
|
+
/******/
|
|
297
|
+
/******/ /* webpack/runtime/get mini-css chunk filename */
|
|
298
|
+
/******/ (() => {
|
|
299
|
+
/******/ // This function allow to reference async chunks and sibling chunks for the entrypoint
|
|
300
|
+
/******/ __webpack_require__.miniCssF = (chunkId) => {
|
|
301
|
+
/******/ // return url for filenames based on template
|
|
302
|
+
/******/ return undefined;
|
|
303
|
+
/******/ };
|
|
304
|
+
/******/ })();
|
|
305
|
+
/******/
|
|
306
|
+
/******/ /* webpack/runtime/global */
|
|
307
|
+
/******/ (() => {
|
|
308
|
+
/******/ __webpack_require__.g = (function() {
|
|
309
|
+
/******/ if (typeof globalThis === 'object') return globalThis;
|
|
310
|
+
/******/ try {
|
|
311
|
+
/******/ return this || new Function('return this')();
|
|
312
|
+
/******/ } catch (e) {
|
|
313
|
+
/******/ if (typeof window === 'object') return window;
|
|
314
|
+
/******/ }
|
|
315
|
+
/******/ })();
|
|
316
|
+
/******/ })();
|
|
317
|
+
/******/
|
|
318
|
+
/******/ /* webpack/runtime/hasOwnProperty shorthand */
|
|
319
|
+
/******/ (() => {
|
|
320
|
+
/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
|
|
321
|
+
/******/ })();
|
|
322
|
+
/******/
|
|
323
|
+
/******/ /* webpack/runtime/make namespace object */
|
|
324
|
+
/******/ (() => {
|
|
325
|
+
/******/ // define __esModule on exports
|
|
326
|
+
/******/ __webpack_require__.r = (exports) => {
|
|
327
|
+
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
|
328
|
+
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
329
|
+
/******/ }
|
|
330
|
+
/******/ Object.defineProperty(exports, '__esModule', { value: true });
|
|
331
|
+
/******/ };
|
|
332
|
+
/******/ })();
|
|
333
|
+
/******/
|
|
334
|
+
/******/ /* webpack/runtime/node module decorator */
|
|
335
|
+
/******/ (() => {
|
|
336
|
+
/******/ __webpack_require__.nmd = (module) => {
|
|
337
|
+
/******/ module.paths = [];
|
|
338
|
+
/******/ if (!module.children) module.children = [];
|
|
339
|
+
/******/ return module;
|
|
340
|
+
/******/ };
|
|
341
|
+
/******/ })();
|
|
342
|
+
/******/
|
|
343
|
+
/******/ /* webpack/runtime/publicPath */
|
|
344
|
+
/******/ (() => {
|
|
345
|
+
/******/ __webpack_require__.p = "/";
|
|
346
|
+
/******/ })();
|
|
347
|
+
/******/
|
|
348
|
+
/******/ /* webpack/runtime/importScripts chunk loading */
|
|
349
|
+
/******/ (() => {
|
|
350
|
+
/******/ __webpack_require__.b = self.location + "";
|
|
351
|
+
/******/
|
|
352
|
+
/******/ // object to store loaded chunks
|
|
353
|
+
/******/ // "1" means "already loaded"
|
|
354
|
+
/******/ var installedChunks = {
|
|
355
|
+
/******/ 584: 1,
|
|
356
|
+
/******/ 572: 1
|
|
357
|
+
/******/ };
|
|
358
|
+
/******/
|
|
359
|
+
/******/ // importScripts chunk loading
|
|
360
|
+
/******/ var installChunk = (data) => {
|
|
361
|
+
/******/ var [chunkIds, moreModules, runtime] = data;
|
|
362
|
+
/******/ for(var moduleId in moreModules) {
|
|
363
|
+
/******/ if(__webpack_require__.o(moreModules, moduleId)) {
|
|
364
|
+
/******/ __webpack_require__.m[moduleId] = moreModules[moduleId];
|
|
365
|
+
/******/ }
|
|
366
|
+
/******/ }
|
|
367
|
+
/******/ if(runtime) runtime(__webpack_require__);
|
|
368
|
+
/******/ while(chunkIds.length)
|
|
369
|
+
/******/ installedChunks[chunkIds.pop()] = 1;
|
|
370
|
+
/******/ parentChunkLoadingFunction(data);
|
|
371
|
+
/******/ };
|
|
372
|
+
/******/ __webpack_require__.f.i = (chunkId, promises) => {
|
|
373
|
+
/******/ // "1" is the signal for "already loaded"
|
|
374
|
+
/******/ if(!installedChunks[chunkId]) {
|
|
375
|
+
/******/ if(true) { // all chunks have JS
|
|
376
|
+
/******/ importScripts(__webpack_require__.p + __webpack_require__.u(chunkId));
|
|
377
|
+
/******/ }
|
|
378
|
+
/******/ }
|
|
379
|
+
/******/ };
|
|
380
|
+
/******/
|
|
381
|
+
/******/ var chunkLoadingGlobal = globalThis["webpackChunk"] = globalThis["webpackChunk"] || [];
|
|
382
|
+
/******/ var parentChunkLoadingFunction = chunkLoadingGlobal.push.bind(chunkLoadingGlobal);
|
|
383
|
+
/******/ chunkLoadingGlobal.push = installChunk;
|
|
384
|
+
/******/
|
|
385
|
+
/******/ // no HMR
|
|
386
|
+
/******/
|
|
387
|
+
/******/ // no HMR manifest
|
|
388
|
+
/******/ })();
|
|
389
|
+
/******/
|
|
390
|
+
/******/ /* webpack/runtime/startup chunk dependencies */
|
|
391
|
+
/******/ (() => {
|
|
392
|
+
/******/ var next = __webpack_require__.x;
|
|
393
|
+
/******/ __webpack_require__.x = () => {
|
|
394
|
+
/******/ return Promise.all([203,473,702,416,117].map(__webpack_require__.e, __webpack_require__)).then(next);
|
|
395
|
+
/******/ };
|
|
396
|
+
/******/ })();
|
|
397
|
+
/******/
|
|
398
|
+
/************************************************************************/
|
|
399
|
+
/******/
|
|
400
|
+
/******/ // run startup
|
|
401
|
+
/******/ var __webpack_exports__ = __webpack_require__.x();
|
|
402
|
+
/******/
|
|
403
|
+
/******/ })()
|
|
404
|
+
;
|
package/dist/sw.js
CHANGED
|
@@ -51,7 +51,7 @@ self.addEventListener('message', event => {
|
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
53
|
});
|
|
54
|
-
workbox.precaching.precacheAndRoute([{'revision':null,'url':'/109.bundle.b4fee2a22b622839baf5.js'},{'revision':null,'url':'/121.bundle.47f05840a5b3cdf75543.js'},{'revision':null,'url':'/141.bundle.556b4c1e4cab770417ac.js'},{'revision':null,'url':'/164.bundle.288b10692cc72b81a98d.js'},{'revision':null,'url':'/17dd54813d5acc10bf8f.wasm'},{'revision':null,'url':'/183.bundle.c88c4355c4829ed94a88.js'},{'revision':null,'url':'/188.bundle.d9b13c4a2910858bca9b.js'},{'revision':null,'url':'/206.bundle.1203a96e327b365264e5.js'},{'revision':'d32549aa3716d55d525e59e31e2f6591','url':'/20fc4c659b85ccd2a9c0.wasm'},{'revision':null,'url':'/217.bundle.bbc6090836dcca555dfc.js'},{'revision':null,'url':'/295.bundle.5ace95771ced62bdcab8.js'},{'revision':null,'url':'/297.bundle.194d8985ab974839b5b6.js'},{'revision':null,'url':'/321.bundle.5bd98d3324768715f634.js'},{'revision':'185e5e0a10fa6ab2fc7b3c38e63d550b','url':'/321.css'},{'revision':null,'url':'/325.bundle.ac07a6ca0a4e66bed604.js'},{'revision':'51b8ed55f5b8d448837222f03bdd6de8','url':'/325.css'},{'revision':null,'url':'/335.bundle.fab6af469f98e7a59bfa.js'},{'revision':null,'url':'/342.bundle.8c74ac4c7871bd4a6f60.js'},{'revision':'c4ea120c6da08aa75348edfa3e57ece9','url':'/36785fbd89b0e17f6099.wasm'},{'revision':null,'url':'/41.bundle.45737afb9f85e7e69ff3.js'},{'revision':null,'url':'/433.bundle.c92d3f716a797127c1be.js'},{'revision':null,'url':'/445.bundle.38c6d2af64e41cd7c614.js'},{'revision':null,'url':'/448.bundle.fde8b8e0fd744f39389d.js'},{'revision':'51b8ed55f5b8d448837222f03bdd6de8','url':'/481.css'},{'revision':null,'url':'/487.bundle.8d0477af42cf9f8c0937.js'},{'revision':'c377e1f5fe4a207d270c3f7a8dd3e3ca','url':'/5004fdc02f329ce53b69.wasm'},{'revision':null,'url':'/530.bundle.207b38c15c4c01e4db0e.js'},{'revision':null,'url':'/544.bundle.80c013bb477a263bcf10.js'},{'revision':'0afb25509c7f072fbd7eda42c6895dbf','url':'/544.css'},{'revision':null,'url':'/574.bundle.9919f94ea252d4a45aaf.js'},{'revision':'a04a2f233dc569826f5f6e21b65bc87b','url':'/574.css'},{'revision':null,'url':'/594.bundle.e8e1b20c5c46cf16ffa3.js'},{'revision':'62b4ae8445d191d5aab5503ce475724d','url':'/610.min.worker.js'},{'revision':'3c2206525c18cd87dd28082949a4e43e','url':'/610.min.worker.js.map'},{'revision':'5800265b6831396572fb5d32c6bd8eef','url':'/62ab5d58a2bea7b5a1dc.wasm'},{'revision':null,'url':'/633.bundle.3961c49efec0b913b9cc.js'},{'revision':'aa1d1f3e32367e42fe90399144d94577','url':'/633.css'},{'revision':null,'url':'/644.bundle.1e77691d2eeb96a423b0.js'},{'revision':'ce10eced3ce34e663d86569b27f5bffb','url':'/65916ef3def695744bda.wasm'},{'revision':null,'url':'/669.bundle.5652fa450c1d63575a5a.js'},{'revision':null,'url':'/699.bundle.7228b225e0c2b8100077.js'},{'revision':null,'url':'/702.bundle.963481fbf871984b646f.js'},{'revision':null,'url':'/722.bundle.a91ce7b563b901b25db0.js'},{'revision':null,'url':'/724.bundle.634bee9667a518d1202f.js'},{'revision':null,'url':'/726.bundle.0b3d9277d22fe7e15b89.js'},{'revision':'cc4a3a4da4ac1b863a714f93c66c6ef2','url':'/75a0c2dfe07b824c7d21.wasm'},{'revision':null,'url':'/835.bundle.15aff0b7433bb0dd6d6d.js'},{'revision':null,'url':'/862.bundle.217ce894d955626c78c5.js'},{'revision':null,'url':'/889.bundle.e2700d7456565ce71dad.js'},{'revision':null,'url':'/905.bundle.ec6275a2096f7f096618.js'},{'revision':null,'url':'/907.bundle.d2823642d3a32b5209a2.js'},{'revision':null,'url':'/931.bundle.d270a1fda9a2836c3cc5.js'},{'revision':null,'url':'/939.bundle.9d93b2e47c52338747a2.js'},{'revision':null,'url':'/94.bundle.b35c818d871de99336d8.js'},{'revision':'74c9647440e51f149ad12923d6ead952','url':'/945.min.worker.js'},{'revision':'cdf6f0457d4af2cef04fc41816241bc1','url':'/945.min.worker.js.map'},{'revision':null,'url':'/961.bundle.34a9b1fbf372d18b9b36.js'},{'revision':'d1895aa7a4595dc279c382e5a31ef9f4','url':'/_headers'},{'revision':'e3bf0f3e9c34f51ad59836ae8e8eaf43','url':'/_redirects'},{'revision':'2c0f91522bd3a5072b6b2c1b0ea93a4f','url':'/app-config.js'},{'revision':null,'url':'/app.bundle.ce0e385dbbb6c1c1769f.js'},{'revision':'9d23631dfa9ae4237bff849edc5e8c0a','url':'/app.bundle.css'},{'revision':'cb4f64534cdf8dd88f1d7219d44490db','url':'/assets/android-chrome-144x144.png'},{'revision':'5cde390de8a619ebe55a669d2ac3effd','url':'/assets/android-chrome-192x192.png'},{'revision':'e7466a67e90471de05401e53b8fe20be','url':'/assets/android-chrome-256x256.png'},{'revision':'9bbe9b80156e930d19a4e1725aa9ddae','url':'/assets/android-chrome-36x36.png'},{'revision':'5698b2ac0c82fe06d84521fc5482df04','url':'/assets/android-chrome-384x384.png'},{'revision':'56bef3fceec344d9747f8abe9c0bba27','url':'/assets/android-chrome-48x48.png'},{'revision':'3e8b8a01290992e82c242557417b0596','url':'/assets/android-chrome-512x512.png'},{'revision':'517925e91e2ce724432d296b687d25e2','url':'/assets/android-chrome-72x72.png'},{'revision':'4c3289bc690f8519012686888e08da71','url':'/assets/android-chrome-96x96.png'},{'revision':'cf464289183184df09292f581df0fb4f','url':'/assets/apple-touch-icon-1024x1024.png'},{'revision':'0857c5282c594e4900e8b31e3bade912','url':'/assets/apple-touch-icon-114x114.png'},{'revision':'4208f41a28130a67e9392a9dfcee6011','url':'/assets/apple-touch-icon-120x120.png'},{'revision':'cb4f64534cdf8dd88f1d7219d44490db','url':'/assets/apple-touch-icon-144x144.png'},{'revision':'977d293982af7e9064ba20806b45cf35','url':'/assets/apple-touch-icon-152x152.png'},{'revision':'6de91b4d2a30600b410758405cb567b4','url':'/assets/apple-touch-icon-167x167.png'},{'revision':'87bff140e3773bd7479a620501c4aa5c','url':'/assets/apple-touch-icon-180x180.png'},{'revision':'647386c34e75f1213830ea9a38913525','url':'/assets/apple-touch-icon-57x57.png'},{'revision':'0c200fe83953738b330ea431083e7a86','url':'/assets/apple-touch-icon-60x60.png'},{'revision':'517925e91e2ce724432d296b687d25e2','url':'/assets/apple-touch-icon-72x72.png'},{'revision':'c9989a807bb18633f6dcf254b5b56124','url':'/assets/apple-touch-icon-76x76.png'},{'revision':'87bff140e3773bd7479a620501c4aa5c','url':'/assets/apple-touch-icon-precomposed.png'},{'revision':'87bff140e3773bd7479a620501c4aa5c','url':'/assets/apple-touch-icon.png'},{'revision':'05fa74ea9c1c0c3931ba96467999081d','url':'/assets/apple-touch-startup-image-1182x2208.png'},{'revision':'9e2cd03e1e6fd0520eea6846f4278018','url':'/assets/apple-touch-startup-image-1242x2148.png'},{'revision':'5591e3a1822cbc8439b99c1a40d53425','url':'/assets/apple-touch-startup-image-1496x2048.png'},{'revision':'337de578c5ca04bd7d2be19d24d83821','url':'/assets/apple-touch-startup-image-1536x2008.png'},{'revision':'cafb4ab4eafe6ef946bd229a1d88e7de','url':'/assets/apple-touch-startup-image-320x460.png'},{'revision':'d9bb9e558d729eeac5efb8be8d6111cc','url':'/assets/apple-touch-startup-image-640x1096.png'},{'revision':'038b5b02bac8b82444bf9a87602ac216','url':'/assets/apple-touch-startup-image-640x920.png'},{'revision':'2177076eb07b1d64d663d7c03268be00','url':'/assets/apple-touch-startup-image-748x1024.png'},{'revision':'4fc097443815fe92503584c4bd73c630','url':'/assets/apple-touch-startup-image-750x1294.png'},{'revision':'2e29914062dce5c5141ab47eea2fc5d9','url':'/assets/apple-touch-startup-image-768x1004.png'},{'revision':'f692ec286b3a332c17985f4ed38b1076','url':'/assets/browserconfig.xml'},{'revision':'f3d9a3b647853c45b0e132e4acd0cc4a','url':'/assets/coast-228x228.png'},{'revision':'ad6e1def5c66193d649a31474bbfe45d','url':'/assets/favicon-16x16.png'},{'revision':'84d1dcdb6cdfa55e2f46be0c80fa5698','url':'/assets/favicon-32x32.png'},{'revision':'95fb44c4998a46109e49d724c060db24','url':'/assets/favicon.ico'},{'revision':'5df2a5b0cee399ac0bc40af74ba3c2cb','url':'/assets/firefox_app_128x128.png'},{'revision':'11fd9098c4b07c8a07e1d2a1e309e046','url':'/assets/firefox_app_512x512.png'},{'revision':'27cddfc922dca3bfa27b4a00fc2f5e36','url':'/assets/firefox_app_60x60.png'},{'revision':'2547879ee2928a5fd56dca483bcbd967','url':'/assets/images/CT-AAA.png'},{'revision':'245628fb9d18d6c5cd529615079f8e86','url':'/assets/images/CT-AAA2.png'},{'revision':'997a9c8b57e7b4e46d8f01fb49d078c6','url':'/assets/images/CT-Air.png'},{'revision':'e7ed89711f63348d49898da3a2b73ab9','url':'/assets/images/CT-Bone.png'},{'revision':'09d1dc6efebb10a60cdf85ed74a10214','url':'/assets/images/CT-Bones.png'},{'revision':'f8ae9bafd3b90ba3efbdcbe8901db187','url':'/assets/images/CT-Cardiac.png'},{'revision':'ed0cc538aba90d6a1c029923ca9b47db','url':'/assets/images/CT-Cardiac2.png'},{'revision':'dfdaf4e4889aefbf09514545f45726bb','url':'/assets/images/CT-Cardiac3.png'},{'revision':'5d4b9a331136a1a5d7ce7ccf7dfcca36','url':'/assets/images/CT-Chest-Contrast-Enhanced.png'},{'revision':'5fb264499a5bb42487663b00e42d1513','url':'/assets/images/CT-Chest-Vessels.png'},{'revision':'ab8f0e569c972388ddaaa61b92449fac','url':'/assets/images/CT-Coronary-Arteries-2.png'},{'revision':'e4e7e2e3cc09bc8c4fb03b6441bd2845','url':'/assets/images/CT-Coronary-Arteries-3.png'},{'revision':'79a2962a2d3cbe4bd3b675b5ca83c659','url':'/assets/images/CT-Coronary-Arteries.png'},{'revision':'6502a6bdab1c70e2188c3bf12ce5d4e4','url':'/assets/images/CT-Cropped-Volume-Bone.png'},{'revision':'e28ad3cf5ed2006fc5a7cffd602736fc','url':'/assets/images/CT-Fat.png'},{'revision':'ca1c5be76053edee27e68ffbf9105101','url':'/assets/images/CT-Liver-Vasculature.png'},{'revision':'d6c9ab857ed2ad19f1ff20bea02b6655','url':'/assets/images/CT-Lung.png'},{'revision':'ddb599c6a163bdf28ece8de1a337470a','url':'/assets/images/CT-MIP.png'},{'revision':'0b0dcf7940a555e2a9a0900f7f84d4d3','url':'/assets/images/CT-Muscle.png'},{'revision':'6082d383f9ce375a5873e2a00fc4d372','url':'/assets/images/CT-Pulmonary-Arteries.png'},{'revision':'b317366149ee2607bec95d63eb4d7661','url':'/assets/images/CT-Soft-Tissue.png'},{'revision':'4b0cd5a673ebb71da22a91ed608d6695','url':'/assets/images/DTI-FA-Brain.png'},{'revision':'3ea1cbee022af5b94710b73726308832','url':'/assets/images/MR-Angio.png'},{'revision':'bd25ca7b166193547f34950eed440e5c','url':'/assets/images/MR-Default.png'},{'revision':'2e50a49b859aeb316a1c23f911fce9ad','url':'/assets/images/MR-MIP.png'},{'revision':'6ba74de6961e08652ff9e2f1871b473d','url':'/assets/images/MR-T2-Brain.png'},{'revision':'42406bb474f0f87cf04a5afbbcd5e389','url':'/assets/images/VolumeRendering.png'},{'revision':'2017d95fae79dcf34b5a5b52586d4763','url':'/assets/manifest.webapp'},{'revision':'cb4f64534cdf8dd88f1d7219d44490db','url':'/assets/mstile-144x144.png'},{'revision':'334895225e16a7777e45d81964725a97','url':'/assets/mstile-150x150.png'},{'revision':'e295cca4af6ed0365cf7b014d91b0e9d','url':'/assets/mstile-310x150.png'},{'revision':'cbefa8c42250e5f2443819fe2c69d91e','url':'/assets/mstile-310x310.png'},{'revision':'aa411a69df2b33a1362fa38d1257fa9d','url':'/assets/mstile-70x70.png'},{'revision':'5609af4f69e40e33471aee770ea1d802','url':'/assets/yandex-browser-50x50.png'},{'revision':'dd001f21b3970d5a7f3e245cc10d21df','url':'/assets/yandex-browser-manifest.json'},{'revision':'52b9a07fe0541fe8c313d9788550bf51','url':'/b6b803111e2d06a825bd.wasm'},{'revision':'7edb59d2be7c993050cb31ded36afa31','url':'/c22b37c3488e1d6c3aa4.wasm'},{'revision':'1a1a46826e3f7eeeacea15da7417e6d6','url':'/cornerstoneDICOMImageLoader.min.js'},{'revision':'338b8847ebdcc49a1e250ddaf55adfc2','url':'/cornerstoneDICOMImageLoader.min.js.map'},{'revision':null,'url':'/dicom-microscopy-viewer.bundle.d3a56dc9f62df5e11019.js'},{'revision':'9d8c85b42d04bb117a3b583d654fbb08','url':'/dicomMicroscopyViewer.min.js'},{'revision':'450494c199cf8dd8e8c34d5e98bf5334','url':'/dicomMicroscopyViewer.min.js.LICENSE.txt'},{'revision':'4acdd19a35d759ec2669f1ba9490937d','url':'/es6-shim.min.js'},{'revision':'791565db341e8852807303918f5f9939','url':'/google.js'},{'revision':null,'url':'/histogram-worker.bundle.829e14ec12c2b41a4323.js'},{'revision':'3e7ba71c5ab07109c7f878594baf8c9c','url':'/index.html'},{'revision':'9046c04c3af284876bdd62b8052507d1','url':'/index.worker.f4bda803c15bc6359d5f.worker.js'},{'revision':'5a2e75731a97dfa37207b574921d0fff','url':'/index.worker.f4bda803c15bc6359d5f.worker.js.map'},{'revision':'71cec55513e051f0778ad89be760c11a','url':'/index.worker.min.worker.js'},{'revision':'fd1116add443fee52a935df926396e0f','url':'/index.worker.min.worker.js.map'},{'revision':'31c0367ca4160b2c6373e905739c5719','url':'/init-service-worker.js'},{'revision':'74fc9658b62903be2048c1f82a22b4d4','url':'/manifest.json'},{'revision':'3fa71aa0af3e34b4ebd9a71eee0f4bdd','url':'/ohif-logo-light.svg'},{'revision':'7e81da785c63e75650101db6c5d7560e','url':'/ohif-logo.svg'},{'revision':'eadf8bf1d85032a029e2c0df4b8938b0','url':'/oidc-client.min.js'},{'revision':null,'url':'/polySeg.bundle.c2653f8ce77f44ae095b.js'},{'revision':'a1aef5311245f5864315443d12246c37','url':'/polyfill.min.js'},{'revision':'af9346d3e597071ba9ee8cd32f8cc0ea','url':'/serve.json'},{'revision':'b1e488d9955b62bd2858874df11d5223','url':'/silent-refresh.html'}]);
|
|
54
|
+
workbox.precaching.precacheAndRoute([{'revision':null,'url':'/109.bundle.b4fee2a22b622839baf5.js'},{'revision':null,'url':'/117.bundle.a5e6959bf225da5cf4ed.js'},{'revision':null,'url':'/121.bundle.47f05840a5b3cdf75543.js'},{'revision':null,'url':'/141.bundle.556b4c1e4cab770417ac.js'},{'revision':null,'url':'/164.bundle.96c0518b435ea19ef8c4.js'},{'revision':null,'url':'/17dd54813d5acc10bf8f.wasm'},{'revision':null,'url':'/188.bundle.bef5c8babdde7064bdbe.js'},{'revision':null,'url':'/203.bundle.846a90d1ede185c941b0.js'},{'revision':null,'url':'/206.bundle.096c1d86defe1cf7e9ae.js'},{'revision':'d32549aa3716d55d525e59e31e2f6591','url':'/20fc4c659b85ccd2a9c0.wasm'},{'revision':null,'url':'/236.bundle.fb6c65ae3a5aa0c58727.js'},{'revision':null,'url':'/295.bundle.5ace95771ced62bdcab8.js'},{'revision':null,'url':'/297.bundle.194d8985ab974839b5b6.js'},{'revision':null,'url':'/321.bundle.7d6d0ead9384fcb67a5c.js'},{'revision':'185e5e0a10fa6ab2fc7b3c38e63d550b','url':'/321.css'},{'revision':null,'url':'/325.bundle.357db826733b5379bd1d.js'},{'revision':'51b8ed55f5b8d448837222f03bdd6de8','url':'/325.css'},{'revision':null,'url':'/342.bundle.36ee082163b01284eeba.js'},{'revision':'c4ea120c6da08aa75348edfa3e57ece9','url':'/36785fbd89b0e17f6099.wasm'},{'revision':null,'url':'/41.bundle.2f52dafa60516e97cd03.js'},{'revision':null,'url':'/416.bundle.837e0b84baddd2193d67.js'},{'revision':null,'url':'/445.bundle.38c6d2af64e41cd7c614.js'},{'revision':null,'url':'/448.bundle.7c47e50e0db23eeace58.js'},{'revision':null,'url':'/473.bundle.f6804e7ac014a561eff8.js'},{'revision':'51b8ed55f5b8d448837222f03bdd6de8','url':'/481.css'},{'revision':null,'url':'/483.bundle.9263b25c34b349aae80e.js'},{'revision':null,'url':'/487.bundle.adf730aff4ec37332b88.js'},{'revision':'c377e1f5fe4a207d270c3f7a8dd3e3ca','url':'/5004fdc02f329ce53b69.wasm'},{'revision':null,'url':'/530.bundle.207b38c15c4c01e4db0e.js'},{'revision':null,'url':'/544.bundle.1b6998bb61d6f8f88da9.js'},{'revision':'0afb25509c7f072fbd7eda42c6895dbf','url':'/544.css'},{'revision':null,'url':'/574.bundle.d6f15a036af7ecaf82f9.js'},{'revision':'a04a2f233dc569826f5f6e21b65bc87b','url':'/574.css'},{'revision':null,'url':'/594.bundle.9a7fd38c5fc9823216e5.js'},{'revision':'62b4ae8445d191d5aab5503ce475724d','url':'/610.min.worker.js'},{'revision':'3c2206525c18cd87dd28082949a4e43e','url':'/610.min.worker.js.map'},{'revision':'5800265b6831396572fb5d32c6bd8eef','url':'/62ab5d58a2bea7b5a1dc.wasm'},{'revision':null,'url':'/633.bundle.ad22fd57eb95ee5f056a.js'},{'revision':'aa1d1f3e32367e42fe90399144d94577','url':'/633.css'},{'revision':null,'url':'/644.bundle.1e77691d2eeb96a423b0.js'},{'revision':'ce10eced3ce34e663d86569b27f5bffb','url':'/65916ef3def695744bda.wasm'},{'revision':null,'url':'/669.bundle.796543c57c658097fe75.js'},{'revision':null,'url':'/699.bundle.4d75ac5add81a2e4ef3b.js'},{'revision':null,'url':'/7.bundle.ea90a6f6f1d4ab030dfb.js'},{'revision':null,'url':'/702.bundle.963481fbf871984b646f.js'},{'revision':null,'url':'/722.bundle.05e8759e64d484f4554d.js'},{'revision':null,'url':'/724.bundle.275035c2002c8fd78471.js'},{'revision':null,'url':'/726.bundle.c8de818cf1a3ff0cf7d2.js'},{'revision':'cc4a3a4da4ac1b863a714f93c66c6ef2','url':'/75a0c2dfe07b824c7d21.wasm'},{'revision':null,'url':'/783.bundle.b28ae6b134602470e2f1.js'},{'revision':null,'url':'/835.bundle.4c0eaa2c1a427ee41817.js'},{'revision':null,'url':'/862.bundle.4be5d148c2b1adf4dbf3.js'},{'revision':null,'url':'/889.bundle.1a646aa901e073328cad.js'},{'revision':null,'url':'/905.bundle.36ce5f219e58ff9ddf9b.js'},{'revision':null,'url':'/907.bundle.64fa9f550bd239e92346.js'},{'revision':null,'url':'/931.bundle.d270a1fda9a2836c3cc5.js'},{'revision':null,'url':'/939.bundle.9d93b2e47c52338747a2.js'},{'revision':null,'url':'/94.bundle.d6749c52eb6327bd45de.js'},{'revision':'74c9647440e51f149ad12923d6ead952','url':'/945.min.worker.js'},{'revision':'cdf6f0457d4af2cef04fc41816241bc1','url':'/945.min.worker.js.map'},{'revision':null,'url':'/961.bundle.6a18125a324bca120651.js'},{'revision':'d1895aa7a4595dc279c382e5a31ef9f4','url':'/_headers'},{'revision':'e3bf0f3e9c34f51ad59836ae8e8eaf43','url':'/_redirects'},{'revision':'2c0f91522bd3a5072b6b2c1b0ea93a4f','url':'/app-config.js'},{'revision':null,'url':'/app.bundle.177823343bc7e2b039a2.js'},{'revision':'9d23631dfa9ae4237bff849edc5e8c0a','url':'/app.bundle.css'},{'revision':'cb4f64534cdf8dd88f1d7219d44490db','url':'/assets/android-chrome-144x144.png'},{'revision':'5cde390de8a619ebe55a669d2ac3effd','url':'/assets/android-chrome-192x192.png'},{'revision':'e7466a67e90471de05401e53b8fe20be','url':'/assets/android-chrome-256x256.png'},{'revision':'9bbe9b80156e930d19a4e1725aa9ddae','url':'/assets/android-chrome-36x36.png'},{'revision':'5698b2ac0c82fe06d84521fc5482df04','url':'/assets/android-chrome-384x384.png'},{'revision':'56bef3fceec344d9747f8abe9c0bba27','url':'/assets/android-chrome-48x48.png'},{'revision':'3e8b8a01290992e82c242557417b0596','url':'/assets/android-chrome-512x512.png'},{'revision':'517925e91e2ce724432d296b687d25e2','url':'/assets/android-chrome-72x72.png'},{'revision':'4c3289bc690f8519012686888e08da71','url':'/assets/android-chrome-96x96.png'},{'revision':'cf464289183184df09292f581df0fb4f','url':'/assets/apple-touch-icon-1024x1024.png'},{'revision':'0857c5282c594e4900e8b31e3bade912','url':'/assets/apple-touch-icon-114x114.png'},{'revision':'4208f41a28130a67e9392a9dfcee6011','url':'/assets/apple-touch-icon-120x120.png'},{'revision':'cb4f64534cdf8dd88f1d7219d44490db','url':'/assets/apple-touch-icon-144x144.png'},{'revision':'977d293982af7e9064ba20806b45cf35','url':'/assets/apple-touch-icon-152x152.png'},{'revision':'6de91b4d2a30600b410758405cb567b4','url':'/assets/apple-touch-icon-167x167.png'},{'revision':'87bff140e3773bd7479a620501c4aa5c','url':'/assets/apple-touch-icon-180x180.png'},{'revision':'647386c34e75f1213830ea9a38913525','url':'/assets/apple-touch-icon-57x57.png'},{'revision':'0c200fe83953738b330ea431083e7a86','url':'/assets/apple-touch-icon-60x60.png'},{'revision':'517925e91e2ce724432d296b687d25e2','url':'/assets/apple-touch-icon-72x72.png'},{'revision':'c9989a807bb18633f6dcf254b5b56124','url':'/assets/apple-touch-icon-76x76.png'},{'revision':'87bff140e3773bd7479a620501c4aa5c','url':'/assets/apple-touch-icon-precomposed.png'},{'revision':'87bff140e3773bd7479a620501c4aa5c','url':'/assets/apple-touch-icon.png'},{'revision':'05fa74ea9c1c0c3931ba96467999081d','url':'/assets/apple-touch-startup-image-1182x2208.png'},{'revision':'9e2cd03e1e6fd0520eea6846f4278018','url':'/assets/apple-touch-startup-image-1242x2148.png'},{'revision':'5591e3a1822cbc8439b99c1a40d53425','url':'/assets/apple-touch-startup-image-1496x2048.png'},{'revision':'337de578c5ca04bd7d2be19d24d83821','url':'/assets/apple-touch-startup-image-1536x2008.png'},{'revision':'cafb4ab4eafe6ef946bd229a1d88e7de','url':'/assets/apple-touch-startup-image-320x460.png'},{'revision':'d9bb9e558d729eeac5efb8be8d6111cc','url':'/assets/apple-touch-startup-image-640x1096.png'},{'revision':'038b5b02bac8b82444bf9a87602ac216','url':'/assets/apple-touch-startup-image-640x920.png'},{'revision':'2177076eb07b1d64d663d7c03268be00','url':'/assets/apple-touch-startup-image-748x1024.png'},{'revision':'4fc097443815fe92503584c4bd73c630','url':'/assets/apple-touch-startup-image-750x1294.png'},{'revision':'2e29914062dce5c5141ab47eea2fc5d9','url':'/assets/apple-touch-startup-image-768x1004.png'},{'revision':'f692ec286b3a332c17985f4ed38b1076','url':'/assets/browserconfig.xml'},{'revision':'f3d9a3b647853c45b0e132e4acd0cc4a','url':'/assets/coast-228x228.png'},{'revision':'ad6e1def5c66193d649a31474bbfe45d','url':'/assets/favicon-16x16.png'},{'revision':'84d1dcdb6cdfa55e2f46be0c80fa5698','url':'/assets/favicon-32x32.png'},{'revision':'95fb44c4998a46109e49d724c060db24','url':'/assets/favicon.ico'},{'revision':'5df2a5b0cee399ac0bc40af74ba3c2cb','url':'/assets/firefox_app_128x128.png'},{'revision':'11fd9098c4b07c8a07e1d2a1e309e046','url':'/assets/firefox_app_512x512.png'},{'revision':'27cddfc922dca3bfa27b4a00fc2f5e36','url':'/assets/firefox_app_60x60.png'},{'revision':'2547879ee2928a5fd56dca483bcbd967','url':'/assets/images/CT-AAA.png'},{'revision':'245628fb9d18d6c5cd529615079f8e86','url':'/assets/images/CT-AAA2.png'},{'revision':'997a9c8b57e7b4e46d8f01fb49d078c6','url':'/assets/images/CT-Air.png'},{'revision':'e7ed89711f63348d49898da3a2b73ab9','url':'/assets/images/CT-Bone.png'},{'revision':'09d1dc6efebb10a60cdf85ed74a10214','url':'/assets/images/CT-Bones.png'},{'revision':'f8ae9bafd3b90ba3efbdcbe8901db187','url':'/assets/images/CT-Cardiac.png'},{'revision':'ed0cc538aba90d6a1c029923ca9b47db','url':'/assets/images/CT-Cardiac2.png'},{'revision':'dfdaf4e4889aefbf09514545f45726bb','url':'/assets/images/CT-Cardiac3.png'},{'revision':'5d4b9a331136a1a5d7ce7ccf7dfcca36','url':'/assets/images/CT-Chest-Contrast-Enhanced.png'},{'revision':'5fb264499a5bb42487663b00e42d1513','url':'/assets/images/CT-Chest-Vessels.png'},{'revision':'ab8f0e569c972388ddaaa61b92449fac','url':'/assets/images/CT-Coronary-Arteries-2.png'},{'revision':'e4e7e2e3cc09bc8c4fb03b6441bd2845','url':'/assets/images/CT-Coronary-Arteries-3.png'},{'revision':'79a2962a2d3cbe4bd3b675b5ca83c659','url':'/assets/images/CT-Coronary-Arteries.png'},{'revision':'6502a6bdab1c70e2188c3bf12ce5d4e4','url':'/assets/images/CT-Cropped-Volume-Bone.png'},{'revision':'e28ad3cf5ed2006fc5a7cffd602736fc','url':'/assets/images/CT-Fat.png'},{'revision':'ca1c5be76053edee27e68ffbf9105101','url':'/assets/images/CT-Liver-Vasculature.png'},{'revision':'d6c9ab857ed2ad19f1ff20bea02b6655','url':'/assets/images/CT-Lung.png'},{'revision':'ddb599c6a163bdf28ece8de1a337470a','url':'/assets/images/CT-MIP.png'},{'revision':'0b0dcf7940a555e2a9a0900f7f84d4d3','url':'/assets/images/CT-Muscle.png'},{'revision':'6082d383f9ce375a5873e2a00fc4d372','url':'/assets/images/CT-Pulmonary-Arteries.png'},{'revision':'b317366149ee2607bec95d63eb4d7661','url':'/assets/images/CT-Soft-Tissue.png'},{'revision':'4b0cd5a673ebb71da22a91ed608d6695','url':'/assets/images/DTI-FA-Brain.png'},{'revision':'3ea1cbee022af5b94710b73726308832','url':'/assets/images/MR-Angio.png'},{'revision':'bd25ca7b166193547f34950eed440e5c','url':'/assets/images/MR-Default.png'},{'revision':'2e50a49b859aeb316a1c23f911fce9ad','url':'/assets/images/MR-MIP.png'},{'revision':'6ba74de6961e08652ff9e2f1871b473d','url':'/assets/images/MR-T2-Brain.png'},{'revision':'42406bb474f0f87cf04a5afbbcd5e389','url':'/assets/images/VolumeRendering.png'},{'revision':'2017d95fae79dcf34b5a5b52586d4763','url':'/assets/manifest.webapp'},{'revision':'cb4f64534cdf8dd88f1d7219d44490db','url':'/assets/mstile-144x144.png'},{'revision':'334895225e16a7777e45d81964725a97','url':'/assets/mstile-150x150.png'},{'revision':'e295cca4af6ed0365cf7b014d91b0e9d','url':'/assets/mstile-310x150.png'},{'revision':'cbefa8c42250e5f2443819fe2c69d91e','url':'/assets/mstile-310x310.png'},{'revision':'aa411a69df2b33a1362fa38d1257fa9d','url':'/assets/mstile-70x70.png'},{'revision':'5609af4f69e40e33471aee770ea1d802','url':'/assets/yandex-browser-50x50.png'},{'revision':'dd001f21b3970d5a7f3e245cc10d21df','url':'/assets/yandex-browser-manifest.json'},{'revision':'52b9a07fe0541fe8c313d9788550bf51','url':'/b6b803111e2d06a825bd.wasm'},{'revision':'7edb59d2be7c993050cb31ded36afa31','url':'/c22b37c3488e1d6c3aa4.wasm'},{'revision':'8deb833230ce9d6a4e4ee7ef68f06c6c','url':'/cornerstoneDICOMImageLoader.min.js'},{'revision':'cfe5e44d04073ec78cbf6dfd87dc5665','url':'/cornerstoneDICOMImageLoader.min.js.map'},{'revision':null,'url':'/dicom-microscopy-viewer.bundle.d3a56dc9f62df5e11019.js'},{'revision':'9d8c85b42d04bb117a3b583d654fbb08','url':'/dicomMicroscopyViewer.min.js'},{'revision':'450494c199cf8dd8e8c34d5e98bf5334','url':'/dicomMicroscopyViewer.min.js.LICENSE.txt'},{'revision':'4acdd19a35d759ec2669f1ba9490937d','url':'/es6-shim.min.js'},{'revision':'791565db341e8852807303918f5f9939','url':'/google.js'},{'revision':null,'url':'/histogram-worker.bundle.829e14ec12c2b41a4323.js'},{'revision':'13bbfb86ddb8c249a4f37f15f762c9b0','url':'/index.html'},{'revision':'9046c04c3af284876bdd62b8052507d1','url':'/index.worker.f4bda803c15bc6359d5f.worker.js'},{'revision':'5a2e75731a97dfa37207b574921d0fff','url':'/index.worker.f4bda803c15bc6359d5f.worker.js.map'},{'revision':'71cec55513e051f0778ad89be760c11a','url':'/index.worker.min.worker.js'},{'revision':'fd1116add443fee52a935df926396e0f','url':'/index.worker.min.worker.js.map'},{'revision':'31c0367ca4160b2c6373e905739c5719','url':'/init-service-worker.js'},{'revision':'74fc9658b62903be2048c1f82a22b4d4','url':'/manifest.json'},{'revision':'3fa71aa0af3e34b4ebd9a71eee0f4bdd','url':'/ohif-logo-light.svg'},{'revision':'7e81da785c63e75650101db6c5d7560e','url':'/ohif-logo.svg'},{'revision':'eadf8bf1d85032a029e2c0df4b8938b0','url':'/oidc-client.min.js'},{'revision':null,'url':'/polySeg.bundle.43bf3490e07982491e2b.js'},{'revision':'a1aef5311245f5864315443d12246c37','url':'/polyfill.min.js'},{'revision':'af9346d3e597071ba9ee8cd32f8cc0ea','url':'/serve.json'},{'revision':'b1e488d9955b62bd2858874df11d5223','url':'/silent-refresh.html'},{'revision':null,'url':'/suv-peak-worker.bundle.1f9b9e6887eebc07c50a.js'}]);
|
|
55
55
|
|
|
56
56
|
// TODO: Cache API
|
|
57
57
|
// https://developers.google.com/web/fundamentals/instant-and-offline/web-storage/cache-api
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ohif/app",
|
|
3
|
-
"version": "3.8.0-beta.
|
|
3
|
+
"version": "3.8.0-beta.87",
|
|
4
4
|
"productVersion": "3.4.0",
|
|
5
5
|
"description": "OHIF Viewer",
|
|
6
6
|
"author": "OHIF Contributors",
|
|
@@ -54,24 +54,24 @@
|
|
|
54
54
|
"@cornerstonejs/codec-libjpeg-turbo-8bit": "^1.2.2",
|
|
55
55
|
"@cornerstonejs/codec-openjpeg": "^1.2.2",
|
|
56
56
|
"@cornerstonejs/codec-openjph": "^2.4.5",
|
|
57
|
-
"@cornerstonejs/dicom-image-loader": "^1.70.
|
|
57
|
+
"@cornerstonejs/dicom-image-loader": "^1.70.10",
|
|
58
58
|
"@emotion/serialize": "^1.1.3",
|
|
59
|
-
"@ohif/core": "3.8.0-beta.
|
|
60
|
-
"@ohif/extension-cornerstone": "3.8.0-beta.
|
|
61
|
-
"@ohif/extension-cornerstone-dicom-rt": "3.8.0-beta.
|
|
62
|
-
"@ohif/extension-cornerstone-dicom-seg": "3.8.0-beta.
|
|
63
|
-
"@ohif/extension-cornerstone-dicom-sr": "3.8.0-beta.
|
|
64
|
-
"@ohif/extension-default": "3.8.0-beta.
|
|
65
|
-
"@ohif/extension-dicom-microscopy": "3.8.0-beta.
|
|
66
|
-
"@ohif/extension-dicom-pdf": "3.8.0-beta.
|
|
67
|
-
"@ohif/extension-dicom-video": "3.8.0-beta.
|
|
68
|
-
"@ohif/extension-test": "3.8.0-beta.
|
|
69
|
-
"@ohif/i18n": "3.8.0-beta.
|
|
70
|
-
"@ohif/mode-basic-dev-mode": "3.8.0-beta.
|
|
71
|
-
"@ohif/mode-longitudinal": "3.8.0-beta.
|
|
72
|
-
"@ohif/mode-microscopy": "3.8.0-beta.
|
|
73
|
-
"@ohif/mode-test": "3.8.0-beta.
|
|
74
|
-
"@ohif/ui": "3.8.0-beta.
|
|
59
|
+
"@ohif/core": "3.8.0-beta.87",
|
|
60
|
+
"@ohif/extension-cornerstone": "3.8.0-beta.87",
|
|
61
|
+
"@ohif/extension-cornerstone-dicom-rt": "3.8.0-beta.87",
|
|
62
|
+
"@ohif/extension-cornerstone-dicom-seg": "3.8.0-beta.87",
|
|
63
|
+
"@ohif/extension-cornerstone-dicom-sr": "3.8.0-beta.87",
|
|
64
|
+
"@ohif/extension-default": "3.8.0-beta.87",
|
|
65
|
+
"@ohif/extension-dicom-microscopy": "3.8.0-beta.87",
|
|
66
|
+
"@ohif/extension-dicom-pdf": "3.8.0-beta.87",
|
|
67
|
+
"@ohif/extension-dicom-video": "3.8.0-beta.87",
|
|
68
|
+
"@ohif/extension-test": "3.8.0-beta.87",
|
|
69
|
+
"@ohif/i18n": "3.8.0-beta.87",
|
|
70
|
+
"@ohif/mode-basic-dev-mode": "3.8.0-beta.87",
|
|
71
|
+
"@ohif/mode-longitudinal": "3.8.0-beta.87",
|
|
72
|
+
"@ohif/mode-microscopy": "3.8.0-beta.87",
|
|
73
|
+
"@ohif/mode-test": "3.8.0-beta.87",
|
|
74
|
+
"@ohif/ui": "3.8.0-beta.87",
|
|
75
75
|
"@types/react": "^17.0.38",
|
|
76
76
|
"classnames": "^2.3.2",
|
|
77
77
|
"core-js": "^3.16.1",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|