@vtex/api 6.48.0 → 6.48.1-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (243) hide show
  1. package/gen/manifest.schema +2 -3
  2. package/lib/HttpClient/GraphQLClient.d.ts +1 -1
  3. package/lib/HttpClient/GraphQLClient.js +1 -0
  4. package/lib/HttpClient/HttpClient.d.ts +4 -3
  5. package/lib/HttpClient/HttpClient.js +15 -14
  6. package/lib/HttpClient/agents.d.ts +5 -2
  7. package/lib/HttpClient/agents.js +23 -4
  8. package/lib/HttpClient/index.js +22 -10
  9. package/lib/HttpClient/middlewares/cache.d.ts +1 -1
  10. package/lib/HttpClient/middlewares/cache.js +48 -42
  11. package/lib/HttpClient/middlewares/cancellationToken.d.ts +1 -1
  12. package/lib/HttpClient/middlewares/cancellationToken.js +3 -1
  13. package/lib/HttpClient/middlewares/inflight.d.ts +1 -1
  14. package/lib/HttpClient/middlewares/inflight.js +7 -3
  15. package/lib/HttpClient/middlewares/memoization.d.ts +1 -1
  16. package/lib/HttpClient/middlewares/memoization.js +10 -8
  17. package/lib/HttpClient/middlewares/metrics.js +13 -7
  18. package/lib/HttpClient/middlewares/notFound.d.ts +1 -1
  19. package/lib/HttpClient/middlewares/notFound.js +5 -2
  20. package/lib/HttpClient/middlewares/recorder.js +7 -1
  21. package/lib/HttpClient/middlewares/request/HttpAgentSingleton.js +2 -1
  22. package/lib/HttpClient/middlewares/request/index.d.ts +1 -1
  23. package/lib/HttpClient/middlewares/request/index.js +13 -9
  24. package/lib/HttpClient/middlewares/request/setupAxios/index.js +6 -4
  25. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/exponentialBackoff.js +7 -5
  26. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/index.js +4 -3
  27. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/tracing/index.js +9 -6
  28. package/lib/HttpClient/middlewares/request/setupAxios/interceptors/tracing/spanSetup.js +10 -7
  29. package/lib/HttpClient/middlewares/tracing.js +16 -10
  30. package/lib/HttpClient/typings.d.ts +3 -3
  31. package/lib/HttpClient/typings.js +1 -0
  32. package/lib/caches/DiskCache.d.ts +1 -1
  33. package/lib/caches/DiskCache.js +3 -2
  34. package/lib/caches/LRUCache.d.ts +3 -3
  35. package/lib/caches/LRUCache.js +1 -0
  36. package/lib/caches/LRUDiskCache.d.ts +2 -2
  37. package/lib/caches/LRUDiskCache.js +3 -2
  38. package/lib/caches/MultilayeredCache.d.ts +2 -2
  39. package/lib/caches/MultilayeredCache.js +8 -7
  40. package/lib/caches/index.js +20 -7
  41. package/lib/caches/typings.d.ts +5 -5
  42. package/lib/clients/IOClient.d.ts +1 -1
  43. package/lib/clients/IOClient.js +1 -0
  44. package/lib/clients/IOClients.d.ts +1 -1
  45. package/lib/clients/IOClients.js +1 -0
  46. package/lib/clients/IOGraphQLClient.js +1 -0
  47. package/lib/clients/apps/AppClient.js +2 -1
  48. package/lib/clients/apps/AppGraphQLClient.js +2 -1
  49. package/lib/clients/apps/Billing.d.ts +1 -1
  50. package/lib/clients/apps/Billing.js +1 -0
  51. package/lib/clients/apps/Builder.d.ts +7 -7
  52. package/lib/clients/apps/Builder.js +2 -1
  53. package/lib/clients/apps/MessagesGraphQL.d.ts +1 -1
  54. package/lib/clients/apps/MessagesGraphQL.js +4 -3
  55. package/lib/clients/apps/Settings.js +4 -3
  56. package/lib/clients/apps/catalogGraphQL/brand.js +1 -0
  57. package/lib/clients/apps/catalogGraphQL/category.js +1 -0
  58. package/lib/clients/apps/catalogGraphQL/index.d.ts +4 -4
  59. package/lib/clients/apps/catalogGraphQL/index.js +5 -4
  60. package/lib/clients/apps/catalogGraphQL/product.js +1 -0
  61. package/lib/clients/apps/catalogGraphQL/sku.js +1 -0
  62. package/lib/clients/apps/index.js +21 -10
  63. package/lib/clients/external/ExternalClient.js +1 -0
  64. package/lib/clients/external/ID.d.ts +4 -4
  65. package/lib/clients/external/ID.js +1 -0
  66. package/lib/clients/external/Masterdata.js +1 -0
  67. package/lib/clients/external/PaymentProvider.d.ts +2 -2
  68. package/lib/clients/external/PaymentProvider.js +1 -0
  69. package/lib/clients/external/index.js +18 -7
  70. package/lib/clients/index.js +22 -10
  71. package/lib/clients/infra/Apps.d.ts +32 -27
  72. package/lib/clients/infra/Apps.js +19 -16
  73. package/lib/clients/infra/Assets.d.ts +6 -5
  74. package/lib/clients/infra/Assets.js +12 -11
  75. package/lib/clients/infra/BillingMetrics.d.ts +1 -1
  76. package/lib/clients/infra/BillingMetrics.js +1 -0
  77. package/lib/clients/infra/Events.d.ts +1 -1
  78. package/lib/clients/infra/Events.js +2 -1
  79. package/lib/clients/infra/Housekeeper.d.ts +3 -3
  80. package/lib/clients/infra/Housekeeper.js +1 -0
  81. package/lib/clients/infra/InfraClient.js +1 -0
  82. package/lib/clients/infra/Registry.d.ts +23 -17
  83. package/lib/clients/infra/Registry.js +5 -3
  84. package/lib/clients/infra/Router.d.ts +8 -8
  85. package/lib/clients/infra/Router.js +1 -0
  86. package/lib/clients/infra/Sphinx.d.ts +2 -2
  87. package/lib/clients/infra/Sphinx.js +1 -0
  88. package/lib/clients/infra/VBase.d.ts +15 -14
  89. package/lib/clients/infra/VBase.js +4 -3
  90. package/lib/clients/infra/Workspaces.d.ts +7 -7
  91. package/lib/clients/infra/Workspaces.js +1 -0
  92. package/lib/clients/infra/index.js +25 -14
  93. package/lib/clients/janus/JanusClient.d.ts +1 -1
  94. package/lib/clients/janus/JanusClient.js +1 -0
  95. package/lib/clients/janus/LicenseManager.js +2 -1
  96. package/lib/clients/janus/Segment.d.ts +3 -3
  97. package/lib/clients/janus/Segment.js +3 -2
  98. package/lib/clients/janus/Session.d.ts +2 -2
  99. package/lib/clients/janus/Session.js +1 -0
  100. package/lib/clients/janus/Tenant.d.ts +1 -1
  101. package/lib/clients/janus/Tenant.js +1 -0
  102. package/lib/clients/janus/index.js +19 -8
  103. package/lib/constants.d.ts +1 -1
  104. package/lib/constants.js +2 -1
  105. package/lib/errors/AuthenticationError.js +1 -0
  106. package/lib/errors/ForbiddenError.js +1 -0
  107. package/lib/errors/NotFoundError.js +1 -0
  108. package/lib/errors/RequestCancelledError.js +1 -0
  109. package/lib/errors/ResolverError.js +2 -1
  110. package/lib/errors/ResolverWarning.js +1 -0
  111. package/lib/errors/TooManyRequestsError.js +1 -0
  112. package/lib/errors/UserInputError.js +1 -0
  113. package/lib/errors/index.js +22 -11
  114. package/lib/index.js +31 -18
  115. package/lib/metrics/MetricsAccumulator.d.ts +2 -2
  116. package/lib/metrics/MetricsAccumulator.js +10 -9
  117. package/lib/responses.d.ts +4 -4
  118. package/lib/service/index.js +11 -6
  119. package/lib/service/loaders.js +9 -6
  120. package/lib/service/logger/console.js +8 -4
  121. package/lib/service/logger/index.js +16 -5
  122. package/lib/service/logger/logger.js +3 -2
  123. package/lib/service/logger/metricsLogger.js +11 -10
  124. package/lib/service/master.js +8 -6
  125. package/lib/service/metrics/requestMetricsMiddleware.d.ts +1 -1
  126. package/lib/service/metrics/requestMetricsMiddleware.js +15 -13
  127. package/lib/service/tracing/TracerSingleton.js +10 -9
  128. package/lib/service/tracing/metrics/MetricNames.js +13 -12
  129. package/lib/service/tracing/metrics/instruments.js +15 -7
  130. package/lib/service/tracing/metrics/measurers/EventLoopLagMeasurer.js +6 -5
  131. package/lib/service/tracing/tracingMiddlewares.d.ts +3 -3
  132. package/lib/service/tracing/tracingMiddlewares.js +25 -15
  133. package/lib/service/worker/index.js +25 -23
  134. package/lib/service/worker/listeners.js +3 -1
  135. package/lib/service/worker/runtime/Service.js +2 -1
  136. package/lib/service/worker/runtime/builtIn/handlers.d.ts +3 -3
  137. package/lib/service/worker/runtime/builtIn/handlers.js +7 -3
  138. package/lib/service/worker/runtime/builtIn/middlewares.d.ts +2 -2
  139. package/lib/service/worker/runtime/builtIn/middlewares.js +6 -3
  140. package/lib/service/worker/runtime/events/index.d.ts +2 -2
  141. package/lib/service/worker/runtime/events/index.js +12 -10
  142. package/lib/service/worker/runtime/events/middlewares/body.js +6 -2
  143. package/lib/service/worker/runtime/events/middlewares/context.js +2 -1
  144. package/lib/service/worker/runtime/events/router.d.ts +2 -2
  145. package/lib/service/worker/runtime/events/router.js +4 -2
  146. package/lib/service/worker/runtime/graphql/index.js +9 -7
  147. package/lib/service/worker/runtime/graphql/middlewares/context.js +1 -0
  148. package/lib/service/worker/runtime/graphql/middlewares/error.js +9 -5
  149. package/lib/service/worker/runtime/graphql/middlewares/query.d.ts +2 -1
  150. package/lib/service/worker/runtime/graphql/middlewares/query.js +8 -6
  151. package/lib/service/worker/runtime/graphql/middlewares/response.js +2 -1
  152. package/lib/service/worker/runtime/graphql/middlewares/run.d.ts +2 -2
  153. package/lib/service/worker/runtime/graphql/middlewares/run.js +4 -2
  154. package/lib/service/worker/runtime/graphql/middlewares/updateSchema.d.ts +2 -1
  155. package/lib/service/worker/runtime/graphql/middlewares/updateSchema.js +5 -3
  156. package/lib/service/worker/runtime/graphql/middlewares/upload.js +2 -1
  157. package/lib/service/worker/runtime/graphql/schema/index.d.ts +1 -1
  158. package/lib/service/worker/runtime/graphql/schema/index.js +9 -7
  159. package/lib/service/worker/runtime/graphql/schema/messagesLoaderV2.d.ts +2 -2
  160. package/lib/service/worker/runtime/graphql/schema/messagesLoaderV2.js +5 -3
  161. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Auth.js +2 -1
  162. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/CacheControl.js +1 -0
  163. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Deprecated.js +2 -1
  164. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Metric.js +1 -0
  165. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Sanitize.js +1 -0
  166. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Settings.js +2 -1
  167. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/SmartCacheDirective.js +1 -0
  168. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/TranslatableV2.js +3 -2
  169. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/TranslateTo.js +3 -2
  170. package/lib/service/worker/runtime/graphql/schema/schemaDirectives/index.js +3 -2
  171. package/lib/service/worker/runtime/graphql/schema/typeDefs/index.d.ts +2 -1
  172. package/lib/service/worker/runtime/graphql/schema/typeDefs/index.js +3 -1
  173. package/lib/service/worker/runtime/graphql/schema/typeDefs/ioUpload.js +1 -0
  174. package/lib/service/worker/runtime/graphql/schema/typeDefs/sanitizedString.js +3 -2
  175. package/lib/service/worker/runtime/graphql/typings.d.ts +3 -3
  176. package/lib/service/worker/runtime/graphql/utils/cacheControl.d.ts +2 -1
  177. package/lib/service/worker/runtime/graphql/utils/cacheControl.js +3 -1
  178. package/lib/service/worker/runtime/graphql/utils/error.d.ts +2 -1
  179. package/lib/service/worker/runtime/graphql/utils/error.js +11 -9
  180. package/lib/service/worker/runtime/graphql/utils/pathname.js +4 -2
  181. package/lib/service/worker/runtime/graphql/utils/translations.d.ts +1 -1
  182. package/lib/service/worker/runtime/graphql/utils/translations.js +8 -4
  183. package/lib/service/worker/runtime/http/index.d.ts +3 -3
  184. package/lib/service/worker/runtime/http/index.js +23 -20
  185. package/lib/service/worker/runtime/http/middlewares/authTokens.js +1 -0
  186. package/lib/service/worker/runtime/http/middlewares/cancellationToken.js +1 -0
  187. package/lib/service/worker/runtime/http/middlewares/clients.js +1 -0
  188. package/lib/service/worker/runtime/http/middlewares/context.js +8 -5
  189. package/lib/service/worker/runtime/http/middlewares/error.js +10 -6
  190. package/lib/service/worker/runtime/http/middlewares/rateLimit.js +2 -1
  191. package/lib/service/worker/runtime/http/middlewares/requestStats.js +1 -0
  192. package/lib/service/worker/runtime/http/middlewares/setCookie.js +6 -5
  193. package/lib/service/worker/runtime/http/middlewares/settings.d.ts +1 -1
  194. package/lib/service/worker/runtime/http/middlewares/settings.js +14 -9
  195. package/lib/service/worker/runtime/http/middlewares/timings.js +4 -3
  196. package/lib/service/worker/runtime/http/middlewares/vary.js +1 -0
  197. package/lib/service/worker/runtime/http/router.d.ts +1 -1
  198. package/lib/service/worker/runtime/http/router.js +4 -2
  199. package/lib/service/worker/runtime/http/routes.js +9 -5
  200. package/lib/service/worker/runtime/method.d.ts +2 -2
  201. package/lib/service/worker/runtime/method.js +2 -1
  202. package/lib/service/worker/runtime/statusTrack.d.ts +2 -2
  203. package/lib/service/worker/runtime/statusTrack.js +11 -5
  204. package/lib/service/worker/runtime/typings.d.ts +10 -10
  205. package/lib/service/worker/runtime/utils/compose.d.ts +3 -3
  206. package/lib/service/worker/runtime/utils/compose.js +5 -2
  207. package/lib/service/worker/runtime/utils/context.d.ts +4 -1
  208. package/lib/service/worker/runtime/utils/context.js +6 -4
  209. package/lib/service/worker/runtime/utils/diff.js +1 -0
  210. package/lib/service/worker/runtime/utils/recorder.js +2 -1
  211. package/lib/service/worker/runtime/utils/toArray.js +3 -1
  212. package/lib/service/worker/runtime/utils/tokenBucket.js +1 -0
  213. package/lib/tracing/Tags.js +2 -1
  214. package/lib/tracing/UserLandTracer.js +4 -2
  215. package/lib/tracing/errorReporting/ErrorReport.js +14 -13
  216. package/lib/tracing/index.js +10 -9
  217. package/lib/tracing/spanReference/SpanReferenceTypes.js +1 -0
  218. package/lib/tracing/spanReference/createSpanReference.js +1 -0
  219. package/lib/tracing/utils.js +6 -4
  220. package/lib/utils/MineWinsConflictsResolver.d.ts +4 -4
  221. package/lib/utils/MineWinsConflictsResolver.js +11 -10
  222. package/lib/utils/app.js +40 -23
  223. package/lib/utils/appsStaleIfError.d.ts +1 -0
  224. package/lib/utils/appsStaleIfError.js +33 -12
  225. package/lib/utils/billingOptions.js +3 -1
  226. package/lib/utils/binding.js +5 -2
  227. package/lib/utils/cancel.js +1 -0
  228. package/lib/utils/conflicts.mock.js +1 -0
  229. package/lib/utils/domain.js +2 -1
  230. package/lib/utils/error.js +6 -4
  231. package/lib/utils/index.js +23 -12
  232. package/lib/utils/json.js +1 -0
  233. package/lib/utils/log.js +4 -2
  234. package/lib/utils/message.js +9 -5
  235. package/lib/utils/renameBy.js +3 -1
  236. package/lib/utils/retry.js +10 -7
  237. package/lib/utils/status.js +3 -1
  238. package/lib/utils/tenant.js +5 -2
  239. package/lib/utils/throwOnGraphQLErrors.js +1 -0
  240. package/lib/utils/time.d.ts +3 -5
  241. package/lib/utils/time.js +24 -14
  242. package/package.json +4 -4
  243. package/CHANGELOG.md +0 -1858
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.startWorker = void 0;
6
7
  const http_1 = require("http");
