@cornerstonejs/core 1.36.3 → 1.37.0

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.
@@ -0,0 +1,3 @@
1
+ import type Point2 from './Point2';
2
+ declare type BoundsIJK = [Point2, Point2, Point2];
3
+ export default BoundsIJK;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=BoundsIJK.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoundsIJK.js","sourceRoot":"","sources":["../../../src/types/BoundsIJK.ts"],"names":[],"mappings":""}
@@ -76,4 +76,5 @@ import type { Color, ColorLUT } from './Color';
76
76
  import type VideoViewportProperties from './VideoViewportProperties';
77
77
  import type IVideoViewport from './IVideoViewport';
78
78
  import type { InternalVideoCamera, VideoViewportInput } from './VideoViewportTypes';
79
- export type { Cornerstone3DConfig, ICamera, IStackViewport, IVideoViewport, IVolumeViewport, IEnabledElement, ICache, IVolume, VolumeScalarData, IViewportId, IImageVolume, IDynamicImageVolume, IRenderingEngine, ScalingParameters, PTScaling, Scaling, IStreamingImageVolume, IImage, IImageData, IImageCalibration, CPUIImageData, CPUImageData, EventTypes, ImageLoaderFn, VolumeLoaderFn, IRegisterImageLoader, IStreamingVolumeProperties, IViewport, StackViewportProperties, VolumeViewportProperties, ViewportProperties, PublicViewportInput, VolumeActor, Actor, ActorEntry, ImageActor, IImageLoadObject, IVolumeLoadObject, IVolumeInput, VolumeInputCallback, IStackInput, StackInputCallback, ViewportPreset, Metadata, OrientationVectors, AABB2, Point2, Point3, Point4, Mat3, Plane, ViewportInputOptions, VideoViewportProperties, VOIRange, VOI, DisplayArea, FlipDirection, ICachedImage, ICachedVolume, CPUFallbackEnabledElement, CPUFallbackViewport, CPUFallbackTransform, CPUFallbackColormapData, CPUFallbackViewportDisplayedArea, CPUFallbackColormapsData, CPUFallbackColormap, TransformMatrix2D, CPUFallbackLookupTable, CPUFallbackLUT, CPUFallbackRenderingTools, CustomEventType, ActorSliceRange, ImageSliceData, IGeometry, IGeometryLoadObject, ICachedGeometry, PublicContourSetData, ContourSetData, ContourData, IContourSet, IContour, PublicSurfaceData, SurfaceData, RGB, ColormapPublic, ColormapRegistration, PixelDataTypedArray, PixelDataTypedArrayString, ImagePixelModule, ImagePlaneModule, AffineMatrix, ImageLoadListener, InternalVideoCamera, VideoViewportInput, Color, ColorLUT, };
79
+ import type BoundsIJK from './BoundsIJK';
80
+ export type { Cornerstone3DConfig, ICamera, IStackViewport, IVideoViewport, IVolumeViewport, IEnabledElement, ICache, IVolume, VolumeScalarData, IViewportId, IImageVolume, IDynamicImageVolume, IRenderingEngine, ScalingParameters, PTScaling, Scaling, IStreamingImageVolume, IImage, IImageData, IImageCalibration, CPUIImageData, CPUImageData, EventTypes, ImageLoaderFn, VolumeLoaderFn, IRegisterImageLoader, IStreamingVolumeProperties, IViewport, StackViewportProperties, VolumeViewportProperties, ViewportProperties, PublicViewportInput, VolumeActor, Actor, ActorEntry, ImageActor, IImageLoadObject, IVolumeLoadObject, IVolumeInput, VolumeInputCallback, IStackInput, StackInputCallback, ViewportPreset, Metadata, OrientationVectors, AABB2, Point2, Point3, Point4, Mat3, Plane, ViewportInputOptions, VideoViewportProperties, VOIRange, VOI, DisplayArea, FlipDirection, ICachedImage, ICachedVolume, CPUFallbackEnabledElement, CPUFallbackViewport, CPUFallbackTransform, CPUFallbackColormapData, CPUFallbackViewportDisplayedArea, CPUFallbackColormapsData, CPUFallbackColormap, TransformMatrix2D, CPUFallbackLookupTable, CPUFallbackLUT, CPUFallbackRenderingTools, CustomEventType, ActorSliceRange, ImageSliceData, IGeometry, IGeometryLoadObject, ICachedGeometry, PublicContourSetData, ContourSetData, ContourData, IContourSet, IContour, PublicSurfaceData, SurfaceData, RGB, ColormapPublic, ColormapRegistration, PixelDataTypedArray, PixelDataTypedArrayString, ImagePixelModule, ImagePlaneModule, AffineMatrix, ImageLoadListener, InternalVideoCamera, VideoViewportInput, BoundsIJK, Color, ColorLUT, };
@@ -0,0 +1,36 @@
1
+ import type { BoundsIJK, Point3, VolumeScalarData } from '../types';
2
+ export default class VoxelManager<T> {
3
+ modifiedSlices: Set<number>;
4
+ boundsIJK: BoundsIJK;
5
+ scalarData: VolumeScalarData;
6
+ map: Map<number, T>;
7
+ sourceVoxelManager: VoxelManager<T>;
8
+ isInObject: (pointIPS: any, pointIJK: any) => boolean;
9
+ readonly dimensions: Point3;
10
+ points: Set<number>;
11
+ width: number;
12
+ frameSize: number;
13
+ _get: (index: number) => T;
14
+ _set: (index: number, v: T) => boolean | void;
15
+ constructor(dimensions: any, _get: (index: number) => T, _set?: (index: number, v: T) => boolean | void);
16
+ getAtIJK: (i: any, j: any, k: any) => T;
17
+ setAtIJK: (i: number, j: number, k: number, v: any) => void;
18
+ addPoint(point: Point3 | number): void;
19
+ getPoints(): Point3[];
20
+ getPointIndices(): number[];
21
+ getAtIJKPoint: ([i, j, k]: [any, any, any]) => T;
22
+ setAtIJKPoint: ([i, j, k]: [any, any, any], v: any) => void;
23
+ getAtIndex: (index: any) => T;
24
+ setAtIndex: (index: any, v: any) => void;
25
+ toIJK(index: number): Point3;
26
+ toIndex(ijk: Point3): number;
27
+ getBoundsIJK(): BoundsIJK;
28
+ forEach: (callback: any, options?: any) => void;
29
+ clear(): void;
30
+ getArrayOfSlices(): number[];
31
+ static addBounds(bounds: BoundsIJK, point: Point3): void;
32
+ static createVolumeVoxelManager(dimensions: Point3, scalarData: any): VoxelManager<number>;
33
+ static createMapVoxelManager<T>(dimension: Point3): VoxelManager<T>;
34
+ static createHistoryVoxelManager<T>(sourceVoxelManager: VoxelManager<T>): VoxelManager<T>;
35
+ }
36
+ export type { VoxelManager };
@@ -0,0 +1,161 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ class VoxelManager {
4
+ constructor(dimensions, _get, _set) {
5
+ this.modifiedSlices = new Set();
6
+ this.boundsIJK = [
7
+ [Infinity, -Infinity],
8
+ [Infinity, -Infinity],
9
+ [Infinity, -Infinity],
10
+ ];
11
+ this.getAtIJK = (i, j, k) => {
12
+ const index = i + j * this.width + k * this.frameSize;
13
+ return this._get(index);
14
+ };
15
+ this.setAtIJK = (i, j, k, v) => {
16
+ const index = i + j * this.width + k * this.frameSize;
17
+ if (this._set(index, v) !== false) {
18
+ this.modifiedSlices.add(k);
19
+ VoxelManager.addBounds(this.boundsIJK, [i, j, k]);
20
+ }
21
+ };
22
+ this.getAtIJKPoint = ([i, j, k]) => this.getAtIJK(i, j, k);
23
+ this.setAtIJKPoint = ([i, j, k], v) => this.setAtIJK(i, j, k, v);
24
+ this.getAtIndex = (index) => this._get(index);
25
+ this.setAtIndex = (index, v) => {
26
+ if (this._set(index, v) !== false) {
27
+ const pointIJK = this.toIJK(index);
28
+ this.modifiedSlices.add(pointIJK[2]);
29
+ VoxelManager.addBounds(this.boundsIJK, pointIJK);
30
+ }
31
+ };
32
+ this.forEach = (callback, options) => {
33
+ const boundsIJK = (options === null || options === void 0 ? void 0 : options.boundsIJK) || this.getBoundsIJK();
34
+ const { isWithinObject } = options || {};
35
+ if (this.map) {
36
+ for (const index of this.map.keys()) {
37
+ const pointIJK = this.toIJK(index);
38
+ const value = this._get(index);
39
+ const callbackArguments = { value, index, pointIJK };
40
+ if ((isWithinObject === null || isWithinObject === void 0 ? void 0 : isWithinObject(callbackArguments)) === false) {
41
+ continue;
42
+ }
43
+ callback(callbackArguments);
44
+ }
45
+ }
46
+ else {
47
+ for (let k = boundsIJK[2][0]; k <= boundsIJK[2][1]; k++) {
48
+ const kIndex = k * this.frameSize;
49
+ for (let j = boundsIJK[1][0]; j <= boundsIJK[1][1]; j++) {
50
+ const jIndex = kIndex + j * this.width;
51
+ for (let i = boundsIJK[0][0], index = jIndex + i; i <= boundsIJK[0][1]; i++, index++) {
52
+ const value = this.getAtIndex(index);
53
+ const callbackArguments = { value, index, pointIJK: [i, j, k] };
54
+ if ((isWithinObject === null || isWithinObject === void 0 ? void 0 : isWithinObject(callbackArguments)) === false) {
55
+ continue;
56
+ }
57
+ callback(callbackArguments);
58
+ }
59
+ }
60
+ }
61
+ }
62
+ };
63
+ this.dimensions = dimensions;
64
+ this.width = dimensions[0];
65
+ this.frameSize = this.width * dimensions[1];
66
+ this._get = _get;
67
+ this._set = _set;
68
+ }
69
+ addPoint(point) {
70
+ const index = Array.isArray(point)
71
+ ? point[0] + this.width * point[1] + this.frameSize * point[2]
72
+ : point;
73
+ if (!this.points) {
74
+ this.points = new Set();
75
+ }
76
+ this.points.add(index);
77
+ }
78
+ getPoints() {
79
+ return this.points
80
+ ? [...this.points].map((index) => this.toIJK(index))
81
+ : [];
82
+ }
83
+ getPointIndices() {
84
+ return this.points ? [...this.points] : [];
85
+ }
86
+ toIJK(index) {
87
+ return [
88
+ index % this.width,
89
+ Math.floor((index % this.frameSize) / this.width),
90
+ Math.floor(index / this.frameSize),
91
+ ];
92
+ }
93
+ toIndex(ijk) {
94
+ return ijk[0] + ijk[1] * this.width + ijk[2] * this.frameSize;
95
+ }
96
+ getBoundsIJK() {
97
+ if (this.boundsIJK[0][0] < this.dimensions[0]) {
98
+ return this.boundsIJK;
99
+ }
100
+ return this.dimensions.map((dimension) => [0, dimension - 1]);
101
+ }
102
+ clear() {
103
+ var _a;
104
+ if (this.map) {
105
+ this.map.clear();
106
+ }
107
+ this.boundsIJK.map((bound) => {
108
+ bound[0] = Infinity;
109
+ bound[1] = -Infinity;
110
+ });
111
+ this.modifiedSlices.clear();
112
+ (_a = this.points) === null || _a === void 0 ? void 0 : _a.clear();
113
+ }
114
+ getArrayOfSlices() {
115
+ return Array.from(this.modifiedSlices);
116
+ }
117
+ static addBounds(bounds, point) {
118
+ bounds.forEach((bound, index) => {
119
+ bound[0] = Math.min(point[index], bound[0]);
120
+ bound[1] = Math.max(point[index], bound[1]);
121
+ });
122
+ }
123
+ static createVolumeVoxelManager(dimensions, scalarData) {
124
+ const voxels = new VoxelManager(dimensions, (index) => scalarData[index], (index, v) => {
125
+ const isChanged = scalarData[index] !== v;
126
+ scalarData[index] = v;
127
+ return isChanged;
128
+ });
129
+ voxels.scalarData = scalarData;
130
+ return voxels;
131
+ }
132
+ static createMapVoxelManager(dimension) {
133
+ const map = new Map();
134
+ const voxelManager = new VoxelManager(dimension, map.get.bind(map), (index, v) => map.set(index, v) && true);
135
+ voxelManager.map = map;
136
+ return voxelManager;
137
+ }
138
+ static createHistoryVoxelManager(sourceVoxelManager) {
139
+ const map = new Map();
140
+ const { dimensions } = sourceVoxelManager;
141
+ const voxelManager = new VoxelManager(dimensions, (index) => map.get(index), function (index, v) {
142
+ if (!map.has(index)) {
143
+ const oldV = this.sourceVoxelManager.getAtIndex(index);
144
+ if (oldV === v) {
145
+ return false;
146
+ }
147
+ map.set(index, oldV);
148
+ }
149
+ else if (v === map.get(index)) {
150
+ map.delete(index);
151
+ }
152
+ this.sourceVoxelManager.setAtIndex(index, v);
153
+ });
154
+ voxelManager.map = map;
155
+ voxelManager.scalarData = sourceVoxelManager.scalarData;
156
+ voxelManager.sourceVoxelManager = sourceVoxelManager;
157
+ return voxelManager;
158
+ }
159
+ }
160
+ exports.default = VoxelManager;
161
+ //# sourceMappingURL=VoxelManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VoxelManager.js","sourceRoot":"","sources":["../../../src/utilities/VoxelManager.ts"],"names":[],"mappings":"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"}
@@ -59,8 +59,9 @@ import decimate from './decimate';
59
59
  import imageRetrieveMetadataProvider from './imageRetrieveMetadataProvider';
