@cornerstonejs/tools 1.27.3 → 1.28.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.
@@ -19,8 +19,8 @@ function getDataInTime(dynamicVolume, options) {
19
19
  }
20
20
  if (options.maskVolumeId) {
21
21
  const segmentationVolume = core_1.cache.getVolume(options.maskVolumeId);
22
- const dataInTime = _getTimePointDataMask(frames, dynamicVolume, segmentationVolume);
23
- return dataInTime;
22
+ const [dataInTime, ijkCoords] = _getTimePointDataMask(frames, dynamicVolume, segmentationVolume);
23
+ return [dataInTime, ijkCoords];
24
24
  }
25
25
  if (options.imageCoordinate) {
26
26
  const dataInTime = _getTimePointDataCoordinate(frames, options.imageCoordinate, dynamicVolume);
@@ -54,9 +54,16 @@ function _getTimePointDataMask(frames, dynamicVolume, segmentationVolume) {
54
54
  const len = segScalarData.length;
55
55
  const nonZeroVoxelIndices = [];
56
56
  nonZeroVoxelIndices.length = len;
57
+ const ijkCoords = [];
58
+ const dimensions = segmentationVolume.dimensions;
57
59
  let actualLen = 0;
58
60
  for (let i = 0, len = segScalarData.length; i < len; i++) {
59
61
  if (segScalarData[i] !== 0) {
62
+ ijkCoords.push([
63
+ i % dimensions[0],
64
+ Math.floor((i / dimensions[0]) % dimensions[1]),
65
+ Math.floor(i / (dimensions[0] * dimensions[1])),
66
+ ]);
60
67
  nonZeroVoxelIndices[actualLen++] = i;
61
68
  }
62
69
  }
@@ -75,9 +82,9 @@ function _getTimePointDataMask(frames, dynamicVolume, segmentationVolume) {
75
82
  });
76
83
  values.push(indexValues);
77
84
  }
78
- return values;
85
+ return [values, ijkCoords];
79
86
  }
