box-node-sdk 3.8.0 → 3.8.2

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 (449) hide show
  1. package/README.md +89 -69
  2. package/config/package.schema.json +42 -42
  3. package/lib/api-request-manager.d.ts +0 -2
  4. package/lib/api-request-manager.js.map +1 -1
  5. package/lib/api-request.d.ts +0 -3
  6. package/lib/api-request.js.map +1 -1
  7. package/lib/box-client.d.ts +7 -7
  8. package/lib/box-client.js +6 -3
  9. package/lib/box-client.js.map +1 -1
  10. package/lib/box-node-sdk.d.ts +1 -3
  11. package/lib/box-node-sdk.js +26 -10
  12. package/lib/box-node-sdk.js.map +1 -1
  13. package/lib/chunked-uploader.d.ts +0 -5
  14. package/lib/chunked-uploader.js.map +1 -1
  15. package/lib/enterprise-event-stream.d.ts +0 -1
  16. package/lib/enterprise-event-stream.js +3 -3
  17. package/lib/enterprise-event-stream.js.map +1 -1
  18. package/lib/event-stream.d.ts +0 -2
  19. package/lib/event-stream.js.map +1 -1
  20. package/lib/managers/ai.generated.js.map +1 -1
  21. package/lib/managers/collaboration-allowlist.js.map +1 -1
  22. package/lib/managers/collaborations.d.ts +3 -3
  23. package/lib/managers/collaborations.js +23 -23
  24. package/lib/managers/collaborations.js.map +1 -1
  25. package/lib/managers/collections.js.map +1 -1
  26. package/lib/managers/comments.js.map +1 -1
  27. package/lib/managers/device-pins.js.map +1 -1
  28. package/lib/managers/enterprise.js.map +1 -1
  29. package/lib/managers/events.d.ts +0 -1
  30. package/lib/managers/events.js +3 -1
  31. package/lib/managers/events.js.map +1 -1
  32. package/lib/managers/file-requests-manager.d.ts +2 -2
  33. package/lib/managers/file-requests-manager.js +1 -1
  34. package/lib/managers/file-requests-manager.js.map +1 -1
  35. package/lib/managers/files.d.ts +1 -4
  36. package/lib/managers/files.js +6 -2
  37. package/lib/managers/files.js.map +1 -1
  38. package/lib/managers/folders.d.ts +1 -1
  39. package/lib/managers/folders.js +3 -1
  40. package/lib/managers/folders.js.map +1 -1
  41. package/lib/managers/groups.js +2 -2
  42. package/lib/managers/groups.js.map +1 -1
  43. package/lib/managers/integration-mappings.js.map +1 -1
  44. package/lib/managers/legal-hold-policies.js.map +1 -1
  45. package/lib/managers/metadata.js.map +1 -1
  46. package/lib/managers/recent-items.js.map +1 -1
  47. package/lib/managers/retention-policies.d.ts +1 -1
  48. package/lib/managers/retention-policies.js.map +1 -1
  49. package/lib/managers/search.d.ts +1 -1
  50. package/lib/managers/search.js.map +1 -1
  51. package/lib/managers/shared-items.js.map +1 -1
  52. package/lib/managers/shield-information-barrier-reports.generated.js.map +1 -1
  53. package/lib/managers/shield-information-barrier-segment-members.generated.js.map +1 -1
  54. package/lib/managers/shield-information-barrier-segment-restrictions.generated.js.map +1 -1
  55. package/lib/managers/shield-information-barrier-segments.generated.js.map +1 -1
  56. package/lib/managers/shield-information-barriers.generated.js.map +1 -1
  57. package/lib/managers/sign-requests.generated.js.map +1 -1
  58. package/lib/managers/sign-templates.generated.js.map +1 -1
  59. package/lib/managers/storage-policies.js.map +1 -1
  60. package/lib/managers/tasks.js.map +1 -1
  61. package/lib/managers/terms-of-service.js.map +1 -1
  62. package/lib/managers/trash.js.map +1 -1
  63. package/lib/managers/users.d.ts +0 -3
  64. package/lib/managers/users.js +1 -1
  65. package/lib/managers/users.js.map +1 -1
  66. package/lib/managers/web-links.js +3 -1
  67. package/lib/managers/web-links.js.map +1 -1
  68. package/lib/managers/webhooks.d.ts +11 -11
  69. package/lib/managers/webhooks.js +24 -14
  70. package/lib/managers/webhooks.js.map +1 -1
  71. package/lib/schemas/collaboration-update.d.ts +1 -1
  72. package/lib/schemas/collaboration.d.ts +3 -3
  73. package/lib/schemas/collaborations.d.ts +1 -1
  74. package/lib/schemas/file-request.d.ts +2 -2
  75. package/lib/sessions/app-auth-session.js.map +1 -1
  76. package/lib/sessions/basic-session.d.ts +0 -1
  77. package/lib/sessions/basic-session.js.map +1 -1
  78. package/lib/sessions/ccg-session.js.map +1 -1
  79. package/lib/sessions/persistent-session.js.map +1 -1
  80. package/lib/token-manager.js +4 -2
  81. package/lib/token-manager.js.map +1 -1
  82. package/lib/util/config.d.ts +0 -2
  83. package/lib/util/config.js +18 -8
  84. package/lib/util/config.js.map +1 -1
  85. package/lib/util/errors.js +17 -7
  86. package/lib/util/errors.js.map +1 -1
  87. package/lib/util/exponential-backoff.js.map +1 -1
  88. package/lib/util/paging-iterator.js +17 -7
  89. package/lib/util/paging-iterator.js.map +1 -1
  90. package/lib/util/serializable.js.map +1 -1
  91. package/lib/util/url-path.js.map +1 -1
  92. package/lib-esm/api-request-manager.d.ts +36 -0
  93. package/lib-esm/api-request-manager.js +78 -0
  94. package/lib-esm/api-request-manager.js.map +1 -0
  95. package/lib-esm/api-request.d.ts +135 -0
  96. package/lib-esm/api-request.js +282 -0
  97. package/lib-esm/api-request.js.map +1 -0
  98. package/lib-esm/box-client.d.ts +274 -0
  99. package/lib-esm/box-client.js +594 -0
  100. package/lib-esm/box-client.js.map +1 -0
  101. package/lib-esm/box-node-sdk.d.ts +227 -0
  102. package/lib-esm/box-node-sdk.js +373 -0
  103. package/lib-esm/box-node-sdk.js.map +1 -0
  104. package/lib-esm/chunked-uploader.d.ts +128 -0
  105. package/lib-esm/chunked-uploader.js +276 -0
  106. package/lib-esm/chunked-uploader.js.map +1 -0
  107. package/lib-esm/enterprise-event-stream.d.ts +82 -0
  108. package/lib-esm/enterprise-event-stream.js +205 -0
  109. package/lib-esm/enterprise-event-stream.js.map +1 -0
  110. package/lib-esm/event-stream.d.ts +91 -0
  111. package/lib-esm/event-stream.js +277 -0
  112. package/lib-esm/event-stream.js.map +1 -0
  113. package/lib-esm/managers/ai.generated.d.ts +58 -0
  114. package/lib-esm/managers/ai.generated.js +66 -0
  115. package/lib-esm/managers/ai.generated.js.map +1 -0
  116. package/lib-esm/managers/collaboration-allowlist.d.ts +133 -0
  117. package/lib-esm/managers/collaboration-allowlist.js +194 -0
  118. package/lib-esm/managers/collaboration-allowlist.js.map +1 -0
  119. package/lib-esm/managers/collaborations.d.ts +173 -0
  120. package/lib-esm/managers/collaborations.js +252 -0
  121. package/lib-esm/managers/collaborations.js.map +1 -0
  122. package/lib-esm/managers/collections.d.ts +42 -0
  123. package/lib-esm/managers/collections.js +62 -0
  124. package/lib-esm/managers/collections.js.map +1 -0
  125. package/lib-esm/managers/comments.d.ts +103 -0
  126. package/lib-esm/managers/comments.js +175 -0
  127. package/lib-esm/managers/comments.js.map +1 -0
  128. package/lib-esm/managers/device-pins.d.ts +52 -0
  129. package/lib-esm/managers/device-pins.js +91 -0
  130. package/lib-esm/managers/device-pins.js.map +1 -0
  131. package/lib-esm/managers/enterprise.d.ts +164 -0
  132. package/lib-esm/managers/enterprise.js +193 -0
  133. package/lib-esm/managers/enterprise.js.map +1 -0
  134. package/lib-esm/managers/events.d.ts +222 -0
  135. package/lib-esm/managers/events.js +295 -0
  136. package/lib-esm/managers/events.js.map +1 -0
  137. package/lib-esm/managers/file-requests-manager.d.ts +56 -0
  138. package/lib-esm/managers/file-requests-manager.js +81 -0
  139. package/lib-esm/managers/file-requests-manager.js.map +1 -0
  140. package/lib-esm/managers/files.d.ts +817 -0
  141. package/lib-esm/managers/files.js +1408 -0
  142. package/lib-esm/managers/files.js.map +1 -0
  143. package/lib-esm/managers/folders.d.ts +396 -0
  144. package/lib-esm/managers/folders.js +570 -0
  145. package/lib-esm/managers/folders.js.map +1 -0
  146. package/lib-esm/managers/groups.d.ts +213 -0
  147. package/lib-esm/managers/groups.js +289 -0
  148. package/lib-esm/managers/groups.js.map +1 -0
  149. package/lib-esm/managers/integration-mappings.d.ts +116 -0
  150. package/lib-esm/managers/integration-mappings.js +101 -0
  151. package/lib-esm/managers/integration-mappings.js.map +1 -0
  152. package/lib-esm/managers/legal-hold-policies.d.ts +190 -0
  153. package/lib-esm/managers/legal-hold-policies.js +254 -0
  154. package/lib-esm/managers/legal-hold-policies.js.map +1 -0
  155. package/lib-esm/managers/metadata.d.ts +232 -0
  156. package/lib-esm/managers/metadata.js +288 -0
  157. package/lib-esm/managers/metadata.js.map +1 -0
  158. package/lib-esm/managers/recent-items.d.ts +38 -0
  159. package/lib-esm/managers/recent-items.js +49 -0
  160. package/lib-esm/managers/recent-items.js.map +1 -0
  161. package/lib-esm/managers/retention-policies.d.ts +308 -0
  162. package/lib-esm/managers/retention-policies.js +374 -0
  163. package/lib-esm/managers/retention-policies.js.map +1 -0
  164. package/lib-esm/managers/search.d.ts +82 -0
  165. package/lib-esm/managers/search.js +90 -0
  166. package/lib-esm/managers/search.js.map +1 -0
  167. package/lib-esm/managers/shared-items.d.ts +33 -0
  168. package/lib-esm/managers/shared-items.js +74 -0
  169. package/lib-esm/managers/shared-items.js.map +1 -0
  170. package/lib-esm/managers/shield-information-barrier-reports.generated.d.ts +65 -0
  171. package/lib-esm/managers/shield-information-barrier-reports.generated.js +65 -0
  172. package/lib-esm/managers/shield-information-barrier-reports.generated.js.map +1 -0
  173. package/lib-esm/managers/shield-information-barrier-segment-members.generated.d.ts +83 -0
  174. package/lib-esm/managers/shield-information-barrier-segment-members.generated.js +83 -0
  175. package/lib-esm/managers/shield-information-barrier-segment-members.generated.js.map +1 -0
  176. package/lib-esm/managers/shield-information-barrier-segment-restrictions.generated.d.ts +84 -0
  177. package/lib-esm/managers/shield-information-barrier-segment-restrictions.generated.js +84 -0
  178. package/lib-esm/managers/shield-information-barrier-segment-restrictions.generated.js.map +1 -0
  179. package/lib-esm/managers/shield-information-barrier-segments.generated.d.ts +98 -0
  180. package/lib-esm/managers/shield-information-barrier-segments.generated.js +99 -0
  181. package/lib-esm/managers/shield-information-barrier-segments.generated.js.map +1 -0
  182. package/lib-esm/managers/shield-information-barriers.generated.d.ts +79 -0
  183. package/lib-esm/managers/shield-information-barriers.generated.js +83 -0
  184. package/lib-esm/managers/shield-information-barriers.generated.js.map +1 -0
  185. package/lib-esm/managers/sign-requests.generated.d.ts +93 -0
  186. package/lib-esm/managers/sign-requests.generated.js +97 -0
  187. package/lib-esm/managers/sign-requests.generated.js.map +1 -0
  188. package/lib-esm/managers/sign-templates.generated.d.ts +51 -0
  189. package/lib-esm/managers/sign-templates.generated.js +49 -0
  190. package/lib-esm/managers/sign-templates.generated.js.map +1 -0
  191. package/lib-esm/managers/storage-policies.d.ts +86 -0
  192. package/lib-esm/managers/storage-policies.js +174 -0
  193. package/lib-esm/managers/storage-policies.js.map +1 -0
  194. package/lib-esm/managers/tasks.d.ts +161 -0
  195. package/lib-esm/managers/tasks.js +243 -0
  196. package/lib-esm/managers/tasks.js.map +1 -0
  197. package/lib-esm/managers/terms-of-service.d.ts +161 -0
  198. package/lib-esm/managers/terms-of-service.js +283 -0
  199. package/lib-esm/managers/terms-of-service.js.map +1 -0
  200. package/lib-esm/managers/trash.d.ts +30 -0
  201. package/lib-esm/managers/trash.js +47 -0
  202. package/lib-esm/managers/trash.js.map +1 -0
  203. package/lib-esm/managers/users.d.ts +171 -0
  204. package/lib-esm/managers/users.js +230 -0
  205. package/lib-esm/managers/users.js.map +1 -0
  206. package/lib-esm/managers/web-links.d.ts +127 -0
  207. package/lib-esm/managers/web-links.js +200 -0
  208. package/lib-esm/managers/web-links.js.map +1 -0
  209. package/lib-esm/managers/webhooks.d.ts +169 -0
  210. package/lib-esm/managers/webhooks.js +398 -0
  211. package/lib-esm/managers/webhooks.js.map +1 -0
  212. package/lib-esm/schemas/ai-agent-ask.generated.d.ts +17 -0
  213. package/lib-esm/schemas/ai-agent-ask.generated.js +3 -0
  214. package/lib-esm/schemas/ai-agent-ask.generated.js.map +1 -0
  215. package/lib-esm/schemas/ai-agent-basic-gen-tool.generated.d.ts +14 -0
  216. package/lib-esm/schemas/ai-agent-basic-gen-tool.generated.js +3 -0
  217. package/lib-esm/schemas/ai-agent-basic-gen-tool.generated.js.map +1 -0
  218. package/lib-esm/schemas/ai-agent-basic-text-tool-ask.generated.d.ts +34 -0
  219. package/lib-esm/schemas/ai-agent-basic-text-tool-ask.generated.js +3 -0
  220. package/lib-esm/schemas/ai-agent-basic-text-tool-ask.generated.js.map +1 -0
  221. package/lib-esm/schemas/ai-agent-basic-text-tool-text-gen.generated.d.ts +36 -0
  222. package/lib-esm/schemas/ai-agent-basic-text-tool-text-gen.generated.js +3 -0
  223. package/lib-esm/schemas/ai-agent-basic-text-tool-text-gen.generated.js.map +1 -0
  224. package/lib-esm/schemas/ai-agent-long-text-tool.generated.d.ts +9 -0
  225. package/lib-esm/schemas/ai-agent-long-text-tool.generated.js +3 -0
  226. package/lib-esm/schemas/ai-agent-long-text-tool.generated.js.map +1 -0
  227. package/lib-esm/schemas/ai-agent-text-gen.generated.d.ts +14 -0
  228. package/lib-esm/schemas/ai-agent-text-gen.generated.js +3 -0
  229. package/lib-esm/schemas/ai-agent-text-gen.generated.js.map +1 -0
  230. package/lib-esm/schemas/ai-ask.generated.d.ts +40 -0
  231. package/lib-esm/schemas/ai-ask.generated.js +3 -0
  232. package/lib-esm/schemas/ai-ask.generated.js.map +1 -0
  233. package/lib-esm/schemas/ai-citation.generated.d.ts +27 -0
  234. package/lib-esm/schemas/ai-citation.generated.js +3 -0
  235. package/lib-esm/schemas/ai-citation.generated.js.map +1 -0
  236. package/lib-esm/schemas/ai-dialogue-history.generated.d.ts +22 -0
  237. package/lib-esm/schemas/ai-dialogue-history.generated.js +3 -0
  238. package/lib-esm/schemas/ai-dialogue-history.generated.js.map +1 -0
  239. package/lib-esm/schemas/ai-llm-endpoint-params-google.generated.d.ts +31 -0
  240. package/lib-esm/schemas/ai-llm-endpoint-params-google.generated.js +3 -0
  241. package/lib-esm/schemas/ai-llm-endpoint-params-google.generated.js.map +1 -0
  242. package/lib-esm/schemas/ai-llm-endpoint-params-open-ai.generated.d.ts +43 -0
  243. package/lib-esm/schemas/ai-llm-endpoint-params-open-ai.generated.js +3 -0
  244. package/lib-esm/schemas/ai-llm-endpoint-params-open-ai.generated.js.map +1 -0
  245. package/lib-esm/schemas/ai-response-full.generated.d.ts +12 -0
  246. package/lib-esm/schemas/ai-response-full.generated.js +3 -0
  247. package/lib-esm/schemas/ai-response-full.generated.js.map +1 -0
  248. package/lib-esm/schemas/ai-response.generated.d.ts +22 -0
  249. package/lib-esm/schemas/ai-response.generated.js +3 -0
  250. package/lib-esm/schemas/ai-response.generated.js.map +1 -0
  251. package/lib-esm/schemas/ai-text-gen.generated.d.ts +30 -0
  252. package/lib-esm/schemas/ai-text-gen.generated.js +3 -0
  253. package/lib-esm/schemas/ai-text-gen.generated.js.map +1 -0
  254. package/lib-esm/schemas/collaboration-create.d.ts +5 -0
  255. package/lib-esm/schemas/collaboration-create.js +3 -0
  256. package/lib-esm/schemas/collaboration-create.js.map +1 -0
  257. package/lib-esm/schemas/collaboration-update.d.ts +7 -0
  258. package/lib-esm/schemas/collaboration-update.js +3 -0
  259. package/lib-esm/schemas/collaboration-update.js.map +1 -0
  260. package/lib-esm/schemas/collaboration.d.ts +108 -0
  261. package/lib-esm/schemas/collaboration.js +3 -0
  262. package/lib-esm/schemas/collaboration.js.map +1 -0
  263. package/lib-esm/schemas/collaborations.d.ts +13 -0
  264. package/lib-esm/schemas/collaborations.js +3 -0
  265. package/lib-esm/schemas/collaborations.js.map +1 -0
  266. package/lib-esm/schemas/enterprise-base.generated.d.ts +18 -0
  267. package/lib-esm/schemas/enterprise-base.generated.js +3 -0
  268. package/lib-esm/schemas/enterprise-base.generated.js.map +1 -0
  269. package/lib-esm/schemas/file-base.generated.d.ts +32 -0
  270. package/lib-esm/schemas/file-base.generated.js +3 -0
  271. package/lib-esm/schemas/file-base.generated.js.map +1 -0
  272. package/lib-esm/schemas/file-mini.generated.d.ts +41 -0
  273. package/lib-esm/schemas/file-mini.generated.js +3 -0
  274. package/lib-esm/schemas/file-mini.generated.js.map +1 -0
  275. package/lib-esm/schemas/file-request.d.ts +41 -0
  276. package/lib-esm/schemas/file-request.js +3 -0
  277. package/lib-esm/schemas/file-request.js.map +1 -0
  278. package/lib-esm/schemas/file-version-base.generated.d.ts +19 -0
  279. package/lib-esm/schemas/file-version-base.generated.js +3 -0
  280. package/lib-esm/schemas/file-version-base.generated.js.map +1 -0
  281. package/lib-esm/schemas/file-version-mini.generated.d.ts +14 -0
  282. package/lib-esm/schemas/file-version-mini.generated.js +3 -0
  283. package/lib-esm/schemas/file-version-mini.generated.js.map +1 -0
  284. package/lib-esm/schemas/folder-base.generated.d.ts +32 -0
  285. package/lib-esm/schemas/folder-base.generated.js +3 -0
  286. package/lib-esm/schemas/folder-base.generated.js.map +1 -0
  287. package/lib-esm/schemas/folder-mini.generated.d.ts +31 -0
  288. package/lib-esm/schemas/folder-mini.generated.js +3 -0
  289. package/lib-esm/schemas/folder-mini.generated.js.map +1 -0
  290. package/lib-esm/schemas/index.d.ts +15 -0
  291. package/lib-esm/schemas/index.generated.d.ts +52 -0
  292. package/lib-esm/schemas/index.generated.js +69 -0
  293. package/lib-esm/schemas/index.generated.js.map +1 -0
  294. package/lib-esm/schemas/index.js +32 -0
  295. package/lib-esm/schemas/index.js.map +1 -0
  296. package/lib-esm/schemas/integration-mapping-base.d.ts +23 -0
  297. package/lib-esm/schemas/integration-mapping-base.js +3 -0
  298. package/lib-esm/schemas/integration-mapping-base.js.map +1 -0
  299. package/lib-esm/schemas/integration-mapping-box-item-slack.d.ts +17 -0
  300. package/lib-esm/schemas/integration-mapping-box-item-slack.js +3 -0
  301. package/lib-esm/schemas/integration-mapping-box-item-slack.js.map +1 -0
  302. package/lib-esm/schemas/integration-mapping-partner-item-slack.d.ts +27 -0
  303. package/lib-esm/schemas/integration-mapping-partner-item-slack.js +3 -0
  304. package/lib-esm/schemas/integration-mapping-partner-item-slack.js.map +1 -0
  305. package/lib-esm/schemas/integration-mapping-slack-create-request.d.ts +12 -0
  306. package/lib-esm/schemas/integration-mapping-slack-create-request.js +3 -0
  307. package/lib-esm/schemas/integration-mapping-slack-create-request.js.map +1 -0
  308. package/lib-esm/schemas/integration-mapping-slack-options.d.ts +16 -0
  309. package/lib-esm/schemas/integration-mapping-slack-options.js +3 -0
  310. package/lib-esm/schemas/integration-mapping-slack-options.js.map +1 -0
  311. package/lib-esm/schemas/integration-mapping.d.ts +55 -0
  312. package/lib-esm/schemas/integration-mapping.js +3 -0
  313. package/lib-esm/schemas/integration-mapping.js.map +1 -0
  314. package/lib-esm/schemas/integration-mappings.d.ts +27 -0
  315. package/lib-esm/schemas/integration-mappings.js +3 -0
  316. package/lib-esm/schemas/integration-mappings.js.map +1 -0
  317. package/lib-esm/schemas/shield-information-barrier-base.generated.d.ts +18 -0
  318. package/lib-esm/schemas/shield-information-barrier-base.generated.js +3 -0
  319. package/lib-esm/schemas/shield-information-barrier-base.generated.js.map +1 -0
  320. package/lib-esm/schemas/shield-information-barrier-reference.generated.d.ts +9 -0
  321. package/lib-esm/schemas/shield-information-barrier-reference.generated.js +3 -0
  322. package/lib-esm/schemas/shield-information-barrier-reference.generated.js.map +1 -0
  323. package/lib-esm/schemas/shield-information-barrier-report-base.generated.d.ts +18 -0
  324. package/lib-esm/schemas/shield-information-barrier-report-base.generated.js +3 -0
  325. package/lib-esm/schemas/shield-information-barrier-report-base.generated.js.map +1 -0
  326. package/lib-esm/schemas/shield-information-barrier-report-details.generated.d.ts +9 -0
  327. package/lib-esm/schemas/shield-information-barrier-report-details.generated.js +3 -0
  328. package/lib-esm/schemas/shield-information-barrier-report-details.generated.js.map +1 -0
  329. package/lib-esm/schemas/shield-information-barrier-report.generated.d.ts +32 -0
  330. package/lib-esm/schemas/shield-information-barrier-report.generated.js +3 -0
  331. package/lib-esm/schemas/shield-information-barrier-report.generated.js.map +1 -0
  332. package/lib-esm/schemas/shield-information-barrier-reports.generated.d.ts +26 -0
  333. package/lib-esm/schemas/shield-information-barrier-reports.generated.js +3 -0
  334. package/lib-esm/schemas/shield-information-barrier-reports.generated.js.map +1 -0
  335. package/lib-esm/schemas/shield-information-barrier-segment-member-base.generated.d.ts +19 -0
  336. package/lib-esm/schemas/shield-information-barrier-segment-member-base.generated.js +3 -0
  337. package/lib-esm/schemas/shield-information-barrier-segment-member-base.generated.js.map +1 -0
  338. package/lib-esm/schemas/shield-information-barrier-segment-member-mini.generated.d.ts +13 -0
  339. package/lib-esm/schemas/shield-information-barrier-segment-member-mini.generated.js +3 -0
  340. package/lib-esm/schemas/shield-information-barrier-segment-member-mini.generated.js.map +1 -0
  341. package/lib-esm/schemas/shield-information-barrier-segment-member.generated.d.ts +39 -0
  342. package/lib-esm/schemas/shield-information-barrier-segment-member.generated.js +3 -0
  343. package/lib-esm/schemas/shield-information-barrier-segment-member.generated.js.map +1 -0
  344. package/lib-esm/schemas/shield-information-barrier-segment-members.generated.d.ts +26 -0
  345. package/lib-esm/schemas/shield-information-barrier-segment-members.generated.js +3 -0
  346. package/lib-esm/schemas/shield-information-barrier-segment-members.generated.js.map +1 -0
  347. package/lib-esm/schemas/shield-information-barrier-segment-restriction-base.generated.d.ts +20 -0
  348. package/lib-esm/schemas/shield-information-barrier-segment-restriction-base.generated.js +3 -0
  349. package/lib-esm/schemas/shield-information-barrier-segment-restriction-base.generated.js.map +1 -0
  350. package/lib-esm/schemas/shield-information-barrier-segment-restriction-mini.generated.d.ts +20 -0
  351. package/lib-esm/schemas/shield-information-barrier-segment-restriction-mini.generated.js +3 -0
  352. package/lib-esm/schemas/shield-information-barrier-segment-restriction-mini.generated.js.map +1 -0
  353. package/lib-esm/schemas/shield-information-barrier-segment-restriction.generated.d.ts +33 -0
  354. package/lib-esm/schemas/shield-information-barrier-segment-restriction.generated.js +3 -0
  355. package/lib-esm/schemas/shield-information-barrier-segment-restriction.generated.js.map +1 -0
  356. package/lib-esm/schemas/shield-information-barrier-segment-restrictions.generated.d.ts +26 -0
  357. package/lib-esm/schemas/shield-information-barrier-segment-restrictions.generated.js +3 -0
  358. package/lib-esm/schemas/shield-information-barrier-segment-restrictions.generated.js.map +1 -0
  359. package/lib-esm/schemas/shield-information-barrier-segment.generated.d.ts +50 -0
  360. package/lib-esm/schemas/shield-information-barrier-segment.generated.js +3 -0
  361. package/lib-esm/schemas/shield-information-barrier-segment.generated.js.map +1 -0
  362. package/lib-esm/schemas/shield-information-barrier-segments.generated.d.ts +26 -0
  363. package/lib-esm/schemas/shield-information-barrier-segments.generated.js +3 -0
  364. package/lib-esm/schemas/shield-information-barrier-segments.generated.js.map +1 -0
  365. package/lib-esm/schemas/shield-information-barrier.generated.d.ts +56 -0
  366. package/lib-esm/schemas/shield-information-barrier.generated.js +3 -0
  367. package/lib-esm/schemas/shield-information-barrier.generated.js.map +1 -0
  368. package/lib-esm/schemas/shield-information-barriers.generated.d.ts +25 -0
  369. package/lib-esm/schemas/shield-information-barriers.generated.js +3 -0
  370. package/lib-esm/schemas/shield-information-barriers.generated.js.map +1 -0
  371. package/lib-esm/schemas/sign-request-base.generated.d.ts +78 -0
  372. package/lib-esm/schemas/sign-request-base.generated.js +3 -0
  373. package/lib-esm/schemas/sign-request-base.generated.js.map +1 -0
  374. package/lib-esm/schemas/sign-request-create-request.generated.d.ts +39 -0
  375. package/lib-esm/schemas/sign-request-create-request.generated.js +3 -0
  376. package/lib-esm/schemas/sign-request-create-request.generated.js.map +1 -0
  377. package/lib-esm/schemas/sign-request-create-signer.generated.d.ts +95 -0
  378. package/lib-esm/schemas/sign-request-create-signer.generated.js +3 -0
  379. package/lib-esm/schemas/sign-request-create-signer.generated.js.map +1 -0
  380. package/lib-esm/schemas/sign-request-prefill-tag.generated.d.ts +28 -0
  381. package/lib-esm/schemas/sign-request-prefill-tag.generated.js +3 -0
  382. package/lib-esm/schemas/sign-request-prefill-tag.generated.js.map +1 -0
  383. package/lib-esm/schemas/sign-request-signer-input.generated.d.ts +28 -0
  384. package/lib-esm/schemas/sign-request-signer-input.generated.js +3 -0
  385. package/lib-esm/schemas/sign-request-signer-input.generated.js.map +1 -0
  386. package/lib-esm/schemas/sign-request-signer.generated.d.ts +34 -0
  387. package/lib-esm/schemas/sign-request-signer.generated.js +3 -0
  388. package/lib-esm/schemas/sign-request-signer.generated.js.map +1 -0
  389. package/lib-esm/schemas/sign-request.generated.d.ts +72 -0
  390. package/lib-esm/schemas/sign-request.generated.js +3 -0
  391. package/lib-esm/schemas/sign-request.generated.js.map +1 -0
  392. package/lib-esm/schemas/sign-requests.generated.d.ts +25 -0
  393. package/lib-esm/schemas/sign-requests.generated.js +3 -0
  394. package/lib-esm/schemas/sign-requests.generated.js.map +1 -0
  395. package/lib-esm/schemas/sign-template.generated.d.ts +94 -0
  396. package/lib-esm/schemas/sign-template.generated.js +3 -0
  397. package/lib-esm/schemas/sign-template.generated.js.map +1 -0
  398. package/lib-esm/schemas/sign-templates.generated.d.ts +30 -0
  399. package/lib-esm/schemas/sign-templates.generated.js +3 -0
  400. package/lib-esm/schemas/sign-templates.generated.js.map +1 -0
  401. package/lib-esm/schemas/template-signer-input.generated.d.ts +61 -0
  402. package/lib-esm/schemas/template-signer-input.generated.js +3 -0
  403. package/lib-esm/schemas/template-signer-input.generated.js.map +1 -0
  404. package/lib-esm/schemas/template-signer.generated.d.ts +43 -0
  405. package/lib-esm/schemas/template-signer.generated.js +3 -0
  406. package/lib-esm/schemas/template-signer.generated.js.map +1 -0
  407. package/lib-esm/schemas/user-base.generated.d.ts +18 -0
  408. package/lib-esm/schemas/user-base.generated.js +3 -0
  409. package/lib-esm/schemas/user-base.generated.js.map +1 -0
  410. package/lib-esm/schemas/user-integration-mappings.d.ts +19 -0
  411. package/lib-esm/schemas/user-integration-mappings.js +3 -0
  412. package/lib-esm/schemas/user-integration-mappings.js.map +1 -0
  413. package/lib-esm/schemas/user-mini.d.ts +6 -0
  414. package/lib-esm/schemas/user-mini.js +3 -0
  415. package/lib-esm/schemas/user-mini.js.map +1 -0
  416. package/lib-esm/sessions/app-auth-session.d.ts +92 -0
  417. package/lib-esm/sessions/app-auth-session.js +176 -0
  418. package/lib-esm/sessions/app-auth-session.js.map +1 -0
  419. package/lib-esm/sessions/basic-session.d.ts +55 -0
  420. package/lib-esm/sessions/basic-session.js +62 -0
  421. package/lib-esm/sessions/basic-session.js.map +1 -0
  422. package/lib-esm/sessions/ccg-session.d.ts +72 -0
  423. package/lib-esm/sessions/ccg-session.js +111 -0
  424. package/lib-esm/sessions/ccg-session.js.map +1 -0
  425. package/lib-esm/sessions/persistent-session.d.ts +96 -0
  426. package/lib-esm/sessions/persistent-session.js +234 -0
  427. package/lib-esm/sessions/persistent-session.js.map +1 -0
  428. package/lib-esm/token-manager.d.ts +191 -0
  429. package/lib-esm/token-manager.js +453 -0
  430. package/lib-esm/token-manager.js.map +1 -0
  431. package/lib-esm/util/config.d.ts +85 -0
  432. package/lib-esm/util/config.js +212 -0
  433. package/lib-esm/util/config.js.map +1 -0
  434. package/lib-esm/util/errors.d.ts +50 -0
  435. package/lib-esm/util/errors.js +176 -0
  436. package/lib-esm/util/errors.js.map +1 -0
  437. package/lib-esm/util/exponential-backoff.d.ts +11 -0
  438. package/lib-esm/util/exponential-backoff.js +17 -0
  439. package/lib-esm/util/exponential-backoff.js.map +1 -0
  440. package/lib-esm/util/paging-iterator.d.ts +53 -0
  441. package/lib-esm/util/paging-iterator.js +247 -0
  442. package/lib-esm/util/paging-iterator.js.map +1 -0
  443. package/lib-esm/util/serializable.d.ts +10 -0
  444. package/lib-esm/util/serializable.js +17 -0
  445. package/lib-esm/util/serializable.js.map +1 -0
  446. package/lib-esm/util/url-path.d.ts +16 -0
  447. package/lib-esm/util/url-path.js +36 -0
  448. package/lib-esm/util/url-path.js.map +1 -0
  449. package/package.json +33 -28