60
60
  import isVideoTransferSyntax from './isVideoTransferSyntax';
61
61
  import { getBufferConfiguration } from './getBufferConfiguration';
62
+ import VoxelManager from './VoxelManager';
62
63
  import * as planar from './planar';
63
64
  import * as windowLevel from './windowLevel';
64
65
  import * as colormap from './colormap';
65
66
  import * as transferFunctionUtils from './transferFunctionUtils';
66
- export { eventListener, csUtils as invertRgbTransferFunction, createSigmoidRGBTransferFunction, getVoiFromSigmoidRGBTransferFunction, createLinearRGBTransferFunction, scaleRgbTransferFunction, triggerEvent, imageIdToURI, calibratedPixelSpacingMetadataProvider, clamp, uuidv4, planar, getMinMax, getRuntimeId, isEqual, isOpposite, createFloat32SharedArray, createUint8SharedArray, createUint16SharedArray, createInt16SharedArray, getViewportModality, windowLevel, getClosestImageId, getSpacingInNormalDirection, getTargetVolumeAndSpacingInNormalDir, getVolumeActorCorners, indexWithinDimensions, getVolumeViewportsContainingSameVolumes, getViewportsWithVolumeId, transformWorldToIndex, loadImageToCanvas, renderToCanvasCPU, renderToCanvasGPU, worldToImageCoords, imageToWorldCoords, getVolumeSliceRangeInfo, getVolumeViewportScrollInfo, getSliceRange, snapFocalPointToSlice, getImageSliceDataForVolumeViewport, isImageActor, isPTPrescaledWithSUV, actorIsA, getViewportsWithImageURI, getClosestStackImageIndexForPoint, calculateViewportsSpatialRegistration, spatialRegistrationMetadataProvider, getViewportImageCornersInWorld, hasNaNValues, applyPreset, deepMerge, getScalingParameters, getScalarDataType, colormap, getImageLegacy, ProgressiveIterator, decimate, imageRetrieveMetadataProvider, transferFunctionUtils, updateVTKImageDataWithCornerstoneImage, sortImageIdsAndGetSpacing, makeVolumeMetadata, isValidVolume, genericMetadataProvider, isVideoTransferSyntax, getBufferConfiguration, };
67
+ export { eventListener, csUtils as invertRgbTransferFunction, createSigmoidRGBTransferFunction, getVoiFromSigmoidRGBTransferFunction, createLinearRGBTransferFunction, scaleRgbTransferFunction, triggerEvent, imageIdToURI, calibratedPixelSpacingMetadataProvider, clamp, uuidv4, planar, getMinMax, getRuntimeId, isEqual, isOpposite, createFloat32SharedArray, createUint8SharedArray, createUint16SharedArray, createInt16SharedArray, getViewportModality, windowLevel, getClosestImageId, getSpacingInNormalDirection, getTargetVolumeAndSpacingInNormalDir, getVolumeActorCorners, indexWithinDimensions, getVolumeViewportsContainingSameVolumes, getViewportsWithVolumeId, transformWorldToIndex, loadImageToCanvas, renderToCanvasCPU, renderToCanvasGPU, worldToImageCoords, imageToWorldCoords, getVolumeSliceRangeInfo, getVolumeViewportScrollInfo, getSliceRange, snapFocalPointToSlice, getImageSliceDataForVolumeViewport, isImageActor, isPTPrescaledWithSUV, actorIsA, getViewportsWithImageURI, getClosestStackImageIndexForPoint, calculateViewportsSpatialRegistration, spatialRegistrationMetadataProvider, getViewportImageCornersInWorld, hasNaNValues, applyPreset, deepMerge, getScalingParameters, getScalarDataType, colormap, getImageLegacy, ProgressiveIterator, decimate, imageRetrieveMetadataProvider, transferFunctionUtils, updateVTKImageDataWithCornerstoneImage, sortImageIdsAndGetSpacing, makeVolumeMetadata, isValidVolume, genericMetadataProvider, isVideoTransferSyntax, getBufferConfiguration, VoxelManager, };
@@ -27,7 +27,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
29
  exports.applyPreset = exports.hasNaNValues = exports.getViewportImageCornersInWorld = exports.spatialRegistrationMetadataProvider = exports.calculateViewportsSpatialRegistration = exports.getClosestStackImageIndexForPoint = exports.getViewportsWithImageURI = exports.actorIsA = exports.isPTPrescaledWithSUV = exports.isImageActor = exports.getImageSliceDataForVolumeViewport = exports.snapFocalPointToSlice = exports.getSliceRange = exports.getVolumeViewportScrollInfo = exports.getVolumeSliceRangeInfo = exports.imageToWorldCoords = exports.worldToImageCoords = exports.renderToCanvasGPU = exports.renderToCanvasCPU = exports.loadImageToCanvas = exports.transformWorldToIndex = exports.getViewportsWithVolumeId = exports.getVolumeViewportsContainingSameVolumes = exports.indexWithinDimensions = exports.getVolumeActorCorners = exports.getTargetVolumeAndSpacingInNormalDir = exports.getSpacingInNormalDirection = exports.getClosestImageId = exports.windowLevel = exports.getViewportModality = exports.createInt16SharedArray = exports.createUint16SharedArray = exports.createUint8SharedArray = exports.createFloat32SharedArray = exports.isOpposite = exports.isEqual = exports.getRuntimeId = exports.getMinMax = exports.planar = exports.uuidv4 = exports.clamp = exports.calibratedPixelSpacingMetadataProvider = exports.imageIdToURI = exports.triggerEvent = exports.scaleRgbTransferFunction = exports.createLinearRGBTransferFunction = exports.getVoiFromSigmoidRGBTransferFunction = exports.createSigmoidRGBTransferFunction = exports.invertRgbTransferFunction = exports.eventListener = void 0;
