@vtex/api 6.45.4

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 (360) hide show
  1. package/CHANGELOG.md +1685 -0
  2. package/README.md +65 -0
  3. package/gen/manifest.schema +189 -0
  4. package/lib/HttpClient/GraphQLClient.d.ts +28 -0
  5. package/lib/HttpClient/GraphQLClient.js +30 -0
  6. package/lib/HttpClient/HttpClient.d.ts +29 -0
  7. package/lib/HttpClient/HttpClient.js +130 -0
  8. package/lib/HttpClient/agents.d.ts +3 -0
  9. package/lib/HttpClient/agents.js +24 -0
  10. package/lib/HttpClient/index.d.ts +6 -0
  11. package/lib/HttpClient/index.js +14 -0
  12. package/lib/HttpClient/middlewares/cache.d.ts +35 -0
  13. package/lib/HttpClient/middlewares/cache.js +173 -0
  14. package/lib/HttpClient/middlewares/cancellationToken.d.ts +3 -0
  15. package/lib/HttpClient/middlewares/cancellationToken.js +72 -0
  16. package/lib/HttpClient/middlewares/inflight.d.ts +5 -0
  17. package/lib/HttpClient/middlewares/inflight.js +50 -0
  18. package/lib/HttpClient/middlewares/memoization.d.ts +7 -0
  19. package/lib/HttpClient/middlewares/memoization.js +40 -0
  20. package/lib/HttpClient/middlewares/metrics.d.ts +9 -0
  21. package/lib/HttpClient/middlewares/metrics.js +110 -0
  22. package/lib/HttpClient/middlewares/notFound.d.ts +7 -0
  23. package/lib/HttpClient/middlewares/notFound.js +20 -0
  24. package/lib/HttpClient/middlewares/recorder.d.ts +3 -0
  25. package/lib/HttpClient/middlewares/recorder.js +21 -0
  26. package/lib/HttpClient/middlewares/request/HttpAgentSingleton.d.ts +14 -0
  27. package/lib/HttpClient/middlewares/request/HttpAgentSingleton.js +37 -0
  28. package/lib/HttpClient/middlewares/request/index.d.ts +18 -0
  29. package/lib/HttpClient/middlewares/request/index.js +83 -0
  30. package/lib/HttpClient/middlewares/request/setupAxios/index.d.ts +1 -0
  31. package/lib/HttpClient/middlewares/request/setupAxios/index.js +20 -0
  32. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/exponentialBackoff.d.ts +2 -0
  33. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/exponentialBackoff.js +48 -0
  34. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/index.d.ts +2 -0
  35. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/index.js +7 -0
  36. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/tracing/index.d.ts +8 -0
  37. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/tracing/index.js +51 -0
  38. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/tracing/spanSetup.d.ts +4 -0
  39. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/tracing/spanSetup.js +29 -0
  40. package/lib/HttpClient/middlewares/tracing.d.ts +15 -0
  41. package/lib/HttpClient/middlewares/tracing.js +54 -0
  42. package/lib/HttpClient/typings.d.ts +123 -0
  43. package/lib/HttpClient/typings.js +11 -0
  44. package/lib/caches/CacheLayer.d.ts +7 -0
  45. package/lib/caches/CacheLayer.js +2 -0
  46. package/lib/caches/DiskCache.d.ts +17 -0
  47. package/lib/caches/DiskCache.js +70 -0
  48. package/lib/caches/LRUCache.d.ts +16 -0
  49. package/lib/caches/LRUCache.js +48 -0
  50. package/lib/caches/LRUDiskCache.d.ts +21 -0
  51. package/lib/caches/LRUDiskCache.js +132 -0
  52. package/lib/caches/MultilayeredCache.d.ts +14 -0
  53. package/lib/caches/MultilayeredCache.js +68 -0
  54. package/lib/caches/index.d.ts +6 -0
  55. package/lib/caches/index.js +9 -0
  56. package/lib/caches/typings.d.ts +48 -0
  57. package/lib/caches/typings.js +2 -0
  58. package/lib/clients/IOClient.d.ts +13 -0
  59. package/lib/clients/IOClient.js +19 -0
  60. package/lib/clients/IOClients.d.ts +37 -0
  61. package/lib/clients/IOClients.js +89 -0
  62. package/lib/clients/IOGraphQLClient.d.ts +13 -0
  63. package/lib/clients/IOGraphQLClient.js +16 -0
  64. package/lib/clients/apps/AppClient.d.ts +9 -0
  65. package/lib/clients/apps/AppClient.js +34 -0
  66. package/lib/clients/apps/AppGraphQLClient.d.ts +9 -0
  67. package/lib/clients/apps/AppGraphQLClient.js +34 -0
  68. package/lib/clients/apps/Billing.d.ts +12 -0
  69. package/lib/clients/apps/Billing.js +21 -0
  70. package/lib/clients/apps/Builder.d.ts +45 -0
  71. package/lib/clients/apps/Builder.js +114 -0
  72. package/lib/clients/apps/MessagesGraphQL.d.ts +61 -0
  73. package/lib/clients/apps/MessagesGraphQL.js +121 -0
  74. package/lib/clients/apps/Settings.d.ts +14 -0
  75. package/lib/clients/apps/Settings.js +38 -0
  76. package/lib/clients/apps/catalogGraphQL/brand.d.ts +13 -0
  77. package/lib/clients/apps/catalogGraphQL/brand.js +18 -0
  78. package/lib/clients/apps/catalogGraphQL/category.d.ts +11 -0
  79. package/lib/clients/apps/catalogGraphQL/category.js +16 -0
  80. package/lib/clients/apps/catalogGraphQL/index.d.ts +22 -0
  81. package/lib/clients/apps/catalogGraphQL/index.js +88 -0
  82. package/lib/clients/apps/catalogGraphQL/product.d.ts +25 -0
  83. package/lib/clients/apps/catalogGraphQL/product.js +30 -0
  84. package/lib/clients/apps/catalogGraphQL/sku.d.ts +26 -0
  85. package/lib/clients/apps/catalogGraphQL/sku.js +30 -0
  86. package/lib/clients/apps/index.d.ts +7 -0
  87. package/lib/clients/apps/index.js +12 -0
  88. package/lib/clients/external/ExternalClient.d.ts +9 -0
  89. package/lib/clients/external/ExternalClient.js +21 -0
  90. package/lib/clients/external/ID.d.ts +23 -0
  91. package/lib/clients/external/ID.js +60 -0
  92. package/lib/clients/external/Masterdata.d.ts +93 -0
  93. package/lib/clients/external/Masterdata.js +223 -0
  94. package/lib/clients/external/PaymentProvider.d.ts +31 -0
  95. package/lib/clients/external/PaymentProvider.js +42 -0
  96. package/lib/clients/external/index.d.ts +4 -0
  97. package/lib/clients/external/index.js +9 -0
  98. package/lib/clients/index.d.ts +9 -0
  99. package/lib/clients/index.js +17 -0
  100. package/lib/clients/infra/Apps.d.ts +88 -0
  101. package/lib/clients/infra/Apps.js +508 -0
  102. package/lib/clients/infra/Assets.d.ts +34 -0
  103. package/lib/clients/infra/Assets.js +165 -0
  104. package/lib/clients/infra/BillingMetrics.d.ts +13 -0
  105. package/lib/clients/infra/BillingMetrics.js +15 -0
  106. package/lib/clients/infra/Events.d.ts +12 -0
  107. package/lib/clients/infra/Events.js +33 -0
  108. package/lib/clients/infra/Housekeeper.d.ts +10 -0
  109. package/lib/clients/infra/Housekeeper.js +30 -0
  110. package/lib/clients/infra/InfraClient.d.ts +9 -0
  111. package/lib/clients/infra/InfraClient.js +34 -0
  112. package/lib/clients/infra/Metadata.d.ts +26 -0
  113. package/lib/clients/infra/Metadata.js +83 -0
  114. package/lib/clients/infra/Registry.d.ts +59 -0
  115. package/lib/clients/infra/Registry.js +207 -0
  116. package/lib/clients/infra/Router.d.ts +34 -0
  117. package/lib/clients/infra/Router.js +81 -0
  118. package/lib/clients/infra/Sphinx.d.ts +13 -0
  119. package/lib/clients/infra/Sphinx.js +29 -0
  120. package/lib/clients/infra/VBase.d.ts +60 -0
  121. package/lib/clients/infra/VBase.js +171 -0
  122. package/lib/clients/infra/Workspaces.d.ts +18 -0
  123. package/lib/clients/infra/Workspaces.js +65 -0
  124. package/lib/clients/infra/index.d.ts +12 -0
  125. package/lib/clients/infra/index.js +17 -0
  126. package/lib/clients/janus/JanusClient.d.ts +21 -0
  127. package/lib/clients/janus/JanusClient.js +30 -0
  128. package/lib/clients/janus/LicenseManager.d.ts +7 -0
  129. package/lib/clients/janus/LicenseManager.js +58 -0
  130. package/lib/clients/janus/Segment.d.ts +36 -0
  131. package/lib/clients/janus/Segment.js +79 -0
  132. package/lib/clients/janus/Session.d.ts +15 -0
  133. package/lib/clients/janus/Session.js +75 -0
  134. package/lib/clients/janus/Tenant.d.ts +29 -0
  135. package/lib/clients/janus/Tenant.js +28 -0
  136. package/lib/clients/janus/index.d.ts +5 -0
  137. package/lib/clients/janus/index.js +10 -0
  138. package/lib/constants.d.ts +59 -0
  139. package/lib/constants.js +65 -0
  140. package/lib/errors/AuthenticationError.d.ts +18 -0
  141. package/lib/errors/AuthenticationError.js +24 -0
  142. package/lib/errors/ForbiddenError.d.ts +18 -0
  143. package/lib/errors/ForbiddenError.js +24 -0
  144. package/lib/errors/NotFoundError.d.ts +18 -0
  145. package/lib/errors/NotFoundError.js +24 -0
  146. package/lib/errors/RequestCancelledError.d.ts +6 -0
  147. package/lib/errors/RequestCancelledError.js +11 -0
  148. package/lib/errors/ResolverError.d.ts +29 -0
  149. package/lib/errors/ResolverError.js +35 -0
  150. package/lib/errors/ResolverWarning.d.ts +21 -0
  151. package/lib/errors/ResolverWarning.js +28 -0
  152. package/lib/errors/TooManyRequestsError.d.ts +4 -0
  153. package/lib/errors/TooManyRequestsError.js +9 -0
  154. package/lib/errors/UserInputError.d.ts +18 -0
  155. package/lib/errors/UserInputError.js +24 -0
  156. package/lib/errors/customGraphQLError.d.ts +4 -0
  157. package/lib/errors/customGraphQLError.js +9 -0
  158. package/lib/errors/index.d.ts +8 -0
  159. package/lib/errors/index.js +13 -0
  160. package/lib/index.d.ts +17 -0
  161. package/lib/index.js +21 -0
  162. package/lib/metrics/MetricsAccumulator.d.ts +35 -0
  163. package/lib/metrics/MetricsAccumulator.js +125 -0
  164. package/lib/responses.d.ts +79 -0
  165. package/lib/responses.js +2 -0
  166. package/lib/service/index.d.ts +2 -0
  167. package/lib/service/index.js +30 -0
  168. package/lib/service/loaders.d.ts +8 -0
  169. package/lib/service/loaders.js +54 -0
  170. package/lib/service/logger/console.d.ts +10 -0
  171. package/lib/service/logger/console.js +36 -0
  172. package/lib/service/logger/index.d.ts +2 -0
  173. package/lib/service/logger/index.js +7 -0
  174. package/lib/service/logger/logger.d.ts +35 -0
  175. package/lib/service/logger/logger.js +73 -0
  176. package/lib/service/logger/metricsLogger.d.ts +40 -0
  177. package/lib/service/logger/metricsLogger.js +149 -0
  178. package/lib/service/master.d.ts +2 -0
  179. package/lib/service/master.js +91 -0
  180. package/lib/service/tracing/TracerSingleton.d.ts +7 -0
  181. package/lib/service/tracing/TracerSingleton.js +54 -0
  182. package/lib/service/tracing/metrics/MetricNames.d.ts +60 -0
  183. package/lib/service/tracing/metrics/MetricNames.js +44 -0
  184. package/lib/service/tracing/metrics/instruments.d.ts +9 -0
  185. package/lib/service/tracing/metrics/instruments.js +11 -0
  186. package/lib/service/tracing/metrics/measurers/EventLoopLagMeasurer.d.ts +9 -0
  187. package/lib/service/tracing/metrics/measurers/EventLoopLagMeasurer.js +25 -0
  188. package/lib/service/tracing/tracingMiddlewares.d.ts +5 -0
  189. package/lib/service/tracing/tracingMiddlewares.js +119 -0
  190. package/lib/service/worker/index.d.ts +11 -0
  191. package/lib/service/worker/index.js +193 -0
  192. package/lib/service/worker/listeners.d.ts +3 -0
  193. package/lib/service/worker/listeners.js +43 -0
  194. package/lib/service/worker/runtime/Service.d.ts +17 -0
  195. package/lib/service/worker/runtime/Service.js +23 -0
  196. package/lib/service/worker/runtime/builtIn/handlers.d.ts +4 -0
  197. package/lib/service/worker/runtime/builtIn/handlers.js +27 -0
  198. package/lib/service/worker/runtime/builtIn/middlewares.d.ts +4 -0
  199. package/lib/service/worker/runtime/builtIn/middlewares.js +40 -0
  200. package/lib/service/worker/runtime/events/index.d.ts +4 -0
  201. package/lib/service/worker/runtime/events/index.js +46 -0
  202. package/lib/service/worker/runtime/events/middlewares/body.d.ts +3 -0
  203. package/lib/service/worker/runtime/events/middlewares/body.js +22 -0
  204. package/lib/service/worker/runtime/events/middlewares/context.d.ts +3 -0
  205. package/lib/service/worker/runtime/events/middlewares/context.js +22 -0
  206. package/lib/service/worker/runtime/events/router.d.ts +2 -0
  207. package/lib/service/worker/runtime/events/router.js +27 -0
  208. package/lib/service/worker/runtime/graphql/index.d.ts +6 -0
  209. package/lib/service/worker/runtime/graphql/index.js +27 -0
  210. package/lib/service/worker/runtime/graphql/middlewares/context.d.ts +2 -0
  211. package/lib/service/worker/runtime/graphql/middlewares/context.js +16 -0
  212. package/lib/service/worker/runtime/graphql/middlewares/error.d.ts +2 -0
  213. package/lib/service/worker/runtime/graphql/middlewares/error.js +93 -0
  214. package/lib/service/worker/runtime/graphql/middlewares/query.d.ts +2 -0
  215. package/lib/service/worker/runtime/graphql/middlewares/query.js +52 -0
  216. package/lib/service/worker/runtime/graphql/middlewares/response.d.ts +2 -0
  217. package/lib/service/worker/runtime/graphql/middlewares/response.js +38 -0
  218. package/lib/service/worker/runtime/graphql/middlewares/run.d.ts +2 -0
  219. package/lib/service/worker/runtime/graphql/middlewares/run.js +19 -0
  220. package/lib/service/worker/runtime/graphql/middlewares/updateSchema.d.ts +4 -0
  221. package/lib/service/worker/runtime/graphql/middlewares/updateSchema.js +28 -0
  222. package/lib/service/worker/runtime/graphql/middlewares/upload.d.ts +4 -0
  223. package/lib/service/worker/runtime/graphql/middlewares/upload.js +12 -0
  224. package/lib/service/worker/runtime/graphql/schema/index.d.ts +7 -0
  225. package/lib/service/worker/runtime/graphql/schema/index.js +31 -0
  226. package/lib/service/worker/runtime/graphql/schema/messagesLoaderV2.d.ts +6 -0
  227. package/lib/service/worker/runtime/graphql/schema/messagesLoaderV2.js +79 -0
  228. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Auth.d.ts +6 -0
  229. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Auth.js +73 -0
  230. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/CacheControl.d.ts +7 -0
  231. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/CacheControl.js +37 -0
  232. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Deprecated.d.ts +11 -0
  233. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Deprecated.js +61 -0
  234. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Metric.d.ts +7 -0
  235. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Metric.js +40 -0
  236. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Sanitize.d.ts +9 -0
  237. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Sanitize.js +35 -0
  238. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Settings.d.ts +6 -0
  239. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Settings.js +34 -0
  240. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/SmartCacheDirective.d.ts +6 -0
  241. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/SmartCacheDirective.js +29 -0
  242. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/TranslatableV2.d.ts +7 -0
  243. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/TranslatableV2.js +39 -0
  244. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/TranslateTo.d.ts +7 -0
  245. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/TranslateTo.js +33 -0
  246. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/index.d.ts +22 -0
  247. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/index.js +36 -0
  248. package/lib/service/worker/runtime/graphql/schema/typeDefs/index.d.ts +7 -0
  249. package/lib/service/worker/runtime/graphql/schema/typeDefs/index.js +12 -0
  250. package/lib/service/worker/runtime/graphql/schema/typeDefs/ioUpload.d.ts +3 -0
  251. package/lib/service/worker/runtime/graphql/schema/typeDefs/ioUpload.js +16 -0
  252. package/lib/service/worker/runtime/graphql/schema/typeDefs/sanitizedString.d.ts +10 -0
  253. package/lib/service/worker/runtime/graphql/schema/typeDefs/sanitizedString.js +39 -0
  254. package/lib/service/worker/runtime/graphql/typings.d.ts +31 -0
  255. package/lib/service/worker/runtime/graphql/typings.js +2 -0
  256. package/lib/service/worker/runtime/graphql/utils/cacheControl.d.ts +1 -0
  257. package/lib/service/worker/runtime/graphql/utils/cacheControl.js +32 -0
  258. package/lib/service/worker/runtime/graphql/utils/error.d.ts +1 -0
  259. package/lib/service/worker/runtime/graphql/utils/error.js +76 -0
  260. package/lib/service/worker/runtime/graphql/utils/pathname.d.ts +1 -0
  261. package/lib/service/worker/runtime/graphql/utils/pathname.js +7 -0
  262. package/lib/service/worker/runtime/graphql/utils/translations.d.ts +14 -0
  263. package/lib/service/worker/runtime/graphql/utils/translations.js +38 -0
  264. package/lib/service/worker/runtime/http/index.d.ts +5 -0
  265. package/lib/service/worker/runtime/http/index.js +58 -0
  266. package/lib/service/worker/runtime/http/middlewares/authTokens.d.ts +3 -0
  267. package/lib/service/worker/runtime/http/middlewares/authTokens.js +12 -0
  268. package/lib/service/worker/runtime/http/middlewares/cancellationToken.d.ts +3 -0
  269. package/lib/service/worker/runtime/http/middlewares/cancellationToken.js +18 -0
  270. package/lib/service/worker/runtime/http/middlewares/clients.d.ts +4 -0
  271. package/lib/service/worker/runtime/http/middlewares/clients.js +12 -0
  272. package/lib/service/worker/runtime/http/middlewares/context.d.ts +4 -0
  273. package/lib/service/worker/runtime/http/middlewares/context.js +36 -0
  274. package/lib/service/worker/runtime/http/middlewares/error.d.ts +2 -0
  275. package/lib/service/worker/runtime/http/middlewares/error.js +84 -0
  276. package/lib/service/worker/runtime/http/middlewares/rateLimit.d.ts +6 -0
  277. package/lib/service/worker/runtime/http/middlewares/rateLimit.js +42 -0
  278. package/lib/service/worker/runtime/http/middlewares/requestStats.d.ts +17 -0
  279. package/lib/service/worker/runtime/http/middlewares/requestStats.js +40 -0
  280. package/lib/service/worker/runtime/http/middlewares/setCookie.d.ts +3 -0
  281. package/lib/service/worker/runtime/http/middlewares/setCookie.js +52 -0
  282. package/lib/service/worker/runtime/http/middlewares/settings.d.ts +9 -0
  283. package/lib/service/worker/runtime/http/middlewares/settings.js +43 -0
  284. package/lib/service/worker/runtime/http/middlewares/timings.d.ts +3 -0
  285. package/lib/service/worker/runtime/http/middlewares/timings.js +45 -0
  286. package/lib/service/worker/runtime/http/middlewares/vary.d.ts +3 -0
  287. package/lib/service/worker/runtime/http/middlewares/vary.js +52 -0
  288. package/lib/service/worker/runtime/http/router.d.ts +2 -0
  289. package/lib/service/worker/runtime/http/router.js +23 -0
  290. package/lib/service/worker/runtime/http/routes.d.ts +19 -0
  291. package/lib/service/worker/runtime/http/routes.js +12 -0
  292. package/lib/service/worker/runtime/method.d.ts +9 -0
  293. package/lib/service/worker/runtime/method.js +23 -0
  294. package/lib/service/worker/runtime/statusTrack.d.ts +14 -0
  295. package/lib/service/worker/runtime/statusTrack.js +37 -0
  296. package/lib/service/worker/runtime/typings.d.ts +172 -0
  297. package/lib/service/worker/runtime/typings.js +2 -0
  298. package/lib/service/worker/runtime/utils/compose.d.ts +5 -0
  299. package/lib/service/worker/runtime/utils/compose.js +11 -0
  300. package/lib/service/worker/runtime/utils/context.d.ts +2 -0
  301. package/lib/service/worker/runtime/utils/context.js +40 -0
  302. package/lib/service/worker/runtime/utils/diff.d.ts +12 -0
  303. package/lib/service/worker/runtime/utils/diff.js +21 -0
  304. package/lib/service/worker/runtime/utils/recorder.d.ts +8 -0
  305. package/lib/service/worker/runtime/utils/recorder.js +37 -0
  306. package/lib/service/worker/runtime/utils/toArray.d.ts +1 -0
  307. package/lib/service/worker/runtime/utils/toArray.js +3 -0
  308. package/lib/service/worker/runtime/utils/tokenBucket.d.ts +2 -0
  309. package/lib/service/worker/runtime/utils/tokenBucket.js +16 -0
  310. package/lib/tracing/LogEvents.d.ts +31 -0
  311. package/lib/tracing/LogEvents.js +3 -0
  312. package/lib/tracing/LogFields.d.ts +61 -0
  313. package/lib/tracing/LogFields.js +3 -0
  314. package/lib/tracing/Tags.d.ts +79 -0
  315. package/lib/tracing/Tags.js +7 -0
  316. package/lib/tracing/UserLandTracer.d.ts +27 -0
  317. package/lib/tracing/UserLandTracer.js +55 -0
  318. package/lib/tracing/errorReporting/ErrorReport.d.ts +31 -0
  319. package/lib/tracing/errorReporting/ErrorReport.js +61 -0
  320. package/lib/tracing/index.d.ts +9 -0
  321. package/lib/tracing/index.js +19 -0
  322. package/lib/tracing/spanReference/SpanReferenceTypes.d.ts +4 -0
  323. package/lib/tracing/spanReference/SpanReferenceTypes.js +7 -0
  324. package/lib/tracing/spanReference/createSpanReference.d.ts +3 -0
  325. package/lib/tracing/spanReference/createSpanReference.js +8 -0
  326. package/lib/tracing/utils.d.ts +13 -0
  327. package/lib/tracing/utils.js +40 -0
  328. package/lib/utils/MineWinsConflictsResolver.d.ts +28 -0
  329. package/lib/utils/MineWinsConflictsResolver.js +130 -0
  330. package/lib/utils/app.d.ts +23 -0
  331. package/lib/utils/app.js +48 -0
  332. package/lib/utils/appsStaleIfError.d.ts +11 -0
  333. package/lib/utils/appsStaleIfError.js +63 -0
  334. package/lib/utils/billingOptions.d.ts +36 -0
  335. package/lib/utils/billingOptions.js +9 -0
  336. package/lib/utils/binding.d.ts +13 -0
  337. package/lib/utils/binding.js +38 -0
  338. package/lib/utils/cancel.d.ts +3 -0
  339. package/lib/utils/cancel.js +12 -0
  340. package/lib/utils/domain.d.ts +1 -0
  341. package/lib/utils/domain.js +5 -0
  342. package/lib/utils/error.d.ts +8 -0
  343. package/lib/utils/error.js +94 -0
  344. package/lib/utils/index.d.ts +9 -0
  345. package/lib/utils/index.js +14 -0
  346. package/lib/utils/message.d.ts +25 -0
  347. package/lib/utils/message.js +23 -0
  348. package/lib/utils/renameBy.d.ts +1 -0
  349. package/lib/utils/renameBy.js +4 -0
  350. package/lib/utils/retry.d.ts +4 -0
  351. package/lib/utils/retry.js +32 -0
  352. package/lib/utils/status.d.ts +1 -0
  353. package/lib/utils/status.js +11 -0
  354. package/lib/utils/tenant.d.ts +5 -0
  355. package/lib/utils/tenant.js +6 -0
  356. package/lib/utils/throwOnGraphQLErrors.d.ts +2 -0
  357. package/lib/utils/throwOnGraphQLErrors.js +15 -0
  358. package/lib/utils/time.d.ts +31 -0
  359. package/lib/utils/time.js +118 -0
  360. package/package.json +127 -0
