@awell-health/awell-extensions 1.1.40 → 1.1.42-beta14

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.
Files changed (98) hide show
  1. package/dist/extensions/awell/v1/webhooks/index.d.ts +1 -1
  2. package/dist/extensions/awell/v1/webhooks/pathwayStart.js +12 -3
  3. package/dist/extensions/awell/v1/webhooks/pathwayStart.js.map +1 -1
  4. package/dist/extensions/calDotCom/webhooks/index.d.ts +1 -1
  5. package/dist/extensions/calendly/webhooks/index.d.ts +1 -1
  6. package/dist/extensions/collectData/v1/actions/collectMedication/config/datapoints.d.ts +4 -0
  7. package/dist/extensions/collectData/v1/actions/collectMedication/config/datapoints.js +4 -0
  8. package/dist/extensions/collectData/v1/actions/collectMedication/config/datapoints.js.map +1 -1
  9. package/dist/extensions/elation/actions/updatePatient.js +1 -0
  10. package/dist/extensions/elation/actions/updatePatient.js.map +1 -1
  11. package/dist/extensions/elation/webhooks/index.d.ts +1 -1
  12. package/dist/extensions/healthie/lib/sdk/generated/sdk.d.ts +373 -9
  13. package/dist/extensions/healthie/lib/sdk/generated/sdk.js +110 -3
  14. package/dist/extensions/healthie/lib/sdk/generated/sdk.js.map +1 -1
  15. package/dist/extensions/healthie/lib/sdk/validatePayloadAndCreateSdk.d.ts +11 -1
  16. package/dist/extensions/healthie/lib/sdk/validatePayloadAndCreateSdk.js +15 -1
  17. package/dist/extensions/healthie/lib/sdk/validatePayloadAndCreateSdk.js.map +1 -1
  18. package/dist/extensions/healthie/lib/types.d.ts +1 -0
  19. package/dist/extensions/healthie/lib/types.js +2 -0
  20. package/dist/extensions/healthie/lib/types.js.map +1 -1
  21. package/dist/extensions/healthie/webhooks/appliedTagCreated.d.ts +2 -1
  22. package/dist/extensions/healthie/webhooks/appliedTagCreated.js +33 -12
  23. package/dist/extensions/healthie/webhooks/appliedTagCreated.js.map +1 -1
  24. package/dist/extensions/healthie/webhooks/appliedTagDeleted.d.ts +2 -1
  25. package/dist/extensions/healthie/webhooks/appliedTagDeleted.js +33 -12
  26. package/dist/extensions/healthie/webhooks/appliedTagDeleted.js.map +1 -1
  27. package/dist/extensions/healthie/webhooks/appointmentCreated.d.ts +6 -1
  28. package/dist/extensions/healthie/webhooks/appointmentCreated.js +40 -12
  29. package/dist/extensions/healthie/webhooks/appointmentCreated.js.map +1 -1
  30. package/dist/extensions/healthie/webhooks/appointmentDeleted.d.ts +2 -1
  31. package/dist/extensions/healthie/webhooks/appointmentDeleted.js +36 -12
  32. package/dist/extensions/healthie/webhooks/appointmentDeleted.js.map +1 -1
  33. package/dist/extensions/healthie/webhooks/appointmentUpdated.d.ts +6 -1
  34. package/dist/extensions/healthie/webhooks/appointmentUpdated.js +40 -12
  35. package/dist/extensions/healthie/webhooks/appointmentUpdated.js.map +1 -1
  36. package/dist/extensions/healthie/webhooks/formAnswerGroupCreated.d.ts +6 -1
  37. package/dist/extensions/healthie/webhooks/formAnswerGroupCreated.js +40 -12
  38. package/dist/extensions/healthie/webhooks/formAnswerGroupCreated.js.map +1 -1
  39. package/dist/extensions/healthie/webhooks/formAnswerGroupDeleted.d.ts +2 -1
  40. package/dist/extensions/healthie/webhooks/formAnswerGroupDeleted.js +35 -12
  41. package/dist/extensions/healthie/webhooks/formAnswerGroupDeleted.js.map +1 -1
  42. package/dist/extensions/healthie/webhooks/formAnswerGroupLocked.d.ts +6 -1
  43. package/dist/extensions/healthie/webhooks/formAnswerGroupLocked.js +40 -12
  44. package/dist/extensions/healthie/webhooks/formAnswerGroupLocked.js.map +1 -1
  45. package/dist/extensions/healthie/webhooks/formAnswerGroupSigned.d.ts +6 -1
  46. package/dist/extensions/healthie/webhooks/formAnswerGroupSigned.js +40 -12
  47. package/dist/extensions/healthie/webhooks/formAnswerGroupSigned.js.map +1 -1
  48. package/dist/extensions/healthie/webhooks/goalCreated.d.ts +2 -1
  49. package/dist/extensions/healthie/webhooks/goalCreated.js +34 -13
  50. package/dist/extensions/healthie/webhooks/goalCreated.js.map +1 -1
  51. package/dist/extensions/healthie/webhooks/goalUpdated.d.ts +2 -1
  52. package/dist/extensions/healthie/webhooks/goalUpdated.js +34 -13
  53. package/dist/extensions/healthie/webhooks/goalUpdated.js.map +1 -1
  54. package/dist/extensions/healthie/webhooks/index.d.ts +316 -1
  55. package/dist/extensions/healthie/webhooks/labOrderCreated.d.ts +2 -1
  56. package/dist/extensions/healthie/webhooks/labOrderCreated.js +33 -12
  57. package/dist/extensions/healthie/webhooks/labOrderCreated.js.map +1 -1
  58. package/dist/extensions/healthie/webhooks/labOrderUpdated.d.ts +2 -1
  59. package/dist/extensions/healthie/webhooks/labOrderUpdated.js +33 -12
  60. package/dist/extensions/healthie/webhooks/labOrderUpdated.js.map +1 -1
  61. package/dist/extensions/healthie/webhooks/messageCreated.d.ts +2 -1
  62. package/dist/extensions/healthie/webhooks/messageCreated.js +35 -13
  63. package/dist/extensions/healthie/webhooks/messageCreated.js.map +1 -1
  64. package/dist/extensions/healthie/webhooks/messageDeleted.d.ts +2 -1
  65. package/dist/extensions/healthie/webhooks/messageDeleted.js +35 -13
  66. package/dist/extensions/healthie/webhooks/messageDeleted.js.map +1 -1
  67. package/dist/extensions/healthie/webhooks/metricEntryCreated.d.ts +2 -1
  68. package/dist/extensions/healthie/webhooks/metricEntryCreated.js +33 -12
  69. package/dist/extensions/healthie/webhooks/metricEntryCreated.js.map +1 -1
  70. package/dist/extensions/healthie/webhooks/metricEntryUpdated.d.ts +2 -1
  71. package/dist/extensions/healthie/webhooks/metricEntryUpdated.js +33 -12
  72. package/dist/extensions/healthie/webhooks/metricEntryUpdated.js.map +1 -1
  73. package/dist/extensions/healthie/webhooks/patientCreated.js +5 -0
  74. package/dist/extensions/healthie/webhooks/patientCreated.js.map +1 -1
  75. package/dist/extensions/healthie/webhooks/patientUpdated.js +5 -0
  76. package/dist/extensions/healthie/webhooks/patientUpdated.js.map +1 -1
  77. package/dist/extensions/healthie/webhooks/requestedFormCompletionCreated.d.ts +2 -1
  78. package/dist/extensions/healthie/webhooks/requestedFormCompletionCreated.js +33 -12
  79. package/dist/extensions/healthie/webhooks/requestedFormCompletionCreated.js.map +1 -1
  80. package/dist/extensions/healthie/webhooks/requestedFormCompletionUpdated.d.ts +2 -1
  81. package/dist/extensions/healthie/webhooks/requestedFormCompletionUpdated.js +33 -12
  82. package/dist/extensions/healthie/webhooks/requestedFormCompletionUpdated.js.map +1 -1
  83. package/dist/extensions/healthie/webhooks/taskCreated.d.ts +2 -1
  84. package/dist/extensions/healthie/webhooks/taskCreated.js +33 -12
  85. package/dist/extensions/healthie/webhooks/taskCreated.js.map +1 -1
  86. package/dist/extensions/healthie/webhooks/taskUpdated.d.ts +2 -1
  87. package/dist/extensions/healthie/webhooks/taskUpdated.js +33 -12
  88. package/dist/extensions/healthie/webhooks/taskUpdated.js.map +1 -1
  89. package/dist/extensions/hello-world/webhooks/index.d.ts +1 -1
  90. package/dist/extensions/index.d.ts +1 -1
  91. package/dist/extensions/zusHealth/webhooks/index.d.ts +37 -1
  92. package/dist/extensions/zusHealth/webhooks/patientAdmitted.d.ts +2 -1
  93. package/dist/extensions/zusHealth/webhooks/patientAdmitted.js.map +1 -1
  94. package/dist/extensions/zusHealth/webhooks/patientDischarged.d.ts +2 -1
  95. package/dist/extensions/zusHealth/webhooks/patientDischarged.js.map +1 -1
  96. package/dist/src/test-server.js +4 -0
  97. package/dist/src/test-server.js.map +1 -1
  98. package/package.json +4 -3
