|
@@ -47,6 +47,7 @@ export class ProductResolver {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Query()
|
|
@Query()
|
|
|
|
|
+ @RolesGuard([Permission.ReadCatalog])
|
|
|
@ApplyIdCodec()
|
|
@ApplyIdCodec()
|
|
|
async product(
|
|
async product(
|
|
|
@Context(RequestContextPipe) ctx: RequestContext,
|
|
@Context(RequestContextPipe) ctx: RequestContext,
|
|
@@ -57,6 +58,7 @@ export class ProductResolver {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Mutation()
|
|
@Mutation()
|
|
|
|
|
+ @RolesGuard([Permission.CreateCatalog])
|
|
|
@ApplyIdCodec()
|
|
@ApplyIdCodec()
|
|
|
async createProduct(
|
|
async createProduct(
|
|
|
@Context(RequestContextPipe) ctx: RequestContext,
|
|
@Context(RequestContextPipe) ctx: RequestContext,
|
|
@@ -67,6 +69,7 @@ export class ProductResolver {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Mutation()
|
|
@Mutation()
|
|
|
|
|
+ @RolesGuard([Permission.UpdateCatalog])
|
|
|
@ApplyIdCodec()
|
|
@ApplyIdCodec()
|
|
|
async updateProduct(
|
|
async updateProduct(
|
|
|
@Context(RequestContextPipe) ctx: RequestContext,
|
|
@Context(RequestContextPipe) ctx: RequestContext,
|
|
@@ -77,6 +80,7 @@ export class ProductResolver {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Mutation()
|
|
@Mutation()
|
|
|
|
|
+ @RolesGuard([Permission.UpdateCatalog])
|
|
|
@ApplyIdCodec(['productId', 'optionGroupId'])
|
|
@ApplyIdCodec(['productId', 'optionGroupId'])
|
|
|
async addOptionGroupToProduct(
|
|
async addOptionGroupToProduct(
|
|
|
@Context(RequestContextPipe) ctx: RequestContext,
|
|
@Context(RequestContextPipe) ctx: RequestContext,
|
|
@@ -87,6 +91,7 @@ export class ProductResolver {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Mutation()
|
|
@Mutation()
|
|
|
|
|
+ @RolesGuard([Permission.UpdateCatalog])
|
|
|
@ApplyIdCodec(['productId', 'optionGroupId'])
|
|
@ApplyIdCodec(['productId', 'optionGroupId'])
|
|
|
async removeOptionGroupFromProduct(
|
|
async removeOptionGroupFromProduct(
|
|
|
@Context(RequestContextPipe) ctx: RequestContext,
|
|
@Context(RequestContextPipe) ctx: RequestContext,
|
|
@@ -97,6 +102,7 @@ export class ProductResolver {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Mutation()
|
|
@Mutation()
|
|
|
|
|
+ @RolesGuard([Permission.CreateCatalog])
|
|
|
@ApplyIdCodec()
|
|
@ApplyIdCodec()
|
|
|
async generateVariantsForProduct(
|
|
async generateVariantsForProduct(
|
|
|
@Context(RequestContextPipe) ctx: RequestContext,
|
|
@Context(RequestContextPipe) ctx: RequestContext,
|
|
@@ -108,6 +114,7 @@ export class ProductResolver {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Mutation()
|
|
@Mutation()
|
|
|
|
|
+ @RolesGuard([Permission.UpdateCatalog])
|
|
|
@ApplyIdCodec()
|
|
@ApplyIdCodec()
|
|
|
async updateProductVariants(
|
|
async updateProductVariants(
|
|
|
@Context(RequestContextPipe) ctx: RequestContext,
|
|
@Context(RequestContextPipe) ctx: RequestContext,
|
|
@@ -118,6 +125,7 @@ export class ProductResolver {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Mutation()
|
|
@Mutation()
|
|
|
|
|
+ @RolesGuard([Permission.UpdateCatalog])
|
|
|
@ApplyIdCodec()
|
|
@ApplyIdCodec()
|
|
|
async applyFacetValuesToProductVariants(
|
|
async applyFacetValuesToProductVariants(
|
|
|
@Context(RequestContextPipe) ctx: RequestContext,
|
|
@Context(RequestContextPipe) ctx: RequestContext,
|