@awell-health/awell-extensions 2.0.32 → 2.0.33

Sign up to get free protection for your applications and to get access to all the features.
Files changed (38) hide show
  1. package/dist/extensions/sfdc/actions/{testAction → getLead}/config/datapoints.d.ts +1 -1
  2. package/dist/extensions/sfdc/actions/{testAction → getLead}/config/datapoints.js +2 -2
  3. package/dist/extensions/sfdc/actions/getLead/config/datapoints.js.map +1 -0
  4. package/dist/extensions/sfdc/actions/{testAction → getLead}/config/fields.d.ts +4 -4
  5. package/dist/extensions/sfdc/actions/{testAction → getLead}/config/fields.js +4 -4
  6. package/dist/extensions/sfdc/actions/getLead/config/fields.js.map +1 -0
  7. package/dist/extensions/sfdc/actions/getLead/config/index.js.map +1 -0
  8. package/dist/extensions/sfdc/actions/{testAction/testAction.d.ts → getLead/getLead.d.ts} +1 -1
  9. package/dist/extensions/sfdc/actions/getLead/getLead.js +45 -0
  10. package/dist/extensions/sfdc/actions/getLead/getLead.js.map +1 -0
  11. package/dist/extensions/sfdc/actions/getLead/getLead.test.js +33 -0
  12. package/dist/extensions/sfdc/actions/getLead/getLead.test.js.map +1 -0
  13. package/dist/extensions/sfdc/actions/getLead/index.d.ts +1 -0
  14. package/dist/extensions/sfdc/actions/getLead/index.js +6 -0
  15. package/dist/extensions/sfdc/actions/getLead/index.js.map +1 -0
  16. package/dist/extensions/sfdc/actions/index.d.ts +52 -0
  17. package/dist/extensions/sfdc/actions/index.js +2 -0
  18. package/dist/extensions/sfdc/actions/index.js.map +1 -1
  19. package/dist/extensions/sfdc/api/client.d.ts +5 -3
  20. package/dist/extensions/sfdc/api/client.js +16 -2
  21. package/dist/extensions/sfdc/api/client.js.map +1 -1
  22. package/dist/extensions/sfdc/api/schema/record.schema.d.ts +16 -0
  23. package/dist/extensions/sfdc/api/schema/record.schema.js +9 -1
  24. package/dist/extensions/sfdc/api/schema/record.schema.js.map +1 -1
  25. package/package.json +1 -1
  26. package/dist/extensions/sfdc/actions/testAction/config/datapoints.js.map +0 -1
  27. package/dist/extensions/sfdc/actions/testAction/config/fields.js.map +0 -1
  28. package/dist/extensions/sfdc/actions/testAction/config/index.js.map +0 -1
  29. package/dist/extensions/sfdc/actions/testAction/index.d.ts +0 -1
  30. package/dist/extensions/sfdc/actions/testAction/index.js +0 -6
  31. package/dist/extensions/sfdc/actions/testAction/index.js.map +0 -1
  32. package/dist/extensions/sfdc/actions/testAction/testAction.js +0 -28
  33. package/dist/extensions/sfdc/actions/testAction/testAction.js.map +0 -1
  34. package/dist/extensions/sfdc/actions/testAction/testAction.test.js +0 -27
  35. package/dist/extensions/sfdc/actions/testAction/testAction.test.js.map +0 -1
  36. /package/dist/extensions/sfdc/actions/{testAction → getLead}/config/index.d.ts +0 -0
  37. /package/dist/extensions/sfdc/actions/{testAction → getLead}/config/index.js +0 -0
  38. /package/dist/extensions/sfdc/actions/{testAction/testAction.test.d.ts → getLead/getLead.test.d.ts} +0 -0