80
- const callback = ({ pointLPS: segPointLPS, value: segValue }) => {
87
+ const callback = ({ pointLPS: segPointLPS, value: segValue, pointIJK: segPointIJK, }) => {
81
88
  if (segValue === 0) {
82
89
  return;
83
90
  }
@@ -98,10 +105,11 @@ function _getTimePointDataMask(frames, dynamicVolume, segmentationVolume) {
98
105
  perFrameSum.forEach((sum) => {
99
106
  averageValues.push(sum / count);
100
107
  });
108
+ ijkCoords.push(segPointIJK);
101
109
  values.push(averageValues);
102
110
  };
103
111
  (0, pointInShapeCallback_1.default)(maskImageData, () => true, callback);
104
- return values;
112
+ return [values, ijkCoords];
105
113
  }
106
114
  exports.default = getDataInTime;
107
115
  //# sourceMappingURL=getDataInTime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getDataInTime.js","sourceRoot":"","sources":["../../../../src/utilities/dynamicVolume/getDataInTime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getDataInTime.js","sourceRoot":"","sources":["../../../../src/utilities/dynamicVolume/getDataInTime.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,8 @@ import throttle from './throttle';
4
4
  import isObject from './isObject';
5
5
  import clip from './clip';
6
6
  import calibrateImageSpacing from './calibrateImageSpacing';
7
+ import getCalibratedLengthUnits from './getCalibratedUnits';
8
+ import { getCalibratedScale } from './getCalibratedUnits';
7
9
  import triggerAnnotationRenderForViewportIds from './triggerAnnotationRenderForViewportIds';
8
10
  import triggerAnnotationRender from './triggerAnnotationRender';
9
11
  import jumpToSlice from './viewport/jumpToSlice';
@@ -29,4 +31,4 @@ import * as dynamicVolume from './dynamicVolume';
29
31
  import * as polyDataUtils from './polyData/utils';
30
32
  import * as voi from './voi';
31
33
  import { triggerEvent } from '@cornerstonejs/core';
32
- export { math, planar, viewportFilters, drawing, debounce, dynamicVolume, throttle, orientation, isObject, touch, triggerEvent, calibrateImageSpacing, segmentation, triggerAnnotationRenderForViewportIds, triggerAnnotationRender, pointInShapeCallback, pointInSurroundingSphereCallback, getAnnotationNearPoint, getAnnotationNearPointOnEnabledElement, jumpToSlice, viewport, cine, clip, boundingBox, rectangleROITool, planarFreehandROITool, stackPrefetch, stackContextPrefetch, scroll, roundNumber, pointToString, polyDataUtils, voi, };
34
+ export { math, planar, viewportFilters, drawing, debounce, dynamicVolume, throttle, orientation, isObject, touch, triggerEvent, calibrateImageSpacing, getCalibratedLengthUnits, getCalibratedScale, segmentation, triggerAnnotationRenderForViewportIds, triggerAnnotationRender, pointInShapeCallback, pointInSurroundingSphereCallback, getAnnotationNearPoint, getAnnotationNearPointOnEnabledElement, jumpToSlice, viewport, cine, clip, boundingBox, rectangleROITool, planarFreehandROITool, stackPrefetch, stackContextPrefetch, scroll, roundNumber, pointToString, polyDataUtils, voi, };
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.voi = exports.polyDataUtils = exports.pointToString = exports.roundNumber = exports.scroll = exports.stackContextPrefetch = exports.stackPrefetch = exports.planarFreehandROITool = exports.rectangleROITool = exports.boundingBox = exports.clip = exports.cine = exports.viewport = exports.jumpToSlice = exports.getAnnotationNearPointOnEnabledElement = exports.getAnnotationNearPoint = exports.pointInSurroundingSphereCallback = exports.pointInShapeCallback = exports.triggerAnnotationRender = exports.triggerAnnotationRenderForViewportIds = exports.segmentation = exports.calibrateImageSpacing = exports.triggerEvent = exports.touch = exports.isObject = exports.orientation = exports.throttle = exports.dynamicVolume = exports.debounce = exports.drawing = exports.viewportFilters = exports.planar = exports.math = void 0;
29
+ exports.voi = exports.polyDataUtils = exports.pointToString = exports.roundNumber = exports.scroll = exports.stackContextPrefetch = exports.stackPrefetch = exports.planarFreehandROITool = exports.rectangleROITool = exports.boundingBox = exports.clip = exports.cine = exports.viewport = exports.jumpToSlice = exports.getAnnotationNearPointOnEnabledElement = exports.getAnnotationNearPoint = exports.pointInSurroundingSphereCallback = exports.pointInShapeCallback = exports.triggerAnnotationRender = exports.triggerAnnotationRenderForViewportIds = exports.segmentation = exports.getCalibratedScale = exports.getCalibratedLengthUnits = exports.calibrateImageSpacing = exports.triggerEvent = exports.touch = exports.isObject = exports.orientation = exports.throttle = exports.dynamicVolume = exports.debounce = exports.drawing = exports.viewportFilters = exports.planar = exports.math = void 0;
30
30
  const getAnnotationNearPoint_1 = require("./getAnnotationNearPoint");
31
31
  Object.defineProperty(exports, "getAnnotationNearPoint", { enumerable: true, get: function () { return getAnnotationNearPoint_1.getAnnotationNearPoint; } });
32
32
  Object.defineProperty(exports, "getAnnotationNearPointOnEnabledElement", { enumerable: true, get: function () { return getAnnotationNearPoint_1.getAnnotationNearPointOnEnabledElement; } });
@@ -40,6 +40,10 @@ const clip_1 = __importDefault(require("./clip"));
40
40
  exports.clip = clip_1.default;
41
41
  const calibrateImageSpacing_1 = __importDefault(require("./calibrateImageSpacing"));
42
42
  exports.calibrateImageSpacing = calibrateImageSpacing_1.default;
43
+ const getCalibratedUnits_1 = __importDefault(require("./getCalibratedUnits"));
44
+ exports.getCalibratedLengthUnits = getCalibratedUnits_1.default;
45
+ const getCalibratedUnits_2 = require("./getCalibratedUnits");
46
+ Object.defineProperty(exports, "getCalibratedScale", { enumerable: true, get: function () { return getCalibratedUnits_2.getCalibratedScale; } });
43
47
  const triggerAnnotationRenderForViewportIds_1 = __importDefault(require("./triggerAnnotationRenderForViewportIds"));
44
48
  exports.triggerAnnotationRenderForViewportIds = triggerAnnotationRenderForViewportIds_1.default;
45
49
  const triggerAnnotationRender_1 = __importDefault(require("./triggerAnnotationRender"));
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utilities/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qEAGkC;AAyDhC,uGA3DA,+CAAsB,OA2DA;AACtB,uHA3DA,+DAAsC,OA2DA;AAvDxC,0DAAkC;AAyChC,mBAzCK,kBAAQ,CAyCL;AAxCV,0DAAkC;AA0ChC,mBA1CK,kBAAQ,CA0CL;AAzCV,0DAAkC;AA2ChC,mBA3CK,kBAAQ,CA2CL;AA1CV,kDAA0B;AAwDxB,eAxDK,cAAI,CAwDL;AAvDN,oFAA4D;AA4C1D,gCA5CK,+BAAqB,CA4CL;AA3CvB,oHAA4F;AA6C1F,gDA7CK,+CAAqC,CA6CL;AA5CvC,wFAAgE;AA6C9D,kCA7CK,iCAAuB,CA6CL;AA5CzB,yEAAiD;AAiD/C,sBAjDK,qBAAW,CAiDL;AA/Cb,kFAA0D;AA2CxD,+BA3CK,8BAAoB,CA2CL;AA1CtB,0GAAkF;AA2ChF,2CA3CK,0CAAgC,CA2CL;AA1ClC,sDAA8B;AAsD5B,iBAtDK,gBAAM,CAsDL;AArDR,gEAAwC;AAsDtC,sBAtDK,qBAAW,CAsDL;AArDb,mDAAgD;AAsD9C,8FAtDO,6BAAa,OAsDP;AAnDf,6DAA+C;AAiC7C,oCAAY;AAhCd,mDAAqC;AAuBnC,0BAAO;AAtBT,6CAA+B;AAmB7B,oBAAI;AAlBN,iDAAmC;AAmBjC,wBAAM;AAlBR,mEAAqD;AAmBnD,0CAAe;AAlBjB,2DAA6C;AAuB3C,kCAAW;AAtBb,6CAA+B;AAoC7B,oBAAI;AAnCN,2DAA6C;AAqC3C,kCAAW;AApCb,+EAAiE;AAsC/D,sDAAqB;AArCvB,qEAAuD;AAoCrD,4CAAgB;AAnClB,mDAAsE;AAqCpE,8FArCO,6BAAa,OAqCP;AACb,qGAtCsB,oCAAoB,OAsCtB;AArCtB,qDAAuC;AA8BrC,4BAAQ;AA7BV,+CAAiC;AAkB/B,sBAAK;AAjBP,+DAAiD;AAa/C,sCAAa;AAZf,gEAAkD;AAsChD,sCAAa;AArCf,2CAA6B;AAsC3B,kBAAG;AAnCL,8CAAmD;AAajD,6FAbO,mBAAY,OAaP"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utilities/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qEAGkC;AA6DhC,uGA/DA,+CAAsB,OA+DA;AACtB,uHA/DA,+DAAsC,OA+DA;AA3DxC,0DAAkC;AA2ChC,mBA3CK,kBAAQ,CA2CL;AA1CV,0DAAkC;AA4ChC,mBA5CK,kBAAQ,CA4CL;AA3CV,0DAAkC;AA6ChC,mBA7CK,kBAAQ,CA6CL;AA5CV,kDAA0B;AA4DxB,eA5DK,cAAI,CA4DL;AA3DN,oFAA4D;AA8C1D,gCA9CK,+BAAqB,CA8CL;AA7CvB,8EAA4D;AA8C1D,mCA9CK,4BAAwB,CA8CL;AA7C1B,6DAA0D;AA8CxD,mGA9CO,uCAAkB,OA8CP;AA7CpB,oHAA4F;AA+C1F,gDA/CK,+CAAqC,CA+CL;AA9CvC,wFAAgE;AA+C9D,kCA/CK,iCAAuB,CA+CL;AA9CzB,yEAAiD;AAmD/C,sBAnDK,qBAAW,CAmDL;AAjDb,kFAA0D;AA6CxD,+BA7CK,8BAAoB,CA6CL;AA5CtB,0GAAkF;AA6ChF,2CA7CK,0CAAgC,CA6CL;AA5ClC,sDAA8B;AAwD5B,iBAxDK,gBAAM,CAwDL;AAvDR,gEAAwC;AAwDtC,sBAxDK,qBAAW,CAwDL;AAvDb,mDAAgD;AAwD9C,8FAxDO,6BAAa,OAwDP;AArDf,6DAA+C;AAmC7C,oCAAY;AAlCd,mDAAqC;AAuBnC,0BAAO;AAtBT,6CAA+B;AAmB7B,oBAAI;AAlBN,iDAAmC;AAmBjC,wBAAM;AAlBR,mEAAqD;AAmBnD,0CAAe;AAlBjB,2DAA6C;AAuB3C,kCAAW;AAtBb,6CAA+B;AAsC7B,oBAAI;AArCN,2DAA6C;AAuC3C,kCAAW;AAtCb,+EAAiE;AAwC/D,sDAAqB;AAvCvB,qEAAuD;AAsCrD,4CAAgB;AArClB,mDAAsE;AAuCpE,8FAvCO,6BAAa,OAuCP;AACb,qGAxCsB,oCAAoB,OAwCtB;AAvCtB,qDAAuC;AAgCrC,4BAAQ;AA/BV,+CAAiC;AAkB/B,sBAAK;AAjBP,+DAAiD;AAa/C,sCAAa;AAZf,gEAAkD;AAwChD,sCAAa;AAvCf,2CAA6B;AAwC3B,kBAAG;AArCL,8CAAmD;AAajD,6FAbO,mBAAY,OAaP"}
@@ -14,8 +14,8 @@ function getDataInTime(dynamicVolume, options) {
14
14
  }
