@awell-health/awell-extensions 1.1.41 → 1.1.42-beta15

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 (97) 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/zusHealth/webhooks/index.d.ts +37 -1
  91. package/dist/extensions/zusHealth/webhooks/patientAdmitted.d.ts +2 -1
  92. package/dist/extensions/zusHealth/webhooks/patientAdmitted.js.map +1 -1
  93. package/dist/extensions/zusHealth/webhooks/patientDischarged.d.ts +2 -1
  94. package/dist/extensions/zusHealth/webhooks/patientDischarged.js.map +1 -1
  95. package/dist/src/test-server.js +4 -0
  96. package/dist/src/test-server.js.map +1 -1
  97. package/package.json +4 -3
@@ -1 +1 @@
1
- {"version":3,"file":"appointmentCreated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/appointmentCreated.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAO9B,MAAM,UAAU,GAAG;IACjB,aAAa,EAAE;QACb,GAAG,EAAE,eAAe;QACpB,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,aAAa,EAAE,GAAG,OAAO,CAAA;QAE9C,IAAI,IAAA,cAAK,EAAC,aAAa,CAAC,EAAE;YACxB,MAAM,OAAO,CAAC;YACZ,sEAAsE;aACvE,CAAC,CAAA;SACH;aAAM;YACL,MAAM,SAAS,CAAC;gBACd,WAAW,EAAE;oBACX,aAAa;iBACd;aACF,CAAC,CAAA;SACH;IACH,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"appointmentCreated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/appointmentCreated.ts"],"names":[],"mappings":";;;;;;AAAA,mCAA8B;AAK9B,wCAA+E;AAC/E,8CAAmB;AACnB,wFAA2F;AAG3F,MAAM,UAAU,GAAG;IACjB,aAAa,EAAE;QACb,GAAG,EAAE,eAAe;QACpB,SAAS,EAAE,QAAQ;KACpB;IACD,WAAW,EAAE;QACX,GAAG,EAAE,aAAa;QAClB,SAAS,EAAE,MAAM;KAClB;CAC4C,CAAA;AAE/C,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,aAAa,EAAE,IAAI,CAAC,WAAW;KAChC,CAAA;AACH,CAAC,CAAC,CAAA;AAES,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,aAAa,EAAE,EACnC,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;YACxC,EAAE,EAAE,aAAa;SAClB,CAAC,CAAA;QACF,MAAM,iBAAiB,GAAG,MAAA,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,WAAW,0CAAE,IAAI,0CAAE,EAAE,CAAA;QAC/D,MAAM,SAAS,CAAC;YACd,WAAW,EAAE;gBACX,aAAa;gBACb,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,WAAW,CAAC;aACzD;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
  deletedAppointmentId: {
5
6
  key: string;
6
7
  valueType: "string";
7
8
  };
8
9
  };
