@ingeno/pipedream-services 1.0.62 → 1.0.64

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 (55) hide show
  1. package/dist/aws/apn/partner-central-client.test.d.ts +2 -0
  2. package/dist/aws/apn/partner-central-client.test.d.ts.map +1 -0
  3. package/dist/aws/apn/partner-central-client.test.js +38 -0
  4. package/dist/aws/apn/partner-central-client.test.js.map +1 -0
  5. package/dist/aws/apn/zoho-crm/apn-opportunities-sync-step.test.d.ts +2 -0
  6. package/dist/aws/apn/zoho-crm/apn-opportunities-sync-step.test.d.ts.map +1 -0
  7. package/dist/aws/apn/zoho-crm/apn-opportunities-sync-step.test.js +34 -0
  8. package/dist/aws/apn/zoho-crm/apn-opportunities-sync-step.test.js.map +1 -0
  9. package/dist/aws/aws-list-stream.test.d.ts +3 -0
  10. package/dist/aws/aws-list-stream.test.d.ts.map +1 -0
  11. package/dist/aws/aws-list-stream.test.js +50 -0
  12. package/dist/aws/aws-list-stream.test.js.map +1 -0
  13. package/dist/collections/collections-to-table.test.d.ts +2 -0
  14. package/dist/collections/collections-to-table.test.d.ts.map +1 -0
  15. package/dist/collections/collections-to-table.test.js +105 -0
  16. package/dist/collections/collections-to-table.test.js.map +1 -0
  17. package/dist/collections/converter.test.d.ts +2 -0
  18. package/dist/collections/converter.test.d.ts.map +1 -0
  19. package/dist/collections/converter.test.js +304 -0
  20. package/dist/collections/converter.test.js.map +1 -0
  21. package/dist/postgres/posgres-test-config.d.ts +8 -0
  22. package/dist/postgres/posgres-test-config.d.ts.map +1 -0
  23. package/dist/postgres/posgres-test-config.js +8 -0
  24. package/dist/postgres/posgres-test-config.js.map +1 -0
  25. package/dist/postgres/postgres-test-connection.test.d.ts +2 -0
  26. package/dist/postgres/postgres-test-connection.test.d.ts.map +1 -0
  27. package/dist/postgres/postgres-test-connection.test.js +68 -0
  28. package/dist/postgres/postgres-test-connection.test.js.map +1 -0
  29. package/dist/postgres/postgres.d.ts +1 -0
  30. package/dist/postgres/postgres.d.ts.map +1 -1
  31. package/dist/postgres/postgres.js +45 -14
  32. package/dist/postgres/postgres.js.map +1 -1
  33. package/dist/postgres/postgres.test.d.ts +2 -0
  34. package/dist/postgres/postgres.test.d.ts.map +1 -0
  35. package/dist/postgres/postgres.test.js +497 -0
  36. package/dist/postgres/postgres.test.js.map +1 -0
  37. package/dist/streams/list-stream.test.d.ts +2 -0
  38. package/dist/streams/list-stream.test.d.ts.map +1 -0
  39. package/dist/streams/list-stream.test.js +169 -0
  40. package/dist/streams/list-stream.test.js.map +1 -0
  41. package/dist/zoho-crm/module-processor.d.ts.map +1 -1
  42. package/dist/zoho-crm/module-processor.js +1 -9
  43. package/dist/zoho-crm/module-processor.js.map +1 -1
  44. package/dist/zoho-crm/zoho-crm-client.d.ts +69 -1
  45. package/dist/zoho-crm/zoho-crm-client.d.ts.map +1 -1
  46. package/dist/zoho-crm/zoho-crm-client.js +229 -26
  47. package/dist/zoho-crm/zoho-crm-client.js.map +1 -1
  48. package/dist/zoho-crm/zoho-crm-client.test.d.ts +2 -0
  49. package/dist/zoho-crm/zoho-crm-client.test.d.ts.map +1 -0
  50. package/dist/zoho-crm/zoho-crm-client.test.js +341 -0
  51. package/dist/zoho-crm/zoho-crm-client.test.js.map +1 -0
  52. package/dist/zoho-crm/zoho-crm-fetcher.d.ts.map +1 -1
  53. package/dist/zoho-crm/zoho-crm-fetcher.js +76 -5
  54. package/dist/zoho-crm/zoho-crm-fetcher.js.map +1 -1
  55. package/package.json +3 -2
