@marktoflow/integrations 2.0.0-alpha.6 → 2.0.0-alpha.9

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 (166) hide show
  1. package/README.md +738 -9
  2. package/dist/adapters/claude-agent-hooks.d.ts +176 -0
  3. package/dist/adapters/claude-agent-hooks.d.ts.map +1 -0
  4. package/dist/adapters/claude-agent-hooks.js +339 -0
  5. package/dist/adapters/claude-agent-hooks.js.map +1 -0
  6. package/dist/adapters/claude-agent-types.d.ts +426 -0
  7. package/dist/adapters/claude-agent-types.d.ts.map +1 -0
  8. package/dist/adapters/claude-agent-types.js +62 -0
  9. package/dist/adapters/claude-agent-types.js.map +1 -0
  10. package/dist/adapters/claude-agent-workflow.d.ts +393 -0
  11. package/dist/adapters/claude-agent-workflow.d.ts.map +1 -0
  12. package/dist/adapters/claude-agent-workflow.js +445 -0
  13. package/dist/adapters/claude-agent-workflow.js.map +1 -0
  14. package/dist/adapters/claude-agent.d.ts +171 -0
  15. package/dist/adapters/claude-agent.d.ts.map +1 -0
  16. package/dist/adapters/claude-agent.js +468 -0
  17. package/dist/adapters/claude-agent.js.map +1 -0
  18. package/dist/adapters/codex-types.d.ts +463 -0
  19. package/dist/adapters/codex-types.d.ts.map +1 -0
  20. package/dist/adapters/codex-types.js +53 -0
  21. package/dist/adapters/codex-types.js.map +1 -0
  22. package/dist/adapters/codex-workflow.d.ts +414 -0
  23. package/dist/adapters/codex-workflow.d.ts.map +1 -0
  24. package/dist/adapters/codex-workflow.js +470 -0
  25. package/dist/adapters/codex-workflow.js.map +1 -0
  26. package/dist/adapters/codex.d.ts +136 -0
  27. package/dist/adapters/codex.d.ts.map +1 -0
  28. package/dist/adapters/codex.js +390 -0
  29. package/dist/adapters/codex.js.map +1 -0
  30. package/dist/adapters/github-copilot-types.d.ts +1012 -0
  31. package/dist/adapters/github-copilot-types.d.ts.map +1 -0
  32. package/dist/adapters/github-copilot-types.js +80 -0
  33. package/dist/adapters/github-copilot-types.js.map +1 -0
  34. package/dist/adapters/github-copilot-workflow.d.ts +462 -0
  35. package/dist/adapters/github-copilot-workflow.d.ts.map +1 -0
  36. package/dist/adapters/github-copilot-workflow.js +473 -0
  37. package/dist/adapters/github-copilot-workflow.js.map +1 -0
  38. package/dist/adapters/github-copilot.d.ts +221 -37
  39. package/dist/adapters/github-copilot.d.ts.map +1 -1
  40. package/dist/adapters/github-copilot.js +336 -58
  41. package/dist/adapters/github-copilot.js.map +1 -1
  42. package/dist/adapters/opencode.d.ts +2 -0
  43. package/dist/adapters/opencode.d.ts.map +1 -1
  44. package/dist/adapters/opencode.js +6 -0
  45. package/dist/adapters/opencode.js.map +1 -1
  46. package/dist/index.d.ts +31 -1
  47. package/dist/index.d.ts.map +1 -1
  48. package/dist/index.js +88 -1
  49. package/dist/index.js.map +1 -1
  50. package/dist/services/ai-browser.d.ts +112 -0
  51. package/dist/services/ai-browser.d.ts.map +1 -0
  52. package/dist/services/ai-browser.js +363 -0
  53. package/dist/services/ai-browser.js.map +1 -0
  54. package/dist/services/asana.d.ts +159 -0
  55. package/dist/services/asana.d.ts.map +1 -0
  56. package/dist/services/asana.js +196 -0
  57. package/dist/services/asana.js.map +1 -0
  58. package/dist/services/aws-s3.d.ts +89 -0
  59. package/dist/services/aws-s3.d.ts.map +1 -0
  60. package/dist/services/aws-s3.js +154 -0
  61. package/dist/services/aws-s3.js.map +1 -0
  62. package/dist/services/dropbox.d.ts +134 -0
  63. package/dist/services/dropbox.d.ts.map +1 -0
  64. package/dist/services/dropbox.js +190 -0
  65. package/dist/services/dropbox.js.map +1 -0
  66. package/dist/services/google-calendar.d.ts +220 -0
  67. package/dist/services/google-calendar.d.ts.map +1 -0
  68. package/dist/services/google-calendar.js +318 -0
  69. package/dist/services/google-calendar.js.map +1 -0
  70. package/dist/services/google-docs.d.ts +197 -0
  71. package/dist/services/google-docs.d.ts.map +1 -0
  72. package/dist/services/google-docs.js +293 -0
  73. package/dist/services/google-docs.js.map +1 -0
  74. package/dist/services/google-drive.d.ts +149 -0
  75. package/dist/services/google-drive.d.ts.map +1 -0
  76. package/dist/services/google-drive.js +288 -0
  77. package/dist/services/google-drive.js.map +1 -0
  78. package/dist/services/google-sheets.d.ts +165 -0
  79. package/dist/services/google-sheets.d.ts.map +1 -0
  80. package/dist/services/google-sheets.js +352 -0
  81. package/dist/services/google-sheets.js.map +1 -0
  82. package/dist/services/mailchimp.d.ts +169 -0
  83. package/dist/services/mailchimp.d.ts.map +1 -0
  84. package/dist/services/mailchimp.js +180 -0
  85. package/dist/services/mailchimp.js.map +1 -0
  86. package/dist/services/mysql.d.ts +91 -0
  87. package/dist/services/mysql.d.ts.map +1 -0
  88. package/dist/services/mysql.js +250 -0
  89. package/dist/services/mysql.js.map +1 -0
  90. package/dist/services/playwright.d.ts +678 -0
  91. package/dist/services/playwright.d.ts.map +1 -0
  92. package/dist/services/playwright.js +1141 -0
  93. package/dist/services/playwright.js.map +1 -0
  94. package/dist/services/postgres.d.ts +83 -0
  95. package/dist/services/postgres.d.ts.map +1 -0
  96. package/dist/services/postgres.js +230 -0
  97. package/dist/services/postgres.js.map +1 -0
  98. package/dist/services/sendgrid.d.ts +43 -0
  99. package/dist/services/sendgrid.d.ts.map +1 -0
  100. package/dist/services/sendgrid.js +87 -0
  101. package/dist/services/sendgrid.js.map +1 -0
  102. package/dist/services/shopify.d.ts +160 -0
  103. package/dist/services/shopify.d.ts.map +1 -0
  104. package/dist/services/shopify.js +166 -0
  105. package/dist/services/shopify.js.map +1 -0
  106. package/dist/services/stripe.d.ts +275 -0
  107. package/dist/services/stripe.d.ts.map +1 -0
  108. package/dist/services/stripe.js +229 -0
  109. package/dist/services/stripe.js.map +1 -0
  110. package/dist/services/supabase.d.ts +193 -0
  111. package/dist/services/supabase.d.ts.map +1 -0
  112. package/dist/services/supabase.js +328 -0
  113. package/dist/services/supabase.js.map +1 -0
  114. package/dist/services/teams.d.ts +224 -0
  115. package/dist/services/teams.d.ts.map +1 -0
  116. package/dist/services/teams.js +229 -0
  117. package/dist/services/teams.js.map +1 -0
  118. package/dist/services/telegram.d.ts +247 -0
  119. package/dist/services/telegram.d.ts.map +1 -0
  120. package/dist/services/telegram.js +247 -0
  121. package/dist/services/telegram.js.map +1 -0
  122. package/dist/services/trello.d.ts +160 -0
  123. package/dist/services/trello.d.ts.map +1 -0
  124. package/dist/services/trello.js +194 -0
  125. package/dist/services/trello.js.map +1 -0
  126. package/dist/services/twilio.d.ts +126 -0
  127. package/dist/services/twilio.d.ts.map +1 -0
  128. package/dist/services/twilio.js +153 -0
  129. package/dist/services/twilio.js.map +1 -0
  130. package/dist/services/whatsapp.d.ts +311 -0
  131. package/dist/services/whatsapp.d.ts.map +1 -0
  132. package/dist/services/whatsapp.js +253 -0
  133. package/dist/services/whatsapp.js.map +1 -0
  134. package/dist/services/zendesk.d.ts +134 -0
  135. package/dist/services/zendesk.d.ts.map +1 -0
  136. package/dist/services/zendesk.js +148 -0
  137. package/dist/services/zendesk.js.map +1 -0
  138. package/package.json +43 -5
  139. package/dist/claude-code.d.ts +0 -16
  140. package/dist/claude-code.d.ts.map +0 -1
  141. package/dist/claude-code.js +0 -56
  142. package/dist/claude-code.js.map +0 -1
  143. package/dist/github.d.ts +0 -3
  144. package/dist/github.d.ts.map +0 -1
  145. package/dist/github.js +0 -13
  146. package/dist/github.js.map +0 -1
  147. package/dist/jira.d.ts +0 -3
  148. package/dist/jira.d.ts.map +0 -1
  149. package/dist/jira.js +0 -21
  150. package/dist/jira.js.map +0 -1
  151. package/dist/ollama.d.ts +0 -3
  152. package/dist/ollama.d.ts.map +0 -1
  153. package/dist/ollama.js +0 -9
  154. package/dist/ollama.js.map +0 -1
  155. package/dist/opencode.d.ts +0 -19
  156. package/dist/opencode.d.ts.map +0 -1
  157. package/dist/opencode.js +0 -104
  158. package/dist/opencode.js.map +0 -1
  159. package/dist/script.d.ts +0 -3
  160. package/dist/script.d.ts.map +0 -1
  161. package/dist/script.js +0 -21
  162. package/dist/script.js.map +0 -1
  163. package/dist/slack.d.ts +0 -3
  164. package/dist/slack.d.ts.map +0 -1
  165. package/dist/slack.js +0 -11
  166. package/dist/slack.js.map +0 -1