7
8
  const koa_1 = __importDefault(require("koa"));
8
9
  const koa_compress_1 = __importDefault(require("koa-compress"));
@@ -40,7 +41,7 @@ const upSignal = () => {
40
41
  path: '/_up',
41
42
  port: 5000,
42
43
  };
43
- const req = http_1.request(options);
44
+ const req = (0, http_1.request)(options);
44
45
  req.write(data);
45
46
  req.end();
46
47
  };
@@ -48,10 +49,10 @@ const isUpSignal = (message) => message === constants_1.UP_SIGNAL;
48
49
  const onMessage = (service) => (message) => {
49
50
  if (isUpSignal(message)) {
50
51
  upSignal();
51
- routes_1.logAvailableRoutes(service);
52
+ (0, routes_1.logAvailableRoutes)(service);
52
53
  }
53
- else if (statusTrack_1.isStatusTrack(message)) {
54
- statusTrack_1.trackStatus();
54
+ else if ((0, statusTrack_1.isStatusTrack)(message)) {
55
+ (0, statusTrack_1.trackStatus)();
55
56
  }
56
57
  else {
57
58
  listeners_1.logger.warn({
@@ -72,13 +73,13 @@ const createAppHttpHandlers = ({ config: { routes, clients } }, serviceJSON, glo
72
73
  const { path: servicePath, public: publicRoute = false, extensible = false, } = serviceRoute;
73
74
  if (publicRoute || extensible) {
74
75
  acc.pub[routeId] = {
75
- handler: http_2.createPublicHttpRoute(clients, routes[routeId], serviceRoute, routeId, globalLimiter),
76
+ handler: (0, http_2.createPublicHttpRoute)(clients, routes[routeId], serviceRoute, routeId, globalLimiter),
76
77
  path: servicePath,
77
78
  };
78
79
  }
79
80
  else {
80
81
  acc.pvt[routeId] = {
81
- handler: http_2.createPrivateHttpRoute(clients, routes[routeId], serviceRoute, routeId, globalLimiter),
82
+ handler: (0, http_2.createPrivateHttpRoute)(clients, routes[routeId], serviceRoute, routeId, globalLimiter),
82
83
  path: `/:account/:workspace${servicePath.replace(/\*([^/]*)/g, ':$1*')}`,
83
84
  };
84
85
  }
@@ -97,7 +98,7 @@ const createAppGraphQLHandler = ({ config: { graphql, clients } }, { routes }, g
97
98
  return {
98
99
  pvt: {
99
100
  [graphql_1.GRAPHQL_ROUTE]: {
100
- handler: graphql_1.createGraphQLRoute(graphql, clients, route, graphql_1.GRAPHQL_ROUTE, globalLimiter),
101
+ handler: (0, graphql_1.createGraphQLRoute)(graphql, clients, route, graphql_1.GRAPHQL_ROUTE, globalLimiter),
101
102
  path: `/:account/:workspace${route.path}`,
102
103
  },
103
104
  },
@@ -110,7 +111,7 @@ const createAppEventHandlers = ({ config: { events, clients } }, serviceJSON, gl
110
111
  return Object.keys(events).reduce((acc, eventId) => {
111
112
  var _a;
112
113
  const serviceEvent = (_a = serviceJSON.events) === null || _a === void 0 ? void 0 : _a[eventId];
113
- acc[eventId] = events_1.createEventHandler(clients, eventId, events[eventId], serviceEvent, globalLimiter);
114
+ acc[eventId] = (0, events_1.createEventHandler)(clients, eventId, events[eventId], serviceEvent, globalLimiter);
114
115
  return acc;
115
116
  }, {});
116
117
  }
@@ -119,11 +120,11 @@ const createAppEventHandlers = ({ config: { events, clients } }, serviceJSON, gl
119
120
  const createRuntimeHttpHandlers = (appEventHandlers, serviceJSON) => ({
120
121
  pvt: {
121
122
  __events: {
122
- handler: router_1.routerFromEventHandlers(appEventHandlers),
123
+ handler: (0, router_1.routerFromEventHandlers)(appEventHandlers),
123
124
  path: '/:account/:workspace/_events',
124
125
  },
125
126
  __healthCheck: {
126
- handler: handlers_1.healthcheckHandler(serviceJSON),
127
+ handler: (0, handlers_1.healthcheckHandler)(serviceJSON),
127
128
  path: '/healthcheck',
128
129
  },
129
130
  __metricsLogger: {
@@ -135,7 +136,7 @@ const createRuntimeHttpHandlers = (appEventHandlers, serviceJSON) => ({
135
136
  path: '/_status',
136
137
  },
137
138
  __whoami: {
138
- handler: handlers_1.whoAmIHandler(serviceJSON),
139
+ handler: (0, handlers_1.whoAmIHandler)(serviceJSON),
139
140
  path: '/:account/:workspace/_whoami',
140
141
  },
141
142
  },
@@ -145,30 +146,30 @@ const scaleClientCaches = (scaleFactor, options) => Object.entries(options || {}
145
146
  const previous = opts.memoryCache.storage.max;
146
147
  const current = previous / scaleFactor;
147
148
  opts.memoryCache.storage.max = current;
148
- console_1.logOnceToDevConsole(`Scaling ${name} cache capacity from ${previous} to ${current}`, logger_1.LogLevel.Warn);
149
+ (0, console_1.logOnceToDevConsole)(`Scaling ${name} cache capacity from ${previous} to ${current}`, logger_1.LogLevel.Warn);
149
150
  }
150
151
  });
151
- exports.startWorker = (serviceJSON) => {
152
+ const startWorker = (serviceJSON) => {
152
153
  var _a, _b;
153
- listeners_1.addProcessListeners();
154
+ (0, listeners_1.addProcessListeners)();
154
155
  const tracer = TracerSingleton_1.TracerSingleton.getTracer();
155
156
  const app = new koa_1.default();
156
157
  app.proxy = true;
157
158
  app
158
159
  .use(error_1.error)
159
- .use(middlewares_1.prometheusLoggerMiddleware())
160
- .use(tracingMiddlewares_1.addTracingMiddleware(tracer))
161
- .use(requestMetricsMiddleware_1.addRequestMetricsMiddleware())
162
- .use(middlewares_1.addMetricsLoggerMiddleware())
163
- .use(rateLimit_1.concurrentRateLimiter((_a = serviceJSON === null || serviceJSON === void 0 ? void 0 : serviceJSON.rateLimitPerReplica) === null || _a === void 0 ? void 0 : _a.concurrent))
164
- .use(koa_compress_1.default())
160
+ .use((0, middlewares_1.prometheusLoggerMiddleware)())
161
+ .use((0, tracingMiddlewares_1.addTracingMiddleware)(tracer))
162
+ .use((0, requestMetricsMiddleware_1.addRequestMetricsMiddleware)())
163
+ .use((0, middlewares_1.addMetricsLoggerMiddleware)())
164
+ .use((0, rateLimit_1.concurrentRateLimiter)((_a = serviceJSON === null || serviceJSON === void 0 ? void 0 : serviceJSON.rateLimitPerReplica) === null || _a === void 0 ? void 0 : _a.concurrent))
165
+ .use((0, koa_compress_1.default)())
165
166
  .use(middlewares_1.recorderMiddleware);
166
- const service = loaders_1.getService();
167
+ const service = (0, loaders_1.getService)();
167
168
  const { config: { clients } } = service;
168
169
  if (clients) {
169
170
  scaleClientCaches(serviceJSON.workers, clients.options);
170
171
  }
171
- const globalLimiter = tokenBucket_1.createTokenBucket((_b = serviceJSON === null || serviceJSON === void 0 ? void 0 : serviceJSON.rateLimitPerReplica) === null || _b === void 0 ? void 0 : _b.perMinute);
172
+ const globalLimiter = (0, tokenBucket_1.createTokenBucket)((_b = serviceJSON === null || serviceJSON === void 0 ? void 0 : serviceJSON.rateLimitPerReplica) === null || _b === void 0 ? void 0 : _b.perMinute);
172
173
  const appHttpHandlers = createAppHttpHandlers(service, serviceJSON, globalLimiter);
173
174
  const appEventHandlers = createAppEventHandlers(service, serviceJSON, globalLimiter);
174
175
  const appGraphQLHandlers = createAppGraphQLHandler(service, serviceJSON, globalLimiter);
@@ -182,7 +183,7 @@ exports.startWorker = (serviceJSON) => {
182
183
  // TODO: Fix ramda typings. Apparently there was an update that broke things
183
184
  .reduce(ramda_1.mergeDeepRight);
184
185
  if (httpHandlers === null || httpHandlers === void 0 ? void 0 : httpHandlers.pub) {
185
- const publicHandlersRouter = router_2.routerFromPublicHttpHandlers(httpHandlers.pub);
186
+ const publicHandlersRouter = (0, router_2.routerFromPublicHttpHandlers)(httpHandlers.pub);
186
187
  app.use(publicHandlersRouter);
187
188
  }
188
189
  if (httpHandlers === null || httpHandlers === void 0 ? void 0 : httpHandlers.pvt) {
@@ -192,4 +193,5 @@ exports.startWorker = (serviceJSON) => {
192
193
  process.on('message', onMessage(serviceJSON));
193
194
  return app;
194
195
  };
196
+ exports.startWorker = startWorker;
195
197
  global.metrics = new MetricsAccumulator_1.MetricsAccumulator();
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addProcessListeners = exports.logger = void 0;
3
4
  const os_1 = require("os");
4
5
  const RequestCancelledError_1 = require("../../errors/RequestCancelledError");
5
6
  const logger_1 = require("../logger");
@@ -8,7 +9,7 @@ let watched;
8
9
  const handleSignal = signal => {
9
10
  process.exit(os_1.constants.signals[signal]);
10
11
  };
11
- exports.addProcessListeners = () => {
12
+ const addProcessListeners = () => {
12
13
  // Listeners already set up
13
14
  if (watched) {
14
15
  return;
@@ -37,3 +38,4 @@ exports.addProcessListeners = () => {
37
38
  process.on('SIGINT', handleSignal);
38
39
  process.on('SIGTERM', handleSignal);
39
40
  };
41
+ exports.addProcessListeners = addProcessListeners;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Service = void 0;
3
4
  const logger_1 = require("../../logger");
4
5
  /**
5
6
  * This is the client definition to allow type checking on code editors.
@@ -16,7 +17,7 @@ class Service {
16
17
  constructor(config) {
17
18
  this.config = config;
18
19
  if (config.routes && config.routes.graphql) {
19
- logger_1.logOnceToDevConsole(`Route id "graphql" is reserved and apps containing this routes will stop working in the near future. To create a GraphQL app, export a "graphql" key with {resolvers}.`, logger_1.LogLevel.Warn);
20
+ (0, logger_1.logOnceToDevConsole)(`Route id "graphql" is reserved and apps containing this routes will stop working in the near future. To create a GraphQL app, export a "graphql" key with {resolvers}.`, logger_1.LogLevel.Warn);
20
21
  }
21
22
  }
22
23
  }
@@ -1,4 +1,4 @@
1
1
  import { ServiceContext, ServiceJSON } from '../typings';
2
- export declare const whoAmIHandler: ({ events, routes, }: ServiceJSON) => (ctx: ServiceContext<import("../../../..").IOClients, import("../typings").RecorderState, import("../typings").ParamsContext>) => void;
3
- export declare const healthcheckHandler: ({ events, routes, }: ServiceJSON) => (ctx: ServiceContext<import("../../../..").IOClients, import("../typings").RecorderState, import("../typings").ParamsContext>) => void;
4
- export declare const metricsLoggerHandler: (ctx: ServiceContext<import("../../../..").IOClients, import("../typings").RecorderState, import("../typings").ParamsContext>) => void;
2
+ export declare const whoAmIHandler: ({ events, routes, }: ServiceJSON) => (ctx: ServiceContext) => void;
3
+ export declare const healthcheckHandler: ({ events, routes, }: ServiceJSON) => (ctx: ServiceContext) => void;
4
+ export declare const metricsLoggerHandler: (ctx: ServiceContext) => void;
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.whoAmIHandler = ({ events, routes, }) => (ctx) => {
3
+ exports.metricsLoggerHandler = exports.healthcheckHandler = exports.whoAmIHandler = void 0;
4
+ const whoAmIHandler = ({ events, routes, }) => (ctx) => {
4
5
  var _a, _b;
5
6
  ctx.requestHandlerName = 'builtin:whoami';
6
7
  (_b = (_a = ctx.tracing) === null || _a === void 0 ? void 0 : _a.currentSpan) === null || _b === void 0 ? void 0 : _b.setOperationName(ctx.requestHandlerName);
@@ -11,7 +12,8 @@ exports.whoAmIHandler = ({ events, routes, }) => (ctx) => {
11
12
  };
12
13
  ctx.set('Cache-Control', 'public, max-age=86400'); // cache for 24 hours
13
14
  };
14
- exports.healthcheckHandler = ({ events, routes, }) => (ctx) => {
15
+ exports.whoAmIHandler = whoAmIHandler;
16
+ const healthcheckHandler = ({ events, routes, }) => (ctx) => {
15
17
  var _a, _b;
16
18
  ctx.requestHandlerName = 'builtin:healthcheck';
17
19
  (_b = (_a = ctx.tracing) === null || _a === void 0 ? void 0 : _a.currentSpan) === null || _b === void 0 ? void 0 : _b.setOperationName(ctx.requestHandlerName);
@@ -21,10 +23,12 @@ exports.healthcheckHandler = ({ events, routes, }) => (ctx) => {
21
23
  routes,
22
24
  };
23
25
  };
24
- exports.metricsLoggerHandler = (ctx) => {
26
+ exports.healthcheckHandler = healthcheckHandler;
27
+ const metricsLoggerHandler = (ctx) => {
25
28
  var _a, _b;
26
29
  ctx.requestHandlerName = 'builtin:metrics-logger';
27
30
  (_b = (_a = ctx.tracing) === null || _a === void 0 ? void 0 : _a.currentSpan) === null || _b === void 0 ? void 0 : _b.setOperationName(ctx.requestHandlerName);
28
31
  ctx.status = 200;
29
32
  ctx.body = ctx.metricsLogger.getSummaries();
30
33
  };
34
+ exports.metricsLoggerHandler = metricsLoggerHandler;
@@ -1,4 +1,4 @@
1
1
  import { ServiceContext } from '../typings';
2
2
  export declare function recorderMiddleware(ctx: ServiceContext, next: () => Promise<void>): Promise<void>;
3
- export declare const addMetricsLoggerMiddleware: () => (ctx: ServiceContext<import("../../../..").IOClients, import("../typings").RecorderState, import("../typings").ParamsContext>, next: () => Promise<void>) => Promise<void>;
4
- export declare const prometheusLoggerMiddleware: () => (ctx: ServiceContext<import("../../../..").IOClients, import("../typings").RecorderState, import("../typings").ParamsContext>, next: () => Promise<void>) => Promise<void>;
3
+ export declare const addMetricsLoggerMiddleware: () => (ctx: ServiceContext, next: () => Promise<void>) => Promise<void>;
4
+ export declare const prometheusLoggerMiddleware: () => (ctx: ServiceContext, next: () => Promise<void>) => Promise<void>;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.prometheusLoggerMiddleware = exports.addMetricsLoggerMiddleware = exports.recorderMiddleware = void 0;
3
4
  const prom_client_1 = require("prom-client");
4
5
  const constants_1 = require("../../../../constants");
5
6
  const metricsLogger_1 = require("../../../logger/metricsLogger");
@@ -13,15 +14,16 @@ async function recorderMiddleware(ctx, next) {
13
14
  return;
14
15
  }
15
16
  exports.recorderMiddleware = recorderMiddleware;
16
- exports.addMetricsLoggerMiddleware = () => {
17
+ const addMetricsLoggerMiddleware = () => {
17
18
  const metricsLogger = new metricsLogger_1.MetricsLogger();
18
19
  return (ctx, next) => {
19
20
  ctx.metricsLogger = metricsLogger;
20
21
  return next();
21
22
  };
22
23
  };
23
- exports.prometheusLoggerMiddleware = () => {
24
- prom_client_1.collectDefaultMetrics();
24
+ exports.addMetricsLoggerMiddleware = addMetricsLoggerMiddleware;
25
+ const prometheusLoggerMiddleware = () => {
26
+ (0, prom_client_1.collectDefaultMetrics)();
25
27
  const eventLoopLagMeasurer = new EventLoopLagMeasurer_1.EventLoopLagMeasurer();
26
28
  eventLoopLagMeasurer.start();
27
29
  return async (ctx, next) => {
@@ -38,3 +40,4 @@ exports.prometheusLoggerMiddleware = () => {
38
40
  ctx.status = 200;
39
41
  };
40
42
  };
43
+ exports.prometheusLoggerMiddleware = prometheusLoggerMiddleware;
@@ -1,4 +1,4 @@
1
1
  import TokenBucket from 'tokenbucket';
2
2
  import { IOClients } from '../../../../clients/IOClients';
3
- import { ClientsConfig, ParamsContext, RecorderState, ServiceContext, ServiceEvent } from '../typings';
4
- export declare const createEventHandler: <T extends IOClients, U extends RecorderState, V extends ParamsContext>(clientsConfig: ClientsConfig<T>, eventId: string, handler: import("koa-compose").Middleware<import("../typings").EventContext<T, U>> | import("koa-compose").Middleware<import("../typings").EventContext<T, U>>[], serviceEvent: ServiceEvent | undefined, globalLimiter: TokenBucket | undefined) => import("koa-compose").ComposedMiddleware<ServiceContext<T, U, V>>;
3
+ import { ClientsConfig, EventHandler, ParamsContext, RecorderState, ServiceContext, ServiceEvent } from '../typings';
4
+ export declare const createEventHandler: <T extends IOClients, U extends RecorderState, V extends ParamsContext>(clientsConfig: ClientsConfig<T>, eventId: string, handler: EventHandler<T, U> | EventHandler<T, U>[], serviceEvent: ServiceEvent | undefined, globalLimiter: TokenBucket | undefined) => import("koa-compose").ComposedMiddleware<ServiceContext<T, U, V>>;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createEventHandler = void 0;
3
4
  const tracingMiddlewares_1 = require("../../../tracing/tracingMiddlewares");
4
5
  const clients_1 = require("../http/middlewares/clients");
5
6
  const rateLimit_1 = require("../http/middlewares/rateLimit");
@@ -9,24 +10,25 @@ const compose_1 = require("../utils/compose");
9
10
  const toArray_1 = require("../utils/toArray");
10
11
  const body_1 = require("./middlewares/body");
11
12
  const context_1 = require("./middlewares/context");
12
- exports.createEventHandler = (clientsConfig, eventId, handler, serviceEvent, globalLimiter) => {
13
+ const createEventHandler = (clientsConfig, eventId, handler, serviceEvent, globalLimiter) => {
13
14
  var _a, _b;
14
15
  const { implementation, options } = clientsConfig;
15
- const middlewares = toArray_1.toArray(handler);
16
+ const middlewares = (0, toArray_1.toArray)(handler);
16
17
  const pipeline = [
17
- tracingMiddlewares_1.nameSpanOperationMiddleware('event-handler', eventId),
18
+ (0, tracingMiddlewares_1.nameSpanOperationMiddleware)('event-handler', eventId),
18
19
  context_1.eventContextMiddleware,
19
20
  body_1.parseBodyMiddleware,
20
- clients_1.clients(implementation, options),
21
- ...((serviceEvent === null || serviceEvent === void 0 ? void 0 : serviceEvent.settingsType) === 'workspace' || (serviceEvent === null || serviceEvent === void 0 ? void 0 : serviceEvent.settingsType) === 'userAndWorkspace' ? [settings_1.getServiceSettings()] : []),
21
+ (0, clients_1.clients)(implementation, options),
22
+ ...((serviceEvent === null || serviceEvent === void 0 ? void 0 : serviceEvent.settingsType) === 'workspace' || (serviceEvent === null || serviceEvent === void 0 ? void 0 : serviceEvent.settingsType) === 'userAndWorkspace' ? [(0, settings_1.getServiceSettings)()] : []),
22
23
  timings_1.timings,
23
- rateLimit_1.concurrentRateLimiter((_a = serviceEvent === null || serviceEvent === void 0 ? void 0 : serviceEvent.rateLimitPerReplica) === null || _a === void 0 ? void 0 : _a.concurrent),
24
- rateLimit_1.perMinuteRateLimiter((_b = serviceEvent === null || serviceEvent === void 0 ? void 0 : serviceEvent.rateLimitPerReplica) === null || _b === void 0 ? void 0 : _b.perMinute, globalLimiter),
25
- tracingMiddlewares_1.traceUserLandRemainingPipelineMiddleware(),
24
+ (0, rateLimit_1.concurrentRateLimiter)((_a = serviceEvent === null || serviceEvent === void 0 ? void 0 : serviceEvent.rateLimitPerReplica) === null || _a === void 0 ? void 0 : _a.concurrent),
25
+ (0, rateLimit_1.perMinuteRateLimiter)((_b = serviceEvent === null || serviceEvent === void 0 ? void 0 : serviceEvent.rateLimitPerReplica) === null || _b === void 0 ? void 0 : _b.perMinute, globalLimiter),
26
+ (0, tracingMiddlewares_1.traceUserLandRemainingPipelineMiddleware)(),
26
27
  contextAdapter(middlewares),
27
28
  ];
28
- return compose_1.compose(pipeline);
29
+ return (0, compose_1.compose)(pipeline);
29
30
  };
31
+ exports.createEventHandler = createEventHandler;
30
32
  function contextAdapter(middlewares) {
31
33
  return async function middlewareCascade(ctx) {
32
34
  const ctxEvent = {
@@ -40,7 +42,7 @@ function contextAdapter(middlewares) {
40
42
  timings: ctx.timings,
41
43
  vtex: ctx.vtex,
42
44
  };
43
- await compose_1.composeForEvents(middlewares)(ctxEvent);
45
+ await (0, compose_1.composeForEvents)(middlewares)(ctxEvent);
44
46
  ctx.status = 204;
45
47
  };
46
48
  }
@@ -3,18 +3,22 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.parseBodyMiddleware = void 0;
6
7
  const co_body_1 = __importDefault(require("co-body"));
7
8
  const logger_1 = require("../../../../logger");
8
9
  const console_1 = require("./../../../../logger/console");
9
10
  async function parseBodyMiddleware(ctx, next) {
10
11
  try {
11
- ctx.state.body = await co_body_1.default(ctx.req);
12
+ ctx.state.body = await (0, co_body_1.default)(ctx.req);
12
13
  }
13
14
  catch (err) {
15
+ if (!(err instanceof Error)) {
16
+ throw err;
17
+ }
14
18
  const msg = `Error parsing event body: ${err.message || err}`;
15
19
  ctx.status = 500;
16
20
  ctx.body = msg;
17
- console_1.logOnceToDevConsole(msg, logger_1.LogLevel.Error);
21
+ (0, console_1.logOnceToDevConsole)(msg, logger_1.LogLevel.Error);
18
22
  return;
19
23
  }
20
24
  await next();
@@ -1,11 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.eventContextMiddleware = void 0;
3
4
  const constants_1 = require("../../../../../constants");
4
5
  const context_1 = require("../../utils/context");
5
6
  async function eventContextMiddleware(ctx, next) {
6
7
  const { request: { header } } = ctx;
7
8
  ctx.vtex = {
8
- ...context_1.prepareHandlerCtx(header, ctx.tracing),
9
+ ...(0, context_1.prepareHandlerCtx)(header, ctx.tracing),
9
10
  eventInfo: {
10
11
  key: header[constants_1.EVENT_KEY_HEADER],
11
12
  sender: header[constants_1.EVENT_SENDER_HEADER],
@@ -1,2 +1,2 @@
1
- import { ServiceContext } from '../typings';
2
- export declare const routerFromEventHandlers: (events: Record<string, import("koa-compose").Middleware<ServiceContext<import("../../../..").IOClients, import("../typings").RecorderState, import("../typings").ParamsContext>>> | null) => (ctx: ServiceContext<import("../../../..").IOClients, import("../typings").RecorderState, import("../typings").ParamsContext>, next: () => Promise<void>) => Promise<void>;
1
+ import { RouteHandler, ServiceContext } from '../typings';
2
+ export declare const routerFromEventHandlers: (events: Record<string, RouteHandler> | null) => (ctx: ServiceContext, next: () => Promise<void>) => Promise<void>;
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.routerFromEventHandlers = void 0;
3
4
  const constants_1 = require("../../../../constants");
4
5
  const logger_1 = require("../../../logger");
5
6
  const console_1 = require("./../../../logger/console");
6
- exports.routerFromEventHandlers = (events) => {
7
+ const routerFromEventHandlers = (events) => {
7
8
  return async (ctx, next) => {
8
9
  const handlerId = ctx.get(constants_1.EVENT_HANDLER_ID_HEADER);
9
10
  if (!handlerId || !events) {
@@ -19,9 +20,10 @@ exports.routerFromEventHandlers = (events) => {
19
20
  const msg = `Event handler not found for ${handlerId}`;
20
21
  ctx.response.status = 404;
21
22
  ctx.response.body = msg;
22
- console_1.logOnceToDevConsole(msg, logger_1.LogLevel.Error);
23
+ (0, console_1.logOnceToDevConsole)(msg, logger_1.LogLevel.Error);
23
24
  return;
24
25
  }
25
26
  await handler(ctx, next);
26
27
  };
27
28
  };
29
+ exports.routerFromEventHandlers = routerFromEventHandlers;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createGraphQLRoute = exports.GRAPHQL_ROUTE = void 0;
3
4
  const tracingMiddlewares_1 = require("../../../tracing/tracingMiddlewares");
4
5
  const http_1 = require("../http");
5
6
  const context_1 = require("./middlewares/context");
@@ -11,17 +12,18 @@ const updateSchema_1 = require("./middlewares/updateSchema");
11
12
  const upload_1 = require("./middlewares/upload");
12
13
  const schema_1 = require("./schema");
13
14
  exports.GRAPHQL_ROUTE = '__graphql';
14
- exports.createGraphQLRoute = (graphql, clientsConfig, serviceRoute, routeId, globalLimiter) => {
15
- const executableSchema = schema_1.makeSchema(graphql);
15
+ const createGraphQLRoute = (graphql, clientsConfig, serviceRoute, routeId, globalLimiter) => {
16
+ const executableSchema = (0, schema_1.makeSchema)(graphql);
16
17
  const pipeline = [
17
- tracingMiddlewares_1.nameSpanOperationMiddleware('graphql-handler', exports.GRAPHQL_ROUTE),
18
- updateSchema_1.updateSchema(graphql, executableSchema),
18
+ (0, tracingMiddlewares_1.nameSpanOperationMiddleware)('graphql-handler', exports.GRAPHQL_ROUTE),
19
+ (0, updateSchema_1.updateSchema)(graphql, executableSchema),
19
20
  context_1.injectGraphqlContext,
20
21
  response_1.response,
21
22
  error_1.graphqlError,
22
23
  upload_1.upload,
23
- query_1.extractQuery(executableSchema),
24
- run_1.run(executableSchema),
24
+ (0, query_1.extractQuery)(executableSchema),
25
+ (0, run_1.run)(executableSchema),
25
26
  ];
26
- return http_1.createPrivateHttpRoute(clientsConfig, pipeline, serviceRoute, routeId, globalLimiter);
27
+ return (0, http_1.createPrivateHttpRoute)(clientsConfig, pipeline, serviceRoute, routeId, globalLimiter);
27
28
  };
29
+ exports.createGraphQLRoute = createGraphQLRoute;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.injectGraphqlContext = void 0;
3
4
  const constants_1 = require("../../../../../constants");
4
5
  async function injectGraphqlContext(ctx, next) {
5
6
  ctx.graphql = {
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.graphqlError = void 0;
3
4
  const apollo_server_errors_1 = require("apollo-server-errors");
4
5
  const ramda_1 = require("ramda");
5
6
  const constants_1 = require("../../../../../constants");
@@ -8,7 +9,7 @@ const logger_1 = require("../../../../logger");
8
9
  const error_1 = require("../utils/error");
9
10
  const pathname_1 = require("../utils/pathname");
10
11
  const TWO_SECONDS_S = 2;
11
- const uniqErrorsByPath = (errors) => ramda_1.uniqBy(e => e.extensions && e.extensions.exception && e.extensions.exception.request
12
+ const uniqErrorsByPath = (errors) => (0, ramda_1.uniqBy)(e => e.extensions && e.extensions.exception && e.extensions.exception.request
12
13
  ? e.extensions.exception.request.path
13
14
  : e, errors);
14
15
  const createLogErrorToSplunk = (vtex) => (err) => {
@@ -21,7 +22,7 @@ const createLogErrorToSplunk = (vtex) => (err) => {
21
22
  }
22
23
  // Add pathName to each error
23
24
  if (err.path) {
24
- err.pathName = pathname_1.generatePathName(err.path);
25
+ err.pathName = (0, pathname_1.generatePathName)(err.path);
25
26
  }
26
27
  const log = {
27
28
  ...err,
@@ -47,16 +48,19 @@ async function graphqlError(ctx, next) {
47
48
  await next();
48
49
  const response = ctx.graphql.graphqlResponse;
49
50
  if (response && Array.isArray(response.errors)) {
50
- const formatter = error_1.createFormatError(ctx);
51
- graphQLErrors = apollo_server_errors_1.formatApolloErrors(response.errors, { formatter });
51
+ const formatter = (0, error_1.createFormatError)(ctx);
52
+ graphQLErrors = (0, apollo_server_errors_1.formatApolloErrors)(response.errors, { formatter });
52
53
  }
53
54
  }
54
55
  catch (e) {
56
+ if (!(e instanceof apollo_server_errors_1.ApolloError)) {
57
+ throw e;
58
+ }
55
59
  if (e.code === RequestCancelledError_1.cancelledErrorCode) {
56
60
  ctx.status = RequestCancelledError_1.cancelledRequestStatus;
57
61
  return;
58
62
  }
59
- const formatError = error_1.createFormatError(ctx);
63
+ const formatError = (0, error_1.createFormatError)(ctx);
60
64
  graphQLErrors = Array.isArray(e)
61
65
  ? e.map(formatError)
62
66
  : [formatError(e)];
@@ -1,2 +1,3 @@
1
1
  import { ExecutableSchema } from './../typings';
2
- export declare const extractQuery: (executableSchema: ExecutableSchema) => (ctx: import("../../typings").ServiceContext<import("../../../../..").IOClients, import("../../typings").RecorderState, import("../typings").GraphQLContext>, next: () => Promise<void>) => Promise<void>;
2
+ import { GraphQLServiceContext } from '../typings';
3
+ export declare const extractQuery: (executableSchema: ExecutableSchema) => (ctx: GraphQLServiceContext, next: () => Promise<void>) => Promise<void>;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractQuery = void 0;
3
4
  const co_body_1 = require("co-body");
4
5
  const graphql_1 = require("graphql");
5
6
  const url_1 = require("url");
@@ -9,7 +10,7 @@ const documentStorage = new LRUCache_1.LRUCache({
9
10
  max: 500,
10
11
  });
11
12
  const queryFromUrl = (url) => {
12
- const parsedUrl = url_1.parse(url, true);
13
+ const parsedUrl = (0, url_1.parse)(url, true);
13
14
  const { query: querystringObj } = parsedUrl;
14
15
  // Having a BODY_HASH means the query is in the body
15
16
  if (querystringObj && querystringObj[constants_1.BODY_HASH]) {
@@ -23,24 +24,24 @@ const queryFromUrl = (url) => {
23
24
  return querystringObj;
24
25
  };
25
26
  const parseAndValidateQueryToSchema = (query, schema) => {
26
- const document = graphql_1.parse(query);
27
- const validation = graphql_1.validate(schema, document);
27
+ const document = (0, graphql_1.parse)(query);
28
+ const validation = (0, graphql_1.validate)(schema, document);
28
29
  if (Array.isArray(validation) && validation.length > 0) {
29
30
  throw validation;
30
31
  }
31
32
  return document;
32
33
  };
33
- exports.extractQuery = (executableSchema) => async function parseAndValidateQuery(ctx, next) {
34
+ const extractQuery = (executableSchema) => async function parseAndValidateQuery(ctx, next) {
34
35
  const { request, req } = ctx;
35
36
  let query;
36
37
  if (request.is('multipart/form-data')) {
37
38
  query = request.body;
38
39
  }
39
40
  else if (request.method.toUpperCase() === 'POST') {
40
- query = await co_body_1.json(req, { limit: '3mb' });
41
+ query = await (0, co_body_1.json)(req, { limit: '3mb' });
41
42
  }
42
43
  else {
43
- query = queryFromUrl(request.url) || (await co_body_1.json(req, { limit: '3mb' }));
44
+ query = queryFromUrl(request.url) || (await (0, co_body_1.json)(req, { limit: '3mb' }));
44
45
  }
45
46
  // Assign the query before setting the query.document because if the
46
47
  // validation fails we don't loose the query in our error log
@@ -50,3 +51,4 @@ exports.extractQuery = (executableSchema) => async function parseAndValidateQuer
50
51
  })));
51
52
  await next();
52
53
  };
54
+ exports.extractQuery = extractQuery;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.response = void 0;
3
4
  const constants_1 = require("../../../../../constants");
4
5
  const cacheControl_1 = require("../utils/cacheControl");
5
6
  function setVaryHeaders(ctx, cacheControl) {
@@ -22,7 +23,7 @@ async function response(ctx, next) {
22
23
  var _a;
23
24
  await next();
24
25
  const { cacheControl, status, graphqlResponse, } = ctx.graphql;
25
- const cacheControlHeader = cacheControl_1.cacheControlHTTP(ctx);
26
+ const cacheControlHeader = (0, cacheControl_1.cacheControlHTTP)(ctx);
26
27
  ctx.set(constants_1.CACHE_CONTROL_HEADER, cacheControlHeader);
27
28
  if (status === 'error') {
28
29
  // Do not generate etag for errors
@@ -1,2 +1,2 @@
1
- import { ExecutableSchema } from '../typings';
2
- export declare const run: (executableSchema: ExecutableSchema) => (ctx: import("../../typings").ServiceContext<import("../../../../..").IOClients, import("../../typings").RecorderState, import("../typings").GraphQLContext>, next: () => Promise<void>) => Promise<void>;
1
+ import { ExecutableSchema, GraphQLServiceContext } from '../typings';
2
+ export declare const run: (executableSchema: ExecutableSchema) => (ctx: GraphQLServiceContext, next: () => Promise<void>) => Promise<void>;
@@ -1,11 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.run = void 0;
3
4
  const graphql_1 = require("graphql");
4
- exports.run = (executableSchema) => async function runHttpQuery(ctx, next) {
5
+ const run = (executableSchema) => async function runHttpQuery(ctx, next) {
5
6
  const { graphql: { query }, } = ctx;
6
7
  const { document, operationName, variables: variableValues } = query;
7
8
  const schema = executableSchema.schema;
8
- const response = await graphql_1.execute({
9
+ const response = await (0, graphql_1.execute)({
9
10
  contextValue: ctx,
10
11
  document,
11
12
  fieldResolver: (root, _, __, info) => root[info.fieldName],
@@ -17,3 +18,4 @@ exports.run = (executableSchema) => async function runHttpQuery(ctx, next) {
17
18
  ctx.graphql.graphqlResponse = response;
18
19
  await next();
19
20
  };
21
+ exports.run = run;
@@ -1,4 +1,5 @@
1
1
  import { IOClients } from '../../../../../clients';
2
2
  import { GraphQLOptions, ParamsContext, RecorderState } from '../../typings';
3
3
  import { ExecutableSchema } from '../typings';
4
- export declare const updateSchema: <T extends IOClients, U extends RecorderState, V extends ParamsContext>(graphql: GraphQLOptions<T, U, V>, executableSchema: ExecutableSchema) => (ctx: import("../../typings").ServiceContext<IOClients, RecorderState, import("../typings").GraphQLContext>, next: () => Promise<void>) => Promise<void>;
4
+ import { GraphQLServiceContext } from '../typings';
5
+ export declare const updateSchema: <T extends IOClients, U extends RecorderState, V extends ParamsContext>(graphql: GraphQLOptions<T, U, V>, executableSchema: ExecutableSchema) => (ctx: GraphQLServiceContext, next: () => Promise<void>) => Promise<void>;
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.updateSchema = void 0;
3
4
  const constants_1 = require("../../../../../constants");
4
5
  const utils_1 = require("../../../../../utils");
5
6
  const index_1 = require("../schema/index");
6
- exports.updateSchema = (graphql, executableSchema) => async function updateRunnableSchema(ctx, next) {
7
+ const updateSchema = (graphql, executableSchema) => async function updateRunnableSchema(ctx, next) {
7
8
  const { clients: { apps }, vtex: { logger }, app, } = ctx;
8
9
  if (!ctx.headers[constants_1.PROVIDER_HEADER]) {
9
10
  await next();
@@ -12,11 +13,11 @@ exports.updateSchema = (graphql, executableSchema) => async function updateRunna
12
13
  // fetches the new schema and generate a new runnable schema, updates the provider app,
13
14
  if (executableSchema.hasProvider &&
14
15
  (!executableSchema.provider ||
15
- utils_1.majorEqualAndGreaterThan(utils_1.parseAppId(ctx.headers[constants_1.PROVIDER_HEADER]).version, utils_1.parseAppId(executableSchema.provider).version))) {
16
+ (0, utils_1.majorEqualAndGreaterThan)((0, utils_1.parseAppId)(ctx.headers[constants_1.PROVIDER_HEADER]).version, (0, utils_1.parseAppId)(executableSchema.provider).version))) {
16
17
  try {
17
18
  const newSchema = (await apps.getAppFile(ctx.headers[constants_1.PROVIDER_HEADER], 'public/schema.graphql')).data.toString('utf-8');
18
19
  graphql.schema = newSchema;
19
- const newRunnableSchema = index_1.makeSchema(graphql);
20
+ const newRunnableSchema = (0, index_1.makeSchema)(graphql);
20
21
  executableSchema.schema = newRunnableSchema.schema;
21
22
  executableSchema.provider = ctx.headers[constants_1.PROVIDER_HEADER];
22
23
  }
@@ -26,3 +27,4 @@ exports.updateSchema = (graphql, executableSchema) => async function updateRunna
26
27
  }
27
28
  await next();
28
29
  };
30
+ exports.updateSchema = updateSchema;