@pegasimed.com/shared-tools 1.0.71 → 1.0.73

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.
@@ -0,0 +1,14 @@
1
+ import { Subject } from 'rxjs';
2
+ export interface IJob {
3
+ id: string;
4
+ data: any;
5
+ listener: Subject<any>;
6
+ }
7
+ export declare class JobHandler {
8
+ #private;
9
+ constructor();
10
+ startNewJob(jobId: string, maxTime?: string): Promise<any>;
11
+ completeJob(jobId: string, data: any): number;
12
+ getAllJobIds(): string[];
13
+ clearQueue(): void;
14
+ }
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
3
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
4
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
5
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
6
+ };
7
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
8
+ if (kind === "m") throw new TypeError("Private method is not writable");
9
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
10
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
11
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
12
+ };
13
+ var _JobHandler_queueJobs;
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.JobHandler = void 0;
16
+ const rxjs_1 = require("rxjs");
17
+ const utils_1 = require("../utils");
18
+ class JobHandler {
19
+ constructor() {
20
+ _JobHandler_queueJobs.set(this, []);
21
+ }
22
+ startNewJob(jobId, maxTime) {
23
+ return new Promise((resolve, reject) => {
24
+ let alreadyResolved = false;
25
+ const job = {
26
+ id: jobId,
27
+ data: null,
28
+ listener: new rxjs_1.Subject(),
29
+ };
30
+ __classPrivateFieldGet(this, _JobHandler_queueJobs, "f").push(job);
31
+ job.listener.subscribe({
32
+ next: (data) => {
33
+ job.data = data;
34
+ resolve(data);
35
+ alreadyResolved = true;
36
+ },
37
+ error: (err) => {
38
+ reject(err);
39
+ alreadyResolved = true;
40
+ },
41
+ });
42
+ if (maxTime) {
43
+ const timeInMs = (0, utils_1.parseTimeToMiliseconds)(maxTime);
44
+ setTimeout(() => {
45
+ if (!job.data && !alreadyResolved) {
46
+ job.listener.error(new Error('Job timed out'));
47
+ }
48
+ }, timeInMs);
49
+ }
50
+ });
51
+ }
52
+ completeJob(jobId, data) {
53
+ const jobIndex = __classPrivateFieldGet(this, _JobHandler_queueJobs, "f").findIndex((job) => job.id === jobId);
54
+ if (jobIndex !== -1) {
55
+ __classPrivateFieldGet(this, _JobHandler_queueJobs, "f")[jobIndex].listener.next(data);
56
+ __classPrivateFieldGet(this, _JobHandler_queueJobs, "f")[jobIndex].listener.complete();
57
+ __classPrivateFieldGet(this, _JobHandler_queueJobs, "f").splice(jobIndex, 1);
58
+ return __classPrivateFieldGet(this, _JobHandler_queueJobs, "f").length;
59
+ }
60
+ else {
61
+ throw new Error(`Job with ID ${jobId} not found`);
62
+ }
63
+ }
64
+ getAllJobIds() {
65
+ return __classPrivateFieldGet(this, _JobHandler_queueJobs, "f").map((job) => job.id);
66
+ }
67
+ clearQueue() {
68
+ __classPrivateFieldGet(this, _JobHandler_queueJobs, "f").forEach((job) => {
69
+ var _a, _b;
70
+ (_a = job.listener) === null || _a === void 0 ? void 0 : _a.error(new Error('Job cancelled'));
71
+ (_b = job.listener) === null || _b === void 0 ? void 0 : _b.complete();
72
+ });
73
+ __classPrivateFieldSet(this, _JobHandler_queueJobs, [], "f");
74
+ }
75
+ }
76
+ exports.JobHandler = JobHandler;
77
+ _JobHandler_queueJobs = new WeakMap();
78
+ //# sourceMappingURL=JobHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JobHandler.js","sourceRoot":"","sources":["../../src/classes/JobHandler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,+BAA+B;AAC/B,oCAAkD;AAQlD,MAAa,UAAU;IAGrB;QAFA,gCAAqB,EAAE,EAAC;IAET,CAAC;IAEhB,WAAW,CAAC,KAAa,EAAE,OAAgB;QACzC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,eAAe,GAAG,KAAK,CAAC;YAC5B,MAAM,GAAG,GAAG;gBACV,EAAE,EAAE,KAAK;gBACT,IAAI,EAAE,IAAI;gBACV,QAAQ,EAAE,IAAI,cAAO,EAAO;aAC7B,CAAC;YACF,uBAAA,IAAI,6BAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAE1B,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC;gBACrB,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE;oBACb,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;oBAChB,OAAO,CAAC,IAAI,CAAC,CAAC;oBACd,eAAe,GAAG,IAAI,CAAC;gBACzB,CAAC;gBACD,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;oBACb,MAAM,CAAC,GAAG,CAAC,CAAC;oBACZ,eAAe,GAAG,IAAI,CAAC;gBACzB,CAAC;aACF,CAAC,CAAC;YAEH,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,QAAQ,GAAG,IAAA,8BAAsB,EAAC,OAAO,CAAC,CAAC;gBACjD,UAAU,CAAC,GAAG,EAAE;oBACd,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;wBAClC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;oBACjD,CAAC;gBACH,CAAC,EAAE,QAAQ,CAAC,CAAC;YACf,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,WAAW,CAAC,KAAa,EAAE,IAAS;QAClC,MAAM,QAAQ,GAAG,uBAAA,IAAI,6BAAW,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC;QACtE,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;YACpB,uBAAA,IAAI,6BAAW,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9C,uBAAA,IAAI,6BAAW,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAC9C,uBAAA,IAAI,6BAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YACpC,OAAO,uBAAA,IAAI,6BAAW,CAAC,MAAM,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,eAAe,KAAK,YAAY,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED,YAAY;QACV,OAAO,uBAAA,IAAI,6BAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,UAAU;QACR,uBAAA,IAAI,6BAAW,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;;YAC9B,MAAA,GAAG,CAAC,QAAQ,0CAAE,KAAK,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;YAChD,MAAA,GAAG,CAAC,QAAQ,0CAAE,QAAQ,EAAE,CAAC;QAC3B,CAAC,CAAC,CAAC;QACH,uBAAA,IAAI,yBAAc,EAAE,MAAA,CAAC;IACvB,CAAC;CACF;AA7DD,gCA6DC"}
@@ -0,0 +1 @@
1
+ export * from './JobHandler';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./JobHandler"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/classes/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B"}
@@ -1,5 +1,6 @@
1
1
  export declare const INTEGRATIONS_CAMPAIGN_EVENTS: {
2
2
  patientCampaign: {
3
+ searchPatient: string;
3
4
  inclusionCriteria: string;
4
5
  };
5
6
  };
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.INTEGRATIONS_CAMPAIGN_EVENTS = void 0;
4
4
  exports.INTEGRATIONS_CAMPAIGN_EVENTS = {
5
5
  patientCampaign: {
6
+ searchPatient: 'patient-campaign-search-patient',
6
7
  inclusionCriteria: 'patient-campaign-inclusion-criteria',
7
8
  },
8
9
  };