30
- exports.getBufferConfiguration = exports.isVideoTransferSyntax = exports.genericMetadataProvider = exports.isValidVolume = exports.makeVolumeMetadata = exports.sortImageIdsAndGetSpacing = exports.updateVTKImageDataWithCornerstoneImage = exports.transferFunctionUtils = exports.imageRetrieveMetadataProvider = exports.decimate = exports.ProgressiveIterator = exports.getImageLegacy = exports.colormap = exports.getScalarDataType = exports.getScalingParameters = exports.deepMerge = void 0;
30
+ exports.VoxelManager = exports.getBufferConfiguration = exports.isVideoTransferSyntax = exports.genericMetadataProvider = exports.isValidVolume = exports.makeVolumeMetadata = exports.sortImageIdsAndGetSpacing = exports.updateVTKImageDataWithCornerstoneImage = exports.transferFunctionUtils = exports.imageRetrieveMetadataProvider = exports.decimate = exports.ProgressiveIterator = exports.getImageLegacy = exports.colormap = exports.getScalarDataType = exports.getScalingParameters = exports.deepMerge = void 0;
31
31
  const eventListener = __importStar(require("./eventListener"));
32
32
  exports.eventListener = eventListener;
33
33
  const invertRgbTransferFunction_1 = __importDefault(require("./invertRgbTransferFunction"));