15
15
  if (options.maskVolumeId) {
16
16
  const segmentationVolume = cache.getVolume(options.maskVolumeId);
17
- const dataInTime = _getTimePointDataMask(frames, dynamicVolume, segmentationVolume);
18
- return dataInTime;
17
+ const [dataInTime, ijkCoords] = _getTimePointDataMask(frames, dynamicVolume, segmentationVolume);
18
+ return [dataInTime, ijkCoords];
19
19
  }
20
20
  if (options.imageCoordinate) {
21
21
  const dataInTime = _getTimePointDataCoordinate(frames, options.imageCoordinate, dynamicVolume);
@@ -49,9 +49,16 @@ function _getTimePointDataMask(frames, dynamicVolume, segmentationVolume) {
49
49
  const len = segScalarData.length;
50
50
  const nonZeroVoxelIndices = [];
51
51
  nonZeroVoxelIndices.length = len;
52
+ const ijkCoords = [];
53
+ const dimensions = segmentationVolume.dimensions;
52
54
  let actualLen = 0;
53
55
  for (let i = 0, len = segScalarData.length; i < len; i++) {
54
56
  if (segScalarData[i] !== 0) {
57
+ ijkCoords.push([
58
+ i % dimensions[0],
59
+ Math.floor((i / dimensions[0]) % dimensions[1]),
60
+ Math.floor(i / (dimensions[0] * dimensions[1])),
61
+ ]);
55
62
  nonZeroVoxelIndices[actualLen++] = i;
56
63
  }
57
64
  }
@@ -70,9 +77,9 @@ function _getTimePointDataMask(frames, dynamicVolume, segmentationVolume) {
70
77
  });
71
78
  values.push(indexValues);
72
79
  }
