@vtex/api 6.47.0 → 6.48.1-beta

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 (404) hide show
  1. package/gen/manifest.schema +0 -3
  2. package/lib/{clients/apps → HttpClient}/AppClient.d.ts +3 -3
  3. package/lib/{clients/apps → HttpClient}/AppClient.js +5 -10
  4. package/lib/{clients/apps → HttpClient}/AppGraphQLClient.d.ts +3 -3
  5. package/lib/{clients/apps → HttpClient}/AppGraphQLClient.js +5 -10
  6. package/lib/{clients/external → HttpClient}/ExternalClient.d.ts +3 -3
  7. package/lib/{clients/external → HttpClient}/ExternalClient.js +2 -9
  8. package/lib/HttpClient/GraphQLClient.d.ts +1 -2
  9. package/lib/HttpClient/GraphQLClient.js +1 -4
  10. package/lib/HttpClient/HttpClient.d.ts +5 -6
  11. package/lib/HttpClient/HttpClient.js +21 -63
  12. package/lib/{clients → HttpClient}/IOClient.d.ts +4 -4
  13. package/lib/HttpClient/IOClient.js +14 -0
  14. package/lib/{clients → HttpClient}/IOGraphQLClient.d.ts +4 -4
  15. package/lib/{clients → HttpClient}/IOGraphQLClient.js +2 -2
  16. package/lib/{clients/infra → HttpClient}/InfraClient.d.ts +3 -3
  17. package/lib/{clients/infra → HttpClient}/InfraClient.js +4 -9
  18. package/lib/{clients/janus → HttpClient}/JanusClient.d.ts +3 -3
  19. package/lib/{clients/janus → HttpClient}/JanusClient.js +3 -7
  20. package/lib/HttpClient/factories/index.d.ts +8 -0
  21. package/lib/HttpClient/factories/index.js +31 -0
  22. package/lib/HttpClient/index.d.ts +7 -1
  23. package/lib/HttpClient/index.js +7 -1
  24. package/lib/HttpClient/middlewares/cache.d.ts +2 -8
  25. package/lib/HttpClient/middlewares/cache.js +31 -120
  26. package/lib/HttpClient/middlewares/cancellationToken.d.ts +1 -1
  27. package/lib/HttpClient/middlewares/cancellationToken.js +1 -2
  28. package/lib/HttpClient/middlewares/memoization.js +1 -8
  29. package/lib/HttpClient/middlewares/metrics.js +31 -12
  30. package/lib/HttpClient/middlewares/recorder.d.ts +1 -1
  31. package/lib/HttpClient/middlewares/recorder.js +13 -16
  32. package/lib/HttpClient/middlewares/request.d.ts +10 -0
  33. package/lib/HttpClient/middlewares/request.js +87 -0
  34. package/lib/HttpClient/typings.d.ts +9 -43
  35. package/lib/IODataSource.d.ts +27 -0
  36. package/lib/IODataSource.js +46 -0
  37. package/lib/caches/LRUCache.js +1 -5
  38. package/lib/caches/LRUDiskCache.js +1 -5
  39. package/lib/clients/Apps.d.ts +84 -0
  40. package/lib/clients/Apps.js +326 -0
  41. package/lib/clients/Assets.d.ts +21 -0
  42. package/lib/clients/{infra/Assets.js → Assets.js} +19 -74
  43. package/lib/clients/Billing.d.ts +11 -0
  44. package/lib/clients/{apps/Billing.js → Billing.js} +3 -8
  45. package/lib/clients/BillingMetrics.d.ts +12 -0
  46. package/lib/clients/BillingMetrics.js +10 -0
  47. package/lib/clients/{apps/Builder.d.ts → Builder.d.ts} +11 -12
  48. package/lib/clients/{apps/Builder.js → Builder.js} +22 -49
  49. package/lib/clients/Events.d.ts +6 -0
  50. package/lib/clients/Events.js +19 -0
  51. package/lib/clients/Housekeeper.d.ts +11 -0
  52. package/lib/clients/Housekeeper.js +24 -0
  53. package/lib/clients/ID.d.ts +22 -0
  54. package/lib/clients/ID.js +48 -0
  55. package/lib/clients/IOClients.d.ts +24 -29
  56. package/lib/clients/IOClients.js +26 -36
  57. package/lib/clients/LicenseManager.d.ts +6 -0
  58. package/lib/clients/{janus/LicenseManager.js → LicenseManager.js} +8 -23
  59. package/lib/clients/Logger.d.ts +27 -0
  60. package/lib/clients/Logger.js +32 -0
  61. package/lib/clients/Messages.d.ts +18 -0
  62. package/lib/clients/Messages.js +20 -0
  63. package/lib/clients/MessagesGraphQL.d.ts +63 -0
  64. package/lib/clients/MessagesGraphQL.js +50 -0
  65. package/lib/clients/Metadata.d.ts +25 -0
  66. package/lib/clients/Metadata.js +53 -0
  67. package/lib/clients/Registry.d.ts +61 -0
  68. package/lib/clients/{infra/Registry.js → Registry.js} +33 -93
  69. package/lib/clients/Router.d.ts +33 -0
  70. package/lib/clients/Router.js +50 -0
  71. package/lib/clients/{janus/Segment.d.ts → Segment.d.ts} +11 -7
  72. package/lib/clients/Segment.js +69 -0
  73. package/lib/clients/{janus/Session.d.ts → Session.d.ts} +4 -4
  74. package/lib/clients/{janus/Session.js → Session.js} +13 -24
  75. package/lib/clients/{apps/Settings.d.ts → Settings.d.ts} +4 -5
  76. package/lib/clients/{apps/Settings.js → Settings.js} +20 -14
  77. package/lib/clients/Sphinx.d.ts +12 -0
  78. package/lib/clients/Sphinx.js +19 -0
  79. package/lib/clients/{janus/Tenant.d.ts → Tenant.d.ts} +7 -6
  80. package/lib/clients/Tenant.js +13 -0
  81. package/lib/clients/VBase.d.ts +57 -0
  82. package/lib/clients/VBase.js +116 -0
  83. package/lib/clients/Workspaces.d.ts +17 -0
  84. package/lib/clients/Workspaces.js +38 -0
  85. package/lib/clients/index.d.ts +21 -9
  86. package/lib/clients/index.js +21 -12
  87. package/lib/constants.d.ts +1 -49
  88. package/lib/constants.js +1 -54
  89. package/lib/errors/ResolverError.d.ts +1 -1
  90. package/lib/errors/ResolverError.js +2 -2
  91. package/lib/errors/ResolverWarning.d.ts +1 -1
  92. package/lib/errors/ResolverWarning.js +2 -2
  93. package/lib/index.d.ts +7 -9
  94. package/lib/index.js +6 -8
  95. package/lib/metrics/MetricsAccumulator.d.ts +18 -1
  96. package/lib/metrics/MetricsAccumulator.js +22 -38
  97. package/lib/responses.d.ts +44 -3
  98. package/lib/service/Runtime.d.ts +18 -0
  99. package/lib/service/Runtime.js +57 -0
  100. package/lib/service/{worker/runtime/Service.d.ts → Service.d.ts} +5 -5
  101. package/lib/service/{worker/runtime/Service.js → Service.js} +1 -2
  102. package/lib/service/events/index.d.ts +3 -0
  103. package/lib/service/events/index.js +21 -0
  104. package/lib/service/graphql/index.d.ts +7 -0
  105. package/lib/service/graphql/index.js +33 -0
  106. package/lib/service/graphql/middlewares/error.js +107 -0
  107. package/lib/service/graphql/middlewares/formatters.d.ts +2 -0
  108. package/lib/service/graphql/middlewares/formatters.js +64 -0
  109. package/lib/service/graphql/middlewares/query.d.ts +2 -0
  110. package/lib/service/graphql/middlewares/query.js +32 -0
  111. package/lib/service/graphql/middlewares/response.js +36 -0
  112. package/lib/service/graphql/middlewares/run.d.ts +4 -0
  113. package/lib/service/graphql/middlewares/run.js +55 -0
  114. package/lib/service/graphql/middlewares/schema.d.ts +2 -0
  115. package/lib/service/graphql/middlewares/schema.js +8 -0
  116. package/lib/service/graphql/middlewares/timings.d.ts +2 -0
  117. package/lib/service/graphql/middlewares/timings.js +10 -0
  118. package/lib/service/graphql/middlewares/upload.d.ts +7 -0
  119. package/lib/service/graphql/schema/index.d.ts +3 -0
  120. package/lib/service/graphql/schema/index.js +66 -0
  121. package/lib/service/graphql/schema/messagesLoader.d.ts +4 -0
  122. package/lib/service/graphql/schema/messagesLoader.js +41 -0
  123. package/lib/service/graphql/schema/messagesLoaderV2.d.ts +5 -0
  124. package/lib/service/graphql/schema/messagesLoaderV2.js +44 -0
  125. package/lib/service/{worker/runtime/graphql → graphql}/schema/schemaDirectives/Auth.d.ts +0 -1
  126. package/lib/service/{worker/runtime/graphql → graphql}/schema/schemaDirectives/Auth.js +5 -11
  127. package/lib/service/{worker/runtime/graphql → graphql}/schema/schemaDirectives/Sanitize.d.ts +0 -1
  128. package/lib/service/{worker/runtime/graphql → graphql}/schema/schemaDirectives/Sanitize.js +0 -6
  129. package/lib/service/{worker/runtime/graphql → graphql}/schema/schemaDirectives/SmartCacheDirective.d.ts +0 -1
  130. package/lib/service/{worker/runtime/graphql → graphql}/schema/schemaDirectives/SmartCacheDirective.js +3 -8
  131. package/lib/service/{worker/runtime/graphql/schema/schemaDirectives/TranslateTo.d.ts → graphql/schema/schemaDirectives/Translatable.d.ts} +1 -2
  132. package/lib/service/graphql/schema/schemaDirectives/Translatable.js +54 -0
  133. package/lib/service/graphql/schema/schemaDirectives/TranslatableV2.d.ts +13 -0
  134. package/lib/service/graphql/schema/schemaDirectives/TranslatableV2.js +67 -0
  135. package/lib/service/graphql/schema/schemaDirectives/index.d.ts +13 -0
  136. package/lib/service/graphql/schema/schemaDirectives/index.js +17 -0
  137. package/lib/service/graphql/schema/typeDefs/index.d.ts +16 -0
  138. package/lib/service/graphql/schema/typeDefs/index.js +21 -0
  139. package/lib/service/graphql/schema/typeDefs/ioMessage.d.ts +8 -0
  140. package/lib/service/graphql/schema/typeDefs/ioMessage.js +33 -0
  141. package/lib/service/{worker/runtime/graphql → graphql}/schema/typeDefs/sanitizedString.js +1 -5
  142. package/lib/service/graphql/typings.d.ts +21 -0
  143. package/lib/service/graphql/utils/cacheControl.d.ts +6 -0
  144. package/lib/service/graphql/utils/cacheControl.js +38 -0
  145. package/lib/service/graphql/utils/maxAgeEnum.d.ts +6 -0
  146. package/lib/service/graphql/utils/maxAgeEnum.js +17 -0
  147. package/lib/service/http/index.d.ts +3 -0
  148. package/lib/service/http/index.js +18 -0
  149. package/lib/service/http/middlewares/authTokens.d.ts +3 -0
  150. package/lib/service/http/middlewares/cancellationToken.d.ts +3 -0
  151. package/lib/service/{worker/runtime/http → http}/middlewares/cancellationToken.js +1 -2
  152. package/lib/service/http/middlewares/clients.d.ts +4 -0
  153. package/lib/service/http/middlewares/error.d.ts +3 -0
  154. package/lib/service/{worker/runtime/http → http}/middlewares/error.js +10 -19
  155. package/lib/service/{worker/runtime/http → http}/middlewares/requestStats.d.ts +3 -3
  156. package/lib/service/http/middlewares/setCookie.d.ts +3 -0
  157. package/lib/service/http/middlewares/timings.d.ts +3 -0
  158. package/lib/service/{worker/runtime/http → http}/middlewares/timings.js +8 -21
  159. package/lib/service/http/middlewares/vary.d.ts +3 -0
  160. package/lib/service/{worker/runtime/http → http}/middlewares/vary.js +3 -3
  161. package/lib/service/logger/index.d.ts +28 -2
  162. package/lib/service/logger/index.js +68 -5
  163. package/lib/service/method.d.ts +9 -0
  164. package/lib/service/{worker/runtime/typings.d.ts → typings.d.ts} +36 -70
  165. package/lib/service/utils/compose.d.ts +4 -0
  166. package/lib/service/{worker/runtime/utils → utils}/compose.js +2 -2
  167. package/lib/utils/MineWinsConflictsResolver.d.ts +4 -5
  168. package/lib/utils/MineWinsConflictsResolver.js +17 -23
  169. package/lib/utils/MineWinsConflictsResolver.test.d.ts +1 -0
  170. package/lib/utils/MineWinsConflictsResolver.test.js +134 -0
  171. package/lib/utils/app.d.ts +1 -3
  172. package/lib/utils/app.js +1 -3
  173. package/lib/utils/appsStaleIfError.d.ts +1 -1
  174. package/lib/utils/appsStaleIfError.js +2 -2
  175. package/lib/utils/billingOptions.d.ts +3 -36
  176. package/lib/utils/billingOptions.js +3 -7
  177. package/lib/utils/binding.d.ts +3 -3
  178. package/lib/utils/cancel.d.ts +2 -2
  179. package/lib/utils/cancel.js +1 -2
  180. package/lib/utils/log.d.ts +3 -1
  181. package/lib/utils/log.js +2 -2
  182. package/lib/utils/message.js +1 -4
  183. package/lib/utils/tenant.d.ts +3 -3
  184. package/lib/utils/time.d.ts +2 -4
  185. package/lib/utils/time.js +2 -9
  186. package/lib/utils/unhandled.d.ts +1 -0
  187. package/lib/{service/worker/listeners.js → utils/unhandled.js} +15 -9
  188. package/package.json +2 -2
  189. package/CHANGELOG.md +0 -1846
  190. package/lib/HttpClient/agents.d.ts +0 -3
  191. package/lib/HttpClient/agents.js +0 -24
  192. package/lib/HttpClient/middlewares/request/HttpAgentSingleton.d.ts +0 -11
  193. package/lib/HttpClient/middlewares/request/HttpAgentSingleton.js +0 -30
  194. package/lib/HttpClient/middlewares/request/index.d.ts +0 -18
  195. package/lib/HttpClient/middlewares/request/index.js +0 -84
  196. package/lib/HttpClient/middlewares/request/setupAxios/index.d.ts +0 -1
  197. package/lib/HttpClient/middlewares/request/setupAxios/index.js +0 -20
  198. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/exponentialBackoff.d.ts +0 -2
  199. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/exponentialBackoff.js +0 -53
  200. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/index.d.ts +0 -2
  201. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/index.js +0 -7
  202. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/tracing/index.d.ts +0 -8
  203. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/tracing/index.js +0 -53
  204. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/tracing/spanSetup.d.ts +0 -4
  205. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/tracing/spanSetup.js +0 -29
  206. package/lib/HttpClient/middlewares/tracing.d.ts +0 -15
  207. package/lib/HttpClient/middlewares/tracing.js +0 -56
  208. package/lib/clients/IOClient.js +0 -19
  209. package/lib/clients/apps/Billing.d.ts +0 -12
  210. package/lib/clients/apps/MessagesGraphQL.d.ts +0 -61
  211. package/lib/clients/apps/MessagesGraphQL.js +0 -121
  212. package/lib/clients/apps/catalogGraphQL/brand.d.ts +0 -13
  213. package/lib/clients/apps/catalogGraphQL/brand.js +0 -18
  214. package/lib/clients/apps/catalogGraphQL/category.d.ts +0 -11
  215. package/lib/clients/apps/catalogGraphQL/category.js +0 -16
  216. package/lib/clients/apps/catalogGraphQL/index.d.ts +0 -22
  217. package/lib/clients/apps/catalogGraphQL/index.js +0 -88
  218. package/lib/clients/apps/catalogGraphQL/product.d.ts +0 -25
  219. package/lib/clients/apps/catalogGraphQL/product.js +0 -30
  220. package/lib/clients/apps/catalogGraphQL/sku.d.ts +0 -26
  221. package/lib/clients/apps/catalogGraphQL/sku.js +0 -30
  222. package/lib/clients/apps/index.d.ts +0 -7
  223. package/lib/clients/apps/index.js +0 -12
  224. package/lib/clients/external/ID.d.ts +0 -23
  225. package/lib/clients/external/ID.js +0 -60
  226. package/lib/clients/external/Masterdata.d.ts +0 -94
  227. package/lib/clients/external/Masterdata.js +0 -224
  228. package/lib/clients/external/PaymentProvider.d.ts +0 -31
  229. package/lib/clients/external/PaymentProvider.js +0 -42
  230. package/lib/clients/external/index.d.ts +0 -4
  231. package/lib/clients/external/index.js +0 -9
  232. package/lib/clients/infra/Apps.d.ts +0 -88
  233. package/lib/clients/infra/Apps.js +0 -508
  234. package/lib/clients/infra/Assets.d.ts +0 -34
  235. package/lib/clients/infra/BillingMetrics.d.ts +0 -13
  236. package/lib/clients/infra/BillingMetrics.js +0 -15
  237. package/lib/clients/infra/Events.d.ts +0 -12
  238. package/lib/clients/infra/Events.js +0 -33
  239. package/lib/clients/infra/Housekeeper.d.ts +0 -10
  240. package/lib/clients/infra/Housekeeper.js +0 -30
  241. package/lib/clients/infra/Metadata.d.ts +0 -26
  242. package/lib/clients/infra/Metadata.js +0 -83
  243. package/lib/clients/infra/Registry.d.ts +0 -59
  244. package/lib/clients/infra/Router.d.ts +0 -34
  245. package/lib/clients/infra/Router.js +0 -81
  246. package/lib/clients/infra/Sphinx.d.ts +0 -13
  247. package/lib/clients/infra/Sphinx.js +0 -29
  248. package/lib/clients/infra/VBase.d.ts +0 -60
  249. package/lib/clients/infra/VBase.js +0 -196
  250. package/lib/clients/infra/Workspaces.d.ts +0 -18
  251. package/lib/clients/infra/Workspaces.js +0 -65
  252. package/lib/clients/infra/index.d.ts +0 -12
  253. package/lib/clients/infra/index.js +0 -17
  254. package/lib/clients/janus/LicenseManager.d.ts +0 -7
  255. package/lib/clients/janus/Segment.js +0 -88
  256. package/lib/clients/janus/Tenant.js +0 -28
  257. package/lib/clients/janus/index.d.ts +0 -5
  258. package/lib/clients/janus/index.js +0 -10
  259. package/lib/service/index.d.ts +0 -2
  260. package/lib/service/index.js +0 -30
  261. package/lib/service/loaders.d.ts +0 -8
  262. package/lib/service/loaders.js +0 -54
  263. package/lib/service/logger/console.d.ts +0 -10
  264. package/lib/service/logger/console.js +0 -36
  265. package/lib/service/logger/logger.d.ts +0 -29
  266. package/lib/service/logger/logger.js +0 -61
  267. package/lib/service/logger/metricsLogger.d.ts +0 -40
  268. package/lib/service/logger/metricsLogger.js +0 -149
  269. package/lib/service/master.d.ts +0 -2
  270. package/lib/service/master.js +0 -87
  271. package/lib/service/metrics/requestMetricsMiddleware.d.ts +0 -2
  272. package/lib/service/metrics/requestMetricsMiddleware.js +0 -44
  273. package/lib/service/tracing/TracerSingleton.d.ts +0 -7
  274. package/lib/service/tracing/TracerSingleton.js +0 -48
  275. package/lib/service/tracing/metrics/MetricNames.d.ts +0 -60
  276. package/lib/service/tracing/metrics/MetricNames.js +0 -44
  277. package/lib/service/tracing/metrics/instruments.d.ts +0 -9
  278. package/lib/service/tracing/metrics/instruments.js +0 -11
  279. package/lib/service/tracing/metrics/measurers/EventLoopLagMeasurer.d.ts +0 -9
  280. package/lib/service/tracing/metrics/measurers/EventLoopLagMeasurer.js +0 -25
  281. package/lib/service/tracing/tracingMiddlewares.d.ts +0 -5
  282. package/lib/service/tracing/tracingMiddlewares.js +0 -107
  283. package/lib/service/worker/index.d.ts +0 -11
  284. package/lib/service/worker/index.js +0 -195
  285. package/lib/service/worker/listeners.d.ts +0 -3
  286. package/lib/service/worker/runtime/builtIn/handlers.d.ts +0 -4
  287. package/lib/service/worker/runtime/builtIn/handlers.js +0 -30
  288. package/lib/service/worker/runtime/builtIn/middlewares.d.ts +0 -4
  289. package/lib/service/worker/runtime/builtIn/middlewares.js +0 -40
  290. package/lib/service/worker/runtime/events/index.d.ts +0 -4
  291. package/lib/service/worker/runtime/events/index.js +0 -46
  292. package/lib/service/worker/runtime/events/middlewares/body.d.ts +0 -3
  293. package/lib/service/worker/runtime/events/middlewares/body.js +0 -22
  294. package/lib/service/worker/runtime/events/middlewares/context.d.ts +0 -3
  295. package/lib/service/worker/runtime/events/middlewares/context.js +0 -22
  296. package/lib/service/worker/runtime/events/router.d.ts +0 -2
  297. package/lib/service/worker/runtime/events/router.js +0 -27
  298. package/lib/service/worker/runtime/graphql/index.d.ts +0 -6
  299. package/lib/service/worker/runtime/graphql/index.js +0 -27
  300. package/lib/service/worker/runtime/graphql/middlewares/context.d.ts +0 -2
  301. package/lib/service/worker/runtime/graphql/middlewares/context.js +0 -16
  302. package/lib/service/worker/runtime/graphql/middlewares/error.js +0 -93
  303. package/lib/service/worker/runtime/graphql/middlewares/query.d.ts +0 -2
  304. package/lib/service/worker/runtime/graphql/middlewares/query.js +0 -52
  305. package/lib/service/worker/runtime/graphql/middlewares/response.js +0 -38
  306. package/lib/service/worker/runtime/graphql/middlewares/run.d.ts +0 -2
  307. package/lib/service/worker/runtime/graphql/middlewares/run.js +0 -19
  308. package/lib/service/worker/runtime/graphql/middlewares/updateSchema.d.ts +0 -4
  309. package/lib/service/worker/runtime/graphql/middlewares/updateSchema.js +0 -28
  310. package/lib/service/worker/runtime/graphql/middlewares/upload.d.ts +0 -4
  311. package/lib/service/worker/runtime/graphql/schema/index.d.ts +0 -7
  312. package/lib/service/worker/runtime/graphql/schema/index.js +0 -31
  313. package/lib/service/worker/runtime/graphql/schema/messagesLoaderV2.d.ts +0 -6
  314. package/lib/service/worker/runtime/graphql/schema/messagesLoaderV2.js +0 -79
  315. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/CacheControl.d.ts +0 -7
  316. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/CacheControl.js +0 -37
  317. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Deprecated.d.ts +0 -11
  318. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Deprecated.js +0 -61
  319. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Metric.d.ts +0 -7
  320. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Metric.js +0 -40
  321. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Settings.d.ts +0 -6
  322. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Settings.js +0 -34
  323. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/TranslatableV2.d.ts +0 -7
  324. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/TranslatableV2.js +0 -39
  325. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/TranslateTo.js +0 -33
  326. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/index.d.ts +0 -22
  327. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/index.js +0 -36
  328. package/lib/service/worker/runtime/graphql/schema/typeDefs/index.d.ts +0 -7
  329. package/lib/service/worker/runtime/graphql/schema/typeDefs/index.js +0 -12
  330. package/lib/service/worker/runtime/graphql/typings.d.ts +0 -31
  331. package/lib/service/worker/runtime/graphql/utils/cacheControl.d.ts +0 -1
  332. package/lib/service/worker/runtime/graphql/utils/cacheControl.js +0 -32
  333. package/lib/service/worker/runtime/graphql/utils/error.d.ts +0 -1
  334. package/lib/service/worker/runtime/graphql/utils/error.js +0 -76
  335. package/lib/service/worker/runtime/graphql/utils/translations.d.ts +0 -14
  336. package/lib/service/worker/runtime/graphql/utils/translations.js +0 -38
  337. package/lib/service/worker/runtime/http/index.d.ts +0 -5
  338. package/lib/service/worker/runtime/http/index.js +0 -58
  339. package/lib/service/worker/runtime/http/middlewares/authTokens.d.ts +0 -3
  340. package/lib/service/worker/runtime/http/middlewares/cancellationToken.d.ts +0 -3
  341. package/lib/service/worker/runtime/http/middlewares/clients.d.ts +0 -4
  342. package/lib/service/worker/runtime/http/middlewares/context.d.ts +0 -4
  343. package/lib/service/worker/runtime/http/middlewares/context.js +0 -36
  344. package/lib/service/worker/runtime/http/middlewares/error.d.ts +0 -2
  345. package/lib/service/worker/runtime/http/middlewares/rateLimit.d.ts +0 -6
  346. package/lib/service/worker/runtime/http/middlewares/rateLimit.js +0 -42
  347. package/lib/service/worker/runtime/http/middlewares/setCookie.d.ts +0 -3
  348. package/lib/service/worker/runtime/http/middlewares/settings.d.ts +0 -9
  349. package/lib/service/worker/runtime/http/middlewares/settings.js +0 -44
  350. package/lib/service/worker/runtime/http/middlewares/timings.d.ts +0 -3
  351. package/lib/service/worker/runtime/http/middlewares/vary.d.ts +0 -3
  352. package/lib/service/worker/runtime/http/router.d.ts +0 -2
  353. package/lib/service/worker/runtime/http/router.js +0 -23
  354. package/lib/service/worker/runtime/http/routes.d.ts +0 -19
  355. package/lib/service/worker/runtime/http/routes.js +0 -12
  356. package/lib/service/worker/runtime/method.d.ts +0 -9
  357. package/lib/service/worker/runtime/statusTrack.d.ts +0 -14
  358. package/lib/service/worker/runtime/statusTrack.js +0 -37
  359. package/lib/service/worker/runtime/utils/compose.d.ts +0 -5
  360. package/lib/service/worker/runtime/utils/context.d.ts +0 -2
  361. package/lib/service/worker/runtime/utils/context.js +0 -40
  362. package/lib/service/worker/runtime/utils/diff.d.ts +0 -12
  363. package/lib/service/worker/runtime/utils/diff.js +0 -21
  364. package/lib/service/worker/runtime/utils/recorder.d.ts +0 -8
  365. package/lib/service/worker/runtime/utils/recorder.js +0 -37
  366. package/lib/service/worker/runtime/utils/tokenBucket.d.ts +0 -2
  367. package/lib/service/worker/runtime/utils/tokenBucket.js +0 -16
  368. package/lib/tracing/LogEvents.d.ts +0 -31
  369. package/lib/tracing/LogEvents.js +0 -3
  370. package/lib/tracing/LogFields.d.ts +0 -66
  371. package/lib/tracing/LogFields.js +0 -3
  372. package/lib/tracing/Tags.d.ts +0 -81
  373. package/lib/tracing/Tags.js +0 -7
  374. package/lib/tracing/UserLandTracer.d.ts +0 -27
  375. package/lib/tracing/UserLandTracer.js +0 -56
  376. package/lib/tracing/errorReporting/ErrorReport.d.ts +0 -31
  377. package/lib/tracing/errorReporting/ErrorReport.js +0 -70
  378. package/lib/tracing/index.d.ts +0 -9
  379. package/lib/tracing/index.js +0 -19
  380. package/lib/tracing/spanReference/SpanReferenceTypes.d.ts +0 -4
  381. package/lib/tracing/spanReference/SpanReferenceTypes.js +0 -7
  382. package/lib/tracing/spanReference/createSpanReference.d.ts +0 -3
  383. package/lib/tracing/spanReference/createSpanReference.js +0 -8
  384. package/lib/tracing/utils.d.ts +0 -13
  385. package/lib/tracing/utils.js +0 -40
  386. package/lib/utils/conflicts.mock.d.ts +0 -17
  387. package/lib/utils/conflicts.mock.js +0 -27
  388. /package/lib/service/{worker/runtime/graphql → graphql}/middlewares/error.d.ts +0 -0
  389. /package/lib/service/{worker/runtime/graphql → graphql}/middlewares/response.d.ts +0 -0
  390. /package/lib/service/{worker/runtime/graphql → graphql}/middlewares/upload.js +0 -0
  391. /package/lib/service/{worker/runtime/graphql → graphql}/schema/typeDefs/ioUpload.d.ts +0 -0
  392. /package/lib/service/{worker/runtime/graphql → graphql}/schema/typeDefs/ioUpload.js +0 -0
  393. /package/lib/service/{worker/runtime/graphql → graphql}/schema/typeDefs/sanitizedString.d.ts +0 -0
  394. /package/lib/service/{worker/runtime/graphql → graphql}/typings.js +0 -0
  395. /package/lib/service/{worker/runtime/utils/toArray.d.ts → graphql/utils/array.d.ts} +0 -0
  396. /package/lib/service/{worker/runtime/utils/toArray.js → graphql/utils/array.js} +0 -0
  397. /package/lib/service/{worker/runtime/graphql → graphql}/utils/pathname.d.ts +0 -0
  398. /package/lib/service/{worker/runtime/graphql → graphql}/utils/pathname.js +0 -0
  399. /package/lib/service/{worker/runtime/http → http}/middlewares/authTokens.js +0 -0
  400. /package/lib/service/{worker/runtime/http → http}/middlewares/clients.js +0 -0
  401. /package/lib/service/{worker/runtime/http → http}/middlewares/requestStats.js +0 -0
  402. /package/lib/service/{worker/runtime/http → http}/middlewares/setCookie.js +0 -0
  403. /package/lib/service/{worker/runtime/method.js → method.js} +0 -0
  404. /package/lib/service/{worker/runtime/typings.js → typings.js} +0 -0
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- function cpuSnapshot() {
4
- return {
5
- time: microtime(),
6
- usage: process.cpuUsage(),
7
- };
8
- }
9
- exports.cpuSnapshot = cpuSnapshot;
10
- function snapshotDiff(curr, last) {
11
- const timeDiff = curr.time - last.time;
12
- return {
13
- system: (curr.usage.system - last.usage.system) / timeDiff,
14
- user: (curr.usage.user - last.usage.user) / timeDiff,
15
- };
16
- }
17
- exports.snapshotDiff = snapshotDiff;
18
- function microtime() {
19
- const hrTime = process.hrtime();
20
- return hrTime[0] * 1000000 + hrTime[1] / 1000;
21
- }
@@ -1,8 +0,0 @@
1
- import { Context } from 'koa';
2
- export declare class Recorder {
3
- private _record;
4
- constructor();
5
- clear(): void;
6
- record(headers?: Record<string, string>): void;
7
- flush(ctx: Context): void;
8
- }
@@ -1,37 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const ramda_1 = require("ramda");
4
- const constants_1 = require("./../../../../constants");
5
- const HEADERS = [constants_1.META_HEADER, constants_1.META_HEADER_BUCKET];
6
- class Recorder {
7
- constructor() {
8
- this._record = HEADERS.reduce((acc, headerName) => {
9
- acc[headerName] = new Set();
10
- return acc;
11
- }, {});
12
- }
13
- clear() {
14
- HEADERS.forEach(headerName => this._record[headerName].clear());
15
- }
16
- record(headers) {
17
- HEADERS.forEach(headerName => {
18
- const h = headers === null || headers === void 0 ? void 0 : headers[headerName];
19
- if (h) {
20
- h.split(',').map(ramda_1.trim).forEach(hh => this._record[headerName].add(hh));
21
- }
22
- });
23
- }
24
- flush(ctx) {
25
- HEADERS.forEach(headerName => {
26
- const newValueSet = new Set(this._record[headerName]);
27
- const currentValue = ctx.response.get(headerName);
28
- const parsedCurrentValue = typeof currentValue === 'string' ? currentValue.split(',') : currentValue;
29
- parsedCurrentValue.forEach(cur => newValueSet.add(ramda_1.trim(cur)));
30
- const deduped = Array.from(newValueSet).filter(x => !!x);
31
- if (deduped.length > 0) {
32
- ctx.set(headerName, deduped);
33
- }
34
- });
35
- }
36
- }
37
- exports.Recorder = Recorder;
@@ -1,2 +0,0 @@
1
- import TokenBucket from 'tokenbucket';
2
- export declare function createTokenBucket(rateLimit?: number, globalRateTokenBucket?: TokenBucket): TokenBucket;
@@ -1,16 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const tokenbucket_1 = __importDefault(require("tokenbucket"));
7
- function createTokenBucket(rateLimit, globalRateTokenBucket) {
8
- return rateLimit ? new tokenbucket_1.default({
9
- interval: 'minute',
10
- parentBucket: globalRateTokenBucket,
11
- size: Math.ceil(rateLimit / 2.0),
12
- spread: true,
13
- tokensToAddPerInterval: rateLimit,
14
- }) : globalRateTokenBucket;
15
- }
16
- exports.createTokenBucket = createTokenBucket;
@@ -1,31 +0,0 @@
1
- /**
2
- * This file has all events logged by the runtime's distributed tracing
3
- * instrumentation. In the code you would see something like:
4
- * ```
5
- * span.log({ event: HttpEvents.CACHE_KEY_CREATE })
6
- * ```
7
- */
8
- export declare const enum HttpLogEvents {
9
- /** Event holding the cache key created */
10
- CACHE_KEY_CREATE = "cache-key-created",
11
- /** Event representing that the memoization cache has just saved a response */
12
- MEMOIZATION_CACHE_SAVED = "memoization-cache-saved",
13
- /** Event representing that the memoization cache has just saved a error response */
14
- MEMOIZATION_CACHE_SAVED_ERROR = "memoization-cache-saved-error",
15
- /** Event holding information on a local cache hit that just happened */
16
- LOCAL_CACHE_HIT_INFO = "local-cache-hit-info",
17
- /** Event holding information on the cache config that will be used to decide whether or not to update the local cache */
18
- CACHE_CONFIG = "cache-config",
19
- /** Event informing the decision to not update or save to local cache */
20
- NO_LOCAL_CACHE_SAVE = "no-local-cache-save",
21
- /** Event holding information on the local cache save that just happened */
22
- LOCAL_CACHE_SAVED = "local-cache-saved",
23
- /** A request that is retryable just failed - this event will hold info on the retry that may happen */
24
- SETUP_REQUEST_RETRY = "setup-request-retry"
25
- }
26
- export declare const enum RuntimeLogEvents {
27
- /** Event representing that userland middlewares are about to start */
28
- USER_MIDDLEWARES_START = "user-middlewares-start",
29
- /** Event representing that userland middlewares just finished */
30
- USER_MIDDLEWARES_FINISH = "user-middlewares-finish"
31
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- /* tslint:disable:object-literal-sort-keys */
3
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,66 +0,0 @@
1
- /**
2
- * When using span.log({ field1: string1, field2: object2, ... })
3
- * The jaeger backend indexes for search the first-level fields that hold strings
4
- * These fields then can be searched on jaeger-ui using: 'field1=string'
5
- * This file concentrates all log fields used in node-vtex-api that hold
6
- * strings and can be searched in the jaeger-ui
7
- */
8
- export declare const enum ErrorReportLogFields {
9
- /**
10
- * ErrorReport class has some meta info on the error
11
- * The following log fields hold this meta info
12
- */
13
- ERROR_KIND = "error.kind",
14
- ERROR_ID = "error.id",
15
- ERROR_MESSAGE = "error.message",
16
- ERROR_CODE = "error.code",
17
- ERROR_STACK = "error.stack",
18
- ERROR_METADATA_REPORT_COUNT = "error.metadata.reportCount",
19
- ERROR_METADATA_METRICS_INSTANTIATION_TIME = "error.metadata.metrics.InstantiationTime",
20
- /**
21
- * VTEX's Infra errors adds error details to the response
22
- * The following log fields are supposed to hold these fields
23
- */
24
- ERROR_SERVER_CODE = "error.server.code",
25
- ERROR_SERVER_REQUEST_ID = "error.server.request_id"
26
- }
27
- export declare const enum RuntimeLogFields {
28
- /** Time in ms spent to run the user middlewares */
29
- USER_MIDDLEWARES_DURATION = "user-middlewares-duration"
30
- }
31
- export declare const enum HttpCacheLogFields {
32
- /** The generated cache key for Memoization or Local caches */
33
- KEY = "key",
34
- /** The generated cache key for local cache with the segment added to it */
35
- KEY_WITH_SEGMENT = "key-with-segment",
36
- /** The key that was just set on the cache */
37
- KEY_SET = "key-set",
38
- /** The type of cache: 'disk', 'memory' or 'memoization' */
39
- CACHE_TYPE = "cache-type",
40
- /** The etag for the current request used for caching decisions. Can be undefined. */
41
- ETAG = "etag",
42
- /** The expiration time in seconds of the current cache entry (either just saved or fetched from the storage) */
43
- EXPIRATION_TIME = "expiration-time",
44
- /** The http response type. Can be undefined. */
45
- RESPONSE_TYPE = "response-type",
46
- /** The http response encoding. Can be undefined. */
47
- RESPONSE_ENCONDING = "response-encoding",
48
- /**
49
- * The forceMaxAge option on the incoming RequestConfig. This can be set to override no-cache or no-store headers.
50
- * Can be undefined.
51
- */
52
- FORCE_MAX_AGE = "force-max-age",
53
- /** The calculated max-age the current response will have if stored */
54
- CALCULATED_MAX_AGE = "calculated-max-age",
55
- /** Content parsed from the incoming response headers */
56
- AGE = "age",
57
- NO_CACHE = "no-cache",
58
- NO_STORE = "no-store",
59
- MAX_AGE = "max-age"
60
- }
61
- export declare const enum HttpRetryLogFields {
62
- /** The retry number scheduled (e.g, 1, 2, meaning that is the first or second retry) */
63
- RETRY_NUMBER = "retry-number",
64
- /** How much time in ms will be waited until this retry happens */
65
- RETRY_IN = "retry-in"
66
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- /* tslint:disable:object-literal-sort-keys */
3
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,81 +0,0 @@
1
- import { Tags as OpentracingTags } from 'opentracing';
2
- export { OpentracingTags };
3
- /**
4
- * The following tags are process tags - defined when the tracer is instantiated.
5
- * Those will annotate all spans created
6
- */
7
- export declare const enum AppTags {
8
- /** Boolean indicating if the app is linked or not */
9
- VTEX_APP_LINKED = "app.linked",
10
- /** The value of the NODE_ENV environment variable */
11
- VTEX_APP_NODE_ENV = "app.node_env",
12
- /** The @vtex/api version used (e.g. '6.1.2') */
13
- VTEX_APP_NODE_VTEX_API_VERSION = "app.node_vtex_api_version",
14
- /** The value of the VTEX_PRODUCTION environment variable - whether the app is in a production workspace */
15
- VTEX_APP_PRODUCTION = "app.production",
16
- /** The value of the VTEX_REGION environment variable (e.g. 'aws-us-east-1') */
17
- VTEX_APP_REGION = "app.region",
18
- /** The app version (e.g. '1.2.0') */
19
- VTEX_APP_VERSION = "app.version",
20
- /** The workspace in which the app is installed or linked */
21
- VTEX_APP_WORKSPACE = "app.workspace"
22
- }
23
- /** The following tags annotate the entrypoint span on incoming requests */
24
- export declare const enum VTEXIncomingRequestTags {
25
- /** The account being served by the request */
26
- VTEX_ACCOUNT = "vtex.incoming.account",
27
- /** The request id header value */
28
- VTEX_REQUEST_ID = "vtex.request_id",
29
- /** The workspace being served by the request */
30
- VTEX_WORKSPACE = "vtex.incoming.workspace"
31
- }
32
- export declare const enum CustomHttpTags {
33
- HTTP_PATH = "http.path",
34
- /** Set to true when the client had no response, probably meaning that there was a client error */
35
- HTTP_NO_RESPONSE = "http.no_response",
36
- /** The HTTP client name (e.g. Apps, Registry, Router) */
37
- HTTP_CLIENT_NAME = "http.client.name",
38
- /**
39
- * CACHE_ENABLED tags indicate if the Cache strategy is enabled
40
- * for the specific request.
41
- */
42
- HTTP_MEMOIZATION_CACHE_ENABLED = "http.cache.memoization.enabled",
43
- HTTP_DISK_CACHE_ENABLED = "http.cache.disk.enabled",
44
- HTTP_MEMORY_CACHE_ENABLED = "http.cache.memory.enabled",
45
- /**
46
- * CACHE_RESULT tags indicate the result for that cache strategy
47
- * (HIT or MISS for example). Since there may be many layers
48
- * of cache a ENABLED flag for a strategy may be 'true', but
49
- * the RESULT for that strategy may not be present.
50
- */
51
- HTTP_MEMORY_CACHE_RESULT = "http.cache.memory",
52
- HTTP_MEMOIZATION_CACHE_RESULT = "http.cache.memoization",
53
- HTTP_DISK_CACHE_RESULT = "http.cache.disk",
54
- HTTP_ROUTER_CACHE_RESULT = "http.cache.router",
55
- HTTP_RETRY_ERROR_CODE = "http.retry.error.code",
56
- HTTP_RETRY_COUNT = "http.retry.count"
57
- }
58
- export declare const UserlandTags: {
59
- SPAN_KIND: "span.kind";
60
- SPAN_KIND_RPC_CLIENT: "client";
61
- SPAN_KIND_RPC_SERVER: "server";
62
- SPAN_KIND_MESSAGING_PRODUCER: "producer";
63
- SPAN_KIND_MESSAGING_CONSUMER: "consumer";
64
- ERROR: "error";
65
- COMPONENT: "component";
66
- SAMPLING_PRIORITY: "sampling.priority";
67
- PEER_SERVICE: "peer.service";
68
- PEER_HOSTNAME: "peer.hostname";
69
- PEER_ADDRESS: "peer.address";
70
- PEER_HOST_IPV4: "peer.ipv4";
71
- PEER_HOST_IPV6: "peer.ipv6";
72
- PEER_PORT: "peer.port";
73
- HTTP_URL: "http.url";
74
- HTTP_METHOD: "http.method";
75
- HTTP_STATUS_CODE: "http.status_code";
76
- MESSAGE_BUS_DESTINATION: "message_bus.destination";
77
- DB_INSTANCE: "db.instance";
78
- DB_STATEMENT: "db.statement";
79
- DB_TYPE: "db.type";
80
- DB_USER: "db.user";
81
- };
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const opentracing_1 = require("opentracing");
4
- exports.OpentracingTags = opentracing_1.Tags;
5
- exports.UserlandTags = {
6
- ...opentracing_1.Tags,
7
- };
@@ -1,27 +0,0 @@
1
- import { Span, SpanContext, SpanOptions, Tracer } from 'opentracing';
2
- export interface IUserLandTracer {
3
- traceId?: string;
4
- isTraceSampled: boolean;
5
- startSpan: Tracer['startSpan'];
6
- inject: Tracer['inject'];
7
- fallbackSpanContext: () => SpanContext | undefined;
8
- }
9
- export declare const createTracingContextFromCarrier: (newSpanName: string, carrier: Record<string, any>) => {
10
- span: Span;
11
- tracer: IUserLandTracer;
12
- };
13
- export declare class UserLandTracer implements IUserLandTracer {
14
- private tracer;
15
- private fallbackSpan;
16
- private fallbackSpanLock;
17
- private _isSampled;
18
- private _traceId?;
19
- constructor(tracer: Tracer, fallbackSpan?: Span);
20
- get traceId(): string | undefined;
21
- get isTraceSampled(): boolean;
22
- lockFallbackSpan(): void;
23
- setFallbackSpan(newSpan?: Span): void;
24
- startSpan(name: string, options?: SpanOptions): Span;
25
- inject(spanContext: SpanContext | Span, format: string, carrier: any): void;
26
- fallbackSpanContext(): SpanContext | undefined;
27
- }
@@ -1,56 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const opentracing_1 = require("opentracing");
4
- const TracerSingleton_1 = require("../service/tracing/TracerSingleton");
5
- const utils_1 = require("./utils");
6
- exports.createTracingContextFromCarrier = (newSpanName, carrier) => {
7
- const tracer = TracerSingleton_1.TracerSingleton.getTracer();
8
- const rootSpan = tracer.extract(opentracing_1.FORMAT_HTTP_HEADERS, carrier);
9
- if (rootSpan == null) {
10
- throw new Error('Missing span context data on carrier');
11
- }
12
- const span = tracer.startSpan(newSpanName, { childOf: rootSpan });
13
- const userlandTracer = new UserLandTracer(tracer, span);
14
- userlandTracer.lockFallbackSpan();
15
- return { span, tracer: userlandTracer };
16
- };
17
- class UserLandTracer {
18
- constructor(tracer, fallbackSpan) {
19
- this.tracer = tracer;
20
- this.fallbackSpan = fallbackSpan;
21
- this.fallbackSpanLock = false;
22
- const { traceId, isSampled } = utils_1.getTraceInfo(fallbackSpan);
23
- this._traceId = traceId;
24
- this._isSampled = isSampled;
25
- }
26
- get traceId() {
27
- return this._traceId;
28
- }
29
- get isTraceSampled() {
30
- return this._isSampled;
31
- }
32
- lockFallbackSpan() {
33
- this.fallbackSpanLock = true;
34
- }
35
- setFallbackSpan(newSpan) {
36
- if (this.fallbackSpanLock) {
37
- throw new Error(`FallbackSpan is locked, can't change it`);
38
- }
39
- this.fallbackSpan = newSpan;
40
- }
41
- startSpan(name, options) {
42
- var _a;
43
- if (options && (options.childOf || ((_a = options.references) === null || _a === void 0 ? void 0 : _a.length))) {
44
- return this.tracer.startSpan(name, options);
45
- }
46
- return this.tracer.startSpan(name, { ...options, childOf: this.fallbackSpan });
47
- }
48
- inject(spanContext, format, carrier) {
49
- return this.tracer.inject(spanContext, format, carrier);
50
- }
51
- fallbackSpanContext() {
52
- var _a;
53
- return (_a = this.fallbackSpan) === null || _a === void 0 ? void 0 : _a.context();
54
- }
55
- }
56
- exports.UserLandTracer = UserLandTracer;
@@ -1,31 +0,0 @@
1
- import { ErrorReportBase, ErrorReportCreateArgs } from '@vtex/node-error-report';
2
- import { Span } from 'opentracing';
3
- import { IOContext } from '../../service/worker/runtime/typings';
4
- export declare class ErrorReport extends ErrorReportBase {
5
- /**
6
- * Create a new ErrorReport wrapping args.originalError
7
- *
8
- * In case the args.originalError argument is already an ErrorReport
9
- * instance, then ErrorReport.create just returns it. If it's not,
10
- * it returns a new ErrorReport wrapping the error. This way you can
11
- * use ErrorReport.create on a catchAll, e.g.:
12
- *
13
- * ```
14
- * try {
15
- * await next()
16
- * } catch(err) {
17
- * ErrorReport.create({ originalError: err }).injectOnSpan(span)
18
- * }
19
- * ```
20
- *
21
- * More docs on the ErrorReport available on: https://github.com/vtex/node-error-report
22
- */
23
- static create(args: ErrorReportCreateArgs): ErrorReport;
24
- /**
25
- * Inject information about the error wrapped by this ErrorReport
26
- * instance on the provided Span. If a logger is provided and the
27
- * span is part of a **sampled** trace, then the error will be logged.
28
- */
29
- injectOnSpan(span?: Span, logger?: IOContext['logger']): this;
30
- private shouldLogToSplunk;
31
- }
@@ -1,70 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const node_error_report_1 = require("@vtex/node-error-report");
4
- const __1 = require("..");
5
- const utils_1 = require("../utils");
6
- class ErrorReport extends node_error_report_1.ErrorReportBase {
7
- /**
8
- * Create a new ErrorReport wrapping args.originalError
9
- *
10
- * In case the args.originalError argument is already an ErrorReport
11
- * instance, then ErrorReport.create just returns it. If it's not,
12
- * it returns a new ErrorReport wrapping the error. This way you can
13
- * use ErrorReport.create on a catchAll, e.g.:
14
- *
15
- * ```
16
- * try {
17
- * await next()
18
- * } catch(err) {
19
- * ErrorReport.create({ originalError: err }).injectOnSpan(span)
20
- * }
21
- * ```
22
- *
23
- * More docs on the ErrorReport available on: https://github.com/vtex/node-error-report
24
- */
25
- static create(args) {
26
- if (args.originalError instanceof ErrorReport) {
27
- return args.originalError;
28
- }
29
- return new ErrorReport(node_error_report_1.createErrorReportBaseArgs(args));
30
- }
31
- /**
32
- * Inject information about the error wrapped by this ErrorReport
33
- * instance on the provided Span. If a logger is provided and the
34
- * span is part of a **sampled** trace, then the error will be logged.
35
- */
36
- injectOnSpan(span, logger) {
37
- var _a, _b, _c, _d;
38
- span === null || span === void 0 ? void 0 : span.setTag(__1.TracingTags.ERROR, 'true');
39
- const indexedLogs = {
40
- ["error.kind" /* ERROR_KIND */]: this.kind,
41
- ["error.id" /* ERROR_ID */]: this.metadata.errorId,
42
- };
43
- if (node_error_report_1.isRequestInfo(this.parsedInfo) &&
44
- this.parsedInfo.response &&
45
- node_error_report_1.isInfraErrorData((_a = this.parsedInfo.response) === null || _a === void 0 ? void 0 : _a.data)) {
46
- indexedLogs["error.server.code" /* ERROR_SERVER_CODE */] = this.parsedInfo.response.data.code;
47
- indexedLogs["error.server.request_id" /* ERROR_SERVER_REQUEST_ID */] = this.parsedInfo.response.data.requestId;
48
- }
49
- const serializableError = this.toObject();
50
- span === null || span === void 0 ? void 0 : span.log({
51
- event: 'error',
52
- ...indexedLogs,
53
- ["error.message" /* ERROR_MESSAGE */]: serializableError.message,
54
- ["error.metadata.metrics.InstantiationTime" /* ERROR_METADATA_METRICS_INSTANTIATION_TIME */]: (_b = serializableError.metadata) === null || _b === void 0 ? void 0 : _b.reportCount,
55
- ["error.metadata.reportCount" /* ERROR_METADATA_REPORT_COUNT */]: (_d = (_c = serializableError.metadata) === null || _c === void 0 ? void 0 : _c.metrics) === null || _d === void 0 ? void 0 : _d.instantiationTime,
56
- ["error.stack" /* ERROR_STACK */]: serializableError.stack,
57
- ["error.code" /* ERROR_CODE */]: serializableError.code,
58
- });
59
- if (logger && this.shouldLogToSplunk(span)) {
60
- logger.error(serializableError);
61
- this.markErrorAsReported();
62
- }
63
- return this;
64
- }
65
- shouldLogToSplunk(span) {
66
- var _a;
67
- return !this.isErrorReported() && ((_a = utils_1.getTraceInfo(span)) === null || _a === void 0 ? void 0 : _a.isSampled);
68
- }
69
- }
70
- exports.ErrorReport = ErrorReport;
@@ -1,9 +0,0 @@
1
- import { FORMAT_HTTP_HEADERS, Span } from 'opentracing';
2
- export { ErrorKindsBase as ErrorKinds } from '@vtex/node-error-report';
3
- export { ErrorReport } from './errorReporting/ErrorReport';
4
- export { createSpanReference } from './spanReference/createSpanReference';
5
- export { SpanReferenceTypes } from './spanReference/SpanReferenceTypes';
6
- export { UserlandTags as TracingTags } from './Tags';
7
- export { createTracingContextFromCarrier, IUserLandTracer } from './UserLandTracer';
8
- export { getTraceInfo, TraceInfo } from './utils';
9
- export { Span, FORMAT_HTTP_HEADERS };
@@ -1,19 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const opentracing_1 = require("opentracing");
4
- exports.FORMAT_HTTP_HEADERS = opentracing_1.FORMAT_HTTP_HEADERS;
5
- exports.Span = opentracing_1.Span;
6
- var node_error_report_1 = require("@vtex/node-error-report");
7
- exports.ErrorKinds = node_error_report_1.ErrorKindsBase;
8
- var ErrorReport_1 = require("./errorReporting/ErrorReport");
9
- exports.ErrorReport = ErrorReport_1.ErrorReport;
10
- var createSpanReference_1 = require("./spanReference/createSpanReference");
11
- exports.createSpanReference = createSpanReference_1.createSpanReference;
12
- var SpanReferenceTypes_1 = require("./spanReference/SpanReferenceTypes");
13
- exports.SpanReferenceTypes = SpanReferenceTypes_1.SpanReferenceTypes;
14
- var Tags_1 = require("./Tags");
15
- exports.TracingTags = Tags_1.UserlandTags;
16
- var UserLandTracer_1 = require("./UserLandTracer");
17
- exports.createTracingContextFromCarrier = UserLandTracer_1.createTracingContextFromCarrier;
18
- var utils_1 = require("./utils");
19
- exports.getTraceInfo = utils_1.getTraceInfo;
@@ -1,4 +0,0 @@
1
- export declare enum SpanReferenceTypes {
2
- CHILD_OF = 0,
3
- FOLLOWS_FROM = 1
4
- }
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- var SpanReferenceTypes;
4
- (function (SpanReferenceTypes) {
5
- SpanReferenceTypes[SpanReferenceTypes["CHILD_OF"] = 0] = "CHILD_OF";
6
- SpanReferenceTypes[SpanReferenceTypes["FOLLOWS_FROM"] = 1] = "FOLLOWS_FROM";
7
- })(SpanReferenceTypes = exports.SpanReferenceTypes || (exports.SpanReferenceTypes = {}));
@@ -1,3 +0,0 @@
1
- import { Reference, Span } from 'opentracing';
2
- import { SpanReferenceTypes } from './SpanReferenceTypes';
3
- export declare function createSpanReference(span: Span, type: SpanReferenceTypes): Reference;
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const opentracing_1 = require("opentracing");
4
- const SpanReferenceTypes_1 = require("./SpanReferenceTypes");
5
- function createSpanReference(span, type) {
6
- return new opentracing_1.Reference(type === SpanReferenceTypes_1.SpanReferenceTypes.CHILD_OF ? opentracing_1.REFERENCE_CHILD_OF : opentracing_1.REFERENCE_FOLLOWS_FROM, span.context());
7
- }
8
- exports.createSpanReference = createSpanReference;
@@ -1,13 +0,0 @@
1
- import { Span } from 'opentracing';
2
- export interface TraceInfo {
3
- traceId?: string;
4
- isSampled: boolean;
5
- }
6
- export declare function getTraceInfo(span?: Span): TraceInfo;
7
- /**
8
- * Do a shallow copy of a headers object and redacts sensitive information.
9
- *
10
- * @param headersObj The headers object
11
- * @param resultFieldsPrefix The prefix that will be added to each field on the result object
12
- */
13
- export declare const cloneAndSanitizeHeaders: (headersObj: Record<string, any>, resultFieldsPrefix?: string) => Record<string, string>;
@@ -1,40 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const node_error_report_1 = require("@vtex/node-error-report");
4
- function getTraceInfo(span) {
5
- var _a, _b, _c;
6
- const spanContext = span === null || span === void 0 ? void 0 : span.context();
7
- return {
8
- isSampled: (_c = (_b = (_a = spanContext) === null || _a === void 0 ? void 0 : _a.isSampled) === null || _b === void 0 ? void 0 : _b.call(_a)) !== null && _c !== void 0 ? _c : false,
9
- traceId: spanContext === null || spanContext === void 0 ? void 0 : spanContext.toTraceId(),
10
- };
11
- }
12
- exports.getTraceInfo = getTraceInfo;
13
- /**
14
- * Do a shallow copy of a headers object and redacts sensitive information.
15
- *
16
- * @param headersObj The headers object
17
- * @param resultFieldsPrefix The prefix that will be added to each field on the result object
18
- */
19
- exports.cloneAndSanitizeHeaders = (headersObj, resultFieldsPrefix = '') => {
20
- const ret = {};
21
- const entries = Object.entries(headersObj);
22
- for (const [key, val] of entries) {
23
- // Most of the time val is a string, but there are some cases, for example when we do a axios interceptor,
24
- // that a header field can contain an object, for example:
25
- // ```
26
- // "common": {
27
- // "Accept": "application/json, text/plain, */*"
28
- // },
29
- // "delete": { },
30
- // "get": { },
31
- // "head": { },
32
- // "post": {
33
- // "Content-Type": "application/x-www-form-urlencoded"
34
- // },
35
- // ```
36
- // In those corner cases we probably won't have a sensitive string as key, so we don't treat them here
37
- ret[`${resultFieldsPrefix}${key}`] = node_error_report_1.authFields.includes(key) ? node_error_report_1.sanitizeAuth(val) : val;
38
- }
39
- return ret;
40
- };
@@ -1,17 +0,0 @@
1
- export declare function getMockConflicts(path: string, base: object, mine: object, master: object): {
2
- data: {
3
- base: {
4
- content: string;
5
- mimeType: string;
6
- };
7
- master: {
8
- content: string;
9
- mimeType: string;
10
- };
11
- mine: {
12
- content: string;
13
- mimeType: string;
14
- };
15
- path: string;
16
- }[];
17
- };
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- function jsonToBase64(json) {
4
- return Buffer.from(JSON.stringify(json)).toString('base64');
5
- }
6
- function getMockConflicts(path, base, mine, master) {
7
- return {
8
- data: [
9
- {
10
- base: {
11
- content: jsonToBase64(base),
12
- mimeType: 'application/json',
13
- },
14
- master: {
15
- content: jsonToBase64(master),
16
- mimeType: 'application/json',
17
- },
18
- mine: {
19
- content: jsonToBase64(mine),
20
- mimeType: 'application/json',
21
- },
22
- path,
23
- },
24
- ],
25
- };
26
- }
27
- exports.getMockConflicts = getMockConflicts;