@simpleapps-com/augur-api 0.2.0 → 0.2.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 (270) hide show
  1. package/README.md +0 -25
  2. package/dist/cjs/core/client.d.ts +0 -1
  3. package/dist/cjs/core/client.d.ts.map +1 -1
  4. package/dist/cjs/core/client.js +0 -4
  5. package/dist/cjs/core/client.js.map +1 -1
  6. package/dist/cjs/core/common-schemas.d.ts +13 -13
  7. package/dist/cjs/core/config.d.ts +0 -2
  8. package/dist/cjs/core/config.d.ts.map +1 -1
  9. package/dist/cjs/core/config.js.map +1 -1
  10. package/dist/cjs/core/schema-factories.d.ts +20 -20
  11. package/dist/cjs/core/schemas.d.ts +6 -6
  12. package/dist/cjs/services/agr-site/client.d.ts +3 -3
  13. package/dist/cjs/services/agr-site/schemas/ai.d.ts +3 -3
  14. package/dist/cjs/services/agr-site/schemas/content.d.ts +3 -3
  15. package/dist/cjs/services/agr-site/schemas/health.d.ts +2 -2
  16. package/dist/cjs/services/agr-site/schemas/settings.d.ts +3 -3
  17. package/dist/cjs/services/commerce/client.d.ts +10 -10
  18. package/dist/cjs/services/commerce/schemas/cart.d.ts +16 -16
  19. package/dist/cjs/services/commerce/schemas/checkout.d.ts +17 -17
  20. package/dist/cjs/services/commerce/schemas/health.d.ts +2 -2
  21. package/dist/cjs/services/commerce/schemas/recommendations.d.ts +5 -5
  22. package/dist/cjs/services/customers/client.d.ts +22 -22
  23. package/dist/cjs/services/customers/schemas/addresses.d.ts +12 -12
  24. package/dist/cjs/services/customers/schemas/contacts.d.ts +14 -14
  25. package/dist/cjs/services/customers/schemas/customers.d.ts +20 -20
  26. package/dist/cjs/services/customers/schemas/health.d.ts +2 -2
  27. package/dist/cjs/services/customers/schemas/invoices.d.ts +7 -7
  28. package/dist/cjs/services/customers/schemas/orders.d.ts +9 -9
  29. package/dist/cjs/services/customers/schemas/purchased-items.d.ts +5 -5
  30. package/dist/cjs/services/customers/schemas/quotes.d.ts +7 -7
  31. package/dist/cjs/services/items/client.d.ts +35 -35
  32. package/dist/cjs/services/items/client.d.ts.map +1 -1
  33. package/dist/cjs/services/items/schemas/alternateCode.d.ts +2 -2
  34. package/dist/cjs/services/items/schemas/attributeGroups.d.ts +4 -4
  35. package/dist/cjs/services/items/schemas/attributes.d.ts +10 -10
  36. package/dist/cjs/services/items/schemas/brands.d.ts +4 -4
  37. package/dist/cjs/services/items/schemas/categories.d.ts +16 -16
  38. package/dist/cjs/services/items/schemas/categories.d.ts.map +1 -1
  39. package/dist/cjs/services/items/schemas/health.d.ts +4 -4
  40. package/dist/cjs/services/items/schemas/invLoc.d.ts +2 -2
  41. package/dist/cjs/services/items/schemas/products.d.ts +16 -16
  42. package/dist/cjs/services/joomla/client.d.ts +13 -13
  43. package/dist/cjs/services/joomla/schemas/content.d.ts +17 -17
  44. package/dist/cjs/services/joomla/schemas/groups.d.ts +14 -14
  45. package/dist/cjs/services/joomla/schemas/health.d.ts +4 -4
  46. package/dist/cjs/services/joomla/schemas/users.d.ts +22 -22
  47. package/dist/cjs/services/legacy/client.d.ts +8 -8
  48. package/dist/cjs/services/legacy/schemas/health.d.ts +2 -2
  49. package/dist/cjs/services/legacy/schemas/inventory.d.ts +12 -12
  50. package/dist/cjs/services/legacy/schemas/orders.d.ts +4 -4
  51. package/dist/cjs/services/legacy/schemas/states.d.ts +16 -16
  52. package/dist/cjs/services/nexus/client.d.ts +39 -39
  53. package/dist/cjs/services/nexus/schemas/bin-transfers.d.ts +15 -15
  54. package/dist/cjs/services/nexus/schemas/health.d.ts +4 -4
  55. package/dist/cjs/services/nexus/schemas/receiving.d.ts +26 -26
  56. package/dist/cjs/services/nexus/schemas/transfers.d.ts +39 -39
  57. package/dist/cjs/services/open-search/client.d.ts +11 -11
  58. package/dist/cjs/services/open-search/schemas/attributes.d.ts +5 -5
  59. package/dist/cjs/services/open-search/schemas/health.d.ts +4 -4
  60. package/dist/cjs/services/open-search/schemas/items.d.ts +11 -11
  61. package/dist/cjs/services/open-search/schemas/search.d.ts +5 -5
  62. package/dist/cjs/services/orders/client.d.ts +12 -12
  63. package/dist/cjs/services/orders/schemas/health.d.ts +2 -2
  64. package/dist/cjs/services/orders/schemas/invoices.d.ts +2 -2
  65. package/dist/cjs/services/orders/schemas/orders.d.ts +7 -7
  66. package/dist/cjs/services/orders/schemas/purchase-orders.d.ts +11 -11
  67. package/dist/cjs/services/orders/schemas/salesrep.d.ts +4 -4
  68. package/dist/cjs/services/p21-pim/client.d.ts +13 -13
  69. package/dist/cjs/services/p21-pim/schemas/ai-suggestions.d.ts +6 -6
  70. package/dist/cjs/services/p21-pim/schemas/health.d.ts +2 -2
  71. package/dist/cjs/services/p21-pim/schemas/inventory.d.ts +14 -14
  72. package/dist/cjs/services/p21-pim/schemas/podcasts.d.ts +7 -7
  73. package/dist/cjs/services/payments/client.d.ts +9 -9
  74. package/dist/cjs/services/payments/schemas/element.d.ts +5 -5
  75. package/dist/cjs/services/payments/schemas/health.d.ts +4 -4
  76. package/dist/cjs/services/payments/schemas/unified.d.ts +30 -30
  77. package/dist/cjs/services/pricing/client.d.ts +5 -5
  78. package/dist/cjs/services/pricing/schemas/health.d.ts +4 -4
  79. package/dist/cjs/services/pricing/schemas/job-pricing.d.ts +14 -14
  80. package/dist/cjs/services/pricing/schemas/pricing.d.ts +5 -5
  81. package/dist/cjs/services/pricing/schemas/tax.d.ts +2 -2
  82. package/dist/cjs/services/vmi/client.d.ts +31 -31
  83. package/dist/cjs/services/vmi/schemas/health.d.ts +4 -4
  84. package/dist/cjs/services/vmi/schemas/inventory.d.ts +2 -2
  85. package/dist/cjs/services/vmi/schemas/products.d.ts +19 -19
  86. package/dist/cjs/services/vmi/schemas/profiles.d.ts +14 -14
  87. package/dist/cjs/services/vmi/schemas/restock.d.ts +9 -9
  88. package/dist/cjs/services/vmi/schemas/warehouse.d.ts +21 -21
  89. package/dist/esm/core/client.d.ts +0 -1
  90. package/dist/esm/core/client.d.ts.map +1 -1
  91. package/dist/esm/core/client.js +0 -4
  92. package/dist/esm/core/client.js.map +1 -1
  93. package/dist/esm/core/common-schemas.d.ts +13 -13
  94. package/dist/esm/core/config.d.ts +0 -2
  95. package/dist/esm/core/config.d.ts.map +1 -1
  96. package/dist/esm/core/config.js.map +1 -1
  97. package/dist/esm/core/schema-factories.d.ts +20 -20
  98. package/dist/esm/core/schemas.d.ts +6 -6
  99. package/dist/esm/services/agr-site/client.d.ts +3 -3
  100. package/dist/esm/services/agr-site/schemas/ai.d.ts +3 -3
  101. package/dist/esm/services/agr-site/schemas/content.d.ts +3 -3
  102. package/dist/esm/services/agr-site/schemas/health.d.ts +2 -2
  103. package/dist/esm/services/agr-site/schemas/settings.d.ts +3 -3
  104. package/dist/esm/services/commerce/client.d.ts +10 -10
  105. package/dist/esm/services/commerce/schemas/cart.d.ts +16 -16
  106. package/dist/esm/services/commerce/schemas/checkout.d.ts +17 -17
  107. package/dist/esm/services/commerce/schemas/health.d.ts +2 -2
  108. package/dist/esm/services/commerce/schemas/recommendations.d.ts +5 -5
  109. package/dist/esm/services/customers/client.d.ts +22 -22
  110. package/dist/esm/services/customers/schemas/addresses.d.ts +12 -12
  111. package/dist/esm/services/customers/schemas/contacts.d.ts +14 -14
  112. package/dist/esm/services/customers/schemas/customers.d.ts +20 -20
  113. package/dist/esm/services/customers/schemas/health.d.ts +2 -2
  114. package/dist/esm/services/customers/schemas/invoices.d.ts +7 -7
  115. package/dist/esm/services/customers/schemas/orders.d.ts +9 -9
  116. package/dist/esm/services/customers/schemas/purchased-items.d.ts +5 -5
  117. package/dist/esm/services/customers/schemas/quotes.d.ts +7 -7
  118. package/dist/esm/services/items/client.d.ts +35 -35
  119. package/dist/esm/services/items/client.d.ts.map +1 -1
  120. package/dist/esm/services/items/schemas/alternateCode.d.ts +2 -2
  121. package/dist/esm/services/items/schemas/attributeGroups.d.ts +4 -4
  122. package/dist/esm/services/items/schemas/attributes.d.ts +10 -10
  123. package/dist/esm/services/items/schemas/brands.d.ts +4 -4
  124. package/dist/esm/services/items/schemas/categories.d.ts +16 -16
  125. package/dist/esm/services/items/schemas/categories.d.ts.map +1 -1
  126. package/dist/esm/services/items/schemas/health.d.ts +4 -4
  127. package/dist/esm/services/items/schemas/invLoc.d.ts +2 -2
  128. package/dist/esm/services/items/schemas/products.d.ts +16 -16
  129. package/dist/esm/services/joomla/client.d.ts +13 -13
  130. package/dist/esm/services/joomla/schemas/content.d.ts +17 -17
  131. package/dist/esm/services/joomla/schemas/groups.d.ts +14 -14
  132. package/dist/esm/services/joomla/schemas/health.d.ts +4 -4
  133. package/dist/esm/services/joomla/schemas/users.d.ts +22 -22
  134. package/dist/esm/services/legacy/client.d.ts +8 -8
  135. package/dist/esm/services/legacy/schemas/health.d.ts +2 -2
  136. package/dist/esm/services/legacy/schemas/inventory.d.ts +12 -12
  137. package/dist/esm/services/legacy/schemas/orders.d.ts +4 -4
  138. package/dist/esm/services/legacy/schemas/states.d.ts +16 -16
  139. package/dist/esm/services/nexus/client.d.ts +39 -39
  140. package/dist/esm/services/nexus/schemas/bin-transfers.d.ts +15 -15
  141. package/dist/esm/services/nexus/schemas/health.d.ts +4 -4
  142. package/dist/esm/services/nexus/schemas/receiving.d.ts +26 -26
  143. package/dist/esm/services/nexus/schemas/transfers.d.ts +39 -39
  144. package/dist/esm/services/open-search/client.d.ts +11 -11
  145. package/dist/esm/services/open-search/schemas/attributes.d.ts +5 -5
  146. package/dist/esm/services/open-search/schemas/health.d.ts +4 -4
  147. package/dist/esm/services/open-search/schemas/items.d.ts +11 -11
  148. package/dist/esm/services/open-search/schemas/search.d.ts +5 -5
  149. package/dist/esm/services/orders/client.d.ts +12 -12
  150. package/dist/esm/services/orders/schemas/health.d.ts +2 -2
  151. package/dist/esm/services/orders/schemas/invoices.d.ts +2 -2
  152. package/dist/esm/services/orders/schemas/orders.d.ts +7 -7
  153. package/dist/esm/services/orders/schemas/purchase-orders.d.ts +11 -11
  154. package/dist/esm/services/orders/schemas/salesrep.d.ts +4 -4
  155. package/dist/esm/services/p21-pim/client.d.ts +13 -13
  156. package/dist/esm/services/p21-pim/schemas/ai-suggestions.d.ts +6 -6
  157. package/dist/esm/services/p21-pim/schemas/health.d.ts +2 -2
  158. package/dist/esm/services/p21-pim/schemas/inventory.d.ts +14 -14
  159. package/dist/esm/services/p21-pim/schemas/podcasts.d.ts +7 -7
  160. package/dist/esm/services/payments/client.d.ts +9 -9
  161. package/dist/esm/services/payments/schemas/element.d.ts +5 -5
  162. package/dist/esm/services/payments/schemas/health.d.ts +4 -4
  163. package/dist/esm/services/payments/schemas/unified.d.ts +30 -30
  164. package/dist/esm/services/pricing/client.d.ts +5 -5
  165. package/dist/esm/services/pricing/schemas/health.d.ts +4 -4
  166. package/dist/esm/services/pricing/schemas/job-pricing.d.ts +14 -14
  167. package/dist/esm/services/pricing/schemas/pricing.d.ts +5 -5
  168. package/dist/esm/services/pricing/schemas/tax.d.ts +2 -2
  169. package/dist/esm/services/vmi/client.d.ts +31 -31
  170. package/dist/esm/services/vmi/schemas/health.d.ts +4 -4
  171. package/dist/esm/services/vmi/schemas/inventory.d.ts +2 -2
  172. package/dist/esm/services/vmi/schemas/products.d.ts +19 -19
  173. package/dist/esm/services/vmi/schemas/profiles.d.ts +14 -14
  174. package/dist/esm/services/vmi/schemas/restock.d.ts +9 -9
  175. package/dist/esm/services/vmi/schemas/warehouse.d.ts +21 -21
  176. package/dist/types/core/client.d.ts +0 -1
  177. package/dist/types/core/client.d.ts.map +1 -1
  178. package/dist/types/core/common-schemas.d.ts +13 -13
  179. package/dist/types/core/config.d.ts +0 -2
  180. package/dist/types/core/config.d.ts.map +1 -1
  181. package/dist/types/core/schema-factories.d.ts +20 -20
  182. package/dist/types/core/schemas.d.ts +6 -6
  183. package/dist/types/services/agr-site/client.d.ts +3 -3
  184. package/dist/types/services/agr-site/schemas/ai.d.ts +3 -3
  185. package/dist/types/services/agr-site/schemas/content.d.ts +3 -3
  186. package/dist/types/services/agr-site/schemas/health.d.ts +2 -2
  187. package/dist/types/services/agr-site/schemas/settings.d.ts +3 -3
  188. package/dist/types/services/commerce/client.d.ts +10 -10
  189. package/dist/types/services/commerce/schemas/cart.d.ts +16 -16
  190. package/dist/types/services/commerce/schemas/checkout.d.ts +17 -17
  191. package/dist/types/services/commerce/schemas/health.d.ts +2 -2
  192. package/dist/types/services/commerce/schemas/recommendations.d.ts +5 -5
  193. package/dist/types/services/customers/client.d.ts +22 -22
  194. package/dist/types/services/customers/schemas/addresses.d.ts +12 -12
  195. package/dist/types/services/customers/schemas/contacts.d.ts +14 -14
  196. package/dist/types/services/customers/schemas/customers.d.ts +20 -20
  197. package/dist/types/services/customers/schemas/health.d.ts +2 -2
  198. package/dist/types/services/customers/schemas/invoices.d.ts +7 -7
  199. package/dist/types/services/customers/schemas/orders.d.ts +9 -9
  200. package/dist/types/services/customers/schemas/purchased-items.d.ts +5 -5
  201. package/dist/types/services/customers/schemas/quotes.d.ts +7 -7
  202. package/dist/types/services/items/client.d.ts +35 -35
  203. package/dist/types/services/items/client.d.ts.map +1 -1
  204. package/dist/types/services/items/schemas/alternateCode.d.ts +2 -2
  205. package/dist/types/services/items/schemas/attributeGroups.d.ts +4 -4
  206. package/dist/types/services/items/schemas/attributes.d.ts +10 -10
  207. package/dist/types/services/items/schemas/brands.d.ts +4 -4
  208. package/dist/types/services/items/schemas/categories.d.ts +16 -16
  209. package/dist/types/services/items/schemas/categories.d.ts.map +1 -1
  210. package/dist/types/services/items/schemas/health.d.ts +4 -4
  211. package/dist/types/services/items/schemas/invLoc.d.ts +2 -2
  212. package/dist/types/services/items/schemas/products.d.ts +16 -16
  213. package/dist/types/services/joomla/client.d.ts +13 -13
  214. package/dist/types/services/joomla/schemas/content.d.ts +17 -17
  215. package/dist/types/services/joomla/schemas/groups.d.ts +14 -14
  216. package/dist/types/services/joomla/schemas/health.d.ts +4 -4
  217. package/dist/types/services/joomla/schemas/users.d.ts +22 -22
  218. package/dist/types/services/legacy/client.d.ts +8 -8
  219. package/dist/types/services/legacy/schemas/health.d.ts +2 -2
  220. package/dist/types/services/legacy/schemas/inventory.d.ts +12 -12
  221. package/dist/types/services/legacy/schemas/orders.d.ts +4 -4
  222. package/dist/types/services/legacy/schemas/states.d.ts +16 -16
  223. package/dist/types/services/nexus/client.d.ts +39 -39
  224. package/dist/types/services/nexus/schemas/bin-transfers.d.ts +15 -15
  225. package/dist/types/services/nexus/schemas/health.d.ts +4 -4
  226. package/dist/types/services/nexus/schemas/receiving.d.ts +26 -26
  227. package/dist/types/services/nexus/schemas/transfers.d.ts +39 -39
  228. package/dist/types/services/open-search/client.d.ts +11 -11
  229. package/dist/types/services/open-search/schemas/attributes.d.ts +5 -5
  230. package/dist/types/services/open-search/schemas/health.d.ts +4 -4
  231. package/dist/types/services/open-search/schemas/items.d.ts +11 -11
  232. package/dist/types/services/open-search/schemas/search.d.ts +5 -5
  233. package/dist/types/services/orders/client.d.ts +12 -12
  234. package/dist/types/services/orders/schemas/health.d.ts +2 -2
  235. package/dist/types/services/orders/schemas/invoices.d.ts +2 -2
  236. package/dist/types/services/orders/schemas/orders.d.ts +7 -7
  237. package/dist/types/services/orders/schemas/purchase-orders.d.ts +11 -11
  238. package/dist/types/services/orders/schemas/salesrep.d.ts +4 -4
  239. package/dist/types/services/p21-pim/client.d.ts +13 -13
  240. package/dist/types/services/p21-pim/schemas/ai-suggestions.d.ts +6 -6
  241. package/dist/types/services/p21-pim/schemas/health.d.ts +2 -2
  242. package/dist/types/services/p21-pim/schemas/inventory.d.ts +14 -14
  243. package/dist/types/services/p21-pim/schemas/podcasts.d.ts +7 -7
  244. package/dist/types/services/payments/client.d.ts +9 -9
  245. package/dist/types/services/payments/schemas/element.d.ts +5 -5
  246. package/dist/types/services/payments/schemas/health.d.ts +4 -4
  247. package/dist/types/services/payments/schemas/unified.d.ts +30 -30
  248. package/dist/types/services/pricing/client.d.ts +5 -5
  249. package/dist/types/services/pricing/schemas/health.d.ts +4 -4
  250. package/dist/types/services/pricing/schemas/job-pricing.d.ts +14 -14
  251. package/dist/types/services/pricing/schemas/pricing.d.ts +5 -5
  252. package/dist/types/services/pricing/schemas/tax.d.ts +2 -2
  253. package/dist/types/services/vmi/client.d.ts +31 -31
  254. package/dist/types/services/vmi/schemas/health.d.ts +4 -4
  255. package/dist/types/services/vmi/schemas/inventory.d.ts +2 -2
  256. package/dist/types/services/vmi/schemas/products.d.ts +19 -19
  257. package/dist/types/services/vmi/schemas/profiles.d.ts +14 -14
  258. package/dist/types/services/vmi/schemas/restock.d.ts +9 -9
  259. package/dist/types/services/vmi/schemas/warehouse.d.ts +21 -21
  260. package/package.json +1 -1
  261. package/dist/cjs/core/response-capturer.d.ts +0 -58
  262. package/dist/cjs/core/response-capturer.d.ts.map +0 -1
  263. package/dist/cjs/core/response-capturer.js +0 -167
  264. package/dist/cjs/core/response-capturer.js.map +0 -1
  265. package/dist/esm/core/response-capturer.d.ts +0 -58
  266. package/dist/esm/core/response-capturer.d.ts.map +0 -1
  267. package/dist/esm/core/response-capturer.js +0 -130
  268. package/dist/esm/core/response-capturer.js.map +0 -1
  269. package/dist/types/core/response-capturer.d.ts +0 -58
  270. package/dist/types/core/response-capturer.d.ts.map +0 -1
