@stainlessdev/xray 0.5.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 (390) hide show
  1. package/CHANGELOG.md +109 -0
  2. package/LICENSE +201 -0
  3. package/README.md +401 -0
  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 +181 -0
  13. package/client.d.mts.map +1 -0
  14. package/client.d.ts +181 -0
  15. package/client.d.ts.map +1 -0
  16. package/client.js +477 -0
  17. package/client.js.map +1 -0
  18. package/client.mjs +473 -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/pagination.d.mts +57 -0
  37. package/core/pagination.d.mts.map +1 -0
  38. package/core/pagination.d.ts +57 -0
  39. package/core/pagination.d.ts.map +1 -0
  40. package/core/pagination.js +108 -0
  41. package/core/pagination.js.map +1 -0
  42. package/core/pagination.mjs +102 -0
  43. package/core/pagination.mjs.map +1 -0
  44. package/core/resource.d.mts +6 -0
  45. package/core/resource.d.mts.map +1 -0
  46. package/core/resource.d.ts +6 -0
  47. package/core/resource.d.ts.map +1 -0
  48. package/core/resource.js +11 -0
  49. package/core/resource.js.map +1 -0
  50. package/core/resource.mjs +7 -0
  51. package/core/resource.mjs.map +1 -0
  52. package/core/uploads.d.mts +3 -0
  53. package/core/uploads.d.mts.map +1 -0
  54. package/core/uploads.d.ts +3 -0
  55. package/core/uploads.d.ts.map +1 -0
  56. package/core/uploads.js +6 -0
  57. package/core/uploads.js.map +1 -0
  58. package/core/uploads.mjs +2 -0
  59. package/core/uploads.mjs.map +1 -0
  60. package/error.d.mts +2 -0
  61. package/error.d.mts.map +1 -0
  62. package/error.d.ts +2 -0
  63. package/error.d.ts.map +1 -0
  64. package/error.js +6 -0
  65. package/error.js.map +1 -0
  66. package/error.mjs +2 -0
  67. package/error.mjs.map +1 -0
  68. package/index.d.mts +7 -0
  69. package/index.d.mts.map +1 -0
  70. package/index.d.ts +7 -0
  71. package/index.d.ts.map +1 -0
  72. package/index.js +32 -0
  73. package/index.js.map +1 -0
  74. package/index.mjs +8 -0
  75. package/index.mjs.map +1 -0
  76. package/internal/builtin-types.d.mts +73 -0
  77. package/internal/builtin-types.d.mts.map +1 -0
  78. package/internal/builtin-types.d.ts +73 -0
  79. package/internal/builtin-types.d.ts.map +1 -0
  80. package/internal/builtin-types.js +4 -0
  81. package/internal/builtin-types.js.map +1 -0
  82. package/internal/builtin-types.mjs +3 -0
  83. package/internal/builtin-types.mjs.map +1 -0
  84. package/internal/detect-platform.d.mts +15 -0
  85. package/internal/detect-platform.d.mts.map +1 -0
  86. package/internal/detect-platform.d.ts +15 -0
  87. package/internal/detect-platform.d.ts.map +1 -0
  88. package/internal/detect-platform.js +162 -0
  89. package/internal/detect-platform.js.map +1 -0
  90. package/internal/detect-platform.mjs +157 -0
  91. package/internal/detect-platform.mjs.map +1 -0
  92. package/internal/errors.d.mts +3 -0
  93. package/internal/errors.d.mts.map +1 -0
  94. package/internal/errors.d.ts +3 -0
  95. package/internal/errors.d.ts.map +1 -0
  96. package/internal/errors.js +41 -0
  97. package/internal/errors.js.map +1 -0
  98. package/internal/errors.mjs +36 -0
  99. package/internal/errors.mjs.map +1 -0
  100. package/internal/headers.d.mts +20 -0
  101. package/internal/headers.d.mts.map +1 -0
  102. package/internal/headers.d.ts +20 -0
  103. package/internal/headers.d.ts.map +1 -0
  104. package/internal/headers.js +79 -0
  105. package/internal/headers.js.map +1 -0
  106. package/internal/headers.mjs +74 -0
  107. package/internal/headers.mjs.map +1 -0
  108. package/internal/parse.d.mts +12 -0
  109. package/internal/parse.d.mts.map +1 -0
  110. package/internal/parse.d.ts +12 -0
  111. package/internal/parse.d.ts.map +1 -0
  112. package/internal/parse.js +40 -0
  113. package/internal/parse.js.map +1 -0
  114. package/internal/parse.mjs +37 -0
  115. package/internal/parse.mjs.map +1 -0
  116. package/internal/qs/formats.d.mts +7 -0
  117. package/internal/qs/formats.d.mts.map +1 -0
  118. package/internal/qs/formats.d.ts +7 -0
  119. package/internal/qs/formats.d.ts.map +1 -0
  120. package/internal/qs/formats.js +13 -0
  121. package/internal/qs/formats.js.map +1 -0
  122. package/internal/qs/formats.mjs +9 -0
  123. package/internal/qs/formats.mjs.map +1 -0
  124. package/internal/qs/index.d.mts +10 -0
  125. package/internal/qs/index.d.mts.map +1 -0
  126. package/internal/qs/index.d.ts +10 -0
  127. package/internal/qs/index.d.ts.map +1 -0
  128. package/internal/qs/index.js +14 -0
  129. package/internal/qs/index.js.map +1 -0
  130. package/internal/qs/index.mjs +10 -0
  131. package/internal/qs/index.mjs.map +1 -0
  132. package/internal/qs/stringify.d.mts +3 -0
  133. package/internal/qs/stringify.d.mts.map +1 -0
  134. package/internal/qs/stringify.d.ts +3 -0
  135. package/internal/qs/stringify.d.ts.map +1 -0
  136. package/internal/qs/stringify.js +277 -0
  137. package/internal/qs/stringify.js.map +1 -0
  138. package/internal/qs/stringify.mjs +274 -0
  139. package/internal/qs/stringify.mjs.map +1 -0
  140. package/internal/qs/types.d.mts +57 -0
  141. package/internal/qs/types.d.mts.map +1 -0
  142. package/internal/qs/types.d.ts +57 -0
  143. package/internal/qs/types.d.ts.map +1 -0
  144. package/internal/qs/types.js +3 -0
  145. package/internal/qs/types.js.map +1 -0
  146. package/internal/qs/types.mjs +2 -0
  147. package/internal/qs/types.mjs.map +1 -0
  148. package/internal/qs/utils.d.mts +15 -0
  149. package/internal/qs/utils.d.mts.map +1 -0
  150. package/internal/qs/utils.d.ts +15 -0
  151. package/internal/qs/utils.d.ts.map +1 -0
  152. package/internal/qs/utils.js +230 -0
  153. package/internal/qs/utils.js.map +1 -0
  154. package/internal/qs/utils.mjs +217 -0
  155. package/internal/qs/utils.mjs.map +1 -0
  156. package/internal/request-options.d.mts +75 -0
  157. package/internal/request-options.d.mts.map +1 -0
  158. package/internal/request-options.d.ts +75 -0
  159. package/internal/request-options.d.ts.map +1 -0
  160. package/internal/request-options.js +14 -0
  161. package/internal/request-options.js.map +1 -0
  162. package/internal/request-options.mjs +10 -0
  163. package/internal/request-options.mjs.map +1 -0
  164. package/internal/shim-types.d.mts +17 -0
  165. package/internal/shim-types.d.mts.map +1 -0
  166. package/internal/shim-types.d.ts +17 -0
  167. package/internal/shim-types.d.ts.map +1 -0
  168. package/internal/shim-types.js +4 -0
  169. package/internal/shim-types.js.map +1 -0
  170. package/internal/shim-types.mjs +3 -0
  171. package/internal/shim-types.mjs.map +1 -0
  172. package/internal/shims.d.mts +20 -0
  173. package/internal/shims.d.mts.map +1 -0
  174. package/internal/shims.d.ts +20 -0
  175. package/internal/shims.d.ts.map +1 -0
  176. package/internal/shims.js +92 -0
  177. package/internal/shims.js.map +1 -0
  178. package/internal/shims.mjs +85 -0
  179. package/internal/shims.mjs.map +1 -0
  180. package/internal/to-file.d.mts +45 -0
  181. package/internal/to-file.d.mts.map +1 -0
  182. package/internal/to-file.d.ts +45 -0
  183. package/internal/to-file.d.ts.map +1 -0
  184. package/internal/to-file.js +91 -0
  185. package/internal/to-file.js.map +1 -0
  186. package/internal/to-file.mjs +88 -0
  187. package/internal/to-file.mjs.map +1 -0
  188. package/internal/tslib.js +81 -0
  189. package/internal/tslib.mjs +17 -0
  190. package/internal/types.d.mts +69 -0
  191. package/internal/types.d.mts.map +1 -0
  192. package/internal/types.d.ts +69 -0
  193. package/internal/types.d.ts.map +1 -0
  194. package/internal/types.js +4 -0
  195. package/internal/types.js.map +1 -0
  196. package/internal/types.mjs +3 -0
  197. package/internal/types.mjs.map +1 -0
  198. package/internal/uploads.d.mts +42 -0
  199. package/internal/uploads.d.mts.map +1 -0
  200. package/internal/uploads.d.ts +42 -0
  201. package/internal/uploads.d.ts.map +1 -0
  202. package/internal/uploads.js +141 -0
  203. package/internal/uploads.js.map +1 -0
  204. package/internal/uploads.mjs +131 -0
  205. package/internal/uploads.mjs.map +1 -0
  206. package/internal/utils/base64.d.mts +3 -0
  207. package/internal/utils/base64.d.mts.map +1 -0
  208. package/internal/utils/base64.d.ts +3 -0
  209. package/internal/utils/base64.d.ts.map +1 -0
  210. package/internal/utils/base64.js +38 -0
  211. package/internal/utils/base64.js.map +1 -0
  212. package/internal/utils/base64.mjs +33 -0
  213. package/internal/utils/base64.mjs.map +1 -0
  214. package/internal/utils/bytes.d.mts +4 -0
  215. package/internal/utils/bytes.d.mts.map +1 -0
  216. package/internal/utils/bytes.d.ts +4 -0
  217. package/internal/utils/bytes.d.ts.map +1 -0
  218. package/internal/utils/bytes.js +31 -0
  219. package/internal/utils/bytes.js.map +1 -0
  220. package/internal/utils/bytes.mjs +26 -0
  221. package/internal/utils/bytes.mjs.map +1 -0
  222. package/internal/utils/env.d.mts +9 -0
  223. package/internal/utils/env.d.mts.map +1 -0
  224. package/internal/utils/env.d.ts +9 -0
  225. package/internal/utils/env.d.ts.map +1 -0
  226. package/internal/utils/env.js +22 -0
  227. package/internal/utils/env.js.map +1 -0
  228. package/internal/utils/env.mjs +18 -0
  229. package/internal/utils/env.mjs.map +1 -0
  230. package/internal/utils/log.d.mts +37 -0
  231. package/internal/utils/log.d.mts.map +1 -0
  232. package/internal/utils/log.d.ts +37 -0
  233. package/internal/utils/log.d.ts.map +1 -0
  234. package/internal/utils/log.js +85 -0
  235. package/internal/utils/log.js.map +1 -0
  236. package/internal/utils/log.mjs +79 -0
  237. package/internal/utils/log.mjs.map +1 -0
  238. package/internal/utils/path.d.mts +15 -0
  239. package/internal/utils/path.d.mts.map +1 -0
  240. package/internal/utils/path.d.ts +15 -0
  241. package/internal/utils/path.d.ts.map +1 -0
  242. package/internal/utils/path.js +79 -0
  243. package/internal/utils/path.js.map +1 -0
  244. package/internal/utils/path.mjs +74 -0
  245. package/internal/utils/path.mjs.map +1 -0
  246. package/internal/utils/query.d.mts +2 -0
  247. package/internal/utils/query.d.mts.map +1 -0
  248. package/internal/utils/query.d.ts +2 -0
  249. package/internal/utils/query.d.ts.map +1 -0
  250. package/internal/utils/query.js +10 -0
  251. package/internal/utils/query.js.map +1 -0
  252. package/internal/utils/query.mjs +6 -0
  253. package/internal/utils/query.mjs.map +1 -0
  254. package/internal/utils/sleep.d.mts +2 -0
  255. package/internal/utils/sleep.d.mts.map +1 -0
  256. package/internal/utils/sleep.d.ts +2 -0
  257. package/internal/utils/sleep.d.ts.map +1 -0
  258. package/internal/utils/sleep.js +7 -0
  259. package/internal/utils/sleep.js.map +1 -0
  260. package/internal/utils/sleep.mjs +3 -0
  261. package/internal/utils/sleep.mjs.map +1 -0
  262. package/internal/utils/uuid.d.mts +5 -0
  263. package/internal/utils/uuid.d.mts.map +1 -0
  264. package/internal/utils/uuid.d.ts +5 -0
  265. package/internal/utils/uuid.d.ts.map +1 -0
  266. package/internal/utils/uuid.js +19 -0
  267. package/internal/utils/uuid.js.map +1 -0
  268. package/internal/utils/uuid.mjs +15 -0
  269. package/internal/utils/uuid.mjs.map +1 -0
  270. package/internal/utils/values.d.mts +18 -0
  271. package/internal/utils/values.d.mts.map +1 -0
  272. package/internal/utils/values.d.ts +18 -0
  273. package/internal/utils/values.d.ts.map +1 -0
  274. package/internal/utils/values.js +112 -0
  275. package/internal/utils/values.js.map +1 -0
  276. package/internal/utils/values.mjs +94 -0
  277. package/internal/utils/values.mjs.map +1 -0
  278. package/internal/utils.d.mts +8 -0
  279. package/internal/utils.d.mts.map +1 -0
  280. package/internal/utils.d.ts +8 -0
  281. package/internal/utils.d.ts.map +1 -0
  282. package/internal/utils.js +12 -0
  283. package/internal/utils.js.map +1 -0
  284. package/internal/utils.mjs +9 -0
  285. package/internal/utils.mjs.map +1 -0
  286. package/package.json +147 -0
  287. package/pagination.d.mts +2 -0
  288. package/pagination.d.mts.map +1 -0
  289. package/pagination.d.ts +2 -0
  290. package/pagination.d.ts.map +1 -0
  291. package/pagination.js +6 -0
  292. package/pagination.js.map +1 -0
  293. package/pagination.mjs +2 -0
  294. package/pagination.mjs.map +1 -0
  295. package/resource.d.mts +2 -0
  296. package/resource.d.mts.map +1 -0
  297. package/resource.d.ts +2 -0
  298. package/resource.d.ts.map +1 -0
  299. package/resource.js +6 -0
  300. package/resource.js.map +1 -0
  301. package/resource.mjs +2 -0
  302. package/resource.mjs.map +1 -0
  303. package/resources/index.d.mts +2 -0
  304. package/resources/index.d.mts.map +1 -0
  305. package/resources/index.d.ts +2 -0
  306. package/resources/index.d.ts.map +1 -0
  307. package/resources/index.js +7 -0
  308. package/resources/index.js.map +1 -0
  309. package/resources/index.mjs +3 -0
  310. package/resources/index.mjs.map +1 -0
  311. package/resources/request-logs.d.mts +324 -0
  312. package/resources/request-logs.d.mts.map +1 -0
  313. package/resources/request-logs.d.ts +324 -0
  314. package/resources/request-logs.d.ts.map +1 -0
  315. package/resources/request-logs.js +62 -0
  316. package/resources/request-logs.js.map +1 -0
  317. package/resources/request-logs.mjs +58 -0
  318. package/resources/request-logs.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 +768 -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/pagination.ts +169 -0
  333. package/src/core/resource.ts +11 -0
  334. package/src/core/uploads.ts +2 -0
  335. package/src/error.ts +2 -0
  336. package/src/index.ts +23 -0
  337. package/src/internal/README.md +3 -0
  338. package/src/internal/builtin-types.ts +93 -0
  339. package/src/internal/detect-platform.ts +196 -0
  340. package/src/internal/errors.ts +33 -0
  341. package/src/internal/headers.ts +97 -0
  342. package/src/internal/parse.ts +56 -0
  343. package/src/internal/qs/LICENSE.md +13 -0
  344. package/src/internal/qs/README.md +3 -0
  345. package/src/internal/qs/formats.ts +10 -0
  346. package/src/internal/qs/index.ts +13 -0
  347. package/src/internal/qs/stringify.ts +385 -0
  348. package/src/internal/qs/types.ts +71 -0
  349. package/src/internal/qs/utils.ts +265 -0
  350. package/src/internal/request-options.ts +91 -0
  351. package/src/internal/shim-types.ts +26 -0
  352. package/src/internal/shims.ts +107 -0
  353. package/src/internal/to-file.ts +154 -0
  354. package/src/internal/types.ts +95 -0
  355. package/src/internal/uploads.ts +187 -0
  356. package/src/internal/utils/base64.ts +40 -0
  357. package/src/internal/utils/bytes.ts +32 -0
  358. package/src/internal/utils/env.ts +18 -0
  359. package/src/internal/utils/log.ts +126 -0
  360. package/src/internal/utils/path.ts +88 -0
  361. package/src/internal/utils/query.ts +7 -0
  362. package/src/internal/utils/sleep.ts +3 -0
  363. package/src/internal/utils/uuid.ts +17 -0
  364. package/src/internal/utils/values.ts +105 -0
  365. package/src/internal/utils.ts +9 -0
  366. package/src/lib/.keep +4 -0
  367. package/src/pagination.ts +2 -0
  368. package/src/resource.ts +2 -0
  369. package/src/resources/index.ts +10 -0
  370. package/src/resources/request-logs.ts +405 -0
  371. package/src/resources.ts +1 -0
  372. package/src/tsconfig.json +11 -0
  373. package/src/uploads.ts +2 -0
  374. package/src/version.ts +1 -0
  375. package/uploads.d.mts +2 -0
  376. package/uploads.d.mts.map +1 -0
  377. package/uploads.d.ts +2 -0
  378. package/uploads.d.ts.map +1 -0
  379. package/uploads.js +6 -0
  380. package/uploads.js.map +1 -0
  381. package/uploads.mjs +2 -0
  382. package/uploads.mjs.map +1 -0
  383. package/version.d.mts +2 -0
  384. package/version.d.mts.map +1 -0
  385. package/version.d.ts +2 -0
  386. package/version.d.ts.map +1 -0
  387. package/version.js +5 -0
  388. package/version.js.map +1 -0
  389. package/version.mjs +2 -0
  390. package/version.mjs.map +1 -0