@@ -1 +1 @@
1
- {"version":3,"file":"integrationsEvents.js","sourceRoot":"","sources":["../../src/constants/integrationsEvents.ts"],"names":[],"mappings":";;;AAAa,QAAA,4BAA4B,GAAG;IAC1C,eAAe,EAAE;QACf,iBAAiB,EAAE,qCAAqC;KACzD;CACF,CAAC"}
1
+ {"version":3,"file":"integrationsEvents.js","sourceRoot":"","sources":["../../src/constants/integrationsEvents.ts"],"names":[],"mappings":";;;AAAa,QAAA,4BAA4B,GAAG;IAC1C,eAAe,EAAE;QACf,aAAa,EAAE,iCAAiC;QAChD,iBAAiB,EAAE,qCAAqC;KACzD;CACF,CAAC"}
@@ -1,6 +1,7 @@
1
1
  export * from './pipelines';
2
2
  export * from './executeCondition';
3
3
  export * from './executeFormula';
4
+ export * from './executeInputVariable';
4
5
  export * from './executeVariablesCondition';
5
6
  export * from './findAllCustomVariables';
6
7
  export * from './findDataObject';
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./pipelines"), exports);
18
18
  __exportStar(require("./executeCondition"), exports);
19
19
  __exportStar(require("./executeFormula"), exports);
20
+ __exportStar(require("./executeInputVariable"), exports);
20
21
  __exportStar(require("./executeVariablesCondition"), exports);
21
22
  __exportStar(require("./findAllCustomVariables"), exports);