9
- export declare const appointmentDeleted: Webhook<keyof typeof dataPoints, HealthieWebhookPayload>;
10
+ export declare const appointmentDeleted: Webhook<keyof typeof dataPoints, HealthieWebhookPayload, typeof settings>;
10
11
  export type AppointmentDeleted = typeof appointmentDeleted;
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.appointmentDeleted = 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
+ deletedAppointmentId: data.resource_id,
18
+ };
19
+ });
5
20
  const dataPoints = {
6
21
  deletedAppointmentId: {
7
22
  key: 'deletedAppointmentId',
@@ -12,19 +27,28 @@ exports.appointmentDeleted = {
12
27
  key: 'appointmentDeleted',
13
28
  dataPoints,
14
29
  onWebhookReceived: async ({ payload, settings }, onSuccess, onError) => {
15
- const { resource_id: deletedAppointmentId } = payload;
16
- if ((0, lodash_1.isNil)(deletedAppointmentId)) {
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
- deletedAppointmentId,
30
+ var _a, _b, _c;
31
+ const { validatedPayload: { deletedAppointmentId }, sdk, } = await (0, validatePayloadAndCreateSdk_1.validateWebhookPayloadAndCreateSdk)({
32
+ payloadSchema,
33
+ payload,
34
+ settings,
35
+ });
36
+ const response = await sdk.getAppointment({
37
+ id: deletedAppointmentId,
38
+ include_deleted: true,
39
+ });
40
+ const healthiePatientId = (_c = (_b = (_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.appointment) === null || _b === void 0 ? void 0 : _b.user) === null || _c === void 0 ? void 0 : _c.id;
41
+ await onSuccess({
42
+ data_points: {
43
+ deletedAppointmentId,
44
+ },
45
+ ...(!(0, lodash_1.isNil)(healthiePatientId) && {
46
+ patient_identifier: {
47
+ system: types_1.HEALTHIE_IDENTIFIER,
48
+ value: healthiePatientId,
25
49
  },
26
- });
27
- }
50
+ }),
51
+ });
28
52
  },
29
53
  };
30
54
  //# sourceMappingURL=appointmentDeleted.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"appointmentDeleted.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/appointmentDeleted.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAO9B,MAAM,UAAU,GAAG;IACjB,oBAAoB,EAAE;QACpB,GAAG,EAAE,sBAAsB;QAC3B,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,oBAAoB,EAAE,GAAG,OAAO,CAAA;QAErD,IAAI,IAAA,cAAK,EAAC,oBAAoB,CAAC,EAAE;YAC/B,MAAM,OAAO,CAAC;YACZ,sEAAsE;aACvE,CAAC,CAAA;SACH;aAAM;YACL,MAAM,SAAS,CAAC;gBACd,WAAW,EAAE;oBACX,oBAAoB;iBACrB;aACF,CAAC,CAAA;SACH;IACH,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"appointmentDeleted.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/appointmentDeleted.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,oBAAoB,EAAE,IAAI,CAAC,WAAW;KACvC,CAAA;AACH,CAAC,CAAC,CAAA;AAEJ,MAAM,UAAU,GAAG;IACjB,oBAAoB,EAAE;QACpB,GAAG,EAAE,sBAAsB;QAC3B,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,oBAAoB,EAAE,EAC1C,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;YACxC,EAAE,EAAE,oBAAoB;YACxB,eAAe,EAAE,IAAI;SACtB,CAAC,CAAA;QACF,MAAM,iBAAiB,GAAG,MAAA,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,WAAW,0CAAE,IAAI,0CAAE,EAAE,CAAA;QAC/D,MAAM,SAAS,CAAC;YACd,WAAW,EAAE;gBACX,oBAAoB;aACrB;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,16 @@
1
1
  import { type Webhook } from '@awell-health/extensions-core';
2
2
  import { type HealthieWebhookPayload } from '../lib/types';
3
+ import { type settings } from '../../awell/settings';
3
4
  declare const dataPoints: {
4
5
  updatedAppointmentId: {
5
6
  key: string;
6
7
  valueType: "string";
7
8
  };
9
+ appointment: {
10
+ key: string;
11
+ valueType: "json";
12
+ };
8
13
  };
9
- export declare const appointmentUpdated: Webhook<keyof typeof dataPoints, HealthieWebhookPayload>;
14
+ export declare const appointmentUpdated: Webhook<keyof typeof dataPoints, HealthieWebhookPayload, typeof settings>;
10
15
  export type AppointmentUpdated = typeof appointmentUpdated;
11
16
  export {};
@@ -1,30 +1,58 @@
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.appointmentUpdated = 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");
5
11
  const dataPoints = {
6
12
  updatedAppointmentId: {
7
13
  key: 'updatedAppointmentId',
8
14
  valueType: 'string',
9
15
  },
16
+ appointment: {
17
+ key: 'appointment',
18
+ valueType: 'json',
19
+ },
10
20
  };
21
+ const payloadSchema = zod_1.default
22
+ .object({
23
+ resource_id: zod_1.default.string(),
24
+ })
25
+ .transform((d) => {
26
+ return {
27
+ updatedAppointmentId: d.resource_id,
28
+ };
29
+ });
11
30
  exports.appointmentUpdated = {
12
31
  key: 'appointmentUpdated',
13
32
  dataPoints,
14
33
  onWebhookReceived: async ({ payload, settings }, onSuccess, onError) => {
15
- const { resource_id: updatedAppointmentId } = payload;
16
- if ((0, lodash_1.isNil)(updatedAppointmentId)) {
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
- updatedAppointmentId,
34
+ var _a, _b, _c, _d;
35
+ const { validatedPayload: { updatedAppointmentId }, sdk, } = await (0, validatePayloadAndCreateSdk_1.validateWebhookPayloadAndCreateSdk)({
36
+ payload,
37
+ payloadSchema,
38
+ settings,
39
+ });
40
+ const response = await sdk.getAppointment({
41
+ id: updatedAppointmentId,
42
+ });
43
+ const healthiePatientId = (_c = (_b = (_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.appointment) === null || _b === void 0 ? void 0 : _b.user) === null || _c === void 0 ? void 0 : _c.id;
44
+ await onSuccess({
45
+ data_points: {
46
+ updatedAppointmentId,
47
+ appointment: JSON.stringify((_d = response === null || response === void 0 ? void 0 : response.data) === null || _d === void 0 ? void 0 : _d.appointment),
48
+ },
49
+ ...(!(0, lodash_1.isNil)(healthiePatientId) && {
50
+ patient_identifier: {
51
+ system: types_1.HEALTHIE_IDENTIFIER,
52
+ value: healthiePatientId,
25
53
  },
26
- });
27
- }
54
+ }),
55
+ });
28
56
  },
29
57
  };