@@ -0,0 +1,105 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { XrayError } from '../../core/error';
4
+
5
+ // https://url.spec.whatwg.org/#url-scheme-string
6
+ const startsWithSchemeRegexp = /^[a-z][a-z0-9+.-]*:/i;
7
+
8
+ export const isAbsoluteURL = (url: string): boolean => {
9
+ return startsWithSchemeRegexp.test(url);
10
+ };
11
+
12
+ export let isArray = (val: unknown): val is unknown[] => ((isArray = Array.isArray), isArray(val));
13
+ export let isReadonlyArray = isArray as (val: unknown) => val is readonly unknown[];
14
+
15
+ /** Returns an object if the given value isn't an object, otherwise returns as-is */
16
+ export function maybeObj(x: unknown): object {
17
+ if (typeof x !== 'object') {
18
+ return {};
19
+ }
20
+
21
+ return x ?? {};
22
+ }
23
+
24
+ // https://stackoverflow.com/a/34491287
25
+ export function isEmptyObj(obj: Object | null | undefined): boolean {
26
+ if (!obj) return true;
27
+ for (const _k in obj) return false;
28
+ return true;
29
+ }
30
+
31
+ // https://eslint.org/docs/latest/rules/no-prototype-builtins
32
+ export function hasOwn<T extends object = object>(obj: T, key: PropertyKey): key is keyof T {
33
+ return Object.prototype.hasOwnProperty.call(obj, key);
34
+ }
35
+
36
+ export function isObj(obj: unknown): obj is Record<string, unknown> {
37
+ return obj != null && typeof obj === 'object' && !Array.isArray(obj);
38
+ }
39
+
40
+ export const ensurePresent = <T>(value: T | null | undefined): T => {
41
+ if (value == null) {
42
+ throw new XrayError(`Expected a value to be given but received ${value} instead.`);
43
+ }
44
+
45
+ return value;
46
+ };
47
+
48
+ export const validatePositiveInteger = (name: string, n: unknown): number => {
49
+ if (typeof n !== 'number' || !Number.isInteger(n)) {
50
+ throw new XrayError(`${name} must be an integer`);
51
+ }
52
+ if (n < 0) {
53
+ throw new XrayError(`${name} must be a positive integer`);
54
+ }
55
+ return n;
56
+ };
57
+
58
+ export const coerceInteger = (value: unknown): number => {
59
+ if (typeof value === 'number') return Math.round(value);
60
+ if (typeof value === 'string') return parseInt(value, 10);
61
+
62
+ throw new XrayError(`Could not coerce ${value} (type: ${typeof value}) into a number`);
63
+ };
64
+
65
+ export const coerceFloat = (value: unknown): number => {
66
+ if (typeof value === 'number') return value;
67
+ if (typeof value === 'string') return parseFloat(value);
68
+
69
+ throw new XrayError(`Could not coerce ${value} (type: ${typeof value}) into a number`);
70
+ };
71
+
72
+ export const coerceBoolean = (value: unknown): boolean => {
73
+ if (typeof value === 'boolean') return value;
74
+ if (typeof value === 'string') return value === 'true';
75
+ return Boolean(value);
76
+ };
77
+
78
+ export const maybeCoerceInteger = (value: unknown): number | undefined => {
79
+ if (value == null) {
80
+ return undefined;
81
+ }
82
+ return coerceInteger(value);
83
+ };
84
+
85
+ export const maybeCoerceFloat = (value: unknown): number | undefined => {
86
+ if (value == null) {
87
+ return undefined;
88
+ }
89
+ return coerceFloat(value);
90
+ };
91
+
92
+ export const maybeCoerceBoolean = (value: unknown): boolean | undefined => {
93
+ if (value == null) {
94
+ return undefined;
95
+ }
96
+ return coerceBoolean(value);
97
+ };
98
+
99
+ export const safeJSON = (text: string) => {
100
+ try {
101
+ return JSON.parse(text);
102
+ } catch (err) {
103
+ return undefined;
104
+ }
105
+ };
@@ -0,0 +1,9 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ export * from './utils/values';
4
+ export * from './utils/base64';
5
+ export * from './utils/env';
6
+ export * from './utils/log';
7
+ export * from './utils/uuid';
8
+ export * from './utils/sleep';
9
+ export * from './utils/query';
package/src/lib/.keep ADDED
@@ -0,0 +1,4 @@
1
+ File generated from our OpenAPI spec by Stainless.
2
+
3
+ This directory can be used to store custom files to expand the SDK.
4
+ It is ignored by Stainless code generation and its content (other than this keep file) won't be touched.
@@ -0,0 +1,2 @@
1
+ /** @deprecated Import from ./core/pagination instead */
2
+ export * from './core/pagination';
@@ -0,0 +1,2 @@
1
+ /** @deprecated Import from ./core/resource instead */
2
+ export * from './core/resource';
@@ -0,0 +1,10 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ export {
4
+ RequestLogs,
5
+ type RequestLogRetrieveResponse,
6
+ type RequestLogListResponse,
7
+ type RequestLogRetrieveParams,
8
+ type RequestLogListParams,
9
+ type RequestLogListResponsesCursorIDPage,
10
+ } from './request-logs';
@@ -0,0 +1,405 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../core/resource';
4
+ import { APIPromise } from '../core/api-promise';
5
+ import { CursorIDPage, type CursorIDPageParams, PagePromise } from '../core/pagination';
6
+ import { buildHeaders } from '../internal/headers';
7
+ import { RequestOptions } from '../internal/request-options';
8
+ import { path } from '../internal/utils/path';
9
+
10
+ export class RequestLogs extends APIResource {
11
+ /**
12
+ * Retrieve a specific request log by its [request ID](/guides/request-id).
13
+ *
14
+ * Results are limited in accordance with X-ray's
15
+ * [tenancy model](/guides/tenancy/). Callers may want to set `X-Xray-Tenant-Id` to
16
+ * a specific tenant ID to query logs for that tenant, or omit it to query across
17
+ * all non-tenanted logs.
18
+ */
19
+ retrieve(
20
+ requestID: string,
21
+ params: RequestLogRetrieveParams | null | undefined = {},
22
+ options?: RequestOptions,
23
+ ): APIPromise<RequestLogRetrieveResponse> {
24
+ const { 'X-Xray-Tenant-Id': xXrayTenantID, ...query } = params ?? {};
25
+ return this._client.get(path`/v1/request_logs/${requestID}`, {
26
+ query,
27
+ ...options,
28
+ headers: buildHeaders([
29
+ { ...(xXrayTenantID != null ? { 'X-Xray-Tenant-Id': xXrayTenantID } : undefined) },
30
+ options?.headers,
31
+ ]),
32
+ });
33
+ }
34
+
35
+ /**
36
+ * List request logs by time and using a variety of optional filters.
37
+ *
38
+ * This is one of X-ray's most common API endpoints, returning a collection of
39
+ * request logs and accepting a variety of optional filters to narrow down results.
40
+ * For example, an integration might query for all request logs from a specific
41
+ * endpoint by invoking it with `request_method=GET` and
42
+ * `request_route=/api/v1/users/{user_id}`, or query via a customer-defined tag
43
+ * with `tags[sensitivity]=high`.
44
+ *
45
+ * The endpoint is paginated, ordered by `timestamp` and `request_id`. Order
46
+ * defaults to ascending (oldest first) but can be set to descending with the
47
+ * `order` query parameter. Many integrations will be querying for recent request
48
+ * logs, so setting `order=desc` is the more conventional form.
49
+ *
50
+ * Results are limited in accordance with X-ray's
51
+ * [tenancy model](/guides/tenancy/). Callers may want to set `X-Xray-Tenant-Id` to
52
+ * a specific tenant ID to query logs for that tenant, or omit it to query across
53
+ * all non-tenanted logs.
54
+ */
55
+ list(
56
+ params: RequestLogListParams | null | undefined = {},
57
+ options?: RequestOptions,
58
+ ): PagePromise<RequestLogListResponsesCursorIDPage, RequestLogListResponse> {
59
+ const { 'X-Xray-Tenant-Id': xXrayTenantID, ...query } = params ?? {};
60
+ return this._client.getAPIList('/v1/request_logs', CursorIDPage<RequestLogListResponse>, {
61
+ query,
62
+ ...options,
63
+ headers: buildHeaders([
64
+ { ...(xXrayTenantID != null ? { 'X-Xray-Tenant-Id': xXrayTenantID } : undefined) },
65
+ options?.headers,
66
+ ]),
67
+ });
68
+ }
69
+ }
70
+
71
+ export type RequestLogListResponsesCursorIDPage = CursorIDPage<RequestLogListResponse>;
72
+
73
+ /**
74
+ * RequestLog represents a single HTTP request and response exchange from a service
75
+ * being traced by X-ray.
76
+ */
77
+ export interface RequestLogRetrieveResponse {
78
+ /**
79
+ * HTTP headers sent with the request, keyed by header name.
80
+ */
81
+ request_headers: { [key: string]: Array<string> };
82
+
83
+ /**
84
+ * Unique identifier for the request, often an
85
+ * [X-ray request ID](/guides/request-id).
86
+ */
87
+ request_id: string;
88
+
89
+ /**
90
+ * HTTP method used for the request (e.g. `GET`, `POST`).
91
+ */
92
+ request_method: string;
93
+
94
+ /**
95
+ * Full path of the HTTP request (e.g. `/v1/users/123`).
96
+ */
97
+ request_path: string;
98
+
99
+ /**
100
+ * HTTP headers sent with the response, keyed by header name.
101
+ */
102
+ response_headers: { [key: string]: Array<string> };
103
+
104
+ /**
105
+ * When the request was received.
106
+ */
107
+ timestamp: string;
108
+
109
+ /**
110
+ * Total time the request took in microseconds.
111
+ */
112
+ duration_us?: number;
113
+
114
+ /**
115
+ * IP address of the client that made the request.
116
+ */
117
+ ip?: string;
118
+
119
+ /**
120
+ * Raw body of the HTTP request.
121
+ *
122
+ * This property may be large and include relatively sensitive data, so it's
123
+ * omitted from responses by default. Include it using the `include` query
124
+ * parameter like `include=request_body`.
125
+ */
126
+ request_body?: string;
127
+
128
+ /**
129
+ * Encoding applied to the request body. If the body could be interpreted as valid
130
+ * UTF-8, this field will contain the value `utf-8`. If not, X-ray will have
131
+ * encoded the body as base64 and this field will contain the value `base64`.
132
+ */
133
+ request_body_encoding?: string;
134
+
135
+ /**
136
+ * Whether the request body was truncated because it exceeded the maximum capture
137
+ * size.
138
+ */
139
+ request_body_truncated?: boolean;
140
+
141
+ /**
142
+ * Matched route pattern for the request (e.g. `/v1/users/{id}`) as read from the
143
+ * target stack's internal HTTP framework (i.e. Go's `net/http`, Express in
144
+ * Javascript, etc.), if available.
145
+ */
146
+ request_route?: string;
147
+
148
+ /**
149
+ * Raw body of the HTTP response.
150
+ *
151
+ * This property may be large and include relatively sensitive data, so it's
152
+ * omitted from responses by default. Include it using the `include` query
153
+ * parameter like `include=response_body`.
154
+ */
155
+ response_body?: string;
156
+
157
+ /**
158
+ * Encoding applied to the response body. If the body could be interpreted as valid
159
+ * UTF-8, this field will contain the value `utf-8`. If not, X-ray will have
160
+ * encoded the body as base64 and this field will contain the value `base64`.
161
+ */
162
+ response_body_encoding?: string;
163
+
164
+ /**
165
+ * Whether the response body was truncated because it exceeded the maximum capture
166
+ * size.
167
+ */
168
+ response_body_truncated?: boolean;
169
+
170
+ /**
171
+ * Name of the service that handled the request.
172
+ */
173
+ service?: string;
174
+
175
+ /**
176
+ * HTTP status code returned by the response (e.g. 200, 404).
177
+ */
178
+ status?: number;
179
+
180
+ /**
181
+ * Arbitrary customer-defined tags associated with the request, keyed by tag name.
182
+ */
183
+ tags?: { [key: string]: string };
184
+
185
+ /**
186
+ * Identifier for the tenant that made the request.
187
+ */
188
+ tenant_id?: string;
189
+
190
+ /**
191
+ * Identifier for the user who made the request, if known.
192
+ */
193
+ user_id?: string;
194
+ }
195
+
196
+ /**
197
+ * RequestLog represents a single HTTP request and response exchange from a service
198
+ * being traced by X-ray.
199
+ */
200
+ export interface RequestLogListResponse {
201
+ /**
202
+ * HTTP headers sent with the request, keyed by header name.
203
+ */
204
+ request_headers: { [key: string]: Array<string> };
205
+
206
+ /**
207
+ * Unique identifier for the request, often an
208
+ * [X-ray request ID](/guides/request-id).
209
+ */
210
+ request_id: string;
211
+
212
+ /**
213
+ * HTTP method used for the request (e.g. `GET`, `POST`).
214
+ */
215
+ request_method: string;
216
+
217
+ /**
218
+ * Full path of the HTTP request (e.g. `/v1/users/123`).
219
+ */
220
+ request_path: string;
221
+
222
+ /**
223
+ * HTTP headers sent with the response, keyed by header name.
224
+ */
225
+ response_headers: { [key: string]: Array<string> };
226
+
227
+ /**
228
+ * When the request was received.
229
+ */
230
+ timestamp: string;
231
+
232
+ /**
233
+ * Total time the request took in microseconds.
234
+ */
235
+ duration_us?: number;
236
+
237
+ /**
238
+ * IP address of the client that made the request.
239
+ */
240
+ ip?: string;
241
+
242
+ /**
243
+ * Raw body of the HTTP request.
244
+ *
245
+ * This property may be large and include relatively sensitive data, so it's
246
+ * omitted from responses by default. Include it using the `include` query
247
+ * parameter like `include=request_body`.
248
+ */
249
+ request_body?: string;
250
+
251
+ /**
252
+ * Encoding applied to the request body. If the body could be interpreted as valid
253
+ * UTF-8, this field will contain the value `utf-8`. If not, X-ray will have
254
+ * encoded the body as base64 and this field will contain the value `base64`.
255
+ */
256
+ request_body_encoding?: string;
257
+
258
+ /**
259
+ * Whether the request body was truncated because it exceeded the maximum capture
260
+ * size.
261
+ */
262
+ request_body_truncated?: boolean;
263
+
264
+ /**
265
+ * Matched route pattern for the request (e.g. `/v1/users/{id}`) as read from the
266
+ * target stack's internal HTTP framework (i.e. Go's `net/http`, Express in
267
+ * Javascript, etc.), if available.
268
+ */
269
+ request_route?: string;
270
+
271
+ /**
272
+ * Raw body of the HTTP response.
273
+ *
274
+ * This property may be large and include relatively sensitive data, so it's
275
+ * omitted from responses by default. Include it using the `include` query
276
+ * parameter like `include=response_body`.
277
+ */
278
+ response_body?: string;
279
+
280
+ /**
281
+ * Encoding applied to the response body. If the body could be interpreted as valid
282
+ * UTF-8, this field will contain the value `utf-8`. If not, X-ray will have
283
+ * encoded the body as base64 and this field will contain the value `base64`.
284
+ */
285
+ response_body_encoding?: string;
286
+
287
+ /**
288
+ * Whether the response body was truncated because it exceeded the maximum capture
289
+ * size.
290
+ */
291
+ response_body_truncated?: boolean;
292
+
293
+ /**
294
+ * Name of the service that handled the request.
295
+ */
296
+ service?: string;
297
+
298
+ /**
299
+ * HTTP status code returned by the response (e.g. 200, 404).
300
+ */
301
+ status?: number;
302
+
303
+ /**
304
+ * Arbitrary customer-defined tags associated with the request, keyed by tag name.
305
+ */
306
+ tags?: { [key: string]: string };
307
+
308
+ /**
309
+ * Identifier for the tenant that made the request.
310
+ */
311
+ tenant_id?: string;
312
+
313
+ /**
314
+ * Identifier for the user who made the request, if known.
315
+ */
316
+ user_id?: string;
317
+ }
318
+
319
+ export interface RequestLogRetrieveParams {
320
+ /**
321
+ * Query param: Additional response properties to include, such as `request_body`
322
+ * and `response_body`. By default, these properties are omitted.
323
+ */
324
+ include?: Array<string>;
325
+
326
+ /**
327
+ * Query param: Optional user ID to filter request logs to.
328
+ */
329
+ user_id?: string;
330
+
331
+ /**
332
+ * Header param: Tenant ID to scope request-log reads to. Set to `*` to query
333
+ * across all tenants.
334
+ */
335
+ 'X-Xray-Tenant-Id'?: string;
336
+ }
337
+
338
+ export interface RequestLogListParams extends CursorIDPageParams {
339
+ /**
340
+ * Query param: Additional response properties to include, such as `request_body`
341
+ * and `response_body`. By default, these properties are omitted.
342
+ */
343
+ include?: Array<string>;
344
+
345
+ /**
346
+ * Query param: Optional IP address to filter request logs by.
347
+ */
348
+ ip?: string;
349
+
350
+ /**
351
+ * Query param: Sort order for results, either "asc" (ascending, oldest first) or
352
+ * `desc` (descending, newest first). Defaults to `asc`.
353
+ */
354
+ order?: 'asc' | 'desc';
355
+
356
+ /**
357
+ * Query param: The HTTP method to filter request logs by (e.g. `GET`, `POST`,
358
+ * etc.).
359
+ */
360
+ request_method?: string;
361
+
362
+ /**
363
+ * Query param: The request path to filter request logs by (e.g.
364
+ * `/api/v1/users/user_123`).
365
+ */
366
+ request_path?: string;
367
+
368
+ /**
369
+ * Query param: The request route to filter request logs by (e.g.
370
+ * `/api/v1/users/{user_id}`).
371
+ */
372
+ request_route?: string;
373
+
374
+ /**
375
+ * Query param: Optional service name to filter request logs by.
376
+ */
377
+ service?: string;
378
+
379
+ /**
380
+ * Query param: Optional HTTP status code to filter request logs by (e.g. 200,
381
+ * 404).
382
+ */
383
+ status?: number;
384
+
385
+ /**
386
+ * Query param: Optional user ID to filter request logs to.
387
+ */
388
+ user_id?: string;
389
+
390
+ /**
391
+ * Header param: Tenant ID to scope request-log reads to. Set to `*` to query
392
+ * across all tenants.
393
+ */
394
+ 'X-Xray-Tenant-Id'?: string;
395
+ }
396
+
397
+ export declare namespace RequestLogs {
398
+ export {
399
+ type RequestLogRetrieveResponse as RequestLogRetrieveResponse,
400
+ type RequestLogListResponse as RequestLogListResponse,
401
+ type RequestLogListResponsesCursorIDPage as RequestLogListResponsesCursorIDPage,
402
+ type RequestLogRetrieveParams as RequestLogRetrieveParams,
403
+ type RequestLogListParams as RequestLogListParams,
404
+ };
405
+ }
@@ -0,0 +1 @@
1
+ export * from './resources/index';
@@ -0,0 +1,11 @@
1
+ {
2
+ // this config is included in the published src directory to prevent TS errors
3
+ // from appearing when users go to source, and VSCode opens the source .ts file
4
+ // via declaration maps
5
+ "include": ["index.ts"],
6
+ "compilerOptions": {
7
+ "target": "ES2015",
8
+ "lib": ["DOM", "DOM.Iterable", "ES2018"],
9
+ "moduleResolution": "node"
10
+ }
11
+ }
package/src/uploads.ts ADDED
@@ -0,0 +1,2 @@
1
+ /** @deprecated Import from ./core/uploads instead */
2
+ export * from './core/uploads';
package/src/version.ts ADDED
@@ -0,0 +1 @@
1
+ export const VERSION = '0.5.1'; // x-release-please-version
package/uploads.d.mts ADDED
@@ -0,0 +1,2 @@
1
+ export * from "./core/uploads.mjs";
2
+ //# sourceMappingURL=uploads.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uploads.d.mts","sourceRoot":"","sources":["src/uploads.ts"],"names":[],"mappings":""}
package/uploads.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export * from "./core/uploads.js";
2
+ //# sourceMappingURL=uploads.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uploads.d.ts","sourceRoot":"","sources":["src/uploads.ts"],"names":[],"mappings":""}
package/uploads.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/uploads instead */
5
+ tslib_1.__exportStar(require("./core/uploads.js"), exports);
6
+ //# sourceMappingURL=uploads.js.map
package/uploads.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uploads.js","sourceRoot":"","sources":["src/uploads.ts"],"names":[],"mappings":";;;AAAA,qDAAqD;AACrD,4DAA+B"}
package/uploads.mjs ADDED
@@ -0,0 +1,2 @@
1
+ export * from "./core/uploads.mjs";
2
+ //# sourceMappingURL=uploads.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uploads.mjs","sourceRoot":"","sources":["src/uploads.ts"],"names":[],"mappings":""}
package/version.d.mts ADDED
@@ -0,0 +1,2 @@
1
+ export declare const VERSION = "0.5.1";
2
+ //# sourceMappingURL=version.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.mts","sourceRoot":"","sources":["src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,UAAU,CAAC"}
package/version.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export declare const VERSION = "0.5.1";
2
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,UAAU,CAAC"}
package/version.js ADDED
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.VERSION = void 0;
4
+ exports.VERSION = '0.5.1'; // x-release-please-version
5
+ //# sourceMappingURL=version.js.map
package/version.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["src/version.ts"],"names":[],"mappings":";;;AAAa,QAAA,OAAO,GAAG,OAAO,CAAC,CAAC,2BAA2B"}
package/version.mjs ADDED
@@ -0,0 +1,2 @@
1
+ export const VERSION = '0.5.1'; // x-release-please-version
2
+ //# sourceMappingURL=version.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.mjs","sourceRoot":"","sources":["src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,2BAA2B"}