22
23
  __exportStar(require("./findDataObject"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/custom-variable-resolvers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,qDAAmC;AACnC,mDAAiC;AACjC,8DAA4C;AAC5C,2DAAyC;AACzC,mDAAiC;AACjC,wDAAsC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/custom-variable-resolvers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,qDAAmC;AACnC,mDAAiC;AACjC,yDAAuC;AACvC,8DAA4C;AAC5C,2DAAyC;AACzC,mDAAiC;AACjC,wDAAsC"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ export * from './classes';
1
2
  export * from './constants';
2
3
  export * from './custom-variable-resolvers';
3
4
  export * from './utils';
package/dist/index.js CHANGED
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./classes"), exports);
17
18
  __exportStar(require("./constants"), exports);
18
19
  __exportStar(require("./custom-variable-resolvers"), exports);
19
20
  __exportStar(require("./utils"), exports);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,8DAA4C;AAC5C,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,8CAA4B;AAC5B,8DAA4C;AAC5C,0CAAwB"}
@@ -5,3 +5,4 @@ export declare const getDateWithMonthRange: () => {
5
5
  previousMonth: Date;
6
6
  nextMonth: Date;
7
7
  };
8
+ export declare const parseTimeToMiliseconds: (time: string) => number | undefined;
@@ -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.getDateWithMonthRange = exports.convertMinutesToTime24 = exports.convertMinutesToTimeAmPm = void 0;
6
+ exports.parseTimeToMiliseconds = exports.getDateWithMonthRange = exports.convertMinutesToTime24 = exports.convertMinutesToTimeAmPm = void 0;
7
7
  const moment_1 = __importDefault(require("moment"));
8
8
  const convertMinutesToTimeAmPm = (minutes) => {
9
9
  return (0, moment_1.default)().startOf('day').add(minutes, 'minutes').format('hh:mm A');
@@ -22,4 +22,23 @@ const getDateWithMonthRange = () => {
22
22
  };
23
23
  };
24
24
  exports.getDateWithMonthRange = getDateWithMonthRange;
25
+ const parseTimeToMiliseconds = (time) => {
26
+ const validTime = ['s', 'm', 'h', 'd'].includes(time.replace(/[0-9]/g, ''));
27
+ if (!validTime) {
28
+ throw new Error('Invalid time format. Use "s", "m", "h", or "d".');
29
+ }
30
+ const numberTime = parseInt(time.replace(/[^0-9]/g, ''), 10);
31
+ const unit = time.replace(/[0-9]/g, '');
32
+ switch (unit) {
33
+ case 's':
34
+ return 1000 * numberTime;
35
+ case 'm':
36
+ return 60 * 1000 * numberTime;
37
+ case 'h':
38
+ return 60 * 60 * 1000 * numberTime;
39
+ case 'd':
40
+ return 24 * 60 * 60 * 1000 * numberTime;
41
+ }
42
+ };
43
+ exports.parseTimeToMiliseconds = parseTimeToMiliseconds;
25
44
  //# sourceMappingURL=date.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"date.js","sourceRoot":"","sources":["../../src/utils/date.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAErB,MAAM,wBAAwB,GAAG,CAAC,OAAe,EAAU,EAAE;IAClE,OAAO,IAAA,gBAAM,GAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AAC3E,CAAC,CAAC;AAFW,QAAA,wBAAwB,4BAEnC;AAEK,MAAM,sBAAsB,GAAG,CAAC,OAAe,EAAU,EAAE;IAChE,OAAO,IAAA,gBAAM,GAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AACzE,CAAC,CAAC;AAFW,QAAA,sBAAsB,0BAEjC;AAEK,MAAM,qBAAqB,GAAG,GAInC,EAAE;IACF,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,OAAO;QACL,WAAW,EAAE,GAAG;QAChB,aAAa,EAAE,IAAA,gBAAM,EAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,MAAM,EAAE;QACxD,SAAS,EAAE,IAAA,gBAAM,EAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,MAAM,EAAE;KAChD,CAAC;AACJ,CAAC,CAAC;AAXW,QAAA,qBAAqB,yBAWhC"}
1
+ {"version":3,"file":"date.js","sourceRoot":"","sources":["../../src/utils/date.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAErB,MAAM,wBAAwB,GAAG,CAAC,OAAe,EAAU,EAAE;IAClE,OAAO,IAAA,gBAAM,GAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AAC3E,CAAC,CAAC;AAFW,QAAA,wBAAwB,4BAEnC;AAEK,MAAM,sBAAsB,GAAG,CAAC,OAAe,EAAU,EAAE;IAChE,OAAO,IAAA,gBAAM,GAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AACzE,CAAC,CAAC;AAFW,QAAA,sBAAsB,0BAEjC;AAEK,MAAM,qBAAqB,GAAG,GAInC,EAAE;IACF,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,OAAO;QACL,WAAW,EAAE,GAAG;QAChB,aAAa,EAAE,IAAA,gBAAM,EAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,MAAM,EAAE;QACxD,SAAS,EAAE,IAAA,gBAAM,EAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,MAAM,EAAE;KAChD,CAAC;AACJ,CAAC,CAAC;AAXW,QAAA,qBAAqB,yBAWhC;AAEK,MAAM,sBAAsB,GAAG,CAAC,IAAY,EAAsB,EAAE;IACzE,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;IAC5E,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAExC,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,GAAG;YACN,OAAO,IAAI,GAAG,UAAU,CAAC;QAC3B,KAAK,GAAG;YACN,OAAO,EAAE,GAAG,IAAI,GAAG,UAAU,CAAC;QAChC,KAAK,GAAG;YACN,OAAO,EAAE,GAAG,EAAE,GAAG,IAAI,GAAG,UAAU,CAAC;QACrC,KAAK,GAAG;YACN,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,GAAG,UAAU,CAAC;IAC5C,CAAC;AACH,CAAC,CAAC;AAnBW,QAAA,sBAAsB,0BAmBjC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pegasimed.com/shared-tools",
3
- "version": "1.0.71",
3
+ "version": "1.0.73",
4
4
  "description": "Pegasi shared tools",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -36,6 +36,7 @@
36
36
  "homepage": "https://github.com/devops-pegasi/shared-tools#readme",
37
37
  "dependencies": {
38
38
  "moment": "^2.30.1",
39
+ "rxjs": "^7.8.2",
39
40
  "type-check": "^0.4.0"
40
41
  },
41
42
  "devDependencies": {