Controlling Humidity and Why It’s Important For Mushroom Cultivation
Mushrooms love moisture. It’s one of their defining traits and is an emblem of their biology. Even those who know nothing about them inherently know their affinity for appearing in wet conditions.
Almost every part of the mushroom life cycle depends on moisture availability, from the germination of spores to the growth of mycelium and the production of the mushroom fruiting body. Indeed, mushrooms are about 80-90% water and can’t grow without it.
That is why managing moisture, particularly in the form of humidity during fruiting, is a fundamental part of mushroom cultivation. Growers must foster the moist and humid growing conditions in which mushrooms naturally fruit so that they develop correctly, even if the natural conditions aren’t ideal.
In this article, we’ll discuss the importance of controlling humidity during the fruiting stage of mushroom cultivation. While we’ll briefly touch on numerous aspects of environmental control, humidity is this text's big topic of discussion. We highly recommend you look at our Introduction To Fruiting article before reading this one to get a whole scope on the subject.
Why is Humidity Important in Mushroom Cultivation?
While mushrooms require moisture during every step of their growth, it is only during the fruiting stage that growers may need to monitor and control humidity levels. This is because mushroom fruiting bodies are extremely sensitive to humidity and depend on high moisture levels in the air to develop correctly.
Outcomes Of Humidity Levels On Mushroom Growth
Low Humidity: Shriveled, undersized, cracked, or improperly developed mushrooms. Small pins may dry out and fail to mature.
Good Humidity: Mushrooms swell and grow as they passively absorb moisture into their tissues, developing properly.
Excessive Humidity: Condensation or misting can cause bacterial blotches, which appear as slimy, discolored patches on mushroom caps.
Understanding Relative Humidity
While humidity can easily be defined as the amount of moisture in the air, it is important to understand Relative Humidity (RH). Relative humidity is how saturated the air is with water. At 100% humidity, the air can no longer hold moisture, and water droplets form, while at 0%, there is absolutely no moisture in the air.
The air has a different capacity to hold moisture depending on air temperature. Warmer air is rich in energy and thus can hold more water, while cold air holds little. This means if temperatures rise, the relative humidity decreases as the air's capacity to hold more moisture increases. Likewise, when air temperatures drop, RH tends to increase. This is the same reason water condenses on a cold glass of lemonade on a warm day.
While we won’t be going into vast detail explaining RH, I will emphasize that it’s a good concept to understand if you’re planning on doing any sort of environmental controls. There are tons of videos, such as this one, that do a great job explaining this with visual aids.
Ideal Humidity Levels For Mushroom Cultivation
Every mushroom species is distinct and has its own tolerance range to humidity levels. This said, anywhere from 80 to 99% relative humidity is generally considered ideal during fruiting. Generally speaking, mushrooms with a “tougher” texture like Reishi and Turkey Tail tend to handle lower humidity levels, while mushrooms that are more “tender” and fleshy like Lion's Mane require higher humidity levels.
95-100% During Pinning: To stimulate the production of pins, levels between 95 and 100% relative humidity are ideal. This encourages pinning and allows the mushrooms to begin developing properly.
80-95% During Fruiting Body Development: After properly developing pins, relative humidity between 80% and 95% is ideal. This provides sufficient moisture for the development of luscious fruiting bodies while reducing the potential negative side effects of excessive moisture.
Moderate Humidity Needs These species still prefer 80-90% RH, but can tolerate dips to about 70%. Their tolerance may vary depending on strain.
Reishi (Ganoderma lucidum)
Turkey Tail (Trametes versicolor)
Maitake (Grifola frondosa)
Oyster (Pleurotus ostreatus)
Shiitake (Lentinula edodes)
High Humidity Needs
These species have a low tolerance to dips in RH and require 80-90% RH for proper development.
Lion's Mane (Hericium erinaceus)
Chestnut (Pholiota adiposa)
Enoki (Flammulina velutipes)
King Oyster (Pleurotus eryngii)
Controlling Humidity
Controlling environmental conditions usually entails utilizing a confined space in which you are able to manipulate and maintain a desired temperature and humidity level. This can be done on the small scale with fruiting chambers or monotubs, or on a larger scale in grow rooms and tents. No matter your infrastructure, scale, or level of investment, there are different ways to approach the challenge of creating a proper growth environment.
Methods For Managing Humidity
There are numerous ways growers manage humidity and create ideal conditions for fruiting. These typically involve providing an enclosed space where moisture and temperature can be easily regulated. In some climates or during certain times of the year, environmental conditions can allow outdoor cultivation.
Small Scale: Fruiting chambers and monotubs allow for a small production without the need for heavy investment. They easily fit in a shelf or under a table, so they’re great for those with limited space. We talk more about them in our introduction to fruiting article.
Medium Scale: Martha tents are small and great for hobby growers wanting a slightly larger production. These are essentially a shelf that is enclosed like a greenhouse fitted with a humidifier and other environmental controls.
Larger Scale: Growers with a small commercial production will want to have a dedicated space for fruiting their mushrooms. These can be grow rooms or larger grow tents that are fitted with humidifiers, temperature control, and fresh air intake.
Monitoring Humidity With A Hygrometer
Monitoring humidity can be incredibly useful when setting up a fruiting environment for your mushrooms. Hygrometers are special tools that enable growers simple and reliable ways to track humidity levels. They are also relatively inexpensive (about $20-30) making them a worthwhile investment, even for small growers.
Hygrometers work by measuring the amount of moisture in the air and displaying it as a percentage of relative humidity (RH). Many models include built-in thermometers to monitor temperature and RH simultaneously, which is essential because temperature directly affects RH, as explained earlier.
How To Use A Hygrometer
To use a hygrometer you must properly place it in the growing space close to your mushrooms. Some may have external sensors attached to a cable, while others have it internal. Consider that in large spaces humidity and temperature can vary greatly, especially towards the walls and at different elevations. Larger grows may require multiple hygrometers.
Once placed, check readings regularly and make sure you are achieving ideal conditions. Many digital hygrometers also feature memory functions, recording the highest and lowest humidity levels within a set period. This can be incredibly useful for identifying trends or spotting potential times of day when you’re set up may need adjusting.
To ensure long-term accuracy, it’s important to periodically calibrate the device. Most high-quality hygrometers include instructions for recalibration, which usually involves a salt solution or other reference method. We’ve had great experiences with the 2-in-1 model we offer in our shop.
Humidifiers and How To Use Them
Humidifiers are effective tools for cultivating mushrooms because they create the high humidity levels that mushrooms need to thrive. They work by routinely adding moisture to the air and preventing it from drying. They come in many sizes suitable for different contexts.
Ultrasonic humidifiers are a favorite amongst mushroom growers and allow you to achieve RH of 95% or higher. They utilize a vibrating disc to vaporize water droplets and create a fine mist. Many humidifiers also come with sensors and controls that allow the humidity to be regulated, while some may require an additional humidity controller.
Setting Your Humidity Control
Humidity controls allow for automation of your humidification system, ensuring your humidity levels stay within an ideal range. This prevents your growing space from drying out or getting too moist. These are integrated within most modern humidifiers interface, although some systems may require an additional regulator.
Humidity controls work by setting a maximum and minimum humidity level. The humidifiers then increase RH until it reaches the maximum and only turn on again once it reaches the minimum. In some controls it may be displayed as an allowable humidity difference, instead of a minimum. For example, most species like Oyster and Lion's Mane do great with the maximum set at 95% and the minimum set at 85%, or a humidity difference of 10%.
Providing at least a 10% humidity difference is ideal for fruiting, as it allows for partial drying that can prevent bacterial blotch and other contaminants. If you notice signs of excess moisture, you may want to consider increasing this humidity difference.
Other Things To Consider
Place the humidifier where it can distribute moisture evenly. Avoid having it pointed directly at the mushroom fruiting bodies as this can cause condensation.
Utilize distilled or demineralized water to prevent mineral build up of the humidifier, which can impede its functioning.
Clean the humidifier regularly as they can harbor potentially harmful microorganisms.
Choose the right humidifier for your context. Small humidifiers work great for martha tents or small spaces, while larger humidifiers will be needed for larger spaces.
Other Techniques To Increase Humidity
While humidifiers are usually the best solution for controlling humidity, there are other low-tek options.
Spray bottles can help improve growth for those with just a single or a couple of fruiting blocks. Simply spray the mushroom a couple of times a day, with enough time in between to allow for drying. You can also spray the surrounding environment to help maintain humidity levels in the ambient environment.
In some cases, you may be able to maintain humidity levels by wetting the cultivation space. If your fruiting area permits, you can wet the walls and floors to promote evaporation and increase humidity. While it can help increase the RH in the environment, it is much less reliable than utilizing other methods.
Conclusion
Properly managing humidity is essential for successful mushroom cultivation, and with the right tools and a bit of preparation, creating an ideal growing environment can be straightforward. We highly recommend you check out our introductory series on mushroom cultivation if you haven’t yet, with the introduction to fruiting article being the most relevant for this topic.
Choosing a selection results in a full page refresh.
(() => {
const executeDynamicBundleBlock = ({ blockElement, productId = null, isCustomPage = false }) => {
const babBundles = [{"id":26954,"shop":"44b924-2.myshopify.com","name":"Buy 4 and Save","description":null,"status":"ACTIVE","customerIncludeTags":null,"discountType":"NO_DISCOUNT","discountValue":null,"products":"null","variants":"[{\"productId\":7552247464075,\"variantId\":42775340810379,\"name\":\"Shiitake Mushroom Grow Kit \",\"productHandle\":\"shiitake-mushroom-grow-kit\",\"imageSrc\":\"https://cdn.shopify.com/s/files/1/0613/8858/7147/files/RMS-Shiitake-RTF-1040x_1.png?v=1749841422\",\"quantity\":1,\"price\":\"20.00\",\"status\":\"ACTIVE\",\"productTitle\":\"Shiitake Mushroom Grow Kit\",\"variantTitle\":null,\"isMandatory\":false,\"preSelected\":false,\"minQuantity\":null,\"maxQuantity\":null},{\"productId\":7894295740555,\"variantId\":43907461382283,\"name\":\"Yellow Oyster Mushroom Grow Kit \",\"productHandle\":\"yellow-oyster-mushroom-grow-kit\",\"imageSrc\":\"https://cdn.shopify.com/s/files/1/0613/8858/7147/files/RMS-yellow-oyster-RTF-1040x3.png?v=1756509731\",\"quantity\":1,\"price\":\"20.00\",\"status\":\"ACTIVE\",\"productTitle\":\"Yellow Oyster Mushroom Grow Kit\",\"variantTitle\":null,\"isMandatory\":false,\"preSelected\":false,\"minQuantity\":null,\"maxQuantity\":null},{\"productId\":7581912760459,\"variantId\":42874309214347,\"name\":\"Pink Oyster Mushroom Grow Kit \",\"productHandle\":\"pink-oystermushroom-grow-kit\",\"imageSrc\":\"https://cdn.shopify.com/s/files/1/0613/8858/7147/files/RMS-PinkOyster-RTF-1040x.png?v=1745960033\",\"quantity\":1,\"price\":\"20.00\",\"status\":\"ACTIVE\",\"productTitle\":\"Pink Oyster Mushroom Grow Kit\",\"variantTitle\":null,\"isMandatory\":false,\"preSelected\":false,\"minQuantity\":null,\"maxQuantity\":null},{\"productId\":7552254115979,\"variantId\":42775358472331,\"name\":\"Lion's Mane Mushroom Grow Kit \",\"productHandle\":\"lions-mane-mushroom-grow-kit\",\"imageSrc\":\"https://cdn.shopify.com/s/files/1/0613/8858/7147/files/RMS-LionsMane-RTF-1040x_1.png?v=1746744447\",\"quantity\":1,\"price\":\"20.00\",\"status\":\"ACTIVE\",\"productTitle\":\"Lion's Mane Mushroom Grow Kit\",\"variantTitle\":null,\"isMandatory\":false,\"preSelected\":false,\"minQuantity\":null,\"maxQuantity\":null},{\"productId\":7858861670539,\"variantId\":43664328523915,\"name\":\"Mushroom Grow Kit Bundle \",\"productHandle\":\"mushroom-grow-kit-bundle\",\"imageSrc\":\"https://cdn.shopify.com/s/files/1/0613/8858/7147/files/RMS-PinkOyster-RTF-1040x.png?v=1745960033\",\"quantity\":1,\"price\":\"50.00\",\"status\":\"DRAFT\",\"productTitle\":\"Mushroom Grow Kit Bundle\",\"variantTitle\":null,\"isMandatory\":false,\"preSelected\":false,\"minQuantity\":null,\"maxQuantity\":null}]","sequenceNo":null,"bundleType":"CLASSIC_BUILD_A_BOX","settings":"{\"enableAnnouncementBar\":true}","bundleProductId":null,"bundleVariantId":null,"productHandle":null,"discountId":null,"price":null,"numberOfProducts":0,"subscriptionBundlingEnabled":false,"subscriptionId":null,"minProductCount":4,"maxProductCount":null,"uniqueRef":"tfvhvgezok","bundleRedirect":"CART","customRedirectURL":null,"minOrderAmount":null,"tieredDiscount":null,"productViewStyle":"QUICK_ADD","singleProductSettings":"null","trackInventory":false,"sellingPlanType":"BUNDLE_LEVEL","clearCart":"ENABLED","minPrice":null,"maxPrice":null,"externalBuildABoxId":null,"variantVisibilityType":"SHOW_VARIANTS_AS_INDIVIDUAL","subTitle":null,"freeShipping":true,"themeType":"THEME_TWO","showBundleInProductPage":true,"combinedWithProductDiscount":true,"combinedWithShippingDiscount":true,"combinedWithOrderDiscount":true,"allowedTags":null,"restrictTags":null,"selectionType":"FLEXIBLE","bundleHtml":"null","discountedVariants":"null","allowedCountries":null,"appliesOn":"BOTH","purchaseRequirement":"NO_REQUIREMENT","productDiscountType":"EACH_PRODUCT","countrySelectionType":"ALL_COUNTRY","discountApplyApproach":"SHOPIFY_DISCOUNT_FUNCTION","discountedProductChooseType":"CHOOSE_ALL","internalName":"Mushroom Grow Kit Bundle","sections":"[{\"id\":1,\"name\":\"\",\"description\":\"\",\"minProductCount\":0,\"maxProductCount\":0,\"variants\":[]}]","limitToUsePerCustomer":null,"discountedVariantSelectionLimit":null,"hideOneTimePurchase":false,"hideSubscriptionPurchase":false,"maxOrderAmount":null,"collectionData":null,"productSelectionType":"PRODUCT","tag":"appstle_bundles","productChooseType":"CHOOSE_ALL","variantSelectionLimit":null,"discountTargetType":"PRODUCT","enableSubscription":false,"subscriptionWidgetPosition":"BELOW","subscribeTitle":"Subscribe and Save","subscribeSubtitle":"Delivered Monthly","subscriptionPreselected":false,"getYAppliesOn":"BOTH","announcementBarMessage":null,"automaticDiscountNodeId":"gid://shopify/DiscountAutomaticNode/1530271563915","recurringCycleLimit":0},{"id":26957,"shop":"44b924-2.myshopify.com","name":"Mushroom Grow Kit Bundle","description":"Mix and match to save - save additional when you subscribe. ","status":"ACTIVE","customerIncludeTags":null,"discountType":"NO_DISCOUNT","discountValue":null,"products":"[{\"productId\":7552254115979,\"variantId\":null,\"price\":null,\"name\":\"Lion's Mane Mushroom Grow Kit\",\"productHandle\":\"lions-mane-mushroom-grow-kit\",\"imageSrc\":\"https://cdn.shopify.com/s/files/1/0613/8858/7147/files/RMS-LionsMane-RTF-1040x_1.png?v=1746744447\",\"quantity\":1,\"status\":\"ACTIVE\",\"options\":[]},{\"productId\":7581912760459,\"variantId\":null,\"price\":null,\"name\":\"Pink Oyster Mushroom Grow Kit\",\"productHandle\":\"pink-oystermushroom-grow-kit\",\"imageSrc\":\"https://cdn.shopify.com/s/files/1/0613/8858/7147/files/RMS-PinkOyster-RTF-1040x.png?v=1745960033\",\"quantity\":1,\"status\":\"ACTIVE\",\"options\":[]},{\"productId\":7552247464075,\"variantId\":null,\"price\":null,\"name\":\"Shiitake Mushroom Grow Kit\",\"productHandle\":\"shiitake-mushroom-grow-kit\",\"imageSrc\":\"https://cdn.shopify.com/s/files/1/0613/8858/7147/files/RMS-Shiitake-RTF-1040x_1.png?v=1749841422\",\"quantity\":1,\"status\":\"ACTIVE\",\"options\":[]},{\"productId\":7894295740555,\"variantId\":null,\"price\":null,\"name\":\"Yellow Oyster Mushroom Grow Kit\",\"productHandle\":\"yellow-oyster-mushroom-grow-kit\",\"imageSrc\":\"https://cdn.shopify.com/s/files/1/0613/8858/7147/files/RMS-yellow-oyster-RTF-1040x3.png?v=1756509731\",\"quantity\":1,\"status\":\"ACTIVE\",\"options\":[]}]","variants":"[]","sequenceNo":null,"bundleType":"CLASSIC","settings":"{\"enableAnnouncementBar\":true}","bundleProductId":7934763892875,"bundleVariantId":null,"productHandle":"mushroom-grow-kit-bundle-1","discountId":null,"price":null,"numberOfProducts":0,"subscriptionBundlingEnabled":false,"subscriptionId":null,"minProductCount":null,"maxProductCount":null,"uniqueRef":"fn7jhv9hf8","bundleRedirect":"CART","customRedirectURL":null,"minOrderAmount":null,"tieredDiscount":null,"productViewStyle":"QUICK_ADD","singleProductSettings":null,"trackInventory":false,"sellingPlanType":"BUNDLE_LEVEL","clearCart":"ENABLED","minPrice":80.0,"maxPrice":80.0,"externalBuildABoxId":null,"variantVisibilityType":"SHOW_VARIANTS_AS_INDIVIDUAL","subTitle":null,"freeShipping":false,"themeType":"THEME_TWO","showBundleInProductPage":true,"combinedWithProductDiscount":true,"combinedWithShippingDiscount":true,"combinedWithOrderDiscount":true,"allowedTags":null,"restrictTags":null,"selectionType":"FLEXIBLE","bundleHtml":null,"discountedVariants":null,"allowedCountries":null,"appliesOn":"BOTH","purchaseRequirement":"NO_REQUIREMENT","productDiscountType":"EACH_PRODUCT","countrySelectionType":"ALL_COUNTRY","discountApplyApproach":"SHOPIFY_DISCOUNT_FUNCTION","discountedProductChooseType":"CHOOSE_ALL","internalName":"Mushroom Grow Kit Bundle - Classic","sections":"[{\"id\":1,\"name\":\"\",\"description\":\"\",\"minProductCount\":0,\"maxProductCount\":0,\"variants\":[]}]","limitToUsePerCustomer":null,"discountedVariantSelectionLimit":null,"hideOneTimePurchase":false,"hideSubscriptionPurchase":false,"maxOrderAmount":null,"collectionData":null,"productSelectionType":"PRODUCT","tag":"appstle_bundles","productChooseType":"CHOOSE_ALL","variantSelectionLimit":null,"discountTargetType":"PRODUCT","enableSubscription":false,"subscriptionWidgetPosition":"BELOW","subscribeTitle":"Subscribe and Save","subscribeSubtitle":"Delivered Monthly","subscriptionPreselected":false,"getYAppliesOn":"BOTH","announcementBarMessage":null,"automaticDiscountNodeId":null,"recurringCycleLimit":0}];
window['isAppstleBuildABox'] = true;
window.sessionStorage.setItem('external-bundle-token', window.appstle_bundle_external_token);
const referenceBundle = blockElement.getAttribute('ref') || null;
const baseFilteredBundles = Array.isArray(babBundles) && babBundles?.length > 0 && babBundles.filter((rule) => {
if(!isCustomPage) {
rule.themeType = 'THEME_TWO';
}
if (rule?.bundleType === 'CLASSIC_BUILD_A_BOX' && rule?.status === 'ACTIVE' && (rule?.showBundleInProductPage === true || isCustomPage)) {
try {
const variants = JSON.parse(rule?.variants || '[]');
if(productId) return variants.some((variant) => parseInt(variant?.productId) === parseInt(productId));
if(!productId) return true;
} catch (e) {
console.error('Failed to parse JSON:', e);
return false;
}
}
return false;
}) || [];
const filteredBundles = isCustomPage && referenceBundle ? baseFilteredBundles?.filter(rule => rule?.uniqueRef === referenceBundle) : baseFilteredBundles;
if (filteredBundles?.length > 0 && blockElement) {
const link = document.createElement('link');
link.rel = 'stylesheet';
link.href = "https://bundles-admin.appstle.com/content/build-a-box.css?v=1760355692209";
document.head.appendChild(link);
const script = document.createElement('script');
script.async = true;
script.src = "https://bundles-admin.appstle.com/app/build-a-box.bundle.js?v=1760355692209";
document.head.appendChild(script);
filteredBundles.forEach((rule) => {
const bundleDiv = document.createElement('div');
const uniqueRef = rule?.uniqueRef;
bundleDiv.setAttribute('appstle-dynamic-bundle-unique-reference', uniqueRef);
bundleDiv.className = isCustomPage ? `appstleBundlesCustomPage appstleCustomPageDynamicBundle-${uniqueRef}` : `appstleBundlesProductPage appstleDynamicBundle-${uniqueRef}`;
blockElement.appendChild(bundleDiv);
const appBlockDiv = document.querySelector(isCustomPage ? 'div[data-block-handle="appstle-bundle-dynamic-pricing-custom-page"]' : 'div[data-block-handle="appstle-bundle-product-page-build-a-box"]');
if (appBlockDiv) {
appBlockDiv.appendChild(blockElement);
}
});
}
};
const executeDynamicBundleLogic = () => {
const productId = "";
const blockElement = document.getElementById('dynamic-pricing-bundle-product-page');
const blockElements = document.querySelectorAll('.ab-dynamic-bundle-custom-placement-selector');
if (blockElement && productId) {
blockElement.classList.add(`product-id-${productId}`);
executeDynamicBundleBlock({ blockElement, productId, isCustomPage: false });
}
if (blockElements && blockElements.length > 0) {
blockElements.forEach((element) => {
const productId = element?.getAttribute('data-product-id');
element.classList.add(`product-id-${productId}`);
executeDynamicBundleBlock({ blockElement: element, productId, isCustomPage: false });
});
}
const customPageBlockElement = document.getElementById('dynamic-pricing-bundle-custom-page');
if (customPageBlockElement) executeDynamicBundleBlock({ blockElement: customPageBlockElement, productId: null, isCustomPage: true });
}
document.addEventListener('DOMContentLoaded', executeDynamicBundleLogic);
})();
document.addEventListener('DOMContentLoaded', () => {
const bundleSettings = {"id":11213,"shop":"44b924-2.myshopify.com","showOnProductPage":null,"selector":null,"placement":"AFTER","customCss":null,"customizeBundleOptionType":"RADIO","buyButtonSelector":null,"labels":"{\"productDiscountCombinedWithOrderDiscount\":true,\"bundleListViewDetailsButtonLabel\":\"View Details\",\"topBarFixedDiscountTitlePostfix\":\"{{currency}}{{discount}} off on shipping\",\"requiredLoginValidationLabel\":\"Please log in to purchase this bundle!\",\"volumeDiscountTypeLabel\":\"Volume Discount\",\"loginAlertLinkLabel\":\"Click here to login\",\"includedSubscriptionPlans\":\"\",\"breadCrumbProductsLabel\":\"Choose Products\",\"enableClassicBundleRecreation\":true,\"emptyProductImage\":\"https://cdn.shopify.com/s/files/1/0661/9224/4900/files/EmptyImage.jpg?v=1718447038\",\"reviewOrderInfoLabel\":\"\",\"productDiscountCombinedWithProductDiscount\":true,\"bundleMaximumQuantityLabel\":\"Add maximum up to {{maximum_quantity}} product\",\"volumeDiscountAppliesOnOneTimePurchase\":true,\"productAddToBundleLabel\":\"Add\",\"defaultSelectedPurchaseOptionSwitch\":\"ONE_TIME\",\"breadCrumbReviewBundleLabel\":\"Review Bundle\",\"enableScrollingToBundleSection\":true,\"orderNoteLabel\":\"Order Note\",\"showProductPerPage\":50,\"dynamicBundleDiscountCombinedWithShippingDiscount\":true,\"hidePurchaseOptionSelectLabel\":false,\"showPriceAsDecimals\":false,\"fixedDiscountText\":\"Enjoy a fixed discount of {{currency}}{{discount_value}} on your purchase!\",\"sectionTotalLabel\":\"Section Total\",\"fieldDisabledBackgroundColor\":\"#D1D5DB\",\"enableShippingDiscountBar\":false,\"bundleTotalLabel\":\"Total\",\"disableRefreshSellingPlan\":false,\"checkInventoryQuantity\":false,\"showSubscriptionPlanDescription\":false,\"disableProductDescription\":false,\"fixedPricingBundleTypeLabel\":\"Fixed Pricing Bundle\",\"subscriptionAvailableLabel\":\"Subscription Available\",\"excludeSubscriptionPlans\":\"\",\"readLessText\":\"Read Less\",\"buyXGetYDiscountAppliesOnSubscription\":true,\"shippingDiscountLabel\":\"{{discount}}{{discount_type}} Shipping Discount\",\"selectedGiftProductProgressLabelText\":\"{{selected_product_quantity}} gift products added. The required quantity is {{required_product_quantity}}.\",\"disableFitImage\":false,\"secondaryTextColor\":\"#ffffff\",\"bundleProductsQuantityLabel\":\"{{quantity}}x quantity\",\"buyXGetYDiscountCombinedWithProductDiscount\":true,\"tieredDiscountLabel\":\"{{discount_amount}}{{discount_type}} Discount\",\"buyXGetYQuantityValidationLabel\":\"Add {{product_quantity}} quantities of the gift product (Get Y)\",\"primaryTextColor\":\"#000000\",\"modalOpenOnAddToCart\":true,\"notApplicableForSubscribeAndSaveNotificationTitle\":\"Not applicable for subscribe & save\",\"customSignInLink\":\"\",\"productDiscountAppliesOnOneTimePurchase\":true,\"topBarDiscountUnlockTitlePrefix\":\"You've unlocked \",\"loginAlertTextLabel\":\"You need to login to purchase this bundle.\",\"buyXGetYChooseProductLabel\":\"Choose Product\",\"chooseAPlanLabel\":\"Choose Plan\",\"singleParentProductDirectRedirectToChildProducts\":true,\"buyXGetYFixedDiscountText\":\"Enjoy a fixed discount of {{discount_value}} {{currency}}\",\"primaryColor\":\"#000000\",\"buyXGetYGiftProductPriceVisibilityType\":\"UNIT_PRICE\",\"shippingDiscountRecurringCycleLimit\":0,\"volumeDiscountVariantSelectLabel\":\"Denominations\",\"chooseSourceProductValidationLabel\":\"Please choose source product!\",\"shippingDiscountAppliesOnSubscription\":true,\"volumeDiscountSpentAmountRewardsLabel\":\"Spend {{currency}}{{spent_amount}} and get {{discount}}{{discount_type}} discount!\",\"hideBundleToastNotification\":false,\"classicBundleTypeLabel\":\"Classic Bundle\",\"volumeDiscountRecurringCycleLimit\":0,\"bundleListDescription\":\"Explore our Bundles and Discounted Pricing and enjoy exclusive discounts when you buy products together\",\"getYNoProductSelectedLabel\":\"No gift product selected (Get Y)\",\"hideVariantSelectLabel\":false,\"availableOnlySubscriptionLabel\":\"Available Only On Subscription\",\"enableParentProductDetailButton\":false,\"bundleListTitle\":\"List of Bundles and Discounted Pricing\",\"chooseAssociatedProductsValidationLabel\":\"Please choose associated products!\",\"selectedSourceProductLabel\":\"Selected\",\"enableBuyXGetYWidgetMergeAsOptions\":false,\"volumeDiscountNextApplicableSpentAmountRewardsLabel\":\"Spend {{spent_amount}}{{currency}} get {{discount}}{{discount_type}}\",\"sectionNoProductSelectedValidationLabel\":\"No product selected for: {{section_name}}!\",\"bundlePageBackgroundColor\":\"#FAFAF9\",\"showVendorName\":false,\"buyXQuantityValidationLabel\":\"Add {{product_quantity}} quantities of the product (Bux X)\",\"sectionMaximumQuantityValidationLabel\":\"Maximum quantity not selected for: {{section_name}}!\",\"enableMaxDiscountCap\":false,\"enableVolumeDiscountBar\":false,\"volumeAmountDiscountSaveRewardsLabel\":\"Save {{currency}}{{discount}}!\",\"sectionLabel\":\"Section\",\"disabledTextColor\":\"#6B7280\",\"primaryHoverColor\":\"#000000\",\"shippingDiscountCombinedWithOrderDiscount\":true,\"defaultDiscountBarMessage\":\"Welcome to our store\",\"enableBundleProductFilter\":false,\"buyXGetYDiscountCombinedWithOrderDiscount\":true,\"bundleSubtotalLabel\":\"Subtotal\",\"reviewOrderDescription\":\"Check your items and select your required frequency plan\",\"dynamicBundleDiscountCombinedWithOrderDiscount\":true,\"volumeDiscountSaveRewardsLabel\":\"Save {{discount}}{{discount_type}}!\",\"addingProductsToBundle\":\"Adding products to bundle\",\"buyXGetYMergedWidgetTitle\":\"Select Buy X Get Y Discount\",\"bundleModalHeaderLabel\":\"Your Bundle({{total_quantity}})\",\"productAddedToBundleNotificationDescription\":\"{{product_title}} added to bundle.\",\"dynamicBundleDiscountAppliesOnSubscription\":true,\"productDiscountTypeLabel\":\"Product Discount\",\"bundleTopHtml\":\"\",\"proceedToCheckoutButtonText\":\"\",\"defaultSelectedPurchaseOption\":\"ONE_TIME\",\"showDraftProduct\":false,\"switchSubscriptionLabel\":\"Subscribe & Save\",\"percentDiscountText\":\"Get {{discount_value}}% off on your purchase!\",\"discountUsageLimitExceedLabel\":\"You have exceeded the bundle usage limit\",\"reviewOrderLabel\":\"Review Bundle\",\"chooseSectionProductsLabel\":\"Choose Section Products\",\"primaryDisabledColor\":\"#333333\",\"bundleMinimumOrderAmountLabel\":\"Add minimum {{minimum_amount}} order amount\",\"dynamicBundleDiscountRecurringCycleLimit\":0,\"breadCrumbSelectSectionLabel\":\"Select Section\",\"loadMoreButtonLabel\":\"Load More\",\"addedBundleToTheCart\":\"Added bundle to the cart\",\"bundleQuantityRewardsLabel\":\"Add {{quantity}} item, get {{discount}}{{discount_type}} discount\",\"shippingDiscountCombinedWithProductDiscount\":true,\"sellingPlanNameSortOrder\":\"ASC\",\"switchOnTimeLabel\":\"One Time\",\"volumeDiscountCombinedWithProductDiscount\":true,\"chooseProductsText\":\"Products\",\"productDetailsViewType\":\"SHOW_PRODUCT_POPUP\",\"enableManualBundleBlockIntegration\":false,\"volumeDiscountNextApplicableQuantityRewardsLabel\":\"Buy {{quantity}} get {{discount}}{{discount_type}}\",\"bundleCheckoutLabel\":\"Checkout\",\"productDiscountCombinedWithShippingDiscount\":true,\"skipSelectSectionPage\":false,\"productCardBackgroundColor\":\"#ffffff\",\"buyXGetYFreeLabel\":\"Free\",\"buttonBackgroundColor\":\"#000000\",\"dockbarHeadingLabel\":\"Bundle\",\"discountMessageInterval\":3000,\"sectionedBundleTypeLabel\":\"Sectioned Bundle\",\"buyXGetYAddToCartLabel\":\"Add to cart\",\"buyXGetYDiscountCombinedWithShippingDiscount\":true,\"dynamicBundleDiscountCodeText\":\"BUNDLE_DISCOUNT_{{bundle_id}}\",\"productDiscountAppliesOnSubscription\":true,\"selectedProgressLabelText\":\"{{total_bundle_items}} item added with a minimum quantity of {{minimum_quantity}}\",\"requiredBundleProductLabel\":\"Your bundle needs {{min_product_count}} more item(s).\",\"sellingPlanSelectionDropDownLabel\":\"Purchase Options\",\"buyXGetYPercentDiscountText\":\"Enjoy a percentage discount of {{discount_value}}%\",\"dockbarDescriptionLabel\":\"You're getting the most rewards!\",\"productDiscountRecurringCycleLimit\":0,\"preventClickableProductsOnCart\":false,\"enableProductDetailButton\":false,\"discountTargetType\":\"VARIANT\",\"buyXGetYDiscountTypeLabel\":\"Buy X Get Y Discount\",\"customOfferLink\":\"collections/all\",\"noItemsInBundle\":\"No items added to the bundle\",\"topBarPercentDiscountTitlePostfix\":\"{{discount}}% off on shipping\",\"variantSelectionDropDownLabel\":\"Variants\",\"chooseSectionLabel\":\"Choose Section\",\"dynamicPricingBundleTypeLabel\":\"Dynamic Pricing Bundle\",\"breadCrumbPlanLabel\":\"Select Plan\",\"showDynamicBundleOrderNote\":false,\"showOutOfStockProduct\":true,\"disabledSellingPlanSelectionValidation\":false,\"disableViewShopifyProduct\":false,\"bundleDiscountLabel\":\"Discount\",\"topBarDiscountRequiredAmountTitlePrefix\":\"Add {{currency}}{{remainingAmount}} more to unlock \",\"volumeDiscountAppliedQuantityRewardsLabel\":\"Applied: buy {{quantity}} get {{discount}}{{discount_type}}\",\"bundleNotEligibleLabel\":\"You're not eligible to purchase this bundle!\",\"reviewOrderProductsLabel\":\"Bundle Products\",\"outOfStockLabel\":\"Out Of Stock\",\"showUnitPrice\":false,\"buyXGetYFreeGiftDiscountText\":\"Enjoy the free product\",\"showDescriptionPopup\":true,\"maxDiscountCapValue\":0,\"readMoreText\":\"Read More\",\"totalBundleProductsAddedLabel\":\"{{total_bundle_items}} Products Added\",\"bundleMinimumQuantityLabel\":\"Add minimum {{minimum_quantity}} product\",\"noSourceProductSelectedLabel\":\"No source product selected.\",\"nonListedProductText\":\"Non-Listed\",\"buyXNoProductSelectedLabel\":\"No product selected (Buy X)\",\"volumeDiscountQuantityRewardsLabel\":\"Buy {{quantity}} quantity and get {{discount}}{{discount_type}} discount!\",\"freeShippingLabel\":\"Free Shipping\",\"previousButtonLabel\":\"Previous Step\",\"draftBundlePageTitle\":\"Oops! This bundle is temporarily unavailable.\",\"productDetailsMaximumDescriptionCount\":300,\"oneTimeOnlyLabel\":\"One time only\",\"buyXAnyNumberOfProductChooseLabel\":\"Choose any number of products\",\"productFilterConfig\":\"{\\\"enabled\\\":false,\\\"filters\\\":[]}\",\"volumeAmountDiscountQuantityRewardsLabel\":\"Buy {{quantity}} quantity and get {{currency}}{{discount}} discount!\",\"disableDiscountedPricingRedirectToCart\":false,\"volumeDiscountCombinedWithOrderDiscount\":true,\"dynamicBundleDiscountAppliesOnOneTimePurchase\":true,\"choosePlanButtonLabel\":\"Choose Plan\",\"bundleQuantityLabel\":\"{{quantity}}x\",\"showClassicBundleWidgetInChildProduct\":false,\"shippingDiscountAppliesOnOneTimePurchase\":true,\"classicBundleLinkLabel\":\"Go to the Classic Bundle\",\"topBarDiscountRequiredQuantityTitlePrefix\":\"Add {{remainingQuantity}} more item(s) to unlock \",\"bundleDetailsLabel\":\"Your bundle:\",\"buyXGetYDiscountAppliesOnOneTimePurchase\":true,\"volumeDiscountAppliedSpentAmountRewardsLabel\":\"Applied: spend {{spent_amount}}{{currency}} get {{discount}}{{discount_type}}\",\"enableAutoRemoveRelevantBundleItemInCart\":false,\"bundleModalShowRewardsLabel\":\"Show all rewards\",\"topBarFreeShippingTitlePostfix\":\"free shipping\",\"buyXGetYDiscountRecurringCycleLimit\":0,\"cartAndCheckoutMandatoryProductValidationMessage\":\"This bundle or discount must include all required products and they cannot be removed.\",\"volumeAmountDiscountSpentAmountRewardsLabel\":\"Spend {{currency}}{{spent_amount}} and get {{currency}}{{discount}} discount!\",\"notApplicableForOneTimeNotificationTitle\":\"Not applicable for one time\",\"showDiscountToNonEligibleCustomers\":false,\"primaryDisabledTextColor\":\"#ffffff\",\"draftBundlePageSubTitle\":\"In the meantime, check out our latest offers and discounts!\",\"volumeDiscountCombinedWithShippingDiscount\":true,\"bundleSpentAmountRewardsLabel\":\"Spent {{spent_amount}} worth of items, get {{discount}}{{discount_type}} discount\",\"nextButtonLabel\":\"Next Step\",\"classicBundleDescriptionLabel\":\"Your bundle contains the following products.\",\"bundleBottomHtml\":\"\",\"sectionMinimumQuantityValidationLabel\":\"Minimum quantity not selected for: {{section_name}}!\",\"volumeDiscountAppliesOnSubscription\":true,\"dynamicBundleDiscountCombinedWithProductDiscount\":true,\"buyXGetYAnyNumberOfGiftProductLabel\":\"Choose any number of gift products\",\"descriptionLength\":200,\"bundleDiscountNote\":\"Discounts will be applied at checkout.\",\"bundleModalCloseRewardsLabel\":\"Close all rewards\",\"dockbarCurrentRewardLabel\":\"You got {{discount_amount}}{{discount_type}} discount\",\"productDetailsAddToBundleLabel\":\"Add to bundle\",\"cartAndCheckoutQuantityValidationMessage\":\"Orders must match the quantity range: Min {{min_quantity}}, Max {{max_quantity}}\",\"bundleNoProductSelectedLabel\":\"No product selected\",\"checkoutInfoLabel\":\"Add products from each section to enable the add to cart button.\",\"enableShowMultipleImages\":false,\"redirectToCartPageOnCartIconClick\":true,\"freeShippingDiscountCodeText\":\"FREE_SHIPPING_{{bundle_id}}\",\"customOfferLinkButtonLabel\":\"Explore Offers\",\"oneTimePurchaseLabel\":\"One Time Purchase\",\"bundleMaximumOrderAmountLabel\":\"Add maximum {{maximum_amount}} order amount\",\"enableBundleProductAscOrderView\":true,\"productAddedToBundleNotificationTitle\":\"Added to bundle\",\"showClassicBundleProductVariant\":false,\"customHtmlInject\":\"[]\",\"breadCrumbReviewSectionLabel\":\"Review Section\",\"enableBundleRecreation\":false}","bundleTopHtml":"","bundleBottomHtml":"","proceedToCheckoutButtonText":"","chooseProductsText":"Products","productAddToBundleLabel":"Add","productDetailsAddToBundleLabel":"Add to bundle","productDetailsMaximumDescriptionCount":300,"variantSelectionDropDownLabel":"Variants","sellingPlanSelectionDropDownLabel":"Purchase Options","dockbarHeadingLabel":"Bundle","dockbarCurrentRewardLabel":"You got {{discount_amount}}{{discount_type}} discount","dockbarDescriptionLabel":"You're getting the most rewards!","bundleModalHeaderLabel":"Your Bundle({{total_quantity}})","bundleModalShowRewardsLabel":"Show all rewards","bundleModalCloseRewardsLabel":"Close all rewards","bundleQuantityRewardsLabel":"Add {{quantity}} item, get {{discount}}{{discount_type}} discount","bundleSpentAmountRewardsLabel":"Spent {{spent_amount}} worth of items, get {{discount}}{{discount_type}} discount","bundleQuantityLabel":"{{quantity}}x","bundleSubtotalLabel":"Subtotal","bundleDiscountLabel":"Discount","bundleTotalLabel":"Total","bundleCheckoutLabel":"Checkout","bundleMinimumQuantityLabel":"Add minimum {{minimum_quantity}} product","bundleMaximumQuantityLabel":"Add maximum up to {{maximum_quantity}} product","bundleMinimumOrderAmountLabel":"Add minimum {{minimum_amount}} order amount","oneTimePurchaseLabel":"One Time Purchase","noItemsInBundle":"No items added to the bundle","modalOpenOnAddToCart":true,"productAddedToBundleNotificationTitle":"Added to bundle","productAddedToBundleNotificationDescription":"{{product_title}} added to bundle.","chooseAPlanLabel":"Choose Plan","nextButtonLabel":"Next Step","previousButtonLabel":"Previous Step","chooseSourceProductValidationLabel":"Please choose source product!","chooseAssociatedProductsValidationLabel":"Please choose associated products!","choosePlanButtonLabel":"Choose Plan","selectedSourceProductLabel":"Selected","noSourceProductSelectedLabel":"No source product selected.","reviewOrderLabel":"Review Bundle","reviewOrderDescription":"Check your items and select your required frequency plan","reviewOrderProductsLabel":"Bundle Products","reviewOrderInfoLabel":"","orderNoteLabel":"Order Note","selectedProgressLabelText":"{{total_bundle_items}} item added with a minimum quantity of {{minimum_quantity}}","availableOnlySubscriptionLabel":"Available Only On Subscription","subscriptionAvailableLabel":"Subscription Available","oneTimeOnlyLabel":"One time only","switchOnTimeLabel":"One Time","switchSubscriptionLabel":"Subscribe & Save","breadCrumbPlanLabel":"Select Plan","breadCrumbProductsLabel":"Choose Products","breadCrumbReviewBundleLabel":"Review Bundle","showDescriptionPopup":true,"tieredDiscountLabel":"{{discount_amount}}{{discount_type}} Discount","emptyProductImage":"https://cdn.shopify.com/s/files/1/0661/9224/4900/files/EmptyImage.jpg?v=1718447038","outOfStockLabel":"Out Of Stock","notApplicableForOneTimeNotificationTitle":"Not applicable for one time","notApplicableForSubscribeAndSaveNotificationTitle":"Not applicable for subscribe & save","disableProductDescription":false,"descriptionLength":200,"readLessText":"Read Less","readMoreText":"Read More","bundleNoProductSelectedLabel":"No product selected","customHtmlInject":"[]","bundleDetailsLabel":"Your bundle:","bundleDiscountNote":"Discounts will be applied at checkout.","fixedDiscountText":"Enjoy a fixed discount of {{currency}}{{discount_value}} on your purchase!","percentDiscountText":"Get {{discount_value}}% off on your purchase!","hideVariantSelectLabel":false,"hidePurchaseOptionSelectLabel":false,"primaryColor":"#000000","primaryTextColor":"#000000","secondaryTextColor":"#ffffff","primaryHoverColor":"#000000","primaryDisabledColor":"#333333","primaryDisabledTextColor":"#ffffff","fieldDisabledBackgroundColor":"#D1D5DB","disabledTextColor":"#6B7280","volumeDiscountSaveRewardsLabel":"Save {{discount}}{{discount_type}}!","volumeDiscountQuantityRewardsLabel":"Buy {{quantity}} quantity and get {{discount}}{{discount_type}} discount!","volumeDiscountSpentAmountRewardsLabel":"Spend {{currency}}{{spent_amount}} and get {{discount}}{{discount_type}} discount!","volumeDiscountAppliedQuantityRewardsLabel":"Applied: buy {{quantity}} get {{discount}}{{discount_type}}","volumeDiscountAppliedSpentAmountRewardsLabel":"Applied: spend {{spent_amount}}{{currency}} get {{discount}}{{discount_type}}","volumeDiscountNextApplicableQuantityRewardsLabel":"Buy {{quantity}} get {{discount}}{{discount_type}}","volumeDiscountNextApplicableSpentAmountRewardsLabel":"Spend {{spent_amount}}{{currency}} get {{discount}}{{discount_type}}","addingProductsToBundle":"Adding products to bundle","freeShippingLabel":"Free Shipping","requiredBundleProductLabel":"Your bundle needs {{min_product_count}} more item(s).","enableProductDetailButton":false,"requiredLoginValidationLabel":"Please log in to purchase this bundle!","bundleNotEligibleLabel":"You're not eligible to purchase this bundle!","loginAlertTextLabel":"You need to login to purchase this bundle.","loginAlertLinkLabel":"Click here to login","customSignInLink":"","shippingDiscountLabel":"{{discount}}{{discount_type}} Shipping Discount","classicBundleDescriptionLabel":"Your bundle contains the following products.","singleParentProductDirectRedirectToChildProducts":true,"buyXGetYFixedDiscountText":"Enjoy a fixed discount of {{discount_value}} {{currency}}","buyXGetYPercentDiscountText":"Enjoy a percentage discount of {{discount_value}}%","buyXGetYFreeGiftDiscountText":"Enjoy the free product","buyXGetYAddToCartLabel":"Add to cart","buyXGetYFreeLabel":"Free","disableDiscountedPricingRedirectToCart":false,"nonListedProductText":"Non-Listed","preventClickableProductsOnCart":false,"buyXGetYChooseProductLabel":"Choose Product","showSubscriptionPlanDescription":false,"volumeAmountDiscountSaveRewardsLabel":"Save {{currency}}{{discount}}!","volumeAmountDiscountQuantityRewardsLabel":"Buy {{quantity}} quantity and get {{currency}}{{discount}} discount!","volumeAmountDiscountSpentAmountRewardsLabel":"Spend {{currency}}{{spent_amount}} and get {{currency}}{{discount}} discount!","enableManualBundleBlockIntegration":false,"cartAndCheckoutQuantityValidationMessage":"Orders must match the quantity range: Min {{min_quantity}}, Max {{max_quantity}}","dynamicBundleDiscountCodeText":"BUNDLE_DISCOUNT_{{bundle_id}}","discountUsageLimitExceedLabel":"You have exceeded the bundle usage limit","disableViewShopifyProduct":false,"redirectToCartPageOnCartIconClick":true,"sectionLabel":"Section","chooseSectionLabel":"Choose Section","chooseSectionProductsLabel":"Choose Section Products","breadCrumbSelectSectionLabel":"Select Section","breadCrumbReviewSectionLabel":"Review Section","checkoutInfoLabel":"Add products from each section to enable the add to cart button.","sectionNoProductSelectedValidationLabel":"No product selected for: {{section_name}}!","sectionMinimumQuantityValidationLabel":"Minimum quantity not selected for: {{section_name}}!","sectionMaximumQuantityValidationLabel":"Maximum quantity not selected for: {{section_name}}!","dynamicBundleDiscountCombinedWithProductDiscount":true,"dynamicBundleDiscountCombinedWithShippingDiscount":true,"dynamicBundleDiscountCombinedWithOrderDiscount":true,"volumeDiscountCombinedWithProductDiscount":true,"volumeDiscountCombinedWithShippingDiscount":true,"volumeDiscountCombinedWithOrderDiscount":true,"productDiscountCombinedWithProductDiscount":true,"productDiscountCombinedWithShippingDiscount":true,"productDiscountCombinedWithOrderDiscount":true,"buyXGetYDiscountCombinedWithProductDiscount":true,"buyXGetYDiscountCombinedWithShippingDiscount":true,"buyXGetYDiscountCombinedWithOrderDiscount":true,"shippingDiscountCombinedWithProductDiscount":true,"shippingDiscountCombinedWithOrderDiscount":true,"showDynamicBundleOrderNote":false,"bundleMaximumOrderAmountLabel":"Add maximum {{maximum_amount}} order amount","buyXGetYQuantityValidationLabel":"Add {{product_quantity}} quantities of the gift product (Get Y)","selectedGiftProductProgressLabelText":"{{selected_product_quantity}} gift products added. The required quantity is {{required_product_quantity}}.","draftBundlePageTitle":"Oops! This bundle is temporarily unavailable.","draftBundlePageSubTitle":"In the meantime, check out our latest offers and discounts!","customOfferLink":"collections/all","customOfferLinkButtonLabel":"Explore Offers","enableParentProductDetailButton":false,"sectionTotalLabel":"Section Total","skipSelectSectionPage":false,"buyXGetYGiftProductPriceVisibilityType":"UNIT_PRICE","defaultSelectedPurchaseOptionSwitch":"ONE_TIME","defaultSelectedPurchaseOption":"ONE_TIME","discountTargetType":"VARIANT","enableShowMultipleImages":false,"buyXGetYAnyNumberOfGiftProductLabel":"Choose any number of gift products","showDiscountToNonEligibleCustomers":false,"dynamicBundleDiscountRecurringCycleLimit":0,"dynamicBundleDiscountAppliesOnOneTimePurchase":true,"dynamicBundleDiscountAppliesOnSubscription":true,"volumeDiscountRecurringCycleLimit":0,"volumeDiscountAppliesOnOneTimePurchase":true,"volumeDiscountAppliesOnSubscription":true,"productDiscountRecurringCycleLimit":0,"productDiscountAppliesOnOneTimePurchase":true,"productDiscountAppliesOnSubscription":true,"buyXGetYDiscountRecurringCycleLimit":0,"buyXGetYDiscountAppliesOnOneTimePurchase":true,"buyXGetYDiscountAppliesOnSubscription":true,"shippingDiscountRecurringCycleLimit":0,"shippingDiscountAppliesOnOneTimePurchase":true,"shippingDiscountAppliesOnSubscription":true,"buyXNoProductSelectedLabel":"No product selected (Buy X)","getYNoProductSelectedLabel":"No gift product selected (Get Y)","buyXQuantityValidationLabel":"Add {{product_quantity}} quantities of the product (Bux X)","buyXAnyNumberOfProductChooseLabel":"Choose any number of products","freeShippingDiscountCodeText":"FREE_SHIPPING_{{bundle_id}}","includedSubscriptionPlans":"","excludeSubscriptionPlans":"","enableBuyXGetYWidgetMergeAsOptions":false,"buyXGetYMergedWidgetTitle":"Select Buy X Get Y Discount","showClassicBundleProductVariant":false,"showProductPerPage":50,"loadMoreButtonLabel":"Load More","enableBundleProductAscOrderView":true,"cartAndCheckoutMandatoryProductValidationMessage":"This bundle or discount must include all required products and they cannot be removed.","sellingPlanNameSortOrder":"ASC","showVendorName":false,"disableFitImage":false,"enableAutoRemoveRelevantBundleItemInCart":false,"enableBundleProductFilter":false,"productFilterConfig":"{\"enabled\":false,\"filters\":[]}","enableMaxDiscountCap":false,"maxDiscountCapValue":0,"classicBundleLinkLabel":"Go to the Classic Bundle","showPriceAsDecimals":false,"showClassicBundleWidgetInChildProduct":false,"showOutOfStockProduct":true,"showDraftProduct":false,"totalBundleProductsAddedLabel":"{{total_bundle_items}} Products Added","bundleProductsQuantityLabel":"{{quantity}}x quantity","showUnitPrice":false,"productDetailsViewType":"SHOW_PRODUCT_POPUP","disableRefreshSellingPlan":false,"enableShippingDiscountBar":false,"enableVolumeDiscountBar":false,"defaultDiscountBarMessage":"Welcome to our store","discountMessageInterval":3000,"addedBundleToTheCart":"Added bundle to the cart","disabledSellingPlanSelectionValidation":false,"volumeDiscountVariantSelectLabel":"Denominations","enableScrollingToBundleSection":true,"enableClassicBundleRecreation":true,"topBarDiscountUnlockTitlePrefix":"You've unlocked ","topBarDiscountRequiredAmountTitlePrefix":"Add {{currency}}{{remainingAmount}} more to unlock ","topBarDiscountRequiredQuantityTitlePrefix":"Add {{remainingQuantity}} more item(s) to unlock ","topBarPercentDiscountTitlePostfix":"{{discount}}% off on shipping","topBarFixedDiscountTitlePostfix":"{{currency}}{{discount}} off on shipping","topBarFreeShippingTitlePostfix":"free shipping","checkInventoryQuantity":false,"hideBundleToastNotification":false,"enableBundleRecreation":false,"enableAnnouncementBar":null,"enableAnnouncementBarAutoRotate":null,"bundleListTitle":"List of Bundles and Discounted Pricing","bundleListDescription":"Explore our Bundles and Discounted Pricing and enjoy exclusive discounts when you buy products together","bundleListViewDetailsButtonLabel":"View Details","classicBundleTypeLabel":"Classic Bundle","dynamicPricingBundleTypeLabel":"Dynamic Pricing Bundle","fixedPricingBundleTypeLabel":"Fixed Pricing Bundle","sectionedBundleTypeLabel":"Sectioned Bundle","volumeDiscountTypeLabel":"Volume Discount","productDiscountTypeLabel":"Product Discount","buyXGetYDiscountTypeLabel":"Buy X Get Y Discount","bundlePageBackgroundColor":"#FAFAF9","productCardBackgroundColor":"#ffffff","buttonBackgroundColor":"#000000","showPrepaidPerDeliveryPrice":null,"prepaidPerDeliveryPriceLabel":null};
if (!bundleSettings?.enableAutoRemoveRelevantBundleItemInCart) return;
const originalFetch = window.fetch;
window.fetch = async function (...args) {
const [resource, config] = args;
const isRemoveRequest = typeof resource === 'string' &&
resource.includes('/cart/change') &&
config?.method === 'POST';
if (!isRemoveRequest) {
return originalFetch(...args);
}
let bodyData = {};
try {
bodyData = JSON.parse(config.body);
} catch (e) {
console.warn('Failed to parse request body', e);
return originalFetch(...args);
}
if (bodyData.quantity !== 0) {
return originalFetch(...args);
}
const cart = await fetch('/cart.js').then(res => res.json());
const removingLineIndex = parseInt(bodyData?.line) - 1;
const removingItem = cart?.items[removingLineIndex];
const bundleId = removingItem?.properties?.["_appstle-bb-id"];
if (!bundleId) {
return originalFetch(...args);
}
const updates = {};
cart?.items.forEach(item => {
if (item?.properties?.["_appstle-bb-id"] === bundleId) {
updates[item?.key] = 0;
}
});
const hasNonBundleItems = cart?.items.some(item => !item?.properties?.["_appstle-bb-id"]);
await fetch('/cart/update.js', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ updates })
});
if (hasNonBundleItems) {
const sections = bodyData?.sections;
const sectionsUrl = bodyData?.sections_url || '/cart';
const htmlResponse = await fetch(
`/?sections=${sections.join(',')}§ions_url=${encodeURIComponent(sectionsUrl)}`
);
const htmlData = await htmlResponse.json();
return new Response(JSON.stringify({
status: 'bundle removed',
sections: htmlData
}), {
status: 200,
headers: { 'Content-Type': 'application/json' }
});
}
return originalFetch(...args);
};
});
document.addEventListener('DOMContentLoaded', () => {
const originalFetch = window.fetch;
window.fetch = async function (...args) {
const [resource, config] = args;
const isCartUpdate = typeof resource === 'string' &&
(resource.includes('/cart/change') || resource.includes('/cart/update')) &&
config?.method === 'POST';
if (!isCartUpdate) {
return originalFetch(...args);
}
const response = await originalFetch(...args);
const cart = await fetch('/cart.js').then(res => res.json());
const hasBundleItems = cart?.items.some(item =>
item?.properties?.["_appstle-bb-id"]
);
const freeProductItems = cart?.items.filter(item =>
item?.properties?.["_appstle_free_product"] === true ||
item?.properties?.["_appstle_free_product"] === "true"
);
if (!hasBundleItems && freeProductItems.length > 0) {
const updates = {};
freeProductItems.forEach(item => {
updates[item?.key] = 0;
});
await fetch('/cart/update.js', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ updates })
});
let bodyData = {};
try {
bodyData = JSON.parse(config.body);
} catch (e) {
}
if (bodyData?.sections) {
const sections = bodyData.sections;
const sectionsUrl = bodyData.sections_url || '/cart';
const htmlResponse = await fetch(
`/?sections=${sections.join(',')}§ions_url=${encodeURIComponent(sectionsUrl)}`
);
const htmlData = await htmlResponse.json();
return new Response(JSON.stringify({
status: 'free product removed',
sections: htmlData
}), {
status: 200,
headers: { 'Content-Type': 'application/json' }
});
}
}
return response;
};
});