@@ -0,0 +1,253 @@
1
+ /**
2
+ * WhatsApp Integration
3
+ *
4
+ * Messaging platform via WhatsApp Business API.
5
+ * API Docs: https://developers.facebook.com/docs/whatsapp/cloud-api
6
+ */
7
+ const WHATSAPP_API_URL = 'https://graph.facebook.com/v18.0';
8
+ /**
9
+ * WhatsApp Business API client for workflow integration
10
+ */
11
+ export class WhatsAppClient {
12
+ accessToken;
13
+ apiUrl;
14
+ constructor(phoneNumberId, accessToken) {
15
+ this.accessToken = accessToken;
16
+ this.apiUrl = `${WHATSAPP_API_URL}/${phoneNumberId}`;
17
+ }
18
+ async request(method, path, body) {
19
+ const response = await fetch(`${this.apiUrl}${path}`, {
20
+ method,
21
+ headers: {
22
+ Authorization: `Bearer ${this.accessToken}`,
23
+ 'Content-Type': 'application/json',
24
+ },
25
+ body: body ? JSON.stringify(body) : undefined,
26
+ });
27
+ if (!response.ok) {
28
+ const error = await response.text();
29
+ throw new Error(`WhatsApp API error: ${response.status} ${error}`);
30
+ }
31
+ return (await response.json());
32
+ }
33
+ /**
34
+ * Send a text message
35
+ */
36
+ async sendText(options) {
37
+ return this.request('POST', '/messages', {
38
+ messaging_product: 'whatsapp',
39
+ to: options.to,
40
+ type: 'text',
41
+ text: {
42
+ body: options.text,
43
+ preview_url: options.previewUrl ?? false,
44
+ },
45
+ });
46
+ }
47
+ /**
48
+ * Send a template message
49
+ */
50
+ async sendTemplate(options) {
51
+ return this.request('POST', '/messages', {
52
+ messaging_product: 'whatsapp',
53
+ to: options.to,
54
+ type: 'template',
55
+ template: {
56
+ name: options.templateName,
57
+ language: {
58
+ code: options.languageCode,
59
+ },
60
+ components: options.components,
61
+ },
62
+ });
63
+ }
64
+ /**
65
+ * Send an image
66
+ */
67
+ async sendImage(options) {
68
+ return this.request('POST', '/messages', {
69
+ messaging_product: 'whatsapp',
70
+ to: options.to,
71
+ type: 'image',
72
+ image: {
73
+ link: options.mediaUrl,
74
+ id: options.mediaId,
75
+ caption: options.caption,
76
+ },
77
+ });
78
+ }
79
+ /**
80
+ * Send a video
81
+ */
82
+ async sendVideo(options) {
83
+ return this.request('POST', '/messages', {
84
+ messaging_product: 'whatsapp',
85
+ to: options.to,
86
+ type: 'video',
87
+ video: {
88
+ link: options.mediaUrl,
89
+ id: options.mediaId,
90
+ caption: options.caption,
91
+ },
92
+ });
93
+ }
94
+ /**
95
+ * Send a document
96
+ */
97
+ async sendDocument(options) {
98
+ return this.request('POST', '/messages', {
99
+ messaging_product: 'whatsapp',
100
+ to: options.to,
101
+ type: 'document',
102
+ document: {
103
+ link: options.mediaUrl,
104
+ id: options.mediaId,
105
+ caption: options.caption,
106
+ filename: options.filename,
107
+ },
108
+ });
109
+ }
110
+ /**
111
+ * Send an audio
112
+ */
113
+ async sendAudio(options) {
114
+ return this.request('POST', '/messages', {
115
+ messaging_product: 'whatsapp',
116
+ to: options.to,
117
+ type: 'audio',
118
+ audio: {
119
+ link: options.mediaUrl,
120
+ id: options.mediaId,
121
+ },
122
+ });
123
+ }
124
+ /**
125
+ * Send a location
126
+ */
127
+ async sendLocation(options) {
128
+ return this.request('POST', '/messages', {
129
+ messaging_product: 'whatsapp',
130
+ to: options.to,
131
+ type: 'location',
132
+ location: {
133
+ longitude: options.longitude,
134
+ latitude: options.latitude,
135
+ name: options.name,
136
+ address: options.address,
137
+ },
138
+ });
139
+ }
140
+ /**
141
+ * Send an interactive message (buttons or list)
142
+ */
143
+ async sendInteractive(options) {
144
+ const interactive = {
145
+ type: options.type,
146
+ body: { text: options.bodyText },
147
+ action: {},
148
+ };
149
+ if (options.headerText) {
150
+ interactive.header = { type: 'text', text: options.headerText };
151
+ }
152
+ if (options.footerText) {
153
+ interactive.footer = { text: options.footerText };
154
+ }
155
+ if (options.type === 'button' && options.buttons) {
156
+ interactive.action.buttons = options.buttons.map((btn) => ({
157
+ type: 'reply',
158
+ reply: btn,
159
+ }));
160
+ }
161
+ else if (options.type === 'list') {
162
+ interactive.action.button = options.listButton ?? 'Menu';
163
+ interactive.action.sections = options.sections ?? [];
164
+ }
165
+ return this.request('POST', '/messages', {
166
+ messaging_product: 'whatsapp',
167
+ to: options.to,
168
+ type: 'interactive',
169
+ interactive,
170
+ });
171
+ }
172
+ /**
173
+ * Mark a message as read
174
+ */
175
+ async markAsRead(messageId) {
176
+ return this.request('POST', '/messages', {
177
+ messaging_product: 'whatsapp',
178
+ status: 'read',
179
+ message_id: messageId,
180
+ });
181
+ }
182
+ /**
183
+ * Get media URL
184
+ */
185
+ async getMediaUrl(mediaId) {
186
+ const response = await fetch(`${WHATSAPP_API_URL}/${mediaId}`, {
187
+ headers: {
188
+ Authorization: `Bearer ${this.accessToken}`,
189
+ },
190
+ });
191
+ if (!response.ok) {
192
+ const error = await response.text();
193
+ throw new Error(`WhatsApp API error: ${response.status} ${error}`);
194
+ }
195
+ const data = (await response.json());
196
+ return {
197
+ url: data.url,
198
+ mimeType: data.mime_type,
199
+ sha256: data.sha256,
200
+ fileSize: data.file_size,
201
+ };
202
+ }
203
+ /**
204
+ * Download media
205
+ */
206
+ async downloadMedia(mediaId) {
207
+ const mediaInfo = await this.getMediaUrl(mediaId);
208
+ const response = await fetch(mediaInfo.url, {
209
+ headers: {
210
+ Authorization: `Bearer ${this.accessToken}`,
211
+ },
212
+ });
213
+ if (!response.ok) {
214
+ throw new Error(`Failed to download media: ${response.status}`);
215
+ }
216
+ return Buffer.from(await response.arrayBuffer());
217
+ }
218
+ /**
219
+ * Upload media
220
+ */
221
+ async uploadMedia(file, mimeType) {
222
+ const formData = new FormData();
223
+ formData.append('messaging_product', 'whatsapp');
224
+ formData.append('file', new Blob([file], { type: mimeType }));
225
+ const response = await fetch(`${this.apiUrl}/media`, {
226
+ method: 'POST',
227
+ headers: {
228
+ Authorization: `Bearer ${this.accessToken}`,
229
+ },
230
+ body: formData,
231
+ });
232
+ if (!response.ok) {
233
+ const error = await response.text();
234
+ throw new Error(`WhatsApp API error: ${response.status} ${error}`);
235
+ }
236
+ return (await response.json());
237
+ }
238
+ }
239
+ export const WhatsAppInitializer = {
240
+ async initialize(_module, config) {
241
+ const phoneNumberId = config.auth?.['phone_number_id'];
242
+ const accessToken = config.auth?.['access_token'];
243
+ if (!phoneNumberId || !accessToken) {
244
+ throw new Error('WhatsApp SDK requires auth.phone_number_id and auth.access_token');
245
+ }
246
+ const client = new WhatsAppClient(phoneNumberId, accessToken);
247
+ return {
248
+ client,
249
+ actions: client,
250
+ };
251
+ },
252
+ };
253
+ //# sourceMappingURL=whatsapp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"whatsapp.js","sourceRoot":"","sources":["../../src/services/whatsapp.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,134 @@
1
+ /**
2
+ * Zendesk Integration
3
+ *
4
+ * Customer support and ticketing platform.
5
+ * API Docs: https://developer.zendesk.com/api-reference/
6
+ * SDK: https://github.com/blakmatrix/node-zendesk
7
+ */
8
+ import { SDKInitializer } from '@marktoflow/core';
9
+ export interface ZendeskTicket {
10
+ id?: number;
11
+ subject: string;
12
+ comment: {
13
+ body: string;
14
+ html_body?: string;
15
+ public?: boolean;
16
+ };
17
+ requester_id?: number;
18
+ submitter_id?: number;
19
+ assignee_id?: number;
20
+ priority?: 'low' | 'normal' | 'high' | 'urgent';
21
+ status?: 'new' | 'open' | 'pending' | 'hold' | 'solved' | 'closed';
22
+ tags?: string[];
23
+ type?: 'problem' | 'incident' | 'question' | 'task';
24
+ }
25
+ export interface ZendeskUser {
26
+ id?: number;
27
+ name: string;
28
+ email: string;
29
+ phone?: string;
30
+ role?: 'end-user' | 'agent' | 'admin';
31
+ verified?: boolean;
32
+ tags?: string[];
33
+ }
34
+ export interface SearchOptions {
35
+ query: string;
36
+ sort_by?: string;
37
+ sort_order?: 'asc' | 'desc';
38
+ }
39
+ /**
40
+ * Zendesk client wrapper for workflow integration
41
+ */
42
+ export declare class ZendeskClient {
43
+ private client;
44
+ constructor(client: any);
45
+ /**
46
+ * List tickets
47
+ */
48
+ listTickets(options?: {
49
+ per_page?: number;
50
+ page?: number;
51
+ }): Promise<any>;
52
+ /**
53
+ * Get ticket by ID
54
+ */
55
+ getTicket(ticketId: number): Promise<any>;
56
+ /**
57
+ * Create ticket
58
+ */
59
+ createTicket(ticket: ZendeskTicket): Promise<any>;
60
+ /**
61
+ * Update ticket
62
+ */
63
+ updateTicket(ticketId: number, ticket: Partial<ZendeskTicket>): Promise<any>;
64
+ /**
65
+ * Delete ticket
66
+ */
67
+ deleteTicket(ticketId: number): Promise<any>;
68
+ /**
69
+ * Add comment to ticket
70
+ */
71
+ addComment(ticketId: number, comment: {
72
+ body: string;
73
+ public?: boolean;
74
+ }): Promise<any>;
75
+ /**
76
+ * List users
77
+ */
78
+ listUsers(options?: {
79
+ per_page?: number;
80
+ page?: number;
81
+ role?: string;
82
+ }): Promise<any>;
83
+ /**
84
+ * Get user by ID
85
+ */
86
+ getUser(userId: number): Promise<any>;
87
+ /**
88
+ * Create user
89
+ */
90
+ createUser(user: ZendeskUser): Promise<any>;
91
+ /**
92
+ * Update user
93
+ */
94
+ updateUser(userId: number, user: Partial<ZendeskUser>): Promise<any>;
95
+ /**
96
+ * Delete user
97
+ */
98
+ deleteUser(userId: number): Promise<any>;
99
+ /**
100
+ * Search users
101
+ */
102
+ searchUsers(query: string): Promise<any>;
103
+ /**
104
+ * Search across Zendesk
105
+ */
106
+ search(options: SearchOptions): Promise<any>;
107
+ /**
108
+ * List organizations
109
+ */
110
+ listOrganizations(options?: {
111
+ per_page?: number;
112
+ page?: number;
113
+ }): Promise<any>;
114
+ /**
115
+ * Get organization by ID
116
+ */
117
+ getOrganization(orgId: number): Promise<any>;
118
+ /**
119
+ * Create organization
120
+ */
121
+ createOrganization(organization: {
122
+ name: string;
123
+ tags?: string[];
124
+ }): Promise<any>;
125
+ /**
126
+ * Update organization
127
+ */
128
+ updateOrganization(orgId: number, organization: Partial<{
129
+ name: string;
130
+ tags?: string[];
131
+ }>): Promise<any>;
132
+ }
133
+ export declare const ZendeskInitializer: SDKInitializer;
134
+ //# sourceMappingURL=zendesk.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zendesk.d.ts","sourceRoot":"","sources":["../../src/services/zendesk.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,148 @@
1
+ /**
2
+ * Zendesk Integration
3
+ *
4
+ * Customer support and ticketing platform.
5
+ * API Docs: https://developer.zendesk.com/api-reference/
6
+ * SDK: https://github.com/blakmatrix/node-zendesk
7
+ */
8
+ import zendesk from 'node-zendesk';
9
+ /**
10
+ * Zendesk client wrapper for workflow integration
11
+ */
12
+ export class ZendeskClient {
13
+ client;
14
+ constructor(client) {
15
+ this.client = client;
16
+ }
17
+ // ==================== Tickets ====================
18
+ /**
19
+ * List tickets
20
+ */
21
+ async listTickets(options) {
22
+ return await this.client.tickets.list(options);
23
+ }
24
+ /**
25
+ * Get ticket by ID
26
+ */
27
+ async getTicket(ticketId) {
28
+ return await this.client.tickets.show(ticketId);
29
+ }
30
+ /**
31
+ * Create ticket
32
+ */
33
+ async createTicket(ticket) {
34
+ return await this.client.tickets.create({ ticket });
35
+ }
36
+ /**
37
+ * Update ticket
38
+ */
39
+ async updateTicket(ticketId, ticket) {
40
+ return await this.client.tickets.update(ticketId, { ticket });
41
+ }
42
+ /**
43
+ * Delete ticket
44
+ */
45
+ async deleteTicket(ticketId) {
46
+ return await this.client.tickets.delete(ticketId);
47
+ }
48
+ /**
49
+ * Add comment to ticket
50
+ */
51
+ async addComment(ticketId, comment) {
52
+ return await this.client.tickets.update(ticketId, {
53
+ ticket: {
54
+ comment,
55
+ },
56
+ });
57
+ }
58
+ // ==================== Users ====================
59
+ /**
60
+ * List users
61
+ */
62
+ async listUsers(options) {
63
+ return await this.client.users.list(options);
64
+ }
65
+ /**
66
+ * Get user by ID
67
+ */
68
+ async getUser(userId) {
69
+ return await this.client.users.show(userId);
70
+ }
71
+ /**
72
+ * Create user
73
+ */
74
+ async createUser(user) {
75
+ return await this.client.users.create({ user });
76
+ }
77
+ /**
78
+ * Update user
79
+ */
80
+ async updateUser(userId, user) {
81
+ return await this.client.users.update(userId, { user });
82
+ }
83
+ /**
84
+ * Delete user
85
+ */
86
+ async deleteUser(userId) {
87
+ return await this.client.users.delete(userId);
88
+ }
89
+ /**
90
+ * Search users
91
+ */
92
+ async searchUsers(query) {
93
+ return await this.client.search.query(query, 'user');
94
+ }
95
+ // ==================== Search ====================
96
+ /**
97
+ * Search across Zendesk
98
+ */
99
+ async search(options) {
100
+ return await this.client.search.query(options.query, undefined, options.sort_by, options.sort_order);
101
+ }
102
+ // ==================== Organizations ====================
103
+ /**
104
+ * List organizations
105
+ */
106
+ async listOrganizations(options) {
107
+ return await this.client.organizations.list(options);
108
+ }
109
+ /**
110
+ * Get organization by ID
111
+ */
112
+ async getOrganization(orgId) {
113
+ return await this.client.organizations.show(orgId);
114
+ }
115
+ /**
116
+ * Create organization
117
+ */
118
+ async createOrganization(organization) {
119
+ return await this.client.organizations.create({ organization });
120
+ }
121
+ /**
122
+ * Update organization
123
+ */
124
+ async updateOrganization(orgId, organization) {
125
+ return await this.client.organizations.update(orgId, { organization });
126
+ }
127
+ }
128
+ export const ZendeskInitializer = {
129
+ async initialize(_module, config) {
130
+ const subdomain = config.auth?.['subdomain'];
131
+ const email = config.auth?.['email'];
132
+ const token = config.auth?.['token'];
133
+ if (!subdomain || !email || !token) {
134
+ throw new Error('Zendesk SDK requires auth.subdomain, auth.email, and auth.token');
135
+ }
136
+ const client = zendesk.createClient({
137
+ username: email,
138
+ token: token,
139
+ subdomain: subdomain,
140
+ });
141
+ const wrapper = new ZendeskClient(client);
142
+ return {
143
+ client: wrapper,
144
+ actions: wrapper,
145
+ };
146
+ },
147
+ };
148
+ //# sourceMappingURL=zendesk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zendesk.js","sourceRoot":"","sources":["../../src/services/zendesk.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@marktoflow/integrations",
3
- "version": "2.0.0-alpha.6",
3
+ "version": "2.0.0-alpha.9",
4
4
  "description": "Standard integrations for marktoflow",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -28,15 +28,34 @@
