@openhealth/oht-custom-parser-lib 0.2.43 → 0.2.46
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/index.d.ts +2 -3
- package/dist/index.js +1 -2
- package/dist/index.js.map +1 -1
- package/dist/types/oht.types.d.ts +0 -1
- package/dist/util-ts/dataUtils.d.ts +0 -40
- package/dist/util-ts/dataUtils.js +8 -77
- package/dist/util-ts/dataUtils.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -7,9 +7,8 @@ export { LabToOhtContract, LabToOhtMapper, UnknownMeasurementExtraction, Referen
|
|
|
7
7
|
export { AcfBiomarkerRangeAnnotationCheck, AcfBiomarkerGenericDisclaimerLogic, ManualCheck, BiomarkerCompatibility, ReferenceRangeType, AcfReferenceRange, VisualRange, NameAlias, AlternativeUnit, BiomarkerAcf, Biomarker, PipelineStep, DigitizationStatus, MeasurementValueComparator, BiomarkerValueType, DataImportFileUploadStatus, Sex, Digitization, PatientInfo, UnknownMeasurement, Measurement, DataImportFileUpload, MessagePayload, SignedUpload, ReportStyleConfig, LanguageCode, BiomarkerCustomisation, PartnerCustomPanel, ReportDisplaySettings, ReportCustomisation, OHTPartner, UploadType, } from './types/oht.types';
|
|
8
8
|
export { ErrorMessage } from './types/error.types';
|
|
9
9
|
export { makeApiCallWithRetry, parseErrorObj } from './util-ts/apiUtils';
|
|
10
|
-
export { extractValue, isBiomarkerValueNumerical, isBiomarkerExternalNoVisualRange, processAppendedMappings
|
|
10
|
+
export { extractValue, isBiomarkerValueNumerical, isBiomarkerExternalNoVisualRange, processAppendedMappings } from './util-ts/dataUtils';
|
|
11
11
|
export { readFileFromBucket, uploadFileBufferToGCS } from './util-ts/googleStorageUtils';
|
|
12
12
|
export { default as pinoLogger } from './util-ts/pinoLogger';
|
|
13
13
|
export { getGreaterThanPatterns, getLowerThanPatterns } from './util-ts/regexUtils';
|
|
14
|
-
export { getMappedBiomarkers } from './util-ts/dataUtils';
|
|
15
|
-
export { AnnotationPreviewResult, AnnotationConfig, ExtractionPath } from './util-ts/dataUtils';
|
|
14
|
+
export { getMappedBiomarkers, } from './util-ts/dataUtils';
|
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.getMappedBiomarkers = exports.getLowerThanPatterns = exports.getGreaterThanPatterns = exports.pinoLogger = exports.uploadFileBufferToGCS = exports.readFileFromBucket = exports.
|
|
6
|
+
exports.getMappedBiomarkers = exports.getLowerThanPatterns = exports.getGreaterThanPatterns = exports.pinoLogger = exports.uploadFileBufferToGCS = exports.readFileFromBucket = exports.processAppendedMappings = exports.isBiomarkerExternalNoVisualRange = exports.isBiomarkerValueNumerical = exports.extractValue = exports.parseErrorObj = exports.makeApiCallWithRetry = exports.UploadType = exports.Sex = exports.DataImportFileUploadStatus = exports.BiomarkerValueType = exports.MeasurementValueComparator = exports.DigitizationStatus = exports.PipelineStep = exports.ReferenceRangeType = exports.BiomarkerCompatibility = exports.ManualCheck = exports.AcfBiomarkerGenericDisclaimerLogic = exports.AcfBiomarkerRangeAnnotationCheck = exports.unitSynonyms = exports.generateBIMessages = exports.publishToTopic = exports.aggregateBiMessages = exports.aggregateMessages = exports.sendMessageToSlack = exports.getSlackFileIssueNotificationMessage = exports.extractValueFromGreaterLowerThan = exports.extractUnit = exports.getRangeFromPositionAndRegex = exports.parseExamValue = exports.extractReferenceAnnotation = exports.extractReferenceRanges = exports.checkValueForPlausibleValues = exports.ohtMeasurementsExtractor = exports.postFileUploadSetStatus = exports.queryFileUploadsWithFilters = exports.handleRejection = exports.isPatientAgeValid = exports.parseGender = exports.parseExternalPatientId = exports.postDataImportFileUploadToCore = void 0;
|
|
7
7
|
// ### SERVICES ###
|
|
8
8
|
var reportCreator_service_1 = require("./service/reportCreator.service");
|
|
9
9
|
Object.defineProperty(exports, "postDataImportFileUploadToCore", { enumerable: true, get: function () { return reportCreator_service_1.postDataImportFileUploadToCore; } });
|
|
@@ -56,7 +56,6 @@ Object.defineProperty(exports, "extractValue", { enumerable: true, get: function
|
|
|
56
56
|
Object.defineProperty(exports, "isBiomarkerValueNumerical", { enumerable: true, get: function () { return dataUtils_1.isBiomarkerValueNumerical; } });
|
|
57
57
|
Object.defineProperty(exports, "isBiomarkerExternalNoVisualRange", { enumerable: true, get: function () { return dataUtils_1.isBiomarkerExternalNoVisualRange; } });
|
|
58
58
|
Object.defineProperty(exports, "processAppendedMappings", { enumerable: true, get: function () { return dataUtils_1.processAppendedMappings; } });
|
|
59
|
-
Object.defineProperty(exports, "generateAnnotationPreview", { enumerable: true, get: function () { return dataUtils_1.generateAnnotationPreview; } });
|
|
60
59
|
var googleStorageUtils_1 = require("./util-ts/googleStorageUtils");
|
|
61
60
|
Object.defineProperty(exports, "readFileFromBucket", { enumerable: true, get: function () { return googleStorageUtils_1.readFileFromBucket; } });
|
|
62
61
|
Object.defineProperty(exports, "uploadFileBufferToGCS", { enumerable: true, get: function () { return googleStorageUtils_1.uploadFileBufferToGCS; } });
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;AAAA,mBAAmB;AACnB,yEAEyC;AADvC,uIAAA,8BAA8B,OAAA;AAEhC,mFAO8C;AAN5C,oIAAA,sBAAsB,OAAA;AACtB,yHAAA,WAAW,OAAA;AACX,+HAAA,iBAAiB,OAAA;AACjB,6HAAA,eAAe,OAAA;AACf,yIAAA,2BAA2B,OAAA;AAC3B,qIAAA,uBAAuB,OAAA;AAEzB,+FASoD;AARlD,4IAAA,wBAAwB,OAAA;AACxB,gJAAA,4BAA4B,OAAA;AAC5B,0IAAA,sBAAsB,OAAA;AACtB,8IAAA,0BAA0B,OAAA;AAC1B,kIAAA,cAAc,OAAA;AACd,gJAAA,4BAA4B,OAAA;AAC5B,+HAAA,WAAW,OAAA;AACX,oJAAA,gCAAgC,OAAA;AAElC,yEAEyC;AADvC,6IAAA,oCAAoC,OAAA;AAAE,2HAAA,kBAAkB,OAAA;AAE1D,yEAKyC;AAJvC,0HAAA,iBAAiB,OAAA;AACjB,4HAAA,mBAAmB,OAAA;AACnB,uHAAA,cAAc,OAAA;AACd,2HAAA,kBAAkB,OAAA;AAGpB,gBAAgB;AAChB,mEAWqC;AAFnC,mHAAA,YAAY,OAAA;AAGd,+CAiC2B;AAhCzB,6HAAA,gCAAgC,OAAA;AAChC,+HAAA,kCAAkC,OAAA;AAClC,wGAAA,WAAW,OAAA;AACX,mHAAA,sBAAsB,OAAA;AACtB,+GAAA,kBAAkB,OAAA;AAOlB,yGAAA,YAAY,OAAA;AACZ,+GAAA,kBAAkB,OAAA;AAClB,uHAAA,0BAA0B,OAAA;AAC1B,+GAAA,kBAAkB,OAAA;AAClB,uHAAA,0BAA0B,OAAA;AAC1B,gGAAA,GAAG,OAAA;AAeH,uGAAA,UAAU,OAAA;AAIZ,kBAAkB;AAClB,+CAAuE;AAA/D,gHAAA,oBAAoB,OAAA;AAAE,yGAAA,aAAa,OAAA;AAC3C,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;AAAA,mBAAmB;AACnB,yEAEyC;AADvC,uIAAA,8BAA8B,OAAA;AAEhC,mFAO8C;AAN5C,oIAAA,sBAAsB,OAAA;AACtB,yHAAA,WAAW,OAAA;AACX,+HAAA,iBAAiB,OAAA;AACjB,6HAAA,eAAe,OAAA;AACf,yIAAA,2BAA2B,OAAA;AAC3B,qIAAA,uBAAuB,OAAA;AAEzB,+FASoD;AARlD,4IAAA,wBAAwB,OAAA;AACxB,gJAAA,4BAA4B,OAAA;AAC5B,0IAAA,sBAAsB,OAAA;AACtB,8IAAA,0BAA0B,OAAA;AAC1B,kIAAA,cAAc,OAAA;AACd,gJAAA,4BAA4B,OAAA;AAC5B,+HAAA,WAAW,OAAA;AACX,oJAAA,gCAAgC,OAAA;AAElC,yEAEyC;AADvC,6IAAA,oCAAoC,OAAA;AAAE,2HAAA,kBAAkB,OAAA;AAE1D,yEAKyC;AAJvC,0HAAA,iBAAiB,OAAA;AACjB,4HAAA,mBAAmB,OAAA;AACnB,uHAAA,cAAc,OAAA;AACd,2HAAA,kBAAkB,OAAA;AAGpB,gBAAgB;AAChB,mEAWqC;AAFnC,mHAAA,YAAY,OAAA;AAGd,+CAiC2B;AAhCzB,6HAAA,gCAAgC,OAAA;AAChC,+HAAA,kCAAkC,OAAA;AAClC,wGAAA,WAAW,OAAA;AACX,mHAAA,sBAAsB,OAAA;AACtB,+GAAA,kBAAkB,OAAA;AAOlB,yGAAA,YAAY,OAAA;AACZ,+GAAA,kBAAkB,OAAA;AAClB,uHAAA,0BAA0B,OAAA;AAC1B,+GAAA,kBAAkB,OAAA;AAClB,uHAAA,0BAA0B,OAAA;AAC1B,gGAAA,GAAG,OAAA;AAeH,uGAAA,UAAU,OAAA;AAIZ,kBAAkB;AAClB,+CAAuE;AAA/D,gHAAA,oBAAoB,OAAA;AAAE,yGAAA,aAAa,OAAA;AAC3C,iDAAuI;AAA/H,yGAAA,YAAY,OAAA;AAAE,sHAAA,yBAAyB,OAAA;AAAE,6HAAA,gCAAgC,OAAA;AAAE,oHAAA,uBAAuB,OAAA;AAC1G,mEAAuF;AAA/E,wHAAA,kBAAkB,OAAA;AAAE,2HAAA,qBAAqB,OAAA;AACjD,mDAA2D;AAAnD,yHAAA,OAAO,OAAc;AAC7B,mDAAkF;AAA1E,oHAAA,sBAAsB,OAAA;AAAE,kHAAA,oBAAoB,OAAA;AACpD,iDAA0D;AAAlD,gHAAA,mBAAmB,OAAA"}
|
|
@@ -408,7 +408,6 @@ export interface AnnotationConfig {
|
|
|
408
408
|
maxLength?: number;
|
|
409
409
|
fallbackValue?: string;
|
|
410
410
|
separator?: string;
|
|
411
|
-
concatenationMode?: 'space' | 'newline' | 'comma';
|
|
412
411
|
}
|
|
413
412
|
/** Main backend biomarker mapping interface */
|
|
414
413
|
export interface BackendBiomarkerMapping {
|
|
@@ -1,31 +1,4 @@
|
|
|
1
1
|
import { UnknownMeasurementsBulk, AnnotationLabKey } from '../types/oht.types';
|
|
2
|
-
export interface AnnotationPreviewResult {
|
|
3
|
-
success: boolean;
|
|
4
|
-
text: string;
|
|
5
|
-
error?: string;
|
|
6
|
-
extractedValues: Array<{
|
|
7
|
-
labKey: string;
|
|
8
|
-
path: string;
|
|
9
|
-
value: string;
|
|
10
|
-
formatted: string;
|
|
11
|
-
required: boolean;
|
|
12
|
-
used: boolean;
|
|
13
|
-
}>;
|
|
14
|
-
}
|
|
15
|
-
export interface AnnotationConfig {
|
|
16
|
-
enabled: boolean;
|
|
17
|
-
labKeys?: AnnotationLabKey[];
|
|
18
|
-
concatenationMode?: 'space' | 'newline' | 'comma';
|
|
19
|
-
separator?: string;
|
|
20
|
-
maxLength?: number;
|
|
21
|
-
fallbackValue?: string;
|
|
22
|
-
}
|
|
23
|
-
export interface ExtractionPath {
|
|
24
|
-
path: string;
|
|
25
|
-
required: boolean;
|
|
26
|
-
format?: string;
|
|
27
|
-
defaultValue?: string;
|
|
28
|
-
}
|
|
29
2
|
export declare function isBiomarkerValueNumerical(biomarker: any): boolean;
|
|
30
3
|
export declare function isBiomarkerExternalNoVisualRange(biomarker: any): boolean;
|
|
31
4
|
export declare const extractValue: (obj: any, position?: string) => any;
|
|
@@ -44,7 +17,6 @@ export declare function processAppendedMappings(exams: any[], labKeys: Annotatio
|
|
|
44
17
|
maxLength?: number;
|
|
45
18
|
fallbackValue?: string;
|
|
46
19
|
separator?: string;
|
|
47
|
-
concatenationMode?: 'space' | 'newline' | 'comma';
|
|
48
20
|
}): {
|
|
49
21
|
success: boolean;
|
|
50
22
|
text: string;
|
|
@@ -58,15 +30,3 @@ export declare function processAppendedMappings(exams: any[], labKeys: Annotatio
|
|
|
58
30
|
used: boolean;
|
|
59
31
|
}>;
|
|
60
32
|
};
|
|
61
|
-
/**
|
|
62
|
-
* Generate annotation preview from single exam data (ohapi compatibility)
|
|
63
|
-
* Wrapper function that converts single exam to array format for processAppendedMappings
|
|
64
|
-
* @param examData - Single exam data (OHTExam or JSON blob)
|
|
65
|
-
* @param annotationConfig - Annotation configuration
|
|
66
|
-
* @param targetLabKey - Target lab key for extraction
|
|
67
|
-
* @param extractionPaths - Array of extraction paths
|
|
68
|
-
* @param prefix - Optional prefix for the result
|
|
69
|
-
* @param suffix - Optional suffix for the result
|
|
70
|
-
* @returns AnnotationPreviewResult with extracted text and values
|
|
71
|
-
*/
|
|
72
|
-
export declare function generateAnnotationPreview(examData: any, annotationConfig: AnnotationConfig, targetLabKey: string, extractionPaths: ExtractionPath[], prefix?: string, suffix?: string): AnnotationPreviewResult;
|
|
@@ -7,7 +7,6 @@ exports.updatePartnerCustomParserUnmappedLabKeys = exports.getMappedBiomarkers =
|
|
|
7
7
|
exports.isBiomarkerValueNumerical = isBiomarkerValueNumerical;
|
|
8
8
|
exports.isBiomarkerExternalNoVisualRange = isBiomarkerExternalNoVisualRange;
|
|
9
9
|
exports.processAppendedMappings = processAppendedMappings;
|
|
10
|
-
exports.generateAnnotationPreview = generateAnnotationPreview;
|
|
11
10
|
const apiUtils_1 = require("./apiUtils");
|
|
12
11
|
const pinoLogger_1 = __importDefault(require("./pinoLogger"));
|
|
13
12
|
const logger = (0, pinoLogger_1.default)();
|
|
@@ -110,15 +109,10 @@ function processAppendedMappings(exams, labKeys, filename, annotationConfig) {
|
|
|
110
109
|
required: path.required,
|
|
111
110
|
used: !!formatted
|
|
112
111
|
});
|
|
113
|
-
// Handle required paths - if required and no value,
|
|
112
|
+
// Handle required paths - if required and no value, log warning and use fallback
|
|
114
113
|
if (path.required && !rawValue && !path.defaultValue) {
|
|
115
114
|
logger.warn(`Required extraction path ${path.path} not found for labKey ${additionalLabKey.labKey}, filename: ${filename}`);
|
|
116
|
-
|
|
117
|
-
success: false,
|
|
118
|
-
text: '',
|
|
119
|
-
error: `Required path '${path.path}' is missing for labKey '${additionalLabKey.labKey}'`,
|
|
120
|
-
extractedValues: allExtractedValues
|
|
121
|
-
};
|
|
115
|
+
parts.push(`appended biomarker information for ${additionalLabKey.labKey} not found`);
|
|
122
116
|
}
|
|
123
117
|
else if (formatted) {
|
|
124
118
|
// Only add non-empty formatted values
|
|
@@ -133,26 +127,8 @@ function processAppendedMappings(exams, labKeys, filename, annotationConfig) {
|
|
|
133
127
|
const finalResult = `${additionalLabKey.prefix || ''}${combinedValue}${additionalLabKey.suffix || ''}`;
|
|
134
128
|
labKeyResults.push(finalResult);
|
|
135
129
|
}
|
|
136
|
-
// Join results based on
|
|
137
|
-
let finalText = '';
|
|
138
|
-
if (annotationConfig?.concatenationMode) {
|
|
139
|
-
switch (annotationConfig.concatenationMode) {
|
|
140
|
-
case 'space':
|
|
141
|
-
finalText = labKeyResults.join(' ');
|
|
142
|
-
break;
|
|
143
|
-
case 'newline':
|
|
144
|
-
finalText = labKeyResults.join('\n');
|
|
145
|
-
break;
|
|
146
|
-
case 'comma':
|
|
147
|
-
finalText = labKeyResults.join(', ');
|
|
148
|
-
break;
|
|
149
|
-
default:
|
|
150
|
-
finalText = labKeyResults.join(annotationConfig?.separator || ' ');
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
else {
|
|
154
|
-
finalText = labKeyResults.join(annotationConfig?.separator || ' ');
|
|
155
|
-
}
|
|
130
|
+
// Join results based on separator or default to space
|
|
131
|
+
let finalText = labKeyResults.join(annotationConfig?.separator || ' ');
|
|
156
132
|
// Apply max length if specified
|
|
157
133
|
if (annotationConfig?.maxLength && finalText.length > annotationConfig.maxLength) {
|
|
158
134
|
finalText = finalText.substring(0, annotationConfig.maxLength);
|
|
@@ -182,7 +158,7 @@ function extractFromPath(obj, path) {
|
|
|
182
158
|
const [arrKey, rest] = path.split('[*].');
|
|
183
159
|
const arr = obj?.[arrKey];
|
|
184
160
|
if (!Array.isArray(arr))
|
|
185
|
-
return
|
|
161
|
+
return obj?.[rest];
|
|
186
162
|
const values = arr.map((item) => extractFromPath(item, rest)).filter((v) => v);
|
|
187
163
|
const str = values.join(' ');
|
|
188
164
|
return str || null;
|
|
@@ -242,14 +218,12 @@ function findExamByLabKey(exams, labKey) {
|
|
|
242
218
|
return null;
|
|
243
219
|
// First, find exam with any key having value matching labKeyFirstHalf
|
|
244
220
|
const examWithlabKeyFirstHalf = exams.find(exam => {
|
|
245
|
-
|
|
246
|
-
return findObjectWithValue(examData, labKeyFirstHalf);
|
|
221
|
+
return findObjectWithValue(exam, labKeyFirstHalf);
|
|
247
222
|
});
|
|
248
223
|
if (!examWithlabKeyFirstHalf)
|
|
249
224
|
return null;
|
|
250
|
-
const examData = examWithlabKeyFirstHalf.ohtExam || examWithlabKeyFirstHalf;
|
|
251
225
|
// Then, find child object within that exam with any key having value matching labKeySecondHalf
|
|
252
|
-
return findChildObjectWithValue(
|
|
226
|
+
return findChildObjectWithValue(examWithlabKeyFirstHalf, labKeySecondHalf);
|
|
253
227
|
}
|
|
254
228
|
/**
|
|
255
229
|
* Helper function to find if an object has any key with the specified value
|
|
@@ -262,7 +236,7 @@ function findObjectWithValue(obj, targetValue) {
|
|
|
262
236
|
return false;
|
|
263
237
|
// Check if any direct property has the target value
|
|
264
238
|
for (const key in obj) {
|
|
265
|
-
if (obj[key] === targetValue)
|
|
239
|
+
if (obj[key].trim() === targetValue.trim())
|
|
266
240
|
return true;
|
|
267
241
|
}
|
|
268
242
|
return false;
|
|
@@ -308,47 +282,4 @@ function findChildObjectWithValue(parentObj, targetValue) {
|
|
|
308
282
|
}
|
|
309
283
|
return null;
|
|
310
284
|
}
|
|
311
|
-
/**
|
|
312
|
-
* Generate annotation preview from single exam data (ohapi compatibility)
|
|
313
|
-
* Wrapper function that converts single exam to array format for processAppendedMappings
|
|
314
|
-
* @param examData - Single exam data (OHTExam or JSON blob)
|
|
315
|
-
* @param annotationConfig - Annotation configuration
|
|
316
|
-
* @param targetLabKey - Target lab key for extraction
|
|
317
|
-
* @param extractionPaths - Array of extraction paths
|
|
318
|
-
* @param prefix - Optional prefix for the result
|
|
319
|
-
* @param suffix - Optional suffix for the result
|
|
320
|
-
* @returns AnnotationPreviewResult with extracted text and values
|
|
321
|
-
*/
|
|
322
|
-
function generateAnnotationPreview(examData, annotationConfig, targetLabKey, extractionPaths, prefix, suffix) {
|
|
323
|
-
if (!examData) {
|
|
324
|
-
return {
|
|
325
|
-
success: false,
|
|
326
|
-
text: '',
|
|
327
|
-
error: 'No exam data provided',
|
|
328
|
-
extractedValues: []
|
|
329
|
-
};
|
|
330
|
-
}
|
|
331
|
-
// Convert single exam to array format expected by processAppendedMappings
|
|
332
|
-
const exams = [{
|
|
333
|
-
ohtExam: examData,
|
|
334
|
-
labKey: targetLabKey
|
|
335
|
-
}];
|
|
336
|
-
// Create AnnotationLabKey from provided parameters
|
|
337
|
-
const labKey = {
|
|
338
|
-
labKey: targetLabKey,
|
|
339
|
-
extractionPaths: extractionPaths,
|
|
340
|
-
required: false, // Not used in this context
|
|
341
|
-
prefix: prefix,
|
|
342
|
-
suffix: suffix
|
|
343
|
-
};
|
|
344
|
-
// Call processAppendedMappings with single exam
|
|
345
|
-
const result = processAppendedMappings(exams, [labKey], 'webapp-preview', // filename for logging
|
|
346
|
-
{
|
|
347
|
-
maxLength: annotationConfig.maxLength,
|
|
348
|
-
fallbackValue: annotationConfig.fallbackValue,
|
|
349
|
-
separator: annotationConfig.separator,
|
|
350
|
-
concatenationMode: annotationConfig.concatenationMode
|
|
351
|
-
});
|
|
352
|
-
return result;
|
|
353
|
-
}
|
|
354
285
|
//# sourceMappingURL=dataUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataUtils.js","sourceRoot":"","sources":["../../util-ts/dataUtils.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"dataUtils.js","sourceRoot":"","sources":["../../util-ts/dataUtils.ts"],"names":[],"mappings":"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"}
|