@openhealth/oht-custom-parser-lib 0.5.46 → 0.5.48

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.
@@ -1,13 +1,6 @@
1
- import { UnknownUnits, TransformationRulesChains } from "../types/custom-parser.types";
1
+ import { UnknownUnits } from "../types/custom-parser.types";
2
2
  import { Measurement, PatientInfo, UnknownMeasurement, Exam, UnmappedLabKey, PartnerCustomization } from "../types/oht.types";
3
3
  import { ErrorMessage } from "../types/error.types";
4
- type ExamWithSyntheticId = Exam & {
5
- _syntheticId: string;
6
- };
7
- type ApplyTransformationRulesResult = {
8
- transformedExams: ExamWithSyntheticId[];
9
- applicationErrorMessages: string[];
10
- };
11
4
  /**
12
5
  * Extracts measurements from OHT report exams by processing each exam through biomarker mapping,
13
6
  * transformation rules, and value extraction.
@@ -28,7 +21,6 @@ type ApplyTransformationRulesResult = {
28
21
  * - Logs the number of mappings retrieved
29
22
  *
30
23
  * ### Step 3: Apply Transformation Rules
31
- * - Applies transformation rules to all exams using `applyTransformationRulesToExams()`
32
24
  * - Transformation rules can modify exam data before processing (e.g., normalize units, fix values)
33
25
  * - Creates a map of transformed exams for quick lookup during processing
34
26
  * - Collects and reports any transformation rule errors
@@ -127,7 +119,6 @@ type ApplyTransformationRulesResult = {
127
119
  * - `unknownUnits`: Array of units that could not be resolved
128
120
  * - `unmappedLabKeys`: Array of all labKeys (always created for every exam)
129
121
  * - `isReportCorrectlyParsed`: Boolean indicating if all measurements were parsed correctly
130
- * - `transformationRulesErrors`: Array of errors from transformation rules application
131
122
  *
132
123
  * ## Error Handling:
133
124
  * - All errors are added to the `errorMessages` array passed as parameter
@@ -147,21 +138,19 @@ type ApplyTransformationRulesResult = {
147
138
  * @param sourceFilename - Name of the source file being processed (for error reporting)
148
139
  * @param patientInfo - Patient information (sex, birthdate) for range extraction
149
140
  * @param documentDate - Document date for age calculation and range extraction
150
- * @param transformationRules - Map of labKey to transformation rule chains to apply
151
141
  * @param allowMultiMeasurementsPerBiomarker - Whether to allow multiple measurements per biomarker ID
152
142
  * @param ohtCoreApiKey - API key for OHT Core API calls
153
143
  * @param partnerId - Partner ID for fetching biomarker mappings and synonym units
154
144
  * @param errorMessages - Array to accumulate error messages (modified in-place)
155
145
  * @param isReportPreview - isReportPreview Report Simulator
156
146
  * @param partnerCustomization - `panelCustomisation` and `reportCustomisation` coming from `partnerConfig`.
157
- * @returns Promise resolving to extraction result with measurements, unknownMeasurements, unknownUnits, unmappedLabKeys, parsing status, and transformation errors
147
+ * @returns Promise resolving to extraction result with measurements, unknownMeasurements, unknownUnits, unmappedLabKeys, and parsing status
158
148
  */