30
58
  //# sourceMappingURL=appointmentUpdated.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"appointmentUpdated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/appointmentUpdated.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAO9B,MAAM,UAAU,GAAG;IACjB,oBAAoB,EAAE;QACpB,GAAG,EAAE,sBAAsB;QAC3B,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,oBAAoB,EAAE,GAAG,OAAO,CAAA;QAErD,IAAI,IAAA,cAAK,EAAC,oBAAoB,CAAC,EAAE;YAC/B,MAAM,OAAO,CAAC;YACZ,sEAAsE;aACvE,CAAC,CAAA;SACH;aAAM;YACL,MAAM,SAAS,CAAC;gBACd,WAAW,EAAE;oBACX,oBAAoB;iBACrB;aACF,CAAC,CAAA;SACH;IACH,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"appointmentUpdated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/appointmentUpdated.ts"],"names":[],"mappings":";;;;;;AAAA,mCAA8B;AAK9B,wCAA+E;AAC/E,8CAAmB;AACnB,wFAA2F;AAG3F,MAAM,UAAU,GAAG;IACjB,oBAAoB,EAAE;QACpB,GAAG,EAAE,sBAAsB;QAC3B,SAAS,EAAE,QAAQ;KACpB;IACD,WAAW,EAAE;QACX,GAAG,EAAE,aAAa;QAClB,SAAS,EAAE,MAAM;KAClB;CAC4C,CAAA;AAE/C,MAAM,aAAa,GAAG,aAAC;KACpB,MAAM,CAAC;IACN,WAAW,EAAE,aAAC,CAAC,MAAM,EAAE;CACxB,CAAC;KACD,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;IACf,OAAO;QACL,oBAAoB,EAAE,CAAC,CAAC,WAAW;KACpC,CAAA;AACH,CAAC,CAAC,CAAA;AAES,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,oBAAoB,EAAE,EAC1C,GAAG,GACJ,GAAG,MAAM,IAAA,gEAAkC,EAAC;YAC3C,OAAO;YACP,aAAa;YACb,QAAQ;SACT,CAAC,CAAA;QACF,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC;YACxC,EAAE,EAAE,oBAAoB;SACzB,CAAC,CAAA;QACF,MAAM,iBAAiB,GAAG,MAAA,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,WAAW,0CAAE,IAAI,0CAAE,EAAE,CAAA;QAC/D,MAAM,SAAS,CAAC;YACd,WAAW,EAAE;gBACX,oBAAoB;gBACpB,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,WAAW,CAAC;aACzD;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,16 @@
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
  createdFormAnswerGroupId: {
5
6
  key: string;
6
7
  valueType: "string";
7
8
  };
9
+ createdFormAnswerGroup: {
10
+ key: string;
11
+ valueType: "json";
12
+ };
8
13
  };
