sendblue 1.1.8 → 2.0.1

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 (407) hide show
  1. package/CHANGELOG.md +83 -0
  2. package/LICENSE +201 -21
  3. package/README.md +349 -38
  4. package/api-promise.d.mts +2 -0
  5. package/api-promise.d.mts.map +1 -0
  6. package/api-promise.d.ts +2 -0
  7. package/api-promise.d.ts.map +1 -0
  8. package/api-promise.js +6 -0
  9. package/api-promise.js.map +1 -0
  10. package/api-promise.mjs +2 -0
  11. package/api-promise.mjs.map +1 -0
  12. package/client.d.mts +203 -0
  13. package/client.d.mts.map +1 -0
  14. package/client.d.ts +203 -0
  15. package/client.d.ts.map +1 -0
  16. package/client.js +489 -0
  17. package/client.js.map +1 -0
  18. package/client.mjs +485 -0
  19. package/client.mjs.map +1 -0
  20. package/core/api-promise.d.mts +46 -0
  21. package/core/api-promise.d.mts.map +1 -0
  22. package/core/api-promise.d.ts +46 -0
  23. package/core/api-promise.d.ts.map +1 -0
  24. package/core/api-promise.js +74 -0
  25. package/core/api-promise.js.map +1 -0
  26. package/core/api-promise.mjs +70 -0
  27. package/core/api-promise.mjs.map +1 -0
  28. package/core/error.d.mts +46 -0
  29. package/core/error.d.mts.map +1 -0
  30. package/core/error.d.ts +46 -0
  31. package/core/error.d.ts.map +1 -0
  32. package/core/error.js +113 -0
  33. package/core/error.js.map +1 -0
  34. package/core/error.mjs +97 -0
  35. package/core/error.mjs.map +1 -0
  36. package/core/resource.d.mts +6 -0
  37. package/core/resource.d.mts.map +1 -0
  38. package/core/resource.d.ts +6 -0
  39. package/core/resource.d.ts.map +1 -0
  40. package/core/resource.js +11 -0
  41. package/core/resource.js.map +1 -0
  42. package/core/resource.mjs +7 -0
  43. package/core/resource.mjs.map +1 -0
  44. package/core/uploads.d.mts +3 -0
  45. package/core/uploads.d.mts.map +1 -0
  46. package/core/uploads.d.ts +3 -0
  47. package/core/uploads.d.ts.map +1 -0
  48. package/core/uploads.js +6 -0
  49. package/core/uploads.js.map +1 -0
  50. package/core/uploads.mjs +2 -0
  51. package/core/uploads.mjs.map +1 -0
  52. package/error.d.mts +2 -0
  53. package/error.d.mts.map +1 -0
  54. package/error.d.ts +2 -0
  55. package/error.d.ts.map +1 -0
  56. package/error.js +6 -0
  57. package/error.js.map +1 -0
  58. package/error.mjs +2 -0
  59. package/error.mjs.map +1 -0
  60. package/index.d.mts +6 -0
  61. package/index.d.mts.map +1 -0
  62. package/index.d.ts +6 -78
  63. package/index.d.ts.map +1 -0
  64. package/index.js +28 -104
  65. package/index.js.map +1 -0
  66. package/index.mjs +7 -0
  67. package/index.mjs.map +1 -0
  68. package/internal/builtin-types.d.mts +73 -0
  69. package/internal/builtin-types.d.mts.map +1 -0
  70. package/internal/builtin-types.d.ts +73 -0
  71. package/internal/builtin-types.d.ts.map +1 -0
  72. package/internal/builtin-types.js +4 -0
  73. package/internal/builtin-types.js.map +1 -0
  74. package/internal/builtin-types.mjs +3 -0
  75. package/internal/builtin-types.mjs.map +1 -0
  76. package/internal/detect-platform.d.mts +15 -0
  77. package/internal/detect-platform.d.mts.map +1 -0
  78. package/internal/detect-platform.d.ts +15 -0
  79. package/internal/detect-platform.d.ts.map +1 -0
  80. package/internal/detect-platform.js +162 -0
  81. package/internal/detect-platform.js.map +1 -0
  82. package/internal/detect-platform.mjs +157 -0
  83. package/internal/detect-platform.mjs.map +1 -0
  84. package/internal/errors.d.mts +3 -0
  85. package/internal/errors.d.mts.map +1 -0
  86. package/internal/errors.d.ts +3 -0
  87. package/internal/errors.d.ts.map +1 -0
  88. package/internal/errors.js +41 -0
  89. package/internal/errors.js.map +1 -0
  90. package/internal/errors.mjs +36 -0
  91. package/internal/errors.mjs.map +1 -0
  92. package/internal/headers.d.mts +20 -0
  93. package/internal/headers.d.mts.map +1 -0
  94. package/internal/headers.d.ts +20 -0
  95. package/internal/headers.d.ts.map +1 -0
  96. package/internal/headers.js +79 -0
  97. package/internal/headers.js.map +1 -0
  98. package/internal/headers.mjs +74 -0
  99. package/internal/headers.mjs.map +1 -0
  100. package/internal/parse.d.mts +12 -0
  101. package/internal/parse.d.mts.map +1 -0
  102. package/internal/parse.d.ts +12 -0
  103. package/internal/parse.d.ts.map +1 -0
  104. package/internal/parse.js +35 -0
  105. package/internal/parse.js.map +1 -0
  106. package/internal/parse.mjs +32 -0
  107. package/internal/parse.mjs.map +1 -0
  108. package/internal/request-options.d.mts +75 -0
  109. package/internal/request-options.d.mts.map +1 -0
  110. package/internal/request-options.d.ts +75 -0
  111. package/internal/request-options.d.ts.map +1 -0
  112. package/internal/request-options.js +14 -0
  113. package/internal/request-options.js.map +1 -0
  114. package/internal/request-options.mjs +10 -0
  115. package/internal/request-options.mjs.map +1 -0
  116. package/internal/shim-types.d.mts +17 -0
  117. package/internal/shim-types.d.mts.map +1 -0
  118. package/internal/shim-types.d.ts +17 -0
  119. package/internal/shim-types.d.ts.map +1 -0
  120. package/internal/shim-types.js +4 -0
  121. package/internal/shim-types.js.map +1 -0
  122. package/internal/shim-types.mjs +3 -0
  123. package/internal/shim-types.mjs.map +1 -0
  124. package/internal/shims.d.mts +20 -0
  125. package/internal/shims.d.mts.map +1 -0
  126. package/internal/shims.d.ts +20 -0
  127. package/internal/shims.d.ts.map +1 -0
  128. package/internal/shims.js +92 -0
  129. package/internal/shims.js.map +1 -0
  130. package/internal/shims.mjs +85 -0
  131. package/internal/shims.mjs.map +1 -0
  132. package/internal/to-file.d.mts +45 -0
  133. package/internal/to-file.d.mts.map +1 -0
  134. package/internal/to-file.d.ts +45 -0
  135. package/internal/to-file.d.ts.map +1 -0
  136. package/internal/to-file.js +91 -0
  137. package/internal/to-file.js.map +1 -0
  138. package/internal/to-file.mjs +88 -0
  139. package/internal/to-file.mjs.map +1 -0
  140. package/internal/tslib.js +81 -0
  141. package/internal/tslib.mjs +17 -0
  142. package/internal/types.d.mts +69 -0
  143. package/internal/types.d.mts.map +1 -0
  144. package/internal/types.d.ts +69 -0
  145. package/internal/types.d.ts.map +1 -0
  146. package/internal/types.js +4 -0
  147. package/internal/types.js.map +1 -0
  148. package/internal/types.mjs +3 -0
  149. package/internal/types.mjs.map +1 -0
  150. package/internal/uploads.d.mts +42 -0
  151. package/internal/uploads.d.mts.map +1 -0
  152. package/internal/uploads.d.ts +42 -0
  153. package/internal/uploads.d.ts.map +1 -0
  154. package/internal/uploads.js +141 -0
  155. package/internal/uploads.js.map +1 -0
  156. package/internal/uploads.mjs +131 -0
  157. package/internal/uploads.mjs.map +1 -0
  158. package/internal/utils/base64.d.mts +3 -0
  159. package/internal/utils/base64.d.mts.map +1 -0
  160. package/internal/utils/base64.d.ts +3 -0
  161. package/internal/utils/base64.d.ts.map +1 -0
  162. package/internal/utils/base64.js +38 -0
  163. package/internal/utils/base64.js.map +1 -0
  164. package/internal/utils/base64.mjs +33 -0
  165. package/internal/utils/base64.mjs.map +1 -0
  166. package/internal/utils/bytes.d.mts +4 -0
  167. package/internal/utils/bytes.d.mts.map +1 -0
  168. package/internal/utils/bytes.d.ts +4 -0
  169. package/internal/utils/bytes.d.ts.map +1 -0
  170. package/internal/utils/bytes.js +31 -0
  171. package/internal/utils/bytes.js.map +1 -0
  172. package/internal/utils/bytes.mjs +26 -0
  173. package/internal/utils/bytes.mjs.map +1 -0
  174. package/internal/utils/env.d.mts +9 -0
  175. package/internal/utils/env.d.mts.map +1 -0
  176. package/internal/utils/env.d.ts +9 -0
  177. package/internal/utils/env.d.ts.map +1 -0
  178. package/internal/utils/env.js +22 -0
  179. package/internal/utils/env.js.map +1 -0
  180. package/internal/utils/env.mjs +18 -0
  181. package/internal/utils/env.mjs.map +1 -0
  182. package/internal/utils/log.d.mts +37 -0
  183. package/internal/utils/log.d.mts.map +1 -0
  184. package/internal/utils/log.d.ts +37 -0
  185. package/internal/utils/log.d.ts.map +1 -0
  186. package/internal/utils/log.js +87 -0
  187. package/internal/utils/log.js.map +1 -0
  188. package/internal/utils/log.mjs +81 -0
  189. package/internal/utils/log.mjs.map +1 -0
  190. package/internal/utils/path.d.mts +15 -0
  191. package/internal/utils/path.d.mts.map +1 -0
  192. package/internal/utils/path.d.ts +15 -0
  193. package/internal/utils/path.d.ts.map +1 -0
  194. package/internal/utils/path.js +79 -0
  195. package/internal/utils/path.js.map +1 -0
  196. package/internal/utils/path.mjs +74 -0
  197. package/internal/utils/path.mjs.map +1 -0
  198. package/internal/utils/sleep.d.mts +2 -0
  199. package/internal/utils/sleep.d.mts.map +1 -0
  200. package/internal/utils/sleep.d.ts +2 -0
  201. package/internal/utils/sleep.d.ts.map +1 -0
  202. package/internal/utils/sleep.js +7 -0
  203. package/internal/utils/sleep.js.map +1 -0
  204. package/internal/utils/sleep.mjs +3 -0
  205. package/internal/utils/sleep.mjs.map +1 -0
  206. package/internal/utils/uuid.d.mts +5 -0
  207. package/internal/utils/uuid.d.mts.map +1 -0
  208. package/internal/utils/uuid.d.ts +5 -0
  209. package/internal/utils/uuid.d.ts.map +1 -0
  210. package/internal/utils/uuid.js +19 -0
  211. package/internal/utils/uuid.js.map +1 -0
  212. package/internal/utils/uuid.mjs +15 -0
  213. package/internal/utils/uuid.mjs.map +1 -0
  214. package/internal/utils/values.d.mts +18 -0
  215. package/internal/utils/values.d.mts.map +1 -0
  216. package/internal/utils/values.d.ts +18 -0
  217. package/internal/utils/values.d.ts.map +1 -0
  218. package/internal/utils/values.js +112 -0
  219. package/internal/utils/values.js.map +1 -0
  220. package/internal/utils/values.mjs +94 -0
  221. package/internal/utils/values.mjs.map +1 -0
  222. package/internal/utils.d.mts +7 -0
  223. package/internal/utils.d.mts.map +1 -0
  224. package/internal/utils.d.ts +7 -0
  225. package/internal/utils.d.ts.map +1 -0
  226. package/internal/utils.js +11 -0
  227. package/internal/utils.js.map +1 -0
  228. package/internal/utils.mjs +8 -0
  229. package/internal/utils.mjs.map +1 -0
  230. package/package.json +129 -39
  231. package/resource.d.mts +2 -0
  232. package/resource.d.mts.map +1 -0
  233. package/resource.d.ts +2 -0
  234. package/resource.d.ts.map +1 -0
  235. package/resource.js +6 -0
  236. package/resource.js.map +1 -0
  237. package/resource.mjs +2 -0
  238. package/resource.mjs.map +1 -0
  239. package/resources/contacts/bulk.d.mts +61 -0
  240. package/resources/contacts/bulk.d.mts.map +1 -0
  241. package/resources/contacts/bulk.d.ts +61 -0
  242. package/resources/contacts/bulk.d.ts.map +1 -0
  243. package/resources/contacts/bulk.js +35 -0
  244. package/resources/contacts/bulk.js.map +1 -0
  245. package/resources/contacts/bulk.mjs +31 -0
  246. package/resources/contacts/bulk.mjs.map +1 -0
  247. package/resources/contacts/contacts.d.mts +239 -0
  248. package/resources/contacts/contacts.d.mts.map +1 -0
  249. package/resources/contacts/contacts.d.ts +239 -0
  250. package/resources/contacts/contacts.d.ts.map +1 -0
  251. package/resources/contacts/contacts.js +101 -0
  252. package/resources/contacts/contacts.js.map +1 -0
  253. package/resources/contacts/contacts.mjs +96 -0
  254. package/resources/contacts/contacts.mjs.map +1 -0
  255. package/resources/contacts/index.d.mts +3 -0
  256. package/resources/contacts/index.d.mts.map +1 -0
  257. package/resources/contacts/index.d.ts +3 -0
  258. package/resources/contacts/index.d.ts.map +1 -0
  259. package/resources/contacts/index.js +9 -0
  260. package/resources/contacts/index.js.map +1 -0
  261. package/resources/contacts/index.mjs +4 -0
  262. package/resources/contacts/index.mjs.map +1 -0
  263. package/resources/contacts.d.mts +2 -0
  264. package/resources/contacts.d.mts.map +1 -0
  265. package/resources/contacts.d.ts +2 -0
  266. package/resources/contacts.d.ts.map +1 -0
  267. package/resources/contacts.js +6 -0
  268. package/resources/contacts.js.map +1 -0
  269. package/resources/contacts.mjs +3 -0
  270. package/resources/contacts.mjs.map +1 -0
  271. package/resources/groups.d.mts +77 -0
  272. package/resources/groups.d.mts.map +1 -0
  273. package/resources/groups.d.ts +77 -0
  274. package/resources/groups.d.ts.map +1 -0
  275. package/resources/groups.js +38 -0
  276. package/resources/groups.js.map +1 -0
  277. package/resources/groups.mjs +34 -0
  278. package/resources/groups.mjs.map +1 -0
  279. package/resources/index.d.mts +7 -0
  280. package/resources/index.d.mts.map +1 -0
  281. package/resources/index.d.ts +7 -0
  282. package/resources/index.d.ts.map +1 -0
  283. package/resources/index.js +17 -0
  284. package/resources/index.js.map +1 -0
  285. package/resources/index.mjs +8 -0
  286. package/resources/index.mjs.map +1 -0
  287. package/resources/lookups.d.mts +30 -0
  288. package/resources/lookups.d.mts.map +1 -0
  289. package/resources/lookups.d.ts +30 -0
  290. package/resources/lookups.d.ts.map +1 -0
  291. package/resources/lookups.js +16 -0
  292. package/resources/lookups.js.map +1 -0
  293. package/resources/lookups.mjs +12 -0
  294. package/resources/lookups.mjs.map +1 -0
  295. package/resources/media-objects.d.mts +31 -0
  296. package/resources/media-objects.d.mts.map +1 -0
  297. package/resources/media-objects.d.ts +31 -0
  298. package/resources/media-objects.d.ts.map +1 -0
  299. package/resources/media-objects.js +22 -0
  300. package/resources/media-objects.js.map +1 -0
  301. package/resources/media-objects.mjs +18 -0
  302. package/resources/media-objects.mjs.map +1 -0
  303. package/resources/messages.d.mts +487 -0
  304. package/resources/messages.d.mts.map +1 -0
  305. package/resources/messages.d.ts +487 -0
  306. package/resources/messages.d.ts.map +1 -0
  307. package/resources/messages.js +64 -0
  308. package/resources/messages.js.map +1 -0
  309. package/resources/messages.mjs +60 -0
  310. package/resources/messages.mjs.map +1 -0
  311. package/resources/typing-indicators.d.mts +42 -0
  312. package/resources/typing-indicators.d.mts.map +1 -0
  313. package/resources/typing-indicators.d.ts +42 -0
  314. package/resources/typing-indicators.d.ts.map +1 -0
  315. package/resources/typing-indicators.js +24 -0
  316. package/resources/typing-indicators.js.map +1 -0
  317. package/resources/typing-indicators.mjs +20 -0
  318. package/resources/typing-indicators.mjs.map +1 -0
  319. package/resources.d.mts +2 -0
  320. package/resources.d.mts.map +1 -0
  321. package/resources.d.ts +2 -0
  322. package/resources.d.ts.map +1 -0
  323. package/resources.js +5 -0
  324. package/resources.js.map +1 -0
  325. package/resources.mjs +2 -0
  326. package/resources.mjs.map +1 -0
  327. package/src/api-promise.ts +2 -0
  328. package/src/client.ts +840 -0
  329. package/src/core/README.md +3 -0
  330. package/src/core/api-promise.ts +92 -0
  331. package/src/core/error.ts +130 -0
  332. package/src/core/resource.ts +11 -0
  333. package/src/core/uploads.ts +2 -0
  334. package/src/error.ts +2 -0
  335. package/src/index.ts +22 -0
  336. package/src/internal/README.md +3 -0
  337. package/src/internal/builtin-types.ts +93 -0
  338. package/src/internal/detect-platform.ts +196 -0
  339. package/src/internal/errors.ts +33 -0
  340. package/src/internal/headers.ts +97 -0
  341. package/src/internal/parse.ts +50 -0
  342. package/src/internal/request-options.ts +91 -0
  343. package/src/internal/shim-types.ts +26 -0
  344. package/src/internal/shims.ts +107 -0
  345. package/src/internal/to-file.ts +154 -0
  346. package/src/internal/types.ts +95 -0
  347. package/src/internal/uploads.ts +187 -0
  348. package/src/internal/utils/base64.ts +40 -0
  349. package/src/internal/utils/bytes.ts +32 -0
  350. package/src/internal/utils/env.ts +18 -0
  351. package/src/internal/utils/log.ts +128 -0
  352. package/src/internal/utils/path.ts +88 -0
  353. package/src/internal/utils/sleep.ts +3 -0
  354. package/src/internal/utils/uuid.ts +17 -0
  355. package/src/internal/utils/values.ts +105 -0
  356. package/src/internal/utils.ts +8 -0
  357. package/src/lib/.keep +4 -0
  358. package/src/resource.ts +2 -0
  359. package/src/resources/contacts/bulk.ts +85 -0
  360. package/src/resources/contacts/contacts.ts +338 -0
  361. package/src/resources/contacts/index.ts +24 -0
  362. package/src/resources/contacts.ts +3 -0
  363. package/src/resources/groups.ts +102 -0
  364. package/src/resources/index.ts +40 -0
  365. package/src/resources/lookups.ts +44 -0
  366. package/src/resources/media-objects.ts +43 -0
  367. package/src/resources/messages.ts +720 -0
  368. package/src/resources/typing-indicators.ts +54 -0
  369. package/src/resources.ts +1 -0
  370. package/src/tsconfig.json +11 -0
  371. package/src/uploads.ts +2 -0
  372. package/src/version.ts +1 -0
  373. package/uploads.d.mts +2 -0
  374. package/uploads.d.mts.map +1 -0
  375. package/uploads.d.ts +2 -0
  376. package/uploads.d.ts.map +1 -0
  377. package/uploads.js +6 -0
  378. package/uploads.js.map +1 -0
  379. package/uploads.mjs +2 -0
  380. package/uploads.mjs.map +1 -0
  381. package/version.d.mts +2 -0
  382. package/version.d.mts.map +1 -0
  383. package/version.d.ts +2 -0
  384. package/version.d.ts.map +1 -0
  385. package/version.js +5 -0
  386. package/version.js.map +1 -0
  387. package/version.mjs +2 -0
  388. package/version.mjs.map +1 -0
  389. package/.env +0 -5
  390. package/.prettierrc +0 -1
  391. package/config.js +0 -31
  392. package/dist/base/Message.d.ts +0 -43
  393. package/dist/base/Message.js +0 -30
  394. package/dist/base/RequestClient.d.ts +0 -27
  395. package/dist/base/RequestClient.js +0 -138
  396. package/dist/base/SendblueClient.d.ts +0 -18
  397. package/dist/base/SendblueClient.js +0 -33
  398. package/dist/index.d.ts +0 -2
  399. package/dist/index.js +0 -4
  400. package/dist/rest/group-message/index.d.ts +0 -23
  401. package/dist/rest/group-message/index.js +0 -73
  402. package/dist/rest/message/index.d.ts +0 -14
  403. package/dist/rest/message/index.js +0 -66
  404. package/dist/types.d.ts +0 -1
  405. package/dist/types.js +0 -2
  406. package/test/basic.test.js +0 -47
  407. package/tsconfig.json +0 -10
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.safeJSON = exports.maybeCoerceBoolean = exports.maybeCoerceFloat = exports.maybeCoerceInteger = exports.coerceBoolean = exports.coerceFloat = exports.coerceInteger = exports.validatePositiveInteger = exports.ensurePresent = exports.isReadonlyArray = exports.isArray = exports.isAbsoluteURL = void 0;
5
+ exports.maybeObj = maybeObj;
6
+ exports.isEmptyObj = isEmptyObj;
7
+ exports.hasOwn = hasOwn;
8
+ exports.isObj = isObj;
9
+ const error_1 = require("../../core/error.js");
10
+ // https://url.spec.whatwg.org/#url-scheme-string
11
+ const startsWithSchemeRegexp = /^[a-z][a-z0-9+.-]*:/i;
12
+ const isAbsoluteURL = (url) => {
13
+ return startsWithSchemeRegexp.test(url);
14
+ };
15
+ exports.isAbsoluteURL = isAbsoluteURL;
16
+ let isArray = (val) => ((exports.isArray = Array.isArray), (0, exports.isArray)(val));
17
+ exports.isArray = isArray;
18
+ exports.isReadonlyArray = exports.isArray;
19
+ /** Returns an object if the given value isn't an object, otherwise returns as-is */
20
+ function maybeObj(x) {
21
+ if (typeof x !== 'object') {
22
+ return {};
23
+ }
24
+ return x ?? {};
25
+ }
26
+ // https://stackoverflow.com/a/34491287
27
+ function isEmptyObj(obj) {
28
+ if (!obj)
29
+ return true;
30
+ for (const _k in obj)
31
+ return false;
32
+ return true;
33
+ }
34
+ // https://eslint.org/docs/latest/rules/no-prototype-builtins
35
+ function hasOwn(obj, key) {
36
+ return Object.prototype.hasOwnProperty.call(obj, key);
37
+ }
38
+ function isObj(obj) {
39
+ return obj != null && typeof obj === 'object' && !Array.isArray(obj);
40
+ }
41
+ const ensurePresent = (value) => {
42
+ if (value == null) {
43
+ throw new error_1.SendblueAPIError(`Expected a value to be given but received ${value} instead.`);
44
+ }
45
+ return value;
46
+ };
47
+ exports.ensurePresent = ensurePresent;
48
+ const validatePositiveInteger = (name, n) => {
49
+ if (typeof n !== 'number' || !Number.isInteger(n)) {
50
+ throw new error_1.SendblueAPIError(`${name} must be an integer`);
51
+ }
52
+ if (n < 0) {
53
+ throw new error_1.SendblueAPIError(`${name} must be a positive integer`);
54
+ }
55
+ return n;
56
+ };
57
+ exports.validatePositiveInteger = validatePositiveInteger;
58
+ const coerceInteger = (value) => {
59
+ if (typeof value === 'number')
60
+ return Math.round(value);
61
+ if (typeof value === 'string')
62
+ return parseInt(value, 10);
63
+ throw new error_1.SendblueAPIError(`Could not coerce ${value} (type: ${typeof value}) into a number`);
64
+ };
65
+ exports.coerceInteger = coerceInteger;
66
+ const coerceFloat = (value) => {
67
+ if (typeof value === 'number')
68
+ return value;
69
+ if (typeof value === 'string')
70
+ return parseFloat(value);
71
+ throw new error_1.SendblueAPIError(`Could not coerce ${value} (type: ${typeof value}) into a number`);
72
+ };
73
+ exports.coerceFloat = coerceFloat;
74
+ const coerceBoolean = (value) => {
75
+ if (typeof value === 'boolean')
76
+ return value;
77
+ if (typeof value === 'string')
78
+ return value === 'true';
79
+ return Boolean(value);
80
+ };
81
+ exports.coerceBoolean = coerceBoolean;
82
+ const maybeCoerceInteger = (value) => {
83
+ if (value === undefined) {
84
+ return undefined;
85
+ }
86
+ return (0, exports.coerceInteger)(value);
87
+ };
88
+ exports.maybeCoerceInteger = maybeCoerceInteger;
89
+ const maybeCoerceFloat = (value) => {
90
+ if (value === undefined) {
91
+ return undefined;
92
+ }
93
+ return (0, exports.coerceFloat)(value);
94
+ };
95
+ exports.maybeCoerceFloat = maybeCoerceFloat;
96
+ const maybeCoerceBoolean = (value) => {
97
+ if (value === undefined) {
98
+ return undefined;
99
+ }
100
+ return (0, exports.coerceBoolean)(value);
101
+ };
102
+ exports.maybeCoerceBoolean = maybeCoerceBoolean;
103
+ const safeJSON = (text) => {
104
+ try {
105
+ return JSON.parse(text);
106
+ }
107
+ catch (err) {
108
+ return undefined;
109
+ }
110
+ };
111
+ exports.safeJSON = safeJSON;
112
+ //# sourceMappingURL=values.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"values.js","sourceRoot":"","sources":["../../src/internal/utils/values.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,94 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+ import { SendblueAPIError } from "../../core/error.mjs";
3
+ // https://url.spec.whatwg.org/#url-scheme-string
4
+ const startsWithSchemeRegexp = /^[a-z][a-z0-9+.-]*:/i;
5
+ export const isAbsoluteURL = (url) => {
6
+ return startsWithSchemeRegexp.test(url);
7
+ };
8
+ export let isArray = (val) => ((isArray = Array.isArray), isArray(val));
9
+ export let isReadonlyArray = isArray;
10
+ /** Returns an object if the given value isn't an object, otherwise returns as-is */
11
+ export function maybeObj(x) {
12
+ if (typeof x !== 'object') {
13
+ return {};
14
+ }
15
+ return x ?? {};
16
+ }
17
+ // https://stackoverflow.com/a/34491287
18
+ export function isEmptyObj(obj) {
19
+ if (!obj)
20
+ return true;
21
+ for (const _k in obj)
22
+ return false;
23
+ return true;
24
+ }
25
+ // https://eslint.org/docs/latest/rules/no-prototype-builtins
26
+ export function hasOwn(obj, key) {
27
+ return Object.prototype.hasOwnProperty.call(obj, key);
28
+ }
29
+ export function isObj(obj) {
30
+ return obj != null && typeof obj === 'object' && !Array.isArray(obj);
31
+ }
32
+ export const ensurePresent = (value) => {
33
+ if (value == null) {
34
+ throw new SendblueAPIError(`Expected a value to be given but received ${value} instead.`);
35
+ }
36
+ return value;
37
+ };
38
+ export const validatePositiveInteger = (name, n) => {
39
+ if (typeof n !== 'number' || !Number.isInteger(n)) {
40
+ throw new SendblueAPIError(`${name} must be an integer`);
41
+ }
42
+ if (n < 0) {
43
+ throw new SendblueAPIError(`${name} must be a positive integer`);
44
+ }
45
+ return n;
46
+ };
47
+ export const coerceInteger = (value) => {
48
+ if (typeof value === 'number')
49
+ return Math.round(value);
50
+ if (typeof value === 'string')
51
+ return parseInt(value, 10);
52
+ throw new SendblueAPIError(`Could not coerce ${value} (type: ${typeof value}) into a number`);
53
+ };
54
+ export const coerceFloat = (value) => {
55
+ if (typeof value === 'number')
56
+ return value;
57
+ if (typeof value === 'string')
58
+ return parseFloat(value);
59
+ throw new SendblueAPIError(`Could not coerce ${value} (type: ${typeof value}) into a number`);
60
+ };
61
+ export const coerceBoolean = (value) => {
62
+ if (typeof value === 'boolean')
63
+ return value;
64
+ if (typeof value === 'string')
65
+ return value === 'true';
66
+ return Boolean(value);
67
+ };
68
+ export const maybeCoerceInteger = (value) => {
69
+ if (value === undefined) {
70
+ return undefined;
71
+ }
72
+ return coerceInteger(value);
73
+ };
74
+ export const maybeCoerceFloat = (value) => {
75
+ if (value === undefined) {
76
+ return undefined;
77
+ }
78
+ return coerceFloat(value);
79
+ };
80
+ export const maybeCoerceBoolean = (value) => {
81
+ if (value === undefined) {
82
+ return undefined;
83
+ }
84
+ return coerceBoolean(value);
85
+ };
86
+ export const safeJSON = (text) => {
87
+ try {
88
+ return JSON.parse(text);
89
+ }
90
+ catch (err) {
91
+ return undefined;
92
+ }
93
+ };
94
+ //# sourceMappingURL=values.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"values.mjs","sourceRoot":"","sources":["../../src/internal/utils/values.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export * from "./utils/values.mjs";
2
+ export * from "./utils/base64.mjs";
3
+ export * from "./utils/env.mjs";
4
+ export * from "./utils/log.mjs";
5
+ export * from "./utils/uuid.mjs";
6
+ export * from "./utils/sleep.mjs";
7
+ //# sourceMappingURL=utils.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.mts","sourceRoot":"","sources":["../src/internal/utils.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ export * from "./utils/values.js";
2
+ export * from "./utils/base64.js";
3
+ export * from "./utils/env.js";
4
+ export * from "./utils/log.js";
5
+ export * from "./utils/uuid.js";
6
+ export * from "./utils/sleep.js";
7
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/internal/utils.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ const tslib_1 = require("./tslib.js");
5
+ tslib_1.__exportStar(require("./utils/values.js"), exports);
6
+ tslib_1.__exportStar(require("./utils/base64.js"), exports);
7
+ tslib_1.__exportStar(require("./utils/env.js"), exports);
8
+ tslib_1.__exportStar(require("./utils/log.js"), exports);
9
+ tslib_1.__exportStar(require("./utils/uuid.js"), exports);
10
+ tslib_1.__exportStar(require("./utils/sleep.js"), exports);
11
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/internal/utils.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,4DAA+B;AAC/B,4DAA+B;AAC/B,yDAA4B;AAC5B,yDAA4B;AAC5B,0DAA6B;AAC7B,2DAA8B"}
@@ -0,0 +1,8 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+ export * from "./utils/values.mjs";
3
+ export * from "./utils/base64.mjs";
4
+ export * from "./utils/env.mjs";
5
+ export * from "./utils/log.mjs";
6
+ export * from "./utils/uuid.mjs";
7
+ export * from "./utils/sleep.mjs";
8
+ //# sourceMappingURL=utils.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.mjs","sourceRoot":"","sources":["../src/internal/utils.ts"],"names":[],"mappings":"AAAA,sFAAsF"}
package/package.json CHANGED
@@ -1,45 +1,135 @@
1
1
  {
2
2
  "name": "sendblue",
3
- "version": "1.1.8",
4
- "description": "A tiny client module for the Sendblue API",
5
- "main": "dist/index.js",
6
- "types": "dist/index.d.ts",
3
+ "version": "2.0.1",
4
+ "description": "The official TypeScript library for the Sendblue API API",
5
+ "author": "Sendblue API <support@sendblue.co>",
6
+ "types": "./index.d.ts",
7
+ "main": "./index.js",
8
+ "type": "commonjs",
9
+ "repository": "github:sendblue-api/sendblue-ts",
10
+ "license": "Apache-2.0",
11
+ "packageManager": "yarn@1.22.22",
12
+ "files": [
13
+ "**/*"
14
+ ],
15
+ "private": false,
7
16
  "scripts": {
8
- "prepublish": "npm run build",
9
- "deploy": "npm version patch && npm run build && npm publish",
10
- "build": "tsc",
11
- "test": "mocha --use_strict"
17
+ "test": "./scripts/test",
18
+ "build": "./scripts/build",
19
+ "format": "./scripts/format",
20
+ "tsn": "ts-node -r tsconfig-paths/register",
21
+ "lint": "./scripts/lint",
22
+ "fix": "./scripts/format"
12
23
  },
13
- "keywords": [
14
- "api",
15
- "sms",
16
- "imessage",
17
- "node",
18
- "imessage api",
19
- "sms api",
20
- "sendblue",
21
- "sendblue api",
22
- "sendblue node"
23
- ],
24
- "author": "Nikita Jerschow",
25
- "contributors": [
26
- {
27
- "url": "https://github.com/njerschow"
24
+ "dependencies": {},
25
+ "exports": {
26
+ ".": {
27
+ "require": {
28
+ "types": "./index.d.ts",
29
+ "default": "./index.js"
30
+ },
31
+ "types": "./index.d.mts",
32
+ "default": "./index.mjs"
33
+ },
34
+ "./api-promise": {
35
+ "import": "./api-promise.mjs",
36
+ "require": "./api-promise.js"
37
+ },
38
+ "./api-promise.js": {
39
+ "default": "./api-promise.js"
40
+ },
41
+ "./api-promise.mjs": {
42
+ "default": "./api-promise.mjs"
43
+ },
44
+ "./client": {
45
+ "import": "./client.mjs",
46
+ "require": "./client.js"
47
+ },
48
+ "./client.js": {
49
+ "default": "./client.js"
50
+ },
51
+ "./client.mjs": {
52
+ "default": "./client.mjs"
53
+ },
54
+ "./core/*.mjs": {
55
+ "default": "./core/*.mjs"
56
+ },
57
+ "./core/*.js": {
58
+ "default": "./core/*.js"
59
+ },
60
+ "./core/*": {
61
+ "import": "./core/*.mjs",
62
+ "require": "./core/*.js"
63
+ },
64
+ "./error": {
65
+ "import": "./error.mjs",
66
+ "require": "./error.js"
67
+ },
68
+ "./error.js": {
69
+ "default": "./error.js"
70
+ },
71
+ "./error.mjs": {
72
+ "default": "./error.mjs"
73
+ },
74
+ "./index": {
75
+ "import": "./index.mjs",
76
+ "require": "./index.js"
77
+ },
78
+ "./index.js": {
79
+ "default": "./index.js"
80
+ },
81
+ "./index.mjs": {
82
+ "default": "./index.mjs"
83
+ },
84
+ "./resource": {
85
+ "import": "./resource.mjs",
86
+ "require": "./resource.js"
87
+ },
88
+ "./resource.js": {
89
+ "default": "./resource.js"
90
+ },
91
+ "./resource.mjs": {
92
+ "default": "./resource.mjs"
93
+ },
94
+ "./resources/*.mjs": {
95
+ "default": "./resources/*.mjs"
96
+ },
97
+ "./resources/*.js": {
98
+ "default": "./resources/*.js"
99
+ },
100
+ "./resources/*": {
101
+ "import": "./resources/*.mjs",
102
+ "require": "./resources/*.js"
103
+ },
104
+ "./resources": {
105
+ "import": "./resources.mjs",
106
+ "require": "./resources.js"
107
+ },
108
+ "./resources.js": {
109
+ "default": "./resources.js"
110
+ },
111
+ "./resources.mjs": {
112
+ "default": "./resources.mjs"
113
+ },
114
+ "./uploads": {
115
+ "import": "./uploads.mjs",
116
+ "require": "./uploads.js"
117
+ },
118
+ "./uploads.js": {
119
+ "default": "./uploads.js"
120
+ },
121
+ "./uploads.mjs": {
122
+ "default": "./uploads.mjs"
123
+ },
124
+ "./version": {
125
+ "import": "./version.mjs",
126
+ "require": "./version.js"
127
+ },
128
+ "./version.js": {
129
+ "default": "./version.js"
130
+ },
131
+ "./version.mjs": {
132
+ "default": "./version.mjs"
28
133
  }
29
- ],
30
- "license": "ISC",
31
- "repository": {
32
- "type": "git",
33
- "url": "https://github.com/sendblue-api/sendblue-node.git"
34
- },
35
- "dependencies": {
36
- "@types/node": "^18.11.7",
37
- "axios": "^0.21.1",
38
- "dotenv": "^8.2.0"
39
- },
40
- "devDependencies": {
41
- "chai": "^4.3.4",
42
- "mocha": "^8.3.2",
43
- "typescript": "^4.8.4"
44
134
  }
45
- }
135
+ }
package/resource.d.mts ADDED
@@ -0,0 +1,2 @@
1
+ export * from "./core/resource.mjs";
2
+ //# sourceMappingURL=resource.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource.d.mts","sourceRoot":"","sources":["src/resource.ts"],"names":[],"mappings":""}
package/resource.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export * from "./core/resource.js";
2
+ //# sourceMappingURL=resource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource.d.ts","sourceRoot":"","sources":["src/resource.ts"],"names":[],"mappings":""}
package/resource.js ADDED
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("./internal/tslib.js");
4
+ /** @deprecated Import from ./core/resource instead */
5
+ tslib_1.__exportStar(require("./core/resource.js"), exports);
6
+ //# sourceMappingURL=resource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource.js","sourceRoot":"","sources":["src/resource.ts"],"names":[],"mappings":";;;AAAA,sDAAsD;AACtD,6DAAgC"}
package/resource.mjs ADDED
@@ -0,0 +1,2 @@
1
+ export * from "./core/resource.mjs";
2
+ //# sourceMappingURL=resource.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource.mjs","sourceRoot":"","sources":["src/resource.ts"],"names":[],"mappings":""}
@@ -0,0 +1,61 @@
1
+ import { APIResource } from "../../core/resource.mjs";
2
+ import * as ContactsAPI from "./contacts.mjs";
3
+ import { APIPromise } from "../../core/api-promise.mjs";
4
+ import { RequestOptions } from "../../internal/request-options.mjs";
5
+ export declare class Bulk extends APIResource {
6
+ /**
7
+ * Create multiple contacts in bulk
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * const bulk = await client.contacts.bulk.create({
12
+ * contacts: [{ phone: 'phone' }],
13
+ * });
14
+ * ```
15
+ */
16
+ create(body: BulkCreateParams, options?: RequestOptions): APIPromise<BulkCreateResponse>;
17
+ /**
18
+ * Delete multiple contacts by their IDs
19
+ *
20
+ * @example
21
+ * ```ts
22
+ * const bulk = await client.contacts.bulk.delete({
23
+ * contact_ids: ['+1234567890', '+0987654321'],
24
+ * });
25
+ * ```
26
+ */
27
+ delete(body: BulkDeleteParams, options?: RequestOptions): APIPromise<BulkDeleteResponse>;
28
+ }
29
+ export interface BulkCreateResponse {
30
+ contacts?: Array<ContactsAPI.Contact>;
31
+ status?: string;
32
+ }
33
+ export interface BulkDeleteResponse {
34
+ /**
35
+ * Number of contacts deleted
36
+ */
37
+ amount?: number;
38
+ status?: string;
39
+ }
40
+ export interface BulkCreateParams {
41
+ contacts: Array<BulkCreateParams.Contact>;
42
+ }
43
+ export declare namespace BulkCreateParams {
44
+ interface Contact {
45
+ phone: string;
46
+ company?: string;
47
+ firstName?: string;
48
+ lastName?: string;
49
+ tags?: Array<string>;
50
+ }
51
+ }
52
+ export interface BulkDeleteParams {
53
+ /**
54
+ * Array of phone numbers in E.164 format to delete
55
+ */
56
+ contact_ids: Array<string>;
57
+ }
58
+ export declare namespace Bulk {
59
+ export { type BulkCreateResponse as BulkCreateResponse, type BulkDeleteResponse as BulkDeleteResponse, type BulkCreateParams as BulkCreateParams, type BulkDeleteParams as BulkDeleteParams, };
60
+ }
61
+ //# sourceMappingURL=bulk.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bulk.d.mts","sourceRoot":"","sources":["../../src/resources/contacts/bulk.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,KAAK,WAAW;OAChB,EAAE,UAAU,EAAE;OACd,EAAE,cAAc,EAAE;AAEzB,qBAAa,IAAK,SAAQ,WAAW;IACnC;;;;;;;;;OASG;IACH,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,kBAAkB,CAAC;IAIxF;;;;;;;;;OASG;IACH,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,kBAAkB,CAAC;CAGzF;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAEtC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;CAC3C;AAED,yBAAiB,gBAAgB,CAAC;IAChC,UAAiB,OAAO;QACtB,KAAK,EAAE,MAAM,CAAC;QAEd,OAAO,CAAC,EAAE,MAAM,CAAC;QAEjB,SAAS,CAAC,EAAE,MAAM,CAAC;QAEnB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAElB,IAAI,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;KACtB;CACF;AAED,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAC5B;AAED,MAAM,CAAC,OAAO,WAAW,IAAI,CAAC;IAC5B,OAAO,EACL,KAAK,kBAAkB,IAAI,kBAAkB,EAC7C,KAAK,kBAAkB,IAAI,kBAAkB,EAC7C,KAAK,gBAAgB,IAAI,gBAAgB,EACzC,KAAK,gBAAgB,IAAI,gBAAgB,GAC1C,CAAC;CACH"}
@@ -0,0 +1,61 @@
1
+ import { APIResource } from "../../core/resource.js";
2
+ import * as ContactsAPI from "./contacts.js";
3
+ import { APIPromise } from "../../core/api-promise.js";
4
+ import { RequestOptions } from "../../internal/request-options.js";
5
+ export declare class Bulk extends APIResource {
6
+ /**
7
+ * Create multiple contacts in bulk
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * const bulk = await client.contacts.bulk.create({
12
+ * contacts: [{ phone: 'phone' }],
13
+ * });
14
+ * ```
15
+ */
16
+ create(body: BulkCreateParams, options?: RequestOptions): APIPromise<BulkCreateResponse>;
17
+ /**
18
+ * Delete multiple contacts by their IDs
19
+ *
20
+ * @example
21
+ * ```ts
22
+ * const bulk = await client.contacts.bulk.delete({
23
+ * contact_ids: ['+1234567890', '+0987654321'],
24
+ * });
25
+ * ```
26
+ */
27
+ delete(body: BulkDeleteParams, options?: RequestOptions): APIPromise<BulkDeleteResponse>;
28
+ }
29
+ export interface BulkCreateResponse {
30
+ contacts?: Array<ContactsAPI.Contact>;
31
+ status?: string;
32
+ }
33
+ export interface BulkDeleteResponse {
34
+ /**
35
+ * Number of contacts deleted
36
+ */
37
+ amount?: number;
38
+ status?: string;
39
+ }
40
+ export interface BulkCreateParams {
41
+ contacts: Array<BulkCreateParams.Contact>;
42
+ }
43
+ export declare namespace BulkCreateParams {
44
+ interface Contact {
45
+ phone: string;
46
+ company?: string;
47
+ firstName?: string;
48
+ lastName?: string;
49
+ tags?: Array<string>;
50
+ }
51
+ }
52
+ export interface BulkDeleteParams {
53
+ /**
54
+ * Array of phone numbers in E.164 format to delete
55
+ */
56
+ contact_ids: Array<string>;
57
+ }
58
+ export declare namespace Bulk {
59
+ export { type BulkCreateResponse as BulkCreateResponse, type BulkDeleteResponse as BulkDeleteResponse, type BulkCreateParams as BulkCreateParams, type BulkDeleteParams as BulkDeleteParams, };
60
+ }
61
+ //# sourceMappingURL=bulk.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bulk.d.ts","sourceRoot":"","sources":["../../src/resources/contacts/bulk.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,KAAK,WAAW;OAChB,EAAE,UAAU,EAAE;OACd,EAAE,cAAc,EAAE;AAEzB,qBAAa,IAAK,SAAQ,WAAW;IACnC;;;;;;;;;OASG;IACH,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,kBAAkB,CAAC;IAIxF;;;;;;;;;OASG;IACH,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,kBAAkB,CAAC;CAGzF;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAEtC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;CAC3C;AAED,yBAAiB,gBAAgB,CAAC;IAChC,UAAiB,OAAO;QACtB,KAAK,EAAE,MAAM,CAAC;QAEd,OAAO,CAAC,EAAE,MAAM,CAAC;QAEjB,SAAS,CAAC,EAAE,MAAM,CAAC;QAEnB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAElB,IAAI,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;KACtB;CACF;AAED,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAC5B;AAED,MAAM,CAAC,OAAO,WAAW,IAAI,CAAC;IAC5B,OAAO,EACL,KAAK,kBAAkB,IAAI,kBAAkB,EAC7C,KAAK,kBAAkB,IAAI,kBAAkB,EAC7C,KAAK,gBAAgB,IAAI,gBAAgB,EACzC,KAAK,gBAAgB,IAAI,gBAAgB,GAC1C,CAAC;CACH"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.Bulk = void 0;
5
+ const resource_1 = require("../../core/resource.js");
6
+ class Bulk extends resource_1.APIResource {
7
+ /**
8
+ * Create multiple contacts in bulk
9
+ *
10
+ * @example
11
+ * ```ts
12
+ * const bulk = await client.contacts.bulk.create({
13
+ * contacts: [{ phone: 'phone' }],
14
+ * });
15
+ * ```
16
+ */
17
+ create(body, options) {
18
+ return this._client.post('/api/v2/contacts/bulk', { body, ...options });
19
+ }
20
+ /**
21
+ * Delete multiple contacts by their IDs
22
+ *
23
+ * @example
24
+ * ```ts
25
+ * const bulk = await client.contacts.bulk.delete({
26
+ * contact_ids: ['+1234567890', '+0987654321'],
27
+ * });
28
+ * ```
29
+ */
30
+ delete(body, options) {
31
+ return this._client.delete('/api/v2/contacts', { body, ...options });
32
+ }
33
+ }
34
+ exports.Bulk = Bulk;
35
+ //# sourceMappingURL=bulk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bulk.js","sourceRoot":"","sources":["../../src/resources/contacts/bulk.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,qDAAkD;AAKlD,MAAa,IAAK,SAAQ,sBAAW;IACnC;;;;;;;;;OASG;IACH,MAAM,CAAC,IAAsB,EAAE,OAAwB;QACrD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED;;;;;;;;;OASG;IACH,MAAM,CAAC,IAAsB,EAAE,OAAwB;QACrD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACvE,CAAC;CACF;AA5BD,oBA4BC"}