digital-tools 2.1.1 → 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 (293) hide show
  1. package/CHANGELOG.md +17 -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 +22 -20
  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 +21 -4
  132. package/src/client.ts +136 -0
  133. package/src/define.ts +31 -37
  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 -5
  199. package/dist/providers/voice/vapi.d.ts +0 -27
  200. package/dist/providers/voice/vapi.d.ts.map +0 -1
  201. package/dist/providers/voice/vapi.js +0 -440
  202. package/dist/providers/voice/vapi.js.map +0 -1
  203. package/src/define.js +0 -267
  204. package/src/entities/advertising.js +0 -999
  205. package/src/entities/ai.js +0 -756
  206. package/src/entities/analytics.js +0 -1588
  207. package/src/entities/automation.js +0 -601
  208. package/src/entities/communication.js +0 -1150
  209. package/src/entities/crm.js +0 -1386
  210. package/src/entities/design.js +0 -546
  211. package/src/entities/development.js +0 -2212
  212. package/src/entities/document.js +0 -874
  213. package/src/entities/ecommerce.js +0 -1429
  214. package/src/entities/experiment.js +0 -1039
  215. package/src/entities/finance.js +0 -3478
  216. package/src/entities/forms.js +0 -1892
  217. package/src/entities/hr.js +0 -661
  218. package/src/entities/identity.js +0 -997
  219. package/src/entities/index.js +0 -282
  220. package/src/entities/infrastructure.js +0 -1153
  221. package/src/entities/knowledge.js +0 -1438
  222. package/src/entities/marketing.js +0 -1610
  223. package/src/entities/media.js +0 -1634
  224. package/src/entities/notification.js +0 -1199
  225. package/src/entities/presentation.js +0 -1274
  226. package/src/entities/productivity.js +0 -1317
  227. package/src/entities/project-management.js +0 -1136
  228. package/src/entities/recruiting.js +0 -736
  229. package/src/entities/shipping.js +0 -509
  230. package/src/entities/signature.js +0 -1102
  231. package/src/entities/site.js +0 -222
  232. package/src/entities/spreadsheet.js +0 -1341
  233. package/src/entities/storage.js +0 -1198
  234. package/src/entities/support.js +0 -1166
  235. package/src/entities/video-conferencing.js +0 -1750
  236. package/src/entities/video.js +0 -950
  237. package/src/entities.js +0 -1663
  238. package/src/index.js +0 -74
  239. package/src/providers/analytics/index.js +0 -17
  240. package/src/providers/analytics/mixpanel.js +0 -255
  241. package/src/providers/calendar/cal-com.js +0 -303
  242. package/src/providers/calendar/google-calendar.js +0 -335
  243. package/src/providers/calendar/index.js +0 -20
  244. package/src/providers/crm/hubspot.js +0 -566
  245. package/src/providers/crm/index.js +0 -17
  246. package/src/providers/development/github.js +0 -472
  247. package/src/providers/development/index.js +0 -17
  248. package/src/providers/ecommerce/index.js +0 -17
  249. package/src/providers/ecommerce/shopify.js +0 -378
  250. package/src/providers/email/index.js +0 -20
  251. package/src/providers/email/resend.js +0 -258
  252. package/src/providers/email/sendgrid.js +0 -161
  253. package/src/providers/finance/index.js +0 -17
  254. package/src/providers/finance/stripe.js +0 -549
  255. package/src/providers/forms/index.js +0 -17
  256. package/src/providers/forms/typeform.js +0 -500
  257. package/src/providers/index.js +0 -123
  258. package/src/providers/knowledge/index.js +0 -17
  259. package/src/providers/knowledge/notion.js +0 -389
  260. package/src/providers/marketing/index.js +0 -17
  261. package/src/providers/marketing/mailchimp.js +0 -443
  262. package/src/providers/media/cloudinary.js +0 -318
  263. package/src/providers/media/index.js +0 -17
  264. package/src/providers/messaging/index.js +0 -20
  265. package/src/providers/messaging/slack.js +0 -393
  266. package/src/providers/messaging/twilio-sms.js +0 -249
  267. package/src/providers/project-management/index.js +0 -17
  268. package/src/providers/project-management/linear.js +0 -575
  269. package/src/providers/registry.js +0 -86
  270. package/src/providers/spreadsheet/google-sheets.js +0 -375
  271. package/src/providers/spreadsheet/index.js +0 -20
  272. package/src/providers/spreadsheet/xlsx.js +0 -423
  273. package/src/providers/storage/index.js +0 -24
  274. package/src/providers/storage/s3.js +0 -419
  275. package/src/providers/support/index.js +0 -17
  276. package/src/providers/support/zendesk.js +0 -373
  277. package/src/providers/tasks/index.js +0 -17
  278. package/src/providers/tasks/todoist.js +0 -286
  279. package/src/providers/types.js +0 -9
  280. package/src/providers/video-conferencing/google-meet.js +0 -286
  281. package/src/providers/video-conferencing/index.js +0 -31
  282. package/src/providers/video-conferencing/jitsi.js +0 -254
  283. package/src/providers/video-conferencing/teams.js +0 -270
  284. package/src/providers/video-conferencing/zoom.js +0 -332
  285. package/src/registry.js +0 -128
  286. package/src/tools/communication.js +0 -184
  287. package/src/tools/data.js +0 -205
  288. package/src/tools/index.js +0 -11
  289. package/src/tools/web.js +0 -137
  290. package/src/types.js +0 -10
  291. package/test/define.test.js +0 -306
  292. package/test/registry.test.js +0 -357
  293. 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),