9
- export declare const formAnswerGroupCreated: Webhook<keyof typeof dataPoints, HealthieWebhookPayload>;
14
+ export declare const formAnswerGroupCreated: Webhook<keyof typeof dataPoints, HealthieWebhookPayload, typeof settings>;
10
15
  export type FormAnswerGroupCreated = typeof formAnswerGroupCreated;
11
16
  export {};
@@ -1,30 +1,58 @@
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.formAnswerGroupCreated = 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");
5
11
  const dataPoints = {
6
12
  createdFormAnswerGroupId: {
7
13
  key: 'createdFormAnswerGroupId',
8
14
  valueType: 'string',
9
15
  },
16
+ createdFormAnswerGroup: {
17
+ key: 'createdFormAnswerGroup',
18
+ valueType: 'json',
19
+ },
10
20
  };
21
+ const payloadSchema = zod_1.default
22
+ .object({
23
+ resource_id: zod_1.default.string(),
24
+ })
25
+ .transform((data) => {
26
+ return {
27
+ createdFormAnswerGroupId: data.resource_id,
28
+ };
29
+ });
11
30
  exports.formAnswerGroupCreated = {
12
31
  key: 'formAnswerGroupCreated',
13
32
  dataPoints,
14
33
  onWebhookReceived: async ({ payload, settings }, onSuccess, onError) => {
15
- const { resource_id: createdFormAnswerGroupId } = payload;
16
- if ((0, lodash_1.isNil)(createdFormAnswerGroupId)) {
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
- createdFormAnswerGroupId,
34
+ var _a, _b, _c, _d;
35
+ const { validatedPayload: { createdFormAnswerGroupId }, sdk, } = await (0, validatePayloadAndCreateSdk_1.validateWebhookPayloadAndCreateSdk)({
36
+ payloadSchema,
37
+ payload,
38
+ settings,
39
+ });
40
+ const response = await sdk.getFormAnswerGroup({
41
+ id: createdFormAnswerGroupId,
42
+ });
43
+ const healthiePatientId = (_c = (_b = (_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.formAnswerGroup) === null || _b === void 0 ? void 0 : _b.user) === null || _c === void 0 ? void 0 : _c.id;
44
+ await onSuccess({
45
+ data_points: {
46
+ createdFormAnswerGroupId,
47
+ createdFormAnswerGroup: JSON.stringify((_d = response === null || response === void 0 ? void 0 : response.data) === null || _d === void 0 ? void 0 : _d.formAnswerGroup),
48
+ },
49
+ ...(!(0, lodash_1.isNil)(healthiePatientId) && {
50
+ patient_identifier: {
51
+ system: types_1.HEALTHIE_IDENTIFIER,
52
+ value: healthiePatientId,
25
53
  },
26
- });
27
- }
54
+ }),
55
+ });
28
56
  },
29
57
  };
