@vtex/api 6.48.1-beta → 6.48.1-beta.3
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.
- package/gen/manifest.schema +5 -3
- package/lib/HttpClient/GraphQLClient.d.ts +2 -1
- package/lib/HttpClient/GraphQLClient.js +5 -1
- package/lib/HttpClient/HttpClient.d.ts +6 -5
- package/lib/HttpClient/HttpClient.js +64 -21
- package/lib/HttpClient/agents.d.ts +3 -0
- package/lib/HttpClient/agents.js +37 -0
- package/lib/HttpClient/index.d.ts +1 -7
- package/lib/HttpClient/index.js +17 -16
- package/lib/HttpClient/middlewares/cache.d.ts +8 -2
- package/lib/HttpClient/middlewares/cache.js +126 -33
- package/lib/HttpClient/middlewares/cancellationToken.d.ts +1 -1
- package/lib/HttpClient/middlewares/cancellationToken.js +3 -1
- package/lib/HttpClient/middlewares/inflight.js +1 -0
- package/lib/HttpClient/middlewares/memoization.js +9 -1
- package/lib/HttpClient/middlewares/metrics.js +17 -31
- package/lib/HttpClient/middlewares/notFound.js +1 -0
- package/lib/HttpClient/middlewares/recorder.d.ts +1 -1
- package/lib/HttpClient/middlewares/recorder.js +20 -12
- package/lib/HttpClient/middlewares/request/HttpAgentSingleton.d.ts +11 -0
- package/lib/HttpClient/middlewares/request/HttpAgentSingleton.js +31 -0
- package/lib/HttpClient/middlewares/request/index.d.ts +18 -0
- package/lib/HttpClient/middlewares/request/index.js +85 -0
- package/lib/HttpClient/middlewares/request/setupAxios/index.d.ts +2 -0
- package/lib/HttpClient/middlewares/request/setupAxios/index.js +21 -0
- package/lib/HttpClient/middlewares/request/setupAxios/interceptors/exponentialBackoff.d.ts +2 -0
- package/lib/HttpClient/middlewares/request/setupAxios/interceptors/exponentialBackoff.js +54 -0
- package/lib/HttpClient/middlewares/request/setupAxios/interceptors/index.d.ts +2 -0
- package/lib/HttpClient/middlewares/request/setupAxios/interceptors/index.js +7 -0
- package/lib/HttpClient/middlewares/request/setupAxios/interceptors/tracing/index.d.ts +8 -0
- package/lib/HttpClient/middlewares/request/setupAxios/interceptors/tracing/index.js +56 -0
- package/lib/HttpClient/middlewares/request/setupAxios/interceptors/tracing/spanSetup.d.ts +4 -0
- package/lib/HttpClient/middlewares/request/setupAxios/interceptors/tracing/spanSetup.js +30 -0
- package/lib/HttpClient/middlewares/tracing.d.ts +15 -0
- package/lib/HttpClient/middlewares/tracing.js +61 -0
- package/lib/HttpClient/typings.d.ts +44 -10
- package/lib/HttpClient/typings.js +1 -0
- package/lib/caches/DiskCache.d.ts +1 -1
- package/lib/caches/DiskCache.js +1 -0
- package/lib/caches/LRUCache.d.ts +2 -2
- package/lib/caches/LRUCache.js +6 -1
- package/lib/caches/LRUDiskCache.d.ts +1 -1
- package/lib/caches/LRUDiskCache.js +6 -1
- package/lib/caches/MultilayeredCache.d.ts +1 -1
- package/lib/caches/MultilayeredCache.js +2 -1
- package/lib/caches/index.js +16 -7
- package/lib/{HttpClient → clients}/IOClient.d.ts +4 -4
- package/lib/clients/IOClient.js +20 -0
- package/lib/clients/IOClients.d.ts +28 -24
- package/lib/clients/IOClients.js +36 -28
- package/lib/{HttpClient → clients}/IOGraphQLClient.d.ts +4 -4
- package/lib/{HttpClient → clients}/IOGraphQLClient.js +3 -2
- package/lib/{HttpClient → clients/apps}/AppClient.d.ts +3 -3
- package/lib/{HttpClient → clients/apps}/AppClient.js +11 -5
- package/lib/{HttpClient → clients/apps}/AppGraphQLClient.d.ts +3 -3
- package/lib/{HttpClient → clients/apps}/AppGraphQLClient.js +11 -5
- package/lib/clients/apps/Billing.d.ts +12 -0
- package/lib/clients/{Billing.js → apps/Billing.js} +9 -3
- package/lib/clients/{Builder.d.ts → apps/Builder.d.ts} +12 -11
- package/lib/clients/{Builder.js → apps/Builder.js} +50 -22
- package/lib/clients/apps/MessagesGraphQL.d.ts +61 -0
- package/lib/clients/apps/MessagesGraphQL.js +122 -0
- package/lib/clients/{Settings.d.ts → apps/Settings.d.ts} +5 -4
- package/lib/clients/{Settings.js → apps/Settings.js} +15 -20
- package/lib/clients/apps/catalogGraphQL/brand.d.ts +13 -0
- package/lib/clients/apps/catalogGraphQL/brand.js +19 -0
- package/lib/clients/apps/catalogGraphQL/category.d.ts +11 -0
- package/lib/clients/apps/catalogGraphQL/category.js +17 -0
- package/lib/clients/apps/catalogGraphQL/index.d.ts +22 -0
- package/lib/clients/apps/catalogGraphQL/index.js +89 -0
- package/lib/clients/apps/catalogGraphQL/product.d.ts +25 -0
- package/lib/clients/apps/catalogGraphQL/product.js +31 -0
- package/lib/clients/apps/catalogGraphQL/sku.d.ts +26 -0
- package/lib/clients/apps/catalogGraphQL/sku.js +31 -0
- package/lib/clients/apps/index.d.ts +7 -0
- package/lib/clients/apps/index.js +19 -0
- package/lib/{HttpClient → clients/external}/ExternalClient.d.ts +3 -3
- package/lib/{HttpClient → clients/external}/ExternalClient.js +10 -2
- package/lib/clients/external/ID.d.ts +23 -0
- package/lib/clients/external/ID.js +61 -0
- package/lib/clients/external/Masterdata.d.ts +94 -0
- package/lib/clients/external/Masterdata.js +225 -0
- package/lib/clients/external/PaymentProvider.d.ts +31 -0
- package/lib/clients/external/PaymentProvider.js +43 -0
- package/lib/clients/external/index.d.ts +4 -0
- package/lib/clients/external/index.js +16 -0
- package/lib/clients/index.d.ts +9 -21
- package/lib/clients/index.js +23 -24
- package/lib/clients/infra/Apps.d.ts +88 -0
- package/lib/clients/infra/Apps.js +511 -0
- package/lib/clients/infra/Assets.d.ts +34 -0
- package/lib/clients/{Assets.js → infra/Assets.js} +75 -19
- package/lib/clients/infra/BillingMetrics.d.ts +13 -0
- package/lib/clients/infra/BillingMetrics.js +16 -0
- package/lib/clients/infra/Events.d.ts +12 -0
- package/lib/clients/infra/Events.js +34 -0
- package/lib/clients/infra/Housekeeper.d.ts +10 -0
- package/lib/clients/infra/Housekeeper.js +31 -0
- package/lib/{HttpClient → clients/infra}/InfraClient.d.ts +3 -3
- package/lib/{HttpClient → clients/infra}/InfraClient.js +10 -4
- package/lib/clients/infra/Registry.d.ts +59 -0
- package/lib/clients/{Registry.js → infra/Registry.js} +95 -33
- package/lib/clients/infra/Router.d.ts +34 -0
- package/lib/clients/infra/Router.js +82 -0
- package/lib/clients/infra/Sphinx.d.ts +13 -0
- package/lib/clients/infra/Sphinx.js +30 -0
- package/lib/clients/infra/VBase.d.ts +60 -0
- package/lib/clients/infra/VBase.js +197 -0
- package/lib/clients/infra/Workspaces.d.ts +18 -0
- package/lib/clients/infra/Workspaces.js +66 -0
- package/lib/clients/infra/index.d.ts +11 -0
- package/lib/clients/infra/index.js +23 -0
- package/lib/{HttpClient → clients/janus}/JanusClient.d.ts +3 -3
- package/lib/{HttpClient → clients/janus}/JanusClient.js +8 -3
- package/lib/clients/janus/LicenseManager.d.ts +7 -0
- package/lib/clients/{LicenseManager.js → janus/LicenseManager.js} +24 -8
- package/lib/clients/{Segment.d.ts → janus/Segment.d.ts} +7 -11
- package/lib/clients/janus/Segment.js +89 -0
- package/lib/clients/{Session.d.ts → janus/Session.d.ts} +4 -4
- package/lib/clients/{Session.js → janus/Session.js} +25 -13
- package/lib/clients/{Tenant.d.ts → janus/Tenant.d.ts} +6 -7
- package/lib/clients/janus/Tenant.js +29 -0
- package/lib/clients/janus/index.d.ts +5 -0
- package/lib/clients/janus/index.js +17 -0
- package/lib/constants.d.ts +49 -1
- package/lib/constants.js +55 -1
- package/lib/errors/AuthenticationError.js +1 -0
- package/lib/errors/ForbiddenError.js +1 -0
- package/lib/errors/NotFoundError.js +1 -0
- package/lib/errors/RequestCancelledError.js +1 -0
- package/lib/errors/ResolverError.d.ts +1 -1
- package/lib/errors/ResolverError.js +3 -2
- package/lib/errors/ResolverWarning.d.ts +1 -1
- package/lib/errors/ResolverWarning.js +3 -2
- package/lib/errors/TooManyRequestsError.js +1 -0
- package/lib/errors/UserInputError.js +1 -0
- package/lib/errors/index.js +18 -11
- package/lib/index.d.ts +9 -7
- package/lib/index.js +27 -16
- package/lib/metrics/MetricsAccumulator.d.ts +1 -18
- package/lib/metrics/MetricsAccumulator.js +39 -22
- package/lib/responses.d.ts +3 -44
- package/lib/service/index.d.ts +2 -0
- package/lib/service/index.js +34 -0
- package/lib/service/loaders.d.ts +8 -0
- package/lib/service/loaders.js +55 -0
- package/lib/service/logger/console.d.ts +10 -0
- package/lib/service/logger/console.js +37 -0
- package/lib/service/logger/index.d.ts +2 -28
- package/lib/service/logger/index.js +12 -68
- package/lib/service/logger/logger.d.ts +29 -0
- package/lib/service/logger/logger.js +62 -0
- package/lib/service/logger/metricsLogger.d.ts +40 -0
- package/lib/service/logger/metricsLogger.js +150 -0
- package/lib/service/master.d.ts +2 -0
- package/lib/service/master.js +88 -0
- package/lib/service/metrics/requestMetricsMiddleware.d.ts +2 -0
- package/lib/service/metrics/requestMetricsMiddleware.js +45 -0
- package/lib/service/tracing/TracerSingleton.d.ts +7 -0
- package/lib/service/tracing/TracerSingleton.js +49 -0
- package/lib/service/tracing/metrics/MetricNames.d.ts +60 -0
- package/lib/service/tracing/metrics/MetricNames.js +45 -0
- package/lib/service/tracing/metrics/instruments.d.ts +9 -0
- package/lib/service/tracing/metrics/instruments.js +12 -0
- package/lib/service/tracing/metrics/measurers/EventLoopLagMeasurer.d.ts +9 -0
- package/lib/service/tracing/metrics/measurers/EventLoopLagMeasurer.js +26 -0
- package/lib/service/tracing/tracingMiddlewares.d.ts +5 -0
- package/lib/service/tracing/tracingMiddlewares.js +114 -0
- package/lib/service/worker/index.d.ts +11 -0
- package/lib/service/worker/index.js +196 -0
- package/lib/service/worker/listeners.d.ts +3 -0
- package/lib/{utils/unhandled.js → service/worker/listeners.js} +10 -15
- package/lib/service/{Service.d.ts → worker/runtime/Service.d.ts} +5 -5
- package/lib/service/{Service.js → worker/runtime/Service.js} +3 -1
- package/lib/service/worker/runtime/builtIn/handlers.d.ts +4 -0
- package/lib/service/worker/runtime/builtIn/handlers.js +31 -0
- package/lib/service/worker/runtime/builtIn/middlewares.d.ts +4 -0
- package/lib/service/worker/runtime/builtIn/middlewares.js +41 -0
- package/lib/service/worker/runtime/events/index.d.ts +4 -0
- package/lib/service/worker/runtime/events/index.js +47 -0
- package/lib/service/worker/runtime/events/middlewares/body.d.ts +3 -0
- package/lib/service/worker/runtime/events/middlewares/body.js +26 -0
- package/lib/service/worker/runtime/events/middlewares/context.d.ts +3 -0
- package/lib/service/worker/runtime/events/middlewares/context.js +23 -0
- package/lib/service/worker/runtime/events/router.d.ts +2 -0
- package/lib/service/worker/runtime/events/router.js +28 -0
- package/lib/service/worker/runtime/graphql/index.d.ts +6 -0
- package/lib/service/worker/runtime/graphql/index.js +28 -0
- package/lib/service/worker/runtime/graphql/middlewares/context.d.ts +2 -0
- package/lib/service/worker/runtime/graphql/middlewares/context.js +17 -0
- package/lib/service/worker/runtime/graphql/middlewares/error.js +97 -0
- package/lib/service/worker/runtime/graphql/middlewares/query.d.ts +3 -0
- package/lib/service/worker/runtime/graphql/middlewares/query.js +53 -0
- package/lib/service/worker/runtime/graphql/middlewares/response.js +39 -0
- package/lib/service/worker/runtime/graphql/middlewares/run.d.ts +2 -0
- package/lib/service/worker/runtime/graphql/middlewares/run.js +20 -0
- package/lib/service/worker/runtime/graphql/middlewares/updateSchema.d.ts +5 -0
- package/lib/service/worker/runtime/graphql/middlewares/updateSchema.js +29 -0
- package/lib/service/worker/runtime/graphql/middlewares/upload.d.ts +4 -0
- package/lib/service/{graphql → worker/runtime/graphql}/middlewares/upload.js +1 -0
- package/lib/service/worker/runtime/graphql/schema/index.d.ts +7 -0
- package/lib/service/worker/runtime/graphql/schema/index.js +32 -0
- package/lib/service/worker/runtime/graphql/schema/messagesLoaderV2.d.ts +6 -0
- package/lib/service/worker/runtime/graphql/schema/messagesLoaderV2.js +80 -0
- package/lib/service/{graphql → worker/runtime/graphql}/schema/schemaDirectives/Auth.d.ts +1 -0
- package/lib/service/{graphql → worker/runtime/graphql}/schema/schemaDirectives/Auth.js +17 -10
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/CacheControl.d.ts +7 -0
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/CacheControl.js +38 -0
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Deprecated.d.ts +11 -0
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Deprecated.js +62 -0
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Metric.d.ts +7 -0
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Metric.js +41 -0
- package/lib/service/{graphql → worker/runtime/graphql}/schema/schemaDirectives/Sanitize.d.ts +1 -0
- package/lib/service/{graphql → worker/runtime/graphql}/schema/schemaDirectives/Sanitize.js +7 -0
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Settings.d.ts +6 -0
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Settings.js +35 -0
- package/lib/service/{graphql → worker/runtime/graphql}/schema/schemaDirectives/SmartCacheDirective.d.ts +1 -0
- package/lib/service/{graphql → worker/runtime/graphql}/schema/schemaDirectives/SmartCacheDirective.js +9 -3
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/TranslatableV2.d.ts +7 -0
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/TranslatableV2.js +40 -0
- package/lib/service/{graphql/schema/schemaDirectives/Translatable.d.ts → worker/runtime/graphql/schema/schemaDirectives/TranslateTo.d.ts} +2 -1
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/TranslateTo.js +34 -0
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/index.d.ts +22 -0
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/index.js +37 -0
- package/lib/service/worker/runtime/graphql/schema/typeDefs/index.d.ts +8 -0
- package/lib/service/worker/runtime/graphql/schema/typeDefs/index.js +13 -0
- package/lib/service/{graphql → worker/runtime/graphql}/schema/typeDefs/ioUpload.js +1 -0
- package/lib/service/{graphql → worker/runtime/graphql}/schema/typeDefs/sanitizedString.js +6 -1
- package/lib/service/worker/runtime/graphql/typings.d.ts +31 -0
- package/lib/service/worker/runtime/graphql/utils/cacheControl.d.ts +2 -0
- package/lib/service/worker/runtime/graphql/utils/cacheControl.js +33 -0
- package/lib/service/worker/runtime/graphql/utils/error.d.ts +2 -0
- package/lib/service/worker/runtime/graphql/utils/error.js +77 -0
- package/lib/service/{graphql → worker/runtime/graphql}/utils/pathname.js +1 -0
- package/lib/service/worker/runtime/graphql/utils/translations.d.ts +14 -0
- package/lib/service/worker/runtime/graphql/utils/translations.js +39 -0
- package/lib/service/worker/runtime/http/index.d.ts +5 -0
- package/lib/service/worker/runtime/http/index.js +59 -0
- package/lib/service/worker/runtime/http/middlewares/authTokens.d.ts +3 -0
- package/lib/service/{http → worker/runtime/http}/middlewares/authTokens.js +1 -0
- package/lib/service/worker/runtime/http/middlewares/cancellationToken.d.ts +3 -0
- package/lib/service/{http → worker/runtime/http}/middlewares/cancellationToken.js +3 -1
- package/lib/service/worker/runtime/http/middlewares/clients.d.ts +4 -0
- package/lib/service/{http → worker/runtime/http}/middlewares/clients.js +1 -0
- package/lib/service/worker/runtime/http/middlewares/context.d.ts +4 -0
- package/lib/service/worker/runtime/http/middlewares/context.js +37 -0
- package/lib/service/worker/runtime/http/middlewares/error.d.ts +2 -0
- package/lib/service/{http → worker/runtime/http}/middlewares/error.js +28 -15
- package/lib/service/worker/runtime/http/middlewares/rateLimit.d.ts +6 -0
- package/lib/service/worker/runtime/http/middlewares/rateLimit.js +43 -0
- package/lib/service/{http → worker/runtime/http}/middlewares/requestStats.d.ts +3 -3
- package/lib/service/{http → worker/runtime/http}/middlewares/requestStats.js +1 -0
- package/lib/service/worker/runtime/http/middlewares/setCookie.d.ts +3 -0
- package/lib/service/{http → worker/runtime/http}/middlewares/setCookie.js +1 -0
- package/lib/service/worker/runtime/http/middlewares/settings.d.ts +9 -0
- package/lib/service/worker/runtime/http/middlewares/settings.js +45 -0
- package/lib/service/worker/runtime/http/middlewares/timings.d.ts +3 -0
- package/lib/service/{http → worker/runtime/http}/middlewares/timings.js +22 -8
- package/lib/service/worker/runtime/http/middlewares/vary.d.ts +3 -0
- package/lib/service/{http → worker/runtime/http}/middlewares/vary.js +4 -3
- package/lib/service/worker/runtime/http/router.d.ts +2 -0
- package/lib/service/worker/runtime/http/router.js +24 -0
- package/lib/service/worker/runtime/http/routes.d.ts +19 -0
- package/lib/service/worker/runtime/http/routes.js +13 -0
- package/lib/service/worker/runtime/method.d.ts +9 -0
- package/lib/service/{method.js → worker/runtime/method.js} +1 -0
- package/lib/service/worker/runtime/statusTrack.d.ts +14 -0
- package/lib/service/worker/runtime/statusTrack.js +38 -0
- package/lib/service/{typings.d.ts → worker/runtime/typings.d.ts} +70 -36
- package/lib/service/worker/runtime/utils/compose.d.ts +5 -0
- package/lib/service/{utils → worker/runtime/utils}/compose.js +3 -2
- package/lib/service/worker/runtime/utils/context.d.ts +5 -0
- package/lib/service/worker/runtime/utils/context.js +41 -0
- package/lib/service/worker/runtime/utils/diff.d.ts +12 -0
- package/lib/service/worker/runtime/utils/diff.js +22 -0
- package/lib/service/worker/runtime/utils/recorder.d.ts +8 -0
- package/lib/service/worker/runtime/utils/recorder.js +38 -0
- package/lib/service/{graphql/utils/array.js → worker/runtime/utils/toArray.js} +1 -0
- package/lib/service/worker/runtime/utils/tokenBucket.d.ts +2 -0
- package/lib/service/worker/runtime/utils/tokenBucket.js +17 -0
- package/lib/tracing/LogEvents.d.ts +31 -0
- package/lib/tracing/LogEvents.js +3 -0
- package/lib/tracing/LogFields.d.ts +66 -0
- package/lib/tracing/LogFields.js +3 -0
- package/lib/tracing/Tags.d.ts +81 -0
- package/lib/tracing/Tags.js +8 -0
- package/lib/tracing/UserLandTracer.d.ts +27 -0
- package/lib/tracing/UserLandTracer.js +57 -0
- package/lib/tracing/errorReporting/ErrorReport.d.ts +31 -0
- package/lib/tracing/errorReporting/ErrorReport.js +71 -0
- package/lib/tracing/index.d.ts +9 -0
- package/lib/tracing/index.js +20 -0
- package/lib/tracing/spanReference/SpanReferenceTypes.d.ts +4 -0
- package/lib/tracing/spanReference/SpanReferenceTypes.js +8 -0
- package/lib/tracing/spanReference/createSpanReference.d.ts +3 -0
- package/lib/tracing/spanReference/createSpanReference.js +9 -0
- package/lib/tracing/utils.d.ts +13 -0
- package/lib/tracing/utils.js +41 -0
- package/lib/utils/MineWinsConflictsResolver.d.ts +6 -4
- package/lib/utils/MineWinsConflictsResolver.js +35 -17
- package/lib/utils/app.d.ts +3 -1
- package/lib/utils/app.js +4 -1
- package/lib/utils/appsStaleIfError.d.ts +1 -1
- package/lib/utils/appsStaleIfError.js +20 -7
- package/lib/utils/billingOptions.d.ts +36 -3
- package/lib/utils/billingOptions.js +8 -3
- package/lib/utils/binding.d.ts +3 -3
- package/lib/utils/binding.js +1 -0
- package/lib/utils/buildFullPath.d.ts +11 -0
- package/lib/utils/buildFullPath.js +54 -0
- package/lib/utils/cancel.d.ts +2 -2
- package/lib/utils/cancel.js +3 -1
- package/lib/utils/conflicts.mock.d.ts +17 -0
- package/lib/utils/conflicts.mock.js +28 -0
- package/lib/utils/domain.js +1 -0
- package/lib/utils/error.js +1 -0
- package/lib/utils/index.js +19 -12
- package/lib/utils/json.js +1 -0
- package/lib/utils/log.d.ts +1 -3
- package/lib/utils/log.js +3 -2
- package/lib/utils/message.js +5 -1
- package/lib/utils/renameBy.js +1 -0
- package/lib/utils/retry.js +3 -2
- package/lib/utils/status.js +1 -0
- package/lib/utils/tenant.d.ts +3 -3
- package/lib/utils/tenant.js +1 -0
- package/lib/utils/throwOnGraphQLErrors.js +1 -0
- package/lib/utils/time.d.ts +7 -7
- package/lib/utils/time.js +10 -2
- package/package.json +3 -3
- package/lib/HttpClient/IOClient.js +0 -14
- package/lib/HttpClient/factories/index.d.ts +0 -8
- package/lib/HttpClient/factories/index.js +0 -31
- package/lib/HttpClient/middlewares/request.d.ts +0 -10
- package/lib/HttpClient/middlewares/request.js +0 -87
- package/lib/IODataSource.d.ts +0 -27
- package/lib/IODataSource.js +0 -46
- package/lib/clients/Apps.d.ts +0 -84
- package/lib/clients/Apps.js +0 -326
- package/lib/clients/Assets.d.ts +0 -21
- package/lib/clients/Billing.d.ts +0 -11
- package/lib/clients/BillingMetrics.d.ts +0 -12
- package/lib/clients/BillingMetrics.js +0 -10
- package/lib/clients/Events.d.ts +0 -6
- package/lib/clients/Events.js +0 -19
- package/lib/clients/Housekeeper.d.ts +0 -11
- package/lib/clients/Housekeeper.js +0 -24
- package/lib/clients/ID.d.ts +0 -22
- package/lib/clients/ID.js +0 -48
- package/lib/clients/LicenseManager.d.ts +0 -6
- package/lib/clients/Logger.d.ts +0 -27
- package/lib/clients/Logger.js +0 -32
- package/lib/clients/Messages.d.ts +0 -18
- package/lib/clients/Messages.js +0 -20
- package/lib/clients/MessagesGraphQL.d.ts +0 -63
- package/lib/clients/MessagesGraphQL.js +0 -50
- package/lib/clients/Metadata.d.ts +0 -25
- package/lib/clients/Metadata.js +0 -53
- package/lib/clients/Registry.d.ts +0 -61
- package/lib/clients/Router.d.ts +0 -33
- package/lib/clients/Router.js +0 -50
- package/lib/clients/Segment.js +0 -69
- package/lib/clients/Sphinx.d.ts +0 -12
- package/lib/clients/Sphinx.js +0 -19
- package/lib/clients/Tenant.js +0 -13
- package/lib/clients/VBase.d.ts +0 -57
- package/lib/clients/VBase.js +0 -116
- package/lib/clients/Workspaces.d.ts +0 -17
- package/lib/clients/Workspaces.js +0 -38
- package/lib/service/Runtime.d.ts +0 -18
- package/lib/service/Runtime.js +0 -57
- package/lib/service/events/index.d.ts +0 -3
- package/lib/service/events/index.js +0 -21
- package/lib/service/graphql/index.d.ts +0 -7
- package/lib/service/graphql/index.js +0 -33
- package/lib/service/graphql/middlewares/error.js +0 -107
- package/lib/service/graphql/middlewares/formatters.d.ts +0 -2
- package/lib/service/graphql/middlewares/formatters.js +0 -64
- package/lib/service/graphql/middlewares/query.d.ts +0 -2
- package/lib/service/graphql/middlewares/query.js +0 -32
- package/lib/service/graphql/middlewares/response.js +0 -36
- package/lib/service/graphql/middlewares/run.d.ts +0 -4
- package/lib/service/graphql/middlewares/run.js +0 -55
- package/lib/service/graphql/middlewares/schema.d.ts +0 -2
- package/lib/service/graphql/middlewares/schema.js +0 -8
- package/lib/service/graphql/middlewares/timings.d.ts +0 -2
- package/lib/service/graphql/middlewares/timings.js +0 -10
- package/lib/service/graphql/middlewares/upload.d.ts +0 -7
- package/lib/service/graphql/schema/index.d.ts +0 -3
- package/lib/service/graphql/schema/index.js +0 -66
- package/lib/service/graphql/schema/messagesLoader.d.ts +0 -4
- package/lib/service/graphql/schema/messagesLoader.js +0 -41
- package/lib/service/graphql/schema/messagesLoaderV2.d.ts +0 -5
- package/lib/service/graphql/schema/messagesLoaderV2.js +0 -44
- package/lib/service/graphql/schema/schemaDirectives/Translatable.js +0 -54
- package/lib/service/graphql/schema/schemaDirectives/TranslatableV2.d.ts +0 -13
- package/lib/service/graphql/schema/schemaDirectives/TranslatableV2.js +0 -67
- package/lib/service/graphql/schema/schemaDirectives/index.d.ts +0 -13
- package/lib/service/graphql/schema/schemaDirectives/index.js +0 -17
- package/lib/service/graphql/schema/typeDefs/index.d.ts +0 -16
- package/lib/service/graphql/schema/typeDefs/index.js +0 -21
- package/lib/service/graphql/schema/typeDefs/ioMessage.d.ts +0 -8
- package/lib/service/graphql/schema/typeDefs/ioMessage.js +0 -33
- package/lib/service/graphql/typings.d.ts +0 -21
- package/lib/service/graphql/utils/cacheControl.d.ts +0 -6
- package/lib/service/graphql/utils/cacheControl.js +0 -38
- package/lib/service/graphql/utils/maxAgeEnum.d.ts +0 -6
- package/lib/service/graphql/utils/maxAgeEnum.js +0 -17
- package/lib/service/http/index.d.ts +0 -3
- package/lib/service/http/index.js +0 -18
- package/lib/service/http/middlewares/authTokens.d.ts +0 -3
- package/lib/service/http/middlewares/cancellationToken.d.ts +0 -3
- package/lib/service/http/middlewares/clients.d.ts +0 -4
- package/lib/service/http/middlewares/error.d.ts +0 -3
- package/lib/service/http/middlewares/setCookie.d.ts +0 -3
- package/lib/service/http/middlewares/timings.d.ts +0 -3
- package/lib/service/http/middlewares/vary.d.ts +0 -3
- package/lib/service/method.d.ts +0 -9
- package/lib/service/utils/compose.d.ts +0 -4
- package/lib/utils/MineWinsConflictsResolver.test.d.ts +0 -1
- package/lib/utils/MineWinsConflictsResolver.test.js +0 -134
- package/lib/utils/unhandled.d.ts +0 -1
- /package/lib/service/{graphql → worker/runtime/graphql}/middlewares/error.d.ts +0 -0
- /package/lib/service/{graphql → worker/runtime/graphql}/middlewares/response.d.ts +0 -0
- /package/lib/service/{graphql → worker/runtime/graphql}/schema/typeDefs/ioUpload.d.ts +0 -0
- /package/lib/service/{graphql → worker/runtime/graphql}/schema/typeDefs/sanitizedString.d.ts +0 -0
- /package/lib/service/{graphql → worker/runtime/graphql}/typings.js +0 -0
- /package/lib/service/{graphql → worker/runtime/graphql}/utils/pathname.d.ts +0 -0
- /package/lib/service/{typings.js → worker/runtime/typings.js} +0 -0
- /package/lib/service/{graphql/utils/array.d.ts → worker/runtime/utils/toArray.d.ts} +0 -0
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { InstanceOptions, RequestTracingConfig } from '../../HttpClient';
|
|
2
|
+
import { IOContext } from '../../service/worker/runtime/typings';
|
|
3
|
+
import { InfraClient } from './InfraClient';
|
|
4
|
+
export declare class Router extends InfraClient {
|
|
5
|
+
constructor(ioContext: IOContext, opts?: InstanceOptions);
|
|
6
|
+
listAvailableIoVersions: (tracingConfig?: RequestTracingConfig | undefined) => Promise<AvaiableIO[]>;
|
|
7
|
+
getInstalledIoVersion: (tracingConfig?: RequestTracingConfig | undefined) => Promise<AvaiableIO>;
|
|
8
|
+
installIo: (version: string, tracingConfig?: RequestTracingConfig | undefined) => Promise<void>;
|
|
9
|
+
listAvailableServices: (tracingConfig?: RequestTracingConfig | undefined) => Promise<AvailableServices>;
|
|
10
|
+
getAvailableVersions: (name: string, tracingConfig?: RequestTracingConfig | undefined) => Promise<AvailableServiceVersions>;
|
|
11
|
+
listInstalledServices: (tracingConfig?: RequestTracingConfig | undefined) => Promise<InstalledService[]>;
|
|
12
|
+
installService: (name: string, version: string, tracingConfig?: RequestTracingConfig | undefined) => Promise<void>;
|
|
13
|
+
}
|
|
14
|
+
export interface AvaiableIO {
|
|
15
|
+
version: string;
|
|
16
|
+
tested: boolean;
|
|
17
|
+
services: {
|
|
18
|
+
[service: string]: string;
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
export declare type InstalledIO = AvaiableIO;
|
|
22
|
+
export interface AvailableServiceVersions {
|
|
23
|
+
versions: {
|
|
24
|
+
[region: string]: string[];
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
export interface AvailableServices {
|
|
28
|
+
[service: string]: AvailableServiceVersions;
|
|
29
|
+
}
|
|
30
|
+
export interface InstalledService {
|
|
31
|
+
name: string;
|
|
32
|
+
version: string;
|
|
33
|
+
serviceIsolation: number;
|
|
34
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Router = void 0;
|
|
4
|
+
const InfraClient_1 = require("./InfraClient");
|
|
5
|
+
const routes = {
|
|
6
|
+
AvailableIoVersions: '/_io',
|
|
7
|
+
AvailableServiceVersions: (service) => `${routes.AvailableServices}/${service}`,
|
|
8
|
+
AvailableServices: '/_services',
|
|
9
|
+
InstalledIoVersion: (account, workspace) => `/${account}/${workspace}/io`,
|
|
10
|
+
InstalledService: (account, workspace, name) => `/${routes.InstalledServices(account, workspace)}/services/${name}`,
|
|
11
|
+
InstalledServices: (account, workspace) => `/${account}/${workspace}/services`,
|
|
12
|
+
};
|
|
13
|
+
class Router extends InfraClient_1.InfraClient {
|
|
14
|
+
constructor(ioContext, opts) {
|
|
15
|
+
super('router', ioContext, opts, true);
|
|
16
|
+
this.listAvailableIoVersions = (tracingConfig) => {
|
|
17
|
+
return this.http.get(routes.AvailableIoVersions, { tracing: {
|
|
18
|
+
requestSpanNameSuffix: 'list-io-versions',
|
|
19
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
20
|
+
} });
|
|
21
|
+
};
|
|
22
|
+
this.getInstalledIoVersion = (tracingConfig) => {
|
|
23
|
+
if (!this.context.account || !this.context.workspace) {
|
|
24
|
+
throw new Error('Missing client parameters: {account, workspace}');
|
|
25
|
+
}
|
|
26
|
+
return this.http.get(routes.InstalledIoVersion(this.context.account, this.context.workspace), {
|
|
27
|
+
tracing: {
|
|
28
|
+
requestSpanNameSuffix: 'get-installed-io-version',
|
|
29
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
30
|
+
},
|
|
31
|
+
});
|
|
32
|
+
};
|
|
33
|
+
this.installIo = (version, tracingConfig) => {
|
|
34
|
+
if (!this.context.account || !this.context.workspace) {
|
|
35
|
+
throw new Error('Missing client parameters: {account, workspace}');
|
|
36
|
+
}
|
|
37
|
+
return this.http.put(routes.InstalledIoVersion(this.context.account, this.context.workspace), { version }, { tracing: {
|
|
38
|
+
requestSpanNameSuffix: 'install-io',
|
|
39
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
40
|
+
} });
|
|
41
|
+
};
|
|
42
|
+
this.listAvailableServices = (tracingConfig) => {
|
|
43
|
+
return this.http.get(routes.AvailableServices, {
|
|
44
|
+
tracing: {
|
|
45
|
+
requestSpanNameSuffix: 'list-available-services',
|
|
46
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
47
|
+
},
|
|
48
|
+
});
|
|
49
|
+
};
|
|
50
|
+
this.getAvailableVersions = (name, tracingConfig) => {
|
|
51
|
+
return this.http.get(routes.AvailableServiceVersions(name), {
|
|
52
|
+
tracing: {
|
|
53
|
+
requestSpanNameSuffix: 'get-versions',
|
|
54
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
55
|
+
},
|
|
56
|
+
});
|
|
57
|
+
};
|
|
58
|
+
this.listInstalledServices = (tracingConfig) => {
|
|
59
|
+
if (!this.context.account || !this.context.workspace) {
|
|
60
|
+
throw new Error('Missing client parameters: {account, workspace}');
|
|
61
|
+
}
|
|
62
|
+
return this.http.get(routes.InstalledServices(this.context.account, this.context.workspace), {
|
|
63
|
+
tracing: {
|
|
64
|
+
requestSpanNameSuffix: 'list-installed-services',
|
|
65
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
66
|
+
},
|
|
67
|
+
});
|
|
68
|
+
};
|
|
69
|
+
this.installService = (name, version, tracingConfig) => {
|
|
70
|
+
if (!this.context.account || !this.context.workspace) {
|
|
71
|
+
throw new Error('Missing client parameters: {account, workspace}');
|
|
72
|
+
}
|
|
73
|
+
return this.http.post(routes.InstalledServices(this.context.account, this.context.workspace), { name, version }, {
|
|
74
|
+
tracing: {
|
|
75
|
+
requestSpanNameSuffix: 'install-service',
|
|
76
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
77
|
+
},
|
|
78
|
+
});
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
exports.Router = Router;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { InstanceOptions, RequestTracingConfig } from '../../HttpClient/typings';
|
|
2
|
+
import { IOContext } from '../../service/worker/runtime/typings';
|
|
3
|
+
import { InfraClient } from './InfraClient';
|
|
4
|
+
export declare class Sphinx extends InfraClient {
|
|
5
|
+
constructor(ioContext: IOContext, opts?: InstanceOptions);
|
|
6
|
+
validatePolicies: (policies: PolicyRequest[], tracingConfig?: RequestTracingConfig | undefined) => Promise<void>;
|
|
7
|
+
isAdmin: (email: string, tracingConfig?: RequestTracingConfig | undefined) => Promise<boolean>;
|
|
8
|
+
}
|
|
9
|
+
export interface PolicyRequest {
|
|
10
|
+
name: string;
|
|
11
|
+
reason: string;
|
|
12
|
+
attrs: Record<string, string>;
|
|
13
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Sphinx = void 0;
|
|
4
|
+
const InfraClient_1 = require("./InfraClient");
|
|
5
|
+
class Sphinx extends InfraClient_1.InfraClient {
|
|
6
|
+
constructor(ioContext, opts) {
|
|
7
|
+
super('sphinx@0.x', ioContext, opts, false);
|
|
8
|
+
this.validatePolicies = (policies, tracingConfig) => {
|
|
9
|
+
const metric = 'sphinx-validate-policy';
|
|
10
|
+
return this.http.post('/policies/validate', { policies }, {
|
|
11
|
+
metric,
|
|
12
|
+
tracing: {
|
|
13
|
+
requestSpanNameSuffix: metric,
|
|
14
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
15
|
+
},
|
|
16
|
+
});
|
|
17
|
+
};
|
|
18
|
+
this.isAdmin = (email, tracingConfig) => {
|
|
19
|
+
const metric = 'sphinx-is-admin';
|
|
20
|
+
return this.http.get(`/user/${email}/isAdmin`, {
|
|
21
|
+
metric,
|
|
22
|
+
tracing: {
|
|
23
|
+
requestSpanNameSuffix: metric,
|
|
24
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
25
|
+
},
|
|
26
|
+
});
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
exports.Sphinx = Sphinx;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { IncomingMessage } from 'http';
|
|
3
|
+
import { Readable } from 'stream';
|
|
4
|
+
import { Logger } from './../../service/logger/logger';
|
|
5
|
+
import { InstanceOptions, IOResponse, RequestTracingConfig } from '../../HttpClient';
|
|
6
|
+
import { BucketMetadata, FileListItem, VBaseSaveResponse } from '../../responses';
|
|
7
|
+
import { IOContext } from '../../service/worker/runtime/typings';
|
|
8
|
+
import { InfraClient } from './InfraClient';
|
|
9
|
+
export declare class VBase extends InfraClient {
|
|
10
|
+
constructor(context: IOContext, options?: InstanceOptions);
|
|
11
|
+
getBucket: (bucket: string, tracingConfig?: RequestTracingConfig | undefined) => Promise<BucketMetadata>;
|
|
12
|
+
resetBucket: (bucket: string, tracingConfig?: RequestTracingConfig | undefined) => Promise<IOResponse<void>>;
|
|
13
|
+
listFiles: (bucket: string, opts?: string | VBaseOptions | undefined, tracingConfig?: RequestTracingConfig | undefined) => Promise<BucketFileList>;
|
|
14
|
+
getFile: (bucket: string, path: string, tracingConfig?: RequestTracingConfig | undefined) => Promise<{
|
|
15
|
+
data: Buffer;
|
|
16
|
+
headers: any;
|
|
17
|
+
}>;
|
|
18
|
+
getJSON: <T>(bucket: string, path: string, nullIfNotFound?: boolean | undefined, conflictsResolver?: ConflictsResolver<T> | undefined, tracingConfig?: RequestTracingConfig | undefined) => Promise<T>;
|
|
19
|
+
getRawJSON: <T>(bucket: string, path: string, nullIfNotFound?: boolean | undefined, conflictsResolver?: ConflictsResolver<T> | undefined, tracingConfig?: RequestTracingConfig | undefined) => Promise<IOResponse<T>>;
|
|
20
|
+
getFileStream: (bucket: string, path: string, tracingConfig?: RequestTracingConfig | undefined) => Promise<IncomingMessage>;
|
|
21
|
+
saveFile: (bucket: string, path: string, stream: Readable, gzip?: boolean, ttl?: number | undefined, tracingConfig?: RequestTracingConfig | undefined, ifMatch?: string | undefined) => Promise<void>;
|
|
22
|
+
getFileMetadata: (bucket: string, path: string, tracingConfig?: RequestTracingConfig | undefined) => Promise<IOResponse<void>>;
|
|
23
|
+
saveJSON: <T>(bucket: string, path: string, data: T, tracingConfig?: RequestTracingConfig | undefined, ifMatch?: string | undefined) => Promise<VBaseSaveResponse>;
|
|
24
|
+
saveZippedContent: (bucket: string, path: string, stream: Readable, tracingConfig?: RequestTracingConfig | undefined, ifMatch?: string | undefined) => Promise<void>;
|
|
25
|
+
deleteFile: (bucket: string, path: string, tracingConfig?: RequestTracingConfig | undefined, ifMatch?: string | undefined) => Promise<IOResponse<void>>;
|
|
26
|
+
getConflicts: <T>(bucket: string, tracingConfig?: RequestTracingConfig | undefined) => Promise<T>;
|
|
27
|
+
resolveConflict: <T>(bucket: string, path: string, content: any, tracingConfig?: RequestTracingConfig | undefined) => Promise<T>;
|
|
28
|
+
private saveContent;
|
|
29
|
+
}
|
|
30
|
+
export interface BucketFileList {
|
|
31
|
+
data: FileListItem[];
|
|
32
|
+
next: string;
|
|
33
|
+
smartCacheHeaders: any;
|
|
34
|
+
}
|
|
35
|
+
export interface VBaseOptions {
|
|
36
|
+
prefix?: string;
|
|
37
|
+
next?: string;
|
|
38
|
+
limit?: number;
|
|
39
|
+
}
|
|
40
|
+
export interface VBaseSaveOptions {
|
|
41
|
+
gzip?: boolean;
|
|
42
|
+
unzip?: boolean;
|
|
43
|
+
ttl?: number;
|
|
44
|
+
}
|
|
45
|
+
export interface VBaseConflictData {
|
|
46
|
+
path: string;
|
|
47
|
+
base: VBaseConflict;
|
|
48
|
+
master: VBaseConflict;
|
|
49
|
+
mine: VBaseConflict;
|
|
50
|
+
}
|
|
51
|
+
export interface VBaseConflict {
|
|
52
|
+
contentOmitted: boolean;
|
|
53
|
+
deleted: boolean;
|
|
54
|
+
mimeType: string;
|
|
55
|
+
parsedContent?: any;
|
|
56
|
+
content: string;
|
|
57
|
+
}
|
|
58
|
+
export interface ConflictsResolver<T> {
|
|
59
|
+
resolve: (logger?: Logger) => T | Promise<T>;
|
|
60
|
+
}
|
|
@@ -0,0 +1,197 @@
|
|
|
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
|
+
exports.VBase = void 0;
|
|
7
|
+
const mime_types_1 = __importDefault(require("mime-types"));
|
|
8
|
+
const path_1 = require("path");
|
|
9
|
+
const zlib_1 = require("zlib");
|
|
10
|
+
const HttpClient_1 = require("../../HttpClient");
|
|
11
|
+
const InfraClient_1 = require("./InfraClient");
|
|
12
|
+
const appId = process.env.VTEX_APP_ID;
|
|
13
|
+
const [runningAppName] = appId ? appId.split('@') : [''];
|
|
14
|
+
const routes = {
|
|
15
|
+
Bucket: (bucket) => `/buckets/${runningAppName}/${bucket}`,
|
|
16
|
+
Conflicts: (bucket) => `/buckets/${runningAppName}/${bucket}/conflicts`,
|
|
17
|
+
File: (bucket, path) => `${routes.Bucket(bucket)}/files/${path}`,
|
|
18
|
+
Files: (bucket) => `${routes.Bucket(bucket)}/files`,
|
|
19
|
+
};
|
|
20
|
+
const isVBaseOptions = (opts) => {
|
|
21
|
+
return typeof opts !== 'string' && !(opts instanceof String);
|
|
22
|
+
};
|
|
23
|
+
class VBase extends InfraClient_1.InfraClient {
|
|
24
|
+
constructor(context, options) {
|
|
25
|
+
super('vbase@2.x', context, options);
|
|
26
|
+
this.getBucket = (bucket, tracingConfig) => {
|
|
27
|
+
const inflightKey = HttpClient_1.inflightURL;
|
|
28
|
+
const metric = 'vbase-get-bucket';
|
|
29
|
+
return this.http.get(routes.Bucket(bucket), { inflightKey, metric, tracing: {
|
|
30
|
+
requestSpanNameSuffix: metric,
|
|
31
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
32
|
+
} });
|
|
33
|
+
};
|
|
34
|
+
this.resetBucket = (bucket, tracingConfig) => {
|
|
35
|
+
const metric = 'vbase-reset-bucket';
|
|
36
|
+
return this.http.delete(routes.Files(bucket), { metric, tracing: {
|
|
37
|
+
requestSpanNameSuffix: metric,
|
|
38
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
39
|
+
} });
|
|
40
|
+
};
|
|
41
|
+
this.listFiles = (bucket, opts, tracingConfig) => {
|
|
42
|
+
let params = {};
|
|
43
|
+
if (isVBaseOptions(opts)) {
|
|
44
|
+
params = opts;
|
|
45
|
+
}
|
|
46
|
+
else if (opts) {
|
|
47
|
+
params = { prefix: opts };
|
|
48
|
+
}
|
|
49
|
+
const metric = 'vbase-list';
|
|
50
|
+
const inflightKey = HttpClient_1.inflightUrlWithQuery;
|
|
51
|
+
return this.http.get(routes.Files(bucket), { inflightKey, metric, params, tracing: {
|
|
52
|
+
requestSpanNameSuffix: metric,
|
|
53
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
54
|
+
} });
|
|
55
|
+
};
|
|
56
|
+
this.getFile = (bucket, path, tracingConfig) => {
|
|
57
|
+
const inflightKey = HttpClient_1.inflightURL;
|
|
58
|
+
const metric = 'vbase-get-file';
|
|
59
|
+
return this.http.getBuffer(routes.File(bucket, path), { inflightKey, metric, tracing: {
|
|
60
|
+
requestSpanNameSuffix: metric,
|
|
61
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
62
|
+
} });
|
|
63
|
+
};
|
|
64
|
+
this.getJSON = (bucket, path, nullIfNotFound, conflictsResolver, tracingConfig) => {
|
|
65
|
+
return this.getRawJSON(bucket, path, nullIfNotFound, conflictsResolver, tracingConfig)
|
|
66
|
+
.then(response => response.data);
|
|
67
|
+
};
|
|
68
|
+
this.getRawJSON = (bucket, path, nullIfNotFound, conflictsResolver, tracingConfig) => {
|
|
69
|
+
const headers = conflictsResolver ? { 'X-Vtex-Detect-Conflicts': true } : {};
|
|
70
|
+
const inflightKey = HttpClient_1.inflightURL;
|
|
71
|
+
const metric = 'vbase-get-json';
|
|
72
|
+
return this.http
|
|
73
|
+
.getRaw(routes.File(bucket, path), {
|
|
74
|
+
headers,
|
|
75
|
+
inflightKey,
|
|
76
|
+
metric,
|
|
77
|
+
nullIfNotFound,
|
|
78
|
+
tracing: {
|
|
79
|
+
requestSpanNameSuffix: metric,
|
|
80
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
81
|
+
},
|
|
82
|
+
})
|
|
83
|
+
.catch(async (error) => {
|
|
84
|
+
const { response } = error;
|
|
85
|
+
if (response && response.status === 409 && conflictsResolver) {
|
|
86
|
+
try {
|
|
87
|
+
const conflictsMergedData = await conflictsResolver.resolve(this.context.logger);
|
|
88
|
+
return { ...response, data: conflictsMergedData };
|
|
89
|
+
}
|
|
90
|
+
catch (resolverError) {
|
|
91
|
+
const typedResolverError = resolverError;
|
|
92
|
+
if ((typedResolverError === null || typedResolverError === void 0 ? void 0 : typedResolverError.status) === 404) {
|
|
93
|
+
return this.http.getRaw(routes.File(bucket, path), {
|
|
94
|
+
'X-Vtex-Detect-Conflicts': false,
|
|
95
|
+
inflightKey,
|
|
96
|
+
metric,
|
|
97
|
+
nullIfNotFound,
|
|
98
|
+
tracing: {
|
|
99
|
+
requestSpanNameSuffix: metric,
|
|
100
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
101
|
+
},
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
throw resolverError;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
throw error;
|
|
108
|
+
});
|
|
109
|
+
};
|
|
110
|
+
this.getFileStream = (bucket, path, tracingConfig) => {
|
|
111
|
+
const metric = 'vbase-get-file-s';
|
|
112
|
+
return this.http.getStream(routes.File(bucket, path), { metric, tracing: {
|
|
113
|
+
requestSpanNameSuffix: metric,
|
|
114
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
115
|
+
} });
|
|
116
|
+
};
|
|
117
|
+
this.saveFile = (bucket, path, stream, gzip = true, ttl, tracingConfig, ifMatch) => {
|
|
118
|
+
return this.saveContent(bucket, path, stream, { gzip, ttl }, tracingConfig, ifMatch);
|
|
119
|
+
};
|
|
120
|
+
this.getFileMetadata = (bucket, path, tracingConfig) => {
|
|
121
|
+
const metric = 'vbase-get-file-metadata';
|
|
122
|
+
return this.http.head(routes.File(bucket, path), { metric, tracing: {
|
|
123
|
+
requestSpanNameSuffix: metric,
|
|
124
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
125
|
+
} });
|
|
126
|
+
};
|
|
127
|
+
this.saveJSON = (bucket, path, data, tracingConfig, ifMatch) => {
|
|
128
|
+
const headers = { 'Content-Type': 'application/json' };
|
|
129
|
+
if (ifMatch) {
|
|
130
|
+
headers['If-Match'] = ifMatch;
|
|
131
|
+
}
|
|
132
|
+
const metric = 'vbase-save-json';
|
|
133
|
+
return this.http.put(routes.File(bucket, path), data, { headers, metric, tracing: {
|
|
134
|
+
requestSpanNameSuffix: metric,
|
|
135
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
136
|
+
} });
|
|
137
|
+
};
|
|
138
|
+
this.saveZippedContent = (bucket, path, stream, tracingConfig, ifMatch) => {
|
|
139
|
+
return this.saveContent(bucket, path, stream, { unzip: true }, tracingConfig, ifMatch);
|
|
140
|
+
};
|
|
141
|
+
this.deleteFile = (bucket, path, tracingConfig, ifMatch) => {
|
|
142
|
+
const headers = ifMatch ? { 'If-Match': ifMatch } : {};
|
|
143
|
+
const metric = 'vbase-delete-file';
|
|
144
|
+
return this.http.delete(routes.File(bucket, path), { headers, metric, tracing: {
|
|
145
|
+
requestSpanNameSuffix: metric,
|
|
146
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
147
|
+
} });
|
|
148
|
+
};
|
|
149
|
+
this.getConflicts = (bucket, tracingConfig) => {
|
|
150
|
+
const metric = 'vbase-get-conflicts';
|
|
151
|
+
return this.http.get(routes.Conflicts(bucket), { metric, tracing: {
|
|
152
|
+
requestSpanNameSuffix: metric,
|
|
153
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
154
|
+
} });
|
|
155
|
+
};
|
|
156
|
+
this.resolveConflict = (bucket, path, content, tracingConfig) => {
|
|
157
|
+
const data = [{
|
|
158
|
+
op: 'replace',
|
|
159
|
+
path,
|
|
160
|
+
value: content,
|
|
161
|
+
}];
|
|
162
|
+
const metric = 'vbase-resolve-conflicts';
|
|
163
|
+
return this.http.patch(routes.Conflicts(bucket), data, { metric, tracing: {
|
|
164
|
+
requestSpanNameSuffix: metric,
|
|
165
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
166
|
+
} });
|
|
167
|
+
};
|
|
168
|
+
this.saveContent = (bucket, path, stream, opts = {}, tracingConfig, ifMatch) => {
|
|
169
|
+
if (!stream.pipe || !stream.on) {
|
|
170
|
+
throw new Error(`Argument stream must be a readable stream`);
|
|
171
|
+
}
|
|
172
|
+
const params = opts.unzip ? { unzip: opts.unzip } : {};
|
|
173
|
+
const headers = {};
|
|
174
|
+
let finalStream = stream;
|
|
175
|
+
headers['Content-Type'] = mime_types_1.default.contentType(path_1.basename(path)) || 'application/octet-stream';
|
|
176
|
+
if (opts.gzip) {
|
|
177
|
+
headers['Content-Encoding'] = 'gzip';
|
|
178
|
+
finalStream = stream.pipe(zlib_1.createGzip());
|
|
179
|
+
}
|
|
180
|
+
if (opts.ttl && Number.isInteger(opts.ttl)) {
|
|
181
|
+
headers['X-VTEX-TTL'] = opts.ttl;
|
|
182
|
+
}
|
|
183
|
+
if (ifMatch) {
|
|
184
|
+
headers['If-Match'] = ifMatch;
|
|
185
|
+
}
|
|
186
|
+
const metric = 'vbase-save-blob';
|
|
187
|
+
return this.http.put(routes.File(bucket, path), finalStream, { headers, metric, params, tracing: {
|
|
188
|
+
requestSpanNameSuffix: metric,
|
|
189
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
190
|
+
} });
|
|
191
|
+
};
|
|
192
|
+
if (runningAppName === '') {
|
|
193
|
+
throw new Error(`Invalid path to access VBase. Variable VTEX_APP_ID is not available.`);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
exports.VBase = VBase;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { InstanceOptions, RequestTracingConfig } from '../../HttpClient';
|
|
2
|
+
import { IOContext } from '../../service/worker/runtime/typings';
|
|
3
|
+
import { InfraClient } from './InfraClient';
|
|
4
|
+
export declare class Workspaces extends InfraClient {
|
|
5
|
+
constructor(context: IOContext, options?: InstanceOptions);
|
|
6
|
+
list: (account: string, tracingConfig?: RequestTracingConfig | undefined) => Promise<WorkspaceMetadata[]>;
|
|
7
|
+
get: (account: string, workspace: string, tracingConfig?: RequestTracingConfig | undefined) => Promise<WorkspaceMetadata>;
|
|
8
|
+
set: (account: string, workspace: string, metadata: Partial<WorkspaceMetadata>, tracingConfig?: RequestTracingConfig | undefined) => Promise<void>;
|
|
9
|
+
create: (account: string, workspace: string, production: boolean, tracingConfig?: RequestTracingConfig | undefined) => Promise<void>;
|
|
10
|
+
delete: (account: string, workspace: string, tracingConfig?: RequestTracingConfig | undefined) => Promise<import("../../HttpClient").IOResponse<void>>;
|
|
11
|
+
reset: (account: string, workspace: string, metadata?: Partial<WorkspaceMetadata>, tracingConfig?: RequestTracingConfig | undefined) => Promise<void>;
|
|
12
|
+
promote: (account: string, workspace: string, tracingConfig?: RequestTracingConfig | undefined) => Promise<void>;
|
|
13
|
+
}
|
|
14
|
+
export interface WorkspaceMetadata {
|
|
15
|
+
name: string;
|
|
16
|
+
weight: number;
|
|
17
|
+
production: boolean;
|
|
18
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Workspaces = void 0;
|
|
4
|
+
const constants_1 = require("../../constants");
|
|
5
|
+
const InfraClient_1 = require("./InfraClient");
|
|
6
|
+
const routes = {
|
|
7
|
+
Account: (account) => `/${account}`,
|
|
8
|
+
Promote: (account) => `${routes.Workspace(account, constants_1.DEFAULT_WORKSPACE)}/_promote`,
|
|
9
|
+
Workspace: (account, workspace) => `${routes.Account(account)}/${workspace}`,
|
|
10
|
+
};
|
|
11
|
+
class Workspaces extends InfraClient_1.InfraClient {
|
|
12
|
+
constructor(context, options) {
|
|
13
|
+
super('router', context, options, true);
|
|
14
|
+
this.list = (account, tracingConfig) => {
|
|
15
|
+
const metric = 'workspaces-list';
|
|
16
|
+
return this.http.get(routes.Account(account), { metric, tracing: {
|
|
17
|
+
requestSpanNameSuffix: metric,
|
|
18
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
19
|
+
} });
|
|
20
|
+
};
|
|
21
|
+
this.get = (account, workspace, tracingConfig) => {
|
|
22
|
+
const metric = 'workspaces-get';
|
|
23
|
+
return this.http.get(routes.Workspace(account, workspace), { metric, tracing: {
|
|
24
|
+
requestSpanNameSuffix: metric,
|
|
25
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
26
|
+
} });
|
|
27
|
+
};
|
|
28
|
+
this.set = (account, workspace, metadata, tracingConfig) => {
|
|
29
|
+
const metric = 'workspaces-set';
|
|
30
|
+
return this.http.put(routes.Workspace(account, workspace), metadata, { metric, tracing: {
|
|
31
|
+
requestSpanNameSuffix: metric,
|
|
32
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
33
|
+
} });
|
|
34
|
+
};
|
|
35
|
+
this.create = (account, workspace, production, tracingConfig) => {
|
|
36
|
+
const metric = 'workspaces-create';
|
|
37
|
+
return this.http.post(routes.Account(account), { name: workspace, production }, { metric, tracing: {
|
|
38
|
+
requestSpanNameSuffix: metric,
|
|
39
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
40
|
+
} });
|
|
41
|
+
};
|
|
42
|
+
this.delete = (account, workspace, tracingConfig) => {
|
|
43
|
+
const metric = 'workspaces-delete';
|
|
44
|
+
return this.http.delete(routes.Workspace(account, workspace), { metric, tracing: {
|
|
45
|
+
requestSpanNameSuffix: metric,
|
|
46
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
47
|
+
} });
|
|
48
|
+
};
|
|
49
|
+
this.reset = (account, workspace, metadata = {}, tracingConfig) => {
|
|
50
|
+
const params = { reset: true };
|
|
51
|
+
const metric = 'workspaces-reset';
|
|
52
|
+
return this.http.put(routes.Workspace(account, workspace), metadata, { metric, params, tracing: {
|
|
53
|
+
requestSpanNameSuffix: metric,
|
|
54
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
55
|
+
} });
|
|
56
|
+
};
|
|
57
|
+
this.promote = (account, workspace, tracingConfig) => {
|
|
58
|
+
const metric = 'workspaces-promote';
|
|
59
|
+
return this.http.put(routes.Promote(account), { workspace }, { metric, tracing: {
|
|
60
|
+
requestSpanNameSuffix: metric,
|
|
61
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
62
|
+
} });
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
exports.Workspaces = Workspaces;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export * from './Apps';
|
|
2
|
+
export * from './Assets';
|
|
3
|
+
export * from './BillingMetrics';
|
|
4
|
+
export * from './Events';
|
|
5
|
+
export * from './Housekeeper';
|
|
6
|
+
export * from './InfraClient';
|
|
7
|
+
export * from './Registry';
|
|
8
|
+
export * from './Router';
|
|
9
|
+
export * from './VBase';
|
|
10
|
+
export * from './Workspaces';
|
|
11
|
+
export * from './Sphinx';
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
10
|
+
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
|
|
11
|
+
};
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
__exportStar(require("./Apps"), exports);
|
|
14
|
+
__exportStar(require("./Assets"), exports);
|
|
15
|
+
__exportStar(require("./BillingMetrics"), exports);
|
|
16
|
+
__exportStar(require("./Events"), exports);
|
|
17
|
+
__exportStar(require("./Housekeeper"), exports);
|
|
18
|
+
__exportStar(require("./InfraClient"), exports);
|
|
19
|
+
__exportStar(require("./Registry"), exports);
|
|
20
|
+
__exportStar(require("./Router"), exports);
|
|
21
|
+
__exportStar(require("./VBase"), exports);
|
|
22
|
+
__exportStar(require("./Workspaces"), exports);
|
|
23
|
+
__exportStar(require("./Sphinx"), exports);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { InstanceOptions } from '../../HttpClient/typings';
|
|
2
|
+
import { IOContext } from '../../service/worker/runtime/typings';
|
|
3
|
+
import { ExternalClient } from '../external/ExternalClient';
|
|
4
4
|
declare type Environment = 'stable' | 'beta';
|
|
5
5
|
/**
|
|
6
6
|
* Used to perform calls on APIs in the VTEX Janus infrastructure, to which you must declare an outbound policy.
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
3
|
+
exports.JanusClient = void 0;
|
|
4
|
+
const ExternalClient_1 = require("../external/ExternalClient");
|
|
4
5
|
/**
|
|
5
6
|
* Used to perform calls on APIs in the VTEX Janus infrastructure, to which you must declare an outbound policy.
|
|
6
7
|
*
|
|
@@ -18,9 +19,13 @@ class JanusClient extends ExternalClient_1.ExternalClient {
|
|
|
18
19
|
constructor(context, options, environment) {
|
|
19
20
|
const { account } = context;
|
|
20
21
|
const env = context.janusEnv === 'beta' || environment === 'beta' ? 'beta' : 'stable';
|
|
21
|
-
super(`http://portal.vtexcommerce${env}.com.br`, context,
|
|
22
|
+
super(`http://portal.vtexcommerce${env}.com.br`, context, {
|
|
23
|
+
...options,
|
|
24
|
+
params: {
|
|
22
25
|
an: account,
|
|
23
|
-
|
|
26
|
+
...options === null || options === void 0 ? void 0 : options.params,
|
|
27
|
+
},
|
|
28
|
+
});
|
|
24
29
|
}
|
|
25
30
|
}
|
|
26
31
|
exports.JanusClient = JanusClient;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { RequestTracingConfig } from '../../HttpClient';
|
|
2
|
+
import { JanusClient } from './JanusClient';
|
|
3
|
+
export declare class LicenseManager extends JanusClient {
|
|
4
|
+
getAccountData(VtexIdclientAutCookie: string, tracingConfig?: RequestTracingConfig): Promise<any>;
|
|
5
|
+
getTopbarData(VtexIdclientAutCookie: string, tracingConfig?: RequestTracingConfig): Promise<any>;
|
|
6
|
+
canAccessResource(VtexIdclientAutCookie: string, resourceKey: string, tracingConfig?: RequestTracingConfig): Promise<boolean>;
|
|
7
|
+
}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LicenseManager = void 0;
|
|
3
4
|
const qs_1 = require("qs");
|
|
4
|
-
const
|
|
5
|
+
const JanusClient_1 = require("./JanusClient");
|
|
5
6
|
const TWO_MINUTES_S = 2 * 60;
|
|
6
7
|
const BASE_URL = '/api/license-manager';
|
|
7
8
|
const routes = {
|
|
@@ -12,31 +13,46 @@ const routes = {
|
|
|
12
13
|
const inflightKey = ({ baseURL, url, params }) => {
|
|
13
14
|
return baseURL + url + qs_1.stringify(params, { arrayFormat: 'repeat', addQueryPrefix: true });
|
|
14
15
|
};
|
|
15
|
-
class LicenseManager extends
|
|
16
|
-
getAccountData(VtexIdclientAutCookie) {
|
|
16
|
+
class LicenseManager extends JanusClient_1.JanusClient {
|
|
17
|
+
getAccountData(VtexIdclientAutCookie, tracingConfig) {
|
|
18
|
+
const metric = 'lm-account-data';
|
|
17
19
|
return this.http.get(routes.accountData, {
|
|
18
20
|
forceMaxAge: TWO_MINUTES_S,
|
|
19
21
|
headers: {
|
|
20
22
|
VtexIdclientAutCookie,
|
|
21
23
|
},
|
|
22
24
|
inflightKey,
|
|
23
|
-
metric
|
|
25
|
+
metric,
|
|
26
|
+
tracing: {
|
|
27
|
+
requestSpanNameSuffix: metric,
|
|
28
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
29
|
+
},
|
|
24
30
|
});
|
|
25
31
|
}
|
|
26
|
-
getTopbarData(VtexIdclientAutCookie) {
|
|
32
|
+
getTopbarData(VtexIdclientAutCookie, tracingConfig) {
|
|
33
|
+
const metric = 'lm-topbar-data';
|
|
27
34
|
return this.http.get(routes.topbarData, {
|
|
28
35
|
headers: {
|
|
29
36
|
VtexIdclientAutCookie,
|
|
30
37
|
},
|
|
31
|
-
metric
|
|
38
|
+
metric,
|
|
39
|
+
tracing: {
|
|
40
|
+
requestSpanNameSuffix: metric,
|
|
41
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
42
|
+
},
|
|
32
43
|
});
|
|
33
44
|
}
|
|
34
|
-
canAccessResource(VtexIdclientAutCookie, resourceKey) {
|
|
45
|
+
canAccessResource(VtexIdclientAutCookie, resourceKey, tracingConfig) {
|
|
46
|
+
const metric = 'lm-resource-access';
|
|
35
47
|
return this.http.get(`${routes.resourceAccess}/${resourceKey}/access`, {
|
|
36
48
|
headers: {
|
|
37
49
|
VtexIdclientAutCookie,
|
|
38
50
|
},
|
|
39
|
-
metric
|
|
51
|
+
metric,
|
|
52
|
+
tracing: {
|
|
53
|
+
requestSpanNameSuffix: metric,
|
|
54
|
+
...tracingConfig === null || tracingConfig === void 0 ? void 0 : tracingConfig.tracing,
|
|
55
|
+
},
|
|
40
56
|
}).then(() => true, () => false);
|
|
41
57
|
}
|
|
42
58
|
}
|