@@ -0,0 +1,247 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview Iterator for paged responses
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || (function () {
22
+ var ownKeys = function(o) {
23
+ ownKeys = Object.getOwnPropertyNames || function (o) {
24
+ var ar = [];
25
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
+ return ar;
27
+ };
28
+ return ownKeys(o);
29
+ };
30
+ return function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
+ __setModuleDefault(result, mod);
35
+ return result;
36
+ };
37
+ })();
38
+ const qs = __importStar(require("querystring"));
39
+ const bluebird_1 = require("bluebird");
40
+ const PromiseQueue = require("promise-queue");
41
+ // -----------------------------------------------------------------------------
42
+ // Typedefs
43
+ // -----------------------------------------------------------------------------
44
+ /**
45
+ * The iterator response object
46
+ * @typedef {Object} IteratorData
47
+ * @property {Array} [value] - The next set of values from the iterator
48
+ * @property {boolean} done - Whether the iterator is completed
49
+ */
50
+ /**
51
+ * Iterator callback
52
+ * @callback IteratorCallback
53
+ * @param {?Error} err - An error if the iterator encountered one
54
+ * @param {IteratorData} [data] - New data from the iterator
55
+ * @returns {void}
56
+ */
57
+ // -----------------------------------------------------------------------------
58
+ // Requirements
59
+ // -----------------------------------------------------------------------------
60
+ const errors = require('./errors');
61
+ PromiseQueue.configure(bluebird_1.Promise);
62
+ // -----------------------------------------------------------------------------
63
+ // Private
64
+ // -----------------------------------------------------------------------------
65
+ const PAGING_MODES = Object.freeze({
66
+ MARKER: 'marker',
67
+ OFFSET: 'offset',
68
+ });
69
+ // -----------------------------------------------------------------------------
70
+ // Public
71
+ // -----------------------------------------------------------------------------
72
+ /**
73
+ * Asynchronous iterator for paged collections
74
+ */
75
+ class PagingIterator {
76
+ /**
77
+ * Determine if a response is iterable
78
+ * @param {Object} response - The API response
79
+ * @returns {boolean} Whether the response is iterable
80
+ */
81
+ static isIterable(response /* FIXME */) {
82
+ // POST responses for uploading a file are explicitly excluded here because, while the response is iterable,
83
+ // it always contains only a single entry and historically has not been handled as iterable in the SDK.
84
+ // This behavior is being preserved here to avoid a breaking change.
85
+ let UPLOAD_PATTERN = /.*upload\.box\.com.*\/content/;
86
+ var isGetOrPostRequest = response.request &&
87
+ (response.request.method === 'GET' ||
88
+ (response.request.method === 'POST' &&
89
+ !UPLOAD_PATTERN.test(response.request.uri.href))), hasEntries = response.body && Array.isArray(response.body.entries), notEventStream = response.body && !response.body.next_stream_position;
90
+ return Boolean(isGetOrPostRequest && hasEntries && notEventStream);
91
+ }
92
+ /**
93
+ * @constructor
94
+ * @param {Object} response - The original API response
95
+ * @param {BoxClient} client - An API client to make further requests
96
+ * @returns {void}
97
+ * @throws {Error} Will throw when collection cannot be paged
98
+ */
99
+ constructor(response /* FIXME */, client /* FIXME */) {
100
+ if (!PagingIterator.isIterable(response)) {
101
+ throw new Error('Cannot create paging iterator for non-paged response!');
102
+ }
103
+ var data = response.body;
104
+ if (Number.isSafeInteger(data.offset)) {
105
+ this.nextField = PAGING_MODES.OFFSET;
106
+ this.nextValue = data.offset;
107
+ }
108
+ else if (typeof data.next_marker === 'undefined') {
109
+ // Default to a finished marker collection when there's no field present,
110
+ // since some endpoints indicate completed paging this way
111
+ this.nextField = PAGING_MODES.MARKER;
112
+ this.nextValue = null;
113
+ }
114
+ else {
115
+ this.nextField = PAGING_MODES.MARKER;
116
+ this.nextValue = data.next_marker;
117
+ }
118
+ this.limit = data.limit || data.entries.length;
119
+ this.done = false;
120
+ var href = response.request.href.split('?')[0];
121
+ this.options = {
122
+ headers: response.request.headers,
123
+ qs: qs.parse(response.request.uri.query),
124
+ };
125
+ if (response.request.body) {
126
+ if (Object.prototype.toString.call(response.request.body) ===
127
+ '[object Object]') {
128
+ this.options.body = response.request.body;
129
+ }
130
+ else {
131
+ this.options.body = JSON.parse(response.request.body);
132
+ }
133
+ }
134
+ // querystring.parse() makes everything a string, ensure numeric params are the correct type
135
+ if (this.options.qs.limit) {
136
+ this.options.qs.limit = parseInt(this.options.qs.limit, 10);
137
+ }
138
+ if (this.options.qs.offset) {
139
+ this.options.qs.offset = parseInt(this.options.qs.offset, 10);
140
+ }
141
+ delete this.options.headers.Authorization;
142
+ if (response.request.method === 'GET') {
143
+ this.fetch = client.get.bind(client, href);
144
+ }
145
+ if (response.request.method === 'POST') {
146
+ this.fetch = client.post.bind(client, href);
147
+ }
148
+ this.buffer = response.body.entries;
149
+ this.queue = new PromiseQueue(1, Infinity);
150
+ this._updatePaging(response);
151
+ }
152
+ /**
153
+ * Update the paging parameters for the iterator
154
+ * @private
155
+ * @param {Object} response - The latest API response
156
+ * @returns {void}
157
+ */
158
+ _updatePaging(response /* FIXME */) {
159
+ var data = response.body;
160
+ if (this.nextField === PAGING_MODES.OFFSET) {
161
+ this.nextValue += this.limit;
162
+ if (Number.isSafeInteger(data.total_count)) {
163
+ this.done = data.offset + this.limit >= data.total_count;
164
+ }
165
+ else {
166
+ this.done = data.entries.length === 0;
167
+ }
168
+ }
169
+ else if (this.nextField === PAGING_MODES.MARKER) {
170
+ if (data.next_marker) {
171
+ this.nextValue = data.next_marker;
172
+ }
173
+ else {
174
+ this.nextValue = null;
175
+ this.done = true;
176
+ }
177
+ }
178
+ if (response.request.method === 'GET') {
179
+ this.options.qs[this.nextField] = this.nextValue;
180
+ }
181
+ else if (response.request.method === 'POST') {
182
+ if (!this.options.body) {
183
+ this.options.body = {};
184
+ }
185
+ this.options.body[this.nextField] = this.nextValue;
186
+ let bodyString = JSON.stringify(this.options.body);
187
+ this.options.headers['content-length'] = bodyString.length;
188
+ }
189
+ }
190
+ /**
191
+ * Fetch the next page of results
192
+ * @returns {Promise} Promise resolving to iterator state
193
+ */
194
+ _getData() {
195
+ return this.fetch(this.options).then((response /* FIXME */) => {
196
+ if (response.statusCode !== 200) {
197
+ throw errors.buildUnexpectedResponseError(response);
198
+ }
199
+ this._updatePaging(response);
200
+ this.buffer = this.buffer.concat(response.body.entries);
201
+ if (this.buffer.length === 0) {
202
+ if (this.done) {
203
+ return {
204
+ value: undefined,
205
+ done: true,
206
+ };
207
+ }
208
+ // If we didn't get any data in this page, but the paging
209
+ // parameters indicate that there is more data, attempt
210
+ // to fetch more. This occurs in multiple places in the API
211
+ return this._getData();
212
+ }
213
+ return {
214
+ value: this.buffer.shift(),
215
+ done: false,
216
+ };
217
+ });
218
+ }
219
+ /**
220
+ * Fetch the next page of the collection
221
+ * @returns {Promise} Promise resolving to iterator state
222
+ */
223
+ next() {
224
+ if (this.buffer.length > 0) {
225
+ return bluebird_1.Promise.resolve({
226
+ value: this.buffer.shift(),
227
+ done: false,
228
+ });
229
+ }
230
+ if (this.done) {
231
+ return bluebird_1.Promise.resolve({
232
+ value: undefined,
233
+ done: true,
234
+ });
235
+ }
236
+ return this.queue.add(this._getData.bind(this));
237
+ }
238
+ /**
239
+ * Fetch the next marker
240
+ * @returns {string|int} String that is the next marker or int that is the next offset
241
+ */
242
+ getNextMarker() {
243
+ return this.nextValue;
244
+ }
245
+ }
246
+ module.exports = PagingIterator;
247
+ //# sourceMappingURL=paging-iterator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paging-iterator.js","sourceRoot":"","sources":["../../src/util/paging-iterator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ export declare class Serializable<T> {
2
+ constructor(options: {
3
+ serialize: (value: T) => any;
4
+ deserialize: (data: any) => T;
5
+ });
6
+ readonly serialize: (value: T | undefined) => any;
7
+ readonly deserialize: (data: any) => T;
8
+ serializeArray(value: T[] | undefined): any[];
9
+ deserializeArray(data: any[]): T[];
10
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Serializable = void 0;
4
+ class Serializable {
5
+ constructor(options) {
6
+ this.serialize = options.serialize;
7
+ this.deserialize = options.deserialize;
8
+ }
9
+ serializeArray(value) {
10
+ return (value || []).map(this.serialize);
11
+ }
12
+ deserializeArray(data) {
13
+ return data.map(this.deserialize);
14
+ }
15
+ }
16
+ exports.Serializable = Serializable;
17
+ //# sourceMappingURL=serializable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serializable.js","sourceRoot":"","sources":["../../src/util/serializable.ts"],"names":[],"mappings":";;;AAAA,MAAa,YAAY;IACvB,YAAY,OAGX;QACC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAgB,CAAC;QAC1C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IACzC,CAAC;IAKD,cAAc,CAAC,KAAsB;QACnC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED,gBAAgB,CAAC,IAAW;QAC1B,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACpC,CAAC;CACF;AAnBD,oCAmBC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @fileoverview URL Path Builder
3
+ */
4
+ /**
5
+ * URLPath will create a full URL path from the given array of segments.
6
+ *
7
+ * It also provides the following features:
8
+ * - convert all segments to strings
9
+ * - add/remove slashes between segments, where appropriate
10
+ * - encode each path segment to prevent path manipulation
11
+ *
12
+ * @name URLPath
13
+ * @returns {string} Return a valid URL path comprised of the given path segments
14
+ */
15
+ declare const _default: (...args: any[]) => string;
16
+ export = _default;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview URL Path Builder
4
+ */
5
+ // ------------------------------------------------------------------------------
6
+ // Private
7
+ // ------------------------------------------------------------------------------
8
+ // Pattern to check for relative paths
9
+ const PATTERN = /\/\.+/;
10
+ /**
11
+ * remove leading & trailing slashes from some string. This is useful for
12
+ * removing slashes from the path segments that are actually a part of the
13
+ * path itself. Without this step, these slashes would be uri-encoded.
14
+ *
15
+ * @param {string} segment The path segment (ex: '/users')
16
+ * @returns {string} The path segment with slashes trimmed (ex: 'users')
17
+ * @private
18
+ */
19
+ function trimSlashes(segment) {
20
+ return segment.replace(/^\/|\/$/g, '');
21
+ }
22
+ module.exports = function urlPath(...args) {
23
+ const path = args
24
+ .map((x) => String(x))
25
+ .map((x) => {
26
+ var trimmedX = trimSlashes(x);
27
+ if (PATTERN.test(trimmedX)) {
28
+ throw new Error(`An invalid path parameter exists in ${trimmedX}. Relative path parameters cannot be passed.`);
29
+ }
30
+ return trimmedX;
31
+ })
32
+ .map((x) => encodeURIComponent(x))
33
+ .join('/');
34
+ return `/${path}`;
35
+ };
36
+ //# sourceMappingURL=url-path.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"url-path.js","sourceRoot":"","sources":["../../src/util/url-path.ts"],"names":[],"mappings":";AAAA;;GAEG;AAEH,iFAAiF;AACjF,UAAU;AACV,iFAAiF;AAEjF,sCAAsC;AACtC,MAAM,OAAO,GAAG,OAAO,CAAC;AAExB;;;;;;;;GAQG;AACH,SAAS,WAAW,CAAC,OAAe;IAClC,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AACzC,CAAC;AAiBD,iBAAS,SAAS,OAAO,CAAC,GAAG,IAAW;IACtC,MAAM,IAAI,GAAG,IAAI;SACd,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;SACrB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,IAAI,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CACb,uCAAuC,QAAQ,8CAA8C,CAC9F,CAAC;QACJ,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;SACjC,IAAI,CAAC,GAAG,CAAC,CAAC;IACb,OAAO,IAAI,IAAI,EAAE,CAAC;AACpB,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "box-node-sdk",
3
3
  "author": "Box <oss@box.com>",