@@ -1,7 +1,22 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.messageCreated = void 0;
4
7
  const lodash_1 = require("lodash");
8
+ const types_1 = require("../lib/types");
9
+ const zod_1 = __importDefault(require("zod"));
10
+ const validatePayloadAndCreateSdk_1 = require("../lib/sdk/validatePayloadAndCreateSdk");
11
+ const payloadSchema = zod_1.default
12
+ .object({
13
+ resource_id: zod_1.default.string(),
14
+ })
15
+ .transform((data) => {
16
+ return {
17
+ createdMessageId: data.resource_id,
18
+ };
19
+ });
5
20
  const dataPoints = {
6
21
  createdMessageId: {
7
22
  key: 'createdMessageId',
@@ -12,19 +27,26 @@ exports.messageCreated = {
12
27
  key: 'messageCreated',
13
28
  dataPoints,
14
29
  onWebhookReceived: async ({ payload, settings }, onSuccess, onError) => {
15
- const { resource_id: createdMessageId } = payload;
16
- if ((0, lodash_1.isNil)(createdMessageId)) {
17
- await onError({
18
- // We should automatically send a 400 here, so no need to provide info
19
- });
20
- }
21
- else {
22
- await onSuccess({
23
- data_points: {
24
- createdMessageId,
25
- },
26
- });
27
- }
30
+ var _a, _b, _c, _d;
31
+ const { validatedPayload: { createdMessageId }, sdk, } = await (0, validatePayloadAndCreateSdk_1.validateWebhookPayloadAndCreateSdk)({
32
+ payloadSchema,
33
+ payload,
34
+ settings,
35
+ });
36
+ const messageResponse = await sdk.getMessage({ id: createdMessageId });
37
+ const conversationResponse = await sdk.getConversation({ id: (_b = (_a = messageResponse === null || messageResponse === void 0 ? void 0 : messageResponse.data) === null || _a === void 0 ? void 0 : _a.note) === null || _b === void 0 ? void 0 : _b.conversation_id });
38
+ const healthiePatientId = (_d = (_c = conversationResponse === null || conversationResponse === void 0 ? void 0 : conversationResponse.data) === null || _c === void 0 ? void 0 : _c.conversation) === null || _d === void 0 ? void 0 : _d.patient_id;
39
+ await onSuccess({
40
+ data_points: {
41
+ createdMessageId,
42
+ },
43
+ ...(!(0, lodash_1.isNil)(healthiePatientId) && {
44
+ patient_identifier: {
45
+ system: types_1.HEALTHIE_IDENTIFIER,
46
+ value: healthiePatientId,
47
+ }
48
+ })
49
+ });
28
50
  },
29
51
  };
30
52
  //# sourceMappingURL=messageCreated.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"messageCreated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/messageCreated.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAO9B,MAAM,UAAU,GAAG;IACjB,gBAAgB,EAAE;QAChB,GAAG,EAAE,kBAAkB;QACvB,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA;AAElC,QAAA,cAAc,GAGvB;IACF,GAAG,EAAE,gBAAgB;IACrB,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;QACrE,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAA;QAEjD,IAAI,IAAA,cAAK,EAAC,gBAAgB,CAAC,EAAE;YAC3B,MAAM,OAAO,CAAC;YACZ,sEAAsE;aACvE,CAAC,CAAA;SACH;aAAM;YACL,MAAM,SAAS,CAAC;gBACd,WAAW,EAAE;oBACX,gBAAgB;iBACjB;aACF,CAAC,CAAA;SACH;IACH,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"messageCreated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/messageCreated.ts"],"names":[],"mappings":";;;;;;AAAA,mCAA8B;AAK9B,wCAA+E;AAC/E,8CAAmB;AACnB,wFAA2F;AAG3F,MAAM,aAAa,GAAG,aAAC;KACpB,MAAM,CAAC;IACN,WAAW,EAAE,aAAC,CAAC,MAAM,EAAE;CACxB,CAAC;KACD,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE;IAClB,OAAO;QACL,gBAAgB,EAAE,IAAI,CAAC,WAAW;KACnC,CAAA;AACH,CAAC,CAAC,CAAA;AAEJ,MAAM,UAAU,GAAG;IACjB,gBAAgB,EAAE;QAChB,GAAG,EAAE,kBAAkB;QACvB,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA;AAElC,QAAA,cAAc,GAIvB;IACF,GAAG,EAAE,gBAAgB;IACrB,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;;QACrE,MAAM,EACJ,gBAAgB,EAAE,EAAE,gBAAgB,EAAE,EACtC,GAAG,GACJ,GAAG,MAAM,IAAA,gEAAkC,EAAC;YAC3C,aAAa;YACb,OAAO;YACP,QAAQ;SACT,CAAC,CAAA;QACF,MAAM,eAAe,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAA;QACtE,MAAM,oBAAoB,GAAG,MAAM,GAAG,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,MAAA,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,IAAI,0CAAE,IAAI,0CAAE,eAAe,EAAE,CAAC,CAAA;QAC5G,MAAM,iBAAiB,GAAG,MAAA,MAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,IAAI,0CAAE,YAAY,0CAAE,UAAU,CAAA;QAC9E,MAAM,SAAS,CAAC;YACd,WAAW,EAAE;gBACX,gBAAgB;aACjB;YACD,GAAG,CAAC,CAAC,IAAA,cAAK,EAAC,iBAAiB,CAAC,IAAI;gBAC/B,kBAAkB,EAAE;oBAClB,MAAM,EAAE,2BAAmB;oBAC3B,KAAK,EAAE,iBAAiB;iBACzB;aACF,CAAC;SACH,CAAC,CAAA;IACJ,CAAC;CACF,CAAA"}
@@ -1,11 +1,12 @@
1
1
  import { type Webhook } from '@awell-health/extensions-core';
2
2
  import { type HealthieWebhookPayload } from '../lib/types';
3
+ import { type settings } from '../settings';
3
4
  declare const dataPoints: {
4
5
  deletedMessageId: {
5
6
  key: string;
6
7
  valueType: "string";
7
8
  };
8
9
  };
9
- export declare const messageDeleted: Webhook<keyof typeof dataPoints, HealthieWebhookPayload>;
10
+ export declare const messageDeleted: Webhook<keyof typeof dataPoints, HealthieWebhookPayload, typeof settings>;
10
11
  export type MessageDeleted = typeof messageDeleted;
11
12
  export {};
@@ -1,7 +1,22 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.messageDeleted = void 0;
4
7
  const lodash_1 = require("lodash");
8
+ const types_1 = require("../lib/types");
9
+ const zod_1 = __importDefault(require("zod"));
10
+ const validatePayloadAndCreateSdk_1 = require("../lib/sdk/validatePayloadAndCreateSdk");
11
+ const payloadSchema = zod_1.default
12
+ .object({
13
+ resource_id: zod_1.default.string(),
14
+ })
15
+ .transform((data) => {
16
+ return {
17
+ deletedMessageId: data.resource_id,
18
+ };
19
+ });
5
20
  const dataPoints = {
6
21
  deletedMessageId: {
7
22
  key: 'deletedMessageId',
@@ -12,19 +27,26 @@ exports.messageDeleted = {
12
27
  key: 'messageDeleted',
13
28
  dataPoints,
14
29
  onWebhookReceived: async ({ payload, settings }, onSuccess, onError) => {
15
- const { resource_id: deletedMessageId } = payload;
16
- if ((0, lodash_1.isNil)(deletedMessageId)) {
17
- await onError({
18
- // We should automatically send a 400 here, so no need to provide info
19
- });
20
- }
21
- else {
22
- await onSuccess({
23
- data_points: {
24
- deletedMessageId,
25
- },
26
- });
27
- }
30
+ var _a, _b, _c, _d;
31
+ const { validatedPayload: { deletedMessageId }, sdk, } = await (0, validatePayloadAndCreateSdk_1.validateWebhookPayloadAndCreateSdk)({
32
+ payloadSchema,
33
+ payload,
34
+ settings,
35
+ });
36
+ const messageResponse = await sdk.getMessage({ id: deletedMessageId });
37
+ const conversationResponse = await sdk.getConversation({ id: (_b = (_a = messageResponse === null || messageResponse === void 0 ? void 0 : messageResponse.data) === null || _a === void 0 ? void 0 : _a.note) === null || _b === void 0 ? void 0 : _b.conversation_id });
38
+ const healthiePatientId = (_d = (_c = conversationResponse === null || conversationResponse === void 0 ? void 0 : conversationResponse.data) === null || _c === void 0 ? void 0 : _c.conversation) === null || _d === void 0 ? void 0 : _d.patient_id;
39
+ await onSuccess({
40
+ data_points: {
41
+ deletedMessageId,
42
+ },
43
+ ...(!(0, lodash_1.isNil)(healthiePatientId) && {
44
+ patient_identifier: {
45
+ system: types_1.HEALTHIE_IDENTIFIER,
46
+ value: healthiePatientId,
47
+ }
48
+ }),
49
+ });
28
50
  },
29
51
  };
30
52
  //# sourceMappingURL=messageDeleted.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"messageDeleted.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/messageDeleted.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAO9B,MAAM,UAAU,GAAG;IACjB,gBAAgB,EAAE;QAChB,GAAG,EAAE,kBAAkB;QACvB,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA;AAElC,QAAA,cAAc,GAGvB;IACF,GAAG,EAAE,gBAAgB;IACrB,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;QACrE,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAA;QAEjD,IAAI,IAAA,cAAK,EAAC,gBAAgB,CAAC,EAAE;YAC3B,MAAM,OAAO,CAAC;YACZ,sEAAsE;aACvE,CAAC,CAAA;SACH;aAAM;YACL,MAAM,SAAS,CAAC;gBACd,WAAW,EAAE;oBACX,gBAAgB;iBACjB;aACF,CAAC,CAAA;SACH;IACH,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"messageDeleted.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/messageDeleted.ts"],"names":[],"mappings":";;;;;;AAAA,mCAA8B;AAK9B,wCAA+E;AAC/E,8CAAmB;AACnB,wFAA2F;AAG3F,MAAM,aAAa,GAAG,aAAC;KACpB,MAAM,CAAC;IACN,WAAW,EAAE,aAAC,CAAC,MAAM,EAAE;CACxB,CAAC;KACD,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE;IAClB,OAAO;QACL,gBAAgB,EAAE,IAAI,CAAC,WAAW;KACnC,CAAA;AACH,CAAC,CAAC,CAAA;AAEJ,MAAM,UAAU,GAAG;IACjB,gBAAgB,EAAE;QAChB,GAAG,EAAE,kBAAkB;QACvB,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA;AAElC,QAAA,cAAc,GAIvB;IACF,GAAG,EAAE,gBAAgB;IACrB,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;;QACrE,MAAM,EACJ,gBAAgB,EAAE,EAAE,gBAAgB,EAAE,EACtC,GAAG,GACJ,GAAG,MAAM,IAAA,gEAAkC,EAAC;YAC3C,aAAa;YACb,OAAO;YACP,QAAQ;SACT,CAAC,CAAA;QACF,MAAM,eAAe,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAA;QACtE,MAAM,oBAAoB,GAAG,MAAM,GAAG,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,MAAA,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,IAAI,0CAAE,IAAI,0CAAE,eAAe,EAAE,CAAC,CAAA;QAC5G,MAAM,iBAAiB,GAAG,MAAA,MAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,IAAI,0CAAE,YAAY,0CAAE,UAAU,CAAA;QAC9E,MAAM,SAAS,CAAC;YACd,WAAW,EAAE;gBACX,gBAAgB;aACjB;YACD,GAAG,CAAC,CAAC,IAAA,cAAK,EAAC,iBAAiB,CAAC,IAAI;gBAC/B,kBAAkB,EAAE;oBAClB,MAAM,EAAE,2BAAmB;oBAC3B,KAAK,EAAE,iBAAiB;iBACzB;aACF,CAAC;SACH,CAAC,CAAA;IACJ,CAAC;CACF,CAAA"}
@@ -1,11 +1,12 @@
1
1
  import { type Webhook } from '@awell-health/extensions-core';
2
2
  import { type HealthieWebhookPayload } from '../lib/types';
3
+ import { type settings } from '../settings';
3
4
  declare const dataPoints: {
4
5
  createdMetricId: {
5
6
  key: string;
6
7
  valueType: "string";
7
8
  };
8
9
  };
9
- export declare const metricEntryCreated: Webhook<keyof typeof dataPoints, HealthieWebhookPayload>;
10
+ export declare const metricEntryCreated: Webhook<keyof typeof dataPoints, HealthieWebhookPayload, typeof settings>;
10
11
  export type MetricEntryCreated = typeof metricEntryCreated;
11
12
  export {};
@@ -1,7 +1,22 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.metricEntryCreated = void 0;
4
7
  const lodash_1 = require("lodash");
8
+ const types_1 = require("../lib/types");
9
+ const zod_1 = __importDefault(require("zod"));
10
+ const validatePayloadAndCreateSdk_1 = require("../lib/sdk/validatePayloadAndCreateSdk");
11
+ const payloadSchema = zod_1.default
12
+ .object({
13
+ resource_id: zod_1.default.string(),
14
+ })
15
+ .transform((data) => {
16
+ return {
17
+ createdMetricId: data.resource_id,
18
+ };
19
+ });
5
20
  const dataPoints = {
6
21
  createdMetricId: {
7
22
  key: 'createdMetricId',
@@ -12,19 +27,25 @@ exports.metricEntryCreated = {
12
27
  key: 'metricEntryCreated',
13
28
  dataPoints,
14
29
  onWebhookReceived: async ({ payload, settings }, onSuccess, onError) => {
15
- const { resource_id: createdMetricId } = payload;
16
- if ((0, lodash_1.isNil)(createdMetricId)) {
17
- await onError({
18
- // We should automatically send a 400 here, so no need to provide info
19
- });
20
- }
21
- else {
22
- await onSuccess({
23
- data_points: {
24
- createdMetricId,
30
+ var _a, _b, _c;
31
+ const { validatedPayload: { createdMetricId }, sdk, } = await (0, validatePayloadAndCreateSdk_1.validateWebhookPayloadAndCreateSdk)({
32
+ payloadSchema,
33
+ payload,
34
+ settings,
35
+ });
36
+ const response = await sdk.getMetricEntry({ id: createdMetricId });
37
+ const healthiePatientId = (_c = (_b = (_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.entry) === null || _b === void 0 ? void 0 : _b.poster) === null || _c === void 0 ? void 0 : _c.id;
38
+ await onSuccess({
39
+ data_points: {
40
+ createdMetricId,
41
+ },
42
+ ...(!(0, lodash_1.isNil)(healthiePatientId) && {
43
+ patient_identifier: {
44
+ system: types_1.HEALTHIE_IDENTIFIER,
45
+ value: healthiePatientId,
25
46
  },
26
- });
27
- }
47
+ }),
48
+ });
28
49
  },
29
50
  };
30
51
  //# sourceMappingURL=metricEntryCreated.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"metricEntryCreated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/metricEntryCreated.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAO9B,MAAM,UAAU,GAAG;IACjB,eAAe,EAAE;QACf,GAAG,EAAE,iBAAiB;QACtB,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA;AAElC,QAAA,kBAAkB,GAG3B;IACF,GAAG,EAAE,oBAAoB;IACzB,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;QACrE,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,GAAG,OAAO,CAAA;QAEhD,IAAI,IAAA,cAAK,EAAC,eAAe,CAAC,EAAE;YAC1B,MAAM,OAAO,CAAC;YACZ,sEAAsE;aACvE,CAAC,CAAA;SACH;aAAM;YACL,MAAM,SAAS,CAAC;gBACd,WAAW,EAAE;oBACX,eAAe;iBAChB;aACF,CAAC,CAAA;SACH;IACH,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"metricEntryCreated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/metricEntryCreated.ts"],"names":[],"mappings":";;;;;;AAAA,mCAA8B;AAK9B,wCAA+E;AAC/E,8CAAmB;AACnB,wFAA2F;AAG3F,MAAM,aAAa,GAAG,aAAC;KACpB,MAAM,CAAC;IACN,WAAW,EAAE,aAAC,CAAC,MAAM,EAAE;CACxB,CAAC;KACD,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE;IAClB,OAAO;QACL,eAAe,EAAE,IAAI,CAAC,WAAW;KAClC,CAAA;AACH,CAAC,CAAC,CAAA;AAEJ,MAAM,UAAU,GAAG;IACjB,eAAe,EAAE;QACf,GAAG,EAAE,iBAAiB;QACtB,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA;AAElC,QAAA,kBAAkB,GAI3B;IACF,GAAG,EAAE,oBAAoB;IACzB,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;;QACrE,MAAM,EACJ,gBAAgB,EAAE,EAAE,eAAe,EAAE,EACrC,GAAG,GACJ,GAAG,MAAM,IAAA,gEAAkC,EAAC;YAC3C,aAAa;YACb,OAAO;YACP,QAAQ;SACT,CAAC,CAAA;QACF,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC,CAAA;QAClE,MAAM,iBAAiB,GAAG,MAAA,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,KAAK,0CAAE,MAAM,0CAAE,EAAE,CAAA;QAC3D,MAAM,SAAS,CAAC;YACd,WAAW,EAAE;gBACX,eAAe;aAChB;YACD,GAAG,CAAC,CAAC,IAAA,cAAK,EAAC,iBAAiB,CAAC,IAAI;gBAC/B,kBAAkB,EAAE;oBAClB,MAAM,EAAE,2BAAmB;oBAC3B,KAAK,EAAE,iBAAiB;iBACzB;aACF,CAAC;SACH,CAAC,CAAA;IACJ,CAAC;CACF,CAAA"}
@@ -1,11 +1,12 @@
1
1
  import { type Webhook } from '@awell-health/extensions-core';
2
2
  import { type HealthieWebhookPayload } from '../lib/types';
3
+ import { type settings } from '../settings';
3
4
  declare const dataPoints: {
4
5
  updatedMetricId: {
5
6
  key: string;
6
7
  valueType: "string";
7
8
  };
8
9
  };
9
- export declare const metricEntryUpdated: Webhook<keyof typeof dataPoints, HealthieWebhookPayload>;
10
+ export declare const metricEntryUpdated: Webhook<keyof typeof dataPoints, HealthieWebhookPayload, typeof settings>;
10
11
  export type MetricEntryUpdated = typeof metricEntryUpdated;
11
12
  export {};
@@ -1,7 +1,22 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.metricEntryUpdated = void 0;
4
7
  const lodash_1 = require("lodash");
8
+ const types_1 = require("../lib/types");
9
+ const zod_1 = __importDefault(require("zod"));
10
+ const validatePayloadAndCreateSdk_1 = require("../lib/sdk/validatePayloadAndCreateSdk");
11
+ const payloadSchema = zod_1.default
12
+ .object({
13
+ resource_id: zod_1.default.string(),
14
+ })
15
+ .transform((data) => {
16
+ return {
17
+ updatedMetricId: data.resource_id,
18
+ };
19
+ });
5
20
  const dataPoints = {
6
21
  updatedMetricId: {
7
22
  key: 'updatedMetricId',
@@ -12,19 +27,25 @@ exports.metricEntryUpdated = {
12
27
  key: 'metricEntryUpdated',
13
28
  dataPoints,
14
29
  onWebhookReceived: async ({ payload, settings }, onSuccess, onError) => {
15
- const { resource_id: updatedMetricId } = payload;
16
- if ((0, lodash_1.isNil)(updatedMetricId)) {
17
- await onError({
18
- // We should automatically send a 400 here, so no need to provide info
19
- });
20
- }
21
- else {
22
- await onSuccess({
23
- data_points: {
24
- updatedMetricId,
30
+ var _a, _b, _c;
31
+ const { validatedPayload: { updatedMetricId }, sdk, } = await (0, validatePayloadAndCreateSdk_1.validateWebhookPayloadAndCreateSdk)({
32
+ payloadSchema,
33
+ payload,
34
+ settings,
35
+ });
36
+ const response = await sdk.getMetricEntry({ id: updatedMetricId });
37
+ const healthiePatientId = (_c = (_b = (_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.entry) === null || _b === void 0 ? void 0 : _b.poster) === null || _c === void 0 ? void 0 : _c.id;
38
+ await onSuccess({
39
+ data_points: {
40
+ updatedMetricId,
41
+ },
42
+ ...(!(0, lodash_1.isNil)(healthiePatientId) && {
43
+ patient_identifier: {
44
+ system: types_1.HEALTHIE_IDENTIFIER,
45
+ value: healthiePatientId,
25
46
  },
26
- });
27
- }
47
+ }),
48
+ });
28
49
  },
29
50
  };
30
51
  //# sourceMappingURL=metricEntryUpdated.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"metricEntryUpdated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/metricEntryUpdated.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAO9B,MAAM,UAAU,GAAG;IACjB,eAAe,EAAE;QACf,GAAG,EAAE,iBAAiB;QACtB,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA;AAElC,QAAA,kBAAkB,GAG3B;IACF,GAAG,EAAE,oBAAoB;IACzB,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;QACrE,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,GAAG,OAAO,CAAA;QAEhD,IAAI,IAAA,cAAK,EAAC,eAAe,CAAC,EAAE;YAC1B,MAAM,OAAO,CAAC;YACZ,sEAAsE;aACvE,CAAC,CAAA;SACH;aAAM;YACL,MAAM,SAAS,CAAC;gBACd,WAAW,EAAE;oBACX,eAAe;iBAChB;aACF,CAAC,CAAA;SACH;IACH,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"metricEntryUpdated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/metricEntryUpdated.ts"],"names":[],"mappings":";;;;;;AAAA,mCAA8B;AAK9B,wCAA+E;AAC/E,8CAAmB;AACnB,wFAA2F;AAG3F,MAAM,aAAa,GAAG,aAAC;KACpB,MAAM,CAAC;IACN,WAAW,EAAE,aAAC,CAAC,MAAM,EAAE;CACxB,CAAC;KACD,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE;IAClB,OAAO;QACL,eAAe,EAAE,IAAI,CAAC,WAAW;KAClC,CAAA;AACH,CAAC,CAAC,CAAA;AAEJ,MAAM,UAAU,GAAG;IACjB,eAAe,EAAE;QACf,GAAG,EAAE,iBAAiB;QACtB,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA;AAElC,QAAA,kBAAkB,GAI3B;IACF,GAAG,EAAE,oBAAoB;IACzB,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;;QACrE,MAAM,EACJ,gBAAgB,EAAE,EAAE,eAAe,EAAE,EACrC,GAAG,GACJ,GAAG,MAAM,IAAA,gEAAkC,EAAC;YAC3C,aAAa;YACb,OAAO;YACP,QAAQ;SACT,CAAC,CAAA;QACF,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC,CAAA;QAClE,MAAM,iBAAiB,GAAG,MAAA,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,KAAK,0CAAE,MAAM,0CAAE,EAAE,CAAA;QAE3D,MAAM,SAAS,CAAC;YACd,WAAW,EAAE;gBACX,eAAe;aAChB;YACD,GAAG,CAAC,CAAC,IAAA,cAAK,EAAC,iBAAiB,CAAC,IAAI;gBAC/B,kBAAkB,EAAE;oBAClB,MAAM,EAAE,2BAAmB;oBAC3B,KAAK,EAAE,iBAAiB;iBACzB;aACF,CAAC;SACH,CAAC,CAAA;IACJ,CAAC;CACF,CAAA"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.patientCreated = void 0;
4
4
  const lodash_1 = require("lodash");
5
+ const types_1 = require("../lib/types");
5
6
  const dataPoints = {
6
7
  patientId: {
7
8
  key: 'patientId',
@@ -23,6 +24,10 @@ exports.patientCreated = {
23
24
  data_points: {
24
25
  patientId,
25
26
  },
27
+ patient_identifier: {
28
+ system: types_1.HEALTHIE_IDENTIFIER,
29
+ value: patientId,
30
+ },
26
31
  });
27
32
  }
28
33
  },
@@ -1 +1 @@
1
- {"version":3,"file":"patientCreated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/patientCreated.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAO9B,MAAM,UAAU,GAAG;IACjB,SAAS,EAAE;QACT,GAAG,EAAE,WAAW;QAChB,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA;AAElC,QAAA,cAAc,GAGvB;IACF,GAAG,EAAE,gBAAgB;IACrB,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;QACrE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,OAAO,CAAA;QAE1C,IAAI,IAAA,cAAK,EAAC,SAAS,CAAC,EAAE;YACpB,MAAM,OAAO,CAAC;YACZ,sEAAsE;aACvE,CAAC,CAAA;SACH;aAAM;YACL,MAAM,SAAS,CAAC;gBACd,WAAW,EAAE;oBACX,SAAS;iBACV;aACF,CAAC,CAAA;SACH;IACH,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"patientCreated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/patientCreated.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAK9B,wCAA+E;AAE/E,MAAM,UAAU,GAAG;IACjB,SAAS,EAAE;QACT,GAAG,EAAE,WAAW;QAChB,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA;AAElC,QAAA,cAAc,GAGvB;IACF,GAAG,EAAE,gBAAgB;IACrB,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;QACrE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,OAAO,CAAA;QAE1C,IAAI,IAAA,cAAK,EAAC,SAAS,CAAC,EAAE;YACpB,MAAM,OAAO,CAAC;YACZ,sEAAsE;aACvE,CAAC,CAAA;SACH;aAAM;YACL,MAAM,SAAS,CAAC;gBACd,WAAW,EAAE;oBACX,SAAS;iBACV;gBACD,kBAAkB,EAAE;oBAClB,MAAM,EAAE,2BAAmB;oBAC3B,KAAK,EAAE,SAAS;iBACjB;aACF,CAAC,CAAA;SACH;IACH,CAAC;CACF,CAAA"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.patientUpdated = void 0;
4
4
  const lodash_1 = require("lodash");
5
+ const types_1 = require("../lib/types");
5
6
  const dataPoints = {
6
7
  updatedPatientId: {
7
8
  key: 'updatedPatientId',
@@ -23,6 +24,10 @@ exports.patientUpdated = {
23
24
  data_points: {
24
25
  updatedPatientId,
25
26
  },
27
+ patient_identifier: {
28
+ system: types_1.HEALTHIE_IDENTIFIER,
29
+ value: updatedPatientId,
30
+ },
26
31
  });
27
32
  }
28
33
  },
@@ -1 +1 @@
1
- {"version":3,"file":"patientUpdated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/patientUpdated.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAO9B,MAAM,UAAU,GAAG;IACjB,gBAAgB,EAAE;QAChB,GAAG,EAAE,kBAAkB;QACvB,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA;AAElC,QAAA,cAAc,GAGvB;IACF,GAAG,EAAE,gBAAgB;IACrB,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;QACrE,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAA;QAEjD,IAAI,IAAA,cAAK,EAAC,gBAAgB,CAAC,EAAE;YAC3B,MAAM,OAAO,CAAC;YACZ,sEAAsE;aACvE,CAAC,CAAA;SACH;aAAM;YACL,MAAM,SAAS,CAAC;gBACd,WAAW,EAAE;oBACX,gBAAgB;iBACjB;aACF,CAAC,CAAA;SACH;IACH,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"patientUpdated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/patientUpdated.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAK9B,wCAA+E;AAE/E,MAAM,UAAU,GAAG;IACjB,gBAAgB,EAAE;QAChB,GAAG,EAAE,kBAAkB;QACvB,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA;AAElC,QAAA,cAAc,GAGvB;IACF,GAAG,EAAE,gBAAgB;IACrB,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;QACrE,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAA;QAEjD,IAAI,IAAA,cAAK,EAAC,gBAAgB,CAAC,EAAE;YAC3B,MAAM,OAAO,CAAC;YACZ,sEAAsE;aACvE,CAAC,CAAA;SACH;aAAM;YACL,MAAM,SAAS,CAAC;gBACd,WAAW,EAAE;oBACX,gBAAgB;iBACjB;gBACD,kBAAkB,EAAE;oBAClB,MAAM,EAAE,2BAAmB;oBAC3B,KAAK,EAAE,gBAAgB;iBACxB;aACF,CAAC,CAAA;SACH;IACH,CAAC;CACF,CAAA"}
@@ -1,11 +1,12 @@
1
1
  import { type Webhook } from '@awell-health/extensions-core';
2
2
  import { type HealthieWebhookPayload } from '../lib/types';
3
+ import { type settings } from '../settings';
3
4
  declare const dataPoints: {
4
5
  createdFormCompletionId: {
5
6
  key: string;
6
7
  valueType: "string";
7
8
  };
8
9
  };
9
- export declare const requestFormCompletionCreated: Webhook<keyof typeof dataPoints, HealthieWebhookPayload>;
10
+ export declare const requestFormCompletionCreated: Webhook<keyof typeof dataPoints, HealthieWebhookPayload, typeof settings>;
10
11
  export type RequestFormCompletionCreated = typeof requestFormCompletionCreated;
11
12
  export {};
@@ -1,7 +1,22 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.requestFormCompletionCreated = void 0;
4
7
  const lodash_1 = require("lodash");
8
+ const types_1 = require("../lib/types");
9
+ const zod_1 = __importDefault(require("zod"));
10
+ const validatePayloadAndCreateSdk_1 = require("../lib/sdk/validatePayloadAndCreateSdk");
11
+ const payloadSchema = zod_1.default
12
+ .object({
13
+ resource_id: zod_1.default.string(),
14
+ })
15
+ .transform((data) => {
16
+ return {
17
+ createdFormCompletionId: data.resource_id,
18
+ };
19
+ });
5
20
  const dataPoints = {
6
21
  createdFormCompletionId: {
7
22
  key: 'createdFormCompletionId',
@@ -12,19 +27,25 @@ exports.requestFormCompletionCreated = {
12
27
  key: 'requestFormCompletionCreated',
13
28
  dataPoints,
14
29
  onWebhookReceived: async ({ payload, settings }, onSuccess, onError) => {
15
- const { resource_id: createdFormCompletionId } = payload;
16
- if ((0, lodash_1.isNil)(createdFormCompletionId)) {
17
- await onError({
18
- // We should automatically send a 400 here, so no need to provide info
19
- });
20
- }
21
- else {
22
- await onSuccess({
23
- data_points: {
24
- createdFormCompletionId,
30
+ var _a, _b;
31
+ const { validatedPayload: { createdFormCompletionId }, sdk, } = await (0, validatePayloadAndCreateSdk_1.validateWebhookPayloadAndCreateSdk)({
32
+ payloadSchema,
33
+ payload,
34
+ settings,
35
+ });
36
+ const response = await sdk.getRequestedFormCompletion({ id: createdFormCompletionId });
37
+ const healthiePatientId = (_b = (_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.requestedFormCompletion) === null || _b === void 0 ? void 0 : _b.recipient_id;
38
+ await onSuccess({
39
+ data_points: {
40
+ createdFormCompletionId,
41
+ },
42
+ ...(!(0, lodash_1.isNil)(healthiePatientId) && {
43
+ patient_identifier: {
44
+ system: types_1.HEALTHIE_IDENTIFIER,
45
+ value: healthiePatientId,
25
46
  },
26
- });
27
- }
47
+ }),
48
+ });
28
49
  },
29
50
  };
30
51
  //# sourceMappingURL=requestedFormCompletionCreated.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"requestedFormCompletionCreated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/requestedFormCompletionCreated.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAO9B,MAAM,UAAU,GAAG;IACjB,uBAAuB,EAAE;QACvB,GAAG,EAAE,yBAAyB;QAC9B,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA;AAElC,QAAA,4BAA4B,GAGrC;IACF,GAAG,EAAE,8BAA8B;IACnC,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;QACrE,MAAM,EAAE,WAAW,EAAE,uBAAuB,EAAE,GAAG,OAAO,CAAA;QAExD,IAAI,IAAA,cAAK,EAAC,uBAAuB,CAAC,EAAE;YAClC,MAAM,OAAO,CAAC;YACZ,sEAAsE;aACvE,CAAC,CAAA;SACH;aAAM;YACL,MAAM,SAAS,CAAC;gBACd,WAAW,EAAE;oBACX,uBAAuB;iBACxB;aACF,CAAC,CAAA;SACH;IACH,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"requestedFormCompletionCreated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/requestedFormCompletionCreated.ts"],"names":[],"mappings":";;;;;;AAAA,mCAA8B;AAK9B,wCAA+E;AAC/E,8CAAmB;AACnB,wFAA2F;AAG3F,MAAM,aAAa,GAAG,aAAC;KACpB,MAAM,CAAC;IACN,WAAW,EAAE,aAAC,CAAC,MAAM,EAAE;CACxB,CAAC;KACD,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE;IAClB,OAAO;QACL,uBAAuB,EAAE,IAAI,CAAC,WAAW;KAC1C,CAAA;AACH,CAAC,CAAC,CAAA;AAEJ,MAAM,UAAU,GAAG;IACjB,uBAAuB,EAAE;QACvB,GAAG,EAAE,yBAAyB;QAC9B,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA;AAElC,QAAA,4BAA4B,GAIrC;IACF,GAAG,EAAE,8BAA8B;IACnC,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;;QACrE,MAAM,EACJ,gBAAgB,EAAE,EAAE,uBAAuB,EAAE,EAC7C,GAAG,GACJ,GAAG,MAAM,IAAA,gEAAkC,EAAC;YAC3C,aAAa;YACb,OAAO;YACP,QAAQ;SACT,CAAC,CAAA;QACF,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,0BAA0B,CAAC,EAAE,EAAE,EAAE,uBAAuB,EAAE,CAAC,CAAA;QACtF,MAAM,iBAAiB,GAAG,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,uBAAuB,0CAAE,YAAY,CAAA;QAC/E,MAAM,SAAS,CAAC;YACd,WAAW,EAAE;gBACX,uBAAuB;aACxB;YACD,GAAG,CAAC,CAAC,IAAA,cAAK,EAAC,iBAAiB,CAAC,IAAI;gBAC/B,kBAAkB,EAAE;oBAClB,MAAM,EAAE,2BAAmB;oBAC3B,KAAK,EAAE,iBAAiB;iBACzB;aACF,CAAC;SACH,CAAC,CAAA;IACJ,CAAC;CACF,CAAA"}
@@ -1,11 +1,12 @@
1
1
  import { type Webhook } from '@awell-health/extensions-core';
2
2
  import { type HealthieWebhookPayload } from '../lib/types';
3
+ import { type settings } from '../settings';
3
4
  declare const dataPoints: {
4
5
  updatedFormCompletionId: {
5
6
  key: string;
6
7
  valueType: "string";
7
8
  };
8
9
  };
9
- export declare const requestFormCompletionUpdated: Webhook<keyof typeof dataPoints, HealthieWebhookPayload>;
10
+ export declare const requestFormCompletionUpdated: Webhook<keyof typeof dataPoints, HealthieWebhookPayload, typeof settings>;
10
11
  export type RequestFormCompletionUpdated = typeof requestFormCompletionUpdated;
11
12
  export {};
@@ -1,7 +1,22 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.requestFormCompletionUpdated = void 0;
4
7
  const lodash_1 = require("lodash");
8
+ const types_1 = require("../lib/types");
9
+ const zod_1 = __importDefault(require("zod"));
10
+ const validatePayloadAndCreateSdk_1 = require("../lib/sdk/validatePayloadAndCreateSdk");
11
+ const payloadSchema = zod_1.default
12
+ .object({
13
+ resource_id: zod_1.default.string(),
14
+ })
15
+ .transform((data) => {
16
+ return {
17
+ updatedFormCompletionId: data.resource_id,
18
+ };
19
+ });
5
20
  const dataPoints = {
6
21
  updatedFormCompletionId: {
7
22
  key: 'updatedFormCompletionId',
@@ -12,19 +27,25 @@ exports.requestFormCompletionUpdated = {
12
27
  key: 'requestFormCompletionUpdated',
13
28
  dataPoints,
14
29
  onWebhookReceived: async ({ payload, settings }, onSuccess, onError) => {
15
- const { resource_id: updatedFormCompletionId } = payload;
16
- if ((0, lodash_1.isNil)(updatedFormCompletionId)) {
17
- await onError({
18
- // We should automatically send a 400 here, so no need to provide info
19
- });
20
- }
21
- else {
22
- await onSuccess({
23
- data_points: {
24
- updatedFormCompletionId,
30
+ var _a, _b;
31
+ const { validatedPayload: { updatedFormCompletionId }, sdk, } = await (0, validatePayloadAndCreateSdk_1.validateWebhookPayloadAndCreateSdk)({
32
+ payloadSchema,
33
+ payload,
34
+ settings,
35
+ });
36
+ const response = await sdk.getRequestedFormCompletion({ id: updatedFormCompletionId });
37
+ const healthiePatientId = (_b = (_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.requestedFormCompletion) === null || _b === void 0 ? void 0 : _b.recipient_id;
38
+ await onSuccess({
39
+ data_points: {
40
+ updatedFormCompletionId,
41
+ },
42
+ ...(!(0, lodash_1.isNil)(healthiePatientId) && {
43
+ patient_identifier: {
44
+ system: types_1.HEALTHIE_IDENTIFIER,
45
+ value: healthiePatientId,
25
46
  },
26
- });
27
- }
47
+ }),
48
+ });
28
49
  },
29
50
  };
30
51
  //# sourceMappingURL=requestedFormCompletionUpdated.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"requestedFormCompletionUpdated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/requestedFormCompletionUpdated.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAO9B,MAAM,UAAU,GAAG;IACjB,uBAAuB,EAAE;QACvB,GAAG,EAAE,yBAAyB;QAC9B,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA;AAElC,QAAA,4BAA4B,GAGrC;IACF,GAAG,EAAE,8BAA8B;IACnC,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;QACrE,MAAM,EAAE,WAAW,EAAE,uBAAuB,EAAE,GAAG,OAAO,CAAA;QAExD,IAAI,IAAA,cAAK,EAAC,uBAAuB,CAAC,EAAE;YAClC,MAAM,OAAO,CAAC;YACZ,sEAAsE;aACvE,CAAC,CAAA;SACH;aAAM;YACL,MAAM,SAAS,CAAC;gBACd,WAAW,EAAE;oBACX,uBAAuB;iBACxB;aACF,CAAC,CAAA;SACH;IACH,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"requestedFormCompletionUpdated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/requestedFormCompletionUpdated.ts"],"names":[],"mappings":";;;;;;AAAA,mCAA8B;AAK9B,wCAA+E;AAC/E,8CAAmB;AACnB,wFAA2F;AAG3F,MAAM,aAAa,GAAG,aAAC;KACpB,MAAM,CAAC;IACN,WAAW,EAAE,aAAC,CAAC,MAAM,EAAE;CACxB,CAAC;KACD,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE;IAClB,OAAO;QACL,uBAAuB,EAAE,IAAI,CAAC,WAAW;KAC1C,CAAA;AACH,CAAC,CAAC,CAAA;AAEJ,MAAM,UAAU,GAAG;IACjB,uBAAuB,EAAE;QACvB,GAAG,EAAE,yBAAyB;QAC9B,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA;AAElC,QAAA,4BAA4B,GAIrC;IACF,GAAG,EAAE,8BAA8B;IACnC,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;;QACrE,MAAM,EACJ,gBAAgB,EAAE,EAAE,uBAAuB,EAAE,EAC7C,GAAG,GACJ,GAAG,MAAM,IAAA,gEAAkC,EAAC;YAC3C,aAAa;YACb,OAAO;YACP,QAAQ;SACT,CAAC,CAAA;QACF,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,0BAA0B,CAAC,EAAE,EAAE,EAAE,uBAAuB,EAAE,CAAC,CAAA;QACtF,MAAM,iBAAiB,GAAG,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,uBAAuB,0CAAE,YAAY,CAAA;QAC/E,MAAM,SAAS,CAAC;YACd,WAAW,EAAE;gBACX,uBAAuB;aACxB;YACD,GAAG,CAAC,CAAC,IAAA,cAAK,EAAC,iBAAiB,CAAC,IAAI;gBAC/B,kBAAkB,EAAE;oBAClB,MAAM,EAAE,2BAAmB;oBAC3B,KAAK,EAAE,iBAAiB;iBACzB;aACF,CAAC;SACH,CAAC,CAAA;IACJ,CAAC;CACF,CAAA"}
@@ -1,11 +1,12 @@
1
1
  import { type Webhook } from '@awell-health/extensions-core';
2
2
  import { type HealthieWebhookPayload } from '../lib/types';
3
+ import { type settings } from '../settings';
3
4
  declare const dataPoints: {
4
5
  createdTaskId: {
5
6
  key: string;
6
7
  valueType: "string";
7
8
  };
8
9
  };
9
- export declare const taskCreated: Webhook<keyof typeof dataPoints, HealthieWebhookPayload>;
10
+ export declare const taskCreated: Webhook<keyof typeof dataPoints, HealthieWebhookPayload, typeof settings>;
10
11
  export type TaskCreated = typeof taskCreated;
11
12
  export {};
@@ -1,7 +1,22 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.taskCreated = void 0;
4
7
  const lodash_1 = require("lodash");
8
+ const types_1 = require("../lib/types");
9
+ const zod_1 = __importDefault(require("zod"));
10
+ const validatePayloadAndCreateSdk_1 = require("../lib/sdk/validatePayloadAndCreateSdk");
11
+ const payloadSchema = zod_1.default
12
+ .object({
13
+ resource_id: zod_1.default.string(),
14
+ })
15
+ .transform((data) => {
16
+ return {
17
+ createdTaskId: data.resource_id,
18
+ };
19
+ });
5
20
  const dataPoints = {
6
21
  createdTaskId: {
7
22
  key: 'createdTaskId',
@@ -12,19 +27,25 @@ exports.taskCreated = {
12
27
  key: 'taskCreated',
13
28
  dataPoints,
14
29
  onWebhookReceived: async ({ payload, settings }, onSuccess, onError) => {
15
- const { resource_id: createdTaskId } = payload;
16
- if ((0, lodash_1.isNil)(createdTaskId)) {
17
- await onError({
18
- // We should automatically send a 400 here, so no need to provide info
19
- });
20
- }
21
- else {
22
- await onSuccess({
23
- data_points: {
24
- createdTaskId,
30
+ var _a, _b;
31
+ const { validatedPayload: { createdTaskId }, sdk, } = await (0, validatePayloadAndCreateSdk_1.validateWebhookPayloadAndCreateSdk)({
32
+ payloadSchema,
33
+ payload,
34
+ settings,
35
+ });
36
+ const response = await sdk.getTask({ id: createdTaskId });
37
+ const healthiePatientId = (_b = (_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.task) === null || _b === void 0 ? void 0 : _b.client_id;
38
+ await onSuccess({
39
+ data_points: {
40
+ createdTaskId,
41
+ },
42
+ ...(!(0, lodash_1.isNil)(healthiePatientId) && {
43
+ patient_identifier: {
44
+ system: types_1.HEALTHIE_IDENTIFIER,
45
+ value: healthiePatientId,
25
46
  },
26
- });
27
- }
47
+ }),
48
+ });
28
49
  },
29
50
  };
30
51
  //# sourceMappingURL=taskCreated.js.map