@openhealth/oht-custom-parser-lib 0.5.22 → 0.5.24

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 CHANGED
@@ -18,3 +18,5 @@ export { default as pinoLogger } from './util-ts/pinoLogger';
18
18
  export { getGreaterThanPatterns, getLowerThanPatterns } from './util-ts/regexUtils';
19
19
  export { getMappedBiomarkers, getMappedBiomarkersLatest } from './util-ts/dataUtils';
20
20
  export { parseRange } from './util-ts/extractionUtils';
21
+ export { lisCsvToExamRows, lisXmlToJson, } from './util-ts/mapperUtils';
22
+ export type { LisCsvRow } from './util-ts/mapperUtils';
package/dist/index.js CHANGED
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.processingLogger = exports.mapErrorToRejectReason = exports.extractFormattedRejectReason = exports.shouldSendSlackNotification = exports.ValidationError = exports.handleError = exports.getRejectReason = exports.getErrorMessage = exports.ERROR_MESSAGES = exports.ERROR_CATALOG = exports.ErrorCode = exports.RejectReason = 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.validateTransformationRuleExpression = exports.applyTransformationRules = 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.ohtReportMeasurementsExtractor = exports.postFileUploadSetStatus = exports.queryFileUploadsWithFilters = exports.handleRejection = exports.isPatientAgeValid = exports.parseGender = exports.parseExternalPatientId = exports.postReportPreviewToCore = exports.postDataImportFileUploadToCore = void 0;
7
- exports.parseRange = exports.getMappedBiomarkersLatest = exports.getMappedBiomarkers = exports.getLowerThanPatterns = exports.getGreaterThanPatterns = exports.pinoLogger = exports.uploadFileBufferToGCS = exports.readFileFromBucket = exports.applyFormat = exports.extractFromPath = exports.resolveUnitFromSynonyms = exports.fetchSynonymUnits = exports.processAppendedMappings = exports.isBiomarkerExternalNoVisualRange = exports.isBiomarkerValueNumerical = exports.extractValue = exports.parseErrorObj = exports.makeApiCallWithRetry = exports.runWithContextAsync = exports.runWithContext = exports.getRequestScopedFilename = exports.getRequestIdFromContext = void 0;
7
+ exports.lisXmlToJson = exports.lisCsvToExamRows = exports.parseRange = exports.getMappedBiomarkersLatest = exports.getMappedBiomarkers = exports.getLowerThanPatterns = exports.getGreaterThanPatterns = exports.pinoLogger = exports.uploadFileBufferToGCS = exports.readFileFromBucket = exports.applyFormat = exports.extractFromPath = exports.resolveUnitFromSynonyms = exports.fetchSynonymUnits = exports.processAppendedMappings = exports.isBiomarkerExternalNoVisualRange = exports.isBiomarkerValueNumerical = exports.extractValue = exports.parseErrorObj = exports.makeApiCallWithRetry = exports.runWithContextAsync = exports.runWithContext = exports.getRequestScopedFilename = exports.getRequestIdFromContext = void 0;
8
8
  // ### SERVICES ###
9
9
  var reportCreator_service_1 = require("./service/reportCreator.service");
10
10
  Object.defineProperty(exports, "postDataImportFileUploadToCore", { enumerable: true, get: function () { return reportCreator_service_1.postDataImportFileUploadToCore; } });