30
58
  //# sourceMappingURL=formAnswerGroupCreated.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"formAnswerGroupCreated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/formAnswerGroupCreated.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAO9B,MAAM,UAAU,GAAG;IACjB,wBAAwB,EAAE;QACxB,GAAG,EAAE,0BAA0B;QAC/B,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA;AAElC,QAAA,sBAAsB,GAG/B;IACF,GAAG,EAAE,wBAAwB;IAC7B,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;QACrE,MAAM,EAAE,WAAW,EAAE,wBAAwB,EAAE,GAAG,OAAO,CAAA;QAEzD,IAAI,IAAA,cAAK,EAAC,wBAAwB,CAAC,EAAE;YACnC,MAAM,OAAO,CAAC;YACZ,sEAAsE;aACvE,CAAC,CAAA;SACH;aAAM;YACL,MAAM,SAAS,CAAC;gBACd,WAAW,EAAE;oBACX,wBAAwB;iBACzB;aACF,CAAC,CAAA;SACH;IACH,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"formAnswerGroupCreated.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/formAnswerGroupCreated.ts"],"names":[],"mappings":";;;;;;AAAA,mCAA8B;AAK9B,wCAA+E;AAC/E,8CAAmB;AACnB,wFAA2F;AAG3F,MAAM,UAAU,GAAG;IACjB,wBAAwB,EAAE;QACxB,GAAG,EAAE,0BAA0B;QAC/B,SAAS,EAAE,QAAQ;KACpB;IACD,sBAAsB,EAAE;QACtB,GAAG,EAAE,wBAAwB;QAC7B,SAAS,EAAE,MAAM;KAClB;CAC4C,CAAA;AAE/C,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,wBAAwB,EAAE,IAAI,CAAC,WAAW;KAC3C,CAAA;AACH,CAAC,CAAC,CAAA;AAES,QAAA,sBAAsB,GAI/B;IACF,GAAG,EAAE,wBAAwB;IAC7B,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;;QACrE,MAAM,EACJ,gBAAgB,EAAE,EAAE,wBAAwB,EAAE,EAC9C,GAAG,GACJ,GAAG,MAAM,IAAA,gEAAkC,EAAC;YAC3C,aAAa;YACb,OAAO;YACP,QAAQ;SACT,CAAC,CAAA;QACF,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,kBAAkB,CAAC;YAC5C,EAAE,EAAE,wBAAwB;SAC7B,CAAC,CAAA;QACF,MAAM,iBAAiB,GAAG,MAAA,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,eAAe,0CAAE,IAAI,0CAAE,EAAE,CAAA;QACnE,MAAM,SAAS,CAAC;YACd,WAAW,EAAE;gBACX,wBAAwB;gBACxB,sBAAsB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,eAAe,CAAC;aACxE;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
  deletedFormAnswerGroupId: {
5
6
  key: string;
6
7
  valueType: "string";
7
8
  };
8
9
  };
9
- export declare const formAnswerGroupDeleted: Webhook<keyof typeof dataPoints, HealthieWebhookPayload>;
10
+ export declare const formAnswerGroupDeleted: Webhook<keyof typeof dataPoints, HealthieWebhookPayload, typeof settings>;
10
11
  export type FormAnswerGroupDeleted = typeof formAnswerGroupDeleted;
11
12
  export {};
@@ -1,30 +1,53 @@
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.formAnswerGroupDeleted = 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");
5
11
  const dataPoints = {
6
12
  deletedFormAnswerGroupId: {
7
13
  key: 'deletedFormAnswerGroupId',
8
14
  valueType: 'string',
9
15
  },
10
16
  };
17
+ const payloadSchema = zod_1.default
18
+ .object({
19
+ resource_id: zod_1.default.string(),
20
+ })
21
+ .transform((data) => {
22
+ return {
23
+ deletedFormAnswerGroupId: data.resource_id,
24
+ };
25
+ });
11
26
  exports.formAnswerGroupDeleted = {
12
27
  key: 'formAnswerGroupDeleted',
13
28
  dataPoints,
14
29
  onWebhookReceived: async ({ payload, settings }, onSuccess, onError) => {
15
- const { resource_id: deletedFormAnswerGroupId } = payload;
16
- if ((0, lodash_1.isNil)(deletedFormAnswerGroupId)) {
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
- deletedFormAnswerGroupId,
30
+ var _a, _b, _c;
31
+ const { validatedPayload: { deletedFormAnswerGroupId }, sdk, } = await (0, validatePayloadAndCreateSdk_1.validateWebhookPayloadAndCreateSdk)({
32
+ payloadSchema,
33
+ payload,
34
+ settings,
35
+ });
36
+ const response = await sdk.getFormAnswerGroup({
37
+ id: deletedFormAnswerGroupId,
38
+ });
39
+ const healthiePatientId = (_c = (_b = (_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.formAnswerGroup) === null || _b === void 0 ? void 0 : _b.user) === null || _c === void 0 ? void 0 : _c.id;
40
+ await onSuccess({
41
+ data_points: {
42
+ deletedFormAnswerGroupId,
43
+ },
44
+ ...(!(0, lodash_1.isNil)(healthiePatientId) && {
45
+ patient_identifier: {
46
+ system: types_1.HEALTHIE_IDENTIFIER,
47
+ value: healthiePatientId,
25
48
  },
26
- });
27
- }
49
+ }),
50
+ });
28
51
  },
