@awell-health/awell-extensions 2.1.34 → 2.1.36
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/extensions/awell/index.js +1 -0
- package/dist/extensions/awell/index.js.map +1 -1
- package/dist/extensions/awell/v1/actions/index.d.ts +1 -0
- package/dist/extensions/awell/v1/actions/index.js +3 -1
- package/dist/extensions/awell/v1/actions/index.js.map +1 -1
- package/dist/extensions/awell/v1/actions/isPatientEnrolledInTrack/config/dataPoints.d.ts +18 -0
- package/dist/extensions/awell/v1/actions/isPatientEnrolledInTrack/config/dataPoints.js +22 -0
- package/dist/extensions/awell/v1/actions/isPatientEnrolledInTrack/config/dataPoints.js.map +1 -0
- package/dist/extensions/awell/v1/actions/isPatientEnrolledInTrack/config/fields.d.ts +18 -0
- package/dist/extensions/awell/v1/actions/isPatientEnrolledInTrack/config/fields.js +18 -0
- package/dist/extensions/awell/v1/actions/isPatientEnrolledInTrack/config/fields.js.map +1 -0
- package/dist/extensions/awell/v1/actions/isPatientEnrolledInTrack/config/index.d.ts +3 -0
- package/dist/extensions/awell/v1/actions/isPatientEnrolledInTrack/config/index.js +11 -0
- package/dist/extensions/awell/v1/actions/isPatientEnrolledInTrack/config/index.js.map +1 -0
- package/dist/extensions/awell/v1/actions/isPatientEnrolledInTrack/config/pathway.d.ts +8 -0
- package/dist/extensions/awell/v1/actions/isPatientEnrolledInTrack/config/pathway.js +8 -0
- package/dist/extensions/awell/v1/actions/isPatientEnrolledInTrack/config/pathway.js.map +1 -0
- package/dist/extensions/awell/v1/actions/isPatientEnrolledInTrack/index.d.ts +1 -0
- package/dist/extensions/awell/v1/actions/isPatientEnrolledInTrack/index.js +6 -0
- package/dist/extensions/awell/v1/actions/isPatientEnrolledInTrack/index.js.map +1 -0
- package/dist/extensions/awell/v1/actions/isPatientEnrolledInTrack/isPatientEnrolledInTrack.d.ts +4 -0
- package/dist/extensions/awell/v1/actions/isPatientEnrolledInTrack/isPatientEnrolledInTrack.js +81 -0
- package/dist/extensions/awell/v1/actions/isPatientEnrolledInTrack/isPatientEnrolledInTrack.js.map +1 -0
- package/package.json +1 -1
|
@@ -25,6 +25,7 @@ exports.Awell = {
|
|
|
25
25
|
stopTrack: actions_1.stopTrack,
|
|
26
26
|
searchPatientsByPatientCode: actions_1.searchPatientsByPatientCode,
|
|
27
27
|
isPatientEnrolledInCareFlow: actions_1.isPatientEnrolledInCareFlow,
|
|
28
|
+
isPatientEnrolledInTrack: actions_1.isPatientEnrolledInTrack,
|
|
28
29
|
updateBaselineInfo: actions_1.updateBaselineInfo,
|
|
29
30
|
startHostedPagesSession: actions_1.startHostedPagesSession,
|
|
30
31
|
startCareFlowAndSession: actions_1.startCareFlowAndSession,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../extensions/awell/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../extensions/awell/index.ts"],"names":[],"mappings":";;;AAAA,0CAiBqB;AAErB,yCAAqC;AACrC,4CAAwC;AACxC,mEAAoE;AAEvD,QAAA,KAAK,GAAc;IAC9B,GAAG,EAAE,OAAO;IACZ,KAAK,EAAE,gBAAgB;IACvB,QAAQ,EACN,iGAAiG;IACnG,WAAW,EAAE,qDAAqD;IAClE,QAAQ,EAAE,0BAAQ,CAAC,QAAQ;IAC3B,MAAM,EAAE;QACN,UAAU,EAAE,4BAAU,CAAC,KAAK;KAC7B;IACD,QAAQ,EAAR,mBAAQ;IACR,OAAO,EAAE;QACP,aAAa,EAAb,uBAAa;QACb,sBAAsB,EAAtB,gCAAsB;QACtB,sBAAsB,EAAtB,gCAAsB;QACtB,aAAa,EAAb,uBAAa;QACb,aAAa,EAAb,uBAAa;QACb,YAAY,EAAZ,sBAAY;QACZ,SAAS,EAAT,mBAAS;QACT,2BAA2B,EAA3B,qCAA2B;QAC3B,2BAA2B,EAA3B,qCAA2B;QAC3B,wBAAwB,EAAxB,kCAAwB;QACxB,kBAAkB,EAAlB,4BAAkB;QAClB,uBAAuB,EAAvB,iCAAuB;QACvB,uBAAuB,EAAvB,iCAAuB;QACvB,iBAAiB,EAAjB,2BAAiB;QACjB,eAAe,EAAf,yBAAe;QACf,iBAAiB,EAAjB,2BAAiB;KAClB;IACD,QAAQ,EAAR,mBAAQ;CACT,CAAA"}
|
|
@@ -5,6 +5,7 @@ export { stopCareFlow } from './stopCareFlow';
|
|
|
5
5
|
export { stopTrack } from './stopTrack';
|
|
6
6
|
export { searchPatientsByPatientCode } from './searchPatientsByPatientCode';
|
|
7
7
|
export { isPatientEnrolledInCareFlow } from './isPatientEnrolledInCareFlow';
|
|
8
|
+
export { isPatientEnrolledInTrack } from './isPatientEnrolledInTrack';
|
|
8
9
|
export { updateBaselineInfo } from './updateBaselineInfo';
|
|
9
10
|
export { getPatientByIdentifier } from './getPatientByIdentifier';
|
|
10
11
|
export { addIdentifierToPatient } from './addIdentifierToPatient';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createNaviSession = exports.listFormAnswers = exports.getDataPointValue = exports.startCareFlowAndSession = exports.startHostedPagesSession = exports.addIdentifierToPatient = exports.getPatientByIdentifier = exports.updateBaselineInfo = exports.isPatientEnrolledInCareFlow = exports.searchPatientsByPatientCode = exports.stopTrack = exports.stopCareFlow = exports.updatePatient = exports.startCareFlow = exports.addAdhocTrack = void 0;
|
|
3
|
+
exports.createNaviSession = exports.listFormAnswers = exports.getDataPointValue = exports.startCareFlowAndSession = exports.startHostedPagesSession = exports.addIdentifierToPatient = exports.getPatientByIdentifier = exports.updateBaselineInfo = exports.isPatientEnrolledInTrack = exports.isPatientEnrolledInCareFlow = exports.searchPatientsByPatientCode = exports.stopTrack = exports.stopCareFlow = exports.updatePatient = exports.startCareFlow = exports.addAdhocTrack = void 0;
|
|
4
4
|
var addAdhocTrack_1 = require("./addAdhocTrack");
|
|
5
5
|
Object.defineProperty(exports, "addAdhocTrack", { enumerable: true, get: function () { return addAdhocTrack_1.addAdhocTrack; } });
|
|
6
6
|
var startCareFlow_1 = require("./startCareFlow");
|
|
@@ -15,6 +15,8 @@ var searchPatientsByPatientCode_1 = require("./searchPatientsByPatientCode");
|
|
|
15
15
|
Object.defineProperty(exports, "searchPatientsByPatientCode", { enumerable: true, get: function () { return searchPatientsByPatientCode_1.searchPatientsByPatientCode; } });
|
|
16
16
|
var isPatientEnrolledInCareFlow_1 = require("./isPatientEnrolledInCareFlow");
|
|
17
17
|
Object.defineProperty(exports, "isPatientEnrolledInCareFlow", { enumerable: true, get: function () { return isPatientEnrolledInCareFlow_1.isPatientEnrolledInCareFlow; } });
|
|
18
|
+
var isPatientEnrolledInTrack_1 = require("./isPatientEnrolledInTrack");
|
|
19
|
+
Object.defineProperty(exports, "isPatientEnrolledInTrack", { enumerable: true, get: function () { return isPatientEnrolledInTrack_1.isPatientEnrolledInTrack; } });
|
|
18
20
|
var updateBaselineInfo_1 = require("./updateBaselineInfo");
|
|
19
21
|
Object.defineProperty(exports, "updateBaselineInfo", { enumerable: true, get: function () { return updateBaselineInfo_1.updateBaselineInfo; } });
|
|
20
22
|
var getPatientByIdentifier_1 = require("./getPatientByIdentifier");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../extensions/awell/v1/actions/index.ts"],"names":[],"mappings":";;;AAAA,iDAA+C;AAAtC,8GAAA,aAAa,OAAA;AACtB,iDAA+C;AAAtC,8GAAA,aAAa,OAAA;AACtB,iDAA+C;AAAtC,8GAAA,aAAa,OAAA;AACtB,+CAA6C;AAApC,4GAAA,YAAY,OAAA;AACrB,yCAAuC;AAA9B,sGAAA,SAAS,OAAA;AAClB,6EAA2E;AAAlE,0IAAA,2BAA2B,OAAA;AACpC,6EAA2E;AAAlE,0IAAA,2BAA2B,OAAA;AACpC,2DAAyD;AAAhD,wHAAA,kBAAkB,OAAA;AAC3B,mEAAiE;AAAxD,gIAAA,sBAAsB,OAAA;AAC/B,mEAAiE;AAAxD,gIAAA,sBAAsB,OAAA;AAC/B,qEAAmE;AAA1D,kIAAA,uBAAuB,OAAA;AAChC,qEAAmE;AAA1D,kIAAA,uBAAuB,OAAA;AAChC,yDAAuD;AAA9C,sHAAA,iBAAiB,OAAA;AAC1B,qDAAmD;AAA1C,kHAAA,eAAe,OAAA;AACxB,yDAAuD;AAA9C,sHAAA,iBAAiB,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../extensions/awell/v1/actions/index.ts"],"names":[],"mappings":";;;AAAA,iDAA+C;AAAtC,8GAAA,aAAa,OAAA;AACtB,iDAA+C;AAAtC,8GAAA,aAAa,OAAA;AACtB,iDAA+C;AAAtC,8GAAA,aAAa,OAAA;AACtB,+CAA6C;AAApC,4GAAA,YAAY,OAAA;AACrB,yCAAuC;AAA9B,sGAAA,SAAS,OAAA;AAClB,6EAA2E;AAAlE,0IAAA,2BAA2B,OAAA;AACpC,6EAA2E;AAAlE,0IAAA,2BAA2B,OAAA;AACpC,uEAAqE;AAA5D,oIAAA,wBAAwB,OAAA;AACjC,2DAAyD;AAAhD,wHAAA,kBAAkB,OAAA;AAC3B,mEAAiE;AAAxD,gIAAA,sBAAsB,OAAA;AAC/B,mEAAiE;AAAxD,gIAAA,sBAAsB,OAAA;AAC/B,qEAAmE;AAA1D,kIAAA,uBAAuB,OAAA;AAChC,qEAAmE;AAA1D,kIAAA,uBAAuB,OAAA;AAChC,yDAAuD;AAA9C,sHAAA,iBAAiB,OAAA;AAC1B,qDAAmD;AAA1C,kHAAA,eAAe,OAAA;AACxB,yDAAuD;AAA9C,sHAAA,iBAAiB,OAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export declare const dataPoints: {
|
|
2
|
+
has_been_enrolled_in_track: {
|
|
3
|
+
key: string;
|
|
4
|
+
valueType: "boolean";
|
|
5
|
+
};
|
|
6
|
+
is_enrolled_in_track: {
|
|
7
|
+
key: string;
|
|
8
|
+
valueType: "boolean";
|
|
9
|
+
};
|
|
10
|
+
track_is_scheduled: {
|
|
11
|
+
key: string;
|
|
12
|
+
valueType: "boolean";
|
|
13
|
+
};
|
|
14
|
+
next_track_scheduled_date: {
|
|
15
|
+
key: string;
|
|
16
|
+
valueType: "date";
|
|
17
|
+
};
|
|
18
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.dataPoints = void 0;
|
|
4
|
+
exports.dataPoints = {
|
|
5
|
+
has_been_enrolled_in_track: {
|
|
6
|
+
key: 'has_been_enrolled_in_track',
|
|
7
|
+
valueType: 'boolean',
|
|
8
|
+
},
|
|
9
|
+
is_enrolled_in_track: {
|
|
10
|
+
key: 'is_enrolled_in_track',
|
|
11
|
+
valueType: 'boolean',
|
|
12
|
+
},
|
|
13
|
+
track_is_scheduled: {
|
|
14
|
+
key: 'track_is_scheduled',
|
|
15
|
+
valueType: 'boolean',
|
|
16
|
+
},
|
|
17
|
+
next_track_scheduled_date: {
|
|
18
|
+
key: 'next_track_scheduled_date',
|
|
19
|
+
valueType: 'date',
|
|
20
|
+
},
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=dataPoints.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataPoints.js","sourceRoot":"","sources":["../../../../../../../extensions/awell/v1/actions/isPatientEnrolledInTrack/config/dataPoints.ts"],"names":[],"mappings":";;;AAEa,QAAA,UAAU,GAAG;IACxB,0BAA0B,EAAE;QAC1B,GAAG,EAAE,4BAA4B;QACjC,SAAS,EAAE,SAAS;KACrB;IACD,oBAAoB,EAAE;QACpB,GAAG,EAAE,sBAAsB;QAC3B,SAAS,EAAE,SAAS;KACrB;IACD,kBAAkB,EAAE;QAClB,GAAG,EAAE,oBAAoB;QACzB,SAAS,EAAE,SAAS;KACrB;IACD,yBAAyB,EAAE;QACzB,GAAG,EAAE,2BAA2B;QAChC,SAAS,EAAE,MAAM;KAClB;CAC4C,CAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { FieldType } from '@awell-health/extensions-core';
|
|
3
|
+
export declare const fields: {
|
|
4
|
+
trackDefinitionId: {
|
|
5
|
+
id: string;
|
|
6
|
+
label: string;
|
|
7
|
+
description: string;
|
|
8
|
+
type: FieldType.STRING;
|
|
9
|
+
required: true;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
export declare const FieldsValidationSchema: z.ZodObject<{
|
|
13
|
+
trackDefinitionId: z.ZodString;
|
|
14
|
+
}, "strip", z.ZodTypeAny, {
|
|
15
|
+
trackDefinitionId: string;
|
|
16
|
+
}, {
|
|
17
|
+
trackDefinitionId: string;
|
|
18
|
+
}>;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FieldsValidationSchema = exports.fields = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const extensions_core_1 = require("@awell-health/extensions-core");
|
|
6
|
+
exports.fields = {
|
|
7
|
+
trackDefinitionId: {
|
|
8
|
+
id: 'trackDefinitionId',
|
|
9
|
+
label: 'Track definition ID',
|
|
10
|
+
description: 'The definition ID of the track to check enrollment status for.',
|
|
11
|
+
type: extensions_core_1.FieldType.STRING,
|
|
12
|
+
required: true,
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
exports.FieldsValidationSchema = zod_1.z.object({
|
|
16
|
+
trackDefinitionId: zod_1.z.string(),
|
|
17
|
+
});
|
|
18
|
+
//# sourceMappingURL=fields.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fields.js","sourceRoot":"","sources":["../../../../../../../extensions/awell/v1/actions/isPatientEnrolledInTrack/config/fields.ts"],"names":[],"mappings":";;;AAAA,6BAAwC;AACxC,mEAAqE;AAExD,QAAA,MAAM,GAAG;IACpB,iBAAiB,EAAE;QACjB,EAAE,EAAE,mBAAmB;QACvB,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EACT,gEAAgE;QAClE,IAAI,EAAE,2BAAS,CAAC,MAAM;QACtB,QAAQ,EAAE,IAAI;KACf;CAC8B,CAAA;AAEpB,QAAA,sBAAsB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC7C,iBAAiB,EAAE,OAAC,CAAC,MAAM,EAAE;CACoB,CAAC,CAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PathwayValidationSchema = exports.dataPoints = exports.FieldsValidationSchema = exports.fields = void 0;
|
|
4
|
+
var fields_1 = require("./fields");
|
|
5
|
+
Object.defineProperty(exports, "fields", { enumerable: true, get: function () { return fields_1.fields; } });
|
|
6
|
+
Object.defineProperty(exports, "FieldsValidationSchema", { enumerable: true, get: function () { return fields_1.FieldsValidationSchema; } });
|
|
7
|
+
var dataPoints_1 = require("./dataPoints");
|
|
8
|
+
Object.defineProperty(exports, "dataPoints", { enumerable: true, get: function () { return dataPoints_1.dataPoints; } });
|
|
9
|
+
var pathway_1 = require("./pathway");
|
|
10
|
+
Object.defineProperty(exports, "PathwayValidationSchema", { enumerable: true, get: function () { return pathway_1.PathwayValidationSchema; } });
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../extensions/awell/v1/actions/isPatientEnrolledInTrack/config/index.ts"],"names":[],"mappings":";;;AAAA,mCAAyD;AAAhD,gGAAA,MAAM,OAAA;AAAE,gHAAA,sBAAsB,OAAA;AACvC,2CAAyC;AAAhC,wGAAA,UAAU,OAAA;AACnB,qCAAmD;AAA1C,kHAAA,uBAAuB,OAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PathwayValidationSchema = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
exports.PathwayValidationSchema = zod_1.z.object({
|
|
6
|
+
id: zod_1.z.string(),
|
|
7
|
+
});
|
|
8
|
+
//# sourceMappingURL=pathway.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pathway.js","sourceRoot":"","sources":["../../../../../../../extensions/awell/v1/actions/isPatientEnrolledInTrack/config/pathway.ts"],"names":[],"mappings":";;;AAAA,6BAAuB;AAEV,QAAA,uBAAuB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC9C,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE;CACf,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { isPatientEnrolledInTrack } from './isPatientEnrolledInTrack';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isPatientEnrolledInTrack = void 0;
|
|
4
|
+
var isPatientEnrolledInTrack_1 = require("./isPatientEnrolledInTrack");
|
|
5
|
+
Object.defineProperty(exports, "isPatientEnrolledInTrack", { enumerable: true, get: function () { return isPatientEnrolledInTrack_1.isPatientEnrolledInTrack; } });
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../extensions/awell/v1/actions/isPatientEnrolledInTrack/index.ts"],"names":[],"mappings":";;;AAAA,uEAAqE;AAA5D,oIAAA,wBAAwB,OAAA"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.isPatientEnrolledInTrack = void 0;
|
|
7
|
+
const extensions_core_1 = require("@awell-health/extensions-core");
|
|
8
|
+
const config_1 = require("./config");
|
|
9
|
+
const zod_1 = __importDefault(require("zod"));
|
|
10
|
+
const graphql_1 = require("../../gql/graphql");
|
|
11
|
+
const lodash_1 = require("lodash");
|
|
12
|
+
exports.isPatientEnrolledInTrack = {
|
|
13
|
+
key: 'isPatientEnrolledInTrack',
|
|
14
|
+
category: extensions_core_1.Category.WORKFLOW,
|
|
15
|
+
title: 'Check patient track enrollment status',
|
|
16
|
+
description: 'Checks whether the patient is enrolled, has been enrolled, or is scheduled to be enrolled in a specific track. This is time-based and will return the status of the track at the time of the check.',
|
|
17
|
+
fields: config_1.fields,
|
|
18
|
+
dataPoints: config_1.dataPoints,
|
|
19
|
+
previewable: false,
|
|
20
|
+
onEvent: async ({ payload, onComplete, helpers }) => {
|
|
21
|
+
var _a, _b, _c;
|
|
22
|
+
const { fields: { trackDefinitionId }, pathway: { id: pathwayId }, } = (0, extensions_core_1.validate)({
|
|
23
|
+
schema: zod_1.default.object({
|
|
24
|
+
fields: config_1.FieldsValidationSchema,
|
|
25
|
+
pathway: config_1.PathwayValidationSchema,
|
|
26
|
+
}),
|
|
27
|
+
payload,
|
|
28
|
+
});
|
|
29
|
+
const sdk = await helpers.awellSdk();
|
|
30
|
+
const elementsResponse = await sdk.orchestration.query({
|
|
31
|
+
pathwayElements: {
|
|
32
|
+
__args: {
|
|
33
|
+
pathway_id: pathwayId,
|
|
34
|
+
},
|
|
35
|
+
elements: {
|
|
36
|
+
definition_id: true,
|
|
37
|
+
type: true,
|
|
38
|
+
status: true,
|
|
39
|
+
start_date: true,
|
|
40
|
+
end_date: true,
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
});
|
|
44
|
+
// Filter for track elements that match the specified definition ID
|
|
45
|
+
const trackElements = (_c = (_b = (_a = elementsResponse.pathwayElements) === null || _a === void 0 ? void 0 : _a.elements) === null || _b === void 0 ? void 0 : _b.filter((element) => element.type === graphql_1.ElementType.Track &&
|
|
46
|
+
element.definition_id === trackDefinitionId)) !== null && _c !== void 0 ? _c : [];
|
|
47
|
+
// Find if the patient has been enrolled in the track
|
|
48
|
+
const hasBeenEnrolledInTrack = trackElements.some((track) => track.status === graphql_1.ElementStatus.Done &&
|
|
49
|
+
track.end_date !== null &&
|
|
50
|
+
track.end_date !== undefined);
|
|
51
|
+
// Find if the patient is currently enrolled in the track
|
|
52
|
+
const isEnrolledInTrack = trackElements.some((track) => track.status === graphql_1.ElementStatus.Active);
|
|
53
|
+
// Find if the patient is scheduled to be enrolled in the track
|
|
54
|
+
const trackIsScheduled = trackElements.some((track) => track.status === graphql_1.ElementStatus.Scheduled);
|
|
55
|
+
// Find the earliest scheduled date among scheduled tracks
|
|
56
|
+
const scheduledTracks = trackElements.filter((track) => track.status === graphql_1.ElementStatus.Scheduled);
|
|
57
|
+
let trackScheduledDate = null;
|
|
58
|
+
if (scheduledTracks.length > 0) {
|
|
59
|
+
// Find the earliest start_date among scheduled tracks
|
|
60
|
+
const earliestScheduledTrack = scheduledTracks.reduce((earliest, current) => {
|
|
61
|
+
if ((0, lodash_1.isNil)(earliest.start_date))
|
|
62
|
+
return current;
|
|
63
|
+
if ((0, lodash_1.isNil)(current.start_date))
|
|
64
|
+
return earliest;
|
|
65
|
+
return new Date(current.start_date) < new Date(earliest.start_date)
|
|
66
|
+
? current
|
|
67
|
+
: earliest;
|
|
68
|
+
});
|
|
69
|
+
trackScheduledDate = earliestScheduledTrack.start_date;
|
|
70
|
+
}
|
|
71
|
+
await onComplete({
|
|
72
|
+
data_points: {
|
|
73
|
+
has_been_enrolled_in_track: hasBeenEnrolledInTrack.toString(),
|
|
74
|
+
is_enrolled_in_track: isEnrolledInTrack.toString(),
|
|
75
|
+
track_is_scheduled: trackIsScheduled.toString(),
|
|
76
|
+
track_scheduled_date: trackScheduledDate,
|
|
77
|
+
},
|
|
78
|
+
});
|
|
79
|
+
},
|
|
80
|
+
};
|
|
81
|
+
//# sourceMappingURL=isPatientEnrolledInTrack.js.map
|
package/dist/extensions/awell/v1/actions/isPatientEnrolledInTrack/isPatientEnrolledInTrack.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isPatientEnrolledInTrack.js","sourceRoot":"","sources":["../../../../../../extensions/awell/v1/actions/isPatientEnrolledInTrack/isPatientEnrolledInTrack.ts"],"names":[],"mappings":"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"}
|