@@ -0,0 +1,169 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { firstValueFrom, toArray } from 'rxjs';
3
+ import { createPaginatedStream } from './list-stream.js';
4
+ describe('createPaginatedStream', () => {
5
+ it('should handle single page with no nextPageToken', async () => {
6
+ const mockItems = [
7
+ { id: 1, name: 'Item 1' },
8
+ { id: 2, name: 'Item 2' }
9
+ ];
10
+ let callCount = 0;
11
+ const mockPaginatedFn = async (options) => {
12
+ callCount++;
13
+ if (callCount === 1) {
14
+ expect(options.nextPageToken).toBeUndefined();
15
+ return {
16
+ items: mockItems,
17
+ nextPageToken: undefined
18
+ };
19
+ }
20
+ throw new Error('Should not be called again');
21
+ };
22
+ const stream = createPaginatedStream(mockPaginatedFn, {});
23
+ const result = await firstValueFrom(stream.pipe(toArray()));
24
+ expect(result).toEqual(mockItems);
25
+ expect(callCount).toBe(1);
26
+ });
27
+ it('should handle multiple pages with nextPageToken', async () => {
28
+ const page1Items = [
29
+ { id: 1, name: 'Item 1' },
30
+ { id: 2, name: 'Item 2' }
31
+ ];
32
+ const page2Items = [
33
+ { id: 3, name: 'Item 3' },
34
+ { id: 4, name: 'Item 4' }
35
+ ];
36
+ let callCount = 0;
37
+ const mockPaginatedFn = async (options) => {
38
+ callCount++;
39
+ if (callCount === 1) {
40
+ expect(options.nextPageToken).toBeUndefined();
41
+ return {
42
+ items: page1Items,
43
+ nextPageToken: 'token-page-2'
44
+ };
45
+ }
46
+ else if (callCount === 2) {
47
+ expect(options.nextPageToken).toBe('token-page-2');
48
+ return {
49
+ items: page2Items,
50
+ nextPageToken: undefined
51
+ };
52
+ }
53
+ throw new Error('Unexpected call');
54
+ };
55
+ const stream = createPaginatedStream(mockPaginatedFn, {});
56
+ const result = await firstValueFrom(stream.pipe(toArray()));
57
+ expect(result).toEqual([...page1Items, ...page2Items]);
58
+ expect(callCount).toBe(2);
59
+ });
60
+ it('should handle three pages with proper token progression', async () => {
61
+ const pages = [
62
+ [{ id: 1, name: 'Item 1' }],
63
+ [{ id: 2, name: 'Item 2' }],
64
+ [{ id: 3, name: 'Item 3' }]
65
+ ];
66
+ const tokens = [undefined, 'token-2', 'token-3'];
67
+ const nextTokens = ['token-2', 'token-3', undefined];
68
+ let callCount = 0;
69
+ const mockPaginatedFn = async (options) => {
70
+ expect(options.nextPageToken).toBe(tokens[callCount]);
71
+ const result = {
72
+ items: pages[callCount],
73
+ nextPageToken: nextTokens[callCount]
74
+ };
75
+ callCount++;
76
+ return result;
77
+ };
78
+ const stream = createPaginatedStream(mockPaginatedFn, { pageSize: 1 });
79
+ const result = await firstValueFrom(stream.pipe(toArray()));
80
+ expect(result).toEqual(pages.flat());
81
+ expect(callCount).toBe(3);
82
+ });
83
+ it('should handle empty results', async () => {
84
+ const mockPaginatedFn = async (_options) => {
85
+ return {
86
+ items: [],
87
+ nextPageToken: undefined
88
+ };
89
+ };
90
+ const stream = createPaginatedStream(mockPaginatedFn, {});
91
+ const result = await firstValueFrom(stream.pipe(toArray()));
92
+ expect(result).toEqual([]);
93
+ });
94
+ it('should preserve options across pagination calls', async () => {
95
+ const testOptions = {
96
+ pageSize: 10,
97
+ };
98
+ let callCount = 0;
99
+ const mockPaginatedFn = async (options) => {
100
+ callCount++;
101
+ expect(options.pageSize).toBe(10);
102
+ if (callCount === 1) {
103
+ expect(options.nextPageToken).toBeUndefined();
104
+ return {
105
+ items: [{ id: 1, name: 'Phone' }],
106
+ nextPageToken: 'next-token'
107
+ };
108
+ }
109
+ else {
110
+ expect(options.nextPageToken).toBe('next-token');
111
+ return {
112
+ items: [{ id: 2, name: 'Laptop' }],
113
+ nextPageToken: undefined
114
+ };
115
+ }
116
+ };
117
+ const stream = createPaginatedStream(mockPaginatedFn, testOptions);
118
+ const result = await firstValueFrom(stream.pipe(toArray()));
119
+ expect(result).toEqual([
120
+ { id: 1, name: 'Phone' },
121
+ { id: 2, name: 'Laptop' }
122
+ ]);
123
+ expect(callCount).toBe(2);
124
+ });
125
+ it('should handle pages with mixed item counts', async () => {
126
+ let callCount = 0;
127
+ const mockPaginatedFn = async (_options) => {
128
+ callCount++;
129
+ if (callCount === 1) {
130
+ return {
131
+ items: [
132
+ { id: 1, name: 'Item 1' },
133
+ { id: 2, name: 'Item 2' },
134
+ { id: 3, name: 'Item 3' }
135
+ ],
136
+ nextPageToken: 'page-2'
137
+ };
138
+ }
139
+ else if (callCount === 2) {
140
+ return {
141
+ items: [{ id: 4, name: 'Item 4' }],
142
+ nextPageToken: 'page-3'
143
+ };
144
+ }
145
+ else {
146
+ return {
147
+ items: [],
148
+ nextPageToken: undefined
149
+ };
150
+ }
151
+ };
152
+ const stream = createPaginatedStream(mockPaginatedFn, {});
153
+ const result = await firstValueFrom(stream.pipe(toArray()));
154
+ expect(result).toEqual([
155
+ { id: 1, name: 'Item 1' },
156
+ { id: 2, name: 'Item 2' },
157
+ { id: 3, name: 'Item 3' },
158
+ { id: 4, name: 'Item 4' }
159
+ ]);
160
+ });
161
+ it('should propagate errors from paginated function', async () => {
162
+ const mockPaginatedFn = async (_options) => {
163
+ throw new Error('API Error');
164
+ };
165
+ const stream = createPaginatedStream(mockPaginatedFn, {});
166
+ await expect(firstValueFrom(stream.pipe(toArray()))).rejects.toThrow('API Error');
167
+ });
168
+ });
169
+ //# sourceMappingURL=list-stream.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-stream.test.js","sourceRoot":"","sources":["../../src/streams/list-stream.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"module-processor.d.ts","sourceRoot":"","sources":["../../src/zoho-crm/module-processor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAsB,MAAM,yBAAyB,CAAA;AAC/F,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAExE,MAAM,WAAW,sBAAsB;IACrC,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAGD,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,gBAAgB,CAuGxG;AAGD,wBAAsB,aAAa,CACjC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,aAAa,EACrB,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,UAAU,CAAC,CA+BrB"}
1
+ {"version":3,"file":"module-processor.d.ts","sourceRoot":"","sources":["../../src/zoho-crm/module-processor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAsB,MAAM,yBAAyB,CAAA;AAC/F,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAExE,MAAM,WAAW,sBAAsB;IACrC,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAGD,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,gBAAgB,CAuGxG;AAGD,wBAAsB,aAAa,CACjC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,aAAa,EACrB,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,UAAU,CAAC,CAqBrB"}
@@ -98,15 +98,7 @@ export function generateSchemaFromRecords(records, schemaName) {
98
98
  export async function processModule(moduleName, client, options = {}) {
99
99
  const { maxRecords } = options;
100
100
  console.log(`Processing module: ${moduleName}`);
101
- // Get the appropriate method for this module
102
- const methodName = `get${moduleName}`;
103
- const method = client[methodName];
104
- if (!method || typeof method !== 'function') {
105
- throw new Error(`No method found for module: ${moduleName}`);
106
- }
107
- // Fetch records using the client method
108
- const records = await method.call(client, { maxRecords: maxRecords || undefined });
109
- // Generate schema from the records
101
+ const records = await client.getAllRecordsWithFields(moduleName, { maxRecords: maxRecords || undefined });
110
102
  const schema = generateSchemaFromRecords(records, moduleName.toLowerCase());
111
103
  // Create collection with manually assigned IDs
112
104
  const collection = {
@@ -1 +1 @@
1
- {"version":3,"file":"module-processor.js","sourceRoot":"","sources":["../../src/zoho-crm/module-processor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"module-processor.js","sourceRoot":"","sources":["../../src/zoho-crm/module-processor.ts"],"names":[],"mappings":"AAOA,uEAAuE;AACvE,MAAM,UAAU,yBAAyB,CAAC,OAAwB,EAAE,UAAkB;IACpF,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,MAAM;YACnB,OAAO,EAAE;gBACP,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;gBAC1B,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;aACpE;SACF,CAAA;IACH,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAA;IAEnC,2CAA2C;IAC3C,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;QACzB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YAClC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACpB,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,qDAAqD;IACrD,MAAM,OAAO,GAAa,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;IAEtD,sCAAsC;IACtC,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAA;IAEjD,YAAY,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC7B,2DAA2D;QAC3D,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;YAC/C,OAAM;QACR,CAAC;QAED,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,CAAA;QAElE,mEAAmE;QACnE,IAAI,IAAI,GAAe,MAAM,CAAA;QAE7B,4BAA4B;QAC5B,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAChF,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAA;QAChF,CAAC;aAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9F,IAAI,GAAG,UAAU,CAAA;QACnB,CAAC;aAAM,IACL,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC;YAC7B,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;YACtB,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC;YACvB,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,EACzB,CAAC;YACD,IAAI,GAAG,QAAQ,CAAA;QACjB,CAAC;aAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAClG,IAAI,GAAG,MAAM,CAAA;QACf,CAAC;QAED,2CAA2C;QAC3C,MAAM,YAAY,GAAG,OAAO;aACzB,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;aACZ,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aAC9B,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,EAAE,CAAC,CAAA;QACnE,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAA;YAEnC,IAAI,OAAO,WAAW,KAAK,SAAS,EAAE,CAAC;gBACrC,IAAI,GAAG,MAAM,CAAA;YACf,CAAC;iBAAM,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;gBAC3C,IAAI,GAAG,QAAQ,CAAA;YACjB,CAAC;iBAAM,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;gBACnE,yDAAyD;gBACzD,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;oBACrB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,UAAU,OAAO,EAAE,IAAI,EAAE,GAAG,KAAK,OAAO,EAAE,CAAC,CAAA;gBACrE,CAAC;gBACD,IAAI,WAAW,CAAC,EAAE,EAAE,CAAC;oBACnB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,UAAU,KAAK,EAAE,IAAI,EAAE,GAAG,KAAK,KAAK,EAAE,CAAC,CAAA;gBACjE,CAAC;gBACD,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;oBACtB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,UAAU,QAAQ,EAAE,IAAI,EAAE,GAAG,KAAK,QAAQ,EAAE,CAAC,CAAA;gBACvE,CAAC;gBACD,OAAM,CAAC,oEAAoE;YAC7E,CAAC;iBAAM,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;gBAC3C,8CAA8C;gBAC9C,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;oBAC3C,4DAA4D;oBAC5D,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,CAAA;oBAClC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;wBAC1B,8BAA8B;wBAC9B,IAAI,GAAG,MAAM,CAAA;oBACf,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;IACvD,CAAC,CAAC,CAAA;IAEF,2CAA2C;IAC3C,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,MAAW,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IAEtF,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,MAAM;QACnB,OAAO;KACR,CAAA;AACH,CAAC;AAED,kDAAkD;AAClD,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,UAAkB,EAClB,MAAqB,EACrB,UAAkC,EAAE;IAEpC,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAA;IAE9B,OAAO,CAAC,GAAG,CAAC,sBAAsB,UAAU,EAAE,CAAC,CAAA;IAE/C,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,UAAU,IAAI,SAAS,EAAE,CAAC,CAAA;IAEzG,MAAM,MAAM,GAAG,yBAAyB,CAAC,OAAO,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC,CAAA;IAE3E,+CAA+C;IAC/C,MAAM,UAAU,GAAe;QAC7B,MAAM;QACN,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAW,EAAE,KAAa,EAAE,EAAE,CAAC,CAAC;YACpD,EAAE,EAAE,KAAK,GAAG,CAAC;YACb,GAAG,MAAM;SACV,CAAC,CAAC;KACJ,CAAA;IAED,OAAO,CAAC,GAAG,CAAC,aAAa,OAAO,CAAC,MAAM,wBAAwB,UAAU,EAAE,CAAC,CAAA;IAE5E,OAAO,UAAU,CAAA;AACnB,CAAC"}
@@ -61,13 +61,13 @@ export declare class ZohoCRMClient {
61
61
  getModuleFields(module: string): Promise<any>;
62
62
  getModules(): Promise<any[]>;
63
63
  getAllFieldNames(module: string): Promise<string[]>;
64
+ getAllRecordsWithFields(module: string, options?: Parameters<typeof this.getAllRecords>[1]): Promise<ZohoCRMRecord[]>;
64
65
  getLeads(options?: Parameters<typeof this.getAllRecords>[1]): Promise<ZohoCRMRecord[]>;
65
66
  getContacts(options?: Parameters<typeof this.getAllRecords>[1]): Promise<ZohoCRMRecord[]>;
66
67
  getAccounts(options?: Parameters<typeof this.getAllRecords>[1]): Promise<ZohoCRMRecord[]>;
67
68
  getDeals(options?: Parameters<typeof this.getAllRecords>[1]): Promise<ZohoCRMRecord[]>;
68
69
  getTasks(options?: Parameters<typeof this.getAllRecords>[1]): Promise<ZohoCRMRecord[]>;
69
70
  getEvents(options?: Parameters<typeof this.getAllRecords>[1]): Promise<ZohoCRMRecord[]>;
70
- getCalls(options?: Parameters<typeof this.getAllRecords>[1]): Promise<ZohoCRMRecord[]>;
71
71
  getAPNOpportunities(options?: Parameters<typeof this.getAllRecords>[1]): Promise<ZohoCRMRecord[]>;
72
72
  getAPNOpportunity(opportunityId: string): Promise<ZohoCRMRecord>;
73
73
  createAPNOpportunity(data: Partial<ZohoCRMRecord>): Promise<ZohoCRMRecord>;
@@ -81,5 +81,73 @@ export declare class ZohoCRMClient {
81
81
  getRecentAPNOpportunities(days?: number, options?: Parameters<typeof this.getAllRecords>[1]): Promise<ZohoCRMRecord[]>;
82
82
  bulkCreateAPNOpportunities(opportunities: Array<Partial<ZohoCRMRecord>>): Promise<ZohoCRMRecord[]>;
83
83
  bulkUpdateAPNOpportunities(opportunities: Array<Partial<ZohoCRMRecord>>): Promise<ZohoCRMRecord[]>;
84
+ getDealStageHistory(dealId: string, fields?: string[]): Promise<ZohoCRMRecord[]>;
85
+ createDealStageHistoryStream(dealId: string, fields?: string[]): Observable<ZohoCRMRecord>;
86
+ getAllDealStageHistory(dealId: string, maxRecords?: number, fields?: string[]): Promise<ZohoCRMRecord[]>;
87
+ getRelatedListMetadata(module: string, layoutId?: string): Promise<any>;
88
+ getModuleRelatedRecordTypes(module: string, layoutId?: string): Promise<Array<{
89
+ api_name: string;
90
+ display_label: string;
91
+ module: string;
92
+ type: string;
93
+ sequence_number: number;
94
+ href?: string;
95
+ customization?: any;
96
+ }>>;
97
+ getRelatedRecords(module: string, recordId: string, relatedListApiName: string, options?: {
98
+ page?: number;
99
+ per_page?: number;
100
+ fields?: string[];
101
+ sort_order?: 'asc' | 'desc';
102
+ sort_by?: string;
103
+ }): Promise<ZohoCRMResponse<ZohoCRMRecord>>;
104
+ getAllRelatedRecords(module: string, recordId: string, relatedListApiName: string, options?: {
105
+ maxRecords?: number;
106
+ fields?: string[];
107
+ sort_order?: 'asc' | 'desc';
108
+ sort_by?: string;
109
+ }): Promise<ZohoCRMRecord[]>;
110
+ getPipelines(layoutId: string): Promise<any>;
111
+ getPipeline(pipelineId: string, layoutId: string): Promise<any>;
112
+ getPipelineDetails(layoutId: string, pipelineId?: string): Promise<Array<{
113
+ id: string;
114
+ display_value: string;
115
+ default: boolean;
116
+ stages: Array<{
117
+ id: string;
118
+ display_value: string;
119
+ sequence_number: number;
120
+ forecast_category?: string;
121
+ forecast_type?: string;
122
+ probability?: number;
123
+ }>;
124
+ }>>;
125
+ getDealsLayoutId(): Promise<string>;
126
+ getDealsPipelines(): Promise<Array<{
127
+ id: string;
128
+ display_value: string;
129
+ default: boolean;
130
+ stages: Array<{
131
+ id: string;
132
+ display_value: string;
133
+ sequence_number: number;
134
+ forecast_category?: string;
135
+ forecast_type?: string;
136
+ probability?: number;
137
+ }>;
138
+ }>>;
139
+ getDealsPipeline(pipelineId: string): Promise<Array<{
140
+ id: string;
141
+ display_value: string;
142
+ default: boolean;
143
+ stages: Array<{
144
+ id: string;
145
+ display_value: string;
146
+ sequence_number: number;
147
+ forecast_category?: string;
148
+ forecast_type?: string;
149
+ probability?: number;
150
+ }>;
151
+ }>>;
84
152
  }
85
153
  //# sourceMappingURL=zoho-crm-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"zoho-crm-client.d.ts","sourceRoot":"","sources":["../../src/zoho-crm/zoho-crm-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zoho-crm-client.d.ts","sourceRoot":"","sources":["../../src/zoho-crm/zoho-crm-client.ts"],"names":[],"mappings":"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"}
@@ -209,47 +209,34 @@ export class ZohoCRMClient {
209
209
  console.log(`Using wildcard fields for ${module}`);
210
210
  return ['*']; // Use wildcard to get all fields
211
211
  }
212
- // Convenience methods for common modules
213
- async getLeads(options) {
214
- const fields = await this.getAllFieldNames('Leads');
215
- return await this.getAllRecords('Leads', {
212
+ async getAllRecordsWithFields(module, options) {
213
+ const fields = await this.getAllFieldNames(module);
214
+ return await this.getAllRecords(module, {
216
215
  fields,
217
216
  ...options,
218
217
  });
219
218
  }
219
+ // Convenience methods for common modules
220
+ async getLeads(options) {
221
+ return await this.getAllRecordsWithFields('Leads', options);
222
+ }
220
223
  async getContacts(options) {
221
- const fields = await this.getAllFieldNames('Contacts');
222
- return await this.getAllRecords('Contacts', {
223
- fields,
224
- ...options,
225
- });
224
+ return await this.getAllRecordsWithFields('Contacts', options);
226
225
  }
227
226
  async getAccounts(options) {
228
- const fields = await this.getAllFieldNames('Accounts');
229
- return await this.getAllRecords('Accounts', {
230
- fields,
231
- ...options,
232
- });
227
+ return await this.getAllRecordsWithFields('Accounts', options);
233
228
  }
234
229
  async getDeals(options) {
235
- const fields = await this.getAllFieldNames('Deals');
236
- return await this.getAllRecords('Deals', {
237
- fields,
238
- ...options,
239
- });
230
+ return await this.getAllRecordsWithFields('Deals', options);
240
231
  }
241
232
  async getTasks(options) {
242
- return await this.getAllRecords('Tasks', options);
233
+ return await this.getAllRecordsWithFields('Tasks', options);
243
234
  }
244
235
  async getEvents(options) {
245
- return await this.getAllRecords('Events', options);
236
+ return await this.getAllRecordsWithFields('Events', options);
246
237
  }
247
- async getCalls(options) {
248
- return await this.getAllRecords('Calls', options);
249
- }
250
- // APN Opportunities module methods
251
238
  async getAPNOpportunities(options) {
252
- return await this.getAllRecords('APN_Opportunities', options);
239
+ return await this.getAllRecordsWithFields('APN_Opportunities', options);
253
240
  }
254
241
  async getAPNOpportunity(opportunityId) {
255
242
  return await this.getRecord('APN_Opportunities', opportunityId);
@@ -311,5 +298,221 @@ export class ZohoCRMClient {
311
298
  }, 'bulk update APN opportunities');
312
299
  return response.data;
313
300
  }
301
+ // Get deal stage history for a specific deal
302
+ async getDealStageHistory(dealId, fields) {
303
+ const params = new URLSearchParams();
304
+ // Default fields for stage history if none provided
305
+ const defaultFields = [
306
+ 'id',
307
+ 'Stage',
308
+ 'Previous_Stage',
309
+ 'Changed_Time',
310
+ 'Changed_By',
311
+ 'Duration_Days',
312
+ 'Duration_Hours_Minutes',
313
+ ];
314
+ const requestFields = fields || defaultFields;
315
+ params.append('fields', requestFields.join(','));
316
+ const response = await this.makeRequest(`/Deals/${dealId}/Stage_History?${params.toString()}`, {}, `get deal ${dealId} stage history`);
317
+ return response.data || [];
318
+ }
319
+ // Get deal stage history with streaming support for large datasets
320
+ createDealStageHistoryStream(dealId, fields) {
321
+ const paginatedFn = async (paginationOptions) => {
322
+ const params = new URLSearchParams();
323
+ // Default fields for stage history if none provided
324
+ const defaultFields = [
325
+ 'id',
326
+ 'Stage',
327
+ 'Previous_Stage',
328
+ 'Changed_Time',
329
+ 'Changed_By',
330
+ 'Duration_Days',
331
+ 'Duration_Hours_Minutes',
332
+ ];
333
+ const requestFields = fields || defaultFields;
334
+ params.append('fields', requestFields.join(','));
335
+ if (paginationOptions.nextPageToken) {
336
+ params.append('page_token', paginationOptions.nextPageToken);
337
+ }
338
+ else {
339
+ params.append('page', '1');
340
+ }
341
+ if (paginationOptions.pageSize) {
342
+ params.append('per_page', paginationOptions.pageSize.toString());
343
+ }
344
+ const queryString = params.toString();
345
+ const endpoint = `/Deals/${dealId}/Stage_History?${queryString}`;
346
+ const response = await this.makeRequest(endpoint, {}, `get deal ${dealId} stage history page`);
347
+ return {
348
+ items: response.data || [],
349
+ nextPageToken: response.info?.next_page_token,
350
+ };
351
+ };
352
+ return createPaginatedStream(paginatedFn, { pageSize: 200 });
353
+ }
354
+ // Get all stage history records for a deal with automatic pagination
355
+ async getAllDealStageHistory(dealId, maxRecords, fields) {
356
+ console.log(`Starting to fetch stage history for deal ${dealId}...`);
357
+ const stream = this.createDealStageHistoryStream(dealId, fields);
358
+ const allRecords = await firstValueFrom(stream.pipe(toArray()));
359
+ const result = maxRecords ? allRecords.slice(0, maxRecords) : allRecords;
360
+ console.log(`Finished fetching stage history for deal ${dealId}. Total: ${result.length}`);
361
+ return result;
362
+ }
363
+ // Get related list metadata for a module
364
+ async getRelatedListMetadata(module, layoutId) {
365
+ const params = new URLSearchParams();
366
+ params.append('module', module);
367
+ if (layoutId) {
368
+ params.append('layout_id', layoutId);
369
+ }
370
+ const response = await this.makeRequest(`/settings/related_lists?${params.toString()}`, {}, `get related list metadata for ${module}`);
371
+ return response;
372
+ }
373
+ // Get all related record types for a module with detailed information
374
+ async getModuleRelatedRecordTypes(module, layoutId) {
375
+ console.log(`Fetching related record types for module: ${module}`);
376
+ const metadata = await this.getRelatedListMetadata(module, layoutId);
377
+ if (!metadata.related_lists || !Array.isArray(metadata.related_lists)) {
378
+ console.log(`No related lists found for module: ${module}`);
379
+ return [];
380
+ }
381
+ const relatedTypes = metadata.related_lists.map((relatedList) => ({
382
+ api_name: relatedList.api_name,
383
+ display_label: relatedList.display_label,
384
+ module: relatedList.module?.api_name || relatedList.module,
385
+ type: relatedList.type || 'default',
386
+ sequence_number: parseInt(relatedList.sequence_number) || 0,
387
+ href: relatedList.href,
388
+ customization: relatedList.customization || null,
389
+ }));
390
+ console.log(`Found ${relatedTypes.length} related record types for ${module}:`);
391
+ relatedTypes.forEach((type) => {
392
+ console.log(` - ${type.display_label} (${type.api_name}) -> ${type.module}`);
393
+ });
394
+ return relatedTypes;
395
+ }
396
+ // Get related records for a specific record
397
+ async getRelatedRecords(module, recordId, relatedListApiName, options = {}) {
398
+ const params = new URLSearchParams();
399
+ if (options.page)
400
+ params.append('page', options.page.toString());
401
+ if (options.per_page)
402
+ params.append('per_page', options.per_page.toString());
403
+ if (options.fields != null)
404
+ params.append('fields', options.fields.join(','));
405
+ if (options.sort_order)
406
+ params.append('sort_order', options.sort_order);
407
+ if (options.sort_by)
408
+ params.append('sort_by', options.sort_by);
409
+ const queryString = params.toString();
410
+ const endpoint = `/${module}/${recordId}/${relatedListApiName}${queryString ? `?${queryString}` : ''}`;
411
+ return await this.makeRequest(endpoint, {}, `get ${relatedListApiName} related records for ${module} ${recordId}`);
412
+ }
413
+ // Get all related records with automatic pagination
414
+ async getAllRelatedRecords(module, recordId, relatedListApiName, options = {}) {
415
+ console.log(`Fetching all ${relatedListApiName} records related to ${module} ${recordId}...`);
416
+ const allRecords = [];
417
+ let page = 1;
418
+ let hasMore = true;
419
+ const perPage = 200; // Max per page for Zoho CRM
420
+ while (hasMore && (!options.maxRecords || allRecords.length < options.maxRecords)) {
421
+ const response = await this.getRelatedRecords(module, recordId, relatedListApiName, {
422
+ page,
423
+ per_page: perPage,
424
+ fields: options.fields,
425
+ sort_order: options.sort_order,
426
+ sort_by: options.sort_by,
427
+ });
428
+ if (response.data && response.data.length > 0) {
429
+ allRecords.push(...response.data);
430
+ hasMore = response.info?.more_records || false;
431
+ page++;
432
+ }
433
+ else {
434
+ hasMore = false;
435
+ }
436
+ }
437
+ const result = options.maxRecords ? allRecords.slice(0, options.maxRecords) : allRecords;
438
+ console.log(`Finished fetching ${relatedListApiName} related records. Total: ${result.length}`);
439
+ return result;
440
+ }
441
+ // Get pipelines for a specific layout
442
+ async getPipelines(layoutId) {
443
+ const params = new URLSearchParams();
444
+ params.append('layout_id', layoutId);
445
+ const response = await this.makeRequest(`/settings/pipeline?${params.toString()}`, {}, `get pipelines for layout ${layoutId}`);
446
+ return response;
447
+ }
448
+ // Get a specific pipeline by ID
449
+ async getPipeline(pipelineId, layoutId) {
450
+ const params = new URLSearchParams();
451
+ params.append('layout_id', layoutId);
452
+ const response = await this.makeRequest(`/settings/pipeline/${pipelineId}?${params.toString()}`, {}, `get pipeline ${pipelineId} for layout ${layoutId}`);
453
+ return response;
454
+ }
455
+ // Get structured pipeline information with stages
456
+ async getPipelineDetails(layoutId, pipelineId) {
457
+ console.log(`Fetching pipeline details for layout: ${layoutId}${pipelineId ? `, pipeline: ${pipelineId}` : ''}`);
458
+ let response;
459
+ if (pipelineId) {
460
+ response = await this.getPipeline(pipelineId, layoutId);
461
+ }
462
+ else {
463
+ response = await this.getPipelines(layoutId);
464
+ }
465
+ if (!response.pipeline || !Array.isArray(response.pipeline)) {
466
+ console.log(`No pipelines found for layout: ${layoutId}`);
467
+ return [];
468
+ }
469
+ const pipelines = response.pipeline.map((pipeline) => ({
470
+ id: pipeline.id,
471
+ display_value: pipeline.display_value,
472
+ default: pipeline.default || false,
473
+ stages: (pipeline.maps || [])
474
+ .map((stage) => ({
475
+ id: stage.id,
476
+ display_value: stage.display_value,
477
+ sequence_number: parseInt(stage.sequence_number) || 0,
478
+ forecast_category: stage.forecast_category?.name || stage.forecast_category,
479
+ forecast_type: stage.forecast_type,
480
+ probability: stage.probability || 0,
481
+ }))
482
+ .sort((a, b) => a.sequence_number - b.sequence_number),
483
+ }));
484
+ console.log(`Found ${pipelines.length} pipeline(s):`);
485
+ pipelines.forEach((pipeline) => {
486
+ console.log(` - ${pipeline.display_value} (${pipeline.id}) - ${pipeline.stages.length} stages${pipeline.default ? ' [DEFAULT]' : ''}`);
487
+ });
488
+ return pipelines;
489
+ }
490
+ // Get deals layout ID (helper function since pipelines require layout_id)
491
+ async getDealsLayoutId() {
492
+ try {
493
+ const layouts = (await this.makeRequest('/settings/layouts?module=Deals', {}, 'get deals layouts'));
494
+ if (layouts.layouts && layouts.layouts.length > 0) {
495
+ const defaultLayout = layouts.layouts.find((layout) => layout.name === 'Standard' || layout.default);
496
+ const layoutId = defaultLayout?.id || layouts.layouts[0].id;
497
+ console.log(`Using Deals layout ID: ${layoutId} (${defaultLayout?.name || layouts.layouts[0].name})`);
498
+ return layoutId;
499
+ }
500
+ throw new Error('No layouts found for Deals module');
501
+ }
502
+ catch (error) {
503
+ console.error('Failed to get Deals layout ID:', error);
504
+ throw error;
505
+ }
506
+ }
507
+ // Convenience method to get pipelines for Deals module
508
+ async getDealsPipelines() {
509
+ const layoutId = await this.getDealsLayoutId();
510
+ return await this.getPipelineDetails(layoutId);
511
+ }
512
+ // Get a specific deals pipeline
513
+ async getDealsPipeline(pipelineId) {
514
+ const layoutId = await this.getDealsLayoutId();
515
+ return await this.getPipelineDetails(layoutId, pipelineId);
516
+ }
314
517
  }
315
518
  //# sourceMappingURL=zoho-crm-client.js.map