@@ -0,0 +1,5 @@
1
+ import TokenBucket from 'tokenbucket';
2
+ import { IOClients } from '../../../../clients/IOClients';
3
+ import { ClientsConfig, ParamsContext, RecorderState, ServiceRoute } from '../typings';
4
+ export declare const createPrivateHttpRoute: <T extends IOClients, U extends RecorderState, V extends ParamsContext>(clientsConfig: ClientsConfig<T>, serviceHandler: import("koa-compose").Middleware<import("../typings").ServiceContext<T, U, V>> | import("koa-compose").Middleware<import("../typings").ServiceContext<T, U, V>>[], serviceRoute: ServiceRoute, routeId: string, globalLimiter: TokenBucket | undefined) => import("koa-compose").ComposedMiddleware<import("../typings").ServiceContext<T, U, V>>;
5
+ export declare const createPublicHttpRoute: <T extends IOClients, U extends RecorderState, V extends ParamsContext>(clientsConfig: ClientsConfig<T>, serviceHandler: import("koa-compose").Middleware<import("../typings").ServiceContext<T, U, V>> | import("koa-compose").Middleware<import("../typings").ServiceContext<T, U, V>>[], serviceRoute: ServiceRoute, routeId: string, globalLimiter: TokenBucket | undefined) => import("koa-compose").ComposedMiddleware<import("../typings").ServiceContext<T, U, V>>;
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tracingMiddlewares_1 = require("../../../tracing/tracingMiddlewares");
4
+ const compose_1 = require("../utils/compose");
5
+ const toArray_1 = require("../utils/toArray");
6
+ const authTokens_1 = require("./middlewares/authTokens");
7
+ const cancellationToken_1 = require("./middlewares/cancellationToken");
8
+ const clients_1 = require("./middlewares/clients");
9
+ const context_1 = require("./middlewares/context");
10
+ const rateLimit_1 = require("./middlewares/rateLimit");
11
+ const requestStats_1 = require("./middlewares/requestStats");
12
+ const setCookie_1 = require("./middlewares/setCookie");
13
+ const settings_1 = require("./middlewares/settings");
14
+ const timings_1 = require("./middlewares/timings");
15
+ const vary_1 = require("./middlewares/vary");
16
+ exports.createPrivateHttpRoute = (clientsConfig, serviceHandler, serviceRoute, routeId, globalLimiter) => {
17
+ var _a, _b;
18
+ const { implementation, options } = clientsConfig;
19
+ const middlewares = toArray_1.toArray(serviceHandler);
20
+ const pipeline = [
21
+ tracingMiddlewares_1.nameSpanOperationMiddleware('private-handler', routeId),
22
+ context_1.createPvtContextMiddleware(routeId, serviceRoute),
23
+ cancellationToken_1.cancellationToken,
24
+ requestStats_1.trackIncomingRequestStats,
25
+ vary_1.vary,
26
+ authTokens_1.authTokens,
27
+ clients_1.clients(implementation, options),
28
+ ...(serviceRoute.settingsType === 'workspace' || serviceRoute.settingsType === 'userAndWorkspace' ? [settings_1.getServiceSettings()] : []),
29
+ timings_1.timings,
30
+ rateLimit_1.concurrentRateLimiter((_a = serviceRoute === null || serviceRoute === void 0 ? void 0 : serviceRoute.rateLimitPerReplica) === null || _a === void 0 ? void 0 : _a.concurrent),
31
+ rateLimit_1.perMinuteRateLimiter((_b = serviceRoute === null || serviceRoute === void 0 ? void 0 : serviceRoute.rateLimitPerReplica) === null || _b === void 0 ? void 0 : _b.perMinute, globalLimiter),
32
+ tracingMiddlewares_1.traceUserLandRemainingPipelineMiddleware(),
33
+ ...middlewares,
34
+ ];
35
+ return compose_1.compose(pipeline);
36
+ };
37
+ exports.createPublicHttpRoute = (clientsConfig, serviceHandler, serviceRoute, routeId, globalLimiter) => {
38
+ var _a, _b;
39
+ const { implementation, options } = clientsConfig;
40
+ const middlewares = toArray_1.toArray(serviceHandler);
41
+ const pipeline = [
42
+ tracingMiddlewares_1.nameSpanOperationMiddleware('public-handler', routeId),
43
+ context_1.createPubContextMiddleware(routeId, serviceRoute),
44
+ cancellationToken_1.cancellationToken,
45
+ requestStats_1.trackIncomingRequestStats,
46
+ vary_1.vary,
47
+ authTokens_1.authTokens,
48
+ clients_1.clients(implementation, options),
49
+ ...(serviceRoute.settingsType === 'workspace' || serviceRoute.settingsType === 'userAndWorkspace' ? [settings_1.getServiceSettings()] : []),
50
+ setCookie_1.removeSetCookie,
51
+ timings_1.timings,
52
+ rateLimit_1.concurrentRateLimiter((_a = serviceRoute === null || serviceRoute === void 0 ? void 0 : serviceRoute.rateLimitPerReplica) === null || _a === void 0 ? void 0 : _a.concurrent),
53
+ rateLimit_1.perMinuteRateLimiter((_b = serviceRoute === null || serviceRoute === void 0 ? void 0 : serviceRoute.rateLimitPerReplica) === null || _b === void 0 ? void 0 : _b.perMinute, globalLimiter),
54
+ tracingMiddlewares_1.traceUserLandRemainingPipelineMiddleware(),
55
+ ...middlewares,
56
+ ];
57
+ return compose_1.compose(pipeline);
58
+ };
@@ -0,0 +1,3 @@
1
+ import { IOClients } from '../../../../../clients/IOClients';
2
+ import { ParamsContext, RecorderState, ServiceContext } from '../../typings';
3
+ export declare function authTokens<T extends IOClients, U extends RecorderState, V extends ParamsContext>(ctx: ServiceContext<T, U, V>, next: () => Promise<void>): Promise<void>;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const JANUS_ENV_COOKIE_KEY = 'vtex-commerce-env';
4
+ const VTEX_ID_COOKIE_KEY = 'VtexIdclientAutCookie';
5
+ async function authTokens(ctx, next) {
6
+ const { vtex: { account } } = ctx;
7
+ ctx.vtex.adminUserAuthToken = ctx.cookies.get(VTEX_ID_COOKIE_KEY);
8
+ ctx.vtex.storeUserAuthToken = ctx.cookies.get(`${VTEX_ID_COOKIE_KEY}_${account}`);
9
+ ctx.vtex.janusEnv = ctx.cookies.get(JANUS_ENV_COOKIE_KEY);
10
+ await next();
11
+ }
12
+ exports.authTokens = authTokens;
@@ -0,0 +1,3 @@
1
+ import { IOClients } from '../../../../../clients/IOClients';
2
+ import { ParamsContext, RecorderState, ServiceContext } from '../../typings';
3
+ export declare function cancellationToken<T extends IOClients, U extends RecorderState, V extends ParamsContext>(ctx: ServiceContext<T, U, V>, next: () => Promise<void>): Promise<void>;
@@ -0,0 +1,18 @@
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 axios_1 = __importDefault(require("axios"));
7
+ const constants_1 = require("../../../../../constants");
8
+ async function cancellationToken(ctx, next) {
9
+ if (constants_1.cancellableMethods.has(ctx.method.toUpperCase())) {
10
+ ctx.vtex.cancellation = {
11
+ cancelable: true,
12
+ cancelled: false,
13
+ source: axios_1.default.CancelToken.source(),
14
+ };
15
+ }
16
+ await next();
17
+ }
18
+ exports.cancellationToken = cancellationToken;
@@ -0,0 +1,4 @@
1
+ import { ClientsImplementation, IOClients } from '../../../../../clients/IOClients';
2
+ import { InstanceOptions } from '../../../../../HttpClient';
3
+ import { ParamsContext, RecorderState, ServiceContext } from '../../typings';
4
+ export declare function clients<T extends IOClients, U extends RecorderState, V extends ParamsContext>(ClientsImpl: ClientsImplementation<T>, clientOptions: Record<string, InstanceOptions>): (ctx: ServiceContext<T, U, V>, next: () => Promise<void>) => Promise<void>;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ function clients(ClientsImpl, clientOptions) {
4
+ return async function withClients(ctx, next) {
5
+ if (ctx.serverTiming) {
6
+ ctx.vtex.serverTiming = ctx.serverTiming;
7
+ }
8
+ ctx.clients = new ClientsImpl(clientOptions, ctx.vtex);
9
+ await next();
10
+ };
11
+ }
12
+ exports.clients = clients;
@@ -0,0 +1,4 @@
1
+ import { IOClients } from '../../../../../clients/IOClients';
2
+ import { ParamsContext, RecorderState, ServiceContext, ServiceRoute } from './../../typings';
3
+ export declare const createPvtContextMiddleware: (routeId: string, { smartcache }: ServiceRoute) => <T extends IOClients, U extends RecorderState, V extends ParamsContext>(ctx: ServiceContext<T, U, V>, next: () => Promise<void>) => Promise<void>;
4
+ export declare const createPubContextMiddleware: (routeId: string, { smartcache }: ServiceRoute) => <T extends IOClients, U extends RecorderState, V extends ParamsContext>(ctx: ServiceContext<T, U, V>, next: () => Promise<void>) => Promise<void>;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const querystring_1 = require("querystring");
4
+ const constants_1 = require("../../../../../constants");
5
+ const context_1 = require("../../utils/context");
6
+ exports.createPvtContextMiddleware = (routeId, { smartcache }) => {
7
+ return async function pvtContext(ctx, next) {
8
+ const { params, request: { header }, } = ctx;
9
+ ctx.vtex = {
10
+ ...context_1.prepareHandlerCtx(header, ctx.tracing),
11
+ ...(smartcache && { recorder: ctx.state.recorder }),
12
+ route: {
13
+ id: routeId,
14
+ params,
15
+ type: 'private',
16
+ },
17
+ };
18
+ await next();
19
+ };
20
+ };
21
+ exports.createPubContextMiddleware = (routeId, { smartcache }) => {
22
+ return async function pubContext(ctx, next) {
23
+ const { request: { header }, } = ctx;
24
+ ctx.vtex = {
25
+ ...context_1.prepareHandlerCtx(header, ctx.tracing),
26
+ ...(smartcache && { recorder: ctx.state.recorder }),
27
+ route: {
28
+ declarer: header[constants_1.COLOSSUS_ROUTE_DECLARER_HEADER],
29
+ id: routeId,
30
+ params: querystring_1.parse(header[constants_1.COLOSSUS_PARAMS_HEADER]),
31
+ type: 'public',
32
+ },
33
+ };
34
+ await next();
35
+ };
36
+ };
@@ -0,0 +1,2 @@
1
+ import { ServiceContext } from '../../typings';
2
+ export declare function error(ctx: ServiceContext, next: () => Promise<void>): Promise<void>;
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const constants_1 = require("../../../../../constants");
4
+ const RequestCancelledError_1 = require("../../../../../errors/RequestCancelledError");
5
+ const TooManyRequestsError_1 = require("../../../../../errors/TooManyRequestsError");
6
+ const error_1 = require("../../../../../utils/error");
7
+ const logger_1 = require("../../../../logger");
8
+ const CACHE_CONTROL_HEADER = 'cache-control';
9
+ const META_HEADER = 'x-vtex-meta';
10
+ const ETAG_HEADER = 'etag';
11
+ const TWO_SECONDS_S = 2;
12
+ const production = process.env.VTEX_PRODUCTION === 'true';
13
+ // todo: unify GraphQL and REST exception treatment
14
+ const logAndRemoveSensitiveData = (ctx, err) => {
15
+ const { method, status, query, vtex: { operationId, requestId, route: { id, params, }, serverTiming, }, headers: { 'x-forwarded-path': forwardedPath, 'x-forwarded-host': forwardedHost, 'x-forwarded-proto': forwardedProto, 'x-vtex-caller': caller, 'x-vtex-platform': platform, 'x-vtex-product': product, 'x-vtex-locale': locale, }, } = ctx;
16
+ // Grab level from originalError, default to "error" level.
17
+ let level = err && err.level;
18
+ if (!level || !(level === logger_1.LogLevel.Error || level === logger_1.LogLevel.Warn)) {
19
+ level = logger_1.LogLevel.Error;
20
+ }
21
+ const log = {
22
+ ...err,
23
+ caller,
24
+ forwardedHost,
25
+ forwardedPath,
26
+ forwardedProto,
27
+ locale,
28
+ method,
29
+ operationId,
30
+ params,
31
+ platform,
32
+ product,
33
+ query,
34
+ requestId,
35
+ routeId: id,
36
+ serverTiming,
37
+ status,
38
+ };
39
+ // Use sendLog directly to avoid cleaning error twice.
40
+ ctx.vtex.logger.log(log, level);
41
+ if (!constants_1.LINKED) {
42
+ error_1.SENSITIVE_EXCEPTION_FIELDS.forEach(field => {
43
+ delete err[field];
44
+ });
45
+ }
46
+ };
47
+ async function error(ctx, next) {
48
+ var _a;
49
+ try {
50
+ await next();
51
+ }
52
+ catch (e) {
53
+ if (e instanceof RequestCancelledError_1.RequestCancelledError) {
54
+ ctx.status = RequestCancelledError_1.cancelledRequestStatus;
55
+ return;
56
+ }
57
+ if (e instanceof TooManyRequestsError_1.TooManyRequestsError) {
58
+ ctx.status = TooManyRequestsError_1.tooManyRequestsStatus;
59
+ return;
60
+ }
61
+ console.error('[node-vtex-api error]', e);
62
+ const err = error_1.cleanError(e);
63
+ // Add response
64
+ ctx.status = e && e.status >= 400 && e.status <= 599
65
+ ? e.status
66
+ : ctx.status >= 500 && ctx.status <= 599
67
+ ? ctx.status
68
+ : 500;
69
+ // Do not generate etag for errors
70
+ ctx.remove(META_HEADER);
71
+ ctx.remove(ETAG_HEADER);
72
+ (_a = ctx.vtex.recorder) === null || _a === void 0 ? void 0 : _a.clear();
73
+ // In production errors, add two second cache
74
+ if (production) {
75
+ ctx.set(CACHE_CONTROL_HEADER, `public, max-age=${TWO_SECONDS_S}`);
76
+ }
77
+ else {
78
+ ctx.set(CACHE_CONTROL_HEADER, `no-cache, no-store`);
79
+ }
80
+ logAndRemoveSensitiveData(ctx, err);
81
+ ctx.body = ctx.body || err;
82
+ }
83
+ }
84
+ exports.error = error;
@@ -0,0 +1,6 @@
1
+ import TokenBucket from 'tokenbucket';
2
+ import { ServiceContext } from '../../typings';
3
+ declare function noopMiddleware(_: ServiceContext, next: () => Promise<void>): Promise<void>;
4
+ export declare function perMinuteRateLimiter(rateLimit?: number, globalLimiter?: TokenBucket): typeof noopMiddleware;
5
+ export declare function concurrentRateLimiter(rateLimit?: number): typeof noopMiddleware;
6
+ export {};
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const errors_1 = require("../../../../../errors");
4
+ const tokenBucket_1 = require("../../utils/tokenBucket");
5
+ const responseMessageConcurrent = 'Rate Exceeded: Too many requests in execution';
6
+ const responseMessagePerMinute = 'Rate Exceeded: Too many requests per minute';
7
+ function noopMiddleware(_, next) {
8
+ return next();
9
+ }
10
+ function perMinuteRateLimiter(rateLimit, globalLimiter) {
11
+ if (!rateLimit && !globalLimiter) {
12
+ return noopMiddleware;
13
+ }
14
+ const tokenBucket = tokenBucket_1.createTokenBucket(rateLimit, globalLimiter);
15
+ return function perMinuteRateMiddleware(ctx, next) {
16
+ if (!tokenBucket.removeTokensSync(1)) {
17
+ throw new errors_1.TooManyRequestsError(responseMessagePerMinute);
18
+ }
19
+ return next();
20
+ };
21
+ }
22
+ exports.perMinuteRateLimiter = perMinuteRateLimiter;
23
+ function concurrentRateLimiter(rateLimit) {
24
+ if (!rateLimit) {
25
+ return noopMiddleware;
26
+ }
27
+ let reqsInExecution = 0;
28
+ const maxRequests = rateLimit;
29
+ return async function concurrentRateMiddleware(ctx, next) {
30
+ if (reqsInExecution >= maxRequests) {
31
+ throw new errors_1.TooManyRequestsError(responseMessageConcurrent);
32
+ }
33
+ reqsInExecution++;
34
+ try {
35
+ await next();
36
+ }
37
+ finally {
38
+ reqsInExecution--;
39
+ }
40
+ };
41
+ }
42
+ exports.concurrentRateLimiter = concurrentRateLimiter;
@@ -0,0 +1,17 @@
1
+ import { IOClients } from '../../../../../clients/IOClients';
2
+ import { ParamsContext, RecorderState, ServiceContext } from '../../typings';
3
+ export declare const cancelMessage = "Request cancelled";
4
+ declare class IncomingRequestStats {
5
+ aborted: number;
6
+ closed: number;
7
+ total: number;
8
+ get(): {
9
+ aborted: number;
10
+ closed: number;
11
+ total: number;
12
+ };
13
+ clear(): void;
14
+ }
15
+ export declare const incomingRequestStats: IncomingRequestStats;
16
+ export declare function trackIncomingRequestStats<T extends IOClients, U extends RecorderState, V extends ParamsContext>(ctx: ServiceContext<T, U, V>, next: () => Promise<void>): Promise<void>;
17
+ export {};
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.cancelMessage = 'Request cancelled';
4
+ class IncomingRequestStats {
5
+ constructor() {
6
+ this.aborted = 0;
7
+ this.closed = 0;
8
+ this.total = 0;
9
+ }
10
+ get() {
11
+ return {
12
+ aborted: this.aborted,
13
+ closed: this.closed,
14
+ total: this.total,
15
+ };
16
+ }
17
+ clear() {
18
+ this.aborted = 0;
19
+ this.closed = 0;
20
+ this.total = 0;
21
+ }
22
+ }
23
+ exports.incomingRequestStats = new IncomingRequestStats();
24
+ const requestClosed = () => {
25
+ exports.incomingRequestStats.closed++;
26
+ };
27
+ const requestAborted = (ctx) => () => {
28
+ exports.incomingRequestStats.aborted++;
29
+ if (ctx.vtex.cancellation && ctx.vtex.cancellation.cancelable) {
30
+ ctx.vtex.cancellation.source.cancel(exports.cancelMessage);
31
+ ctx.vtex.cancellation.cancelled = true;
32
+ }
33
+ };
34
+ async function trackIncomingRequestStats(ctx, next) {
35
+ ctx.req.on('close', requestClosed);
36
+ ctx.req.on('aborted', requestAborted(ctx));
37
+ exports.incomingRequestStats.total++;
38
+ await next();
39
+ }
40
+ exports.trackIncomingRequestStats = trackIncomingRequestStats;
@@ -0,0 +1,3 @@
1
+ import { IOClients } from '../../../../../clients/IOClients';
2
+ import { ParamsContext, RecorderState, ServiceContext } from '../../typings';
3
+ export declare function removeSetCookie<T extends IOClients, U extends RecorderState, V extends ParamsContext>(ctx: ServiceContext<T, U, V>, next: () => Promise<void>): Promise<void>;
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const ramda_1 = require("ramda");
4
+ const BLACKLISTED_COOKIES = new Set(['checkout.vtex.com']);
5
+ const warnMessage = (keys) => `Removing set-cookie from response since cache-control has as public scope.
6
+ This can be a huge security risk. Please remove either the public scope or set-cookie from your response.
7
+ Cookies dropped:
8
+
9
+ ${keys.join('\n\t')}
10
+ `;
11
+ const findStr = (target, set) => ramda_1.find((a) => a.toLocaleLowerCase() === target, set);
12
+ const findScopeInCacheControl = (cacheControl) => {
13
+ const splitted = cacheControl && cacheControl.split(/\s*,\s*/g);
14
+ const scopePublic = splitted && findStr('public', splitted);
15
+ return scopePublic;
16
+ };
17
+ const cookieKey = (cookie) => ramda_1.compose(ramda_1.head, ramda_1.split('='))(cookie);
18
+ const indexCookieByKeys = (setCookie) => ramda_1.map((cookie) => [cookieKey(cookie), cookie], setCookie);
19
+ async function removeSetCookie(ctx, next) {
20
+ const { vtex: { logger } } = ctx;
21
+ await next();
22
+ const setCookie = ctx.response.headers['set-cookie'];
23
+ if (!setCookie || ramda_1.isEmpty(setCookie)) {
24
+ return;
25
+ }
26
+ const cacheControl = ctx.response.headers['cache-control'];
27
+ const scope = findScopeInCacheControl(cacheControl);
28
+ if (scope === 'public') {
29
+ const indexedCookies = indexCookieByKeys(setCookie);
30
+ const cookies = ramda_1.reduce((acc, [key, payload]) => {
31
+ if (BLACKLISTED_COOKIES.has(key)) {
32
+ acc.droppedKeys.push(key);
33
+ }
34
+ else {
35
+ acc.addedPayload.push(payload);
36
+ }
37
+ return acc;
38
+ }, {
39
+ addedPayload: [],
40
+ droppedKeys: [],
41
+ }, indexedCookies);
42
+ if (cookies.droppedKeys.length > 0) {
43
+ ctx.set('set-cookie', cookies.addedPayload);
44
+ console.warn(warnMessage(cookies.droppedKeys));
45
+ logger.warn({
46
+ cookieKeys: cookies.droppedKeys,
47
+ message: 'Setting cookies in a public route!',
48
+ });
49
+ }
50
+ }
51
+ }
52
+ exports.removeSetCookie = removeSetCookie;
@@ -0,0 +1,9 @@
1
+ import { AppMetaInfo, Apps } from '../../../../../clients/infra/Apps';
2
+ import { IOClients } from '../../../../../clients/IOClients';
3
+ import { RequestTracingConfig } from '../../../../../HttpClient';
4
+ import { Assets } from './../../../../../clients/infra/Assets';
5
+ import { ParamsContext, RecorderState, ServiceContext } from './../../typings';
6
+ export declare const getFilteredDependencies: (appAtMajor: string, dependencies: AppMetaInfo[]) => AppMetaInfo[];
7
+ export declare const getDependenciesHash: (dependencies: AppMetaInfo[]) => string;
8
+ export declare const getDependenciesSettings: (apps: Apps, assets: Assets, tracingConfig?: RequestTracingConfig | undefined) => Promise<Record<string, any>[]>;
9
+ export declare const getServiceSettings: () => <T extends IOClients, U extends RecorderState, V extends ParamsContext>(ctx: ServiceContext<T, U, V>, next: () => Promise<void>) => Promise<void>;