@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,79 @@
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 cookie_1 = __importDefault(require("cookie"));
7
+ const ramda_1 = require("ramda");
8
+ const constants_1 = require("../../constants");
9
+ const HttpClient_1 = require("../../HttpClient");
10
+ const JanusClient_1 = require("./JanusClient");
11
+ const SEGMENT_COOKIE = 'vtex_segment';
12
+ const SEGMENT_MAX_AGE_S = 60 * 60; // 60 minutes - segment is actually immutable
13
+ const ALLOWED_QUERY_PREFIXES = ['utm', 'cultureInfo', 'supportedLocales', '__bindingId'];
14
+ const filterAndSortQuery = (query) => {
15
+ if (!query) {
16
+ return null;
17
+ }
18
+ const filteredKeys = Object.keys(query)
19
+ .filter((k) => !!k && ALLOWED_QUERY_PREFIXES.some((prefix) => k.startsWith(prefix)))
20
+ .sort();
21
+ return filteredKeys.reduce((acc, val) => {
22
+ acc[val] = query[val];
23
+ return acc;
24
+ }, {});
25
+ };
26
+ const routes = {
27
+ base: '/api/segments',
28
+ segments: (token) => token ? `${routes.base}/${token}` : routes.base,
29
+ };
30
+ class Segment extends JanusClient_1.JanusClient {
31
+ constructor() {
32
+ super(...arguments);
33
+ /**
34
+ * Get the segment data using the current `ctx.vtex.segmentToken`
35
+ *
36
+ * @memberof Segment
37
+ */
38
+ this.getSegment = (tracingConfig) => this.rawSegment(this.context.segmentToken, undefined, tracingConfig).then(ramda_1.prop('data'));
39
+ /**
40
+ * Get the segment data from this specific segment token
41
+ *
42
+ * @memberof Segment
43
+ */
44
+ this.getSegmentByToken = (token, tracingConfig) => this.rawSegment(token, undefined, tracingConfig).then(ramda_1.prop('data'));
45
+ this.getOrCreateSegment = async (query, token, tracingConfig) => {
46
+ const { data: segmentData, headers: { 'set-cookie': [setCookies], }, } = await this.rawSegment(token, query, tracingConfig);
47
+ const parsedCookie = cookie_1.default.parse(setCookies);
48
+ const segmentToken = ramda_1.prop(SEGMENT_COOKIE, parsedCookie);
49
+ return {
50
+ segmentData,
51
+ segmentToken,
52
+ };
53
+ };
54
+ this.rawSegment = (token, query, tracingConfig) => {
55
+ const { product, workspace } = this.context;
56
+ const filteredQuery = filterAndSortQuery(query);
57
+ const metric = token ? 'segment-get-token' : 'segment-get-new';
58
+ return this.http.getRaw(routes.segments(token), ({
59
+ forceMaxAge: SEGMENT_MAX_AGE_S,
60
+ headers: {
61
+ 'Content-Type': 'application/json',
62
+ [constants_1.PRODUCT_HEADER]: product || '',
63
+ },
64
+ inflightKey: HttpClient_1.inflightUrlWithQuery,
65
+ metric,
66
+ params: {
67
+ ...filteredQuery,
68
+ session_path: product || '',
69
+ workspace,
70
+ },
71
+ tracing: {
72
+ requestSpanNameSuffix: metric,
73
+ ...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
74
+ },
75
+ }));
76
+ };
77
+ }
78
+ }
79
+ exports.Segment = Segment;
@@ -0,0 +1,15 @@
1
+ import { RequestTracingConfig } from '../../HttpClient';
2
+ import { JanusClient } from './JanusClient';
3
+ export declare class Session extends JanusClient {
4
+ /**
5
+ * Get the session data using the given token
6
+ */
7
+ getSession: (token: string, items: string[], tracingConfig?: RequestTracingConfig | undefined) => Promise<{
8
+ sessionData: any;
9
+ sessionToken: string;
10
+ }>;
11
+ /**
12
+ * Update the public portion of this session
13
+ */
14
+ updateSession: (key: string, value: any, items: string[], token: any, tracingConfig?: RequestTracingConfig | undefined) => Promise<void>;
15
+ }
@@ -0,0 +1,75 @@
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 cookie_1 = __importDefault(require("cookie"));
7
+ const JanusClient_1 = require("./JanusClient");
8
+ const SESSION_COOKIE = 'vtex_session';
9
+ const routes = {
10
+ base: '/api/sessions',
11
+ };
12
+ class Session extends JanusClient_1.JanusClient {
13
+ constructor() {
14
+ super(...arguments);
15
+ /**
16
+ * Get the session data using the given token
17
+ */
18
+ this.getSession = async (token, items, tracingConfig) => {
19
+ var _a;
20
+ const metric = 'session-get';
21
+ const { data: sessionData, headers } = await this.http.getRaw(routes.base, {
22
+ headers: {
23
+ 'Content-Type': 'application/json',
24
+ 'Cookie': `vtex_session=${token};`,
25
+ },
26
+ metric,
27
+ params: {
28
+ items: items.join(','),
29
+ },
30
+ tracing: {
31
+ requestSpanNameSuffix: metric,
32
+ ...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
33
+ },
34
+ });
35
+ return {
36
+ sessionData,
37
+ sessionToken: (_a = extractSessionCookie(headers)) !== null && _a !== void 0 ? _a : token,
38
+ };
39
+ };
40
+ /**
41
+ * Update the public portion of this session
42
+ */
43
+ this.updateSession = (key, value, items, token, tracingConfig) => {
44
+ const data = { public: { [key]: { value } } };
45
+ const metric = 'session-update';
46
+ const config = {
47
+ headers: {
48
+ 'Content-Type': 'application/json',
49
+ 'Cookie': `vtex_session=${token};`,
50
+ },
51
+ metric,
52
+ params: {
53
+ items: items.join(','),
54
+ },
55
+ tracing: {
56
+ requestSpanNameSuffix: metric,
57
+ ...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
58
+ },
59
+ };
60
+ return this.http.post(routes.base, data, config);
61
+ };
62
+ }
63
+ }
64
+ exports.Session = Session;
65
+ function extractSessionCookie(headers) {
66
+ var _a;
67
+ for (const setCookie of (_a = headers['set-cookie']) !== null && _a !== void 0 ? _a : []) {
68
+ const parsedCookie = cookie_1.default.parse(setCookie);
69
+ const sessionCookie = parsedCookie[SESSION_COOKIE];
70
+ if (sessionCookie != null) {
71
+ return sessionCookie;
72
+ }
73
+ }
74
+ return null;
75
+ }
@@ -0,0 +1,29 @@
1
+ import { InstanceOptions, RequestConfig } from '../../HttpClient/typings';
2
+ import { IOContext } from '../../service/worker/runtime/typings';
3
+ import { JanusClient } from './JanusClient';
4
+ export interface Binding {
5
+ id: string;
6
+ canonicalBaseAddress: string;
7
+ alternateBaseAddresses: string[];
8
+ defaultLocale: string;
9
+ supportedLocales: string[];
10
+ defaultCurrency: string;
11
+ supportedCurrencies: string[];
12
+ extraContext: Record<string, any>;
13
+ targetProduct: string;
14
+ }
15
+ export interface Tenant {
16
+ id: string;
17
+ slug: string;
18
+ title: string;
19
+ edition: string;
20
+ infra: string;
21
+ bindings: Binding[];
22
+ defaultCurrency: string;
23
+ defaultLocale: string;
24
+ metadata: Record<string, string>;
25
+ }
26
+ export declare class TenantClient extends JanusClient {
27
+ constructor(ctx: IOContext, opts?: InstanceOptions);
28
+ info: (config?: RequestConfig | undefined) => Promise<Tenant>;
29
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const HttpClient_1 = require("../../HttpClient");
4
+ const JanusClient_1 = require("./JanusClient");
5
+ class TenantClient extends JanusClient_1.JanusClient {
6
+ constructor(ctx, opts) {
7
+ super(ctx, {
8
+ ...opts,
9
+ params: {
10
+ q: ctx.account,
11
+ },
12
+ });
13
+ this.info = (config) => {
14
+ const metric = 'get-tenant-info';
15
+ return this.http.get('/api/tenant/tenants', {
16
+ inflightKey: HttpClient_1.inflightUrlWithQuery,
17
+ memoizeable: true,
18
+ metric,
19
+ ...config,
20
+ tracing: {
21
+ requestSpanNameSuffix: metric,
22
+ ...config === null || config === void 0 ? void 0 : config.tracing,
23
+ },
24
+ });
25
+ };
26
+ }
27
+ }
28
+ exports.TenantClient = TenantClient;
@@ -0,0 +1,5 @@
1
+ export * from './JanusClient';
2
+ export * from './LicenseManager';
3
+ export * from './Segment';
4
+ export * from './Session';
5
+ export * from './Tenant';
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ function __export(m) {
3
+ for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
4
+ }
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ __export(require("./JanusClient"));
7
+ __export(require("./LicenseManager"));
8
+ __export(require("./Segment"));
9
+ __export(require("./Session"));
10
+ __export(require("./Tenant"));
@@ -0,0 +1,59 @@
1
+ export declare const NODE_VTEX_API_VERSION: any;
2
+ export declare const DEFAULT_WORKSPACE = "master";
3
+ export declare const IS_IO: string | undefined;
4
+ export declare const PID: number;
5
+ export declare const CACHE_CONTROL_HEADER = "cache-control";
6
+ export declare const SEGMENT_HEADER = "x-vtex-segment";
7
+ export declare const SESSION_HEADER = "x-vtex-session";
8
+ export declare const PRODUCT_HEADER = "x-vtex-product";
9
+ export declare const LOCALE_HEADER = "x-vtex-locale";
10
+ export declare const FORWARDED_HOST_HEADER = "x-forwarded-host";
11
+ export declare const TENANT_HEADER = "x-vtex-tenant";
12
+ export declare const BINDING_HEADER = "x-vtex-binding";
13
+ export declare const META_HEADER = "x-vtex-meta";
14
+ export declare const META_HEADER_BUCKET = "x-vtex-meta-bucket";
15
+ export declare const ETAG_HEADER = "etag";
16
+ export declare const ACCOUNT_HEADER = "x-vtex-account";
17
+ export declare const CREDENTIAL_HEADER = "x-vtex-credential";
18
+ export declare const REQUEST_ID_HEADER = "x-request-id";
19
+ export declare const ROUTER_CACHE_HEADER = "x-router-cache";
20
+ export declare const OPERATION_ID_HEADER = "x-vtex-operation-id";
21
+ export declare const PLATFORM_HEADER = "x-vtex-platform";
22
+ export declare const WORKSPACE_IS_PRODUCTION_HEADER = "x-vtex-workspace-is-production";
23
+ export declare const WORKSPACE_HEADER = "x-vtex-workspace";
24
+ export declare const EVENT_KEY_HEADER = "x-event-key";
25
+ export declare const EVENT_SENDER_HEADER = "x-event-sender";
26
+ export declare const EVENT_SUBJECT_HEADER = "x-event-subject";
27
+ export declare const EVENT_HANDLER_ID_HEADER = "x-event-handler-id";
28
+ export declare const COLOSSUS_ROUTE_DECLARER_HEADER = "x-colossus-route-declarer";
29
+ export declare const COLOSSUS_ROUTE_ID_HEADER = "x-colossus-route-id";
30
+ export declare const COLOSSUS_PARAMS_HEADER = "x-colossus-params";
31
+ export declare const TRACE_ID_HEADER = "x-trace-id";
32
+ export declare const PROVIDER_HEADER = "x-vtex-provider";
33
+ export declare type VaryHeaders = typeof SEGMENT_HEADER | typeof SESSION_HEADER | typeof PRODUCT_HEADER | typeof LOCALE_HEADER;
34
+ export declare const BODY_HASH = "__graphqlBodyHash";
35
+ export declare const UP_SIGNAL = "UP";
36
+ export declare const MAX_AGE: {
37
+ LONG: number;
38
+ MEDIUM: number;
39
+ SHORT: number;
40
+ };
41
+ export declare const HTTP_SERVER_PORT = 5050;
42
+ export declare const MAX_WORKERS = 4;
43
+ export declare const LINKED: boolean;
44
+ export declare const REGION: string;
45
+ export declare const PUBLIC_ENDPOINT: string;
46
+ export declare const APP: {
47
+ ID: string;
48
+ MAJOR: string;
49
+ NAME: string;
50
+ VENDOR: string;
51
+ VERSION: string;
52
+ IS_THIRD_PARTY(): boolean;
53
+ };
54
+ export declare const NODE_ENV: string;
55
+ export declare const ACCOUNT: string;
56
+ export declare const WORKSPACE: string;
57
+ export declare const PRODUCTION: boolean;
58
+ export declare const INSPECT_DEBUGGER_PORT = 5858;
59
+ export declare const cancellableMethods: Set<string>;
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const app_1 = require("./utils/app");
4
+ // tslint:disable-next-line
5
+ const pkg = require('../package.json');
6
+ exports.NODE_VTEX_API_VERSION = pkg.version;
7
+ exports.DEFAULT_WORKSPACE = 'master';
8
+ exports.IS_IO = process.env.VTEX_IO;
9
+ exports.PID = process.pid;
10
+ exports.CACHE_CONTROL_HEADER = 'cache-control';
11
+ exports.SEGMENT_HEADER = 'x-vtex-segment';
12
+ exports.SESSION_HEADER = 'x-vtex-session';
13
+ exports.PRODUCT_HEADER = 'x-vtex-product';
14
+ exports.LOCALE_HEADER = 'x-vtex-locale';
15
+ exports.FORWARDED_HOST_HEADER = 'x-forwarded-host';
16
+ exports.TENANT_HEADER = 'x-vtex-tenant';
17
+ exports.BINDING_HEADER = 'x-vtex-binding';
18
+ exports.META_HEADER = 'x-vtex-meta';
19
+ exports.META_HEADER_BUCKET = 'x-vtex-meta-bucket';
20
+ exports.ETAG_HEADER = 'etag';
21
+ exports.ACCOUNT_HEADER = 'x-vtex-account';
22
+ exports.CREDENTIAL_HEADER = 'x-vtex-credential';
23
+ exports.REQUEST_ID_HEADER = 'x-request-id';
24
+ exports.ROUTER_CACHE_HEADER = 'x-router-cache';
25
+ exports.OPERATION_ID_HEADER = 'x-vtex-operation-id';
26
+ exports.PLATFORM_HEADER = 'x-vtex-platform';
27
+ exports.WORKSPACE_IS_PRODUCTION_HEADER = 'x-vtex-workspace-is-production';
28
+ exports.WORKSPACE_HEADER = 'x-vtex-workspace';
29
+ exports.EVENT_KEY_HEADER = 'x-event-key';
30
+ exports.EVENT_SENDER_HEADER = 'x-event-sender';
31
+ exports.EVENT_SUBJECT_HEADER = 'x-event-subject';
32
+ exports.EVENT_HANDLER_ID_HEADER = 'x-event-handler-id';
33
+ exports.COLOSSUS_ROUTE_DECLARER_HEADER = 'x-colossus-route-declarer';
34
+ exports.COLOSSUS_ROUTE_ID_HEADER = 'x-colossus-route-id';
35
+ exports.COLOSSUS_PARAMS_HEADER = 'x-colossus-params';
36
+ exports.TRACE_ID_HEADER = 'x-trace-id';
37
+ exports.PROVIDER_HEADER = 'x-vtex-provider';
38
+ exports.BODY_HASH = '__graphqlBodyHash';
39
+ exports.UP_SIGNAL = 'UP';
40
+ exports.MAX_AGE = {
41
+ LONG: 86400,
42
+ MEDIUM: 3600,
43
+ SHORT: 120,
44
+ };
45
+ exports.HTTP_SERVER_PORT = 5050;
46
+ exports.MAX_WORKERS = 4;
47
+ exports.LINKED = !!process.env.VTEX_APP_LINK;
48
+ exports.REGION = process.env.VTEX_REGION;
49
+ exports.PUBLIC_ENDPOINT = process.env.VTEX_PUBLIC_ENDPOINT || 'myvtex.com';
50
+ exports.APP = {
51
+ ID: process.env.VTEX_APP_ID,
52
+ MAJOR: process.env.VTEX_APP_VERSION ? app_1.versionToMajor(process.env.VTEX_APP_VERSION) : '',
53
+ NAME: process.env.VTEX_APP_NAME,
54
+ VENDOR: process.env.VTEX_APP_VENDOR,
55
+ VERSION: process.env.VTEX_APP_VERSION,
56
+ IS_THIRD_PARTY() {
57
+ return 'vtex' !== this.VENDOR && 'gocommerce' !== this.VENDOR;
58
+ },
59
+ };
60
+ exports.NODE_ENV = process.env.NODE_ENV;
61
+ exports.ACCOUNT = process.env.VTEX_ACCOUNT;
62
+ exports.WORKSPACE = process.env.VTEX_WORKSPACE;
63
+ exports.PRODUCTION = process.env.VTEX_PRODUCTION === 'true';
64
+ exports.INSPECT_DEBUGGER_PORT = 5858;
65
+ exports.cancellableMethods = new Set(['GET', 'OPTIONS', 'HEAD']);
@@ -0,0 +1,18 @@
1
+ import { AxiosError } from 'axios';
2
+ import { ErrorLike } from './ResolverError';
3
+ import { ResolverWarning } from './ResolverWarning';
4
+ /**
5
+ * Indicates user did not provide valid credentials for authenticating this request.
6
+ * ResolverWarnings are logged with level "warning" denoting they were handled by user code.
7
+ *
8
+ * @class AuthenticationError
9
+ * @extends {ResolverWarning}
10
+ */
11
+ export declare class AuthenticationError extends ResolverWarning {
12
+ name: string;
13
+ /**
14
+ * Creates an instance of AuthenticationError
15
+ * @param {(string | AxiosError | ErrorLike)} messageOrError Either a message string or the complete original error object.
16
+ */
17
+ constructor(messageOrError: string | AxiosError | ErrorLike);
18
+ }
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const ResolverWarning_1 = require("./ResolverWarning");
4
+ /**
5
+ * Indicates user did not provide valid credentials for authenticating this request.
6
+ * ResolverWarnings are logged with level "warning" denoting they were handled by user code.
7
+ *
8
+ * @class AuthenticationError
9
+ * @extends {ResolverWarning}
10
+ */
11
+ class AuthenticationError extends ResolverWarning_1.ResolverWarning {
12
+ /**
13
+ * Creates an instance of AuthenticationError
14
+ * @param {(string | AxiosError | ErrorLike)} messageOrError Either a message string or the complete original error object.
15
+ */
16
+ constructor(messageOrError) {
17
+ super(messageOrError, 401, 'UNAUTHENTICATED');
18
+ this.name = 'AuthenticationError';
19
+ if (typeof messageOrError === 'string' || !messageOrError.stack) {
20
+ Error.captureStackTrace(this, AuthenticationError);
21
+ }
22
+ }
23
+ }
24
+ exports.AuthenticationError = AuthenticationError;
@@ -0,0 +1,18 @@
1
+ import { AxiosError } from 'axios';
2
+ import { ErrorLike } from './ResolverError';
3
+ import { ResolverWarning } from './ResolverWarning';
4
+ /**
5
+ * Indicates user is not authorized to perform this action.
6
+ * ResolverWarnings are logged with level "warning" denoting they were handled by user code.
7
+ *
8
+ * @class ForbiddenError
9
+ * @extends {ResolverWarning}
10
+ */
11
+ export declare class ForbiddenError extends ResolverWarning {
12
+ name: string;
13
+ /**
14
+ * Creates an instance of ForbiddenError
15
+ * @param {(string | AxiosError | ErrorLike)} messageOrError Either a message string or the complete original error object.
16
+ */
17
+ constructor(messageOrError: string | AxiosError | ErrorLike);
18
+ }
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const ResolverWarning_1 = require("./ResolverWarning");
4
+ /**
5
+ * Indicates user is not authorized to perform this action.
6
+ * ResolverWarnings are logged with level "warning" denoting they were handled by user code.
7
+ *
8
+ * @class ForbiddenError
9
+ * @extends {ResolverWarning}
10
+ */
11
+ class ForbiddenError extends ResolverWarning_1.ResolverWarning {
12
+ /**
13
+ * Creates an instance of ForbiddenError
14
+ * @param {(string | AxiosError | ErrorLike)} messageOrError Either a message string or the complete original error object.
15
+ */
16
+ constructor(messageOrError) {
17
+ super(messageOrError, 403, 'FORBIDDEN');
18
+ this.name = 'ForbiddenError';
19
+ if (typeof messageOrError === 'string' || !messageOrError.stack) {
20
+ Error.captureStackTrace(this, ForbiddenError);
21
+ }
22
+ }
23
+ }
24
+ exports.ForbiddenError = ForbiddenError;