@@ -151,6 +151,8 @@ const isVideoTransferSyntax_1 = __importDefault(require("./isVideoTransferSyntax
151
151
  exports.isVideoTransferSyntax = isVideoTransferSyntax_1.default;
152
152
  const getBufferConfiguration_1 = require("./getBufferConfiguration");
153
153
  Object.defineProperty(exports, "getBufferConfiguration", { enumerable: true, get: function () { return getBufferConfiguration_1.getBufferConfiguration; } });
154
+ const VoxelManager_1 = __importDefault(require("./VoxelManager"));
155
+ exports.VoxelManager = VoxelManager_1.default;
154
156
  const planar = __importStar(require("./planar"));
155
157
  exports.planar = planar;
156
158
  const windowLevel = __importStar(require("./windowLevel"));
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utilities/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utilities/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=BoundsIJK.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoundsIJK.js","sourceRoot":"","sources":["../../../src/types/BoundsIJK.ts"],"names":[],"mappings":""}
@@ -0,0 +1,157 @@
1
+ export default class VoxelManager {
2
+ constructor(dimensions, _get, _set) {
3
+ this.modifiedSlices = new Set();
4
+ this.boundsIJK = [
5
+ [Infinity, -Infinity],
6
+ [Infinity, -Infinity],
7
+ [Infinity, -Infinity],
8
+ ];
9
+ this.getAtIJK = (i, j, k) => {
10
+ const index = i + j * this.width + k * this.frameSize;
11
+ return this._get(index);
12
+ };
13
+ this.setAtIJK = (i, j, k, v) => {
14
+ const index = i + j * this.width + k * this.frameSize;
15
+ if (this._set(index, v) !== false) {
16
+ this.modifiedSlices.add(k);
17
+ VoxelManager.addBounds(this.boundsIJK, [i, j, k]);
18
+ }
19
+ };
20
+ this.getAtIJKPoint = ([i, j, k]) => this.getAtIJK(i, j, k);
21
+ this.setAtIJKPoint = ([i, j, k], v) => this.setAtIJK(i, j, k, v);
22
+ this.getAtIndex = (index) => this._get(index);
23
+ this.setAtIndex = (index, v) => {
24
+ if (this._set(index, v) !== false) {
25
+ const pointIJK = this.toIJK(index);
26
+ this.modifiedSlices.add(pointIJK[2]);
27
+ VoxelManager.addBounds(this.boundsIJK, pointIJK);
28
+ }
29
+ };
30
+ this.forEach = (callback, options) => {
31
+ const boundsIJK = options?.boundsIJK || this.getBoundsIJK();
32
+ const { isWithinObject } = options || {};
33
+ if (this.map) {
34
+ for (const index of this.map.keys()) {
35
+ const pointIJK = this.toIJK(index);
36
+ const value = this._get(index);
37
+ const callbackArguments = { value, index, pointIJK };
38
+ if (isWithinObject?.(callbackArguments) === false) {
39
+ continue;
40
+ }
41
+ callback(callbackArguments);
42
+ }
43
+ }
44
+ else {
45
+ for (let k = boundsIJK[2][0]; k <= boundsIJK[2][1]; k++) {
46
+ const kIndex = k * this.frameSize;
47
+ for (let j = boundsIJK[1][0]; j <= boundsIJK[1][1]; j++) {
48
+ const jIndex = kIndex + j * this.width;
49
+ for (let i = boundsIJK[0][0], index = jIndex + i; i <= boundsIJK[0][1]; i++, index++) {
50
+ const value = this.getAtIndex(index);
51
+ const callbackArguments = { value, index, pointIJK: [i, j, k] };
52
+ if (isWithinObject?.(callbackArguments) === false) {
53
+ continue;
54
+ }
55
+ callback(callbackArguments);
56
+ }
57
+ }
58
+ }
59
+ }
60
+ };
61
+ this.dimensions = dimensions;
62
+ this.width = dimensions[0];
63
+ this.frameSize = this.width * dimensions[1];
64
+ this._get = _get;
65
+ this._set = _set;
66
+ }
67
+ addPoint(point) {
68
+ const index = Array.isArray(point)
69
+ ? point[0] + this.width * point[1] + this.frameSize * point[2]
70
+ : point;
71
+ if (!this.points) {
72
+ this.points = new Set();
73
+ }
74
+ this.points.add(index);
75
+ }
76
+ getPoints() {
77
+ return this.points
78
+ ? [...this.points].map((index) => this.toIJK(index))
79
+ : [];
80
+ }
81
+ getPointIndices() {
82
+ return this.points ? [...this.points] : [];
83
+ }
84
+ toIJK(index) {
85
+ return [
86
+ index % this.width,
87
+ Math.floor((index % this.frameSize) / this.width),
88
+ Math.floor(index / this.frameSize),
89
+ ];
90
+ }
91
+ toIndex(ijk) {
92
+ return ijk[0] + ijk[1] * this.width + ijk[2] * this.frameSize;
93
+ }
94
+ getBoundsIJK() {
95
+ if (this.boundsIJK[0][0] < this.dimensions[0]) {
96
+ return this.boundsIJK;
97
+ }
98
+ return this.dimensions.map((dimension) => [0, dimension - 1]);
99
+ }
100
+ clear() {
101
+ if (this.map) {
102
+ this.map.clear();
103
+ }
104
+ this.boundsIJK.map((bound) => {
105
+ bound[0] = Infinity;
106
+ bound[1] = -Infinity;
107
+ });
108
+ this.modifiedSlices.clear();
109
+ this.points?.clear();
110
+ }
111
+ getArrayOfSlices() {
112
+ return Array.from(this.modifiedSlices);
113
+ }
114
+ static addBounds(bounds, point) {
115
+ bounds.forEach((bound, index) => {
116
+ bound[0] = Math.min(point[index], bound[0]);
117
+ bound[1] = Math.max(point[index], bound[1]);
118
+ });
119
+ }
120
+ static createVolumeVoxelManager(dimensions, scalarData) {
121
+ const voxels = new VoxelManager(dimensions, (index) => scalarData[index], (index, v) => {
122
+ const isChanged = scalarData[index] !== v;
123
+ scalarData[index] = v;
124
+ return isChanged;
125
+ });
126
+ voxels.scalarData = scalarData;
127
+ return voxels;
128
+ }
129
+ static createMapVoxelManager(dimension) {
130
+ const map = new Map();
131
+ const voxelManager = new VoxelManager(dimension, map.get.bind(map), (index, v) => map.set(index, v) && true);
132
+ voxelManager.map = map;
133
+ return voxelManager;
134
+ }
135
+ static createHistoryVoxelManager(sourceVoxelManager) {
136
+ const map = new Map();
137
+ const { dimensions } = sourceVoxelManager;
138
+ const voxelManager = new VoxelManager(dimensions, (index) => map.get(index), function (index, v) {
139
+ if (!map.has(index)) {
140
+ const oldV = this.sourceVoxelManager.getAtIndex(index);
141
+ if (oldV === v) {
142
+ return false;
143
+ }
144
+ map.set(index, oldV);
145
+ }
146
+ else if (v === map.get(index)) {
147
+ map.delete(index);
148
+ }
149
+ this.sourceVoxelManager.setAtIndex(index, v);
150
+ });
151
+ voxelManager.map = map;
152
+ voxelManager.scalarData = sourceVoxelManager.scalarData;
153
+ voxelManager.sourceVoxelManager = sourceVoxelManager;
154
+ return voxelManager;
155
+ }
156
+ }
157
+ //# sourceMappingURL=VoxelManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VoxelManager.js","sourceRoot":"","sources":["../../../src/utilities/VoxelManager.ts"],"names":[],"mappings":"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"}
@@ -59,9 +59,10 @@ import decimate from './decimate';
59
59
  import imageRetrieveMetadataProvider from './imageRetrieveMetadataProvider';
60
60
  import isVideoTransferSyntax from './isVideoTransferSyntax';
61
61
  import { getBufferConfiguration } from './getBufferConfiguration';
62
+ import VoxelManager from './VoxelManager';
62
63
  import * as planar from './planar';
63
64
  import * as windowLevel from './windowLevel';
64
65
  import * as colormap from './colormap';
65
66
  import * as transferFunctionUtils from './transferFunctionUtils';
66
- export { eventListener, csUtils as invertRgbTransferFunction, createSigmoidRGBTransferFunction, getVoiFromSigmoidRGBTransferFunction, createLinearRGBTransferFunction, scaleRgbTransferFunction, triggerEvent, imageIdToURI, calibratedPixelSpacingMetadataProvider, clamp, uuidv4, planar, getMinMax, getRuntimeId, isEqual, isOpposite, createFloat32SharedArray, createUint8SharedArray, createUint16SharedArray, createInt16SharedArray, getViewportModality, windowLevel, getClosestImageId, getSpacingInNormalDirection, getTargetVolumeAndSpacingInNormalDir, getVolumeActorCorners, indexWithinDimensions, getVolumeViewportsContainingSameVolumes, getViewportsWithVolumeId, transformWorldToIndex, loadImageToCanvas, renderToCanvasCPU, renderToCanvasGPU, worldToImageCoords, imageToWorldCoords, getVolumeSliceRangeInfo, getVolumeViewportScrollInfo, getSliceRange, snapFocalPointToSlice, getImageSliceDataForVolumeViewport, isImageActor, isPTPrescaledWithSUV, actorIsA, getViewportsWithImageURI, getClosestStackImageIndexForPoint, calculateViewportsSpatialRegistration, spatialRegistrationMetadataProvider, getViewportImageCornersInWorld, hasNaNValues, applyPreset, deepMerge, getScalingParameters, getScalarDataType, colormap, getImageLegacy, ProgressiveIterator, decimate, imageRetrieveMetadataProvider, transferFunctionUtils, updateVTKImageDataWithCornerstoneImage, sortImageIdsAndGetSpacing, makeVolumeMetadata, isValidVolume, genericMetadataProvider, isVideoTransferSyntax, getBufferConfiguration, };
67
+ export { eventListener, csUtils as invertRgbTransferFunction, createSigmoidRGBTransferFunction, getVoiFromSigmoidRGBTransferFunction, createLinearRGBTransferFunction, scaleRgbTransferFunction, triggerEvent, imageIdToURI, calibratedPixelSpacingMetadataProvider, clamp, uuidv4, planar, getMinMax, getRuntimeId, isEqual, isOpposite, createFloat32SharedArray, createUint8SharedArray, createUint16SharedArray, createInt16SharedArray, getViewportModality, windowLevel, getClosestImageId, getSpacingInNormalDirection, getTargetVolumeAndSpacingInNormalDir, getVolumeActorCorners, indexWithinDimensions, getVolumeViewportsContainingSameVolumes, getViewportsWithVolumeId, transformWorldToIndex, loadImageToCanvas, renderToCanvasCPU, renderToCanvasGPU, worldToImageCoords, imageToWorldCoords, getVolumeSliceRangeInfo, getVolumeViewportScrollInfo, getSliceRange, snapFocalPointToSlice, getImageSliceDataForVolumeViewport, isImageActor, isPTPrescaledWithSUV, actorIsA, getViewportsWithImageURI, getClosestStackImageIndexForPoint, calculateViewportsSpatialRegistration, spatialRegistrationMetadataProvider, getViewportImageCornersInWorld, hasNaNValues, applyPreset, deepMerge, getScalingParameters, getScalarDataType, colormap, getImageLegacy, ProgressiveIterator, decimate, imageRetrieveMetadataProvider, transferFunctionUtils, updateVTKImageDataWithCornerstoneImage, sortImageIdsAndGetSpacing, makeVolumeMetadata, isValidVolume, genericMetadataProvider, isVideoTransferSyntax, getBufferConfiguration, VoxelManager, };
67
68
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utilities/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,iBAAiB,CAAC;AACjD,OAAO,OAAO,MAAM,6BAA6B,CAAC;AAClD,OAAO,gCAAgC,MAAM,oCAAoC,CAAC;AAClF,OAAO,oCAAoC,MAAM,wCAAwC,CAAC;AAC1F,OAAO,+BAA+B,MAAM,mCAAmC,CAAC;AAChF,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,sCAAsC,MAAM,0CAA0C,CAAC;AAC9F,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,sBAAsB,MAAM,0BAA0B,CAAC;AAC9D,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,sBAAsB,MAAM,0BAA0B,CAAC;AAC9D,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AACxD,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,2BAA2B,MAAM,+BAA+B,CAAC;AACxE,OAAO,oCAAoC,MAAM,wCAAwC,CAAC;AAC1F,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,uCAAuC,MAAM,2CAA2C,CAAC;AAChG,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AACtD,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AACtD,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,2BAA2B,MAAM,+BAA+B,CAAC;AACxE,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,kCAAkC,MAAM,sCAAsC,CAAC;AACtF,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,iCAAiC,MAAM,qCAAqC,CAAC;AACpF,OAAO,qCAAqC,MAAM,yCAAyC,CAAC;AAC5F,OAAO,mCAAmC,MAAM,uCAAuC,CAAC;AACxF,OAAO,8BAA8B,MAAM,kCAAkC,CAAC;AAC9E,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,yBAAyB,MAAM,6BAA6B,CAAC;AACpE,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AACtD,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,sCAAsC,EAAE,MAAM,0CAA0C,CAAC;AAClG,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AACxD,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,6BAA6B,MAAM,iCAAiC,CAAC;AAC5E,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAGlE,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,WAAW,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,qBAAqB,MAAM,yBAAyB,CAAC;AAEjE,OAAO,EACL,aAAa,EACb,OAAO,IAAI,yBAAyB,EACpC,gCAAgC,EAChC,oCAAoC,EACpC,+BAA+B,EAC/B,wBAAwB,EACxB,YAAY,EACZ,YAAY,EACZ,sCAAsC,EACtC,KAAK,EACL,MAAM,EACN,MAAM,EACN,SAAS,EACT,YAAY,EACZ,OAAO,EACP,UAAU,EACV,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACvB,sBAAsB,EACtB,mBAAmB,EACnB,WAAW,EACX,iBAAiB,EACjB,2BAA2B,EAC3B,oCAAoC,EACpC,qBAAqB,EACrB,qBAAqB,EACrB,uCAAuC,EACvC,wBAAwB,EACxB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,2BAA2B,EAC3B,aAAa,EACb,qBAAqB,EACrB,kCAAkC,EAClC,YAAY,EACZ,oBAAoB,EACpB,QAAQ,EACR,wBAAwB,EACxB,iCAAiC,EACjC,qCAAqC,EACrC,mCAAmC,EACnC,8BAA8B,EAC9B,YAAY,EACZ,WAAW,EACX,SAAS,EACT,oBAAoB,EACpB,iBAAiB,EACjB,QAAQ,EACR,cAAc,EACd,mBAAmB,EACnB,QAAQ,EACR,6BAA6B,EAC7B,qBAAqB,EACrB,sCAAsC,EACtC,yBAAyB,EACzB,kBAAkB,EAClB,aAAa,EACb,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,GACvB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utilities/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type Point2 from './Point2';
2
+ declare type BoundsIJK = [Point2, Point2, Point2];
3
+ export default BoundsIJK;
4
+ //# sourceMappingURL=BoundsIJK.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoundsIJK.d.ts","sourceRoot":"","sources":["../../../src/types/BoundsIJK.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AAEnC,aAAK,SAAS,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAE1C,eAAe,SAAS,CAAC"}
@@ -76,5 +76,6 @@ import type { Color, ColorLUT } from './Color';
76
76
  import type VideoViewportProperties from './VideoViewportProperties';
77
77
  import type IVideoViewport from './IVideoViewport';
78
78
  import type { InternalVideoCamera, VideoViewportInput } from './VideoViewportTypes';
79
- export type { Cornerstone3DConfig, ICamera, IStackViewport, IVideoViewport, IVolumeViewport, IEnabledElement, ICache, IVolume, VolumeScalarData, IViewportId, IImageVolume, IDynamicImageVolume, IRenderingEngine, ScalingParameters, PTScaling, Scaling, IStreamingImageVolume, IImage, IImageData, IImageCalibration, CPUIImageData, CPUImageData, EventTypes, ImageLoaderFn, VolumeLoaderFn, IRegisterImageLoader, IStreamingVolumeProperties, IViewport, StackViewportProperties, VolumeViewportProperties, ViewportProperties, PublicViewportInput, VolumeActor, Actor, ActorEntry, ImageActor, IImageLoadObject, IVolumeLoadObject, IVolumeInput, VolumeInputCallback, IStackInput, StackInputCallback, ViewportPreset, Metadata, OrientationVectors, AABB2, Point2, Point3, Point4, Mat3, Plane, ViewportInputOptions, VideoViewportProperties, VOIRange, VOI, DisplayArea, FlipDirection, ICachedImage, ICachedVolume, CPUFallbackEnabledElement, CPUFallbackViewport, CPUFallbackTransform, CPUFallbackColormapData, CPUFallbackViewportDisplayedArea, CPUFallbackColormapsData, CPUFallbackColormap, TransformMatrix2D, CPUFallbackLookupTable, CPUFallbackLUT, CPUFallbackRenderingTools, CustomEventType, ActorSliceRange, ImageSliceData, IGeometry, IGeometryLoadObject, ICachedGeometry, PublicContourSetData, ContourSetData, ContourData, IContourSet, IContour, PublicSurfaceData, SurfaceData, RGB, ColormapPublic, ColormapRegistration, PixelDataTypedArray, PixelDataTypedArrayString, ImagePixelModule, ImagePlaneModule, AffineMatrix, ImageLoadListener, InternalVideoCamera, VideoViewportInput, Color, ColorLUT, };
79
+ import type BoundsIJK from './BoundsIJK';
80
+ export type { Cornerstone3DConfig, ICamera, IStackViewport, IVideoViewport, IVolumeViewport, IEnabledElement, ICache, IVolume, VolumeScalarData, IViewportId, IImageVolume, IDynamicImageVolume, IRenderingEngine, ScalingParameters, PTScaling, Scaling, IStreamingImageVolume, IImage, IImageData, IImageCalibration, CPUIImageData, CPUImageData, EventTypes, ImageLoaderFn, VolumeLoaderFn, IRegisterImageLoader, IStreamingVolumeProperties, IViewport, StackViewportProperties, VolumeViewportProperties, ViewportProperties, PublicViewportInput, VolumeActor, Actor, ActorEntry, ImageActor, IImageLoadObject, IVolumeLoadObject, IVolumeInput, VolumeInputCallback, IStackInput, StackInputCallback, ViewportPreset, Metadata, OrientationVectors, AABB2, Point2, Point3, Point4, Mat3, Plane, ViewportInputOptions, VideoViewportProperties, VOIRange, VOI, DisplayArea, FlipDirection, ICachedImage, ICachedVolume, CPUFallbackEnabledElement, CPUFallbackViewport, CPUFallbackTransform, CPUFallbackColormapData, CPUFallbackViewportDisplayedArea, CPUFallbackColormapsData, CPUFallbackColormap, TransformMatrix2D, CPUFallbackLookupTable, CPUFallbackLUT, CPUFallbackRenderingTools, CustomEventType, ActorSliceRange, ImageSliceData, IGeometry, IGeometryLoadObject, ICachedGeometry, PublicContourSetData, ContourSetData, ContourData, IContourSet, IContour, PublicSurfaceData, SurfaceData, RGB, ColormapPublic, ColormapRegistration, PixelDataTypedArray, PixelDataTypedArrayString, ImagePixelModule, ImagePlaneModule, AffineMatrix, ImageLoadListener, InternalVideoCamera, VideoViewportInput, BoundsIJK, Color, ColorLUT, };
80
81
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import type { BoundsIJK, Point3, VolumeScalarData } from '../types';
2
+ export default class VoxelManager<T> {
3
+ modifiedSlices: Set<number>;
4
+ boundsIJK: BoundsIJK;
5
+ scalarData: VolumeScalarData;
6
+ map: Map<number, T>;
7
+ sourceVoxelManager: VoxelManager<T>;
8
+ isInObject: (pointIPS: any, pointIJK: any) => boolean;
9
+ readonly dimensions: Point3;
10
+ points: Set<number>;
11
+ width: number;
12
+ frameSize: number;
13
+ _get: (index: number) => T;
14
+ _set: (index: number, v: T) => boolean | void;
15
+ constructor(dimensions: any, _get: (index: number) => T, _set?: (index: number, v: T) => boolean | void);
16
+ getAtIJK: (i: any, j: any, k: any) => T;
17
+ setAtIJK: (i: number, j: number, k: number, v: any) => void;
18
+ addPoint(point: Point3 | number): void;
19
+ getPoints(): Point3[];
20
+ getPointIndices(): number[];
21
+ getAtIJKPoint: ([i, j, k]: [any, any, any]) => T;
22
+ setAtIJKPoint: ([i, j, k]: [any, any, any], v: any) => void;
23
+ getAtIndex: (index: any) => T;
24
+ setAtIndex: (index: any, v: any) => void;
25
+ toIJK(index: number): Point3;
26
+ toIndex(ijk: Point3): number;
27
+ getBoundsIJK(): BoundsIJK;
28
+ forEach: (callback: any, options?: any) => void;
29
+ clear(): void;
30
+ getArrayOfSlices(): number[];
31
+ static addBounds(bounds: BoundsIJK, point: Point3): void;
32
+ static createVolumeVoxelManager(dimensions: Point3, scalarData: any): VoxelManager<number>;
33
+ static createMapVoxelManager<T>(dimension: Point3): VoxelManager<T>;
34
+ static createHistoryVoxelManager<T>(sourceVoxelManager: VoxelManager<T>): VoxelManager<T>;
35
+ }
36
+ export type { VoxelManager };
37
+ //# sourceMappingURL=VoxelManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VoxelManager.d.ts","sourceRoot":"","sources":["../../../src/utilities/VoxelManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAKpE,MAAM,CAAC,OAAO,OAAO,YAAY,CAAC,CAAC;IAC1B,cAAc,cAAqB;IACnC,SAAS,YAID;IAGR,UAAU,EAAE,gBAAgB,CAAC;IAC7B,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACpB,kBAAkB,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IACpC,UAAU,EAAE,CAAC,QAAQ,KAAA,EAAE,QAAQ,KAAA,KAAK,OAAO,CAAC;IACnD,SAAgB,UAAU,EAAE,MAAM,CAAC;IAEnC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,CAAC;IAC3B,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,KAAK,OAAO,GAAG,IAAI,CAAC;gBAU5C,UAAU,KAAA,EACV,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,EAC1B,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,KAAK,OAAO,GAAG,IAAI;IAYzC,QAAQ,gCAGb;IAMK,QAAQ,MAAO,MAAM,KAAK,MAAM,KAAK,MAAM,kBAMhD;IAOK,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAa/B,SAAS,IAAI,MAAM,EAAE;IASrB,eAAe,IAAI,MAAM,EAAE;IAO3B,aAAa,oCAAyC;IAOtD,aAAa,+CAA+C;IAK5D,UAAU,oBAA+B;IAKzC,UAAU,+BAMf;IAKK,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAW5B,OAAO,CAAC,GAAG,EAAE,MAAM;IAOnB,YAAY,IAAI,SAAS;IAUzB,OAAO,yCAkCZ;IAMK,KAAK;IAeL,gBAAgB,IAAI,MAAM,EAAE;WAOrB,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM;WAW1C,wBAAwB,CACpC,UAAU,EAAE,MAAM,EAClB,UAAU,KAAA,GACT,YAAY,CAAC,MAAM,CAAC;WAmBT,qBAAqB,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC;WAgB5D,yBAAyB,CAAC,CAAC,EACvC,kBAAkB,EAAE,YAAY,CAAC,CAAC,CAAC,GAClC,YAAY,CAAC,CAAC,CAAC;CAyBnB;AAED,YAAY,EAAE,YAAY,EAAE,CAAC"}