73
- return values;
80
+ return [values, ijkCoords];
74
81
  }
75
- const callback = ({ pointLPS: segPointLPS, value: segValue }) => {
82
+ const callback = ({ pointLPS: segPointLPS, value: segValue, pointIJK: segPointIJK, }) => {
76
83
  if (segValue === 0) {
77
84
  return;
78
85
  }
@@ -93,10 +100,11 @@ function _getTimePointDataMask(frames, dynamicVolume, segmentationVolume) {
93
100
  perFrameSum.forEach((sum) => {
94
101
  averageValues.push(sum / count);
95
102
  });
103
+ ijkCoords.push(segPointIJK);
96
104
  values.push(averageValues);
97
105
  };
98
106
  pointInShapeCallback(maskImageData, () => true, callback);
99
- return values;
107
+ return [values, ijkCoords];
100
108
  }
101
109
  export default getDataInTime;
102
110
  //# sourceMappingURL=getDataInTime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getDataInTime.js","sourceRoot":"","sources":["../../../../src/utilities/dynamicVolume/getDataInTime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getDataInTime.js","sourceRoot":"","sources":["../../../../src/utilities/dynamicVolume/getDataInTime.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,8 @@ import throttle from './throttle';
4
4
  import isObject from './isObject';
5
5
  import clip from './clip';
6
6
  import calibrateImageSpacing from './calibrateImageSpacing';
7
+ import getCalibratedLengthUnits from './getCalibratedUnits';
8
+ import { getCalibratedScale } from './getCalibratedUnits';
7
9
  import triggerAnnotationRenderForViewportIds from './triggerAnnotationRenderForViewportIds';
8
10
  import triggerAnnotationRender from './triggerAnnotationRender';
9
11
  import jumpToSlice from './viewport/jumpToSlice';
@@ -29,4 +31,4 @@ import * as dynamicVolume from './dynamicVolume';
29
31
  import * as polyDataUtils from './polyData/utils';
30
32
  import * as voi from './voi';
31
33
  import { triggerEvent } from '@cornerstonejs/core';
32
- export { math, planar, viewportFilters, drawing, debounce, dynamicVolume, throttle, orientation, isObject, touch, triggerEvent, calibrateImageSpacing, segmentation, triggerAnnotationRenderForViewportIds, triggerAnnotationRender, pointInShapeCallback, pointInSurroundingSphereCallback, getAnnotationNearPoint, getAnnotationNearPointOnEnabledElement, jumpToSlice, viewport, cine, clip, boundingBox, rectangleROITool, planarFreehandROITool, stackPrefetch, stackContextPrefetch, scroll, roundNumber, pointToString, polyDataUtils, voi, };
34
+ export { math, planar, viewportFilters, drawing, debounce, dynamicVolume, throttle, orientation, isObject, touch, triggerEvent, calibrateImageSpacing, getCalibratedLengthUnits, getCalibratedScale, segmentation, triggerAnnotationRenderForViewportIds, triggerAnnotationRender, pointInShapeCallback, pointInSurroundingSphereCallback, getAnnotationNearPoint, getAnnotationNearPointOnEnabledElement, jumpToSlice, viewport, cine, clip, boundingBox, rectangleROITool, planarFreehandROITool, stackPrefetch, stackContextPrefetch, scroll, roundNumber, pointToString, polyDataUtils, voi, };
@@ -4,6 +4,8 @@ import throttle from './throttle';
4
4
  import isObject from './isObject';
5
5
  import clip from './clip';
6
6
  import calibrateImageSpacing from './calibrateImageSpacing';
7
+ import getCalibratedLengthUnits from './getCalibratedUnits';
8
+ import { getCalibratedScale } from './getCalibratedUnits';
7
9
  import triggerAnnotationRenderForViewportIds from './triggerAnnotationRenderForViewportIds';
8
10
  import triggerAnnotationRender from './triggerAnnotationRender';
9
11
  import jumpToSlice from './viewport/jumpToSlice';
@@ -29,5 +31,5 @@ import * as dynamicVolume from './dynamicVolume';
29
31
  import * as polyDataUtils from './polyData/utils';
30
32
  import * as voi from './voi';
31
33
  import { triggerEvent } from '@cornerstonejs/core';
32
- export { math, planar, viewportFilters, drawing, debounce, dynamicVolume, throttle, orientation, isObject, touch, triggerEvent, calibrateImageSpacing, segmentation, triggerAnnotationRenderForViewportIds, triggerAnnotationRender, pointInShapeCallback, pointInSurroundingSphereCallback, getAnnotationNearPoint, getAnnotationNearPointOnEnabledElement, jumpToSlice, viewport, cine, clip, boundingBox, rectangleROITool, planarFreehandROITool, stackPrefetch, stackContextPrefetch, scroll, roundNumber, pointToString, polyDataUtils, voi, };
34
+ export { math, planar, viewportFilters, drawing, debounce, dynamicVolume, throttle, orientation, isObject, touch, triggerEvent, calibrateImageSpacing, getCalibratedLengthUnits, getCalibratedScale, segmentation, triggerAnnotationRenderForViewportIds, triggerAnnotationRender, pointInShapeCallback, pointInSurroundingSphereCallback, getAnnotationNearPoint, getAnnotationNearPointOnEnabledElement, jumpToSlice, viewport, cine, clip, boundingBox, rectangleROITool, planarFreehandROITool, stackPrefetch, stackContextPrefetch, scroll, roundNumber, pointToString, polyDataUtils, voi, };
33
35
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utilities/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,sCAAsC,GACvC,MAAM,0BAA0B,CAAC;AAGlC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,qCAAqC,MAAM,yCAAyC,CAAC;AAC5F,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,WAAW,MAAM,wBAAwB,CAAC;AAEjD,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,gCAAgC,MAAM,oCAAoC,CAAC;AAClF,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,KAAK,YAAY,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,eAAe,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,WAAW,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,WAAW,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,qBAAqB,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,gBAAgB,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,aAAa,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,aAAa,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAG7B,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,OAAO,EACL,IAAI,EACJ,MAAM,EACN,eAAe,EACf,OAAO,EACP,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,qBAAqB,EACrB,YAAY,EACZ,qCAAqC,EACrC,uBAAuB,EACvB,oBAAoB,EACpB,gCAAgC,EAChC,sBAAsB,EACtB,sCAAsC,EACtC,WAAW,EACX,QAAQ,EACR,IAAI,EACJ,IAAI,EACJ,WAAW,EACX,gBAAgB,EAChB,qBAAqB,EACrB,aAAa,EACb,oBAAoB,EACpB,MAAM,EACN,WAAW,EACX,aAAa,EACb,aAAa,EACb,GAAG,GACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utilities/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,sCAAsC,GACvC,MAAM,0BAA0B,CAAC;AAGlC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,wBAAwB,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,qCAAqC,MAAM,yCAAyC,CAAC;AAC5F,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,WAAW,MAAM,wBAAwB,CAAC;AAEjD,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,gCAAgC,MAAM,oCAAoC,CAAC;AAClF,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,KAAK,YAAY,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,eAAe,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,WAAW,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,WAAW,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,qBAAqB,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,gBAAgB,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,aAAa,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,aAAa,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAG7B,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,OAAO,EACL,IAAI,EACJ,MAAM,EACN,eAAe,EACf,OAAO,EACP,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,qBAAqB,EACrB,wBAAwB,EACxB,kBAAkB,EAClB,YAAY,EACZ,qCAAqC,EACrC,uBAAuB,EACvB,oBAAoB,EACpB,gCAAgC,EAChC,sBAAsB,EACtB,sCAAsC,EACtC,WAAW,EACX,QAAQ,EACR,IAAI,EACJ,IAAI,EACJ,WAAW,EACX,gBAAgB,EAChB,qBAAqB,EACrB,aAAa,EACb,oBAAoB,EACpB,MAAM,EACN,WAAW,EACX,aAAa,EACb,aAAa,EACb,GAAG,GACJ,CAAC"}