29
52
  };
30
53
  //# sourceMappingURL=formAnswerGroupDeleted.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"formAnswerGroupDeleted.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/formAnswerGroupDeleted.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAO9B,MAAM,UAAU,GAAG;IACjB,wBAAwB,EAAE;QACxB,GAAG,EAAE,0BAA0B;QAC/B,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA;AAElC,QAAA,sBAAsB,GAG/B;IACF,GAAG,EAAE,wBAAwB;IAC7B,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;QACrE,MAAM,EAAE,WAAW,EAAE,wBAAwB,EAAE,GAAG,OAAO,CAAA;QAEzD,IAAI,IAAA,cAAK,EAAC,wBAAwB,CAAC,EAAE;YACnC,MAAM,OAAO,CAAC;YACZ,sEAAsE;aACvE,CAAC,CAAA;SACH;aAAM;YACL,MAAM,SAAS,CAAC;gBACd,WAAW,EAAE;oBACX,wBAAwB;iBACzB;aACF,CAAC,CAAA;SACH;IACH,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"formAnswerGroupDeleted.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/formAnswerGroupDeleted.ts"],"names":[],"mappings":";;;;;;AAAA,mCAA8B;AAK9B,wCAA+E;AAC/E,8CAAmB;AACnB,wFAA2F;AAG3F,MAAM,UAAU,GAAG;IACjB,wBAAwB,EAAE;QACxB,GAAG,EAAE,0BAA0B;QAC/B,SAAS,EAAE,QAAQ;KACpB;CAC4C,CAAA;AAE/C,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,wBAAwB,EAAE,IAAI,CAAC,WAAW;KAC3C,CAAA;AACH,CAAC,CAAC,CAAA;AAES,QAAA,sBAAsB,GAI/B;IACF,GAAG,EAAE,wBAAwB;IAC7B,UAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;;QACrE,MAAM,EACJ,gBAAgB,EAAE,EAAE,wBAAwB,EAAE,EAC9C,GAAG,GACJ,GAAG,MAAM,IAAA,gEAAkC,EAAC;YAC3C,aAAa;YACb,OAAO;YACP,QAAQ;SACT,CAAC,CAAA;QACF,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,kBAAkB,CAAC;YAC5C,EAAE,EAAE,wBAAwB;SAC7B,CAAC,CAAA;QACF,MAAM,iBAAiB,GAAG,MAAA,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,eAAe,0CAAE,IAAI,0CAAE,EAAE,CAAA;QACnE,MAAM,SAAS,CAAC;YACd,WAAW,EAAE;gBACX,wBAAwB;aACzB;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,16 @@
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
  lockedFormAnswerGroupId: {
5
6
  key: string;
6
7
  valueType: "string";
7
8
  };
9
+ lockedFormAnswerGroup: {
10
+ key: string;
11
+ valueType: "json";
12
+ };
8
13
  };
9
- export declare const formAnswerGroupLocked: Webhook<keyof typeof dataPoints, HealthieWebhookPayload>;
14
+ export declare const formAnswerGroupLocked: Webhook<keyof typeof dataPoints, HealthieWebhookPayload, typeof settings>;
10
15
  export type FormAnswerGroupLocked = typeof formAnswerGroupLocked;
11
16
  export {};
@@ -1,30 +1,58 @@
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.formAnswerGroupLocked = 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");
5
11
  const dataPoints = {
6
12
  lockedFormAnswerGroupId: {
7
13
  key: 'lockedFormAnswerGroupId',
8
14
  valueType: 'string',
9
15
  },
16
+ lockedFormAnswerGroup: {
17
+ key: 'lockedFormAnswerGroup',
18
+ valueType: 'json',
19
+ },
10
20
  };
