digital-tools 2.1.3 → 2.3.0

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 (294) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/README.md +2 -0
  3. package/dist/client.d.ts +109 -0
  4. package/dist/client.d.ts.map +1 -0
  5. package/dist/client.js +69 -0
  6. package/dist/client.js.map +1 -0
  7. package/dist/define.d.ts +2 -2
  8. package/dist/define.d.ts.map +1 -1
  9. package/dist/define.js +21 -11
  10. package/dist/define.js.map +1 -1
  11. package/dist/function-ref.d.ts +229 -0
  12. package/dist/function-ref.d.ts.map +1 -0
  13. package/dist/function-ref.js +28 -0
  14. package/dist/function-ref.js.map +1 -0
  15. package/dist/function-sugar.d.ts +57 -0
  16. package/dist/function-sugar.d.ts.map +1 -0
  17. package/dist/function-sugar.js +79 -0
  18. package/dist/function-sugar.js.map +1 -0
  19. package/dist/index.d.ts +10 -3
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +24 -4
  22. package/dist/index.js.map +1 -1
  23. package/dist/providers/analytics/mixpanel.d.ts.map +1 -1
  24. package/dist/providers/analytics/mixpanel.js +21 -18
  25. package/dist/providers/analytics/mixpanel.js.map +1 -1
  26. package/dist/providers/calendar/cal-com.d.ts.map +1 -1
  27. package/dist/providers/calendar/cal-com.js +10 -10
  28. package/dist/providers/calendar/cal-com.js.map +1 -1
  29. package/dist/providers/calendar/google-calendar.d.ts.map +1 -1
  30. package/dist/providers/calendar/google-calendar.js +4 -4
  31. package/dist/providers/calendar/google-calendar.js.map +1 -1
  32. package/dist/providers/crm/hubspot.d.ts.map +1 -1
  33. package/dist/providers/crm/hubspot.js +107 -85
  34. package/dist/providers/crm/hubspot.js.map +1 -1
  35. package/dist/providers/development/github.d.ts.map +1 -1
  36. package/dist/providers/development/github.js +40 -43
  37. package/dist/providers/development/github.js.map +1 -1
  38. package/dist/providers/ecommerce/shopify.d.ts.map +1 -1
  39. package/dist/providers/ecommerce/shopify.js +79 -62
  40. package/dist/providers/ecommerce/shopify.js.map +1 -1
  41. package/dist/providers/email/resend.d.ts.map +1 -1
  42. package/dist/providers/email/resend.js +20 -16
  43. package/dist/providers/email/resend.js.map +1 -1
  44. package/dist/providers/email/sendgrid.d.ts.map +1 -1
  45. package/dist/providers/email/sendgrid.js +12 -9
  46. package/dist/providers/email/sendgrid.js.map +1 -1
  47. package/dist/providers/finance/stripe.d.ts.map +1 -1
  48. package/dist/providers/finance/stripe.js +44 -42
  49. package/dist/providers/finance/stripe.js.map +1 -1
  50. package/dist/providers/forms/typeform.d.ts.map +1 -1
  51. package/dist/providers/forms/typeform.js +68 -58
  52. package/dist/providers/forms/typeform.js.map +1 -1
  53. package/dist/providers/knowledge/notion.d.ts.map +1 -1
  54. package/dist/providers/knowledge/notion.js +75 -41
  55. package/dist/providers/knowledge/notion.js.map +1 -1
  56. package/dist/providers/marketing/mailchimp.d.ts.map +1 -1
  57. package/dist/providers/marketing/mailchimp.js +74 -61
  58. package/dist/providers/marketing/mailchimp.js.map +1 -1
  59. package/dist/providers/media/cloudinary.d.ts.map +1 -1
  60. package/dist/providers/media/cloudinary.js +30 -28
  61. package/dist/providers/media/cloudinary.js.map +1 -1
  62. package/dist/providers/messaging/slack.d.ts.map +1 -1
  63. package/dist/providers/messaging/slack.js +75 -58
  64. package/dist/providers/messaging/slack.js.map +1 -1
  65. package/dist/providers/messaging/twilio-sms.d.ts.map +1 -1
  66. package/dist/providers/messaging/twilio-sms.js +33 -15
  67. package/dist/providers/messaging/twilio-sms.js.map +1 -1
  68. package/dist/providers/project-management/linear.d.ts.map +1 -1
  69. package/dist/providers/project-management/linear.js +31 -27
  70. package/dist/providers/project-management/linear.js.map +1 -1
  71. package/dist/providers/spreadsheet/google-sheets.d.ts.map +1 -1
  72. package/dist/providers/spreadsheet/google-sheets.js +21 -18
  73. package/dist/providers/spreadsheet/google-sheets.js.map +1 -1
  74. package/dist/providers/spreadsheet/xlsx.d.ts.map +1 -1
  75. package/dist/providers/spreadsheet/xlsx.js +4 -4
  76. package/dist/providers/spreadsheet/xlsx.js.map +1 -1
  77. package/dist/providers/storage/index.js +1 -0
  78. package/dist/providers/storage/index.js.map +1 -1
  79. package/dist/providers/storage/s3.d.ts.map +1 -1
  80. package/dist/providers/storage/s3.js +36 -27
  81. package/dist/providers/storage/s3.js.map +1 -1
  82. package/dist/providers/support/zendesk.d.ts.map +1 -1
  83. package/dist/providers/support/zendesk.js +24 -25
  84. package/dist/providers/support/zendesk.js.map +1 -1
  85. package/dist/providers/tasks/todoist.d.ts.map +1 -1
  86. package/dist/providers/tasks/todoist.js +18 -18
  87. package/dist/providers/tasks/todoist.js.map +1 -1
  88. package/dist/providers/video-conferencing/google-meet.d.ts.map +1 -1
  89. package/dist/providers/video-conferencing/google-meet.js +11 -11
  90. package/dist/providers/video-conferencing/google-meet.js.map +1 -1
  91. package/dist/providers/video-conferencing/jitsi.js +14 -14
  92. package/dist/providers/video-conferencing/jitsi.js.map +1 -1
  93. package/dist/providers/video-conferencing/teams.d.ts.map +1 -1
  94. package/dist/providers/video-conferencing/teams.js +9 -7
  95. package/dist/providers/video-conferencing/teams.js.map +1 -1
  96. package/dist/providers/video-conferencing/zoom.d.ts.map +1 -1
  97. package/dist/providers/video-conferencing/zoom.js +26 -24
  98. package/dist/providers/video-conferencing/zoom.js.map +1 -1
  99. package/dist/tools/data.d.ts.map +1 -1
  100. package/dist/tools/data.js +5 -12
  101. package/dist/tools/data.js.map +1 -1
  102. package/dist/tools/index.d.ts +1 -0
  103. package/dist/tools/index.d.ts.map +1 -1
  104. package/dist/tools/index.js +1 -0
  105. package/dist/tools/index.js.map +1 -1
  106. package/dist/tools/system.d.ts +289 -0
  107. package/dist/tools/system.d.ts.map +1 -0
  108. package/dist/tools/system.js +752 -0
  109. package/dist/tools/system.js.map +1 -0
  110. package/dist/tools/web.d.ts.map +1 -1
  111. package/dist/tools/web.js +22 -10
  112. package/dist/tools/web.js.map +1 -1
  113. package/dist/track-record.d.ts +101 -0
  114. package/dist/track-record.d.ts.map +1 -0
  115. package/dist/track-record.js +17 -0
  116. package/dist/track-record.js.map +1 -0
  117. package/dist/types.d.ts +210 -9
  118. package/dist/types.d.ts.map +1 -1
  119. package/dist/verb-registration.d.ts +122 -0
  120. package/dist/verb-registration.d.ts.map +1 -0
  121. package/dist/verb-registration.js +176 -0
  122. package/dist/verb-registration.js.map +1 -0
  123. package/dist/worker.d.ts +93 -0
  124. package/dist/worker.d.ts.map +1 -0
  125. package/dist/worker.js +315 -0
  126. package/dist/worker.js.map +1 -0
  127. package/dist/wrap.d.ts +89 -0
  128. package/dist/wrap.d.ts.map +1 -0
  129. package/dist/wrap.js +225 -0
  130. package/dist/wrap.js.map +1 -0
  131. package/package.json +31 -14
  132. package/src/client.ts +136 -0
  133. package/src/define.ts +30 -24
  134. package/src/function-ref.ts +264 -0
  135. package/src/function-sugar.ts +134 -0
  136. package/src/index.ts +132 -10
  137. package/src/providers/analytics/mixpanel.ts +19 -18
  138. package/src/providers/calendar/cal-com.ts +29 -18
  139. package/src/providers/calendar/google-calendar.ts +20 -14
  140. package/src/providers/crm/hubspot.ts +225 -99
  141. package/src/providers/development/github.ts +206 -135
  142. package/src/providers/ecommerce/shopify.ts +250 -89
  143. package/src/providers/email/resend.ts +101 -28
  144. package/src/providers/email/sendgrid.ts +12 -9
  145. package/src/providers/finance/stripe.ts +128 -49
  146. package/src/providers/forms/typeform.ts +74 -58
  147. package/src/providers/knowledge/notion.ts +340 -88
  148. package/src/providers/marketing/mailchimp.ts +86 -70
  149. package/src/providers/media/cloudinary.ts +99 -41
  150. package/src/providers/messaging/slack.ts +283 -85
  151. package/src/providers/messaging/twilio-sms.ts +35 -15
  152. package/src/providers/project-management/linear.ts +143 -55
  153. package/src/providers/spreadsheet/google-sheets.ts +222 -56
  154. package/src/providers/spreadsheet/xlsx.ts +47 -16
  155. package/src/providers/storage/s3.ts +119 -47
  156. package/src/providers/support/zendesk.ts +196 -46
  157. package/src/providers/tasks/todoist.ts +20 -26
  158. package/src/providers/video-conferencing/google-meet.ts +17 -20
  159. package/src/providers/video-conferencing/jitsi.ts +14 -14
  160. package/src/providers/video-conferencing/teams.ts +14 -13
  161. package/src/providers/video-conferencing/zoom.ts +54 -49
  162. package/src/tools/data.ts +6 -16
  163. package/src/tools/index.ts +1 -0
  164. package/src/tools/system.ts +887 -0
  165. package/src/tools/web.ts +22 -10
  166. package/src/track-record.ts +106 -0
  167. package/src/types.ts +241 -13
  168. package/src/verb-registration.ts +197 -0
  169. package/src/worker.ts +370 -0
  170. package/src/wrap.ts +260 -0
  171. package/test/client.test.ts +146 -0
  172. package/test/communication-tools-extended.test.ts +734 -0
  173. package/test/data-tools-extended.test.ts +743 -0
  174. package/test/define-extended.test.ts +819 -0
  175. package/test/define.test.ts +150 -41
  176. package/test/entities.test.ts +623 -0
  177. package/test/extended-entities.test.ts +1228 -0
  178. package/test/provider-implementations.test.ts +725 -0
  179. package/test/provider-registry-extended.test.ts +583 -0
  180. package/test/providers/google-sheets.test.ts +851 -0
  181. package/test/providers/helpers.ts +554 -0
  182. package/test/providers/hubspot.test.ts +576 -0
  183. package/test/providers/slack.test.ts +932 -0
  184. package/test/providers/stripe.test.ts +701 -0
  185. package/test/providers.test.ts +578 -0
  186. package/test/system-tools-extended.test.ts +632 -0
  187. package/test/system.test.ts +673 -0
  188. package/test/tools.test.ts +15 -11
  189. package/test/types.test.ts +402 -0
  190. package/test/verb-registration.test.ts +395 -0
  191. package/test/web-tools.test.ts +553 -0
  192. package/test/worker-extended.test.ts +699 -0
  193. package/test/worker.test.ts +576 -0
  194. package/test/wrap.test.ts +366 -0
  195. package/tsconfig.json +3 -13
  196. package/vitest.config.ts +37 -0
  197. package/wrangler.jsonc +9 -0
  198. package/.turbo/turbo-build.log +0 -4
  199. package/LICENSE +0 -21
  200. package/dist/providers/voice/vapi.d.ts +0 -27
  201. package/dist/providers/voice/vapi.d.ts.map +0 -1
  202. package/dist/providers/voice/vapi.js +0 -440
  203. package/dist/providers/voice/vapi.js.map +0 -1
  204. package/src/define.js +0 -259
  205. package/src/entities/advertising.js +0 -999
  206. package/src/entities/ai.js +0 -756
  207. package/src/entities/analytics.js +0 -1588
  208. package/src/entities/automation.js +0 -601
  209. package/src/entities/communication.js +0 -1150
  210. package/src/entities/crm.js +0 -1386
  211. package/src/entities/design.js +0 -546
  212. package/src/entities/development.js +0 -2212
  213. package/src/entities/document.js +0 -874
  214. package/src/entities/ecommerce.js +0 -1429
  215. package/src/entities/experiment.js +0 -1039
  216. package/src/entities/finance.js +0 -3478
  217. package/src/entities/forms.js +0 -1892
  218. package/src/entities/hr.js +0 -661
  219. package/src/entities/identity.js +0 -997
  220. package/src/entities/index.js +0 -282
  221. package/src/entities/infrastructure.js +0 -1153
  222. package/src/entities/knowledge.js +0 -1438
  223. package/src/entities/marketing.js +0 -1610
  224. package/src/entities/media.js +0 -1634
  225. package/src/entities/notification.js +0 -1199
  226. package/src/entities/presentation.js +0 -1274
  227. package/src/entities/productivity.js +0 -1317
  228. package/src/entities/project-management.js +0 -1136
  229. package/src/entities/recruiting.js +0 -736
  230. package/src/entities/shipping.js +0 -509
  231. package/src/entities/signature.js +0 -1102
  232. package/src/entities/site.js +0 -222
  233. package/src/entities/spreadsheet.js +0 -1341
  234. package/src/entities/storage.js +0 -1198
  235. package/src/entities/support.js +0 -1166
  236. package/src/entities/video-conferencing.js +0 -1750
  237. package/src/entities/video.js +0 -950
  238. package/src/entities.js +0 -1663
  239. package/src/index.js +0 -74
  240. package/src/providers/analytics/index.js +0 -17
  241. package/src/providers/analytics/mixpanel.js +0 -255
  242. package/src/providers/calendar/cal-com.js +0 -303
  243. package/src/providers/calendar/google-calendar.js +0 -335
  244. package/src/providers/calendar/index.js +0 -20
  245. package/src/providers/crm/hubspot.js +0 -566
  246. package/src/providers/crm/index.js +0 -17
  247. package/src/providers/development/github.js +0 -472
  248. package/src/providers/development/index.js +0 -17
  249. package/src/providers/ecommerce/index.js +0 -17
  250. package/src/providers/ecommerce/shopify.js +0 -378
  251. package/src/providers/email/index.js +0 -20
  252. package/src/providers/email/resend.js +0 -258
  253. package/src/providers/email/sendgrid.js +0 -161
  254. package/src/providers/finance/index.js +0 -17
  255. package/src/providers/finance/stripe.js +0 -549
  256. package/src/providers/forms/index.js +0 -17
  257. package/src/providers/forms/typeform.js +0 -500
  258. package/src/providers/index.js +0 -123
  259. package/src/providers/knowledge/index.js +0 -17
  260. package/src/providers/knowledge/notion.js +0 -389
  261. package/src/providers/marketing/index.js +0 -17
  262. package/src/providers/marketing/mailchimp.js +0 -443
  263. package/src/providers/media/cloudinary.js +0 -318
  264. package/src/providers/media/index.js +0 -17
  265. package/src/providers/messaging/index.js +0 -20
  266. package/src/providers/messaging/slack.js +0 -393
  267. package/src/providers/messaging/twilio-sms.js +0 -249
  268. package/src/providers/project-management/index.js +0 -17
  269. package/src/providers/project-management/linear.js +0 -575
  270. package/src/providers/registry.js +0 -86
  271. package/src/providers/spreadsheet/google-sheets.js +0 -375
  272. package/src/providers/spreadsheet/index.js +0 -20
  273. package/src/providers/spreadsheet/xlsx.js +0 -423
  274. package/src/providers/storage/index.js +0 -24
  275. package/src/providers/storage/s3.js +0 -419
  276. package/src/providers/support/index.js +0 -17
  277. package/src/providers/support/zendesk.js +0 -373
  278. package/src/providers/tasks/index.js +0 -17
  279. package/src/providers/tasks/todoist.js +0 -286
  280. package/src/providers/types.js +0 -9
  281. package/src/providers/video-conferencing/google-meet.js +0 -286
  282. package/src/providers/video-conferencing/index.js +0 -31
  283. package/src/providers/video-conferencing/jitsi.js +0 -254
  284. package/src/providers/video-conferencing/teams.js +0 -270
  285. package/src/providers/video-conferencing/zoom.js +0 -332
  286. package/src/registry.js +0 -128
  287. package/src/tools/communication.js +0 -184
  288. package/src/tools/data.js +0 -205
  289. package/src/tools/index.js +0 -11
  290. package/src/tools/web.js +0 -137
  291. package/src/types.js +0 -10
  292. package/test/define.test.js +0 -306
  293. package/test/registry.test.js +0 -357
  294. package/test/tools.test.js +0 -363