4
- "version": "3.8.0",
4
+ "version": "3.8.2",
5
5
  "description": "Official SDK for Box Plaform APIs",
6
6
  "license": "Apache-2.0",
7
7
  "repository": {
@@ -21,76 +21,81 @@
21
21
  "node": ">= 14.0.0"
22
22
  },
23
23
  "main": "./lib/box-node-sdk.js",
24
+ "module": "./lib-esm/box-node-sdk.js",
25
+ "exports": {
26
+ ".": {
27
+ "import": "./lib-esm/box-node-sdk.js",
28
+ "require": "./lib/box-node-sdk.js"
29
+ },
30
+ "./*": {
31
+ "import": "./lib-esm/*.js",
32
+ "require": "./lib/*.js"
33
+ }
34
+ },
24
35
  "scripts": {
25
- "test": "node Makefile.js",
36
+ "test": "npm run build && nyc mocha",
26
37
  "jest": "npm run build && jest",
27
- "build": "node Makefile.js build",
28
- "codegen": "ts-node codegen/codegen.tsx",
29
- "lint": "node Makefile.js lint",
30
- "docs": "node Makefile.js docs",
31
- "docs-dev": "node Makefile.js docsDev",
38
+ "build": "npm run build:cjs && npm run build:esm",
39
+ "build:cjs": "tsc --project tsconfig.json",
40
+ "build:esm": "tsc --project tsconfig.esm.json",
41
+ "codegen": "cd codegen && npm run codegen",
42
+ "docs": "jsdoc -p -r -c ./jsdoc.json -d ./docs/jsdoc ./src/",
32
43
  "doctoc": "doctoc docs",
33
44
  "deps": "npm prune && npm install",
34
- "changelog": "node node_modules/standard-version/bin/cli.js --skip.commit --skip.push --skip.tag --dry-run"
45
+ "changelog": "node node_modules/standard-version/bin/cli.js --skip.commit --skip.push --skip.tag --dry-run",
46
+ "prettier": "npx prettier --write ."
35
47
  },