28
28
  },
29
29
  "dependencies": {
30
30
  "@github/copilot-sdk": "^0.1.18",
31
- "@marktoflow/core": "2.0.0-alpha.6",
31
+ "@marktoflow/core": "2.0.0-alpha.9",
32
32
  "@microsoft/microsoft-graph-client": "^3.0.7",
33
33
  "@octokit/rest": "^22.0.1",
34
+ "@openai/codex-sdk": "^0.91.0",
34
35
  "@opencode-ai/sdk": "^1.1.34",
35
36
  "@slack/bolt": "^4.0.0",
36
37
  "@slack/web-api": "^7.8.0",
37
38
  "googleapis": "^140.0.0",
38
39
  "jira.js": "^5.2.2",
39
- "ollama": "^0.6.3"
40
+ "mysql2": "^3.11.5",
41
+ "ollama": "^0.6.3",
42
+ "pg": "^8.13.1",
43
+ "playwright": "^1.50.0",
44
+ "stripe": "^18.4.0",
45
+ "twilio": "^5.3.6",
46
+ "@shopify/shopify-api": "^11.7.1",
47
+ "node-zendesk": "^6.0.1",
48
+ "@sendgrid/mail": "^8.1.4",
49
+ "@mailchimp/mailchimp_marketing": "^3.0.80",
50
+ "asana": "^3.0.11",
51
+ "trello": "^0.11.0",
52
+ "dropbox": "^10.34.0",
53
+ "@aws-sdk/client-s3": "^3.712.0",
54
+ "zod": "^3.24.0"
55
+ },
56
+ "optionalDependencies": {
57
+ "@anthropic-ai/claude-agent-sdk": ">=0.1.0",
58
+ "@browserbasehq/stagehand": ">=2.0.0"
40
59
  },