21
+ const payloadSchema = zod_1.default
22
+ .object({
23
+ resource_id: zod_1.default.string(),
24
+ })
25
+ .transform((data) => {
26
+ return {
27
+ lockedFormAnswerGroupId: data.resource_id,
28
+ };
29
+ });
11
30
  exports.formAnswerGroupLocked = {
12
31
  key: 'formAnswerGroupLocked',
13
32
  dataPoints,
14
33
  onWebhookReceived: async ({ payload, settings }, onSuccess, onError) => {
15
- const { resource_id: lockedFormAnswerGroupId } = payload;
16
- if ((0, lodash_1.isNil)(lockedFormAnswerGroupId)) {
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
- lockedFormAnswerGroupId,
34
+ var _a, _b, _c, _d;
35
+ const { validatedPayload: { lockedFormAnswerGroupId }, sdk, } = await (0, validatePayloadAndCreateSdk_1.validateWebhookPayloadAndCreateSdk)({
36
+ payloadSchema,
37
+ payload,
38
+ settings,
39
+ });
40
+ const response = await sdk.getFormAnswerGroup({
41
+ id: lockedFormAnswerGroupId,
42
+ });
43
+ const healthiePatientId = (_c = (_b = (_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.formAnswerGroup) === null || _b === void 0 ? void 0 : _b.user) === null || _c === void 0 ? void 0 : _c.id;
44
+ await onSuccess({
45
+ data_points: {
46
+ lockedFormAnswerGroupId,
47
+ lockedFormAnswerGroup: JSON.stringify((_d = response === null || response === void 0 ? void 0 : response.data) === null || _d === void 0 ? void 0 : _d.formAnswerGroup),
48
+ },
49
+ ...(!(0, lodash_1.isNil)(healthiePatientId) && {
50
+ patient_identifier: {
51
+ system: types_1.HEALTHIE_IDENTIFIER,
52
+ value: healthiePatientId,
25
53
  },
26
- });
27
- }
54
+ }),
55
+ });
28
56
  },
29
57
  };
30
58
  //# sourceMappingURL=formAnswerGroupLocked.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"formAnswerGroupLocked.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/formAnswerGroupLocked.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,qBAAqB,GAG9B;IACF,GAAG,EAAE,uBAAuB;IAC5B,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":"formAnswerGroupLocked.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/formAnswerGroupLocked.ts"],"names":[],"mappings":";;;;;;AAAA,mCAA8B;AAK9B,wCAA+E;AAC/E,8CAAmB;AACnB,wFAA2F;AAG3F,MAAM,UAAU,GAAG;IACjB,uBAAuB,EAAE;QACvB,GAAG,EAAE,yBAAyB;QAC9B,SAAS,EAAE,QAAQ;KACpB;IACD,qBAAqB,EAAE;QACrB,GAAG,EAAE,uBAAuB;QAC5B,SAAS,EAAE,MAAM;KAClB;CAC4C,CAAA;AAE/C,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;AAES,QAAA,qBAAqB,GAI9B;IACF,GAAG,EAAE,uBAAuB;IAC5B,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,kBAAkB,CAAC;YAC5C,EAAE,EAAE,uBAAuB;SAC5B,CAAC,CAAA;QACF,MAAM,iBAAiB,GAAG,MAAA,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,eAAe,0CAAE,IAAI,0CAAE,EAAE,CAAA;QACnE,MAAM,SAAS,CAAC;YACd,WAAW,EAAE;gBACX,uBAAuB;gBACvB,qBAAqB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,eAAe,CAAC;aACvE;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,16 @@
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
  signedFormAnswerGroupId: {
5
6
  key: string;
6
7
  valueType: "string";
7
8
  };
9
+ signedFormAnswerGroup: {
10
+ key: string;
11
+ valueType: "json";
12
+ };
8
13
  };
9
- export declare const formAnswerGroupSigned: Webhook<keyof typeof dataPoints, HealthieWebhookPayload>;
14
+ export declare const formAnswerGroupSigned: Webhook<keyof typeof dataPoints, HealthieWebhookPayload, typeof settings>;
10
15
  export type FormAnswerGroupSigned = typeof formAnswerGroupSigned;
11
16
  export {};
@@ -1,30 +1,58 @@
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.formAnswerGroupSigned = 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");
5
11
  const dataPoints = {
6
12
  signedFormAnswerGroupId: {
7
13
  key: 'signedFormAnswerGroupId',
8
14
  valueType: 'string',
9
15
  },
16
+ signedFormAnswerGroup: {
17
+ key: 'signedFormAnswerGroup',
18
+ valueType: 'json',
19
+ },
10
20
  };