36
48
  "dependencies": {
37
- "@cypress/request": "^3.0.1",
49
+ "@cypress/request": "^3.0.9",
38
50
  "@types/bluebird": "^3.5.35",
39
51
  "@types/node": "^18.15.3",
40
52
  "ajv": "^6.12.3",
41
53
  "bluebird": "^3.7.2",
42
54
  "http-status": "^1.4.1",
43
55
  "jsonwebtoken": "^9.0.2",
44
- "merge-options": "^1.0.1",
56
+ "merge-options": "^3.0.4",
45
57
  "promise-queue": "^2.2.3",
46
58
  "proxy-agent": "^6.4.0",
47
59
  "url-template": "^2.0.8",
48
60
  "uuid": "^9.0.0"
49
61
  },
50
62
  "devDependencies": {
51
- "@types/jest": "^28.1.1",
63
+ "@types/jest": "^29.5.14",
52
64
  "@types/jsonwebtoken": "^8.5.1",
53
- "@types/lodash": "^4.14.172",
54
65
  "@types/prettier": "^2.3.2",
55
66
  "@types/promise-queue": "^2.2.0",
56
- "@types/shelljs": "^0.8.9",
57
67
  "@types/url-template": "^2.0.28",
58
68
  "@types/uuid": "^9.0.1",
59
69
  "better-docs": "^2.7.2",
60
70
  "chai": "^4.2.0",
61
71
  "doctoc": "^2.2.1",
62
- "eslint": "^6.8.0",
72
+ "eslint": "^9.28.0",
73
+ "eslint-config-prettier": "^10.1.5",
63
74
  "eslint-plugin-jest": "^23.20.0",
64
75
  "eslint-plugin-node": "^11.1.0",
65
76
  "eslint-plugin-promise": "^4.3.1",
66
77
  "eslint-plugin-unicorn": "^4.0.3",
67
- "istanbul": "^0.4.3",
68
- "jest": "^28.1.3",
78
+ "jest": "^29.7.0",
69
79
  "jsdoc": "^4.0.4",
70
- "jsonlint": "^1.6.3",
71
- "jsonlint2": "^1.7.1",
72
80
  "leche": "^2.3.0",
73
- "lodash": "^4.17.21",
74
- "mocha": "^10.2.0",
81
+ "mocha": "^10.8.2",
75
82
  "mockery": "^2.1.0",
76
83
  "nock": "^13.3.1",
77
84
  "nyc": "^14.0.0",
78
- "prettier": "^2.3.2",
79
- "shelljs": "^0.8.5",
80
- "shelljs-nodecli": "^0.1.1",
85
+ "prettier": "^3.5.3",
81
86
  "sinon": "^7.5.0",
82
87
  "standard-version": "^9.3.2",
83
- "ts-jest": "^28.0.8",
84
- "ts-node": "^10.2.0",
85
- "typescript": "^4.2.4"
88
+ "ts-jest": "^29.1.0",
89
+ "typescript": "^5.8.2"
86
90
  },
87
- "overrides": {
91
+ "overrides": {
88
92
  "leche": {
89
93
  "mocha": ">=1.18"
90
94
  }
91
95
  },
92
96
  "files": [
93
97
  "config",
94
- "lib"
98
+ "lib",
99
+ "lib-esm"
95
100
  ]
96
101
  }