@@ -86,13 +86,13 @@ export function createGitHubProvider(config) {
86
86
  if (!response.ok) {
87
87
  throw new Error(`GitHub API error: ${response.status} ${response.statusText}`);
88
88
  }
89
- const data = await response.json();
89
+ const data = (await response.json());
90
90
  const repos = data.map((repo) => ({
91
91
  id: String(repo.id),
92
92
  owner: repo.owner.login,
93
93
  name: repo.name,
94
94
  fullName: repo.full_name,
95
- description: repo.description,
95
+ ...(repo.description !== null && { description: repo.description }),
96
96
  private: repo.private,
97
97
  defaultBranch: repo.default_branch,
98
98
  url: repo.html_url,
@@ -109,8 +109,7 @@ export function createGitHubProvider(config) {
109
109
  return {
110
110
  items: repos,
111
111
  hasMore,
112
- nextCursor,
113
- total: undefined,
112
+ ...(nextCursor !== undefined && { nextCursor }),
114
113
  };
115
114
  },
116
115
  async getRepo(owner, repo) {
@@ -126,13 +125,13 @@ export function createGitHubProvider(config) {
126
125
  if (!response.ok) {
127
126
  throw new Error(`GitHub API error: ${response.status} ${response.statusText}`);
128
127
  }
129
- const data = await response.json();
128
+ const data = (await response.json());
130
129
  return {
131
130
  id: String(data.id),
132
131
  owner: data.owner.login,
133
132
  name: data.name,
134
133
  fullName: data.full_name,
135
- description: data.description,
134
+ ...(data.description !== null && { description: data.description }),
136
135
  private: data.private,
137
136
  defaultBranch: data.default_branch,
138
137
  url: data.html_url,
@@ -164,12 +163,12 @@ export function createGitHubProvider(config) {
164
163
  if (!response.ok) {
165
164
  throw new Error(`GitHub API error: ${response.status} ${response.statusText}`);
166
165
  }
167
- const data = await response.json();
166
+ const data = (await response.json());
168
167
  return {
169
168
  id: String(data.id),
170
169
  number: data.number,
171
170
  title: data.title,
172
- body: data.body,
171
+ ...(data.body !== null && { body: data.body }),
173
172
  state: data.state,
174
173
  labels: data.labels.map((l) => l.name),
175
174
  assignees: data.assignees.map((a) => a.login),
@@ -177,7 +176,7 @@ export function createGitHubProvider(config) {
177
176
  url: data.html_url,
178
177
  createdAt: new Date(data.created_at),
179
178
  updatedAt: new Date(data.updated_at),
180
- closedAt: data.closed_at ? new Date(data.closed_at) : undefined,
179
+ ...(data.closed_at !== null && { closedAt: new Date(data.closed_at) }),
181
180
  };
182
181
  },
183
182
  async getIssue(owner, repo, issueNumber) {
@@ -193,12 +192,12 @@ export function createGitHubProvider(config) {
193
192
  if (!response.ok) {
194
193
  throw new Error(`GitHub API error: ${response.status} ${response.statusText}`);
195
194
  }
196
- const data = await response.json();
195
+ const data = (await response.json());
197
196
  return {
198
197
  id: String(data.id),
199
198
  number: data.number,
200
199
  title: data.title,
201
- body: data.body,
200
+ ...(data.body !== null && { body: data.body }),
202
201
  state: data.state,
203
202
  labels: data.labels.map((l) => l.name),
204
203
  assignees: data.assignees.map((a) => a.login),
@@ -206,21 +205,21 @@ export function createGitHubProvider(config) {
206
205
  url: data.html_url,
207
206
  createdAt: new Date(data.created_at),
208
207
  updatedAt: new Date(data.updated_at),
209
- closedAt: data.closed_at ? new Date(data.closed_at) : undefined,
208
+ ...(data.closed_at !== null && { closedAt: new Date(data.closed_at) }),
210
209
  };
211
210
  },
212
211
  async updateIssue(owner, repo, issueNumber, updates) {
213
212
  const body = {};
214
213
  if (updates.title !== undefined)
215
- body.title = updates.title;
214
+ body['title'] = updates.title;
216
215
  if (updates.body !== undefined)
217
- body.body = updates.body;
216
+ body['body'] = updates.body;
218
217
  if (updates.labels !== undefined)
219
- body.labels = updates.labels;
218
+ body['labels'] = updates.labels;
220
219
  if (updates.assignees !== undefined)
221
- body.assignees = updates.assignees;
220
+ body['assignees'] = updates.assignees;
222
221
  if (updates.milestone !== undefined)
223
- body.milestone = updates.milestone;
222
+ body['milestone'] = updates.milestone;
224
223
  const response = await fetch(`${baseUrl}/repos/${owner}/${repo}/issues/${issueNumber}`, {
225
224
  method: 'PATCH',
226
225
  headers: {
@@ -233,12 +232,12 @@ export function createGitHubProvider(config) {
233
232
  if (!response.ok) {
234
233
  throw new Error(`GitHub API error: ${response.status} ${response.statusText}`);
235
234
  }
236
- const data = await response.json();
235
+ const data = (await response.json());
237
236
  return {
238
237
  id: String(data.id),
239
238
  number: data.number,
240
239
  title: data.title,
241
- body: data.body,
240
+ ...(data.body !== null && { body: data.body }),
242
241
  state: data.state,
243
242
  labels: data.labels.map((l) => l.name),
244
243
  assignees: data.assignees.map((a) => a.login),
@@ -246,7 +245,7 @@ export function createGitHubProvider(config) {
246
245
  url: data.html_url,
247
246
  createdAt: new Date(data.created_at),
248
247
  updatedAt: new Date(data.updated_at),
249
- closedAt: data.closed_at ? new Date(data.closed_at) : undefined,
248
+ ...(data.closed_at !== null && { closedAt: new Date(data.closed_at) }),
250
249
  };
251
250
  },
252
251
  async listIssues(owner, repo, options) {
@@ -278,14 +277,14 @@ export function createGitHubProvider(config) {
278
277
  if (!response.ok) {
279
278
  throw new Error(`GitHub API error: ${response.status} ${response.statusText}`);
280
279
  }
281
- const data = await response.json();
280
+ const data = (await response.json());
282
281
  const issues = data
283
282
  .filter((item) => !item.pull_request) // Filter out PRs
284
283
  .map((issue) => ({
285
284
  id: String(issue.id),
286
285
  number: issue.number,
287
286
  title: issue.title,
288
- body: issue.body,
287
+ ...(issue.body !== null && { body: issue.body }),
289
288
  state: issue.state,
290
289
  labels: issue.labels.map((l) => l.name),
291
290
  assignees: issue.assignees.map((a) => a.login),
@@ -293,7 +292,7 @@ export function createGitHubProvider(config) {
293
292
  url: issue.html_url,
294
293
  createdAt: new Date(issue.created_at),
295
294
  updatedAt: new Date(issue.updated_at),
296
- closedAt: issue.closed_at ? new Date(issue.closed_at) : undefined,
295
+ ...(issue.closed_at !== null && { closedAt: new Date(issue.closed_at) }),
297
296
  }));
298
297
  const linkHeader = response.headers.get('Link');
299
298
  const hasMore = linkHeader ? linkHeader.includes('rel="next"') : false;
@@ -301,8 +300,7 @@ export function createGitHubProvider(config) {
301
300
  return {
302
301
  items: issues,
303
302
  hasMore,
304
- nextCursor,
305
- total: undefined,
303
+ ...(nextCursor !== undefined && { nextCursor }),
306
304
  };
307
305
  },
308
306
  async createPullRequest(owner, repo, pr) {
@@ -325,23 +323,23 @@ export function createGitHubProvider(config) {
325
323
  if (!response.ok) {
326
324
  throw new Error(`GitHub API error: ${response.status} ${response.statusText}`);
327
325
  }
328
- const data = await response.json();
326
+ const data = (await response.json());
329
327
  return {
330
328
  id: String(data.id),
331
329
  number: data.number,
332
330
  title: data.title,
333
- body: data.body,
331
+ ...(data.body !== null && { body: data.body }),
334
332
  state: data.merged_at ? 'merged' : data.state,
335
333
  head: data.head.ref,
336
334
  base: data.base.ref,
337
335
  authorId: data.user.login,
338
336
  draft: data.draft,
339
- mergeable: data.mergeable,
337
+ ...(data.mergeable !== null && { mergeable: data.mergeable }),
340
338
  url: data.html_url,
341
339
  createdAt: new Date(data.created_at),
342
340
  updatedAt: new Date(data.updated_at),
343
- mergedAt: data.merged_at ? new Date(data.merged_at) : undefined,
344
- closedAt: data.closed_at ? new Date(data.closed_at) : undefined,
341
+ ...(data.merged_at !== null && { mergedAt: new Date(data.merged_at) }),
342
+ ...(data.closed_at !== null && { closedAt: new Date(data.closed_at) }),
345
343
  };
346
344
  },
347
345
  async getPullRequest(owner, repo, prNumber) {
@@ -357,23 +355,23 @@ export function createGitHubProvider(config) {
357
355
  if (!response.ok) {
358
356
  throw new Error(`GitHub API error: ${response.status} ${response.statusText}`);
359
357
  }
360
- const data = await response.json();
358
+ const data = (await response.json());
361
359
  return {
362
360
  id: String(data.id),
363
361
  number: data.number,
364
362
  title: data.title,
365
- body: data.body,
363
+ ...(data.body !== null && { body: data.body }),
366
364
  state: data.merged_at ? 'merged' : data.state,
367
365
  head: data.head.ref,
368
366
  base: data.base.ref,
369
367
  authorId: data.user.login,
370
368
  draft: data.draft,
371
- mergeable: data.mergeable,
369
+ ...(data.mergeable !== null && { mergeable: data.mergeable }),
372
370
  url: data.html_url,
373
371
  createdAt: new Date(data.created_at),
374
372
  updatedAt: new Date(data.updated_at),
375
- mergedAt: data.merged_at ? new Date(data.merged_at) : undefined,
376
- closedAt: data.closed_at ? new Date(data.closed_at) : undefined,
373
+ ...(data.merged_at !== null && { mergedAt: new Date(data.merged_at) }),
374
+ ...(data.closed_at !== null && { closedAt: new Date(data.closed_at) }),
377
375
  };
378
376
  },
379
377
  async listPullRequests(owner, repo, options) {
@@ -402,23 +400,23 @@ export function createGitHubProvider(config) {
402
400
  if (!response.ok) {
403
401
  throw new Error(`GitHub API error: ${response.status} ${response.statusText}`);
404
402
  }
405
- const data = await response.json();
403
+ const data = (await response.json());
406
404
  const prs = data.map((pr) => ({
407
405
  id: String(pr.id),
408
406
  number: pr.number,
409
407
  title: pr.title,
410
- body: pr.body,
408
+ ...(pr.body !== null && { body: pr.body }),
411
409
  state: pr.merged_at ? 'merged' : pr.state,
412
410
  head: pr.head.ref,
413
411
  base: pr.base.ref,
414
412
  authorId: pr.user.login,
415
413
  draft: pr.draft,
416
- mergeable: pr.mergeable,
414
+ ...(pr.mergeable !== null && { mergeable: pr.mergeable }),
417
415
  url: pr.html_url,
418
416
  createdAt: new Date(pr.created_at),
419
417
  updatedAt: new Date(pr.updated_at),
420
- mergedAt: pr.merged_at ? new Date(pr.merged_at) : undefined,
421
- closedAt: pr.closed_at ? new Date(pr.closed_at) : undefined,
418
+ ...(pr.merged_at !== null && { mergedAt: new Date(pr.merged_at) }),
419
+ ...(pr.closed_at !== null && { closedAt: new Date(pr.closed_at) }),
422
420
  }));
423
421
  const linkHeader = response.headers.get('Link');
424
422
  const hasMore = linkHeader ? linkHeader.includes('rel="next"') : false;
@@ -426,8 +424,7 @@ export function createGitHubProvider(config) {
426
424
  return {
427
425
  items: prs,
428
426
  hasMore,
429
- nextCursor,
430
- total: undefined,
427
+ ...(nextCursor !== undefined && { nextCursor }),
431
428
  };
432
429
  },
433
430
  async mergePullRequest(owner, repo, prNumber) {
@@ -455,7 +452,7 @@ export function createGitHubProvider(config) {
455
452
  if (!response.ok) {
456
453
  throw new Error(`GitHub API error: ${response.status} ${response.statusText}`);
457
454
  }
458
- const data = await response.json();
455
+ const data = (await response.json());
459
456
  return {
460
457
  id: String(data.id),
461
458
  body: data.body,
@@ -1 +1 @@
1
- {"version":3,"file":"github.js","sourceRoot":"","sources":["../../../src/providers/development/github.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"github.js","sourceRoot":"","sources":["../../../src/providers/development/github.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"shopify.d.ts","sourceRoot":"","sources":["../../../src/providers/ecommerce/shopify.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EAEd,YAAY,EASb,MAAM,aAAa,CAAA;AAKpB;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,YASzB,CAAA;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,GAAG,iBAAiB,CAuS/E;AA2GD;;GAEG;AACH,eAAO,MAAM,eAAe;;;;CAE3B,CAAA"}
1
+ {"version":3,"file":"shopify.d.ts","sourceRoot":"","sources":["../../../src/providers/ecommerce/shopify.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EAEd,YAAY,EASb,MAAM,aAAa,CAAA;AAqHpB;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,YASzB,CAAA;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,GAAG,iBAAiB,CA8U/E;AAqHD;;GAEG;AACH,eAAO,MAAM,eAAe;;;;CAE3B,CAAA"}
@@ -37,19 +37,24 @@ export function createShopifyProvider(config) {
37
37
  const response = await fetch(`${baseUrl}${endpoint}`, {
38
38
  method,
39
39
  headers: getHeaders(),
40
- body: body ? JSON.stringify(body) : undefined,
40
+ ...(body !== undefined && { body: JSON.stringify(body) }),
41
41
  });
42
42
  if (!response.ok) {
43
- const errorData = await response.json().catch(() => ({}));
44
- throw new Error(`Shopify API error: ${response.status} - ${errorData?.errors || response.statusText}`);
43
+ const errorData = (await response.json().catch(() => ({})));
44
+ const errorMessage = typeof errorData.errors === 'string'
45
+ ? errorData.errors
46
+ : errorData.errors
47
+ ? JSON.stringify(errorData.errors)
48
+ : response.statusText;
49
+ throw new Error(`Shopify API error: ${response.status} - ${errorMessage}`);
45
50
  }
46
51
  return response.json();
47
52
  }
48
53
  return {
49
54
  info: shopifyInfo,
50
55
  async initialize(cfg) {
51
- shopDomain = cfg.shopDomain;
52
- accessToken = cfg.accessToken;
56
+ shopDomain = cfg['shopDomain'];
57
+ accessToken = cfg['accessToken'];
53
58
  if (!shopDomain) {
54
59
  throw new Error('Shopify shop domain is required');
55
60
  }
@@ -88,18 +93,19 @@ export function createShopifyProvider(config) {
88
93
  async createProduct(product) {
89
94
  const shopifyProduct = {
90
95
  title: product.title,
91
- body_html: product.description,
96
+ ...(product.description !== undefined && { body_html: product.description }),
92
97
  vendor: 'Default',
93
98
  product_type: '',
94
99
  tags: product.tags?.join(', ') || '',
95
100
  status: product.status || 'active',
101
+ variants: [],
96
102
  };
97
103
  // Add variants
98
104
  if (product.variants && product.variants.length > 0) {
99
105
  shopifyProduct.variants = product.variants.map((v) => ({
100
106
  title: v.title,
101
107
  price: v.price.toString(),
102
- sku: v.sku,
108
+ ...(v.sku !== undefined && { sku: v.sku }),
103
109
  inventory_quantity: v.inventory || 0,
104
110
  }));
105
111
  }
@@ -109,7 +115,7 @@ export function createShopifyProvider(config) {
109
115
  {
110
116
  title: 'Default Title',
111
117
  price: product.price.toString(),
112
- sku: product.sku,
118
+ ...(product.sku !== undefined && { sku: product.sku }),
113
119
  inventory_quantity: product.inventory || 0,
114
120
  },
115
121
  ];
@@ -128,7 +134,7 @@ export function createShopifyProvider(config) {
128
134
  const response = await makeRequest(`/products/${productId}.json`, 'GET');
129
135
  return mapShopifyProduct(response.product);
130
136
  }
131
- catch (error) {
137
+ catch {
132
138
  return null;
133
139
  }
134
140
  },
@@ -156,7 +162,7 @@ export function createShopifyProvider(config) {
156
162
  await makeRequest(`/products/${productId}.json`, 'DELETE');
157
163
  return true;
158
164
  }
159
- catch (error) {
165
+ catch {
160
166
  return false;
161
167
  }
162
168
  },
@@ -176,7 +182,6 @@ export function createShopifyProvider(config) {
176
182
  return {
177
183
  items: response.products.map(mapShopifyProduct),
178
184
  hasMore: response.products.length === (options?.limit || 50),
179
- total: undefined, // Shopify doesn't provide total count in products endpoint
180
185
  };
181
186
  },
182
187
  async getOrder(orderId) {
@@ -184,7 +189,7 @@ export function createShopifyProvider(config) {
184
189
  const response = await makeRequest(`/orders/${orderId}.json`, 'GET');
185
190
  return mapShopifyOrder(response.order);
186
191
  }
187
- catch (error) {
192
+ catch {
188
193
  return null;
189
194
  }
190
195
  },
@@ -212,7 +217,6 @@ export function createShopifyProvider(config) {
212
217
  return {
213
218
  items: response.orders.map(mapShopifyOrder),
214
219
  hasMore: response.orders.length === (options?.limit || 50),
215
- total: undefined,
216
220
  };
217
221
  },
218
222
  async updateOrderStatus(orderId, status) {
@@ -229,7 +233,7 @@ export function createShopifyProvider(config) {
229
233
  const response = await makeRequest(`/customers/${customerId}.json`, 'GET');
230
234
  return mapShopifyCustomer(response.customer);
231
235
  }
232
- catch (error) {
236
+ catch {
233
237
  return null;
234
238
  }
235
239
  },
@@ -245,10 +249,9 @@ export function createShopifyProvider(config) {
245
249
  return {
246
250
  items: response.customers.map(mapShopifyCustomer),
247
251
  hasMore: response.customers.length === (options?.limit || 50),
248
- total: undefined,
249
252
  };
250
253
  },
251
- async updateInventory(productId, variantId, quantity) {
254
+ async updateInventory(_productId, variantId, quantity) {
252
255
  try {
253
256
  // First get the inventory item ID from the variant
254
257
  const variantResponse = await makeRequest(`/variants/${variantId}.json`, 'GET');
@@ -258,7 +261,11 @@ export function createShopifyProvider(config) {
258
261
  if (levelsResponse.inventory_levels.length === 0) {
259
262
  throw new Error('No inventory levels found for this variant');
260
263
  }
261
- const locationId = levelsResponse.inventory_levels[0].location_id;
264
+ const firstLevel = levelsResponse.inventory_levels[0];
265
+ if (!firstLevel) {
266
+ throw new Error('No inventory levels found for this variant');
267
+ }
268
+ const locationId = firstLevel.location_id;
262
269
  // Set the inventory level
263
270
  await makeRequest('/inventory_levels/set.json', 'POST', {
264
271
  location_id: locationId,
@@ -267,7 +274,7 @@ export function createShopifyProvider(config) {
267
274
  });
268
275
  return true;
269
276
  }
270
- catch (error) {
277
+ catch {
271
278
  return false;
272
279
  }
273
280
  },
@@ -281,24 +288,26 @@ function mapShopifyProduct(product) {
281
288
  return {
282
289
  id: product.id.toString(),
283
290
  title: product.title,
284
- description: product.body_html,
291
+ ...(product.body_html !== undefined && { description: product.body_html }),
285
292
  price: parseFloat(firstVariant?.price || '0'),
286
- compareAtPrice: firstVariant?.compare_at_price
287
- ? parseFloat(firstVariant.compare_at_price)
288
- : undefined,
289
- sku: firstVariant?.sku,
290
- inventory: firstVariant?.inventory_quantity,
293
+ ...(firstVariant?.compare_at_price && {
294
+ compareAtPrice: parseFloat(firstVariant.compare_at_price),
295
+ }),
296
+ ...(firstVariant?.sku !== undefined && { sku: firstVariant.sku }),
297
+ ...(firstVariant?.inventory_quantity !== undefined && {
298
+ inventory: firstVariant.inventory_quantity,
299
+ }),
291
300
  images: product.images?.map((img) => img.src) || [],
292
301
  variants: product.variants?.map((v) => ({
293
302
  id: v.id.toString(),
294
303
  title: v.title,
295
304
  price: parseFloat(v.price),
296
- sku: v.sku,
305
+ ...(v.sku !== undefined && { sku: v.sku }),
297
306
  inventory: v.inventory_quantity,
298
307
  })) || [],
299
308
  tags: product.tags ? product.tags.split(', ') : [],
300
- status: product.status,
301
- url: product.admin_graphql_api_id,
309
+ status: product.status || 'active',
310
+ ...(product.admin_graphql_api_id !== undefined && { url: product.admin_graphql_api_id }),
302
311
  createdAt: new Date(product.created_at),
303
312
  updatedAt: new Date(product.updated_at),
304
313
  };
@@ -309,15 +318,15 @@ function mapShopifyProduct(product) {
309
318
  function mapShopifyOrder(order) {
310
319
  return {
311
320
  id: order.id.toString(),
312
- orderNumber: order.name || order.order_number?.toString(),
321
+ orderNumber: order.name || order.order_number?.toString() || '',
313
322
  status: order.cancelled_at ? 'cancelled' : order.closed_at ? 'closed' : 'open',
314
- financialStatus: order.financial_status,
323
+ financialStatus: order.financial_status || 'pending',
315
324
  fulfillmentStatus: order.fulfillment_status || 'unfulfilled',
316
- customerId: order.customer?.id?.toString(),
325
+ ...(order.customer?.id !== undefined && { customerId: order.customer.id.toString() }),
317
326
  email: order.email || order.customer?.email || '',
318
327
  lineItems: order.line_items?.map((item) => ({
319
328
  productId: item.product_id?.toString() || '',
320
- variantId: item.variant_id?.toString(),
329
+ ...(item.variant_id !== undefined && { variantId: item.variant_id.toString() }),
321
330
  title: item.title,
322
331
  quantity: item.quantity,
323
332
  price: parseFloat(item.price),
@@ -326,33 +335,41 @@ function mapShopifyOrder(order) {
326
335
  tax: parseFloat(order.total_tax || '0'),
327
336
  shipping: parseFloat(order.total_shipping_price_set?.shop_money?.amount || '0'),
328
337
  total: parseFloat(order.total_price || '0'),
329
- currency: order.currency,
330
- shippingAddress: order.shipping_address
331
- ? {
332
- firstName: order.shipping_address.first_name,
333
- lastName: order.shipping_address.last_name,
334
- address1: order.shipping_address.address1,
335
- address2: order.shipping_address.address2,
336
- city: order.shipping_address.city,
337
- province: order.shipping_address.province,
338
- postalCode: order.shipping_address.zip,
339
- country: order.shipping_address.country,
340
- phone: order.shipping_address.phone,
341
- }
342
- : undefined,
343
- billingAddress: order.billing_address
344
- ? {
345
- firstName: order.billing_address.first_name,
346
- lastName: order.billing_address.last_name,
347
- address1: order.billing_address.address1,
348
- address2: order.billing_address.address2,
349
- city: order.billing_address.city,
350
- province: order.billing_address.province,
351
- postalCode: order.billing_address.zip,
352
- country: order.billing_address.country,
353
- phone: order.billing_address.phone,
354
- }
355
- : undefined,
338
+ currency: order.currency || 'USD',
339
+ ...(order.shipping_address && {
340
+ shippingAddress: {
341
+ firstName: order.shipping_address.first_name || '',
342
+ lastName: order.shipping_address.last_name || '',
343
+ address1: order.shipping_address.address1 || '',
344
+ ...(order.shipping_address.address2 !== undefined && {
345
+ address2: order.shipping_address.address2,
346
+ }),
347
+ city: order.shipping_address.city || '',
348
+ ...(order.shipping_address.province !== undefined && {
349
+ province: order.shipping_address.province,
350
+ }),
351
+ postalCode: order.shipping_address.zip || '',
352
+ country: order.shipping_address.country || '',
353
+ ...(order.shipping_address.phone !== undefined && { phone: order.shipping_address.phone }),
354
+ },
355
+ }),
356
+ ...(order.billing_address && {
357
+ billingAddress: {
358
+ firstName: order.billing_address.first_name || '',
359
+ lastName: order.billing_address.last_name || '',
360
+ address1: order.billing_address.address1 || '',
361
+ ...(order.billing_address.address2 !== undefined && {
362
+ address2: order.billing_address.address2,
363
+ }),
364
+ city: order.billing_address.city || '',
365
+ ...(order.billing_address.province !== undefined && {
366
+ province: order.billing_address.province,
367
+ }),
368
+ postalCode: order.billing_address.zip || '',
369
+ country: order.billing_address.country || '',
370
+ ...(order.billing_address.phone !== undefined && { phone: order.billing_address.phone }),
371
+ },
372
+ }),
356
373
  createdAt: new Date(order.created_at),
357
374
  updatedAt: new Date(order.updated_at),
358
375
  };
@@ -363,10 +380,10 @@ function mapShopifyOrder(order) {
363
380
  function mapShopifyCustomer(customer) {
364
381
  return {
365
382
  id: customer.id.toString(),
366
- email: customer.email,
367
- firstName: customer.first_name,
368
- lastName: customer.last_name,
369
- phone: customer.phone,
383
+ email: customer.email || '',
384
+ ...(customer.first_name !== undefined && { firstName: customer.first_name }),
385
+ ...(customer.last_name !== undefined && { lastName: customer.last_name }),
386
+ ...(customer.phone !== undefined && { phone: customer.phone }),
370
387
  ordersCount: customer.orders_count || 0,
371
388
  totalSpent: parseFloat(customer.total_spent || '0'),
372
389
  createdAt: new Date(customer.created_at),