41
60
  "peerDependencies": {
42
61
  "typescript": "^5.0.0"
@@ -52,8 +71,27 @@
52
71
  "github",
53
72
  "jira",
54
73
  "gmail",
55
- "outlook"
74
+ "outlook",
75
+ "google-sheets",
76
+ "google-calendar",
77
+ "google-drive",
78
+ "google-docs",
79
+ "telegram",
80
+ "whatsapp",
81
+ "airtable",
82
+ "discord",
83
+ "supabase",
84
+ "postgres",
85
+ "mysql",
86
+ "playwright",
87
+ "browser-automation",
88
+ "web-scraping",
89
+ "stagehand",
90
+ "ai-automation"
56
91
  ],
57
92
  "author": "Scott Glover",
58
- "license": "Apache-2.0"
93
+ "license": "Apache-2.0",
94
+ "devDependencies": {
95
+ "@types/pg": "^8.16.0"
96
+ }
59
97
  }
@@ -1,16 +0,0 @@
1
- import { SDKInitializer } from '@marktoflow/core';
2
- export declare class ClaudeCodeClient {
3
- private options;
4
- constructor(options?: {
5
- cliPath?: string;
6
- model?: string;
7
- cwd?: string;
8
- timeout?: number;
9
- });
10
- generate(inputs: {
11
- prompt: string;
12
- model?: string;
13
- } | string): Promise<string>;
14
- }
15
- export declare const ClaudeCodeInitializer: SDKInitializer;
16
- //# sourceMappingURL=claude-code.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"claude-code.d.ts","sourceRoot":"","sources":["../src/claude-code.ts"],"names":[],"mappings":"AACA,OAAO,EAAc,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAE9D,qBAAa,gBAAgB;IACf,OAAO,CAAC,OAAO;gBAAP,OAAO,GAAE;QAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC;KACb;IAEA,QAAQ,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CA4CrF;AAED,eAAO,MAAM,qBAAqB,EAAE,cAUnC,CAAC"}