simpo-component-library 1.4.214 → 1.4.217
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/esm2022/lib/ecommerce/sections/featured-products/featured-products.component.mjs +61 -24
 - package/esm2022/lib/ecommerce/sections/product-desc/product-desc.component.mjs +82 -14
 - package/esm2022/lib/ecommerce/sections/product-list/product-list.component.mjs +46 -8
 - package/esm2022/lib/ecommerce/styles/OrderedItems.modal.mjs +3 -3
 - package/esm2022/lib/ecommerce/styles/product.modal.mjs +8 -2
 - package/esm2022/lib/services/cart.service.mjs +13 -21
 - package/esm2022/lib/services/rest.service.mjs +2 -1
 - package/esm2022/lib/services/storage.service.mjs +4 -4
 - package/fesm2022/simpo-component-library.mjs +211 -69
 - package/fesm2022/simpo-component-library.mjs.map +1 -1
 - package/lib/ecommerce/sections/featured-products/featured-products.component.d.ts +3 -0
 - package/lib/ecommerce/sections/product-desc/product-desc.component.d.ts +2 -0
 - package/lib/ecommerce/sections/product-list/product-list.component.d.ts +2 -1
 - package/lib/ecommerce/styles/OrderedItems.modal.d.ts +2 -2
 - package/lib/ecommerce/styles/product.modal.d.ts +1 -1
 - package/lib/services/cart.service.d.ts +3 -4
 - package/package.json +1 -1
 - package/simpo-component-library-1.4.215.tgz +0 -0
 - package/simpo-component-library-1.4.217.tgz +0 -0
 - package/simpo-component-library-1.4.214.tgz +0 -0
 
| 
         @@ -3043,6 +3043,7 @@ class RestService { 
     | 
|
| 
       3043 
3043 
     | 
    
         
             
                    let subIndustryId = localStorage.getItem("subIndustryId");
         
     | 
| 
       3044 
3044 
     | 
    
         
             
                    if (!subIndustryId)
         
     | 
| 
       3045 
3045 
     | 
    
         
             
                        subIndustryId = "";
         
     | 
| 
      
 3046 
     | 
    
         
            +
                    // collectionId = "1ef5b924-66ad-68f5-b931-2bd654300b1f"
         
     | 
| 
       3046 
3047 
     | 
    
         
             
                    return this.http.get(this.BASE_URL + `ecommerce/product/collection/id?collectionId=${collectionId || ''}&subIndustryId=${subIndustryId || ''}`).pipe(map((response) => response.data?.map((product) => new Product(product))));
         
     | 
| 
       3047 
3048 
     | 
    
         
             
                }
         
     | 
| 
       3048 
