@vendure/core 3.5.3-master-202601100240 → 3.5.3-master-202601140248
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/request-context.d.ts +27 -1
- package/dist/api/common/request-context.js +38 -1
- package/dist/api/common/request-context.js.map +1 -1
- package/dist/api/decorators/allow.decorator.d.ts +13 -0
- package/dist/api/decorators/allow.decorator.js +13 -0
- package/dist/api/decorators/allow.decorator.js.map +1 -1
- package/package.json +2 -2
|
@@ -144,9 +144,35 @@ export declare class RequestContext {
|
|
|
144
144
|
/**
|
|
145
145
|
* @description
|
|
146
146
|
* Returns `true` if there is an active Session & User associated with this request,
|
|
147
|
-
* and that User has the specified permissions on the active Channel.
|
|
147
|
+
* and that User has **at least one** of the specified permissions on the active Channel.
|
|
148
|
+
*
|
|
149
|
+
* This method uses OR logic - it checks if the user has ANY of the given permissions,
|
|
150
|
+
* not ALL of them. For AND logic, use {@link userHasAllPermissions}.
|
|
151
|
+
*
|
|
152
|
+
* @example
|
|
153
|
+
* ```ts
|
|
154
|
+
* // Returns true if user has ReadProduct OR ReadCatalog
|
|
155
|
+
* ctx.userHasPermissions([Permission.ReadProduct, Permission.ReadCatalog]);
|
|
156
|
+
* ```
|
|
148
157
|
*/
|
|
149
158
|
userHasPermissions(permissions: Permission[]): boolean;
|
|
159
|
+
/**
|
|
160
|
+
* @description
|
|
161
|
+
* Returns `true` if there is an active Session & User associated with this request,
|
|
162
|
+
* and that User has **all** of the specified permissions on the active Channel.
|
|
163
|
+
*
|
|
164
|
+
* This method uses AND logic - it checks if the user has EVERY one of the given permissions.
|
|
165
|
+
* For OR logic (any permission), use {@link userHasPermissions}.
|
|
166
|
+
*
|
|
167
|
+
* @example
|
|
168
|
+
* ```ts
|
|
169
|
+
* // Returns true only if user has BOTH ReadProduct AND UpdateProduct
|
|
170
|
+
* ctx.userHasAllPermissions([Permission.ReadProduct, Permission.UpdateProduct]);
|
|
171
|
+
* ```
|
|
172
|
+
*
|
|
173
|
+
* @since 3.6.0
|
|
174
|
+
*/
|
|
175
|
+
userHasAllPermissions(permissions: Permission[]): boolean;
|
|
150
176
|
/**
|
|
151
177
|
* @description
|
|
152
178
|
* Serializes the RequestContext object into a JSON-compatible simple object.
|
|
@@ -172,7 +172,16 @@ class RequestContext {
|
|
|
172
172
|
/**
|
|
173
173
|
* @description
|
|
174
174
|
* Returns `true` if there is an active Session & User associated with this request,
|
|
175
|
-
* and that User has the specified permissions on the active Channel.
|
|
175
|
+
* and that User has **at least one** of the specified permissions on the active Channel.
|
|
176
|
+
*
|
|
177
|
+
* This method uses OR logic - it checks if the user has ANY of the given permissions,
|
|
178
|
+
* not ALL of them. For AND logic, use {@link userHasAllPermissions}.
|
|
179
|
+
*
|
|
180
|
+
* @example
|
|
181
|
+
* ```ts
|
|
182
|
+
* // Returns true if user has ReadProduct OR ReadCatalog
|
|
183
|
+
* ctx.userHasPermissions([Permission.ReadProduct, Permission.ReadCatalog]);
|
|
184
|
+
* ```
|
|
176
185
|
*/
|
|
177
186
|
userHasPermissions(permissions) {
|
|
178
187
|
var _a;
|
|
@@ -186,6 +195,34 @@ class RequestContext {
|
|
|
186
195
|
}
|
|
187
196
|
return false;
|
|
188
197
|
}
|
|
198
|
+
/**
|
|
199
|
+
* @description
|
|
200
|
+
* Returns `true` if there is an active Session & User associated with this request,
|
|
201
|
+
* and that User has **all** of the specified permissions on the active Channel.
|
|
202
|
+
*
|
|
203
|
+
* This method uses AND logic - it checks if the user has EVERY one of the given permissions.
|
|
204
|
+
* For OR logic (any permission), use {@link userHasPermissions}.
|
|
205
|
+
*
|
|
206
|
+
* @example
|
|
207
|
+
* ```ts
|
|
208
|
+
* // Returns true only if user has BOTH ReadProduct AND UpdateProduct
|
|
209
|
+
* ctx.userHasAllPermissions([Permission.ReadProduct, Permission.UpdateProduct]);
|
|
210
|
+
* ```
|
|
211
|
+
*
|
|
212
|
+
* @since 3.6.0
|
|
213
|
+
*/
|
|
214
|
+
userHasAllPermissions(permissions) {
|
|
215
|
+
var _a;
|
|
216
|
+
const user = (_a = this.session) === null || _a === void 0 ? void 0 : _a.user;
|
|
217
|
+
if (!user || !this.channelId) {
|
|
218
|
+
return false;
|
|
219
|
+
}
|
|
220
|
+
const permissionsOnChannel = user.channelPermissions.find(c => (0, utils_1.idsAreEqual)(c.id, this.channelId));
|
|
221
|
+
if (permissionsOnChannel) {
|
|
222
|
+
return permissions.every(permission => permissionsOnChannel.permissions.includes(permission));
|
|
223
|
+
}
|
|
224
|
+
return false;
|
|
225
|
+
}
|
|
189
226
|
/**
|
|
190
227
|
* @description
|
|
191
228
|
* Serializes the RequestContext object into a JSON-compatible simple object.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-context.js","sourceRoot":"","sources":["../../../src/api/common/request-context.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"request-context.js","sourceRoot":"","sources":["../../../src/api/common/request-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,9 @@ export declare const PERMISSIONS_METADATA_KEY = "__permissions__";
|
|
|
5
5
|
* Attaches metadata to the resolver defining which permissions are required to execute the
|
|
6
6
|
* operation, using one or more {@link Permission} values.
|
|
7
7
|
*
|
|
8
|
+
* When multiple permissions are specified, the user needs only **one** of them (OR logic).
|
|
9
|
+
* This is useful for operations that can be performed by users with different permission sets.
|
|
10
|
+
*
|
|
8
11
|
* In a GraphQL context, it can be applied to top-level queries and mutations as well as field resolvers.
|
|
9
12
|
*
|
|
10
13
|
* For REST controllers, it can be applied to route handler.
|
|
@@ -29,6 +32,16 @@ export declare const PERMISSIONS_METADATA_KEY = "__permissions__";
|
|
|
29
32
|
* }
|
|
30
33
|
* ```
|
|
31
34
|
*
|
|
35
|
+
* @example
|
|
36
|
+
* ```ts
|
|
37
|
+
* // User needs ReadProduct OR ReadCatalog (either grants access)
|
|
38
|
+
* \@Allow(Permission.ReadProduct, Permission.ReadCatalog)
|
|
39
|
+
* \@Query()
|
|
40
|
+
* getProducts() {
|
|
41
|
+
* // ...
|
|
42
|
+
* }
|
|
43
|
+
* ```
|
|
44
|
+
*
|
|
32
45
|
* @docsCategory request
|
|
33
46
|
* @docsPage Allow Decorator
|
|
34
47
|
*/
|
|
@@ -8,6 +8,9 @@ exports.PERMISSIONS_METADATA_KEY = '__permissions__';
|
|
|
8
8
|
* Attaches metadata to the resolver defining which permissions are required to execute the
|
|
9
9
|
* operation, using one or more {@link Permission} values.
|
|
10
10
|
*
|
|
11
|
+
* When multiple permissions are specified, the user needs only **one** of them (OR logic).
|
|
12
|
+
* This is useful for operations that can be performed by users with different permission sets.
|
|
13
|
+
*
|
|
11
14
|
* In a GraphQL context, it can be applied to top-level queries and mutations as well as field resolvers.
|
|
12
15
|
*
|
|
13
16
|
* For REST controllers, it can be applied to route handler.
|
|
@@ -32,6 +35,16 @@ exports.PERMISSIONS_METADATA_KEY = '__permissions__';
|
|
|
32
35
|
* }
|
|
33
36
|
* ```
|
|
34
37
|
*
|
|
38
|
+
* @example
|
|
39
|
+
* ```ts
|
|
40
|
+
* // User needs ReadProduct OR ReadCatalog (either grants access)
|
|
41
|
+
* \@Allow(Permission.ReadProduct, Permission.ReadCatalog)
|
|
42
|
+
* \@Query()
|
|
43
|
+
* getProducts() {
|
|
44
|
+
* // ...
|
|
45
|
+
* }
|
|
46
|
+
* ```
|
|
47
|
+
*
|
|
35
48
|
* @docsCategory request
|
|
36
49
|
* @docsPage Allow Decorator
|
|
37
50
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"allow.decorator.js","sourceRoot":"","sources":["../../../src/api/decorators/allow.decorator.ts"],"names":[],"mappings":";;;AAAA,2CAA6C;AAGhC,QAAA,wBAAwB,GAAG,iBAAiB,CAAC;AAE1D
|
|
1
|
+
{"version":3,"file":"allow.decorator.js","sourceRoot":"","sources":["../../../src/api/decorators/allow.decorator.ts"],"names":[],"mappings":";;;AAAA,2CAA6C;AAGhC,QAAA,wBAAwB,GAAG,iBAAiB,CAAC;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACI,MAAM,KAAK,GAAG,CAAC,GAAG,WAAyB,EAAE,EAAE,CAAC,IAAA,oBAAW,EAAC,gCAAwB,EAAE,WAAW,CAAC,CAAC;AAA7F,QAAA,KAAK,SAAwF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vendure/core",
|
|
3
|
-
"version": "3.5.3-master-
|
|
3
|
+
"version": "3.5.3-master-202601140248",
|
|
4
4
|
"description": "A modern, headless ecommerce framework",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
"@nestjs/platform-express": "^11.0.12",
|
|
50
50
|
"@nestjs/terminus": "^11.0.0",
|
|
51
51
|
"@nestjs/typeorm": "^11.0.0",
|
|
52
|
-
"@vendure/common": "^3.5.3-master-
|
|
52
|
+
"@vendure/common": "^3.5.3-master-202601140248",
|
|
53
53
|
"bcrypt": "^5.1.1",
|
|
54
54
|
"body-parser": "^1.20.2",
|
|
55
55
|
"cookie-session": "^2.1.0",
|