@@ -100,4 +100,7 @@ Object.defineProperty(exports, "getMappedBiomarkers", { enumerable: true, get: f
100
100
  Object.defineProperty(exports, "getMappedBiomarkersLatest", { enumerable: true, get: function () { return dataUtils_2.getMappedBiomarkersLatest; } });
101
101
  var extractionUtils_1 = require("./util-ts/extractionUtils");
102
102
  Object.defineProperty(exports, "parseRange", { enumerable: true, get: function () { return extractionUtils_1.parseRange; } });
103
+ var mapperUtils_1 = require("./util-ts/mapperUtils");
104
+ Object.defineProperty(exports, "lisCsvToExamRows", { enumerable: true, get: function () { return mapperUtils_1.lisCsvToExamRows; } });
105
+ Object.defineProperty(exports, "lisXmlToJson", { enumerable: true, get: function () { return mapperUtils_1.lisXmlToJson; } });
103
106
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;AAAA,mBAAmB;AACnB,yEAGyC;AAFvC,uIAAA,8BAA8B,OAAA;AAC9B,gIAAA,uBAAuB,OAAA;AAEzB,mFAQ8C;AAP5C,oIAAA,sBAAsB,OAAA;AACtB,yHAAA,WAAW,OAAA;AACX,+HAAA,iBAAiB,OAAA;AACjB,6HAAA,eAAe,OAAA;AACf,yIAAA,2BAA2B,OAAA;AAC3B,qIAAA,uBAAuB,OAAA;AAIzB,2GAE0D;AADxD,wJAAA,8BAA8B,OAAA;AAGhC,+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;AAGlC,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;AAEpB,qFAG+C;AAF7C,uIAAA,UAAU,OAA4B;AACtC,mJAAA,yBAAyB,OAAwC;AAGnE,gBAAgB;AAChB,mEAaqC;AAJnC,mHAAA,YAAY,OAAA;AAKd,+CA8C2B;AA7CzB,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;AAgBH,uGAAA,UAAU,OAAA;AAEV,yGAAA,YAAY,OAAA;AAYd,mDAO6B;AAL3B,wGAAA,SAAS,OAAA;AACT,4GAAA,aAAa,OAAA;AACb,6GAAA,cAAc,OAAA;AACd,8GAAA,eAAe,OAAA;AACf,8GAAA,eAAe,OAAA;AAEjB,2FAMkD;AALhD,6HAAA,WAAW,OAAA;AACX,iIAAA,eAAe,OAAA;AACf,6IAAA,2BAA2B,OAAA;AAC3B,8IAAA,4BAA4B,OAAA;AAC5B,wIAAA,sBAAsB,OAAA;AAUxB,4BAA4B;AAC5B,+EAQ4C;AAP1C,4HAAA,gBAAgB,OAAA;AAGhB,mIAAA,uBAAuB,OAAA;AACvB,oIAAA,wBAAwB,OAAA;AACxB,0HAAA,cAAc,OAAA;AACd,+HAAA,mBAAmB,OAAA;AAGrB,kBAAkB;AAClB,+CAAuE;AAA/D,gHAAA,oBAAoB,OAAA;AAAE,yGAAA,aAAa,OAAA;AAC3C,iDAAiN;AAAzM,yGAAA,YAAY,OAAA;AAAE,sHAAA,yBAAyB,OAAA;AAAE,6HAAA,gCAAgC,OAAA;AAAE,oHAAA,uBAAuB,OAAA;AAAE,8GAAA,iBAAiB,OAAA;AAAE,oHAAA,uBAAuB,OAAA;AAAE,4GAAA,eAAe,OAAA;AAAE,wGAAA,WAAW,OAAA;AACpL,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,iDAAmF;AAA3E,gHAAA,mBAAmB,OAAA;AAAE,sHAAA,yBAAyB,OAAA;AACtD,6DAAqD;AAA7C,6GAAA,UAAU,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
@@ -66,16 +66,16 @@ function parseRange(exam, patientInfo) {
66
66
  const upperAge = parseInt(rangeMatch[2]);
67
67
  return patientAge >= lowerAge && patientAge <= upperAge;
68
68
  }
69
- // Greater than format: ">70" or "70+"
70
- const greaterThanMatch = ageStr.match(/^>?(\d+)\+?$/);
69
+ // Greater than format: ">70", ">=70", "70+"
70
+ const greaterThanMatch = ageStr.match(/^(?:>=|>?)(\d+)\+?$/);
71
71
  if (greaterThanMatch) {
72
- const minAge = parseInt(greaterThanMatch[1]);
72
+ const minAge = parseInt(greaterThanMatch[1], 10);
73
73
  return patientAge >= minAge;
74
74
  }
75
- // Less than format: "<10"
76
- const lessThanMatch = ageStr.match(/^<(\d+)$/);
75
+ // Less than format: "<10", "<=10"
76
+ const lessThanMatch = ageStr.match(/^(?:<=|<)(\d+)$/);
77
77
  if (lessThanMatch) {
78
- const maxAge = parseInt(lessThanMatch[1]);
78
+ const maxAge = parseInt(lessThanMatch[1], 10);
79
79
  return patientAge < maxAge;
80
80
  }
81
81
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"extractionUtils.js","sourceRoot":"","sources":["../../util-ts/extractionUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extractionUtils.js","sourceRoot":"","sources":["../../util-ts/extractionUtils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /** One parsed row: keys from the CSV header, values as strings. */
2
+ export type LisCsvRow = Record<string, string>;
3
+ /**
4
+ * LIS CSV (`;`, quoted multiline fields) → rows. Column names come from the header; one row = one logical line.
5
+ */
6
+ export declare function lisCsvToExamRows(csv: string): LisCsvRow[];
7
+ /**
8
+ * LIS / AOL-style XML → plain JS object (xml2js: attrs merged into elements, no trim).
9
+ * Uses `explicitArray: false` so single text/child nodes are strings/objects, not `[value]`.
10
+ * Repeated sibling tags (e.g. several `exame`) still parse as arrays.
11
+ */
12
+ export declare function lisXmlToJson(xml: string): Promise<unknown>;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.lisCsvToExamRows = lisCsvToExamRows;
4
+ exports.lisXmlToJson = lisXmlToJson;
5
+ const sync_1 = require("csv-parse/sync");
6
+ const xml2js_1 = require("xml2js");
7
+ const lisCsvParseOptions = {
8
+ columns: true,
9
+ skip_empty_lines: true,
10
+ bom: true,
11
+ relax_column_count: true,
12
+ delimiter: ';',
13
+ };
14
+ function parseLisCsvRaw(csv) {
15
+ if (typeof csv !== 'string') {
16
+ throw new TypeError('lisCsvToExamRows: expected a string');
17
+ }
18
+ if (csv.trim() === '') {
19
+ return [];
20
+ }
21
+ return (0, sync_1.parse)(csv, lisCsvParseOptions);
22
+ }
23
+ /**
24
+ * LIS CSV (`;`, quoted multiline fields) → rows. Column names come from the header; one row = one logical line.
25
+ */
26
+ function lisCsvToExamRows(csv) {
27
+ return parseLisCsvRaw(csv);
28
+ }
29
+ /**
30
+ * LIS / AOL-style XML → plain JS object (xml2js: attrs merged into elements, no trim).
31
+ * Uses `explicitArray: false` so single text/child nodes are strings/objects, not `[value]`.
32
+ * Repeated sibling tags (e.g. several `exame`) still parse as arrays.
33
+ */
34
+ async function lisXmlToJson(xml) {
35
+ if (typeof xml !== 'string') {
36
+ throw new TypeError('lisXmlToJson: expected a string');
37
+ }
38
+ return (0, xml2js_1.parseStringPromise)(xml, {
39
+ explicitArray: false,
40
+ mergeAttrs: true,
41
+ trim: false,
42
+ });
43
+ }
44
+ //# sourceMappingURL=mapperUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mapperUtils.js","sourceRoot":"","sources":["../../util-ts/mapperUtils.ts"],"names":[],"mappings":";;AA2BA,4CAEC;AAOD,oCASC;AA7CD,yCAAwE;AACxE,mCAA4C;AAE5C,MAAM,kBAAkB,GAAoB;IAC1C,OAAO,EAAE,IAAI;IACb,gBAAgB,EAAE,IAAI;IACtB,GAAG,EAAE,IAAI;IACT,kBAAkB,EAAE,IAAI;IACxB,SAAS,EAAE,GAAG;CACf,CAAC;AAKF,SAAS,cAAc,CAAC,GAAW;IACjC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,IAAI,SAAS,CAAC,qCAAqC,CAAC,CAAC;IAC7D,CAAC;IACD,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACtB,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,IAAA,YAAK,EAAC,GAAG,EAAE,kBAAkB,CAA2B,CAAC;AAClE,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAC,GAAW;IAC1C,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC;AAC7B,CAAC;AAED;;;;GAIG;AACI,KAAK,UAAU,YAAY,CAAC,GAAW;IAC5C,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,IAAA,2BAAkB,EAAC,GAAG,EAAE;QAC7B,aAAa,EAAE,KAAK;QACpB,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,KAAK;KACZ,CAAC,CAAC;AACL,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openhealth/oht-custom-parser-lib",
3
- "version": "0.5.22",
3
+ "version": "0.5.24",
4
4
  "description": "Shared nodejs lib with with reusable functions",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -18,19 +18,23 @@
18
18
  "@google-cloud/storage": "^7.7.0",
19
19
  "axios": "^1.13.2",
20
20
  "bottleneck": "^2.19.5",
21
+ "csv-parse": "^6.2.1",
21
22
  "dayjs": "^1.11.13",
22
23
  "dotenv": "^16.4.5",
23
24
  "jsonata": "^2.1.0",
24
25
  "moment": "^2.30.1",
25
26
  "mongodb": "^6.3.0",
26
27
  "pino": "^8.19.0",
27
- "pino-pretty": "^11.3.0"
28
+ "pino-pretty": "^11.3.0",
29
+ "xml2js": "^0.6.2"
28
30
  },
29
31
  "devDependencies": {
30
32
  "@types/jest": "^29.5.14",
33
+ "@types/xml2js": "^0.4.14",
31
34
  "axios-mock-adapter": "^2.1.0",
32
35
  "jest": "^29.7.0",
33
36
  "ts-jest": "^29.2.5",
37
+ "tsx": "^4.19.2",
34
38
  "typescript": "^5.0.0"
35
39
  }
36
40
  }