@pegasimed.com/shared-tools 1.0.111 → 1.0.112
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/utils/index.d.ts +1 -0
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/numbers.d.ts +1 -0
- package/dist/utils/numbers.js +12 -0
- package/dist/utils/numbers.js.map +1 -0
- package/dist/utils/questionnaire/getFinalMessages.d.ts +2 -0
- package/dist/utils/questionnaire/getFinalMessages.js +64 -0
- package/dist/utils/questionnaire/getFinalMessages.js.map +1 -0
- package/dist/utils/questionnaire/index.d.ts +1 -0
- package/dist/utils/questionnaire/index.js +1 -0
- package/dist/utils/questionnaire/index.js.map +1 -1
- package/package.json +1 -1
package/dist/utils/index.d.ts
CHANGED
|
@@ -12,6 +12,7 @@ export * from './getAllJsonKeyAndValues';
|
|
|
12
12
|
export * from './IntegrationLog';
|
|
13
13
|
export * from './intervalWithRetries';
|
|
14
14
|
export * from './newValueInstance';
|
|
15
|
+
export * from './numbers';
|
|
15
16
|
export * from './parseNumber';
|
|
16
17
|
export * from './removeNullAndUndefinedValues';
|
|
17
18
|
export * from './sendSlackMessage';
|
package/dist/utils/index.js
CHANGED
|
@@ -28,6 +28,7 @@ __exportStar(require("./getAllJsonKeyAndValues"), exports);
|
|
|
28
28
|
__exportStar(require("./IntegrationLog"), exports);
|
|
29
29
|
__exportStar(require("./intervalWithRetries"), exports);
|
|
30
30
|
__exportStar(require("./newValueInstance"), exports);
|
|
31
|
+
__exportStar(require("./numbers"), exports);
|
|
31
32
|
__exportStar(require("./parseNumber"), exports);
|
|
32
33
|
__exportStar(require("./removeNullAndUndefinedValues"), exports);
|
|
33
34
|
__exportStar(require("./sendSlackMessage"), exports);
|
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,kDAAgC;AAChC,4CAA0B;AAC1B,oDAAkC;AAClC,wDAAsC;AACtC,0DAAwC;AACxC,yCAAuB;AACvB,0DAAwC;AACxC,gEAA8C;AAC9C,uDAAqC;AACrC,2DAAyC;AACzC,mDAAiC;AACjC,wDAAsC;AACtC,qDAAmC;AACnC,gDAA8B;AAC9B,iEAA+C;AAC/C,qDAAmC;AACnC,wDAAsC;AACtC,4DAA0C;AAC1C,yDAAuC;AACvC,gEAA8C;AAC9C,8CAA4B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,kDAAgC;AAChC,4CAA0B;AAC1B,oDAAkC;AAClC,wDAAsC;AACtC,0DAAwC;AACxC,yCAAuB;AACvB,0DAAwC;AACxC,gEAA8C;AAC9C,uDAAqC;AACrC,2DAAyC;AACzC,mDAAiC;AACjC,wDAAsC;AACtC,qDAAmC;AACnC,4CAA0B;AAC1B,gDAA8B;AAC9B,iEAA+C;AAC/C,qDAAmC;AACnC,wDAAsC;AACtC,4DAA0C;AAC1C,yDAAuC;AACvC,gEAA8C;AAC9C,8CAA4B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getNumberOfDecimals: (number: number, decimals: number) => number;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getNumberOfDecimals = void 0;
|
|
4
|
+
const getNumberOfDecimals = (number, decimals) => {
|
|
5
|
+
if (!Number.isFinite(number)) {
|
|
6
|
+
throw new Error('Input must be a finite number');
|
|
7
|
+
}
|
|
8
|
+
const factor = Math.pow(10, decimals);
|
|
9
|
+
return Math.trunc(number * factor) / factor;
|
|
10
|
+
};
|
|
11
|
+
exports.getNumberOfDecimals = getNumberOfDecimals;
|
|
12
|
+
//# sourceMappingURL=numbers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"numbers.js","sourceRoot":"","sources":["../../src/utils/numbers.ts"],"names":[],"mappings":";;;AAAO,MAAM,mBAAmB,GAAG,CAAC,MAAc,EAAE,QAAgB,EAAU,EAAE;IAC9E,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IACtC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,MAAM,CAAC;AAC9C,CAAC,CAAC;AAPW,QAAA,mBAAmB,uBAO9B"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { IPatient, IObservation, IQuestionnaire, IQuestionnaireResponse } from '../../interfaces';
|
|
2
|
+
export declare const getFinalMessage: (observations: IObservation[], questionnaire: IQuestionnaire, questionnaireResponse: IQuestionnaireResponse, patient: IPatient) => Promise<string>;
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.getFinalMessage = void 0;
|
|
13
|
+
const custom_variable_resolvers_1 = require("../../custom-variable-resolvers");
|
|
14
|
+
const documents_1 = require("../documents");
|
|
15
|
+
const numbers_1 = require("../numbers");
|
|
16
|
+
const getFinalMessage = (observations, questionnaire, questionnaireResponse, patient) => __awaiter(void 0, void 0, void 0, function* () {
|
|
17
|
+
var _a, _b, _c;
|
|
18
|
+
const defaultMsg = [
|
|
19
|
+
`¡Gracias por responder el formulario, ${(0, documents_1.getFullName)(patient, 'usual').toUpperCase()}!.`,
|
|
20
|
+
...observations.map((obs) => {
|
|
21
|
+
const observationValue = obs.value;
|
|
22
|
+
return [
|
|
23
|
+
`Basándonos en las respuestas anteriores, para el resultado ${observationValue.name}, su puntuación es (${(0, numbers_1.getNumberOfDecimals)(observationValue.calculation, observationValue.decimals || 0)}) lo cual determina que su resultado final es:`,
|
|
24
|
+
`${observationValue.finalResult}`,
|
|
25
|
+
].join('<br>');
|
|
26
|
+
}),
|
|
27
|
+
,
|
|
28
|
+
].join('\n');
|
|
29
|
+
const finalMsgToShow = [];
|
|
30
|
+
for (const observation of observations) {
|
|
31
|
+
const observationValue = observation.value;
|
|
32
|
+
if (!((_c = (_b = (_a = observationValue === null || observationValue === void 0 ? void 0 : observationValue.valueCodeableConcept) === null || _a === void 0 ? void 0 : _a.value) === null || _b === void 0 ? void 0 : _b.messagesToShow) === null || _c === void 0 ? void 0 : _c.length)) {
|
|
33
|
+
continue;
|
|
34
|
+
}
|
|
35
|
+
const messagesToShow = observationValue.valueCodeableConcept.value.messagesToShow;
|
|
36
|
+
for (const msgToShow of messagesToShow) {
|
|
37
|
+
const condition = (msgToShow === null || msgToShow === void 0 ? void 0 : msgToShow.condition) || '';
|
|
38
|
+
let response;
|
|
39
|
+
const dataToEvaluate = Object.assign(Object.assign({}, observation), { __OPTIONS__: {
|
|
40
|
+
patient: patient,
|
|
41
|
+
questionnaire: questionnaire,
|
|
42
|
+
questionnaireResponse: questionnaireResponse,
|
|
43
|
+
} });
|
|
44
|
+
try {
|
|
45
|
+
response = (yield (0, custom_variable_resolvers_1.executeFormula)(condition, dataToEvaluate, null));
|
|
46
|
+
}
|
|
47
|
+
catch (_d) {
|
|
48
|
+
response = false;
|
|
49
|
+
}
|
|
50
|
+
if (response) {
|
|
51
|
+
const msg = yield (0, custom_variable_resolvers_1.replaceAllVariables)((msgToShow === null || msgToShow === void 0 ? void 0 : msgToShow.message) || '', dataToEvaluate, null, null, {
|
|
52
|
+
enabledAutoStringCommas: false,
|
|
53
|
+
});
|
|
54
|
+
finalMsgToShow.push(msg);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
if (finalMsgToShow.length) {
|
|
59
|
+
return finalMsgToShow.join('\n');
|
|
60
|
+
}
|
|
61
|
+
return defaultMsg;
|
|
62
|
+
});
|
|
63
|
+
exports.getFinalMessage = getFinalMessage;
|
|
64
|
+
//# sourceMappingURL=getFinalMessages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getFinalMessages.js","sourceRoot":"","sources":["../../../src/utils/questionnaire/getFinalMessages.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+EAAsF;AAStF,4CAA2C;AAC3C,wCAAiD;AAE1C,MAAM,eAAe,GAAG,CAC7B,YAA4B,EAC5B,aAA6B,EAC7B,qBAA6C,EAC7C,OAAiB,EACA,EAAE;;IACnB,MAAM,UAAU,GAAG;QACjB,yCAAyC,IAAA,uBAAW,EAAC,OAAO,EAAE,OAAO,CAAC,CAAC,WAAW,EAAE,IAAI;QACxF,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YAC1B,MAAM,gBAAgB,GAAsB,GAAG,CAAC,KAA0B,CAAC;YAC3E,OAAO;gBACL,8DACE,gBAAgB,CAAC,IACnB,uBAAuB,IAAA,6BAAmB,EACxC,gBAAgB,CAAC,WAAqB,EACtC,gBAAgB,CAAC,QAAQ,IAAI,CAAC,CAC/B,gDAAgD;gBACjD,GAAG,gBAAgB,CAAC,WAAW,EAAE;aAClC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjB,CAAC,CAAC;QACF,AADG;KAEJ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,MAAM,cAAc,GAAG,EAAE,CAAC;IAC1B,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;QACvC,MAAM,gBAAgB,GAAG,WAAW,CAAC,KAA0B,CAAC;QAChE,IAAI,CAAC,CAAA,MAAA,MAAA,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,oBAAoB,0CAAE,KAAK,0CAAE,cAAc,0CAAE,MAAM,CAAA,EAAE,CAAC;YAC3E,SAAS;QACX,CAAC;QACD,MAAM,cAAc,GAClB,gBAAgB,CAAC,oBAAoB,CAAC,KAAK,CAAC,cAAc,CAAC;QAE7D,KAAK,MAAM,SAAS,IAAI,cAAc,EAAE,CAAC;YACvC,MAAM,SAAS,GAAG,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,SAAS,KAAI,EAAE,CAAC;YAC7C,IAAI,QAAiB,CAAC;YACtB,MAAM,cAAc,mCACf,WAAW,KACd,WAAW,EAAE;oBACX,OAAO,EAAE,OAAO;oBAChB,aAAa,EAAE,aAAa;oBAC5B,qBAAqB,EAAE,qBAAqB;iBAC7C,GACF,CAAC;YACF,IAAI,CAAC;gBACH,QAAQ,GAAG,CAAC,MAAM,IAAA,0CAAc,EAAC,SAAS,EAAE,cAAc,EAAE,IAAW,CAAC,CAAY,CAAC;YACvF,CAAC;YAAC,WAAM,CAAC;gBACP,QAAQ,GAAG,KAAK,CAAC;YACnB,CAAC;YACD,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,GAAG,GAAG,MAAM,IAAA,+CAAmB,EAAC,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,KAAI,EAAE,EAAE,cAAc,EAAE,IAAW,EAAE,IAAW,EAAE;oBACxG,uBAAuB,EAAE,KAAK;iBAC/B,CAAC,CAAC;gBAEH,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,cAAc,CAAC,MAAM,EAAE,CAAC;QAC1B,OAAO,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC,CAAA,CAAC;AA/DW,QAAA,eAAe,mBA+D1B"}
|
|
@@ -15,6 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./formulas"), exports);
|
|
18
|
+
__exportStar(require("./getFinalMessages"), exports);
|
|
18
19
|
__exportStar(require("./observation"), exports);
|
|
19
20
|
__exportStar(require("./question"), exports);
|
|
20
21
|
__exportStar(require("./questionnaire"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/questionnaire/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,gDAA8B;AAC9B,6CAA2B;AAC3B,kDAAgC;AAChC,0DAAwC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/questionnaire/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,qDAAmC;AACnC,gDAA8B;AAC9B,6CAA2B;AAC3B,kDAAgC;AAChC,0DAAwC"}
|