@vendure/core 3.0.2 → 3.0.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.
- package/dist/api/common/custom-field-relation-resolver.service.d.ts +1 -3
- package/dist/api/common/custom-field-relation-resolver.service.js +1 -4
- package/dist/api/common/custom-field-relation-resolver.service.js.map +1 -1
- package/dist/api/common/is-field-resolver.d.ts +6 -0
- package/dist/api/common/is-field-resolver.js +17 -0
- package/dist/api/common/is-field-resolver.js.map +1 -0
- package/dist/api/common/request-context.d.ts +52 -0
- package/dist/api/common/request-context.js +82 -1
- package/dist/api/common/request-context.js.map +1 -1
- package/dist/api/config/generate-resolvers.js +4 -4
- package/dist/api/config/generate-resolvers.js.map +1 -1
- package/dist/api/decorators/request-context.decorator.js +7 -18
- package/dist/api/decorators/request-context.decorator.js.map +1 -1
- package/dist/api/middleware/auth-guard.d.ts +0 -5
- package/dist/api/middleware/auth-guard.js +7 -18
- package/dist/api/middleware/auth-guard.js.map +1 -1
- package/dist/api/middleware/transaction-interceptor.d.ts +0 -9
- package/dist/api/middleware/transaction-interceptor.js +6 -18
- package/dist/api/middleware/transaction-interceptor.js.map +1 -1
- package/dist/api/middleware/validate-custom-fields-interceptor.js +4 -3
- package/dist/api/middleware/validate-custom-fields-interceptor.js.map +1 -1
- package/dist/api/resolvers/entity/product-variant-entity.resolver.d.ts +1 -3
- package/dist/api/resolvers/entity/product-variant-entity.resolver.js +2 -4
- package/dist/api/resolvers/entity/product-variant-entity.resolver.js.map +1 -1
- package/dist/api/resolvers/shop/shop-order.resolver.js +0 -1
- package/dist/api/resolvers/shop/shop-order.resolver.js.map +1 -1
- package/dist/common/utils.js +5 -0
- package/dist/common/utils.js.map +1 -1
- package/dist/config/catalog/default-collection-filters.js +14 -6
- package/dist/config/catalog/default-collection-filters.js.map +1 -1
- package/dist/config/default-config.js +2 -1
- package/dist/config/default-config.js.map +1 -1
- package/dist/config/promotion/utils/facet-value-checker.js +1 -0
- package/dist/config/promotion/utils/facet-value-checker.js.map +1 -1
- package/dist/connection/transaction-wrapper.d.ts +2 -2
- package/dist/connection/transaction-wrapper.js +1 -2
- package/dist/connection/transaction-wrapper.js.map +1 -1
- package/dist/data-import/providers/importer/importer.d.ts +9 -3
- package/dist/data-import/providers/importer/importer.js.map +1 -1
- package/dist/service/helpers/order-modifier/order-modifier.js +1 -1
- package/dist/service/helpers/order-modifier/order-modifier.js.map +1 -1
- package/dist/service/helpers/request-context/request-context.service.js +2 -1
- package/dist/service/helpers/request-context/request-context.service.js.map +1 -1
- package/dist/service/helpers/verification-token-generator/verification-token-generator.js +5 -2
- package/dist/service/helpers/verification-token-generator/verification-token-generator.js.map +1 -1
- package/dist/service/services/session.service.js +3 -1
- package/dist/service/services/session.service.js.map +1 -1
- package/package.json +4 -4
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { ID } from '@vendure/common/lib/shared-types';
|
|
2
|
-
import { ConfigService } from '../../config/config.service';
|
|
3
2
|
import { RelationCustomFieldConfig } from '../../config/custom-field/custom-field-types';
|
|
4
3
|
import { TransactionalConnection } from '../../connection/transactional-connection';
|
|
5
4
|
import { VendureEntity } from '../../entity/base/base.entity';
|
|
@@ -14,10 +13,9 @@ export interface ResolveRelationConfig {
|
|
|
14
13
|
}
|
|
15
14
|
export declare class CustomFieldRelationResolverService {
|
|
16
15
|
private connection;
|
|
17
|
-
private configService;
|
|
18
16
|
private productPriceApplicator;
|
|
19
17
|
private translator;
|
|
20
|
-
constructor(connection: TransactionalConnection,
|
|
18
|
+
constructor(connection: TransactionalConnection, productPriceApplicator: ProductPriceApplicator, translator: TranslatorService);
|
|
21
19
|
/**
|
|
22
20
|
* @description
|
|
23
21
|
* Used to dynamically resolve related entities in custom fields. Based on the field
|
|
@@ -12,15 +12,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.CustomFieldRelationResolverService = void 0;
|
|
13
13
|
const common_1 = require("@nestjs/common");
|
|
14
14
|
const FindOptionsUtils_1 = require("typeorm/find-options/FindOptionsUtils");
|
|
15
|
-
const config_service_1 = require("../../config/config.service");
|
|
16
15
|
const transactional_connection_1 = require("../../connection/transactional-connection");
|
|
17
16
|
const product_variant_entity_1 = require("../../entity/product-variant/product-variant.entity");
|
|
18
17
|
const product_price_applicator_1 = require("../../service/helpers/product-price-applicator/product-price-applicator");
|
|
19
18
|
const translator_service_1 = require("../../service/helpers/translator/translator.service");
|
|
20
19
|
let CustomFieldRelationResolverService = class CustomFieldRelationResolverService {
|
|
21
|
-
constructor(connection,
|
|
20
|
+
constructor(connection, productPriceApplicator, translator) {
|
|
22
21
|
this.connection = connection;
|
|
23
|
-
this.configService = configService;
|
|
24
22
|
this.productPriceApplicator = productPriceApplicator;
|
|
25
23
|
this.translator = translator;
|
|
26
24
|
}
|
|
@@ -84,7 +82,6 @@ exports.CustomFieldRelationResolverService = CustomFieldRelationResolverService;
|
|
|
84
82
|
exports.CustomFieldRelationResolverService = CustomFieldRelationResolverService = __decorate([
|
|
85
83
|
(0, common_1.Injectable)(),
|
|
86
84
|
__metadata("design:paramtypes", [transactional_connection_1.TransactionalConnection,
|
|
87
|
-
config_service_1.ConfigService,
|
|
88
85
|
product_price_applicator_1.ProductPriceApplicator,
|
|
89
86
|
translator_service_1.TranslatorService])
|
|
90
87
|
], CustomFieldRelationResolverService);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-field-relation-resolver.service.js","sourceRoot":"","sources":["../../../src/api/common/custom-field-relation-resolver.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAE5C,4EAAyE;
|
|
1
|
+
{"version":3,"file":"custom-field-relation-resolver.service.js","sourceRoot":"","sources":["../../../src/api/common/custom-field-relation-resolver.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isFieldResolver = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Returns true is this guard is being called on a FieldResolver, i.e. not a top-level
|
|
6
|
+
* Query or Mutation resolver.
|
|
7
|
+
*/
|
|
8
|
+
function isFieldResolver(info) {
|
|
9
|
+
var _a;
|
|
10
|
+
if (!info) {
|
|
11
|
+
return false;
|
|
12
|
+
}
|
|
13
|
+
const parentType = (_a = info === null || info === void 0 ? void 0 : info.parentType) === null || _a === void 0 ? void 0 : _a.name;
|
|
14
|
+
return parentType !== 'Query' && parentType !== 'Mutation' && parentType !== 'Subscription';
|
|
15
|
+
}
|
|
16
|
+
exports.isFieldResolver = isFieldResolver;
|
|
17
|
+
//# sourceMappingURL=is-field-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-field-resolver.js","sourceRoot":"","sources":["../../../src/api/common/is-field-resolver.ts"],"names":[],"mappings":";;;AAEA;;;GAGG;AACH,SAAgB,eAAe,CAAC,IAAyB;;IACrD,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,MAAM,UAAU,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,0CAAE,IAAI,CAAC;IAC1C,OAAO,UAAU,KAAK,OAAO,IAAI,UAAU,KAAK,UAAU,IAAI,UAAU,KAAK,cAAc,CAAC;AAChG,CAAC;AAND,0CAMC"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
import { ExecutionContext } from '@nestjs/common';
|
|
1
2
|
import { CurrencyCode, LanguageCode, Permission } from '@vendure/common/lib/generated-types';
|
|
2
3
|
import { ID, JsonCompatible } from '@vendure/common/lib/shared-types';
|
|
3
4
|
import { Request } from 'express';
|
|
4
5
|
import { TFunction } from 'i18next';
|
|
6
|
+
import { REQUEST_CONTEXT_KEY, REQUEST_CONTEXT_MAP_KEY } from '../../common/constants';
|
|
5
7
|
import { CachedSession } from '../../config/session-cache/session-cache-strategy';
|
|
6
8
|
import { Channel } from '../../entity/channel/channel.entity';
|
|
7
9
|
import { ApiType } from './get-api-type';
|
|
@@ -14,6 +16,55 @@ export type SerializedRequestContext = {
|
|
|
14
16
|
_isAuthorized: boolean;
|
|
15
17
|
_authorizedAsOwnerOnly: boolean;
|
|
16
18
|
};
|
|
19
|
+
/**
|
|
20
|
+
* This object is used to store the RequestContext on the Express Request object.
|
|
21
|
+
*/
|
|
22
|
+
interface RequestContextStore {
|
|
23
|
+
/**
|
|
24
|
+
* This is the default RequestContext for the handler.
|
|
25
|
+
*/
|
|
26
|
+
default: RequestContext;
|
|
27
|
+
/**
|
|
28
|
+
* If a transaction is started, the resulting RequestContext is stored here.
|
|
29
|
+
* This RequestContext will have a transaction manager attached via the
|
|
30
|
+
* TRANSACTION_MANAGER_KEY symbol.
|
|
31
|
+
*
|
|
32
|
+
* When a transaction is started, the TRANSACTION_MANAGER_KEY symbol is added to the RequestContext
|
|
33
|
+
* object. This is then detected inside the {@link internal_setRequestContext} function and the
|
|
34
|
+
* RequestContext object is stored in the RequestContextStore under the withTransactionManager key.
|
|
35
|
+
*/
|
|
36
|
+
withTransactionManager?: RequestContext;
|
|
37
|
+
}
|
|
38
|
+
interface RequestWithStores extends Request {
|
|
39
|
+
[REQUEST_CONTEXT_MAP_KEY]?: Map<Function, RequestContextStore>;
|
|
40
|
+
[REQUEST_CONTEXT_KEY]?: RequestContextStore;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* @description
|
|
44
|
+
* This function is used to set the {@link RequestContext} on the `req` object. This is the underlying
|
|
45
|
+
* mechanism by which we are able to access the `RequestContext` from different places.
|
|
46
|
+
*
|
|
47
|
+
* For example, here is a diagram to show how, in an incoming API request, we are able to store
|
|
48
|
+
* and retrieve the `RequestContext` in a resolver:
|
|
49
|
+
* ```
|
|
50
|
+
* - query { product }
|
|
51
|
+
* |
|
|
52
|
+
* - AuthGuard.canActivate()
|
|
53
|
+
* | | creates a `RequestContext`, stores it on `req`
|
|
54
|
+
* |
|
|
55
|
+
* - product() resolver
|
|
56
|
+
* | @Ctx() decorator fetching `RequestContext` from `req`
|
|
57
|
+
* ```
|
|
58
|
+
*
|
|
59
|
+
* We named it this way to discourage usage outside the framework internals.
|
|
60
|
+
*/
|
|
61
|
+
export declare function internal_setRequestContext(req: RequestWithStores, ctx: RequestContext, executionContext?: ExecutionContext): void;
|
|
62
|
+
/**
|
|
63
|
+
* @description
|
|
64
|
+
* Gets the {@link RequestContext} from the `req` object. See {@link internal_setRequestContext}
|
|
65
|
+
* for more details on this mechanism.
|
|
66
|
+
*/
|
|
67
|
+
export declare function internal_getRequestContext(req: RequestWithStores, executionContext?: ExecutionContext): RequestContext;
|
|
17
68
|
/**
|
|
18
69
|
* @description
|
|
19
70
|
* The RequestContext holds information relevant to the current request, which may be
|
|
@@ -146,3 +197,4 @@ export declare class RequestContext {
|
|
|
146
197
|
*/
|
|
147
198
|
private shallowCloneRequestObject;
|
|
148
199
|
}
|
|
200
|
+
export {};
|
|
@@ -1,9 +1,90 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RequestContext = void 0;
|
|
3
|
+
exports.RequestContext = exports.internal_getRequestContext = exports.internal_setRequestContext = void 0;
|
|
4
4
|
const shared_utils_1 = require("@vendure/common/lib/shared-utils");
|
|
5
|
+
const constants_1 = require("../../common/constants");
|
|
5
6
|
const utils_1 = require("../../common/utils");
|
|
6
7
|
const channel_entity_1 = require("../../entity/channel/channel.entity");
|
|
8
|
+
/**
|
|
9
|
+
* @description
|
|
10
|
+
* This function is used to set the {@link RequestContext} on the `req` object. This is the underlying
|
|
11
|
+
* mechanism by which we are able to access the `RequestContext` from different places.
|
|
12
|
+
*
|
|
13
|
+
* For example, here is a diagram to show how, in an incoming API request, we are able to store
|
|
14
|
+
* and retrieve the `RequestContext` in a resolver:
|
|
15
|
+
* ```
|
|
16
|
+
* - query { product }
|
|
17
|
+
* |
|
|
18
|
+
* - AuthGuard.canActivate()
|
|
19
|
+
* | | creates a `RequestContext`, stores it on `req`
|
|
20
|
+
* |
|
|
21
|
+
* - product() resolver
|
|
22
|
+
* | @Ctx() decorator fetching `RequestContext` from `req`
|
|
23
|
+
* ```
|
|
24
|
+
*
|
|
25
|
+
* We named it this way to discourage usage outside the framework internals.
|
|
26
|
+
*/
|
|
27
|
+
function internal_setRequestContext(req, ctx, executionContext) {
|
|
28
|
+
var _a;
|
|
29
|
+
// If we have access to the `ExecutionContext`, it means we are able to bind
|
|
30
|
+
// the `ctx` object to the specific "handler", i.e. the resolver function (for GraphQL)
|
|
31
|
+
// or controller (for REST).
|
|
32
|
+
let item;
|
|
33
|
+
if (executionContext && typeof executionContext.getHandler === 'function') {
|
|
34
|
+
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
35
|
+
const map = req[constants_1.REQUEST_CONTEXT_MAP_KEY] || new Map();
|
|
36
|
+
item = map.get(executionContext.getHandler());
|
|
37
|
+
const ctxHasTransaction = Object.getOwnPropertySymbols(ctx).includes(constants_1.TRANSACTION_MANAGER_KEY);
|
|
38
|
+
if (item) {
|
|
39
|
+
item.default = (_a = item.default) !== null && _a !== void 0 ? _a : ctx;
|
|
40
|
+
if (ctxHasTransaction) {
|
|
41
|
+
item.withTransactionManager = ctx;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
item = {
|
|
46
|
+
default: ctx,
|
|
47
|
+
withTransactionManager: ctxHasTransaction ? ctx : undefined,
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
map.set(executionContext.getHandler(), item);
|
|
51
|
+
req[constants_1.REQUEST_CONTEXT_MAP_KEY] = map;
|
|
52
|
+
}
|
|
53
|
+
// We also bind to a shared key so that we can access the `ctx` object
|
|
54
|
+
// later even if we don't have a reference to the `ExecutionContext`
|
|
55
|
+
req[constants_1.REQUEST_CONTEXT_KEY] = item !== null && item !== void 0 ? item : {
|
|
56
|
+
default: ctx,
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
exports.internal_setRequestContext = internal_setRequestContext;
|
|
60
|
+
/**
|
|
61
|
+
* @description
|
|
62
|
+
* Gets the {@link RequestContext} from the `req` object. See {@link internal_setRequestContext}
|
|
63
|
+
* for more details on this mechanism.
|
|
64
|
+
*/
|
|
65
|
+
function internal_getRequestContext(req, executionContext) {
|
|
66
|
+
var _a, _b;
|
|
67
|
+
let item;
|
|
68
|
+
if (executionContext && typeof executionContext.getHandler === 'function') {
|
|
69
|
+
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
70
|
+
const map = req[constants_1.REQUEST_CONTEXT_MAP_KEY];
|
|
71
|
+
item = map === null || map === void 0 ? void 0 : map.get(executionContext.getHandler());
|
|
72
|
+
// If we have a ctx associated with the current handler (resolver function), we
|
|
73
|
+
// return it. Otherwise, we fall back to the shared key which will be there.
|
|
74
|
+
if (item) {
|
|
75
|
+
return item.withTransactionManager || item.default;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
if (!item) {
|
|
79
|
+
item = req[constants_1.REQUEST_CONTEXT_KEY];
|
|
80
|
+
}
|
|
81
|
+
const transactionalCtx = (item === null || item === void 0 ? void 0 : item.withTransactionManager) &&
|
|
82
|
+
((_b = (_a = item.withTransactionManager[constants_1.TRANSACTION_MANAGER_KEY]) === null || _a === void 0 ? void 0 : _a.queryRunner) === null || _b === void 0 ? void 0 : _b.isReleased) === false
|
|
83
|
+
? item.withTransactionManager
|
|
84
|
+
: undefined;
|
|
85
|
+
return transactionalCtx || item.default;
|
|
86
|
+
}
|
|
87
|
+
exports.internal_getRequestContext = internal_getRequestContext;
|
|
7
88
|
/**
|
|
8
89
|
* @description
|
|
9
90
|
* The RequestContext holds information relevant to the current request, which may be
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-context.js","sourceRoot":"","sources":["../../../src/api/common/request-context.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"request-context.js","sourceRoot":"","sources":["../../../src/api/common/request-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,12 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.generateResolvers = void 0;
|
|
4
4
|
const generated_types_1 = require("@vendure/common/lib/generated-types");
|
|
5
5
|
const graphql_scalars_1 = require("graphql-scalars");
|
|
6
|
-
const constants_1 = require("../../common/constants");
|
|
7
6
|
const errors_1 = require("../../common/error/errors");
|
|
8
7
|
const generated_graphql_admin_errors_1 = require("../../common/error/generated-graphql-admin-errors");
|
|
9
8
|
const generated_graphql_shop_errors_1 = require("../../common/error/generated-graphql-shop-errors");
|
|
10
9
|
const vendure_logger_1 = require("../../config/logger/vendure-logger");
|
|
11
10
|
const plugin_metadata_1 = require("../../plugin/plugin-metadata");
|
|
11
|
+
const request_context_1 = require("../common/request-context");
|
|
12
12
|
const user_has_permissions_on_custom_field_1 = require("../common/user-has-permissions-on-custom-field");
|
|
13
13
|
const get_custom_fields_config_without_interfaces_1 = require("./get-custom-fields-config-without-interfaces");
|
|
14
14
|
const money_scalar_1 = require("./money-scalar");
|
|
@@ -156,7 +156,7 @@ function generateCustomFieldRelationResolvers(configService, customFieldRelation
|
|
|
156
156
|
let resolver;
|
|
157
157
|
if (isRelationalType(fieldDef)) {
|
|
158
158
|
resolver = async (source, args, context) => {
|
|
159
|
-
const ctx = context.req
|
|
159
|
+
const ctx = (0, request_context_1.internal_getRequestContext)(context.req);
|
|
160
160
|
if (!(0, user_has_permissions_on_custom_field_1.userHasPermissionsOnCustomField)(ctx, fieldDef)) {
|
|
161
161
|
return null;
|
|
162
162
|
}
|
|
@@ -181,7 +181,7 @@ function generateCustomFieldRelationResolvers(configService, customFieldRelation
|
|
|
181
181
|
}
|
|
182
182
|
else {
|
|
183
183
|
resolver = async (source, args, context) => {
|
|
184
|
-
const ctx = context.req
|
|
184
|
+
const ctx = (0, request_context_1.internal_getRequestContext)(context.req);
|
|
185
185
|
if (!(0, user_has_permissions_on_custom_field_1.userHasPermissionsOnCustomField)(ctx, fieldDef)) {
|
|
186
186
|
return null;
|
|
187
187
|
}
|
|
@@ -207,7 +207,7 @@ function generateCustomFieldRelationResolvers(configService, customFieldRelation
|
|
|
207
207
|
}
|
|
208
208
|
function getCustomScalars(configService, apiType) {
|
|
209
209
|
return (0, plugin_metadata_1.getPluginAPIExtensions)(configService.plugins, apiType)
|
|
210
|
-
.map(e => { var _a; return (typeof e.scalars === 'function' ? e.scalars() : (_a = e.scalars) !== null && _a !== void 0 ? _a : {}); })
|
|
210
|
+
.map(e => { var _a; return (typeof e.scalars === 'function' ? e.scalars() : ((_a = e.scalars) !== null && _a !== void 0 ? _a : {})); })
|
|
211
211
|
.reduce((all, scalarMap) => (Object.assign(Object.assign({}, all), scalarMap)), {});
|
|
212
212
|
}
|
|
213
213
|
function isRelationalType(input) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-resolvers.js","sourceRoot":"","sources":["../../../src/api/config/generate-resolvers.ts"],"names":[],"mappings":";;;AACA,yEAAwE;AAExE,qDAA+D;AAE/D,
|
|
1
|
+
{"version":3,"file":"generate-resolvers.js","sourceRoot":"","sources":["../../../src/api/config/generate-resolvers.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Ctx = void 0;
|
|
4
4
|
const common_1 = require("@nestjs/common");
|
|
5
|
-
const
|
|
5
|
+
const is_field_resolver_1 = require("../common/is-field-resolver");
|
|
6
|
+
const parse_context_1 = require("../common/parse-context");
|
|
7
|
+
const request_context_1 = require("../common/request-context");
|
|
6
8
|
/**
|
|
7
9
|
* @description
|
|
8
10
|
* Resolver param decorator which extracts the {@link RequestContext} from the incoming
|
|
@@ -19,22 +21,9 @@ const constants_1 = require("../../common/constants");
|
|
|
19
21
|
* @docsCategory request
|
|
20
22
|
* @docsPage Ctx Decorator
|
|
21
23
|
*/
|
|
22
|
-
exports.Ctx = (0, common_1.createParamDecorator)((data,
|
|
23
|
-
const
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
// If a map contains associated transactional context with this handler
|
|
27
|
-
// we have to use it. It means that this handler was wrapped with @Transaction decorator.
|
|
28
|
-
// Otherwise use default context.
|
|
29
|
-
return (map === null || map === void 0 ? void 0 : map.get(ctx.getHandler())) || req[constants_1.REQUEST_CONTEXT_KEY];
|
|
30
|
-
};
|
|
31
|
-
if (ctx.getType() === 'graphql') {
|
|
32
|
-
// GraphQL request
|
|
33
|
-
return getContext(ctx.getArgByIndex(2).req);
|
|
34
|
-
}
|
|
35
|
-
else {
|
|
36
|
-
// REST request
|
|
37
|
-
return getContext(ctx.switchToHttp().getRequest());
|
|
38
|
-
}
|
|
24
|
+
exports.Ctx = (0, common_1.createParamDecorator)((data, executionContext) => {
|
|
25
|
+
const context = (0, parse_context_1.parseContext)(executionContext);
|
|
26
|
+
const handlerIsFieldResolver = context.isGraphQL && (0, is_field_resolver_1.isFieldResolver)(context.info);
|
|
27
|
+
return (0, request_context_1.internal_getRequestContext)(context.req, handlerIsFieldResolver ? undefined : executionContext);
|
|
39
28
|
});
|
|
40
29
|
//# sourceMappingURL=request-context.decorator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-context.decorator.js","sourceRoot":"","sources":["../../../src/api/decorators/request-context.decorator.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"request-context.decorator.js","sourceRoot":"","sources":["../../../src/api/decorators/request-context.decorator.ts"],"names":[],"mappings":";;;AAAA,2CAAwE;AAExE,mEAA8D;AAC9D,2DAAuD;AACvD,+DAAuE;AAEvE;;;;;;;;;;;;;;;GAeG;AACU,QAAA,GAAG,GAAG,IAAA,6BAAoB,EAAC,CAAC,IAAI,EAAE,gBAAkC,EAAE,EAAE;IACjF,MAAM,OAAO,GAAG,IAAA,4BAAY,EAAC,gBAAgB,CAAC,CAAC;IAC/C,MAAM,sBAAsB,GAAG,OAAO,CAAC,SAAS,IAAI,IAAA,mCAAe,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAClF,OAAO,IAAA,4CAA0B,EAAC,OAAO,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;AAC1G,CAAC,CAAC,CAAC"}
|
|
@@ -26,9 +26,4 @@ export declare class AuthGuard implements CanActivate {
|
|
|
26
26
|
canActivate(context: ExecutionContext): Promise<boolean>;
|
|
27
27
|
private setActiveChannel;
|
|
28
28
|
private getSession;
|
|
29
|
-
/**
|
|
30
|
-
* Returns true is this guard is being called on a FieldResolver, i.e. not a top-level
|
|
31
|
-
* Query or Mutation resolver.
|
|
32
|
-
*/
|
|
33
|
-
private isFieldResolver;
|
|
34
29
|
}
|
|
@@ -13,7 +13,6 @@ exports.AuthGuard = void 0;
|
|
|
13
13
|
const common_1 = require("@nestjs/common");
|
|
14
14
|
const core_1 = require("@nestjs/core");
|
|
15
15
|
const generated_types_1 = require("@vendure/common/lib/generated-types");
|
|
16
|
-
const constants_1 = require("../../common/constants");
|
|
17
16
|
const errors_1 = require("../../common/error/errors");
|
|
18
17
|
const config_service_1 = require("../../config/config.service");
|
|
19
18
|
const vendure_logger_1 = require("../../config/logger/vendure-logger");
|
|
@@ -23,7 +22,9 @@ const channel_service_1 = require("../../service/services/channel.service");
|
|
|
23
22
|
const customer_service_1 = require("../../service/services/customer.service");
|
|
24
23
|
const session_service_1 = require("../../service/services/session.service");
|
|
25
24
|
const extract_session_token_1 = require("../common/extract-session-token");
|
|
25
|
+
const is_field_resolver_1 = require("../common/is-field-resolver");
|
|
26
26
|
const parse_context_1 = require("../common/parse-context");
|
|
27
|
+
const request_context_1 = require("../common/request-context");
|
|
27
28
|
const set_session_token_1 = require("../common/set-session-token");
|
|
28
29
|
const allow_decorator_1 = require("../decorators/allow.decorator");
|
|
29
30
|
/**
|
|
@@ -46,17 +47,17 @@ let AuthGuard = class AuthGuard {
|
|
|
46
47
|
}
|
|
47
48
|
async canActivate(context) {
|
|
48
49
|
const { req, res, info } = (0, parse_context_1.parseContext)(context);
|
|
49
|
-
const
|
|
50
|
+
const targetIsFieldResolver = (0, is_field_resolver_1.isFieldResolver)(info);
|
|
50
51
|
const permissions = this.reflector.get(allow_decorator_1.PERMISSIONS_METADATA_KEY, context.getHandler());
|
|
51
|
-
if (
|
|
52
|
+
if (targetIsFieldResolver && !permissions) {
|
|
52
53
|
return true;
|
|
53
54
|
}
|
|
54
55
|
const authDisabled = this.configService.authOptions.disableAuth;
|
|
55
56
|
const isPublic = !!permissions && permissions.includes(generated_types_1.Permission.Public);
|
|
56
57
|
const hasOwnerPermission = !!permissions && permissions.includes(generated_types_1.Permission.Owner);
|
|
57
58
|
let requestContext;
|
|
58
|
-
if (
|
|
59
|
-
requestContext = req
|
|
59
|
+
if (targetIsFieldResolver) {
|
|
60
|
+
requestContext = (0, request_context_1.internal_getRequestContext)(req);
|
|
60
61
|
}
|
|
61
62
|
else {
|
|
62
63
|
const session = await this.getSession(req, res, hasOwnerPermission);
|
|
@@ -65,7 +66,7 @@ let AuthGuard = class AuthGuard {
|
|
|
65
66
|
if (requestContextShouldBeReinitialized) {
|
|
66
67
|
requestContext = await this.requestContextService.fromRequest(req, info, permissions, session);
|
|
67
68
|
}
|
|
68
|
-
req
|
|
69
|
+
(0, request_context_1.internal_setRequestContext)(req, requestContext, context);
|
|
69
70
|
}
|
|
70
71
|
if (authDisabled || !permissions || isPublic) {
|
|
71
72
|
return true;
|
|
@@ -148,18 +149,6 @@ let AuthGuard = class AuthGuard {
|
|
|
148
149
|
}
|
|
149
150
|
return serializedSession;
|
|
150
151
|
}
|
|
151
|
-
/**
|
|
152
|
-
* Returns true is this guard is being called on a FieldResolver, i.e. not a top-level
|
|
153
|
-
* Query or Mutation resolver.
|
|
154
|
-
*/
|
|
155
|
-
isFieldResolver(info) {
|
|
156
|
-
var _a;
|
|
157
|
-
if (!info) {
|
|
158
|
-
return false;
|
|
159
|
-
}
|
|
160
|
-
const parentType = (_a = info === null || info === void 0 ? void 0 : info.parentType) === null || _a === void 0 ? void 0 : _a.name;
|
|
161
|
-
return parentType !== 'Query' && parentType !== 'Mutation' && parentType !== 'Subscription';
|
|
162
|
-
}
|
|
163
152
|
};
|
|
164
153
|
exports.AuthGuard = AuthGuard;
|
|
165
154
|
exports.AuthGuard = AuthGuard = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-guard.js","sourceRoot":"","sources":["../../../src/api/middleware/auth-guard.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA2E;AAC3E,uCAAyC;AACzC,yEAAiE;
|
|
1
|
+
{"version":3,"file":"auth-guard.js","sourceRoot":"","sources":["../../../src/api/middleware/auth-guard.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { CallHandler, ExecutionContext, NestInterceptor } from '@nestjs/common';
|
|
2
2
|
import { Reflector } from '@nestjs/core';
|
|
3
3
|
import { Observable } from 'rxjs';
|
|
4
|
-
import { RequestContext } from '..';
|
|
5
4
|
import { TransactionWrapper } from '../../connection/transaction-wrapper';
|
|
6
5
|
import { TransactionalConnection } from '../../connection/transactional-connection';
|
|
7
6
|
/**
|
|
@@ -15,12 +14,4 @@ export declare class TransactionInterceptor implements NestInterceptor {
|
|
|
15
14
|
private reflector;
|
|
16
15
|
constructor(connection: TransactionalConnection, transactionWrapper: TransactionWrapper, reflector: Reflector);
|
|
17
16
|
intercept(context: ExecutionContext, next: CallHandler): Observable<any>;
|
|
18
|
-
/**
|
|
19
|
-
* Registers transactional request context associated with execution handler function
|
|
20
|
-
*
|
|
21
|
-
* @param ctx transactional request context
|
|
22
|
-
* @param handler handler function from ExecutionContext
|
|
23
|
-
* @param req Request object
|
|
24
|
-
*/
|
|
25
|
-
registerTransactionalContext(ctx: RequestContext, handler: Function, req: any): void;
|
|
26
17
|
}
|
|
@@ -13,7 +13,7 @@ exports.TransactionInterceptor = void 0;
|
|
|
13
13
|
const common_1 = require("@nestjs/common");
|
|
14
14
|
const core_1 = require("@nestjs/core");
|
|
15
15
|
const rxjs_1 = require("rxjs");
|
|
16
|
-
const
|
|
16
|
+
const __1 = require("..");
|
|
17
17
|
const transaction_wrapper_1 = require("../../connection/transaction-wrapper");
|
|
18
18
|
const transactional_connection_1 = require("../../connection/transactional-connection");
|
|
19
19
|
const parse_context_1 = require("../common/parse-context");
|
|
@@ -30,13 +30,15 @@ let TransactionInterceptor = class TransactionInterceptor {
|
|
|
30
30
|
this.reflector = reflector;
|
|
31
31
|
}
|
|
32
32
|
intercept(context, next) {
|
|
33
|
-
const {
|
|
34
|
-
const ctx = req
|
|
33
|
+
const { req } = (0, parse_context_1.parseContext)(context);
|
|
34
|
+
const ctx = (0, __1.internal_getRequestContext)(req, context);
|
|
35
35
|
if (ctx) {
|
|
36
36
|
const transactionMode = this.reflector.get(transaction_decorator_1.TRANSACTION_MODE_METADATA_KEY, context.getHandler());
|
|
37
37
|
const transactionIsolationLevel = this.reflector.get(transaction_decorator_1.TRANSACTION_ISOLATION_LEVEL_METADATA_KEY, context.getHandler());
|
|
38
38
|
return (0, rxjs_1.of)(this.transactionWrapper.executeInTransaction(ctx, _ctx => {
|
|
39
|
-
|
|
39
|
+
// Registers transactional request context associated
|
|
40
|
+
// with execution handler function
|
|
41
|
+
(0, __1.internal_setRequestContext)(req, _ctx, context);
|
|
40
42
|
return next.handle();
|
|
41
43
|
}, transactionMode, transactionIsolationLevel, this.connection.rawConnection));
|
|
42
44
|
}
|
|
@@ -44,20 +46,6 @@ let TransactionInterceptor = class TransactionInterceptor {
|
|
|
44
46
|
return next.handle();
|
|
45
47
|
}
|
|
46
48
|
}
|
|
47
|
-
/**
|
|
48
|
-
* Registers transactional request context associated with execution handler function
|
|
49
|
-
*
|
|
50
|
-
* @param ctx transactional request context
|
|
51
|
-
* @param handler handler function from ExecutionContext
|
|
52
|
-
* @param req Request object
|
|
53
|
-
*/
|
|
54
|
-
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
55
|
-
registerTransactionalContext(ctx, handler, req) {
|
|
56
|
-
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
57
|
-
const map = req[constants_1.REQUEST_CONTEXT_MAP_KEY] || new Map();
|
|
58
|
-
map.set(handler, ctx);
|
|
59
|
-
req[constants_1.REQUEST_CONTEXT_MAP_KEY] = map;
|
|
60
|
-
}
|
|
61
49
|
};
|
|
62
50
|
exports.TransactionInterceptor = TransactionInterceptor;
|
|
63
51
|
exports.TransactionInterceptor = TransactionInterceptor = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transaction-interceptor.js","sourceRoot":"","sources":["../../../src/api/middleware/transaction-interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4F;AAC5F,uCAAyC;AACzC,+BAAsC;
|
|
1
|
+
{"version":3,"file":"transaction-interceptor.js","sourceRoot":"","sources":["../../../src/api/middleware/transaction-interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4F;AAC5F,uCAAyC;AACzC,+BAAsC;AAEtC,0BAA4F;AAC5F,8EAA0E;AAC1E,wFAAoF;AACpF,2DAAuD;AACvD,+EAK6C;AAE7C;;;;GAIG;AAEI,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAC/B,YACY,UAAmC,EACnC,kBAAsC,EACtC,SAAoB;QAFpB,eAAU,GAAV,UAAU,CAAyB;QACnC,uBAAkB,GAAlB,kBAAkB,CAAoB;QACtC,cAAS,GAAT,SAAS,CAAW;IAC7B,CAAC;IAEJ,SAAS,CAAC,OAAyB,EAAE,IAAiB;QAClD,MAAM,EAAE,GAAG,EAAE,GAAG,IAAA,4BAAY,EAAC,OAAO,CAAC,CAAC;QACtC,MAAM,GAAG,GAA+B,IAAA,8BAA0B,EAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACjF,IAAI,GAAG,EAAE,CAAC;YACN,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CACtC,qDAA6B,EAC7B,OAAO,CAAC,UAAU,EAAE,CACvB,CAAC;YACF,MAAM,yBAAyB,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAChD,gEAAwC,EACxC,OAAO,CAAC,UAAU,EAAE,CACvB,CAAC;YAEF,OAAO,IAAA,SAAE,EACL,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,CACxC,GAAG,EACH,IAAI,CAAC,EAAE;gBACH,qDAAqD;gBACrD,kCAAkC;gBAClC,IAAA,8BAA0B,EAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;gBAE/C,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;YACzB,CAAC,EACD,eAAe,EACf,yBAAyB,EACzB,IAAI,CAAC,UAAU,CAAC,aAAa,CAChC,CACJ,CAAC;QACN,CAAC;aAAM,CAAC;YACJ,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;QACzB,CAAC;IACL,CAAC;CACJ,CAAA;AAvCY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,mBAAU,GAAE;qCAGe,kDAAuB;QACf,wCAAkB;QAC3B,gBAAS;GAJvB,sBAAsB,CAuClC"}
|
|
@@ -15,10 +15,10 @@ const core_1 = require("@nestjs/core");
|
|
|
15
15
|
const graphql_1 = require("@nestjs/graphql");
|
|
16
16
|
const shared_utils_1 = require("@vendure/common/lib/shared-utils");
|
|
17
17
|
const graphql_2 = require("graphql");
|
|
18
|
-
const constants_1 = require("../../common/constants");
|
|
19
18
|
const injector_1 = require("../../common/injector");
|
|
20
19
|
const config_service_1 = require("../../config/config.service");
|
|
21
20
|
const parse_context_1 = require("../common/parse-context");
|
|
21
|
+
const request_context_1 = require("../common/request-context");
|
|
22
22
|
const validate_custom_field_value_1 = require("../common/validate-custom-field-value");
|
|
23
23
|
/**
|
|
24
24
|
* This interceptor is responsible for enforcing the validation constraints defined for any CustomFields.
|
|
@@ -43,7 +43,7 @@ let ValidateCustomFieldsInterceptor = class ValidateCustomFieldsInterceptor {
|
|
|
43
43
|
const gqlExecutionContext = graphql_1.GqlExecutionContext.create(context);
|
|
44
44
|
const { operation, schema } = parsedContext.info;
|
|
45
45
|
const variables = gqlExecutionContext.getArgs();
|
|
46
|
-
const ctx = parsedContext.req
|
|
46
|
+
const ctx = (0, request_context_1.internal_getRequestContext)(parsedContext.req);
|
|
47
47
|
if (operation.operation === 'mutation') {
|
|
48
48
|
const inputTypeNames = this.getArgumentMap(operation, schema);
|
|
49
49
|
for (const [inputName, typeName] of Object.entries(inputTypeNames)) {
|
|
@@ -132,6 +132,7 @@ let ValidateCustomFieldsInterceptor = class ValidateCustomFieldsInterceptor {
|
|
|
132
132
|
exports.ValidateCustomFieldsInterceptor = ValidateCustomFieldsInterceptor;
|
|
133
133
|
exports.ValidateCustomFieldsInterceptor = ValidateCustomFieldsInterceptor = __decorate([
|
|
134
134
|
(0, common_1.Injectable)(),
|
|
135
|
-
__metadata("design:paramtypes", [config_service_1.ConfigService,
|
|
135
|
+
__metadata("design:paramtypes", [config_service_1.ConfigService,
|
|
136
|
+
core_1.ModuleRef])
|
|
136
137
|
], ValidateCustomFieldsInterceptor);
|
|
137
138
|
//# sourceMappingURL=validate-custom-fields-interceptor.js.map
|