@@ -1,5 +1,5 @@
1
1
  export declare const dataPoints: {
2
- res: {
2
+ leadData: {
3
3
  key: string;
4
4
  valueType: "json";
5
5
  };
@@ -2,8 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.dataPoints = void 0;
4
4
  exports.dataPoints = {
5
- res: {
6
- key: 'res',
5
+ leadData: {
6
+ key: 'leadData',
7
7
  valueType: 'json',
8
8
  },
9
9
  };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datapoints.js","sourceRoot":"","sources":["../../../../../../extensions/sfdc/actions/getLead/config/datapoints.ts"],"names":[],"mappings":";;;AAEa,QAAA,UAAU,GAAG;IACxB,QAAQ,EAAE;QACR,GAAG,EAAE,UAAU;QACf,SAAS,EAAE,MAAM;KAClB;CAC4C,CAAA"}
@@ -1,7 +1,7 @@
1
1
  import { FieldType } from '@awell-health/extensions-core';
2
2
  import z from 'zod';
3
3
  export declare const fields: {
4
- sObject: {
4
+ leadId: {
5
5
  id: string;
6
6
  label: string;
7
7
  description: string;
@@ -10,9 +10,9 @@ export declare const fields: {
10
10
  };
11
11
  };
12
12
  export declare const FieldsValidationSchema: z.ZodObject<{
13
- sObject: z.ZodString;
13
+ leadId: z.ZodString;
14
14
  }, "strip", z.ZodTypeAny, {
15
- sObject: string;
15
+ leadId: string;
16
16
  }, {
17
- sObject: string;
17
+ leadId: string;
18
18
  }>;
@@ -7,15 +7,15 @@ exports.FieldsValidationSchema = exports.fields = void 0;
7
7
  const extensions_core_1 = require("@awell-health/extensions-core");
8
8
  const zod_1 = __importDefault(require("zod"));
9
9
  exports.fields = {
10
- sObject: {
11
- id: 'sObject',
12
- label: 'sObject',
10
+ leadId: {
11
+ id: 'leadId',
12
+ label: 'Lead ID',
13
13
  description: '',
14
14
  type: extensions_core_1.FieldType.STRING,
15
15
  required: true,
16
16
  },
17
17
  };
18
18
  exports.FieldsValidationSchema = zod_1.default.object({
19
- sObject: zod_1.default.string().min(1),
19
+ leadId: zod_1.default.string().min(1),
20
20
  });
21
21
  //# sourceMappingURL=fields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fields.js","sourceRoot":"","sources":["../../../../../../extensions/sfdc/actions/getLead/config/fields.ts"],"names":[],"mappings":";;;;;;AAAA,mEAAqE;AACrE,8CAAwC;AAE3B,QAAA,MAAM,GAAG;IACpB,MAAM,EAAE;QACN,EAAE,EAAE,QAAQ;QACZ,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,EAAE;QACf,IAAI,EAAE,2BAAS,CAAC,MAAM;QACtB,QAAQ,EAAE,IAAI;KACf;CAC8B,CAAA;AAEpB,QAAA,sBAAsB,GAAG,aAAC,CAAC,MAAM,CAAC;IAC7C,MAAM,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACwB,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../extensions/sfdc/actions/getLead/config/index.ts"],"names":[],"mappings":";;;AAAA,mCAAyD;AAAhD,gGAAA,MAAM,OAAA;AAAE,gHAAA,sBAAsB,OAAA;AACvC,2CAAyC;AAAhC,wGAAA,UAAU,OAAA"}
@@ -1,4 +1,4 @@
1
1
  import { type Action } from '@awell-health/extensions-core';
2
2
  import { type settings } from '../../settings';
3
3
  import { fields, dataPoints } from './config';
4
- export declare const testAction: Action<typeof fields, typeof settings, keyof typeof dataPoints>;
4
+ export declare const getLead: Action<typeof fields, typeof settings, keyof typeof dataPoints>;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getLead = void 0;
4
+ const extensions_core_1 = require("@awell-health/extensions-core");
5
+ const config_1 = require("./config");
6
+ const lib_1 = require("../../lib");
7
+ const errors_1 = require("../../lib/errors");
8
+ exports.getLead = {
9
+ key: 'getLead',
10
+ category: extensions_core_1.Category.CUSTOMER_SUPPORT,
11
+ title: 'Get lead',
12
+ description: 'Retrieve a Lead from Salesforce',
13
+ fields: config_1.fields,
14
+ previewable: false,
15
+ dataPoints: config_1.dataPoints,
16
+ onEvent: async ({ payload, onComplete, onError, helpers }) => {
17
+ const { fields, salesforceClient } = await (0, lib_1.validatePayloadAndCreateClient)({
18
+ fieldsSchema: config_1.FieldsValidationSchema,
19
+ payload,
20
+ });
21
+ try {
22
+ const res = await salesforceClient.getRecord({
23
+ sObject: 'Lead',
24
+ sObjectId: fields.leadId,
25
+ });
26
+ await onComplete({
27
+ data_points: {
28
+ leadData: JSON.stringify(res),
29
+ },
30
+ });
31
+ }
32
+ catch (error) {
33
+ if ((0, errors_1.isSalesforceError)(error)) {
34
+ await onError({
35
+ events: [(0, errors_1.parseSalesforceError)(error)],
36
+ });
37
+ }
38
+ else {
39
+ // we handle ZodError and unknown errors in extension-server directly
40
+ throw error;
41
+ }
42
+ }
43
+ },
44
+ };
45
+ //# sourceMappingURL=getLead.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getLead.js","sourceRoot":"","sources":["../../../../../extensions/sfdc/actions/getLead/getLead.ts"],"names":[],"mappings":";;;AAAA,mEAAqE;AAErE,qCAAqE;AACrE,mCAA0D;AAC1D,6CAA0E;AAE7D,QAAA,OAAO,GAIhB;IACF,GAAG,EAAE,SAAS;IACd,QAAQ,EAAE,0BAAQ,CAAC,gBAAgB;IACnC,KAAK,EAAE,UAAU;IACjB,WAAW,EAAE,iCAAiC;IAC9C,MAAM,EAAN,eAAM;IACN,WAAW,EAAE,KAAK;IAClB,UAAU,EAAV,mBAAU;IACV,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,EAAiB,EAAE;QAC1E,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,IAAA,oCAA8B,EAAC;YACxE,YAAY,EAAE,+BAAsB;YACpC,OAAO;SACR,CAAC,CAAA;QAEF,IAAI;YACF,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC;gBAC3C,OAAO,EAAE,MAAM;gBACf,SAAS,EAAE,MAAM,CAAC,MAAM;aACzB,CAAC,CAAA;YAEF,MAAM,UAAU,CAAC;gBACf,WAAW,EAAE;oBACX,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;iBAC9B;aACF,CAAC,CAAA;SACH;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,IAAA,0BAAiB,EAAC,KAAK,CAAC,EAAE;gBAC5B,MAAM,OAAO,CAAC;oBACZ,MAAM,EAAE,CAAC,IAAA,6BAAoB,EAAC,KAAK,CAAC,CAAC;iBACtC,CAAC,CAAA;aACH;iBAAM;gBACL,qEAAqE;gBACrE,MAAM,KAAK,CAAA;aACZ;SACF;IACH,CAAC;CACF,CAAA"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const extensions_core_1 = require("@awell-health/extensions-core");
4
+ const _1 = require(".");
5
+ const tests_1 = require("../../../../src/tests");
6
+ const __mocks__1 = require("../../api/__mocks__");
7
+ jest.mock('../../api/client');
8
+ describe('Salesforce - Get Lead', () => {
9
+ const { extensionAction: action, onComplete, onError, helpers, clearMocks, } = extensions_core_1.TestHelpers.fromAction(_1.getLead);
10
+ beforeEach(() => {
11
+ clearMocks();
12
+ jest.clearAllMocks();
13
+ });
14
+ test('Should get a lead', async () => {
15
+ await action.onEvent({
16
+ payload: (0, tests_1.generateTestPayload)({
17
+ fields: {
18
+ leadId: '00QPb00000HaFQAMA3',
19
+ },
20
+ settings: __mocks__1.mockSettings,
21
+ }),
22
+ onComplete,
23
+ onError,
24
+ helpers,
25
+ });
26
+ expect(onComplete).toHaveBeenCalledWith({
27
+ data_points: {
28
+ leadData: expect.any(String),
29
+ },
30
+ });
31
+ });
32
+ });
33
+ //# sourceMappingURL=getLead.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getLead.test.js","sourceRoot":"","sources":["../../../../../extensions/sfdc/actions/getLead/getLead.test.ts"],"names":[],"mappings":";;AAAA,mEAA2D;AAC3D,wBAA8C;AAC9C,iDAA2D;AAC3D,kDAAkD;AAElD,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;AAE7B,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,MAAM,EACJ,eAAe,EAAE,MAAM,EACvB,UAAU,EACV,OAAO,EACP,OAAO,EACP,UAAU,GACX,GAAG,6BAAW,CAAC,UAAU,CAAC,UAAe,CAAC,CAAA;IAE3C,UAAU,CAAC,GAAG,EAAE;QACd,UAAU,EAAE,CAAA;QACZ,IAAI,CAAC,aAAa,EAAE,CAAA;IACtB,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;QACnC,MAAM,MAAM,CAAC,OAAO,CAAC;YACnB,OAAO,EAAE,IAAA,2BAAmB,EAAC;gBAC3B,MAAM,EAAE;oBACN,MAAM,EAAE,oBAAoB;iBAC7B;gBACD,QAAQ,EAAE,uBAAY;aACvB,CAAC;YACF,UAAU;YACV,OAAO;YACP,OAAO;SACR,CAAC,CAAA;QAEF,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CAAC;YACtC,WAAW,EAAE;gBACX,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;aAC7B;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ export { getLead } from './getLead';
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getLead = void 0;
4
+ var getLead_1 = require("./getLead");
5
+ Object.defineProperty(exports, "getLead", { enumerable: true, get: function () { return getLead_1.getLead; } });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../extensions/sfdc/actions/getLead/index.ts"],"names":[],"mappings":";;;AAAA,qCAAmC;AAA1B,kGAAA,OAAO,OAAA"}
@@ -110,5 +110,57 @@ declare const actions: {
110
110
  description: string;
111
111
  };
112
112
  }, never>;
113
+ getLead: import("@awell-health/extensions-core").Action<{
114
+ leadId: {
115
+ id: string;
116
+ label: string;
117
+ description: string;
118
+ type: import("@awell-health/extensions-core").FieldType.STRING;
119
+ required: true;
120
+ };
121
+ }, {
122
+ salesforceSubdomain: {
123
+ key: string;
124
+ label: string;
125
+ obfuscated: false;
126
+ required: true;
127
+ description: string;
128
+ };
129
+ clientId: {
130
+ key: string;
131
+ label: string;
132
+ obfuscated: false;
133
+ required: true;
134
+ description: string;
135
+ };
136
+ clientSecret: {
137
+ key: string;
138
+ label: string;
139
+ obfuscated: true;
140
+ required: true;
141
+ description: string;
142
+ };
143
+ username: {
144
+ key: string;
145
+ label: string;
146
+ obfuscated: false;
147
+ required: false;
148
+ description: string;
149
+ };
150
+ password: {
151
+ key: string;
152
+ label: string;
153
+ obfuscated: true;
154
+ required: false;
155
+ description: string;
156
+ };
157
+ apiVersion: {
158
+ key: string;
159
+ label: string;
160
+ obfuscated: false;
161
+ required: false;
162
+ description: string;
163
+ };
164
+ }, "leadData">;
113
165
  };
114
166
  export default actions;
@@ -2,9 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const createLead_1 = require("./createLead");
4
4
  const updateLead_1 = require("./updateLead");
5
+ const getLead_1 = require("./getLead");
5
6
  const actions = {
6
7
  createLead: createLead_1.createLead,
7
8
  updateLead: updateLead_1.updateLead,
9
+ getLead: getLead_1.getLead,
8
10
  };
9
11
  exports.default = actions;
10
12
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../extensions/sfdc/actions/index.ts"],"names":[],"mappings":";;AAAA,6CAAyC;AACzC,6CAAyC;AAEzC,MAAM,OAAO,GAAG;IACd,UAAU,EAAV,uBAAU;IACV,UAAU,EAAV,uBAAU;CACX,CAAA;AAED,kBAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../extensions/sfdc/actions/index.ts"],"names":[],"mappings":";;AAAA,6CAAyC;AACzC,6CAAyC;AACzC,uCAAmC;AAEnC,MAAM,OAAO,GAAG;IACd,UAAU,EAAV,uBAAU;IACV,UAAU,EAAV,uBAAU;IACV,OAAO,EAAP,iBAAO;CACR,CAAA;AAED,kBAAe,OAAO,CAAA"}
@@ -1,13 +1,14 @@
1
1
  import { APIClient, DataWrapper, type DataWrapperCtor, type OAuthGrantRequest } from '@awell-health/extensions-core';
2
- import { type UpdateRecordInputType, type UpdateRecordResponseType, type CreateRecordInputType, type CreateRecordResponseType } from './schema';
2
+ import { type UpdateRecordInputType, type CreateRecordInputType, type CreateRecordResponseType, type GetRecordInputType, type GetRecordResponseType } from './schema';
3
3
  export declare class SalesforceDataWrapper extends DataWrapper {
4
4
  private readonly apiVersion;
5
5
  constructor(token: string, baseUrl: string, opts: {
6
6
  apiVersion: string;
7
7
  });
8
8
  createRecord(input: CreateRecordInputType): Promise<CreateRecordResponseType>;
9
- updateRecord(input: UpdateRecordInputType): Promise<UpdateRecordResponseType>;
9
+ updateRecord(input: UpdateRecordInputType): Promise<void>;
10
10
  getRecordShape(sObject: string): Promise<unknown>;
11
+ getRecord(input: GetRecordInputType): Promise<GetRecordResponseType>;
11
12
  }
12
13
  interface SalesforceConstructorProps {
13
14
  authUrl: string;
@@ -20,7 +21,8 @@ export declare class SalesforceRestAPIClient extends APIClient<SalesforceDataWra
20
21
  readonly ctor: DataWrapperCtor<SalesforceDataWrapper>;
21
22
  constructor({ authUrl, requestConfig, ...opts }: SalesforceConstructorProps);
22
23
  createRecord(input: CreateRecordInputType): Promise<CreateRecordResponseType>;
23
- updateRecord(input: UpdateRecordInputType): Promise<UpdateRecordResponseType>;
24
+ updateRecord(input: UpdateRecordInputType): Promise<void>;
24
25
  getRecordShape(sObject: string): Promise<unknown>;
26
+ getRecord(input: GetRecordInputType): Promise<GetRecordResponseType>;
25
27
  }
26
28
  export {};
@@ -19,7 +19,7 @@ class SalesforceDataWrapper extends extensions_core_1.DataWrapper {
19
19
  });
20
20
  }
21
21
  async updateRecord(input) {
22
- return await this.Request({
22
+ await this.Request({
23
23
  method: 'PATCH',
24
24
  url: `/services/data/${this.apiVersion}/sobjects/${input.sObject}/${input.sObjectId}`,
25
25
  headers: {
@@ -37,6 +37,15 @@ class SalesforceDataWrapper extends extensions_core_1.DataWrapper {
37
37
  },
38
38
  });
39
39
  }
40
+ async getRecord(input) {
41
+ return await this.Request({
42
+ method: 'GET',
43
+ url: `/services/data/${this.apiVersion}/sobjects/${input.sObject}/${input.sObjectId}`,
44
+ headers: {
45
+ 'Content-Type': 'application/json',
46
+ },
47
+ });
48
+ }
40
49
  }
41
50
  exports.SalesforceDataWrapper = SalesforceDataWrapper;
42
51
  class SalesforceRestAPIClient extends extensions_core_1.APIClient {
@@ -69,11 +78,16 @@ class SalesforceRestAPIClient extends extensions_core_1.APIClient {
69
78
  return await this.FetchData(async (dw) => await dw.createRecord(input));
70
79
  }
71
80
  async updateRecord(input) {
72
- return await this.FetchData(async (dw) => await dw.updateRecord(input));
81
+ await this.FetchData(async (dw) => {
82
+ await dw.updateRecord(input);
83
+ });
73
84
  }
74
85
  async getRecordShape(sObject) {
75
86
  return await this.FetchData(async (dw) => await dw.getRecordShape(sObject));
76
87
  }
88
+ async getRecord(input) {
89
+ return await this.FetchData(async (dw) => await dw.getRecord(input));
90
+ }
77
91
  }
78
92
  exports.SalesforceRestAPIClient = SalesforceRestAPIClient;
79
93
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../extensions/sfdc/api/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../extensions/sfdc/api/client.ts"],"names":[],"mappings":"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"}
@@ -46,3 +46,19 @@ export declare const UpdateRecordInputSchema: z.ZodObject<{
46
46
  export type UpdateRecordInputType = z.infer<typeof UpdateRecordInputSchema>;
47
47
  export declare const UpdateRecordResponseSchema: z.ZodUndefined;
48
48
  export type UpdateRecordResponseType = z.infer<typeof UpdateRecordResponseSchema>;
49
+ /**
50
+ * Get a record
51
+ */
52
+ export declare const GetRecordInputSchema: z.ZodObject<{
53
+ sObject: z.ZodString;
54
+ sObjectId: z.ZodString;
55
+ }, "strip", z.ZodTypeAny, {
56
+ sObject: string;
57
+ sObjectId: string;
58
+ }, {
59
+ sObject: string;
60
+ sObjectId: string;
61
+ }>;
62
+ export type GetRecordInputType = z.infer<typeof GetRecordInputSchema>;
63
+ export declare const GetRecordResponseSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
64
+ export type GetRecordResponseType = z.infer<typeof GetRecordResponseSchema>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UpdateRecordResponseSchema = exports.UpdateRecordInputSchema = exports.CreateRecordResponseSchema = exports.CreateRecordInputSchema = void 0;
3
+ exports.GetRecordResponseSchema = exports.GetRecordInputSchema = exports.UpdateRecordResponseSchema = exports.UpdateRecordInputSchema = exports.CreateRecordResponseSchema = exports.CreateRecordInputSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  /**
6
6
  * Create a record
@@ -23,4 +23,12 @@ exports.UpdateRecordInputSchema = zod_1.z.object({
23
23
  data: zod_1.z.record(zod_1.z.string(), zod_1.z.unknown()),
24
24
  });
25
25
  exports.UpdateRecordResponseSchema = zod_1.z.undefined();
26
+ /**
27
+ * Get a record
28
+ */
29
+ exports.GetRecordInputSchema = zod_1.z.object({
30
+ sObject: zod_1.z.string().min(1),
31
+ sObjectId: zod_1.z.string().min(1),
32
+ });
33
+ exports.GetRecordResponseSchema = zod_1.z.record(zod_1.z.string(), zod_1.z.unknown());
26
34
  //# sourceMappingURL=record.schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"record.schema.js","sourceRoot":"","sources":["../../../../../extensions/sfdc/api/schema/record.schema.ts"],"names":[],"mappings":";;;AAAA,6BAAuB;AAEvB;;GAEG;AAEU,QAAA,uBAAuB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC9C,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,IAAI,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC;CACxC,CAAC,CAAA;AAIW,QAAA,0BAA0B,GAAG,OAAC,CAAC,MAAM,CAAC;IACjD,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE;IACd,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,OAAO,EAAE,CAAC;IAC5B,OAAO,EAAE,OAAC,CAAC,OAAO,EAAE;CACrB,CAAC,CAAA;AAMF;;GAEG;AAEU,QAAA,uBAAuB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC9C,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,IAAI,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC;CACxC,CAAC,CAAA;AAIW,QAAA,0BAA0B,GAAG,OAAC,CAAC,SAAS,EAAE,CAAA"}
1
+ {"version":3,"file":"record.schema.js","sourceRoot":"","sources":["../../../../../extensions/sfdc/api/schema/record.schema.ts"],"names":[],"mappings":";;;AAAA,6BAAuB;AAEvB;;GAEG;AAEU,QAAA,uBAAuB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC9C,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,IAAI,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC;CACxC,CAAC,CAAA;AAIW,QAAA,0BAA0B,GAAG,OAAC,CAAC,MAAM,CAAC;IACjD,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE;IACd,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,OAAO,EAAE,CAAC;IAC5B,OAAO,EAAE,OAAC,CAAC,OAAO,EAAE;CACrB,CAAC,CAAA;AAMF;;GAEG;AAEU,QAAA,uBAAuB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC9C,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,IAAI,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC;CACxC,CAAC,CAAA;AAIW,QAAA,0BAA0B,GAAG,OAAC,CAAC,SAAS,EAAE,CAAA;AAMvD;;GAEG;AAEU,QAAA,oBAAoB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC3C,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC7B,CAAC,CAAA;AAIW,QAAA,uBAAuB,GAAG,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@awell-health/awell-extensions",
3
- "version": "2.0.32",
3
+ "version": "2.0.33",
4
4
  "packageManager": "yarn@3.4.1",
5
5
  "main": "dist/src/index.js",
6
6
  "repository": {
@@ -1 +0,0 @@
1
- {"version":3,"file":"datapoints.js","sourceRoot":"","sources":["../../../../../../extensions/sfdc/actions/testAction/config/datapoints.ts"],"names":[],"mappings":";;;AAEa,QAAA,UAAU,GAAG;IACxB,GAAG,EAAE;QACH,GAAG,EAAE,KAAK;QACV,SAAS,EAAE,MAAM;KAClB;CAC4C,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"fields.js","sourceRoot":"","sources":["../../../../../../extensions/sfdc/actions/testAction/config/fields.ts"],"names":[],"mappings":";;;;;;AAAA,mEAAqE;AACrE,8CAAwC;AAE3B,QAAA,MAAM,GAAG;IACpB,OAAO,EAAE;QACP,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,EAAE;QACf,IAAI,EAAE,2BAAS,CAAC,MAAM;QACtB,QAAQ,EAAE,IAAI;KACf;CAC8B,CAAA;AAEpB,QAAA,sBAAsB,GAAG,aAAC,CAAC,MAAM,CAAC;IAC7C,OAAO,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACuB,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../extensions/sfdc/actions/testAction/config/index.ts"],"names":[],"mappings":";;;AAAA,mCAAyD;AAAhD,gGAAA,MAAM,OAAA;AAAE,gHAAA,sBAAsB,OAAA;AACvC,2CAAyC;AAAhC,wGAAA,UAAU,OAAA"}
@@ -1 +0,0 @@
1
- export { testAction } from './testAction';
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.testAction = void 0;
4
- var testAction_1 = require("./testAction");
5
- Object.defineProperty(exports, "testAction", { enumerable: true, get: function () { return testAction_1.testAction; } });
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../extensions/sfdc/actions/testAction/index.ts"],"names":[],"mappings":";;;AAAA,2CAAyC;AAAhC,wGAAA,UAAU,OAAA"}
@@ -1,28 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.testAction = void 0;
4
- const extensions_core_1 = require("@awell-health/extensions-core");
5
- const config_1 = require("./config");
6
- const lib_1 = require("../../lib");
7
- exports.testAction = {
8
- key: 'testAction',
9
- category: extensions_core_1.Category.CUSTOMER_SUPPORT,
10
- title: 'Test action',
11
- description: 'Test connection with SFDC',
12
- fields: config_1.fields,
13
- previewable: false,
14
- dataPoints: config_1.dataPoints,
15
- onActivityCreated: async (payload, onComplete, onError) => {
16
- const { fields, salesforceClient } = await (0, lib_1.validatePayloadAndCreateClient)({
17
- fieldsSchema: config_1.FieldsValidationSchema,
18
- payload,
19
- });
20
- const res = await salesforceClient.getRecordShape(fields.sObject);
21
- await onComplete({
22
- data_points: {
23
- res: JSON.stringify(res),
24
- },
25
- });
26
- },
27
- };
28
- //# sourceMappingURL=testAction.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"testAction.js","sourceRoot":"","sources":["../../../../../extensions/sfdc/actions/testAction/testAction.ts"],"names":[],"mappings":";;;AAAA,mEAAqE;AAErE,qCAAqE;AACrE,mCAA0D;AAE7C,QAAA,UAAU,GAInB;IACF,GAAG,EAAE,YAAY;IACjB,QAAQ,EAAE,0BAAQ,CAAC,gBAAgB;IACnC,KAAK,EAAE,aAAa;IACpB,WAAW,EAAE,2BAA2B;IACxC,MAAM,EAAN,eAAM;IACN,WAAW,EAAE,KAAK;IAClB,UAAU,EAAV,mBAAU;IACV,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAiB,EAAE;QACvE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,IAAA,oCAA8B,EAAC;YACxE,YAAY,EAAE,+BAAsB;YACpC,OAAO;SACR,CAAC,CAAA;QAEF,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QAEjE,MAAM,UAAU,CAAC;YACf,WAAW,EAAE;gBACX,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;aACzB;SACF,CAAC,CAAA;IACJ,CAAC;CACF,CAAA"}
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const _1 = require(".");
4
- const tests_1 = require("../../../../src/tests");
5
- const __mocks__1 = require("../../api/__mocks__");
6
- jest.mock('../../api/client');
7
- describe('Salesforce - Test action', () => {
8
- const onComplete = jest.fn();
9
- const onError = jest.fn();
10
- beforeEach(() => {
11
- jest.clearAllMocks();
12
- });
13
- test('Test retrieval of record shape', async () => {
14
- const mockOnActivityCreateParams = (0, tests_1.generateTestPayload)({
15
- fields: {
16
- sObject: 'Lead',
17
- },
18
- settings: __mocks__1.mockSettings,
19
- });
20
- await _1.testAction.onActivityCreated(mockOnActivityCreateParams, onComplete, onError);
21
- const mockCall = onComplete.mock.calls[0][0];
22
- const parsedRes = JSON.parse(mockCall.data_points.res);
23
- expect(onComplete).toHaveBeenCalled();
24
- expect(parsedRes).toHaveProperty('label', 'Lead');
25
- });
26
- });
27
- //# sourceMappingURL=testAction.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"testAction.test.js","sourceRoot":"","sources":["../../../../../extensions/sfdc/actions/testAction/testAction.test.ts"],"names":[],"mappings":";;AAAA,wBAA8B;AAC9B,iDAA2D;AAC3D,kDAAkD;AAElD,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;AAE7B,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,EAAE,CAAA;IAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,EAAE,CAAA;IAEzB,UAAU,CAAC,GAAG,EAAE;QACd,IAAI,CAAC,aAAa,EAAE,CAAA;IACtB,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAChD,MAAM,0BAA0B,GAAG,IAAA,2BAAmB,EAAC;YACrD,MAAM,EAAE;gBACN,OAAO,EAAE,MAAM;aAChB;YACD,QAAQ,EAAE,uBAAY;SACvB,CAAC,CAAA;QAEF,MAAM,aAAU,CAAC,iBAAkB,CACjC,0BAA0B,EAC1B,UAAU,EACV,OAAO,CACR,CAAA;QAED,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QAEtD,MAAM,CAAC,UAAU,CAAC,CAAC,gBAAgB,EAAE,CAAA;QACrC,MAAM,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IACnD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}