21
+ const payloadSchema = zod_1.default
22
+ .object({
23
+ resource_id: zod_1.default.string(),
24
+ })
25
+ .transform((data) => {
26
+ return {
27
+ signedFormAnswerGroupId: data.resource_id,
28
+ };
29
+ });
11
30
  exports.formAnswerGroupSigned = {
12
31
  key: 'formAnswerGroupSigned',
13
32
  dataPoints,
14
33
  onWebhookReceived: async ({ payload, settings }, onSuccess, onError) => {
15
- const { resource_id: signedFormAnswerGroupId } = payload;
16
- if ((0, lodash_1.isNil)(signedFormAnswerGroupId)) {
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
- signedFormAnswerGroupId,
34
+ var _a, _b, _c, _d;
35
+ const { validatedPayload: { signedFormAnswerGroupId }, sdk, } = await (0, validatePayloadAndCreateSdk_1.validateWebhookPayloadAndCreateSdk)({
36
+ payloadSchema,
37
+ payload,
38
+ settings,
39
+ });
40
+ const response = await sdk.getFormAnswerGroup({
41
+ id: signedFormAnswerGroupId,
42
+ });
43
+ const healthiePatientId = (_c = (_b = (_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.formAnswerGroup) === null || _b === void 0 ? void 0 : _b.user) === null || _c === void 0 ? void 0 : _c.id;
44
+ await onSuccess({
45
+ data_points: {
46
+ signedFormAnswerGroupId,
47
+ signedFormAnswerGroup: JSON.stringify((_d = response === null || response === void 0 ? void 0 : response.data) === null || _d === void 0 ? void 0 : _d.formAnswerGroup),
48
+ },
49
+ ...(!(0, lodash_1.isNil)(healthiePatientId) && {
50
+ patient_identifier: {
51
+ system: types_1.HEALTHIE_IDENTIFIER,
52
+ value: healthiePatientId,
25
53
  },
26
- });
27
- }
54
+ }),
55
+ });
28
56
  },
29
57
  };
30
58
  //# sourceMappingURL=formAnswerGroupSigned.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"formAnswerGroupSigned.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/formAnswerGroupSigned.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,qBAAqB,GAG9B;IACF,GAAG,EAAE,uBAAuB;IAC5B,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":"formAnswerGroupSigned.js","sourceRoot":"","sources":["../../../../extensions/healthie/webhooks/formAnswerGroupSigned.ts"],"names":[],"mappings":";;;;;;AAAA,mCAA8B;AAK9B,wCAA+E;AAC/E,8CAAmB;AACnB,wFAA2F;AAG3F,MAAM,UAAU,GAAG;IACjB,uBAAuB,EAAE;QACvB,GAAG,EAAE,yBAAyB;QAC9B,SAAS,EAAE,QAAQ;KACpB;IACD,qBAAqB,EAAE;QACrB,GAAG,EAAE,uBAAuB;QAC5B,SAAS,EAAE,MAAM;KAClB;CAC4C,CAAA;AAE/C,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;AAES,QAAA,qBAAqB,GAI9B;IACF,GAAG,EAAE,uBAAuB;IAC5B,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,kBAAkB,CAAC;YAC5C,EAAE,EAAE,uBAAuB;SAC5B,CAAC,CAAA;QACF,MAAM,iBAAiB,GAAG,MAAA,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,eAAe,0CAAE,IAAI,0CAAE,EAAE,CAAA;QACnE,MAAM,SAAS,CAAC;YACd,WAAW,EAAE;gBACX,uBAAuB;gBACvB,qBAAqB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,eAAe,CAAC;aACvE;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
  createdGoalId: {
5
6
  key: string;
6
7
  valueType: "string";
7
8
  };
8
9
  };
9
- export declare const goalCreated: Webhook<keyof typeof dataPoints, HealthieWebhookPayload>;
10
+ export declare const goalCreated: Webhook<keyof typeof dataPoints, HealthieWebhookPayload, typeof settings>;
10
11
  export type GoalCreated = typeof goalCreated;
11
12
  export {};