159
- declare function ohtReportMeasurementsExtractor(isReportPreview: boolean, exams: Exam[], sourceFilename: string, patientInfo: PatientInfo, documentDate: Date | undefined, transformationRules: TransformationRulesChains, allowMultiMeasurementsPerBiomarker: boolean, ohtCoreApiKey: string, partnerId: string, errorMessages: ErrorMessage[], partnerCustomization?: PartnerCustomization): Promise<{
149
+ declare function ohtReportMeasurementsExtractor(isReportPreview: boolean, exams: Exam[], sourceFilename: string, patientInfo: PatientInfo, documentDate: Date | undefined, allowMultiMeasurementsPerBiomarker: boolean, ohtCoreApiKey: string, partnerId: string, errorMessages: ErrorMessage[], partnerCustomization?: PartnerCustomization): Promise<{
160
150
  measurements: Measurement[];
161
151
  unknownMeasurements: UnknownMeasurement[];
162
152
  unknownUnits: UnknownUnits[];
163
153
  unmappedLabKeys: UnmappedLabKey[];
164
154
  isReportCorrectlyParsed: boolean;
165
- transformationRulesErrors: string[];
166
155
  }>;
167
- export { ApplyTransformationRulesResult, ohtReportMeasurementsExtractor, };
156
+ export { ohtReportMeasurementsExtractor, };
@@ -43,8 +43,6 @@ const extractionUtils_1 = require("../util-ts/extractionUtils");
43
43
  const processingLogger_service_1 = require("./processingLogger.service");
44
44
  const apiUtils_1 = require("../util-ts/apiUtils");
45
45
  const oht_types_1 = require("../types/oht.types");
46
- const transformationRules_service_1 = require("./transformationRules.service");
47
- const auxiliaryFunctions_service_1 = require("./auxiliaryFunctions.service");
48
46
  const path = __importStar(require("path"));
49
47
  const fs = __importStar(require("fs"));
50
48
  // Import version from package.json file
@@ -86,96 +84,6 @@ const OHT_CORE_URL = process.env.OHT_CORE_URL;
86
84
  * Current filename being processed (global state for error reporting)
87
85
  */
88
86
  let filename = '';
89
- /**
90
- * Apply transformation rules to exams
91
- * This function applies transformation rules chain to each exam, passing all exams as context
92
- *
93
- * @param exams - Array of original exam objects with synthetic IDs
94
- * @param transformationRules - Mapping of labKey to transformation rule chains
95
- * @param patientInfo - Patient information
96
- * @param documentDate - Document date
97
- * @returns Promise<ApplyTransformationRulesResult> - Array of transformed exams and error messages
98
- */
99
- async function applyTransformationRulesToExams(exams, transformationRules, patientInfo, documentDate) {
100
- if (transformationRules.size === 0) {
101
- return {
102
- transformedExams: exams,
103
- applicationErrorMessages: []
104
- };
105
- }
106
- const transformedExams = [];
107
- // Prepare context for transformation rules
108
- const reportContext = {
109
- patient: {
110
- sex: patientInfo.sex,
111
- birthdate: patientInfo.birthdate,
112
- age: (0, auxiliaryFunctions_service_1.getPatientAge)(documentDate, patientInfo.birthdate),
113
- }
114
- };
115
- // Prepare the OHT exam data
116
- const ohtReport = {
117
- exams: exams.map(e => e.ohtExam),
118
- };
119
- processingLogger_service_1.processingLogger.logInfo('Applying transformation rules to exams...', { exams_count: exams.length, chains_count: transformationRules.size, filename });
120
- let labKeysWithRulesCount = 0;
121
- let transformedLabKeysCount = 0;
122
- const applicationErrorMessages = [];
123
- for (const exam of exams) {
124
- const labKey = exam.ohtExam.labKey;
125
- const rulesChain = transformationRules.get(labKey);
126
- if (!rulesChain || rulesChain.length === 0) {
127
- transformedExams.push(exam);
128
- continue;
129
- }
130
- labKeysWithRulesCount++;
131
- try {
132
- const result = await (0, transformationRules_service_1.applyRules)(rulesChain, exam.ohtExam, {
133
- ohtReportJson: ohtReport,
134
- contextJson: reportContext,
135
- });
136
- if (result.errors.length > 0) {
137
- processingLogger_service_1.processingLogger.addWarning('Errors applying transformation rule(s) for labKey.', 'apply_transformation_rules', {
138
- warningType: 'transformation_rule_errors',
139
- warningCategory: 'mapping',
140
- warningSeverity: 'critical',
141
- data: { labKey, errors: result.errors, filename },
142
- });
143
- applicationErrorMessages.push(`${labKey}: ${result.errors.map(e => `(rule ID ${e.ruleId}) ${e.error}`).join('; ')}`);
144
- // Keep original exam when transformation fails
145
- transformedExams.push(exam);
146
- }
147
- else {
148
- if (result.appliedRules.length > 0) {
149
- transformedLabKeysCount++;
150
- }
151
- processingLogger_service_1.processingLogger.logInfo('Done applying transformation rule(s) for labKey.', { labKey, applied_rules: result.appliedRules.length, filename });
152
- // Preserve the synthetic ID through transformation
153
- transformedExams.push({
154
- _syntheticId: exam._syntheticId,
155
- ohtExam: result.data,
156
- originalExam: exam.originalExam
157
- });
158
- }
159
- }
160
- catch (error) {
161
- processingLogger_service_1.processingLogger.logError('Failed to apply transformation rules for labKey.', error instanceof Error ? error : undefined, { labKey, filename });
162
- applicationErrorMessages.push(`${labKey}: Unhandled error occurred.`);
163
- // Keep original exam when transformation throws
164
- transformedExams.push(exam);
165
- }
166
- }
167
- processingLogger_service_1.processingLogger.logInfo('Done applying the transformation rules to exams.', {
168
- filename,
169
- exams_count: exams.length,
170
- chains_count: transformationRules.size,
171
- transformed_lab_keys_count: transformedLabKeysCount,
172
- lab_keys_with_rules_count: labKeysWithRulesCount,
173
- });
174
- return {
175
- transformedExams,
176
- applicationErrorMessages
177
- };
178
- }
179
87
  /**
180
88
  * Extracts measurements from OHT report exams by processing each exam through biomarker mapping,
181
89
  * transformation rules, and value extraction.
@@ -196,7 +104,6 @@ async function applyTransformationRulesToExams(exams, transformationRules, patie
196
104
  * - Logs the number of mappings retrieved
197
105
  *
198
106
  * ### Step 3: Apply Transformation Rules
199
- * - Applies transformation rules to all exams using `applyTransformationRulesToExams()`
200
107
  * - Transformation rules can modify exam data before processing (e.g., normalize units, fix values)
201
108
  * - Creates a map of transformed exams for quick lookup during processing
202
109
  * - Collects and reports any transformation rule errors
@@ -295,7 +202,6 @@ async function applyTransformationRulesToExams(exams, transformationRules, patie
295
202
  * - `unknownUnits`: Array of units that could not be resolved
296
203
  * - `unmappedLabKeys`: Array of all labKeys (always created for every exam)
297
204
  * - `isReportCorrectlyParsed`: Boolean indicating if all measurements were parsed correctly
298
- * - `transformationRulesErrors`: Array of errors from transformation rules application
299
205
  *
300
206
  * ## Error Handling:
301
207
  * - All errors are added to the `errorMessages` array passed as parameter
@@ -315,23 +221,21 @@ async function applyTransformationRulesToExams(exams, transformationRules, patie
315
221
  * @param sourceFilename - Name of the source file being processed (for error reporting)
316
222
  * @param patientInfo - Patient information (sex, birthdate) for range extraction
317
223
  * @param documentDate - Document date for age calculation and range extraction
318
- * @param transformationRules - Map of labKey to transformation rule chains to apply
319
224
  * @param allowMultiMeasurementsPerBiomarker - Whether to allow multiple measurements per biomarker ID
320
225
  * @param ohtCoreApiKey - API key for OHT Core API calls
321
226
  * @param partnerId - Partner ID for fetching biomarker mappings and synonym units
322
227
  * @param errorMessages - Array to accumulate error messages (modified in-place)
323
228
  * @param isReportPreview - isReportPreview Report Simulator
324
229
  * @param partnerCustomization - `panelCustomisation` and `reportCustomisation` coming from `partnerConfig`.
325
- * @returns Promise resolving to extraction result with measurements, unknownMeasurements, unknownUnits, unmappedLabKeys, parsing status, and transformation errors
230
+ * @returns Promise resolving to extraction result with measurements, unknownMeasurements, unknownUnits, unmappedLabKeys, and parsing status
326
231
  */
327
- async function ohtReportMeasurementsExtractor(isReportPreview, exams, sourceFilename, patientInfo, documentDate, transformationRules, allowMultiMeasurementsPerBiomarker, ohtCoreApiKey, partnerId, errorMessages, partnerCustomization) {
232
+ async function ohtReportMeasurementsExtractor(isReportPreview, exams, sourceFilename, patientInfo, documentDate, allowMultiMeasurementsPerBiomarker, ohtCoreApiKey, partnerId, errorMessages, partnerCustomization) {
328
233
  filename = sourceFilename;
329
234
  const measurements = [];
330
235
  const unknownMeasurements = [];
331
236
  const unknownUnits = [];
332
237
  const unmappedLabKeys = [];
333
238
  let isReportCorrectlyParsed = true;
334
- let transformationRulesErrors = [];
335
239
  // Check if we have exams
336
240
  const labKeys = exams.map(e => e.ohtExam.labKey);
337
241
  if (labKeys.length === 0) {
@@ -347,7 +251,6 @@ async function ohtReportMeasurementsExtractor(isReportPreview, exams, sourceFile
347
251
  unknownUnits,
348
252
  unmappedLabKeys,
349
253
  isReportCorrectlyParsed: false,
350
- transformationRulesErrors,
351
254
  };
352
255
  }
353
256
  processingLogger_service_1.processingLogger.logInfo(`Processing lab file with ${labKeys.length} keys, filename: ${(0, processingLogger_service_1.getRequestScopedFilename)(filename)}`);
@@ -389,34 +292,13 @@ async function ohtReportMeasurementsExtractor(isReportPreview, exams, sourceFile
389
292
  else {
390
293
  processingLogger_service_1.processingLogger.logInfo(`No biomarker mappings found in backend for partner: ${partnerId}`);
391
294
  }
392
- // Assign UUIDs to exams for tracking through transformation.
393
- // This enables support for duplicate labKeys (double-hits).
295
+ // Assign UUIDs to exams for tracking through duplicate-labKey (double-hit) support.
394
296
  const examsWithIds = exams.map((exam) => ({
395
297
  ...exam,
396
298
  _syntheticId: crypto_1.default.randomUUID(),
397
299
  }));
398
- // Apply transformation rules to all exams
399
- let transformedExamsResult = { transformedExams: [], applicationErrorMessages: [] };
400
- try {
401
- transformedExamsResult = await applyTransformationRulesToExams(examsWithIds, transformationRules, patientInfo, documentDate);
402
- }
403
- catch (error) {
404
- processingLogger_service_1.processingLogger.logError('Unhandled error while applying transformation rules to exams.', error instanceof Error ? error : undefined, { filename });
405
- errorMessages.push({
406
- destination: { slack: true, notes: true, bi: false },
407
- message: `Failed applying the transformation rules for filename ${(0, processingLogger_service_1.getRequestScopedFilename)(filename)}. ${error instanceof Error ? error.message : error}`,
408
- });
409
- }
410
- if (transformedExamsResult.applicationErrorMessages.length > 0) {
411
- transformationRulesErrors = transformedExamsResult.applicationErrorMessages;
412
- errorMessages.push({
413
- destination: { slack: false, notes: true, bi: false },
414
- message: `Failed applying some transformation rules:\n${transformedExamsResult.applicationErrorMessages.map((e) => ` - ${e}`).join("\n\n")}`,
415
- });
416
- }
417
- const transformedExams = transformedExamsResult.transformedExams;
418
300
  // Use synthetic UUID as key to support duplicate labKeys (double-hits)
419
- const transformedExamsMap = new Map(transformedExams.map(exam => [exam._syntheticId, exam]));
301
+ const transformedExamsMap = new Map(examsWithIds.map(exam => [exam._syntheticId, exam]));
420
302
  // Collect all possible OHT biomarker IDs from mapped biomarkers
421
303
  const allPossibleOHTBmIds = [];
422
304
  for (const exam of exams) {
@@ -572,20 +454,6 @@ async function ohtReportMeasurementsExtractor(isReportPreview, exams, sourceFile
572
454
  isMeasurementCorrectlyParsed = false;
573
455
  }
574
456
  let { valueType, alphanumericalValue, numberValue, valueComparator, isValueParsedCorrectly } = (0, extractionUtils_1.ohtReportParseExamValue)(transformedExamObj, ohtBiomarker);
575
- if (!isValueParsedCorrectly) {
576
- processingLogger_service_1.processingLogger.addWarning(`Value not extracted correctly for "${finalOhtBmId}|${transformedExamObj.labKey}", filename: ${(0, processingLogger_service_1.getRequestScopedFilename)(filename)}`, 'extract_measurements', {
577
- warningType: 'value_extraction_failed',
578
- warningCategory: 'measurements',
579
- warningSeverity: 'degraded',
580
- data: { ohtBmId: finalOhtBmId, labKey },
581
- });
582
- errorMessages.push({
583
- destination: { slack: true, notes: true, bi: true },
584
- message: `Value not extracted correctly for:[PLACEHOLDER]`,
585
- item: `${bmInfo}`
586
- });
587
- isMeasurementCorrectlyParsed = false;
588
- }
589
457
  if ((0, dataUtils_1.isNumericalWithoutValidResult)(valueType, numberValue, alphanumericalValue)) {
590
458
  const alphanumericalValueTrimmed = alphanumericalValue?.trim() ?? '';
591
459
  const unknownMeasurement = {
@@ -609,12 +477,26 @@ async function ohtReportMeasurementsExtractor(isReportPreview, exams, sourceFile
609
477
  unknownMeasurements.push(unknownMeasurement);
610
478
  continue;
611
479
  }
480
+ if (!isValueParsedCorrectly) {
481
+ processingLogger_service_1.processingLogger.addWarning(`Value not extracted correctly for "${finalOhtBmId}|${transformedExamObj.labKey}", filename: ${(0, processingLogger_service_1.getRequestScopedFilename)(filename)}`, 'extract_measurements', {
482
+ warningType: 'value_extraction_failed',
483
+ warningCategory: 'measurements',
484
+ warningSeverity: 'degraded',
485
+ data: { ohtBmId: finalOhtBmId, labKey },
486
+ });
487
+ errorMessages.push({
488
+ destination: { slack: true, notes: true, bi: true },
489
+ message: `Value not extracted correctly for:[PLACEHOLDER]`,
490
+ item: `${bmInfo}`
491
+ });
492
+ isMeasurementCorrectlyParsed = false;
493
+ }
612
494
  // Check if the value is plausible
613
495
  if (isValueParsedCorrectly && valueType === 'NUMERICAL') {
614
496
  const isPlausibleValue = numberValue !== null && (0, extractionUtils_1.ohtReportCheckValueForPlausibleValues)(finalOhtBmId, transformedExamObj.labKey, ohtBiomarker, unit, numberValue, isUnitParsedCorrectly, filename);
615
497
  if (!isPlausibleValue) {
616
498
  errorMessages.push({
617
- destination: { slack: true, notes: true, bi: true },
499
+ destination: { slack: false, notes: true, bi: true },
618
500
  message: `Value is not plausible for:[PLACEHOLDER]`,
619
501
  item: `${bmInfo}, value:${numberValue}${unit}`
620
502
  });
@@ -681,7 +563,7 @@ async function ohtReportMeasurementsExtractor(isReportPreview, exams, sourceFile
681
563
  }
682
564
  let extractedAnnotation;
683
565
  // TODO: always extract annotation? or only if annotationConfig.enabled is true?
684
- extractedAnnotation = (0, extractionUtils_1.ohtReportExtractReferenceAnnotation)(annotationConfig, transformedExamObj, patientInfo, documentDate, transformedExams, filename);
566
+ extractedAnnotation = (0, extractionUtils_1.ohtReportExtractReferenceAnnotation)(annotationConfig, transformedExamObj, patientInfo, documentDate, examsWithIds, filename);
685
567
  // Use material and method directly from ohtExam
686
568
  const material = transformedExamObj?.material ?? '';
687
569
  const method = transformedExamObj?.method ?? '';
@@ -782,7 +664,6 @@ async function ohtReportMeasurementsExtractor(isReportPreview, exams, sourceFile
782
664
  unknownUnits,
783
665
  unmappedLabKeys,
784
666
  isReportCorrectlyParsed,
785
- transformationRulesErrors,
786
667
  };
787
668
  }
788
669
  //# sourceMappingURL=ohtReportMeasurementsExtractor.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ohtReportMeasurementsExtractor.service.js","sourceRoot":"","sources":["../../service/ohtReportMeasurementsExtractor.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ohtReportMeasurementsExtractor.service.js","sourceRoot":"","sources":["../../service/ohtReportMeasurementsExtractor.service.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,6 @@ const processingLogger_service_1 = require("./processingLogger.service");
10
10
  const dotenv_1 = __importDefault(require("dotenv"));
11
11
  const dataUtils_1 = require("../util-ts/dataUtils");
12
12
  const apiUtils_1 = require("../util-ts/apiUtils");
13
- const errorHandling_service_1 = require("./errorHandling.service");
14
13
  dotenv_1.default.config({ path: `.env.local` });
15
14
  const OHT_CORE_URL = process.env.OHT_CORE_URL;
16
15
  /**
@@ -147,9 +146,8 @@ async function postDataImportFileUploadToCore(dataImportFileUpload, unknownMeasu
147
146
  // - Handle LabOrderID version deprecation (if labOrderId is present)
148
147
  // - Set status to READY
149
148
  // - Trigger all notifications and webhooks
150
- // OHT Core `fileuploadspubsub.IngestionMessage` (see oht-core pkg/fileuploads/pubsub/message.go).
151
- // Minimal `userToken`: core uses userId → LoggedUserID; audit uses id, partnerId (TenantID).
152
- const ingestionBody = {
149
+ // Use ingestion endpoint - handles report creation and READY status automatically
150
+ const ingestionResponse = await (0, apiUtils_1.makeApiCallWithRetry)('patch', ohtCoreIngestionUrl, {
153
151
  ...dataImportFileUpload,
154
152
  status: patchStatus,
155
153
  rejectReason,
@@ -157,47 +155,8 @@ async function postDataImportFileUploadToCore(dataImportFileUpload, unknownMeasu
157
155
  ...dataImportFileUpload.digitalization,
158
156
  pipelineStep: oht_types_1.PipelineStep.SENDING_RESULTS,
159
157
  },
160
- };
161
- const ingestionMessage = {
162
- schemaVersion: 1,
163
- dataImportFileUploadId: dataImportFileUpload.id,
164
- body: ingestionBody,
165
- userToken: {
166
- id: ownerUserId,
167
- userId: ownerUserId,
168
- partnerId: dataImportFileUpload.partnerId,
169
- },
170
- };
171
- // const ingestionResponse = await makeApiCallWithRetry(
172
- // 'patch',
173
- // ohtCoreIngestionUrl,
174
- // ingestionBody,
175
- // ohtCoreApiKey
176
- // );
177
- // processingLogger.logInfo(
178
- // `Resp: PATCH ingestion status: ${patchStatus} ${ohtCoreIngestionUrl}, filename: ${filename}`,
179
- // { response: ingestionResponse.data }
180
- // );
181
- const pubsubIngestionTopic = process.env.PUBSUB_FILE_UPLOADS_INGESTION_TOPIC ?? '';
182
- const pubsubProjectId = process.env.PUBSUB_FILE_UPLOADS_INGESTION_PROJECT_ID ?? '';
183
- if (pubsubIngestionTopic && pubsubProjectId) {
184
- if (!dataImportFileUpload.id?.trim()) {
185
- processingLogger_service_1.processingLogger.logError(`Pub/Sub: skipping file-uploads ingestion publish — missing dataImportFileUpload.id, filename: ${filename}`, undefined, { topic: pubsubIngestionTopic });
186
- }
187
- else {
188
- try {
189
- await (0, errorHandling_service_1.publishToTopic)(pubsubIngestionTopic, Buffer.from(JSON.stringify(ingestionMessage), 'utf8'), pubsubProjectId);
190
- processingLogger_service_1.processingLogger.logInfo(`Pub/Sub: published file-uploads ingestion message, topic: ${pubsubIngestionTopic}, filename: ${filename}`, { file_upload_id: dataImportFileUpload.id });
191
- }
192
- catch (pubsubError) {
193
- processingLogger_service_1.processingLogger.logError(`Pub/Sub: failed to publish file-uploads ingestion message, filename: ${filename}`, pubsubError instanceof Error ? pubsubError : undefined, {
194
- file_upload_id: dataImportFileUpload.id,
195
- topic: pubsubIngestionTopic,
196
- error_details: (0, apiUtils_1.parseErrorObj)(pubsubError),
197
- });
198
- }
199
- }
200
- }
158
+ }, ohtCoreApiKey);
159
+ processingLogger_service_1.processingLogger.logInfo(`Resp: PATCH ingestion status: ${patchStatus} ${ohtCoreIngestionUrl}, filename: ${filename}`, { response: ingestionResponse.data });
201
160
  // Return null since ingestion is asynchronous and we don't have the updated file upload object
202
161
  // The caller should not rely on the returned value for status checking
203
162
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"reportCreator.service.js","sourceRoot":"","sources":["../../service/reportCreator.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reportCreator.service.js","sourceRoot":"","sources":["../../service/reportCreator.service.ts"],"names":[],"mappings":";;;;;AAsTS,wEAA8B;AAAE,0DAAuB;AAtThE,kDAQ4B;AAE5B,yEAA8D;AAE9D,oDAA4B;AAC5B,oDAAoH;AACpH,kDAA0E;AAC1E,gBAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;AAEtC,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;AAE9C;;;GAGG;AACH,KAAK,UAAU,uBAAuB,CACpC,eAAuB,EACvB,YAA2B,EAC3B,mBAAyC,EACzC,QAAgB,EAChB,YAA4B,EAC5B,SAAiB,EACjB,uBAAgC,EAChC,KAAa,EACb,aAAqB;IAErB,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CACb,iEAAiE,QAAQ,EAAE,CAC5E,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,GAAG,uBAAuB;QAClC,CAAC,CAAC,sCAA0B,CAAC,KAAK;QAClC,CAAC,CAAC,sCAA0B,CAAC,UAAU,CAAC;IAE1C,MAAM,MAAM,GAAG,GAAG,YAAY,sBAAsB,eAAe,EAAE,CAAC;IAEtE,mCAAmC;IACnC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,IAAA,8CAAkC,EACtC,SAAS,EACT,YAAY,EACZ,aAAa,CACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,2CAAgB,CAAC,QAAQ,CACvB,qDAAqD,QAAQ,EAAE,EAC/D,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EACzD;gBACE,KAAK,EAAE,IAAA,wBAAa,EAAC,KAAK,CAAC;gBAC3B,SAAS,EAAE,SAAS;gBACpB,iBAAiB,EAAE,YAAY,CAAC,MAAM;aACvC,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,wDAAwD;IACxD,MAAM,WAAW,GAAG;QAClB,MAAM,EAAE,MAAM;QACd,YAAY,EAAE,YAAY,IAAI,EAAE;QAChC,mBAAmB,EAAE,mBAAmB,IAAI,EAAE;QAC9C,KAAK,EAAE,KAAK;KACb,CAAC;IAEF,2CAAgB,CAAC,OAAO,CACtB,oEAAoE,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,MAAM,kBAAkB,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,MAAM,oCAAoC,QAAQ,EAAE,EACjM;QACE,QAAQ;QACR,iBAAiB,EAAE,eAAe;QAClC,kBAAkB,EAAE,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,MAAM;QAC/C,0BAA0B,EAAE,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,MAAM;QAC9D,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE;KACzC,CACF,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,IAAA,+BAAoB,EACzC,MAAM,EACN,MAAM,EACN,WAAW,EACX,aAAa,CACd,CAAC;QAEF,MAAM,YAAY,GAAG,QAAQ,EAAE,IAAI,CAAC;QACpC,2CAAgB,CAAC,OAAO,CACtB,8EAA8E,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,MAAM,kBAAkB,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,MAAM,oCAAoC,QAAQ,EAAE,EAC3M;YACE,QAAQ;YACR,iBAAiB,EAAE,eAAe;YAClC,kBAAkB,EAAE,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,MAAM;YAC/C,0BAA0B,EAAE,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,MAAM;YAC9D,WAAW,EAAE,QAAQ,EAAE,MAAM;YAC7B,gBAAgB,EAAE,OAAO,YAAY,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;YAC9F,eAAe,EAAE,YAAY,EAAE,MAAM;YACrC,QAAQ,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;SACjC,CACF,CAAC;IACJ,CAAC;IAAC,OAAO,QAAQ,EAAE,CAAC;QAClB,2CAAgB,CAAC,QAAQ,CACvB,qFAAqF,QAAQ,EAAE,EAC/F,QAAQ,YAAY,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAChD;YACE,QAAQ;YACR,iBAAiB,EAAE,eAAe;YAClC,kBAAkB,EAAE,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,MAAM;YAC/C,0BAA0B,EAAE,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,MAAM;YAC9D,aAAa,EAAE,IAAA,wBAAa,EAAC,QAAe,CAAC;YAC7C,aAAa,EAAG,IAAA,wBAAa,EAAC,QAAe,CAAS,CAAC,YAAY;SACpE,CACF,CAAC;QAEF,uCAAuC;QACvC,MAAM,QAAQ,CAAC;IACjB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,8BAA8B,CAC3C,oBAA0C,EAC1C,mBAA4C,EAC5C,YAA4B,EAC5B,cAAkC,EAClC,YAAgC,EAChC,uBAAgC,EAChC,QAAgB,EAChB,aAAqB;IAErB,IAAI,MAAM,GAAG,uBAAuB;QAClC,CAAC,CAAC,sCAA0B,CAAC,SAAS;QACtC,CAAC,CAAC,sCAA0B,CAAC,UAAU,CAAC;IAE1C,MAAM,WAAW,GAAG,cAAc,IAAI,MAAM,CAAC;IAC7C,MAAM,mBAAmB,GAAG,GAAG,YAAY,oBAAoB,oBAAoB,CAAC,EAAE,YAAY,CAAC;IACnG,MAAM,wBAAwB,GAAG,GAAG,YAAY,oBAAoB,oBAAoB,CAAC,EAAE,iBAAiB,CAAC;IAE7G,yEAAyE;IACzE,MAAM,cAAc,GAAG,GAAG,YAAY,4CAA4C,oBAAoB,CAAC,EAAE,EAAE,CAAC;IAC5G,MAAM,mBAAmB,GAAG,MAAM,IAAA,+BAAoB,EACpD,KAAK,EACL,cAAc,EACd,IAAI,EACJ,aAAa,CACd,CAAC;IAEF,2CAAgB,CAAC,OAAO,CACtB,8DAA8D,oBAAoB,CAAC,EAAE,eAAe,QAAQ,EAAE,EAC9G,EAAE,QAAQ,EAAE,mBAAmB,CAAC,IAAI,EAAE,CACvC,CAAC;IAEF,IAAI,CAAC,mBAAmB,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;QAC5C,2CAAgB,CAAC,QAAQ,CACvB,qEAAqE,oBAAoB,CAAC,EAAE,eAAe,QAAQ,EAAE,EACrH,SAAS,EACT,EAAE,QAAQ,EAAE,mBAAmB,EAAE,IAAI,EAAE,CACxC,CAAC;QACF,MAAM,IAAI,KAAK,CAAC,0CAA0C,oBAAoB,CAAC,EAAE,EAAE,CAAC,CAAC;IACvF,CAAC;IAED,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC;IAEzD,2CAA2C;IAC3C,MAAM,WAAW,GAAG;QAClB,SAAS,EAAE,oBAAoB,EAAE,WAAW,EAAE,SAAS,IAAI,EAAE;QAC7D,QAAQ,EAAE,oBAAoB,EAAE,WAAW,EAAE,QAAQ,IAAI,EAAE;QAC3D,KAAK,EAAE,oBAAoB,EAAE,WAAW,EAAE,KAAK,IAAI,EAAE;QACrD,SAAS,EAAE,oBAAoB,EAAE,WAAW,EAAE,SAAS,IAAI,IAAI;QAC/D,kEAAkE;QAClE,GAAG,EAAE,oBAAoB,EAAE,WAAW,EAAE,GAAG,IAAI,EAAE;QACjD,GAAG,EAAE,oBAAoB,EAAE,WAAW,EAAE,GAAG,IAAI,IAAI;QACnD,MAAM,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,IAAI,IAAI;QACzD,UAAU,EAAE,oBAAoB,EAAE,WAAW,EAAE,UAAU,IAAI,EAAE;KAChE,CAAC;IAEF,MAAM,OAAO,GAAG,GAAG,YAAY,kBAAkB,WAAW,EAAE,CAAC;IAC/D,MAAM,YAAY,GAAG,MAAM,IAAA,+BAAoB,EAC7C,OAAO,EACP,OAAO,EACP,WAAW,EACX,aAAa,CACd,CAAC;IAEF,2CAAgB,CAAC,OAAO,CACtB,8BAA8B,WAAW,eAAe,QAAQ,EAAE,EAClE,EAAE,QAAQ,EAAE,YAAY,CAAC,IAAI,EAAE,CAChC,CAAC;IAEF,IAAI,CAAC;QACH,6DAA6D;QAC7D,IAAI,mBAAmB,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC;gBACH,MAAM,IAAA,oDAAwC,EAC5C,oBAAoB,CAAC,SAAS,EAC9B,mBAAmB,EACnB,aAAa,CACd,CAAC;gBACF,2CAAgB,CAAC,OAAO,CACtB,+DAA+D,QAAQ,EAAE,EACzE;oBACE,UAAU,EAAE,oBAAoB,CAAC,SAAS;oBAC1C,0BAA0B,EAAE,mBAAmB,CAAC,eAAe,CAAC,MAAM;iBACvE,CACF,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,2CAAgB,CAAC,QAAQ,CACvB,4DAA4D,QAAQ,EAAE,EACtE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAC1C;oBACE,UAAU,EAAE,oBAAoB,CAAC,SAAS;oBAC1C,0BAA0B,EAAE,mBAAmB,CAAC,eAAe,CAAC,MAAM;oBACtE,aAAa,EAAE,IAAA,wBAAa,EAAC,KAAK,CAAC;iBACpC,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC;gBACH,MAAM,IAAA,8CAAkC,EACtC,oBAAoB,CAAC,SAAS,EAC9B,YAAY,EACZ,aAAa,CACd,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,2CAAgB,CAAC,QAAQ,CACvB,qDAAqD,QAAQ,EAAE,EAC/D,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAC1C;oBACE,UAAU,EAAE,oBAAoB,CAAC,SAAS;oBAC1C,mBAAmB,EAAE,YAAY,CAAC,MAAM;oBACxC,aAAa,EAAE,IAAA,wBAAa,EAAC,KAAK,CAAC;iBACpC,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QAED,mGAAmG;QACnG,gGAAgG;QAChG,+CAA+C;QAC/C,kBAAkB;QAClB,qEAAqE;QACrE,wBAAwB;QACxB,2CAA2C;QAE3C,kFAAkF;QAClF,MAAM,iBAAiB,GAAG,MAAM,IAAA,+BAAoB,EAClD,OAAO,EACP,mBAAmB,EACnB;YACE,GAAG,oBAAoB;YACvB,MAAM,EAAE,WAAW;YACnB,YAAY;YACZ,cAAc,EAAE;gBACd,GAAG,oBAAoB,CAAC,cAAc;gBACtC,YAAY,EAAE,wBAAY,CAAC,eAAe;aAC3C;SACF,EACD,aAAa,CACd,CAAC;QAEF,2CAAgB,CAAC,OAAO,CACtB,iCAAiC,WAAW,IAAI,mBAAmB,eAAe,QAAQ,EAAE,EAC5F,EAAE,QAAQ,EAAE,iBAAiB,CAAC,IAAI,EAAE,CACrC,CAAC;QAEF,+FAA+F;QAC/F,uEAAuE;QACvE,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,2CAAgB,CAAC,QAAQ,CACvB,mCAAmC,mBAAmB,cAAc,QAAQ,EAAE,EAC9E,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAC1C,EAAE,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,IAAA,wBAAa,EAAC,KAAK,CAAC,EAAE,CAC1D,CAAC;QAEF,wCAAwC;QACxC,IAAI,CAAC;YACH,MAAM,IAAA,+BAAoB,EACxB,OAAO,EACP,wBAAwB,EACxB;gBACE,MAAM,EAAE,8BAAkB,CAAC,KAAK;gBAChC,YAAY,EAAE,wBAAY,CAAC,eAAe;gBAC1C,gBAAgB,EAAE,YAAY;aAC/B,EACD,aAAa,CACd,CAAC;QACJ,CAAC;QAAC,OAAO,mBAAmB,EAAE,CAAC;YAC7B,2CAAgB,CAAC,QAAQ,CACvB,qDAAqD,QAAQ,EAAE,EAC/D,mBAAmB,YAAY,KAAK,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,EACtE,EAAE,oBAAoB,EAAE,IAAA,wBAAa,EAAC,mBAAmB,CAAC,EAAE,CAC7D,CAAC;QACJ,CAAC;QAED,8EAA8E;QAC9E,0FAA0F;QAC1F,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -10,9 +10,9 @@ import type { TransformationRule, ApplyRulesResult, ApplyRulesOptions, Validatio
10
10
  * @param options - Optional configuration for rule application
11
11
  * @param options.ohtReportJson - OHT Report/full document JSON (available as $report in expressions)
12
12
  * @param options.contextJson - Context JSON like patient info (available as $context in expressions)
13
- * @returns Promise<ApplyRulesResult> - Result containing transformed data, applied rule IDs, and any errors
13
+ * @returns Promise<ApplyRulesResult<TData>> - Result containing transformed data, applied rule IDs, and any errors
14
14
  */
15
- export declare const applyRules: (rules: TransformationRule[], inputData: Record<string, unknown>, options?: ApplyRulesOptions) => Promise<ApplyRulesResult>;
15
+ export declare const applyRules: <TData extends object = Record<string, unknown>>(rules: TransformationRule[], inputData: TData, options?: ApplyRulesOptions) => Promise<ApplyRulesResult<TData>>;
16
16
  /**
17
17
  * Validate a JSONata expression
18
18
  *
@@ -99,9 +99,11 @@ const applyRule = async (rule, data, options = {}) => {
99
99
  * @param options - Optional configuration for rule application
100
100
  * @param options.ohtReportJson - OHT Report/full document JSON (available as $report in expressions)
101
101
  * @param options.contextJson - Context JSON like patient info (available as $context in expressions)
102
- * @returns Promise<ApplyRulesResult> - Result containing transformed data, applied rule IDs, and any errors
102
+ * @returns Promise<ApplyRulesResult<TData>> - Result containing transformed data, applied rule IDs, and any errors
103
103
  */
104
104
  const applyRules = async (rules, inputData, options = {}) => {
105
+ // JSONata operates on plain Record<string, unknown> internally; TData is preserved for callers.
106
+ const record = inputData;
105
107
  const result = await rules.reduce(async (accPromise, rule) => {
106
108
  const acc = await accPromise;
107
109
  try {
@@ -136,7 +138,7 @@ const applyRules = async (rules, inputData, options = {}) => {
136
138
  };
137
139
  }
138
140
  }, Promise.resolve({
139
- data: { ...inputData },
141
+ data: { ...record },
140
142
  appliedRules: [],
141
143
  errors: [],
142
144
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"transformationRules.service.js","sourceRoot":"","sources":["../../service/transformationRules.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transformationRules.service.js","sourceRoot":"","sources":["../../service/transformationRules.service.ts"],"names":[],"mappings":"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"}
@@ -13,13 +13,13 @@ export interface TransformationRule {
13
13
  sampleContextJson?: string;
14
14
  }
15
15
  export interface TransformationContext {
16
- ohtReport: Record<string, unknown>;
16
+ ohtReport: object;
17
17
  ohtExam: Record<string, unknown>;
18
- context: Record<string, unknown>;
18
+ context: object;
19
19
  }
20
- export interface ApplyRulesResult {
20
+ export interface ApplyRulesResult<TData extends object = Record<string, unknown>> {
21
21
  success: boolean;
22
- data: Record<string, unknown>;
22
+ data: TData;
23
23
  appliedRules: string[];
24
24
  errors: Array<{
25
25
  ruleId: string;
@@ -30,11 +30,11 @@ export interface ApplyRulesOptions {
30
30
  /**
31
31
  * The full/global document (OHT Report) accessible inside JSONata expressions via $report
32
32
  */
33
- ohtReportJson?: Record<string, unknown>;
33
+ ohtReportJson?: object;
34
34
  /**
35
35
  * Additional context (e.g., patient info) accessible inside JSONata expressions via $context
36
36
  */
37
- contextJson?: Record<string, unknown>;
37
+ contextJson?: object;
38
38
  }
39
39
  export interface ValidationResult {
40
40
  valid: boolean;