@@ -1,130 +0,0 @@
1
- import * as fs from 'fs';
2
- import * as path from 'path';
3
- /**
4
- * Utility class for capturing API responses to disk for schema validation improvement
5
- *
6
- * This utility helps developers capture real API responses to improve Zod schema definitions
7
- * by providing visibility into actual response structures that may differ from documentation.
8
- */
9
- export class ResponseCapturer {
10
- /**
11
- * Create a new ResponseCapturer instance
12
- * @param enabled Whether response capture is enabled
13
- * @param capturePath Directory path where responses should be saved
14
- */
15
- constructor(enabled = false, capturePath) {
16
- this.enabled = enabled || process.env.CAPTURE_RESPONSES === 'true';
17
- this.capturePath = capturePath || process.env.CAPTURE_PATH || './captured-responses';
18
- if (this.enabled) {
19
- this.ensureCaptureDirectory();
20
- }
21
- }
22
- /**
23
- * Capture an API response to disk if capture is enabled
24
- * @param response Axios response object
25
- * @param serviceName Name of the service making the request
26
- */
27
- async captureResponse(response, serviceName) {
28
- if (!this.enabled) {
29
- return;
30
- }
31
- try {
32
- const capturedData = {
33
- timestamp: new Date().toISOString(),
34
- service: serviceName,
35
- method: response.config.method?.toUpperCase() || 'UNKNOWN',
36
- url: response.config.url || 'unknown',
37
- status: response.status,
38
- headers: this.extractHeaders(response),
39
- response: response.data,
40
- };
41
- const filename = this.generateFilename(capturedData);
42
- const filepath = path.join(this.capturePath, filename);
43
- await fs.promises.writeFile(filepath, JSON.stringify(capturedData, null, 2), 'utf8');
44
- }
45
- catch (error) {
46
- // Silently fail to avoid disrupting API calls
47
- // In a production environment, you might want to log this error
48
- console.warn('Failed to capture API response:', error);
49
- }
50
- }
51
- /**
52
- * Generate a safe filename for the captured response
53
- * @param capturedData The captured response data
54
- * @returns A filesystem-safe filename
55
- */
56
- generateFilename(capturedData) {
57
- const timestamp = new Date(capturedData.timestamp)
58
- .toISOString()
59
- .replace(/:/g, '')
60
- .replace(/\./g, '')
61
- .replace(/T/, '_')
62
- .replace(/Z/, '');
63
- const endpoint = this.sanitizeEndpoint(capturedData.url);
64
- const method = capturedData.method.toLowerCase();
65
- return `${capturedData.service}_${endpoint}_${method}_${timestamp}.json`;
66
- }
67
- /**
68
- * Sanitize endpoint URL to create a safe filename component
69
- * @param url The API endpoint URL
70
- * @returns A filesystem-safe string representing the endpoint
71
- */
72
- sanitizeEndpoint(url) {
73
- try {
74
- const urlObj = new URL(url);
75
- let endpoint = urlObj.pathname;
76
- // Remove leading slash and replace path separators
77
- endpoint = endpoint.replace(/^\//, '').replace(/\//g, '_');
78
- // Replace common characters that aren't filesystem safe
79
- endpoint = endpoint.replace(/[^a-zA-Z0-9_-]/g, '_');
80
- // Remove multiple underscores
81
- endpoint = endpoint.replace(/_+/g, '_');
82
- // Remove trailing underscores
83
- endpoint = endpoint.replace(/_$/, '');
84
- return endpoint || 'root';
85
- }
86
- catch {
87
- return 'unknown_endpoint';
88
- }
89
- }
90
- /**
91
- * Extract relevant headers from the response
92
- * @param response Axios response object
93
- * @returns Simplified headers object
94
- */
95
- extractHeaders(response) {
96
- const headers = {};
97
- if (response.headers) {
98
- // Extract commonly useful headers
99
- const relevantHeaders = [
100
- 'content-type',
101
- 'content-length',
102
- 'cache-control',
103
- 'x-request-id',
104
- 'x-rate-limit-remaining',
105
- 'x-rate-limit-reset',
106
- ];
107
- for (const header of relevantHeaders) {
108
- if (response.headers[header]) {
109
- headers[header] = String(response.headers[header]);
110
- }
111
- }
112
- }
113
- return headers;
114
- }
115
- /**
116
- * Ensure the capture directory exists
117
- */
118
- ensureCaptureDirectory() {
119
- try {
120
- if (!fs.existsSync(this.capturePath)) {
121
- fs.mkdirSync(this.capturePath, { recursive: true });
122
- }
123
- }
124
- catch (error) {
125
- console.warn('Failed to create capture directory:', error);
126
- // Don't throw here as it would break the API client initialization
127
- }
128
- }
129
- }
130
- //# sourceMappingURL=response-capturer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"response-capturer.js","sourceRoot":"","sources":["../../../src/core/response-capturer.ts"],"names":[],"mappings":"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"}
@@ -1,58 +0,0 @@
1
- import { AxiosResponse } from 'axios';
2
- /**
3
- * Metadata for captured API responses
4
- */
5
- export interface CapturedResponse {
6
- timestamp: string;
7
- service: string;
8
- method: string;
9
- url: string;
10
- status: number;
11
- headers: Record<string, string>;
12
- response: unknown;
13
- }
14
- /**
15
- * Utility class for capturing API responses to disk for schema validation improvement
16
- *
17
- * This utility helps developers capture real API responses to improve Zod schema definitions
18
- * by providing visibility into actual response structures that may differ from documentation.
19
- */
20
- export declare class ResponseCapturer {
21
- private readonly enabled;
22
- private readonly capturePath;
23
- /**
24
- * Create a new ResponseCapturer instance
25
- * @param enabled Whether response capture is enabled
26
- * @param capturePath Directory path where responses should be saved
27
- */
28
- constructor(enabled?: boolean, capturePath?: string);
29
- /**
30
- * Capture an API response to disk if capture is enabled
31
- * @param response Axios response object
32
- * @param serviceName Name of the service making the request
33
- */
34
- captureResponse(response: AxiosResponse, serviceName: string): Promise<void>;
35
- /**
36
- * Generate a safe filename for the captured response
37
- * @param capturedData The captured response data
38
- * @returns A filesystem-safe filename
39
- */
40
- private generateFilename;
41
- /**
42
- * Sanitize endpoint URL to create a safe filename component
43
- * @param url The API endpoint URL
44
- * @returns A filesystem-safe string representing the endpoint
45
- */
46
- private sanitizeEndpoint;
47
- /**
48
- * Extract relevant headers from the response
49
- * @param response Axios response object
50
- * @returns Simplified headers object
51
- */
52
- private extractHeaders;
53
- /**
54
- * Ensure the capture directory exists
55
- */
56
- private ensureCaptureDirectory;
57
- }
58
- //# sourceMappingURL=response-capturer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"response-capturer.d.ts","sourceRoot":"","sources":["../../../src/core/response-capturer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAItC;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;;;GAKG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IAErC;;;;OAIG;gBACS,OAAO,GAAE,OAAe,EAAE,WAAW,CAAC,EAAE,MAAM;IAS1D;;;;OAIG;IACG,eAAe,CAAC,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2BlF;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAcxB;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAuBxB;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAwBtB;;OAEG;IACH,OAAO,CAAC,sBAAsB;CAU/B"}