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

Sign up to get free protection for your applications and to get access to all the features.
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 +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 {};