3049 
     | 
    
         
             
                getProductDetails(productId = null) {
         
     | 
| 
         @@ -3223,8 +3224,8 @@ class StorageServiceService { 
     | 
|
| 
       3223 
3224 
     | 
    
         
             
                    };
         
     | 
| 
       3224 
3225 
     | 
    
         
             
                    request.onupgradeneeded = (event) => {
         
     | 
| 
       3225 
3226 
     | 
    
         
             
                        this.database = event.target.result;
         
     | 
| 
       3226 
     | 
    
         
            -
                        this.cartCollectionRef = this.database.createObjectStore(this.cartCollectionName, { keyPath: " 
     | 
| 
       3227 
     | 
    
         
            -
                        this.favouriteCollectionRef = this.database.createObjectStore(this.favouriteCollectionName, { keyPath: " 
     | 
| 
      
 3227 
     | 
    
         
            +
                        this.cartCollectionRef = this.database.createObjectStore(this.cartCollectionName, { keyPath: "varientId" });
         
     | 
| 
      
 3228 
     | 
    
         
            +
                        this.favouriteCollectionRef = this.database.createObjectStore(this.favouriteCollectionName, { keyPath: "varientId" });
         
     | 
| 
       3228 
3229 
     | 
    
         
             
                        this.userCollectionRef = this.database.createObjectStore(this.userCollectionName, { keyPath: "userId" });
         
     | 
| 
       3229 
3230 
     | 
    
         
             
                    };
         
     | 
| 
       3230 
3231 
     | 
    
         
             
                }
         
     | 
| 
         @@ -3297,7 +3298,7 @@ class StorageServiceService { 
     | 
|
| 
       3297 
3298 
     | 
    
         
             
                }
         
     | 
| 
       3298 
3299 
     | 
    
         
             
                addProductToCart(product) {
         
     | 
| 
       3299 
3300 
     | 
    
         
             
                    const transaction = this.database.transaction(this.cartCollectionName, "readwrite");
         
     | 
| 
       3300 
     | 
    
         
            -
                    const response = transaction.objectStore(this.cartCollectionName).get(product. 
     | 
| 
      
 3301 
     | 
    
         
            +
                    const response = transaction.objectStore(this.cartCollectionName).get(product.varientId);
         
     | 
| 
       3301 
3302 
     | 
    
         
             
                    response.onsuccess = (cartResponse) => {
         
     | 
| 
       3302 
3303 
     | 
    
         
             
                        console.log("Cart Resppnse : ", cartResponse);
         
     | 
| 
       3303 
3304 
     | 
    
         
             
                        if (cartResponse.target.result) { }
         
     | 
| 
         @@ -5115,9 +5116,9 @@ var BUSINESS_CONSTANTS; 
     | 
|
| 
       5115 
5116 
     | 
    
         
             
            })(BUSINESS_CONSTANTS || (BUSINESS_CONSTANTS = {}));
         
     | 
| 
       5116 
5117 
     | 
    
         | 
| 
       5117 
5118 
     | 
    
         
             
            class OrderedItems {
         
     | 
| 
       5118 
     | 
    
         
            -
                constructor(json) {
         
     | 
| 
      
 5119 
     | 
    
         
            +
                constructor(json, varientId) {
         
     | 
| 
       5119 
5120 
     | 
    
         
             
                    this.itemId = json?.["itemId"] ?? "";
         
     | 
| 
       5120 
     | 
    
         
            -
                    this. 
     | 
| 
      
 5121 
     | 
    
         
            +
                    this.varientId = varientId ?? this.itemId;
         
     | 
| 
       5121 
5122 
     | 
    
         
             
                    this.businessId = json?.["businessId"];
         
     | 
| 
       5122 
5123 
     | 
    
         
             
                    this.itemName = json?.["name"];
         
     | 
| 
       5123 
5124 
     | 
    
         
             
                    this.businessName = json?.["businessName"];
         
     | 
| 
         @@ -5157,20 +5158,20 @@ class CartService { 
     | 
|
| 
       5157 
5158 
     | 
    
         
             
                    return this.restService.addItemToDB(userWishlist);
         
     | 
| 
       5158 
5159 
     | 
    
         
             
                }
         
     | 
| 
       5159 
5160 
     | 
    
         
             
                removeItemFromWishlistPage(product, userWishlist) {
         
     | 
| 
       5160 
     | 
    
         
            -
                    this.storageService.removeProductFromWishlist(product. 
     | 
| 
      
 5161 
     | 
    
         
            +
                    this.storageService.removeProductFromWishlist(product.varientId);
         
     | 
| 
       5161 
5162 
     | 
    
         
             
                    return this.restService.addItemToDB(userWishlist);
         
     | 
| 
       5162 
5163 
     | 
    
         
             
                }
         
     | 
| 
       5163 
     | 
    
         
            -
                addItemToCart(product) {
         
     | 
| 
      
 5164 
     | 
    
         
            +
                addItemToCart(product, varientId) {
         
     | 
| 
       5164 
5165 
     | 
    
         
             
                    if (product.quantity) {
         
     | 
| 
       5165 
     | 
    
         
            -
                        const orderedItem = this.objectMapper(product);
         
     | 
| 
      
 5166 
     | 
    
         
            +
                        const orderedItem = this.objectMapper(product, varientId);
         
     | 
| 
       5166 
5167 
     | 
    
         
             
                        return this.storageService.addProductToCart(orderedItem);
         
     | 
| 
       5167 
5168 
     | 
    
         
             
                    }
         
     | 
| 
       5168 
5169 
     | 
    
         
             
                    else {
         
     | 
| 
       5169 
5170 
     | 
    
         
             
                        return this.removeItemFromCart(product);
         
     | 
| 
       5170 
5171 
     | 
    
         
             
                    }
         
     | 
| 
       5171 
5172 
     | 
    
         
             
                }
         
     | 
| 
       5172 
     | 
    
         
            -
                addItemToFavourite(product) {
         
     | 
| 
       5173 
     | 
    
         
            -
                    const orderedItem = this.objectMapper(product);
         
     | 
| 
      
 5173 
     | 
    
         
            +
                addItemToFavourite(product, varientId) {
         
     | 
| 
      
 5174 
     | 
    
         
            +
                    const orderedItem = this.objectMapper(product, varientId);
         
     | 
| 
       5174 
5175 
     | 
    
         
             
                    this.storageService.addProductToWishlist(orderedItem);
         
     | 
| 
       5175 
5176 
     | 
    
         
             
                }
         
     | 
| 
       5176 
5177 
     | 
    
         
             
                addItemToFavFromCart(product) {
         
     | 
| 
         @@ -5179,39 +5180,31 @@ class CartService { 
     | 
|
| 
       5179 
5180 
     | 
    
         
             
                addOrderedItemToFavourite(orderedItem) {
         
     | 
| 
       5180 
5181 
     | 
    
         
             
                    this.storageService.addProductToWishlist(orderedItem);
         
     | 
| 
       5181 
5182 
     | 
    
         
             
                }
         
     | 
| 
       5182 
     | 
    
         
            -
                removeItemFromFavourite( 
     | 
| 
       5183 
     | 
    
         
            -
                    this.storageService.removeProductFromWishlist( 
     | 
| 
      
 5183 
     | 
    
         
            +
                removeItemFromFavourite(varientId) {
         
     | 
| 
      
 5184 
     | 
    
         
            +
                    this.storageService.removeProductFromWishlist(varientId);
         
     | 
| 
       5184 
5185 
     | 
    
         
             
                }
         
     | 
| 
       5185 
5186 
     | 
    
         
             
                removeItemFromCart(product) {
         
     | 
| 
       5186 
     | 
    
         
            -
                    this.storageService.removeProductFromCart(product. 
     | 
| 
      
 5187 
     | 
    
         
            +
                    this.storageService.removeProductFromCart(product.varientId);
         
     | 
| 
       5187 
5188 
     | 
    
         
             
                }
         
     | 
| 
       5188 
5189 
     | 
    
         
             
                getItemIdxJSON(id, type) {
         
     | 
| 
       5189 
5190 
     | 
    
         
             
                    return this.storageService.getProductFromCart(id);
         
     | 
| 
       5190 
5191 
     | 
    
         
             
                }
         
     | 
| 
       5191 
5192 
     | 
    
         
             
                storeItemToDB(product, type) {
         
     | 
| 
       5192 
5193 
     | 
    
         
             
                    if (type == "CART") {
         
     | 
| 
       5193 
     | 
    
         
            -
                        const orderProduct = this.objectMapper(this.storageService.getProductFromCart(product. 
     | 
| 
      
 5194 
     | 
    
         
            +
                        const orderProduct = this.objectMapper(this.storageService.getProductFromCart(product.varientId));
         
     | 
| 
       5194 
5195 
     | 
    
         
             
                        if (orderProduct) {
         
     | 
| 
       5195 
5196 
     | 
    
         
             
                            this.storageService.addProductToCart(orderProduct);
         
     | 
| 
       5196 
5197 
     | 
    
         
             
                        }
         
     | 
| 
       5197 
5198 
     | 
    
         
             
                    }
         
     | 
| 
       5198 
5199 
     | 
    
         
             
                    else {
         
     | 
| 
       5199 
     | 
    
         
            -
                        const orderProduct = this.objectMapper(this.storageService.getProductFromWishlist(product. 
     | 
| 
      
 5200 
     | 
    
         
            +
                        const orderProduct = this.objectMapper(this.storageService.getProductFromWishlist(product.varientId));
         
     | 
| 
       5200 
5201 
     | 
    
         
             
                        if (orderProduct) {
         
     | 
| 
       5201 
5202 
     | 
    
         
             
                            this.storageService.addProductToWishlist(orderProduct);
         
     | 
| 
       5202 
5203 
     | 
    
         
             
                        }
         
     | 
| 
       5203 
5204 
     | 
    
         
             
                    }
         
     | 
| 
       5204 
5205 
     | 
    
         
             
                }
         
     | 
| 
       5205 
     | 
    
         
            -
                 
     | 
| 
       5206 
     | 
    
         
            -
                     
     | 
| 
       5207 
     | 
    
         
            -
                    // console.log(type, productIdx);
         
     | 
| 
       5208 
     | 
    
         
            -
                    // const json = (type == "FAVOURITE") ? UserFavourites : UserCart;
         
     | 
| 
       5209 
     | 
    
         
            -
                    // if (productIdx >= 0)
         
     | 
| 
       5210 
     | 
    
         
            -
                    //   return json.orderedItems[productIdx];
         
     | 
| 
       5211 
     | 
    
         
            -
                    return null;
         
     | 
| 
       5212 
     | 
    
         
            -
                }
         
     | 
| 
       5213 
     | 
    
         
            -
                objectMapper(product) {
         
     | 
| 
       5214 
     | 
    
         
            -
                    return new OrderedItems(product);
         
     | 
| 
      
 5206 
     | 
    
         
            +
                objectMapper(product, variantId) {
         
     | 
| 
      
 5207 
     | 
    
         
            +
                    return new OrderedItems(product, variantId);
         
     | 
| 
       5215 
5208 
     | 
    
         
             
                }
         
     | 
| 
       5216 
5209 
     | 
    
         
             
                storeCartDataToServer(cart) {
         
     | 
| 
       5217 
5210 
     | 
    
         
             
                }
         
     | 
| 
         @@ -5310,10 +5303,11 @@ class FeaturedProductsComponent extends BaseSection { 
     | 
|
| 
       5310 
5303 
     | 
    
         
             
                                    this.USER_CART?.forEach((item) => {
         
     | 
| 
       5311 
5304 
     | 
    
         
             
                                        if (item.itemId == product.itemId) {
         
     | 
| 
       5312 
5305 
     | 
    
         
             
                                            if (product.itemVariant.length > 0) {
         
     | 
| 
       5313 
     | 
    
         
            -
                                                const itemVarient =  
     | 
| 
       5314 
     | 
    
         
            -
                                                if (itemVarient) {
         
     | 
| 
       5315 
     | 
    
         
            -
                                                    product.itemImages = itemVarient 
     | 
| 
      
 5306 
     | 
    
         
            +
                                                const itemVarient = product.itemVariant[0];
         
     | 
| 
      
 5307 
     | 
    
         
            +
                                                if (itemVarient.variantId == item.varientId) {
         
     | 
| 
      
 5308 
     | 
    
         
            +
                                                    product.itemImages = itemVarient.variantImages ?? [];
         
     | 
| 
       5316 
5309 
     | 
    
         
             
                                                    product.price = itemVarient.itemVariantPrice;
         
     | 
| 
      
 5310 
     | 
    
         
            +
                                                    product.quantity = item.quantity;
         
     | 
| 
       5317 
5311 
     | 
    
         
             
                                                }
         
     | 
| 
       5318 
5312 
     | 
    
         
             
                                            }
         
     | 
| 
       5319 
5313 
     | 
    
         
             
                                            else {
         
     | 
| 
         @@ -5331,10 +5325,11 @@ class FeaturedProductsComponent extends BaseSection { 
     | 
|
| 
       5331 
5325 
     | 
    
         
             
                                    this.USER_WISHLIST?.forEach((item) => {
         
     | 
| 
       5332 
5326 
     | 
    
         
             
                                        if (item.itemId == product.itemId) {
         
     | 
| 
       5333 
5327 
     | 
    
         
             
                                            if (product.itemVariant.length > 0) {
         
     | 
| 
       5334 
     | 
    
         
            -
                                                const itemVarient =  
     | 
| 
       5335 
     | 
    
         
            -
                                                if (itemVarient) {
         
     | 
| 
      
 5328 
     | 
    
         
            +
                                                const itemVarient = product.itemVariant[0];
         
     | 
| 
      
 5329 
     | 
    
         
            +
                                                if (itemVarient.variantId == item.varientId) {
         
     | 
| 
       5336 
5330 
     | 
    
         
             
                                                    product.itemImages = itemVarient?.variantImages ?? [];
         
     | 
| 
       5337 
5331 
     | 
    
         
             
                                                    product.price = itemVarient.itemVariantPrice;
         
     | 
| 
      
 5332 
     | 
    
         
            +
                                                    product.whislist = true;
         
     | 
| 
       5338 
5333 
     | 
    
         
             
                                                }
         
     | 
| 
       5339 
5334 
     | 
    
         
             
                                            }
         
     | 
| 
       5340 
5335 
     | 
    
         
             
                                            else {
         
     | 
| 
         @@ -5352,18 +5347,22 @@ class FeaturedProductsComponent extends BaseSection { 
     | 
|
| 
       5352 
5347 
     | 
    
         
             
                        this.messageService.add({ severity: 'warn', summary: 'Cart', detail: 'Item is not available as of now. We will notify you once available' });
         
     | 
| 
       5353 
5348 
     | 
    
         
             
                        return;
         
     | 
| 
       5354 
5349 
     | 
    
         
             
                    }
         
     | 
| 
       5355 
     | 
    
         
            -
                    if (product 
     | 
| 
       5356 
     | 
    
         
            -
                         
     | 
| 
      
 5350 
     | 
    
         
            +
                    if (!product?.quantity)
         
     | 
| 
      
 5351 
     | 
    
         
            +
                        product.quantity = 0;
         
     | 
| 
      
 5352 
     | 
    
         
            +
                    if (type == 'ADD') {
         
     | 
| 
      
 5353 
     | 
    
         
            +
                        product.quantity += 1;
         
     | 
| 
       5357 
5354 
     | 
    
         
             
                    }
         
     | 
| 
       5358 
5355 
     | 
    
         
             
                    else {
         
     | 
| 
       5359 
     | 
    
         
            -
                         
     | 
| 
       5360 
     | 
    
         
            -
             
     | 
| 
       5361 
     | 
    
         
            -
             
     | 
| 
       5362 
     | 
    
         
            -
             
     | 
| 
       5363 
     | 
    
         
            -
                         
     | 
| 
       5364 
     | 
    
         
            -
             
     | 
| 
       5365 
     | 
    
         
            -
                            product. 
     | 
| 
      
 5356 
     | 
    
         
            +
                        product.quantity -= 1;
         
     | 
| 
      
 5357 
     | 
    
         
            +
                    }
         
     | 
| 
      
 5358 
     | 
    
         
            +
                    if (product.itemVariant.length) {
         
     | 
| 
      
 5359 
     | 
    
         
            +
                        const itemVarient = this.getItemVarient(product, product.varientId);
         
     | 
| 
      
 5360 
     | 
    
         
            +
                        if (itemVarient) {
         
     | 
| 
      
 5361 
     | 
    
         
            +
                            itemVarient.quantity = product.quantity;
         
     | 
| 
      
 5362 
     | 
    
         
            +
                            this.cartService.addItemToCart(product, itemVarient.variantId);
         
     | 
| 
       5366 
5363 
     | 
    
         
             
                        }
         
     | 
| 
      
 5364 
     | 
    
         
            +
                    }
         
     | 
| 
      
 5365 
     | 
    
         
            +
                    else {
         
     | 
| 
       5367 
5366 
     | 
    
         
             
                        this.cartService.addItemToCart(product);
         
     | 
| 
       5368 
5367 
     | 
    
         
             
                    }
         
     | 
| 
       5369 
5368 
     | 
    
         
             
                }
         
     | 
| 
         @@ -5371,26 +5370,32 @@ class FeaturedProductsComponent extends BaseSection { 
     | 
|
| 
       5371 
5370 
     | 
    
         
             
                    if (type == 'ADD') {
         
     | 
| 
       5372 
5371 
     | 
    
         
             
                        product.whislist = true;
         
     | 
| 
       5373 
5372 
     | 
    
         
             
                        this.messageService.add({ severity: 'success', summary: 'Wishlist', detail: 'Item added to your wishlist' });
         
     | 
| 
       5374 
     | 
    
         
            -
                         
     | 
| 
      
 5373 
     | 
    
         
            +
                        if (product.itemVariant.length) {
         
     | 
| 
      
 5374 
     | 
    
         
            +
                            const itemVarient = this.getItemVarient(product, product.varientId);
         
     | 
| 
      
 5375 
     | 
    
         
            +
                            if (itemVarient) {
         
     | 
| 
      
 5376 
     | 
    
         
            +
                                itemVarient.wishlist = true;
         
     | 
| 
      
 5377 
     | 
    
         
            +
                                this.cartService.addItemToFavourite(product, itemVarient.variantId);
         
     | 
| 
      
 5378 
     | 
    
         
            +
                            }
         
     | 
| 
      
 5379 
     | 
    
         
            +
                        }
         
     | 
| 
      
 5380 
     | 
    
         
            +
                        else {
         
     | 
| 
      
 5381 
     | 
    
         
            +
                            this.cartService.addItemToFavourite(product);
         
     | 
| 
      
 5382 
     | 
    
         
            +
                        }
         
     | 
| 
       5375 
5383 
     | 
    
         
             
                    }
         
     | 
| 
       5376 
5384 
     | 
    
         
             
                    else {
         
     | 
| 
       5377 
5385 
     | 
    
         
             
                        product.whislist = false;
         
     | 
| 
       5378 
5386 
     | 
    
         
             
                        this.messageService.add({ severity: 'info', summary: 'Wishlist', detail: 'Item remove from your wishlist' });
         
     | 
| 
       5379 
     | 
    
         
            -
                        this.cartService.removeItemFromFavourite(product);
         
     | 
| 
      
 5387 
     | 
    
         
            +
                        this.cartService.removeItemFromFavourite(product.varientId);
         
     | 
| 
       5380 
5388 
     | 
    
         
             
                    }
         
     | 
| 
       5381 
5389 
     | 
    
         
             
                    // event.preventDefault();
         
     | 
| 
       5382 
5390 
     | 
    
         
             
                    event.stopPropagation();
         
     | 
| 
       5383 
5391 
     | 
    
         
             
                }
         
     | 
| 
       5384 
5392 
     | 
    
         
             
                proceedToProductDesc(product) {
         
     | 
| 
       5385 
     | 
    
         
            -
                    console.log("Called");
         
     | 
| 
       5386 
5393 
     | 
    
         
             
                    if (this.isRelatedProduct) {
         
     | 
| 
       5387 
     | 
    
         
            -
                        console.log("Change Detected");
         
     | 
| 
       5388 
5394 
     | 
    
         
             
                        this.changeDetailProduct.emit(product);
         
     | 
| 
       5389 
5395 
     | 
    
         
             
                    }
         
     | 
| 
       5390 
5396 
     | 
    
         
             
                    else {
         
     | 
| 
       5391 
     | 
    
         
            -
                        this.router.navigate([`details`], { queryParams: { id: product.itemId } });
         
     | 
| 
      
 5397 
     | 
    
         
            +
                        this.router.navigate([`details`], { queryParams: { id: product.itemId, varientId: product.varientId } });
         
     | 
| 
       5392 
5398 
     | 
    
         
             
                    }
         
     | 
| 
       5393 
     | 
    
         
            -
                    // this._eventService.redirectToPage.emit({redirectTo: '/details', data: {productId: productId}})
         
     | 
| 
       5394 
5399 
     | 
    
         
             
                }
         
     | 
| 
       5395 
5400 
     | 
    
         
             
                togglePreviewImage(product, idx) {
         
     | 
| 
       5396 
5401 
     | 
    
         
             
                    const element = document.getElementById('preview_' + idx);
         
     | 
| 
         @@ -5411,13 +5416,38 @@ class FeaturedProductsComponent extends BaseSection { 
     | 
|
| 
       5411 
5416 
     | 
    
         
             
                    });
         
     | 
| 
       5412 
5417 
     | 
    
         
             
                    return selectedVarient;
         
     | 
| 
       5413 
5418 
     | 
    
         
             
                }
         
     | 
| 
      
 5419 
     | 
    
         
            +
                selectVarient(product, varient) {
         
     | 
| 
      
 5420 
     | 
    
         
            +
                    // nedd to change
         
     | 
| 
      
 5421 
     | 
    
         
            +
                    product.varientId = varient.variantId;
         
     | 
| 
      
 5422 
     | 
    
         
            +
                    product.itemImages = varient.variantImages;
         
     | 
| 
      
 5423 
     | 
    
         
            +
                    product.price = varient.itemVariantPrice;
         
     | 
| 
      
 5424 
     | 
    
         
            +
                    product.itemInventory = varient.itemInventory;
         
     | 
| 
      
 5425 
     | 
    
         
            +
                    product.quantity = this.getVarientQuantity(varient);
         
     | 
| 
      
 5426 
     | 
    
         
            +
                    product.whislist = this.isVarientPresentInWishtlist(varient);
         
     | 
| 
      
 5427 
     | 
    
         
            +
                }
         
     | 
| 
       5414 
5428 
     | 
    
         
             
                get currency() {
         
     | 
| 
       5415 
5429 
     | 
    
         
             
                    return BUSINESS_CONSTANTS.CURRENCY;
         
     | 
| 
       5416 
5430 
     | 
    
         
             
                }
         
     | 
| 
      
 5431 
     | 
    
         
            +
                getVarientQuantity(productVarient) {
         
     | 
| 
      
 5432 
     | 
    
         
            +
                    let itemQuantity = 0;
         
     | 
| 
      
 5433 
     | 
    
         
            +
                    this.USER_CART?.forEach((item) => {
         
     | 
| 
      
 5434 
     | 
    
         
            +
                        if (productVarient.variantId == item.varientId)
         
     | 
| 
      
 5435 
     | 
    
         
            +
                            itemQuantity = item.quantity;
         
     | 
| 
      
 5436 
     | 
    
         
            +
                    });
         
     | 
| 
      
 5437 
     | 
    
         
            +
                    return itemQuantity;
         
     | 
| 
      
 5438 
     | 
    
         
            +
                }
         
     | 
| 
      
 5439 
     | 
    
         
            +
                isVarientPresentInWishtlist(productVarient) {
         
     | 
| 
      
 5440 
     | 
    
         
            +
                    let present = false;
         
     | 
| 
      
 5441 
     | 
    
         
            +
                    this.USER_WISHLIST?.forEach((item) => {
         
     | 
| 
      
 5442 
     | 
    
         
            +
                        if (productVarient.variantId == item.varientId)
         
     | 
| 
      
 5443 
     | 
    
         
            +
                            present = true;
         
     | 
| 
      
 5444 
     | 
    
         
            +
                    });
         
     | 
| 
      
 5445 
     | 
    
         
            +
                    return present;
         
     | 
| 
      
 5446 
     | 
    
         
            +
                }
         
     | 
| 
       5417 
5447 
     | 
    
         
             
                static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: FeaturedProductsComponent, deps: [{ token: PLATFORM_ID }, { token: EventsService }, { token: RestService }, { token: i2$3.Router }, { token: CartService }, { token: i5$1.MatBottomSheet }, { token: StorageServiceService }, { token: i5.MessageService }], target: i0.ɵɵFactoryTarget.Component }); }
         
     | 
| 
       5418 
     | 
    
         
            -
                static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.4", type: FeaturedProductsComponent, isStandalone: true, selector: "simpo-featured-products", inputs: { data: "data", responseData: "responseData", index: "index", isRelatedProduct: "isRelatedProduct", edit: "edit", delete: "delete" }, outputs: { changeDetailProduct: "changeDetailProduct" }, host: { listeners: { "window: resize": "getScreenSize($event)" } }, providers: [MessageService], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "\r\n<p-toast position=\"bottom-right\" [baseZIndex]=\"10000000000\" [autoZIndex]=\"true\"></p-toast>\r\n<ng-container *ngIf=\"!isLoading\">\r\n  <section class=\"container-fluid total-container\" [id]=\"data?.id\" simpoHover (hovering)=\"showEditTabs($event)\">\r\n    <div [id]=\"data?.id\" class=\"display-block\" #mainContainer [simpoOverlay]=\"styles?.background\" [simpoBorder]=\"styles?.border\"\r\n      [simpoAnimation]=\"styles?.animation\" [simpoLayout]=\"styles?.layout\">\r\n      <div *ngFor=\"let item of content?.inputText\">\r\n        <div [innerHTML]=\"item.value\" [ngClass]=\"item.label === 'Heading' ? 'heading-large lh-2 mb-3' : 'body-large'\">\r\n        </div>\r\n      </div>\r\n      <img src=\"https://dev-beeos.s3.amazonaws.com/library-media/714126c1707378935732span.png\" alt=\"\"\r\n        class=\"span-img mt-15\">\r\n        <ng-container *ngIf=\"!filterLoading\">\r\n          <div class=\"product-parent\" *ngIf=\"responseData && responseData?.length\">\r\n            <div *ngFor=\"let product of responseData | slice:getSliceParameters()[0]:getSliceParameters()[1]; let idx = index\" class=\"product\"\r\n              [style.width]=\"getProductWidth()\">\r\n              <div *ngIf=\"!(product.itemImages?.length && product.itemImages[0].imgUrl)\" class=\"default-image\" (click)=\"proceedToProductDesc(product)\">\r\n                <img src=\"https://i.postimg.cc/hPS2JpV0/no-image-available.jpg\" alt=\"\">\r\n                <ng-container *ngTemplateOutlet=\"FavouriteTags; context: {data: product}\"></ng-container>\r\n              </div>\r\n              <div *ngIf=\"product.itemImages?.length && product.itemImages[0].imgUrl\" (click)=\"proceedToProductDesc(product)\" class=\"position-relative\">\r\n                <div class=\"tags\">\r\n                  <div class=\"tag\" *ngIf=\"product.itemInventory && product.itemInventory.lowStockQuantity < 5\">Selling Fast</div>\r\n                </div>\r\n                <ng-container *ngTemplateOutlet=\"FavouriteTags; context: {data: product}\"></ng-container>\r\n                <img [id]=\"'preview_'+idx\" [src]=\"product.itemImages[product.prviewIdx]?.imgUrl\" alt=\"\" class=\"product-img preivew\" (mouseenter)=\"togglePreviewImage(product, idx)\" (mouseleave)=\"product.prviewIdx = 0\">\r\n              </div>\r\n              <div class=\"mt-15\">\r\n                <div class=\"product-name heading-large\" [id]=\"data?.id\" [simpoColor]=\"styles?.background?.color\">\r\n                  {{product.name.length > 30 ? (product.name | slice: 0:27) + '...' : product.name }}</div>\r\n                <div class=\"d-flex justify-content-between align-items-center\">\r\n                  <div class=\"price body-large d-flex\" [id]=\"data?.id\" [simpoColor]=\"styles?.background?.color\">\r\n                    <div *ngIf=\"product.price.value != product.price.discountedPrice\" class=\"selling-price\">\r\n                      <span [innerHTML]='currency'></span>\r\n                      {{product.price.value}}\r\n                    </div>\r\n                    <div class=\"discounted-price\">\r\n                      <span [innerHTML]='currency'></span>\r\n                      {{product.price.discountedPrice}}\r\n                    </div>\r\n                  </div>\r\n                  <div *ngIf=\"content?.display?.showButton\" class=\"add-to-cart-btn\">\r\n                    <button simpoButtonDirective [id]=\"data?.id+(button?.id || '')\" [buttonStyle]=\"button?.styles\"\r\n                      [color]=\"styles?.background?.accentColor\" *ngIf=\"!product.quantity && !isItemOutOfStock(product)\" (click)=\"addItemToCart(product, 'ADD')\">{{button?.content?.label ?? 'Add to Cart'}}</button>\r\n                    <div class=\"quantity\" *ngIf=\"product.quantity\">\r\n                      <span (click)=\"addItemToCart(product, 'SUBSTRACT')\">-</span>\r\n                      <span>{{product.quantity}}</span>\r\n                      <span (click)=\"addItemToCart(product, 'ADD')\">+</span>\r\n                    </div>\r\n                    <button disabled class=\"out-of-stock\" *ngIf=\"isItemOutOfStock(product)\">Out Of Stock</button>\r\n                  </div>\r\n                </div>\r\n              </div>\r\n            </div>\r\n          </div>\r\n          <div class=\"action-btn\">\r\n            <a [href]=\"data?.action?.buttons?.[1]?.content?.redirectionUrl\" simpoButtonDirective [id]=\"data?.id+(data?.action?.buttons?.[1]?.id || '')\" [buttonStyle]=\"data?.action?.buttons?.[1]?.styles\" [color]=\"styles?.background?.accentColor\" >{{data?.action?.buttons?.[1]?.content?.label }}</a>\r\n          </div>\r\n        </ng-container>\r\n    </div>\r\n    <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\r\n      <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\r\n    </div>\r\n    <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n      <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n    </div>\r\n\r\n  </section>\r\n</ng-container>\r\n<ng-template #FavouriteTags let-product=\"data\">\r\n  <mat-icon class=\"fav-icon\" [style.color]=\"data?.styles?.background?.accentColor\" (click)=\"toggleItemToFav($event, product, 'ADD')\" *ngIf=\"!product.whislist\">favorite_border</mat-icon>\r\n  <mat-icon class=\"fav-icon\" [style.color]=\"data?.styles?.background?.accentColor\" (click)=\"toggleItemToFav($event, product, 'REMOVE')\" *ngIf=\"product.whislist\">favorite</mat-icon>\r\n</ng-template>\r\n<ngx-skeleton-loader *ngIf=\"isLoading || filterLoading\" count=\"1\" appearance=\"circle\" [theme]=\"{\r\n  width: '100%',\r\n  height: '40vh',\r\n  'border-radius': '10px',\r\n  'position': 'relative',\r\n  'right': '5px'\r\n}\">\r\n</ngx-skeleton-loader>\r\n", styles: [".product-parent{display:flex;flex-wrap:wrap;margin-top:15px}.product{padding:10px;cursor:pointer;position:relative}.product-img{height:310px;width:100%}.price{color:#222;font-size:16px;font-weight:600;line-height:normal}.tags{position:absolute;top:8px;left:8px;display:flex;gap:5px}.tags .tag{font-size:12px;background-color:#fff;padding:5px;border-radius:3px}.out-of-stock{background-color:#d3d3d333;color:#000;border-radius:5px;border:none}.fav-icon{position:absolute;z-index:1000;padding:5px;right:8px;top:8px;height:fit-content;width:fit-content;background-color:#ffffff78;border-radius:50%}.out-of-stock{background-color:#d3d3d333;color:#000;padding:5px 10px;border-radius:5px}.product-name{color:#222;font-size:16px;line-height:26px;margin-bottom:5px}.selling-price{text-decoration:line-through;font-size:14px!important;margin-right:8px;color:#d3d3d3}@media screen and (max-width: 475px){.selling-price{display:none!important}}.discounted-price{margin-top:-3px}.add-product-button{width:20%}.action-btn{display:flex;justify-content:center;margin-top:20px}.action-btn>a{width:fit-content!important;padding:5px 20px;text-decoration:none}.mt-15{margin-top:15px}.default-image{background-color:#f2f3f5;text-align:center}.default-image img{width:70%;height:310px}.total-container{height:auto;position:relative}.display-block{display:block!important}.quantity{display:flex;justify-content:space-between;align-items:center;border:1.5px solid lightgray;border-radius:3px;padding:5px;font-weight:600;width:95px}.preivew{transition:opacity .5s ease-in-out;opacity:1}.transition-preview{opacity:0}.hover_effect{position:absolute;width:100%;top:0;left:0;height:100%}@media screen and (max-width: 475px){.product-img{height:220px}.default-image img{height:250px}}.add-to-cart-btn{display:flex;gap:10px}.add-to-cart-btn .mat-icon{height:30px;width:35px;font-size:27px;margin-top:5px}.add-to-cart-btn button{height:35px;font-size:16px!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i2.SlicePipe, name: "slice" }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: SimpoComponentModule }, { kind: "component", type: HoverElementsComponent, selector: "simpo-hover-elements", inputs: ["data", "index", "editOptions", "isMerged"], outputs: ["edit"] }, { kind: "component", type: DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { kind: "component", type: i11.NgxSkeletonLoaderComponent, selector: "ngx-skeleton-loader", inputs: ["count", "loadingText", "appearance", "animation", "ariaLabel", "theme"] }, { kind: "component", type: 
         
     | 
| 
      
 5448 
     | 
    
         
            +
                static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.4", type: FeaturedProductsComponent, isStandalone: true, selector: "simpo-featured-products", inputs: { data: "data", responseData: "responseData", index: "index", isRelatedProduct: "isRelatedProduct", edit: "edit", delete: "delete" }, outputs: { changeDetailProduct: "changeDetailProduct" }, host: { listeners: { "window: resize": "getScreenSize($event)" } }, providers: [MessageService], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "\r\n<p-toast position=\"bottom-right\" [baseZIndex]=\"10000000000\" [autoZIndex]=\"true\"></p-toast>\r\n<ng-container *ngIf=\"!isLoading\">\r\n  <section class=\"container-fluid total-container\" [id]=\"data?.id\">\r\n    <div [id]=\"data?.id\" class=\"display-block\" #mainContainer [simpoOverlay]=\"styles?.background\" [simpoBorder]=\"styles?.border\"\r\n      [simpoAnimation]=\"styles?.animation\" [simpoLayout]=\"styles?.layout\">\r\n      <div *ngFor=\"let item of content?.inputText\">\r\n        <div [innerHTML]=\"item.value\" [ngClass]=\"item.label === 'Heading' ? 'heading-large lh-2 mb-3' : 'body-large'\">\r\n        </div>\r\n      </div>\r\n      <img src=\"https://dev-beeos.s3.amazonaws.com/library-media/714126c1707378935732span.png\" alt=\"\"\r\n        class=\"span-img mt-15\">\r\n        <ng-container *ngIf=\"!filterLoading\">\r\n          <div class=\"product-parent\" *ngIf=\"responseData && responseData?.length\">\r\n            <div *ngFor=\"let product of responseData | slice:getSliceParameters()[0]:getSliceParameters()[1]; let idx = index\" class=\"product\"\r\n              [style.width]=\"getProductWidth()\">\r\n              <div *ngIf=\"!(product.itemImages?.length && product.itemImages[0].imgUrl)\" class=\"default-image\" (click)=\"proceedToProductDesc(product)\">\r\n                <img src=\"https://i.postimg.cc/hPS2JpV0/no-image-available.jpg\" alt=\"\">\r\n                <ng-container *ngTemplateOutlet=\"FavouriteTags; context: {data: product}\"></ng-container>\r\n              </div>\r\n              <div *ngIf=\"product.itemImages?.length && product.itemImages[0].imgUrl\" (click)=\"proceedToProductDesc(product)\" class=\"position-relative\">\r\n                <div class=\"tags\">\r\n                  <div class=\"tag\" *ngIf=\"product.itemInventory && product.itemInventory.lowStockQuantity < 5\">Selling Fast</div>\r\n                </div>\r\n                <ng-container *ngTemplateOutlet=\"FavouriteTags; context: {data: product}\"></ng-container>\r\n                <img [id]=\"'preview_'+idx\" [src]=\"product.itemImages[product.prviewIdx]?.imgUrl\" alt=\"\" class=\"product-img preivew\" (mouseenter)=\"togglePreviewImage(product, idx)\" (mouseleave)=\"product.prviewIdx = 0\">\r\n              </div>\r\n              <div class=\"mt-15\">\r\n                <div class=\"product-name heading-large\" [id]=\"data?.id\" [simpoColor]=\"styles?.background?.color\">\r\n                  {{product.name.length > 30 ? (product.name | slice: 0:27) + '...' : product.name }}</div>\r\n                <div class=\"varient-list\" *ngIf=\"product.itemVariant?.length\">\r\n                  <ng-container *ngFor=\"let varient of product.itemVariant; let idx = index\">\r\n                    <img [src]=\"varient.variantImages[0].imgUrl\" alt=\"\" class=\"varient\" [ngClass]=\"{'selected-varient': varient.variantId == product.varientId}\" [style.borderColor]=\"varient.variantId == product.varientId ? 'blue' : 'transparent'\" (click)=\"selectVarient(product, varient)\">\r\n                  </ng-container>\r\n                </div>\r\n                <div class=\"d-flex justify-content-between align-items-center\">\r\n                  <div class=\"price body-large d-flex\" [id]=\"data?.id\" [simpoColor]=\"styles?.background?.color\">\r\n                    <div *ngIf=\"product.price.value != product.price.discountedPrice\" class=\"selling-price\">\r\n                      <span [innerHTML]='currency'></span>\r\n                      {{product.price.value}}\r\n                    </div>\r\n                    <div class=\"discounted-price\">\r\n                      <span [innerHTML]='currency'></span>\r\n                      {{product.price.discountedPrice}}\r\n                    </div>\r\n                  </div>\r\n                  <div *ngIf=\"content?.display?.showButton\" class=\"add-to-cart-btn\">\r\n                    <button simpoButtonDirective [id]=\"data?.id+(button?.id || '')\" [buttonStyle]=\"button?.styles\"\r\n                      [color]=\"styles?.background?.accentColor\" *ngIf=\"!product.quantity && !isItemOutOfStock(product)\" (click)=\"addItemToCart(product, 'ADD')\">{{button?.content?.label ?? 'Add to Cart'}}</button>\r\n                    <div class=\"quantity\" *ngIf=\"product.quantity\">\r\n                      <span (click)=\"addItemToCart(product, 'SUBSTRACT')\">-</span>\r\n                      <span>{{product.quantity}}</span>\r\n                      <span (click)=\"addItemToCart(product, 'ADD')\">+</span>\r\n                    </div>\r\n                    <button disabled class=\"out-of-stock\" *ngIf=\"isItemOutOfStock(product)\">Out Of Stock</button>\r\n                  </div>\r\n                </div>\r\n              </div>\r\n            </div>\r\n          </div>\r\n          <div class=\"action-btn\">\r\n            <a [href]=\"data?.action?.buttons?.[1]?.content?.redirectionUrl\" simpoButtonDirective [id]=\"data?.id+(data?.action?.buttons?.[1]?.id || '')\" [buttonStyle]=\"data?.action?.buttons?.[1]?.styles\" [color]=\"styles?.background?.accentColor\" >{{data?.action?.buttons?.[1]?.content?.label }}</a>\r\n          </div>\r\n        </ng-container>\r\n    </div>\r\n    <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\r\n      <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\r\n    </div>\r\n    <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n      <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n    </div>\r\n\r\n  </section>\r\n</ng-container>\r\n<ng-template #FavouriteTags let-product=\"data\">\r\n  <mat-icon class=\"fav-icon\" [style.color]=\"data?.styles?.background?.accentColor\" (click)=\"toggleItemToFav($event, product, 'ADD')\" *ngIf=\"!product.whislist\">favorite_border</mat-icon>\r\n  <mat-icon class=\"fav-icon\" [style.color]=\"data?.styles?.background?.accentColor\" (click)=\"toggleItemToFav($event, product, 'REMOVE')\" *ngIf=\"product.whislist\">favorite</mat-icon>\r\n</ng-template>\r\n<ngx-skeleton-loader *ngIf=\"isLoading || filterLoading\" count=\"1\" appearance=\"circle\" [theme]=\"{\r\n  width: '100%',\r\n  height: '40vh',\r\n  'border-radius': '10px',\r\n  'position': 'relative',\r\n  'right': '5px'\r\n}\">\r\n</ngx-skeleton-loader>\r\n", styles: [".product-parent{display:flex;flex-wrap:wrap;margin-top:15px}.product{padding:10px;cursor:pointer;position:relative}.product-img{height:310px;width:100%}.price{color:#222;font-size:16px;font-weight:600;line-height:normal}.varient-list{display:flex;gap:5px;margin-bottom:5px;width:100%;overflow-x:auto}.varient-list .varient{height:60px;width:45px;border-radius:5px;border:1px solid lightgray}.varient-list .selected-varient{border:1px solid transparent}.tags{position:absolute;top:8px;left:8px;display:flex;gap:5px}.tags .tag{font-size:12px;background-color:#fff;padding:5px;border-radius:3px}.out-of-stock{background-color:#d3d3d333;color:#000;border-radius:5px;border:none}.fav-icon{position:absolute;z-index:1000;padding:5px;right:8px;top:8px;height:fit-content;width:fit-content;background-color:#ffffff78;border-radius:50%}.out-of-stock{background-color:#d3d3d333;color:#000;padding:5px 10px;border-radius:5px}.product-name{color:#222;font-size:16px;line-height:26px;margin-bottom:5px}.selling-price{text-decoration:line-through;font-size:14px!important;margin-right:8px;color:#d3d3d3}@media screen and (max-width: 475px){.selling-price{display:none!important}}.discounted-price{margin-top:-3px}.add-product-button{width:20%}.action-btn{display:flex;justify-content:center;margin-top:20px}.action-btn>a{width:fit-content!important;padding:5px 20px;text-decoration:none}.mt-15{margin-top:15px}.default-image{background-color:#f2f3f5;text-align:center}.default-image img{width:70%;height:310px}.total-container{height:auto;position:relative}.display-block{display:block!important}.quantity{display:flex;justify-content:space-between;align-items:center;border:1.5px solid lightgray;border-radius:3px;padding:5px;font-weight:600;width:95px}.preivew{transition:opacity .5s ease-in-out;opacity:1}.transition-preview{opacity:0}.hover_effect{position:absolute;width:100%;top:0;left:0;height:100%}@media screen and (max-width: 475px){.product-img{height:220px}.default-image img{height:250px}}.add-to-cart-btn{display:flex;gap:10px}.add-to-cart-btn .mat-icon{height:30px;width:35px;font-size:27px;margin-top:5px}.add-to-cart-btn button{height:35px;font-size:16px!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i2.SlicePipe, name: "slice" }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: SimpoComponentModule }, { kind: "component", type: HoverElementsComponent, selector: "simpo-hover-elements", inputs: ["data", "index", "editOptions", "isMerged"], outputs: ["edit"] }, { kind: "component", type: DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { kind: "component", type: i11.NgxSkeletonLoaderComponent, selector: "ngx-skeleton-loader", inputs: ["count", "loadingText", "appearance", "animation", "ariaLabel", "theme"] }, { kind: "component", type: 
         
     | 
| 
       5419 
5449 
     | 
    
         
             
                            //directive
         
     | 
| 
       5420 
     | 
    
         
            -
                            MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: AnimationDirective, selector: "[simpoAnimation]", inputs: ["simpoAnimation"] }, { kind: "directive", type: ContentFitDirective, selector: "[simpoLayout]", inputs: ["simpoLayout"] }, { kind: "directive", type: BorderDirective, selector: "[simpoBorder]", inputs: ["simpoBorder"] }, { kind: "directive", type:  
     | 
| 
      
 5450 
     | 
    
         
            +
                            MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: AnimationDirective, selector: "[simpoAnimation]", inputs: ["simpoAnimation"] }, { kind: "directive", type: ContentFitDirective, selector: "[simpoLayout]", inputs: ["simpoLayout"] }, { kind: "directive", type: BorderDirective, selector: "[simpoBorder]", inputs: ["simpoBorder"] }, { kind: "directive", type: OverlayDirective, selector: "[simpoOverlay]", inputs: ["simpoOverlay"] }, { kind: "directive", type: ColorDirective, selector: "[simpoColor]", inputs: ["simpoColor"] }, { kind: "ngmodule", type: MatBottomSheetModule }, { kind: "directive", type: ButtonDirectiveDirective, selector: "[simpoButtonDirective]", inputs: ["buttonStyle", "color", "scrollValue"] }, { kind: "ngmodule", type: ToastModule }, { kind: "component", type: i12.Toast, selector: "p-toast", inputs: ["key", "autoZIndex", "baseZIndex", "life", "style", "styleClass", "position", "preventOpenDuplicates", "preventDuplicates", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions", "breakpoints"], outputs: ["onClose"] }] }); }
         
     | 
| 
       5421 
5451 
     | 
    
         
             
            }
         
     | 
| 
       5422 
5452 
     | 
    
         
             
            i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: FeaturedProductsComponent, decorators: [{
         
     | 
| 
       5423 
5453 
     | 
    
         
             
                        type: Component,
         
     | 
| 
         @@ -5439,7 +5469,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImpor 
     | 
|
| 
       5439 
5469 
     | 
    
         
             
                                    MatBottomSheetModule,
         
     | 
| 
       5440 
5470 
     | 
    
         
             
                                    ButtonDirectiveDirective,
         
     | 
| 
       5441 
5471 
     | 
    
         
             
                                    ToastModule
         
     | 
| 
       5442 
     | 
    
         
            -
                                ], providers: [MessageService], template: "\r\n<p-toast position=\"bottom-right\" [baseZIndex]=\"10000000000\" [autoZIndex]=\"true\"></p-toast>\r\n<ng-container *ngIf=\"!isLoading\">\r\n  <section class=\"container-fluid total-container\" [id]=\"data?.id\" 
     | 
| 
      
 5472 
     | 
    
         
            +
                                ], providers: [MessageService], template: "\r\n<p-toast position=\"bottom-right\" [baseZIndex]=\"10000000000\" [autoZIndex]=\"true\"></p-toast>\r\n<ng-container *ngIf=\"!isLoading\">\r\n  <section class=\"container-fluid total-container\" [id]=\"data?.id\">\r\n    <div [id]=\"data?.id\" class=\"display-block\" #mainContainer [simpoOverlay]=\"styles?.background\" [simpoBorder]=\"styles?.border\"\r\n      [simpoAnimation]=\"styles?.animation\" [simpoLayout]=\"styles?.layout\">\r\n      <div *ngFor=\"let item of content?.inputText\">\r\n        <div [innerHTML]=\"item.value\" [ngClass]=\"item.label === 'Heading' ? 'heading-large lh-2 mb-3' : 'body-large'\">\r\n        </div>\r\n      </div>\r\n      <img src=\"https://dev-beeos.s3.amazonaws.com/library-media/714126c1707378935732span.png\" alt=\"\"\r\n        class=\"span-img mt-15\">\r\n        <ng-container *ngIf=\"!filterLoading\">\r\n          <div class=\"product-parent\" *ngIf=\"responseData && responseData?.length\">\r\n            <div *ngFor=\"let product of responseData | slice:getSliceParameters()[0]:getSliceParameters()[1]; let idx = index\" class=\"product\"\r\n              [style.width]=\"getProductWidth()\">\r\n              <div *ngIf=\"!(product.itemImages?.length && product.itemImages[0].imgUrl)\" class=\"default-image\" (click)=\"proceedToProductDesc(product)\">\r\n                <img src=\"https://i.postimg.cc/hPS2JpV0/no-image-available.jpg\" alt=\"\">\r\n                <ng-container *ngTemplateOutlet=\"FavouriteTags; context: {data: product}\"></ng-container>\r\n              </div>\r\n              <div *ngIf=\"product.itemImages?.length && product.itemImages[0].imgUrl\" (click)=\"proceedToProductDesc(product)\" class=\"position-relative\">\r\n                <div class=\"tags\">\r\n                  <div class=\"tag\" *ngIf=\"product.itemInventory && product.itemInventory.lowStockQuantity < 5\">Selling Fast</div>\r\n                </div>\r\n                <ng-container *ngTemplateOutlet=\"FavouriteTags; context: {data: product}\"></ng-container>\r\n                <img [id]=\"'preview_'+idx\" [src]=\"product.itemImages[product.prviewIdx]?.imgUrl\" alt=\"\" class=\"product-img preivew\" (mouseenter)=\"togglePreviewImage(product, idx)\" (mouseleave)=\"product.prviewIdx = 0\">\r\n              </div>\r\n              <div class=\"mt-15\">\r\n                <div class=\"product-name heading-large\" [id]=\"data?.id\" [simpoColor]=\"styles?.background?.color\">\r\n                  {{product.name.length > 30 ? (product.name | slice: 0:27) + '...' : product.name }}</div>\r\n                <div class=\"varient-list\" *ngIf=\"product.itemVariant?.length\">\r\n                  <ng-container *ngFor=\"let varient of product.itemVariant; let idx = index\">\r\n                    <img [src]=\"varient.variantImages[0].imgUrl\" alt=\"\" class=\"varient\" [ngClass]=\"{'selected-varient': varient.variantId == product.varientId}\" [style.borderColor]=\"varient.variantId == product.varientId ? 'blue' : 'transparent'\" (click)=\"selectVarient(product, varient)\">\r\n                  </ng-container>\r\n                </div>\r\n                <div class=\"d-flex justify-content-between align-items-center\">\r\n                  <div class=\"price body-large d-flex\" [id]=\"data?.id\" [simpoColor]=\"styles?.background?.color\">\r\n                    <div *ngIf=\"product.price.value != product.price.discountedPrice\" class=\"selling-price\">\r\n                      <span [innerHTML]='currency'></span>\r\n                      {{product.price.value}}\r\n                    </div>\r\n                    <div class=\"discounted-price\">\r\n                      <span [innerHTML]='currency'></span>\r\n                      {{product.price.discountedPrice}}\r\n                    </div>\r\n                  </div>\r\n                  <div *ngIf=\"content?.display?.showButton\" class=\"add-to-cart-btn\">\r\n                    <button simpoButtonDirective [id]=\"data?.id+(button?.id || '')\" [buttonStyle]=\"button?.styles\"\r\n                      [color]=\"styles?.background?.accentColor\" *ngIf=\"!product.quantity && !isItemOutOfStock(product)\" (click)=\"addItemToCart(product, 'ADD')\">{{button?.content?.label ?? 'Add to Cart'}}</button>\r\n                    <div class=\"quantity\" *ngIf=\"product.quantity\">\r\n                      <span (click)=\"addItemToCart(product, 'SUBSTRACT')\">-</span>\r\n                      <span>{{product.quantity}}</span>\r\n                      <span (click)=\"addItemToCart(product, 'ADD')\">+</span>\r\n                    </div>\r\n                    <button disabled class=\"out-of-stock\" *ngIf=\"isItemOutOfStock(product)\">Out Of Stock</button>\r\n                  </div>\r\n                </div>\r\n              </div>\r\n            </div>\r\n          </div>\r\n          <div class=\"action-btn\">\r\n            <a [href]=\"data?.action?.buttons?.[1]?.content?.redirectionUrl\" simpoButtonDirective [id]=\"data?.id+(data?.action?.buttons?.[1]?.id || '')\" [buttonStyle]=\"data?.action?.buttons?.[1]?.styles\" [color]=\"styles?.background?.accentColor\" >{{data?.action?.buttons?.[1]?.content?.label }}</a>\r\n          </div>\r\n        </ng-container>\r\n    </div>\r\n    <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\r\n      <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\r\n    </div>\r\n    <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n      <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n    </div>\r\n\r\n  </section>\r\n</ng-container>\r\n<ng-template #FavouriteTags let-product=\"data\">\r\n  <mat-icon class=\"fav-icon\" [style.color]=\"data?.styles?.background?.accentColor\" (click)=\"toggleItemToFav($event, product, 'ADD')\" *ngIf=\"!product.whislist\">favorite_border</mat-icon>\r\n  <mat-icon class=\"fav-icon\" [style.color]=\"data?.styles?.background?.accentColor\" (click)=\"toggleItemToFav($event, product, 'REMOVE')\" *ngIf=\"product.whislist\">favorite</mat-icon>\r\n</ng-template>\r\n<ngx-skeleton-loader *ngIf=\"isLoading || filterLoading\" count=\"1\" appearance=\"circle\" [theme]=\"{\r\n  width: '100%',\r\n  height: '40vh',\r\n  'border-radius': '10px',\r\n  'position': 'relative',\r\n  'right': '5px'\r\n}\">\r\n</ngx-skeleton-loader>\r\n", styles: [".product-parent{display:flex;flex-wrap:wrap;margin-top:15px}.product{padding:10px;cursor:pointer;position:relative}.product-img{height:310px;width:100%}.price{color:#222;font-size:16px;font-weight:600;line-height:normal}.varient-list{display:flex;gap:5px;margin-bottom:5px;width:100%;overflow-x:auto}.varient-list .varient{height:60px;width:45px;border-radius:5px;border:1px solid lightgray}.varient-list .selected-varient{border:1px solid transparent}.tags{position:absolute;top:8px;left:8px;display:flex;gap:5px}.tags .tag{font-size:12px;background-color:#fff;padding:5px;border-radius:3px}.out-of-stock{background-color:#d3d3d333;color:#000;border-radius:5px;border:none}.fav-icon{position:absolute;z-index:1000;padding:5px;right:8px;top:8px;height:fit-content;width:fit-content;background-color:#ffffff78;border-radius:50%}.out-of-stock{background-color:#d3d3d333;color:#000;padding:5px 10px;border-radius:5px}.product-name{color:#222;font-size:16px;line-height:26px;margin-bottom:5px}.selling-price{text-decoration:line-through;font-size:14px!important;margin-right:8px;color:#d3d3d3}@media screen and (max-width: 475px){.selling-price{display:none!important}}.discounted-price{margin-top:-3px}.add-product-button{width:20%}.action-btn{display:flex;justify-content:center;margin-top:20px}.action-btn>a{width:fit-content!important;padding:5px 20px;text-decoration:none}.mt-15{margin-top:15px}.default-image{background-color:#f2f3f5;text-align:center}.default-image img{width:70%;height:310px}.total-container{height:auto;position:relative}.display-block{display:block!important}.quantity{display:flex;justify-content:space-between;align-items:center;border:1.5px solid lightgray;border-radius:3px;padding:5px;font-weight:600;width:95px}.preivew{transition:opacity .5s ease-in-out;opacity:1}.transition-preview{opacity:0}.hover_effect{position:absolute;width:100%;top:0;left:0;height:100%}@media screen and (max-width: 475px){.product-img{height:220px}.default-image img{height:250px}}.add-to-cart-btn{display:flex;gap:10px}.add-to-cart-btn .mat-icon{height:30px;width:35px;font-size:27px;margin-top:5px}.add-to-cart-btn button{height:35px;font-size:16px!important}\n"] }]
         
     | 
| 
       5443 
5473 
     | 
    
         
             
                    }], ctorParameters: () => [{ type: Object, decorators: [{
         
     | 
| 
       5444 
5474 
     | 
    
         
             
                                type: Inject,
         
     | 
| 
       5445 
5475 
     | 
    
         
             
                                args: [PLATFORM_ID]
         
     | 
| 
         @@ -5586,6 +5616,7 @@ class ProductDescComponent extends BaseSection { 
     | 
|
| 
       5586 
5616 
     | 
    
         
             
                                this.isLoading = false;
         
     | 
| 
       5587 
5617 
     | 
    
         
             
                                this.responseData = response[0];
         
     | 
| 
       5588 
5618 
     | 
    
         
             
                                this.responseData.itemVariant.forEach((varient, idx) => {
         
     | 
| 
      
 5619 
     | 
    
         
            +
                                    varient.quantity = 0;
         
     | 
| 
       5589 
5620 
     | 
    
         
             
                                    Object.keys(varient.properties).forEach((varientKey) => {
         
     | 
| 
       5590 
5621 
     | 
    
         
             
                                        if (idx == 0)
         
     | 
| 
       5591 
5622 
     | 
    
         
             
                                            this.selectedVarient.set(varientKey, varient.properties[varientKey]);
         
     | 
| 
         @@ -5593,6 +5624,10 @@ class ProductDescComponent extends BaseSection { 
     | 
|
| 
       5593 
5624 
     | 
    
         
             
                                            this.varients.set(varientKey, [...(this.varients.get(varientKey) ?? []), varient.properties[varientKey]]);
         
     | 
| 
       5594 
5625 
     | 
    
         
             
                                    });
         
     | 
| 
       5595 
5626 
     | 
    
         
             
                                });
         
     | 
| 
      
 5627 
     | 
    
         
            +
                                const itemVariant = this.getItemVarient();
         
     | 
| 
      
 5628 
     | 
    
         
            +
                                if (itemVariant) {
         
     | 
| 
      
 5629 
     | 
    
         
            +
                                    this.responseData.itemImages = itemVariant.variantImages;
         
     | 
| 
      
 5630 
     | 
    
         
            +
                                }
         
     | 
| 
       5596 
5631 
     | 
    
         
             
                                console.log("Description", this.responseData?.name, this.responseData?.descriptor?.name);
         
     | 
| 
       5597 
5632 
     | 
    
         
             
                                this.titleService.setTitle(this.responseData?.name);
         
     | 
| 
       5598 
5633 
     | 
    
         
             
                                this.metaTagService.updateTag({ name: 'description', content: this.responseData?.descriptor?.name });
         
     | 
| 
         @@ -5603,8 +5638,18 @@ class ProductDescComponent extends BaseSection { 
     | 
|
| 
       5603 
5638 
     | 
    
         
             
                                        cartResponse.onsuccess = (cartData) => {
         
     | 
| 
       5604 
5639 
     | 
    
         
             
                                            this.USER_CART = cartData.target.result;
         
     | 
| 
       5605 
5640 
     | 
    
         
             
                                            this.USER_CART?.forEach((item) => {
         
     | 
| 
       5606 
     | 
    
         
            -
                                                if (item.itemId == productId)
         
     | 
| 
       5607 
     | 
    
         
            -
                                                    this.responseData. 
     | 
| 
      
 5641 
     | 
    
         
            +
                                                if (item.itemId == productId) {
         
     | 
| 
      
 5642 
     | 
    
         
            +
                                                    if (this.responseData.itemVariant.length > 0) {
         
     | 
| 
      
 5643 
     | 
    
         
            +
                                                        const itemVariant = this.getItemVarient();
         
     | 
| 
      
 5644 
     | 
    
         
            +
                                                        if (itemVariant && item.varientId == itemVariant.variantId) {
         
     | 
| 
      
 5645 
     | 
    
         
            +
                                                            itemVariant.quantity = item.quantity;
         
     | 
| 
      
 5646 
     | 
    
         
            +
                                                            this.responseData.quantity = item.quantity;
         
     | 
| 
      
 5647 
     | 
    
         
            +
                                                        }
         
     | 
| 
      
 5648 
     | 
    
         
            +
                                                    }
         
     | 
| 
      
 5649 
     | 
    
         
            +
                                                    else {
         
     | 
| 
      
 5650 
     | 
    
         
            +
                                                        this.responseData.quantity = item.quantity;
         
     | 
| 
      
 5651 
     | 
    
         
            +
                                                    }
         
     | 
| 
      
 5652 
     | 
    
         
            +
                                                }
         
     | 
| 
       5608 
5653 
     | 
    
         
             
                                            });
         
     | 
| 
       5609 
5654 
     | 
    
         
             
                                        };
         
     | 
| 
       5610 
5655 
     | 
    
         
             
                                    });
         
     | 
| 
         @@ -5612,8 +5657,18 @@ class ProductDescComponent extends BaseSection { 
     | 
|
| 
       5612 
5657 
     | 
    
         
             
                                        wishlistResponse.onsuccess = (whislistData) => {
         
     | 
| 
       5613 
5658 
     | 
    
         
             
                                            this.USER_WISHLIST = whislistData.target.result;
         
     | 
| 
       5614 
5659 
     | 
    
         
             
                                            this.USER_WISHLIST?.forEach((item) => {
         
     | 
| 
       5615 
     | 
    
         
            -
                                                if (item.itemId == productId)
         
     | 
| 
       5616 
     | 
    
         
            -
                                                    this. 
     | 
| 
      
 5660 
     | 
    
         
            +
                                                if (item.itemId == productId) {
         
     | 
| 
      
 5661 
     | 
    
         
            +
                                                    if (this.responseData.itemVariant.length > 0) {
         
     | 
| 
      
 5662 
     | 
    
         
            +
                                                        const itemVariant = this.getItemVarient();
         
     | 
| 
      
 5663 
     | 
    
         
            +
                                                        if (itemVariant && itemVariant.variantId == item.varientId) {
         
     | 
| 
      
 5664 
     | 
    
         
            +
                                                            itemVariant.wishlist = true;
         
     | 
| 
      
 5665 
     | 
    
         
            +
                                                            this.isItemAsFavorite = true;
         
     | 
| 
      
 5666 
     | 
    
         
            +
                                                        }
         
     | 
| 
      
 5667 
     | 
    
         
            +
                                                    }
         
     | 
| 
      
 5668 
     | 
    
         
            +
                                                    else {
         
     | 
| 
      
 5669 
     | 
    
         
            +
                                                        this.isItemAsFavorite = true;
         
     | 
| 
      
 5670 
     | 
    
         
            +
                                                    }
         
     | 
| 
      
 5671 
     | 
    
         
            +
                                                }
         
     | 
| 
       5617 
5672 
     | 
    
         
             
                                            });
         
     | 
| 
       5618 
5673 
     | 
    
         
             
                                        };
         
     | 
| 
       5619 
5674 
     | 
    
         
             
                                    });
         
     | 
| 
         @@ -5628,27 +5683,30 @@ class ProductDescComponent extends BaseSection { 
     | 
|
| 
       5628 
5683 
     | 
    
         
             
                selectVarient(key, value) {
         
     | 
| 
       5629 
5684 
     | 
    
         
             
                    this.selectedVarient.set(key, value);
         
     | 
| 
       5630 
5685 
     | 
    
         
             
                    this.responseData.itemVariant.forEach((varient) => {
         
     | 
| 
       5631 
     | 
    
         
            -
                        let foundVarient =  
     | 
| 
      
 5686 
     | 
    
         
            +
                        let foundVarient = true;
         
     | 
| 
       5632 
5687 
     | 
    
         
             
                        Object.keys(varient.properties).forEach((property) => {
         
     | 
| 
       5633 
     | 
    
         
            -
                            foundVarient = (this.selectedVarient.get(property) == varient.properties[property]);
         
     | 
| 
      
 5688 
     | 
    
         
            +
                            foundVarient = (this.selectedVarient.get(property) == varient.properties[property]) && foundVarient;
         
     | 
| 
      
 5689 
     | 
    
         
            +
                            console.log(this.selectedVarient.get(property), varient.properties[property]);
         
     | 
| 
       5634 
5690 
     | 
    
         
             
                        });
         
     | 
| 
      
 5691 
     | 
    
         
            +
                        console.log(foundVarient);
         
     | 
| 
       5635 
5692 
     | 
    
         
             
                        if (foundVarient) {
         
     | 
| 
       5636 
5693 
     | 
    
         
             
                            this.itemImages = varient.variantImages;
         
     | 
| 
       5637 
5694 
     | 
    
         
             
                            this.currentImg = this.itemImages[0]?.imgUrl;
         
     | 
| 
       5638 
5695 
     | 
    
         
             
                            this.responseData.price.value = varient.itemVariantPrice.value;
         
     | 
| 
       5639 
5696 
     | 
    
         
             
                            this.responseData.price.discountedPrice = varient.itemVariantPrice.discountedPrice;
         
     | 
| 
       5640 
5697 
     | 
    
         
             
                            this.responseData.price.sellingPrice = varient.itemVariantPrice.sellingPrice;
         
     | 
| 
       5641 
     | 
    
         
            -
                            this.responseData. 
     | 
| 
       5642 
     | 
    
         
            -
                            this. 
     | 
| 
      
 5698 
     | 
    
         
            +
                            this.responseData.itemInventory = varient.itemInventory;
         
     | 
| 
      
 5699 
     | 
    
         
            +
                            this.responseData.quantity = this.getVarientQuantity(varient);
         
     | 
| 
      
 5700 
     | 
    
         
            +
                            this.isItemAsFavorite = this.isVarientPresentInWishtlist(varient);
         
     | 
| 
       5643 
5701 
     | 
    
         
             
                        }
         
     | 
| 
       5644 
5702 
     | 
    
         
             
                    });
         
     | 
| 
       5645 
5703 
     | 
    
         
             
                }
         
     | 
| 
       5646 
5704 
     | 
    
         
             
                getItemVarient() {
         
     | 
| 
       5647 
5705 
     | 
    
         
             
                    let selectedVarient = null;
         
     | 
| 
       5648 
5706 
     | 
    
         
             
                    this.responseData.itemVariant?.forEach((varient) => {
         
     | 
| 
       5649 
     | 
    
         
            -
                        let foundVarient =  
     | 
| 
      
 5707 
     | 
    
         
            +
                        let foundVarient = true;
         
     | 
| 
       5650 
5708 
     | 
    
         
             
                        Object.keys(varient.properties).forEach((property) => {
         
     | 
| 
       5651 
     | 
    
         
            -
                            foundVarient = (this.selectedVarient.get(property) == varient.properties[property]);
         
     | 
| 
      
 5709 
     | 
    
         
            +
                            foundVarient = (this.selectedVarient.get(property) == varient.properties[property]) && foundVarient;
         
     | 
| 
       5652 
5710 
     | 
    
         
             
                        });
         
     | 
| 
       5653 
5711 
     | 
    
         
             
                        if (foundVarient)
         
     | 
| 
       5654 
5712 
     | 
    
         
             
                            selectedVarient = varient;
         
     | 
| 
         @@ -5683,6 +5741,12 @@ class ProductDescComponent extends BaseSection { 
     | 
|
| 
       5683 
5741 
     | 
    
         
             
                        return;
         
     | 
| 
       5684 
5742 
     | 
    
         
             
                    }
         
     | 
| 
       5685 
5743 
     | 
    
         
             
                    if (this.responseData.itemVariant?.length > 0) {
         
     | 
| 
      
 5744 
     | 
    
         
            +
                        const itemVarient = this.getItemVarient();
         
     | 
| 
      
 5745 
     | 
    
         
            +
                        if (itemVarient) {
         
     | 
| 
      
 5746 
     | 
    
         
            +
                            itemVarient.quantity = itemVarient.quantity + 1;
         
     | 
| 
      
 5747 
     | 
    
         
            +
                            this.responseData.quantity = itemVarient.quantity;
         
     | 
| 
      
 5748 
     | 
    
         
            +
                        }
         
     | 
| 
      
 5749 
     | 
    
         
            +
                        this.cartService.addItemToCart(this.responseData, itemVarient?.variantId);
         
     | 
| 
       5686 
5750 
     | 
    
         
             
                    }
         
     | 
| 
       5687 
5751 
     | 
    
         
             
                    else {
         
     | 
| 
       5688 
5752 
     | 
    
         
             
                        if (!this.responseData?.quantity)
         
     | 
| 
         @@ -5693,8 +5757,8 @@ class ProductDescComponent extends BaseSection { 
     | 
|
| 
       5693 
5757 
     | 
    
         
             
                        else {
         
     | 
| 
       5694 
5758 
     | 
    
         
             
                            this.responseData.quantity -= 1;
         
     | 
| 
       5695 
5759 
     | 
    
         
             
                        }
         
     | 
| 
      
 5760 
     | 
    
         
            +
                        this.cartService.addItemToCart(this.responseData);
         
     | 
| 
       5696 
5761 
     | 
    
         
             
                    }
         
     | 
| 
       5697 
     | 
    
         
            -
                    this.cartService.addItemToCart(this.responseData);
         
     | 
| 
       5698 
5762 
     | 
    
         
             
                }
         
     | 
| 
       5699 
5763 
     | 
    
         
             
                goToFilter(category) {
         
     | 
| 
       5700 
5764 
     | 
    
         
             
                    category = category.replaceAll(" ", "_");
         
     | 
| 
         @@ -5703,12 +5767,30 @@ class ProductDescComponent extends BaseSection { 
     | 
|
| 
       5703 
5767 
     | 
    
         
             
                addToFavourite() {
         
     | 
| 
       5704 
5768 
     | 
    
         
             
                    this.isItemAsFavorite = true;
         
     | 
| 
       5705 
5769 
     | 
    
         
             
                    this.messageService.add({ severity: 'success', summary: 'Success', detail: 'Item added to your wishlist', key: 'wishlist' });
         
     | 
| 
       5706 
     | 
    
         
            -
                     
     | 
| 
      
 5770 
     | 
    
         
            +
                    if (this.responseData.itemVariant?.length > 0) {
         
     | 
| 
      
 5771 
     | 
    
         
            +
                        const itemVarient = this.getItemVarient();
         
     | 
| 
      
 5772 
     | 
    
         
            +
                        if (itemVarient) {
         
     | 
| 
      
 5773 
     | 
    
         
            +
                            itemVarient.wishlist = true;
         
     | 
| 
      
 5774 
     | 
    
         
            +
                            this.cartService.addItemToFavourite(this.responseData, itemVarient.variantId);
         
     | 
| 
      
 5775 
     | 
    
         
            +
                        }
         
     | 
| 
      
 5776 
     | 
    
         
            +
                    }
         
     | 
| 
      
 5777 
     | 
    
         
            +
                    else {
         
     | 
| 
      
 5778 
     | 
    
         
            +
                        this.cartService.addItemToFavourite(this.responseData);
         
     | 
| 
      
 5779 
     | 
    
         
            +
                    }
         
     | 
| 
       5707 
5780 
     | 
    
         
             
                }
         
     | 
| 
       5708 
5781 
     | 
    
         
             
                removeToFavourite() {
         
     | 
| 
       5709 
5782 
     | 
    
         
             
                    this.isItemAsFavorite = false;
         
     | 
| 
       5710 
5783 
     | 
    
         
             
                    this.messageService.add({ severity: 'info', summary: 'Success', detail: 'Item removed from your wishlist', key: 'wishlist' });
         
     | 
| 
       5711 
     | 
    
         
            -
                     
     | 
| 
      
 5784 
     | 
    
         
            +
                    if (this.responseData.itemVariant?.length > 0) {
         
     | 
| 
      
 5785 
     | 
    
         
            +
                        const itemVarient = this.getItemVarient();
         
     | 
| 
      
 5786 
     | 
    
         
            +
                        if (itemVarient) {
         
     | 
| 
      
 5787 
     | 
    
         
            +
                            itemVarient.wishlist = false;
         
     | 
| 
      
 5788 
     | 
    
         
            +
                            this.cartService.removeItemFromFavourite(this.responseData.varientId);
         
     | 
| 
      
 5789 
     | 
    
         
            +
                        }
         
     | 
| 
      
 5790 
     | 
    
         
            +
                    }
         
     | 
| 
      
 5791 
     | 
    
         
            +
                    else {
         
     | 
| 
      
 5792 
     | 
    
         
            +
                        this.cartService.removeItemFromFavourite(this.responseData.varientId);
         
     | 
| 
      
 5793 
     | 
    
         
            +
                    }
         
     | 
| 
       5712 
5794 
     | 
    
         
             
                }
         
     | 
| 
       5713 
5795 
     | 
    
         
             
                getProductByCategory() {
         
     | 
| 
       5714 
5796 
     | 
    
         
             
                    this.restService.getProductByCategoryId(this.responseData?.itemCategorisation?.itemCategories?.[0]?.refId ?? "").subscribe((response) => {
         
     | 
| 
         @@ -5730,6 +5812,22 @@ class ProductDescComponent extends BaseSection { 
     | 
|
| 
       5730 
5812 
     | 
    
         
             
                getKeyByIdx(property, index) {
         
     | 
| 
       5731 
5813 
     | 
    
         
             
                    return Object.keys(property)[index];
         
     | 
| 
       5732 
5814 
     | 
    
         
             
                }
         
     | 
| 
      
 5815 
     | 
    
         
            +
                getVarientQuantity(productVarient) {
         
     | 
| 
      
 5816 
     | 
    
         
            +
                    let itemQuantity = 0;
         
     | 
| 
      
 5817 
     | 
    
         
            +
                    this.USER_CART?.forEach((item) => {
         
     | 
| 
      
 5818 
     | 
    
         
            +
                        if (productVarient.variantId == item.varientId)
         
     | 
| 
      
 5819 
     | 
    
         
            +
                            itemQuantity = item.quantity;
         
     | 
| 
      
 5820 
     | 
    
         
            +
                    });
         
     | 
| 
      
 5821 
     | 
    
         
            +
                    return itemQuantity;
         
     | 
| 
      
 5822 
     | 
    
         
            +
                }
         
     | 
| 
      
 5823 
     | 
    
         
            +
                isVarientPresentInWishtlist(productVarient) {
         
     | 
| 
      
 5824 
     | 
    
         
            +
                    let present = false;
         
     | 
| 
      
 5825 
     | 
    
         
            +
                    this.USER_WISHLIST?.forEach((item) => {
         
     | 
| 
      
 5826 
     | 
    
         
            +
                        if (productVarient.variantId == item.varientId)
         
     | 
| 
      
 5827 
     | 
    
         
            +
                            present = true;
         
     | 
| 
      
 5828 
     | 
    
         
            +
                    });
         
     | 
| 
      
 5829 
     | 
    
         
            +
                    return present;
         
     | 
| 
      
 5830 
     | 
    
         
            +
                }
         
     | 
| 
       5733 
5831 
     | 
    
         
             
                get isItemOutOfStock() {
         
     | 
| 
       5734 
5832 
     | 
    
         
             
                    return this.responseData.itemInventory.openingStock == 0;
         
     | 
| 
       5735 
5833 
     | 
    
         
             
                }
         
     | 
| 
         @@ -5974,12 +6072,21 @@ class ProductListComponent extends BaseSection { 
     | 
|
| 
       5974 
6072 
     | 
    
         
             
                    if (type == 'ADD') {
         
     | 
| 
       5975 
6073 
     | 
    
         
             
                        product.whislist = true;
         
     | 
| 
       5976 
6074 
     | 
    
         
             
                        this.messageService.add({ severity: 'success', summary: 'Wishlist', detail: 'Item added to your wishlist' });
         
     | 
| 
       5977 
     | 
    
         
            -
                         
     | 
| 
      
 6075 
     | 
    
         
            +
                        if (product.itemVariant.length) {
         
     | 
| 
      
 6076 
     | 
    
         
            +
                            const itemVarient = this.getItemVarient(product, product.varientId);
         
     | 
| 
      
 6077 
     | 
    
         
            +
                            if (itemVarient) {
         
     | 
| 
      
 6078 
     | 
    
         
            +
                                itemVarient.wishlist = true;
         
     | 
| 
      
 6079 
     | 
    
         
            +
                                this.cartService.addItemToFavourite(product, itemVarient.variantId);
         
     | 
| 
      
 6080 
     | 
    
         
            +
                            }
         
     | 
| 
      
 6081 
     | 
    
         
            +
                        }
         
     | 
| 
      
 6082 
     | 
    
         
            +
                        else {
         
     | 
| 
      
 6083 
     | 
    
         
            +
                            this.cartService.addItemToFavourite(product);
         
     | 
| 
      
 6084 
     | 
    
         
            +
                        }
         
     | 
| 
       5978 
6085 
     | 
    
         
             
                    }
         
     | 
| 
       5979 
6086 
     | 
    
         
             
                    else {
         
     | 
| 
       5980 
6087 
     | 
    
         
             
                        product.whislist = false;
         
     | 
| 
       5981 
6088 
     | 
    
         
             
                        this.messageService.add({ severity: 'info', summary: 'Wishlist', detail: 'Item removed from your wishlist' });
         
     | 
| 
       5982 
     | 
    
         
            -
                        this.cartService.removeItemFromFavourite(product);
         
     | 
| 
      
 6089 
     | 
    
         
            +
                        this.cartService.removeItemFromFavourite(product.varientId);
         
     | 
| 
       5983 
6090 
     | 
    
         
             
                    }
         
     | 
| 
       5984 
6091 
     | 
    
         
             
                    event.stopPropagation();
         
     | 
| 
       5985 
6092 
     | 
    
         
             
                }
         
     | 
| 
         @@ -5990,7 +6097,6 @@ class ProductListComponent extends BaseSection { 
     | 
|
| 
       5990 
6097 
     | 
    
         
             
                    }
         
     | 
| 
       5991 
6098 
     | 
    
         
             
                    product.quantity += (type == 'ADD' ? 1 : -1);
         
     | 
| 
       5992 
6099 
     | 
    
         
             
                    this.cartService.addItemToCart(product);
         
     | 
| 
       5993 
     | 
    
         
            -
                    // event.stopPropagation();
         
     | 
| 
       5994 
6100 
     | 
    
         
             
                }
         
     | 
| 
       5995 
6101 
     | 
    
         
             
                searchProduct() {
         
     | 
| 
       5996 
6102 
     | 
    
         
             
                    this.navigateFilter(this.sortBy ?? "lowestPrice");
         
     | 
| 
         @@ -6035,8 +6141,19 @@ class ProductListComponent extends BaseSection { 
     | 
|
| 
       6035 
6141 
     | 
    
         
             
                                this.USER_CART = cartData.target.result;
         
     | 
| 
       6036 
6142 
     | 
    
         
             
                                this.responseData?.forEach((product) => {
         
     | 
| 
       6037 
6143 
     | 
    
         
             
                                    this.USER_CART?.forEach((item) => {
         
     | 
| 
       6038 
     | 
    
         
            -
                                        if (item.itemId == product.itemId)
         
     | 
| 
       6039 
     | 
    
         
            -
                                            product. 
     | 
| 
      
 6144 
     | 
    
         
            +
                                        if (item.itemId == product.itemId) {
         
     | 
| 
      
 6145 
     | 
    
         
            +
                                            if (product.itemVariant.length > 0) {
         
     | 
| 
      
 6146 
     | 
    
         
            +
                                                const itemVarient = product.itemVariant[0];
         
     | 
| 
      
 6147 
     | 
    
         
            +
                                                if (itemVarient.variantId == item.varientId) {
         
     | 
| 
      
 6148 
     | 
    
         
            +
                                                    product.itemImages = itemVarient.variantImages ?? [];
         
     | 
| 
      
 6149 
     | 
    
         
            +
                                                    product.price = itemVarient.itemVariantPrice;
         
     | 
| 
      
 6150 
     | 
    
         
            +
                                                    product.quantity = item.quantity;
         
     | 
| 
      
 6151 
     | 
    
         
            +
                                                }
         
     | 
| 
      
 6152 
     | 
    
         
            +
                                            }
         
     | 
| 
      
 6153 
     | 
    
         
            +
                                            else {
         
     | 
| 
      
 6154 
     | 
    
         
            +
                                                product.quantity = item.quantity;
         
     | 
| 
      
 6155 
     | 
    
         
            +
                                            }
         
     | 
| 
      
 6156 
     | 
    
         
            +
                                        }
         
     | 
| 
       6040 
6157 
     | 
    
         
             
                                    });
         
     | 
| 
       6041 
6158 
     | 
    
         
             
                                });
         
     | 
| 
       6042 
6159 
     | 
    
         
             
                            };
         
     | 
| 
         @@ -6046,8 +6163,19 @@ class ProductListComponent extends BaseSection { 
     | 
|
| 
       6046 
6163 
     | 
    
         
             
                                this.USER_WISHLIST = whislistData.target.result;
         
     | 
| 
       6047 
6164 
     | 
    
         
             
                                this.responseData?.forEach((product) => {
         
     | 
| 
       6048 
6165 
     | 
    
         
             
                                    this.USER_WISHLIST?.forEach((item) => {
         
     | 
| 
       6049 
     | 
    
         
            -
                                        if (item.itemId == product.itemId)
         
     | 
| 
       6050 
     | 
    
         
            -
                                            product. 
     | 
| 
      
 6166 
     | 
    
         
            +
                                        if (item.itemId == product.itemId) {
         
     | 
| 
      
 6167 
     | 
    
         
            +
                                            if (product.itemVariant.length > 0) {
         
     | 
| 
      
 6168 
     | 
    
         
            +
                                                const itemVarient = product.itemVariant[0];
         
     | 
| 
      
 6169 
     | 
    
         
            +
                                                if (itemVarient.variantId == item.varientId) {
         
     | 
| 
      
 6170 
     | 
    
         
            +
                                                    product.itemImages = itemVarient?.variantImages ?? [];
         
     | 
| 
      
 6171 
     | 
    
         
            +
                                                    product.price = itemVarient.itemVariantPrice;
         
     | 
| 
      
 6172 
     | 
    
         
            +
                                                    product.whislist = true;
         
     | 
| 
      
 6173 
     | 
    
         
            +
                                                }
         
     | 
| 
      
 6174 
     | 
    
         
            +
                                            }
         
     | 
| 
      
 6175 
     | 
    
         
            +
                                            else {
         
     | 
| 
      
 6176 
     | 
    
         
            +
                                                product.whislist = true;
         
     | 
| 
      
 6177 
     | 
    
         
            +
                                            }
         
     | 
| 
      
 6178 
     | 
    
         
            +
                                        }
         
     | 
| 
       6051 
6179 
     | 
    
         
             
                                    });
         
     | 
| 
       6052 
6180 
     | 
    
         
             
                                });
         
     | 
| 
       6053 
6181 
     | 
    
         
             
                            };
         
     | 
| 
         @@ -6077,6 +6205,14 @@ class ProductListComponent extends BaseSection { 
     | 
|
| 
       6077 
6205 
     | 
    
         
             
                isItemOutOfStock(product) {
         
     | 
| 
       6078 
6206 
     | 
    
         
             
                    return product.itemInventory.openingStock == 0;
         
     | 
| 
       6079 
6207 
     | 
    
         
             
                }
         
     | 
| 
      
 6208 
     | 
    
         
            +
                getItemVarient(product, varientId) {
         
     | 
| 
      
 6209 
     | 
    
         
            +
                    let selectedVarient = null;
         
     | 
| 
      
 6210 
     | 
    
         
            +
                    product.itemVariant?.forEach((varient) => {
         
     | 
| 
      
 6211 
     | 
    
         
            +
                        if (varient.variantId == varientId)
         
     | 
| 
      
 6212 
     | 
    
         
            +
                            selectedVarient = varient;
         
     | 
| 
      
 6213 
     | 
    
         
            +
                    });
         
     | 
| 
      
 6214 
     | 
    
         
            +
                    return selectedVarient;
         
     | 
| 
      
 6215 
     | 
    
         
            +
                }
         
     | 
| 
       6080 
6216 
     | 
    
         
             
                get isMobile() {
         
     | 
| 
       6081 
6217 
     | 
    
         
             
                    return window.innerWidth < 475;
         
     | 
| 
       6082 
6218 
     | 
    
         
             
                }
         
     | 
| 
         @@ -7536,7 +7672,7 @@ class Product { 
     | 
|
| 
       7536 
7672 
     | 
    
         
             
                constructor(json) {
         
     | 
| 
       7537 
7673 
     | 
    
         
             
                    this.itemId = json?.["itemId"];
         
     | 
| 
       7538 
7674 
     | 
    
         
             
                    this.storeId = json?.["storeId"];
         
     | 
| 
       7539 
     | 
    
         
            -
                    this.varientId = json?.[" 
     | 
| 
      
 7675 
     | 
    
         
            +
                    this.varientId = json?.["itemId"];
         
     | 
| 
       7540 
7676 
     | 
    
         
             
                    this.name = json?.["name"];
         
     | 
| 
       7541 
7677 
     | 
    
         
             
                    this.itemCategorisation = json?.["itemCategorisation"];
         
     | 
| 
       7542 
7678 
     | 
    
         
             
                    this.itemInventory = json?.["itemInventory"];
         
     | 
| 
         @@ -7558,6 +7694,12 @@ class Product { 
     | 
|
| 
       7558 
7694 
     | 
    
         
             
                    this.prviewIdx = 0;
         
     | 
| 
       7559 
7695 
     | 
    
         
             
                    this.quantity = json?.["quantity"] ?? 0;
         
     | 
| 
       7560 
7696 
     | 
    
         
             
                    this.whislist = false;
         
     | 
| 
      
 7697 
     | 
    
         
            +
                    if (this.itemVariant.length > 0) {
         
     | 
| 
      
 7698 
     | 
    
         
            +
                        this.itemImages = this.itemVariant[0].variantImages;
         
     | 
| 
      
 7699 
     | 
    
         
            +
                        this.price = this.itemVariant[0].itemVariantPrice;
         
     | 
| 
      
 7700 
     | 
    
         
            +
                        this.varientId = this.itemVariant[0].variantId;
         
     | 
| 
      
 7701 
     | 
    
         
            +
                        this.itemInventory = this.itemVariant[0].itemInventory;
         
     | 
| 
      
 7702 
     | 
    
         
            +
                    }
         
     | 
| 
       7561 
7703 
     | 
    
         
             
                }
         
     | 
| 
       7562 
7704 
     | 
    
         
             
            }
         
     | 
| 
       7563 
7705 
     | 
    
         |