| 123456789101112131415161718192021222324252627282930313233 |
- import { Args, Mutation, Query, Resolver } from '@nestjs/graphql';
- import { Allow, Ctx, Permission, RequestContext, Transaction } from '@vendure/core';
- import { WishlistItem } from '../entities/wishlist-item.entity';
- import { WishlistService } from '../service/wishlist.service';
- @Resolver()
- export class WishlistShopResolver {
- constructor(private wishlistService: WishlistService) {}
- @Query()
- @Allow(Permission.Owner)
- activeCustomerWishlist(@Ctx() ctx: RequestContext) {
- return this.wishlistService.getWishlistItems(ctx);
- }
- @Mutation()
- @Transaction()
- @Allow(Permission.Owner)
- async addToWishlist(
- @Ctx() ctx: RequestContext,
- @Args() { productVariantId }: { productVariantId: string },
- ) {
- return this.wishlistService.addItem(ctx, productVariantId);
- }
- @Mutation()
- @Transaction()
- @Allow(Permission.Owner)
- async removeFromWishlist(@Ctx() ctx: RequestContext, @Args() { itemId }: { itemId: string }) {
- return this.wishlistService.removeItem(ctx, itemId);
- }
- }
|