(function(require){
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            directoryRegionUpdater: 'Magento_Directory/js/region-updater'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    waitSeconds: 0,
    map: {
        '*': {
            'ko': 'knockoutjs/knockout',
            'knockout': 'knockoutjs/knockout',
            'mageUtils': 'mage/utils/main',
            'rjsResolver': 'mage/requirejs/resolver',
            'jquery-ui-modules/core': 'jquery/ui-modules/core',
            'jquery-ui-modules/accordion': 'jquery/ui-modules/widgets/accordion',
            'jquery-ui-modules/autocomplete': 'jquery/ui-modules/widgets/autocomplete',
            'jquery-ui-modules/button': 'jquery/ui-modules/widgets/button',
            'jquery-ui-modules/datepicker': 'jquery/ui-modules/widgets/datepicker',
            'jquery-ui-modules/dialog': 'jquery/ui-modules/widgets/dialog',
            'jquery-ui-modules/draggable': 'jquery/ui-modules/widgets/draggable',
            'jquery-ui-modules/droppable': 'jquery/ui-modules/widgets/droppable',
            'jquery-ui-modules/effect-blind': 'jquery/ui-modules/effects/effect-blind',
            'jquery-ui-modules/effect-bounce': 'jquery/ui-modules/effects/effect-bounce',
            'jquery-ui-modules/effect-clip': 'jquery/ui-modules/effects/effect-clip',
            'jquery-ui-modules/effect-drop': 'jquery/ui-modules/effects/effect-drop',
            'jquery-ui-modules/effect-explode': 'jquery/ui-modules/effects/effect-explode',
            'jquery-ui-modules/effect-fade': 'jquery/ui-modules/effects/effect-fade',
            'jquery-ui-modules/effect-fold': 'jquery/ui-modules/effects/effect-fold',
            'jquery-ui-modules/effect-highlight': 'jquery/ui-modules/effects/effect-highlight',
            'jquery-ui-modules/effect-scale': 'jquery/ui-modules/effects/effect-scale',
            'jquery-ui-modules/effect-pulsate': 'jquery/ui-modules/effects/effect-pulsate',
            'jquery-ui-modules/effect-shake': 'jquery/ui-modules/effects/effect-shake',
            'jquery-ui-modules/effect-slide': 'jquery/ui-modules/effects/effect-slide',
            'jquery-ui-modules/effect-transfer': 'jquery/ui-modules/effects/effect-transfer',
            'jquery-ui-modules/effect': 'jquery/ui-modules/effect',
            'jquery-ui-modules/menu': 'jquery/ui-modules/widgets/menu',
            'jquery-ui-modules/mouse': 'jquery/ui-modules/widgets/mouse',
            'jquery-ui-modules/position': 'jquery/ui-modules/position',
            'jquery-ui-modules/progressbar': 'jquery/ui-modules/widgets/progressbar',
            'jquery-ui-modules/resizable': 'jquery/ui-modules/widgets/resizable',
            'jquery-ui-modules/selectable': 'jquery/ui-modules/widgets/selectable',
            'jquery-ui-modules/slider': 'jquery/ui-modules/widgets/selectmenu',
            'jquery-ui-modules/sortable': 'jquery/ui-modules/widgets/sortable',
            'jquery-ui-modules/spinner': 'jquery/ui-modules/widgets/spinner',
            'jquery-ui-modules/tabs': 'jquery/ui-modules/widgets/tabs',
            'jquery-ui-modules/tooltip': 'jquery/ui-modules/widgets/tooltip',
            'jquery-ui-modules/widget': 'jquery/ui-modules/widget',
            'jquery-ui-modules/timepicker': 'jquery/timepicker',
            'vimeo': 'vimeo/player',
            'vimeoWrapper': 'vimeo/vimeo-wrapper'
        }
    },
    shim: {
        'jquery/jquery-migrate': ['jquery'],
        'mage/adminhtml/backup': ['prototype'],
        'mage/captcha': ['prototype'],
        'mage/new-gallery': ['jquery'],
        'jquery/ui': ['jquery'],
        'matchMedia': {
            'exports': 'mediaCheck'
        },
        'magnifier/magnifier': ['jquery'],
        'vimeo/player': {
            'exports': 'Player'
        }
    },
    paths: {
        'jquery/validate': 'jquery/jquery.validate',
        'jquery/file-uploader': 'jquery/fileUploader/jquery.fileuploader',
        'prototype': 'legacy-build.min',
        'jquery/jquery.cookie': 'js-cookie/cookie-wrapper',
        'jquery/jquery-storageapi': 'js-storage/storage-wrapper',
        'text': 'mage/requirejs/text',
        'domReady': 'requirejs/domReady',
        'spectrum': 'jquery/spectrum/spectrum',
        'tinycolor': 'jquery/spectrum/tinycolor',
        'jquery-ui-modules': 'jquery/ui-modules'
    },
    deps: [
        'jquery/jquery-migrate'
    ],
    config: {
        text: {
            'headers': {
                'X-Requested-With': 'XMLHttpRequest'
            }
        }
    }
};

require(['jquery'], function ($) {
    'use strict';

    $.noConflict();
});

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            'rowBuilder':             'Magento_Theme/js/row-builder',
            'toggleAdvanced':         'mage/toggle',
            'translateInline':        'mage/translate-inline',
            'sticky':                 'mage/sticky',
            'tabs':                   'mage/tabs',
            'collapsible':            'mage/collapsible',
            'dropdownDialog':         'mage/dropdown',
            'dropdown':               'mage/dropdowns',
            'accordion':              'mage/accordion',
            'loader':                 'mage/loader',
            'tooltip':                'mage/tooltip',
            'deletableItem':          'mage/deletable-item',
            'itemTable':              'mage/item-table',
            'fieldsetControls':       'mage/fieldset-controls',
            'fieldsetResetControl':   'mage/fieldset-controls',
            'redirectUrl':            'mage/redirect-url',
            'loaderAjax':             'mage/loader',
            'menu':                   'mage/menu',
            'popupWindow':            'mage/popup-window',
            'validation':             'mage/validation/validation',
            'breadcrumbs':            'Magento_Theme/js/view/breadcrumbs',
            'jquery/ui':              'jquery/compat',
            'cookieStatus':           'Magento_Theme/js/cookie-status'
        }
    },
    deps: [
        'mage/common',
        'mage/dataPost',
        'mage/bootstrap'
    ],
    config: {
        mixins: {
            'Magento_Theme/js/view/breadcrumbs': {
                'Magento_Theme/js/view/add-home-breadcrumb': true
            }
        }
    }
};

/* eslint-disable max-depth */
/**
 * Adds polyfills only for browser contexts which prevents bundlers from including them.
 */
if (typeof window !== 'undefined' && window.document) {
    /**
     * Polyfill localStorage and sessionStorage for browsers that do not support them.
     */
    try {
        if (!window.localStorage || !window.sessionStorage) {
            throw new Error();
        }

        localStorage.setItem('storage_test', 1);
        localStorage.removeItem('storage_test');
    } catch (e) {
        config.deps.push('mage/polyfill');
    }
}
/* eslint-enable max-depth */

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            checkoutBalance:    'Magento_Customer/js/checkout-balance',
            address:            'Magento_Customer/js/address',
            changeEmailPassword: 'Magento_Customer/js/change-email-password',
            passwordStrengthIndicator: 'Magento_Customer/js/password-strength-indicator',
            zxcvbn: 'Magento_Customer/js/zxcvbn',
            addressValidation: 'Magento_Customer/js/addressValidation',
            showPassword: 'Magento_Customer/js/show-password',
            'Magento_Customer/address': 'Magento_Customer/js/address',
            'Magento_Customer/change-email-password': 'Magento_Customer/js/change-email-password',
            globalSessionLoader:    'Magento_Customer/js/customer-global-session-loader.js'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            escaper: 'Magento_Security/js/escaper'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            quickSearch: 'Magento_Search/js/form-mini',
            'Magento_Search/form-mini': 'Magento_Search/js/form-mini'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            priceBox:             'Magento_Catalog/js/price-box',
            priceOptionDate:      'Magento_Catalog/js/price-option-date',
            priceOptionFile:      'Magento_Catalog/js/price-option-file',
            priceOptions:         'Magento_Catalog/js/price-options',
            priceUtils:           'Magento_Catalog/js/price-utils'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            compareList:            'Magento_Catalog/js/list',
            relatedProducts:        'Magento_Catalog/js/related-products',
            upsellProducts:         'Magento_Catalog/js/upsell-products',
            productListToolbarForm: 'Magento_Catalog/js/product/list/toolbar',
            catalogGallery:         'Magento_Catalog/js/gallery',
            catalogAddToCart:       'Magento_Catalog/js/catalog-add-to-cart'
        }
    },
    config: {
        mixins: {
            'Magento_Theme/js/view/breadcrumbs': {
                'Magento_Catalog/js/product/breadcrumbs': true
            }
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            creditCardType: 'Magento_Payment/js/cc-type',
            'Magento_Payment/cc-type': 'Magento_Payment/js/cc-type'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            catalogSearch: 'Magento_CatalogSearch/form-mini'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            addToCart: 'Magento_Msrp/js/msrp'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            giftMessage:    'Magento_Sales/js/gift-message',
            ordersReturns:  'Magento_Sales/js/orders-returns',
            'Magento_Sales/gift-message':    'Magento_Sales/js/gift-message',
            'Magento_Sales/orders-returns':  'Magento_Sales/js/orders-returns'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            discountCode:           'Magento_Checkout/js/discount-codes',
            shoppingCart:           'Magento_Checkout/js/shopping-cart',
            regionUpdater:          'Magento_Checkout/js/region-updater',
            sidebar:                'Magento_Checkout/js/sidebar',
            checkoutLoader:         'Magento_Checkout/js/checkout-loader',
            checkoutData:           'Magento_Checkout/js/checkout-data',
            proceedToCheckout:      'Magento_Checkout/js/proceed-to-checkout',
            catalogAddToCart:       'Magento_Catalog/js/catalog-add-to-cart'
        }
    },
    shim: {
        'Magento_Checkout/js/model/totals' : {
            deps: ['Magento_Customer/js/customer-data']
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            requireCookie: 'Magento_Cookie/js/require-cookie',
            cookieNotices: 'Magento_Cookie/js/notices'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            bundleOption:   'Magento_Bundle/bundle',
            priceBundle:    'Magento_Bundle/js/price-bundle',
            slide:          'Magento_Bundle/js/slide',
            productSummary: 'Magento_Bundle/js/product-summary'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            downloadable: 'Magento_Downloadable/js/downloadable',
            'Magento_Downloadable/downloadable': 'Magento_Downloadable/js/downloadable'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            giftOptions:    'Magento_GiftMessage/js/gift-options',
            'Magento_GiftMessage/gift-options':    'Magento_GiftMessage/js/gift-options'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    deps: [],
    shim: {
        'chartjs/chartjs-adapter-moment': ['moment'],
        'tiny_mce_5/tinymce.min': {
            exports: 'tinyMCE'
        }
    },
    paths: {
        'ui/template': 'Magento_Ui/templates'
    },
    map: {
        '*': {
            uiElement:      'Magento_Ui/js/lib/core/element/element',
            uiCollection:   'Magento_Ui/js/lib/core/collection',
            uiComponent:    'Magento_Ui/js/lib/core/collection',
            uiClass:        'Magento_Ui/js/lib/core/class',
            uiEvents:       'Magento_Ui/js/lib/core/events',
            uiRegistry:     'Magento_Ui/js/lib/registry/registry',
            consoleLogger:  'Magento_Ui/js/lib/logger/console-logger',
            uiLayout:       'Magento_Ui/js/core/renderer/layout',
            buttonAdapter:  'Magento_Ui/js/form/button-adapter',
            chartJs:        'chartjs/Chart.min',
            'chart.js':     'chartjs/Chart.min',
            tinymce:        'tiny_mce_5/tinymce.min',
            wysiwygAdapter: 'mage/adminhtml/wysiwyg/tiny_mce/tinymce5Adapter'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    deps: [
        'Magento_Ui/js/core/app'
    ]
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            pageCache:  'Magento_PageCache/js/page-cache'
        }
    },
    deps: ['Magento_PageCache/js/form-key-provider']
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            configurable: 'Magento_ConfigurableProduct/js/configurable'
        }
    },
    config: {
        mixins: {
            'Magento_Catalog/js/catalog-add-to-cart': {
                'Magento_ConfigurableProduct/js/catalog-add-to-cart-mixin': true
            }
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            multiShipping: 'Magento_Multishipping/js/multi-shipping',
            orderOverview: 'Magento_Multishipping/js/overview',
            payment: 'Magento_Multishipping/js/payment',
            billingLoader: 'Magento_Checkout/js/checkout-loader',
            cartUpdate: 'Magento_Checkout/js/action/update-shopping-cart',
            multiShippingBalance: 'Magento_Multishipping/js/multi-shipping-balance'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            recentlyViewedProducts: 'Magento_Reports/js/recently-viewed'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            subscriptionStatusResolver: 'Magento_Newsletter/js/subscription-status-resolver',
            newsletterSignUp:  'Magento_Newsletter/js/newsletter-sign-up'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    config: {
        mixins: {
            'Magento_Checkout/js/action/select-payment-method': {
                'Magento_SalesRule/js/action/select-payment-method-mixin': true
            },
            'Magento_Checkout/js/model/shipping-save-processor': {
                'Magento_SalesRule/js/model/shipping-save-processor-mixin': true
            },
            'Magento_Checkout/js/action/place-order': {
                'Magento_SalesRule/js/model/place-order-mixin': true
            }
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            'slick': 'Magento_PageBuilder/js/resource/slick/slick',
            'jarallax': 'Magento_PageBuilder/js/resource/jarallax/jarallax',
            'jarallaxVideo': 'Magento_PageBuilder/js/resource/jarallax/jarallax-video',
            'Magento_PageBuilder/js/resource/vimeo/player': 'vimeo/player',
            'Magento_PageBuilder/js/resource/vimeo/vimeo-wrapper': 'vimeo/vimeo-wrapper',
            'jarallax-wrapper': 'Magento_PageBuilder/js/resource/jarallax/jarallax-wrapper'
        }
    },
    shim: {
        'Magento_PageBuilder/js/resource/slick/slick': {
            deps: ['jquery']
        },
        'Magento_PageBuilder/js/resource/jarallax/jarallax-video': {
            deps: ['jarallax-wrapper', 'vimeoWrapper']
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            captcha: 'Magento_Captcha/js/captcha',
            'Magento_Captcha/captcha': 'Magento_Captcha/js/captcha'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            transparent: 'Magento_Payment/js/transparent',
            'Magento_Payment/transparent': 'Magento_Payment/js/transparent'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            orderReview: 'Magento_Paypal/js/order-review',
            'Magento_Paypal/order-review': 'Magento_Paypal/js/order-review',
            paypalCheckout: 'Magento_Paypal/js/paypal-checkout'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    config: {
        mixins: {
            'Magento_Customer/js/customer-data': {
                'Magento_Persistent/js/view/customer-data-mixin': true
            }
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            loadPlayer: 'Magento_ProductVideo/js/load-player',
            fotoramaVideoEvents: 'Magento_ProductVideo/js/fotorama-add-video-events',
            'vimeoWrapper': 'vimeo/vimeo-wrapper'
        }
    },
    shim: {
        vimeoAPI: {},
        'Magento_ProductVideo/js/load-player': {
            deps: ['vimeoWrapper']
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    config: {
        mixins: {
            'Magento_Checkout/js/action/place-order': {
                'Magento_CheckoutAgreements/js/model/place-order-mixin': true
            },
            'Magento_Checkout/js/action/set-payment-information': {
                'Magento_CheckoutAgreements/js/model/set-payment-information-mixin': true
            }
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

// eslint-disable-next-line no-unused-vars
var config = {
    config: {
        mixins: {
            'Magento_Checkout/js/model/place-order': {
                'Magento_ReCaptchaCheckout/js/model/place-order-mixin': true
            }
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

/*eslint strict: ["error", "global"]*/

'use strict';

var config = {
    config: {
        mixins: {
            'Magento_Ui/js/view/messages': {
                'Magento_ReCaptchaFrontendUi/js/ui-messages-mixin': true
            }
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

// eslint-disable-next-line no-unused-vars
var config = {
    config: {
        mixins: {
            'Magento_Paypal/js/view/payment/method-renderer/payflowpro-method': {
                'Magento_ReCaptchaPaypal/js/payflowpro-method-mixin': true
            }
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

// eslint-disable-next-line no-unused-vars
var config = {
    config: {
        mixins: {
            'jquery': {
                'Magento_ReCaptchaWebapiUi/js/jquery-mixin': true
            }
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            mageTranslationDictionary: 'Magento_Translation/js/mage-translation-dictionary'
        }
    },
    deps: [
        'mageTranslationDictionary'
    ]
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            editTrigger: 'mage/edit-trigger',
            addClass: 'Magento_Translation/js/add-class',
            'Magento_Translation/add-class': 'Magento_Translation/js/add-class'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    config: {
        mixins: {
            'Magento_Checkout/js/view/payment/list': {
                'Magento_PaypalCaptcha/js/view/payment/list-mixin': true
            },
            'Magento_Paypal/js/view/payment/method-renderer/payflowpro-method': {
                'Magento_PaypalCaptcha/js/view/payment/method-renderer/payflowpro-method-mixin': true
            },
            'Magento_Captcha/js/view/checkout/defaultCaptcha': {
                'Magento_PaypalCaptcha/js/view/checkout/defaultCaptcha-mixin': true
            }
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            'taxToggle': 'Magento_Weee/js/tax-toggle',
            'Magento_Weee/tax-toggle': 'Magento_Weee/js/tax-toggle'
        }
    }
};

require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            wishlist:       'Magento_Wishlist/js/wishlist',
            addToWishlist:  'Magento_Wishlist/js/add-to-wishlist',
            wishlistSearch: 'Magento_Wishlist/js/search'
        }
    }
};

require.config(config);
})();
(function() {
var config = {
    map: {
        '*': {
            blogCommentsLink: 'Aheadworks_Blog/js/comments-link',
            awBlogRelatedGrid: 'Aheadworks_Blog/js/aw-blog-related-grid',
            awBlogSlider: 'Aheadworks_Blog/js/aw-blog-slider',
            awBlogAjax: 'Aheadworks_Blog/js/aw-blog-ajax',
            awBlogToggleCategories: 'Aheadworks_Blog/js/toggle-categories',
            awBlogLazyLoad: 'Aheadworks_Blog/js/aw-blog-lazyload',
            awBlogPostViewToggle: 'Aheadworks_Blog/js/aw-blog-post-view-toggle',
            awBlogBuiltinCommentShowMore: 'Aheadworks_Blog/js/aw-blog-builtin-comment-show-more',
            awBlogBuiltinCommentSorter: 'Aheadworks_Blog/js/post/comment/sorter'
        }
    },
    paths: {
        'slick': 'Aheadworks_Blog/js/slick'
    }
};

require.config(config);
})();
(function() {
var config = {
    map: {
        '*': {
            amShopbyTooltipInit: 'Amasty_ShopbyBase/js/components/am-tooltip-init'
        }
    }
};

require.config(config);
})();
(function() {
var config = {
    map: {
        '*': {
            'amshopby_color': 'Amasty_Shopby/js/utils/color'
        }
    }
};

require.config(config);
})();
(function() {
var config = {
    map: {
        '*': {
            amShopbyFilterAbstract: 'Amasty_Shopby/js/amShopby',
            amShopbyResponsive: 'Amasty_Shopby/js/amShopbyResponsive',
            amShopbyFilterItemDefault: 'Amasty_Shopby/js/components/amShopbyFilterItemDefault',
            amShopbyFilterDropdown: 'Amasty_Shopby/js/components/amShopbyFilterDropdown',
            amShopbyFilterFromTo: 'Amasty_Shopby/js/components/amShopbyFilterFromTo',
            amShopbyFilterHideMoreOptions: 'Amasty_Shopby/js/components/amShopbyFilterHideMoreOptions',
            amShopbyFilterAddTooltip: 'Amasty_Shopby/js/components/amShopbyFilterAddTooltip',
            amShopbyFilterCategoryDropdown: 'Amasty_Shopby/js/components/amShopbyFilterCategoryDropdown',
            amShopbyFilterCategory: 'Amasty_Shopby/js/components/amShopbyFilterCategory',
            amShopbyFilterContainer: 'Amasty_Shopby/js/components/amShopbyFilterContainer',
            amShopbyFilterSearch: 'Amasty_Shopby/js/components/amShopbyFilterSearch',
            amShopbyFilterMultiselect: 'Amasty_Shopby/js/components/amShopbyFilterMultiselect',
            amShopbyFilterSwatch: 'Amasty_Shopby/js/components/amShopbyFilterSwatch',
            amShopbyFilterSlider: 'Amasty_Shopby/js/components/amShopbyFilterSlider',
            amShopbyFilterFlyout: 'Amasty_Shopby/js/components/amShopbyFilterFlyout',
            amShopbySwiperSlider: 'Amasty_Shopby/js/components/amShopbySwiperSlider',
            amShopbySwatchTooltip: 'Amasty_Shopby/js/components/amShopbySwatchTooltip',
            amShopbyStickySidebar: 'Amasty_Shopby/js/components/amShopbyStickySidebar',
            amShopbyFilterCollapse: 'Amasty_Shopby/js/components/amShopbyFilterCollapse',
            amShopbySwatchesChoose: 'Amasty_Shopby/js/amShopbySwatchesChoose',
            amShopbyFiltersSync: 'Amasty_Shopby/js/amShopbyFiltersSync',
            amShopbyApplyFilters: 'Amasty_Shopby/js/amShopbyApplyFilters',
            amShopbyTopFilters: 'Amasty_Shopby/js/amShopbyTopFilters',
            amShopbyAjax: 'Amasty_Shopby/js/amShopbyAjax',
            amShopbyHelpers: 'Amasty_Shopby/js/utils/helpers',
            swiper: 'Amasty_LibSwiperJs/js/vendor/swiper/swiper.min'
        }
    },
    config: {
        mixins: {
            'jquery/ui-modules/widgets/slider': {
                'Amasty_Shopby/js/mixins/slider': true
            }
        }
    }
};

require.config(config);
})();
(function() {
var config = {
    map: {
        '*': {
            amBrandsSearch: 'Amasty_ShopbyBrand/js/components/ambrands-search',
            amBrandsFilterInit: 'Amasty_ShopbyBrand/js/components/ambrands-filter-init',
            amBrandsFilter: 'Amasty_ShopbyBrand/js/brand-filter',
            swiper: 'Amasty_LibSwiperJs/js/vendor/swiper/swiper.min'
        }
    },
    config: {
        mixins: {
            'mage/menu': {
                'Amasty_ShopbyBrand/js/lib/mage/ambrands-menu-mixin': true
            }
        }
    }
};

require.config(config);
})();
(function() {
var config = 
{
    config: 
    {
        mixins: 
        {
        	'Magento_Checkout/js/action/select-payment-method':
			{
				'Anowave_Ec/js/action/select-payment-method':true
			},
			'Magento_Checkout/js/action/select-shipping-method':
			{
				'Anowave_Ec/js/action/select-shipping-method':true
			},
			'Magento_Checkout/js/action/place-order': 
			{
			    'Anowave_Ec/js/action/place-order': true
			},
            'Magento_Checkout/js/model/step-navigator': 
            {
                'Anowave_Ec/js/step-navigator/plugin': true
            },
            'Magento_Checkout/js/view/shipping-information': 
			{
			    'Anowave_Ec/js/view/shipping-information': true
			},
            'Magento_Customer/js/action/check-email-availability':
			{
				'Anowave_Ec/js/action/check-email-availability':true
			},
			'Magento_Checkout/js/sidebar':
            {
            	'Anowave_Ec/js/sidebar': true
            },
            'Magento_Catalog/js/price-box':
            {
            	'Anowave_Ec/js/price-box': true
            },
            'Magento_SalesRule/js/view/payment/discount':
            {
            	'Anowave_Ec/js/discount': true
            },
            'Magento_ConfigurableProduct/js/configurable':
            {
            	'Anowave_Ec/js/configurable': true
            },
    		'Magento_Swatches/js/swatch-renderer':
    		{
    			'Anowave_Ec/js/swatch-renderer': true
    		}
        }
    }
};
require.config(config);
})();
(function() {
var config = {
    config: {
        mixins: {
            'Magento_Checkout/js/view/summary/abstract-total': {
                'Biofutura_Checkout/js/view/summary/abstract-total-mixin': true
            },
            'Magento_Checkout/js/view/progress-bar': {
                'Biofutura_Checkout/js/view/progress-bar-mixin': true
            },
            'Magento_Checkout/js/view/form/element/email': {
                'Biofutura_Checkout/js/view/form/element/email-mixin': true
            },
            'Magento_Ui/js/form/element/abstract': {
                'Biofutura_Checkout/js/view/form/element/abstract-mixin': true
            },
            'Magento_Checkout/js/view/payment/list': {
                'Biofutura_Checkout/js/view/payment/list-mixin': true
            },
            'Magento_Checkout/js/view/shipping': {
                'Biofutura_Checkout/js/view/shipping-mixin': true
            },
            'Magento_Checkout/js/view/billing-address': {
                'Biofutura_Checkout/js/view/billing-address-mixin': true
            }
        }
    },
    map: {
        '*': {
            checkoutLoader: 'Biofutura_Checkout/js/checkout-loader',
            'Magento_CheckoutAgreements/js/model/agreement-validator': 'Biofutura_Checkout/js/model/agreement-validator',
            'Anowave_Ec/js/step-navigator/plugin': 'Biofutura_Checkout/js/model/step-navigator-mixin',
            'ui/template/form/element/input.html': 'Biofutura_Checkout/template/form/element/input.html'
        }
    }
};

require.config(config);
})();
(function() {
var config = {
    paths: {
        "biofutura.tierCalculation": "Biofutura_Salesbox/js/tierCalculation"
    }
};

require.config(config);
})();
(function() {
var config = {
    
	map: {
        '*': {
            /*
        	'Magento_Checkout/js/action/select-payment-method':
                'Ecomwise_WasteManagement/js/action/payment/select-payment-method',
            */
            'Magento_Checkout/js/action/select-billing-address':
                'Ecomwise_WasteManagement/js/action/payment/select-billing-address'    
        }
    }
    
};

require.config(config);
})();
(function() {
// Required files for the contentslider widget

var config = {
    paths: {
    	// TODO: Path seems incorrect (requireJS gives 404 on the file), when namespace is set to Experius_ContentBlock it works
        // "bxSlider": "Experius_BaseTemplate/js/lib/jquery.bxslider",
    	// "contentSlider": "Experius_BaseTemplate/js/lib/contentSlider",
    },
    shim: {
	    "contentSlider": {
	        deps: [
	            'jquery',
	        	'bxSlider'
	        ]
	    }
	}
};

require.config(config);
})();
(function() {
var config = {
    map: {
        '*': {
            contentPageNavigation: 'Experius_ContentPage/js/model/contentPageNavigation'
        }
    }
};
require.config(config);
})();
(function() {
var config = {
    paths: {
        "bxSlider":                         "experius/js/bxSlider", // = lib/web/experius/js/bxSlider.js
        "megaMenu":                         "Experius_ContentBlock/js/lib/megaMenu",
        "heroSlider":                       "Experius_ContentBlock/js/lib/heroSlider",
    	"experius.responsiveCollapsible":   "Experius_ContentBlock/js/lib/responsiveCollapsible",
    	"experiusContentSlider":            "experius/js/experius-contentSlider" // = lib/web/experius/js/experius-contentSlider.js
    },
    shim: {
	    "heroSlider": {
	        deps: [
	            'jquery'
	        ]
	    },
	    "experiusContentSlider": {
            deps: [
                'jquery',
                'bxSlider'
            ]
        },
	}
};
require.config(config);
})();
(function() {
var config = {
    map: {
        "*": {
            "contentblockPopupMessage": "Experius_ContentBlockTypePopupMessage/js/contentblock-popup-message",
        }
    }
};

require.config(config);
})();
(function() {
var config = {
    paths: {
        "megaMenuVertical": "Experius_ContentBlockVerticalMegamenu/js/lib/megaMenuVertical"
    }
};
require.config(config);
})();
(function() {
var config = {
    paths: {
        "bxSlider":                         "experius/js/bxSlider", // = lib/web/experius/js/bxSlider.js
        "matchHeight":                      "experius/js/matchHeight", // lib/web/experius/js/matchHeight.js
        "experiusContentSlider":            "experius/js/experius-contentSlider", // = lib/web/experius/js/experius-contentSlider.js
        "experiusEqualHeight":              "experius/js/experius-equalHeight", // lib/web/experius/js/experius-matchHeight.js
    },
    shim: {
        "experiusContentSlider": {
            deps: [
                'jquery',
                'bxSlider'
            ]
        },
        "experiusEqualHeight": {
            deps: [
                'jquery',
                'matchHeight'
            ]
        }
    }
};

require.config(config);
})();
(function() {
var config = {
    "config": {
        "mixins": {
            "Experius_ContentBlock/js/lib/megaMenu": {
                'Experius_ImprovedMobileMenu/js/improvedMobileMenu': true
            }
        }
    }
};
require.config(config);
})();
(function() {
/**
 * Copyright © 2016 Magento. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            listaddtocart:'Experius_ListAddToCart/js/view/listaddtocart'
        }
    }
};

require.config(config);
})();
(function() {
var config = {
    map: {
        '*': {
            orderbysku: 'Experius_OrderBySku/js/orderbysku'
        }
    }
};
require.config(config);
})();
(function() {
/**
 * Copyright © 2016 Magento. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        '*': {
            experiusqtybuttons:'experius/js/experius-qtyChange'
        }
    }
};

require.config(config);
})();
(function() {
var config = {
    map: {
        '*': {
            experius_postcode: 'Experius_Postcode/js/widget/postcode'
        }
    }
};
require.config(config);
})();
(function() {
var config = {
    map: {
        '*': {
            previously: 'Experius_PreviouslyOrderedProducts/js/previously'
        }
    }
};
require.config(config);
})();
(function() {
var config = {
	"map": {
		"*": {
			"experiusGallery":              		"Experius_ProductPageImageGallery/js/experius-gallery",
			"experius.galleryAddVideos": 			"Experius_ProductPageImageGallery/js/gallery-add-videos",
            "lightGallery":                 		"Experius_ProductPageImageGallery/js/lib/lightgallery",
            "lightGalleryThumbnail":        		"Experius_ProductPageImageGallery/js/lib/lg-thumbnail",
            "lightGalleryZoom":        				"Experius_ProductPageImageGallery/js/lib/lg-zoom",
			"lightGalleryVideo": 					"Experius_ProductPageImageGallery/js/lib/lg-video",
			"lightGalleryHash": 					"Experius_ProductPageImageGallery/js/lib/lg-hash",
			"lightGalleryPager": 					"Experius_ProductPageImageGallery/js/lib/lg-pager",
			"slick":								"Experius_ProductPageImageGallery/js/lib/slick",
			"pinchzoom":							"Experius_ProductPageImageGallery/js/lib/pinch-zoom",
			"fullScreen":							"Experius_ProductPageImageGallery/js/lib/lg-fullscreen"
        }
	},
    "config": {
        "mixins": {
            "Magento_Swatches/js/swatch-renderer": {
                'Experius_ProductPageImageGallery/js/swatch-renderer-mixin': true
            }
        }
    }
}

require.config(config);
})();
(function() {
var config = {
    map: {
        "*": {
            "Magento_Theme/js/view/messages": "Experius_StickyMagentoNotificationMessages/js/stickyMagentoNotificationMessages"
        }
    },
    mixins: {
        "Magento_Ui/js/view/messages": {
            "Experius_StickyMagentoNotificationMessages/js/stickyCheckoutNotificationMessages": true
        }
    }
};

require.config(config);
})();
(function() {
var config = {
    "config": {
        "mixins": {
            "Magento_Swatches/js/swatch-renderer": {
                'Experius_StockInfo/js/swatch-renderer-mixin': true
            },
            "Magento_ConfigurableProduct/js/configurable": {
                'Experius_StockInfo/js/configurable-mixin': true
            }
        }
    }
};

require.config(config);
})();
(function() {
var config = {
    config: {
        mixins: {
            'mage/gallery/gallery': {
                'Fastly_Cdn/js/gallery/gallery-mixin': true
            },
            'Magento_Swatches/js/swatch-renderer': {
                'Fastly_Cdn/js/swatch-renderer-mixin': true
            }
        }
    }
};

require.config(config);
})();
(function() {
var config = {
    "map": {
        "*": {
            'Magento_Checkout/js/model/shipping-save-processor/payload-extender': 'Mageside_SubscribeAtCheckout/js/model/shipping-save-processor/payload-extender-override'
        }
    }
};
require.config(config);
})();
(function() {
var config = {
    'map': {
        '*': {
            'slick': 'Magmodules_KiyOhSR/js/slider',
            'slick-min': 'Magmodules_KiyOhSR/js/slick/slick.min'
        }
    },
    'shim': {
        'Magmodules_KiyOhSR/js/slick.min': ['jquery']
    }
};

require.config(config);
})();
(function() {
/**
 * NOTICE OF LICENSE
 *
 * This source file is subject to the Open Software License (OSL 3.0)
 * that is provided with Magento in the file LICENSE.txt.
 * It is also available through the world-wide-web at this URL:
 * http://opensource.org/licenses/osl-3.0.php
 *
 * See DISCLAIMER.md for disclaimer details.
 */

let config = {
    map: {
        '*': {
            mspCrypt: 'MultiSafepay_ConnectFrontend/js/lib/msp-crypt',
            multisafepayUtils: 'MultiSafepay_ConnectFrontend/js/lib/utils',
            multisafepayPaymentComponent: 'MultiSafepay_ConnectFrontend/js/payment-component',
            multisafepayPaymentComponentLib:  'https://pay.multisafepay.com/sdk/components/v2/components.js',
            multisafepayPaymentProcessor: 'MultiSafepay_ConnectFrontend/js/payment-request/payment',
            multisafepayApplePayButton: 'MultiSafepay_ConnectFrontend/js/apple-pay',
            multisafepayGooglePayButton: 'MultiSafepay_ConnectFrontend/js/google-pay',
            googlePayButtonLibrary: 'https://pay.google.com/gp/p/js/pay.js',
            select2: 'MultiSafepay_ConnectFrontend/js/lib/select2.min',
        }
    }
};

require.config(config);
})();
(function() {
var config = {
    deps: [
        'Magento_Theme/js/responsive',
        'Magento_Theme/js/theme'
    ]
};
require.config(config);
})();
(function() {
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

var config = {
    map: {
        "*": {
            "experiusTriggerFilter": "Magento_Catalog/js/experius-trigger-filter"
        }
    },
    paths: {
        'experiusBreadcrumbs': 'Magento_Catalog/js/product/experius-breadcrumbs'
    }
};

require.config(config);
})();
(function() {
var config = {
    "config": {
        "mixins": {
            "Magento_Swatches/js/swatch-renderer": {
                'Magento_Swatches/js/swatch-renderer-mixin': true
            }
        }
    }
};
require.config(config);
})();
(function() {
var config = {
    paths: {
        "pictureFill":              "js/lib/pictureFill",
        "bxSlider": 		        "js/lib/bxSlider",
    	"matchHeight":              "js/lib/matchHeight",
    	"experiusContentSlider": 	"js/experius/experius-contentSlider",
    	"experiusStickyHeader": 	"js/experius/experius-stickyHeader",
    	"experiusScrollTo":         "js/experius/experius-scrollTo",
    	"experiusEqualHeight":      "js/experius/experius-equalHeight",
    	"experiusQtyChange": 		"js/experius/experius-qtyChange",
    	"experiusJqueryQtyChange": 	"js/experius/experius-jquery-qtyChange",
        "experius.stickyBlock":	 	"js/experius/experius-stickyBlock",
        "experius.touchItem": 	 	"js/experius/experius-touchItem",
        "experiusScrolltotop": 		"js/experius/experius-scrolltotop",
        "experius.popup": 		    "js/experius/experius-popup",
        "experius.readmore": 	    "js/experius/experius-readmore"
    },
    shim: {
	    "experiusContentSlider": {
	        deps: [
	            'jquery',
	        	'bxSlider'
	        ]
	    },
	    "experiusEqualHeight": {
            deps: [
                'jquery',
                'matchHeight'
            ]
        }
	},
    map: {
        "*": {
            "toggleAdvanced": "Magento_Theme/js/experius-toggle"
        }
    },
    config: {
        mixins: {
            "mage/collapsible": {
                'js/experius/collapsible-mixin': true
            }
        }
    }
};

require.config(config);
})();
(function() {
var config = {
    paths: {
        "biofutura.qtyChange": 	 "Magento_Catalog/js/biofutura-qtyChange"
    },
    "config": {
        "mixins": {
            "Magento_Catalog/js/product/experius-breadcrumbs": {
                'Magento_Catalog/js/product/experius-breadcrumbs-mixin': true
            }
        }
    },
};

require.config(config);
})();
(function() {
// Required files for the contentslider widget

var config = {
    paths: {
    	// TODO: Path seems incorrect (requireJS gives 404 on the file), when namespace is set to Experius_ContentBlock it works
        // "bxSlider": "Experius_BaseTemplate/js/lib/jquery.bxslider",
    	// "contentSlider": "Experius_BaseTemplate/js/lib/contentSlider",
    },
    shim: {
	    "contentSlider": {
	        deps: [
	            'jquery',
	        	'bxSlider'
	        ]
	    }
	}
};

require.config(config);
})();
(function() {
var config = {
    paths: {
        "experiusAnchorLinks": "Experius_ContentPage/js/experius-anchorLinks"
   	}
};
require.config(config);
})();
(function() {
var config = {
    paths: {
        "bxSlider":                         "experius/js/bxSlider", // = lib/web/experius/js/bxSlider.js
        "megaMenu":                         "Experius_ContentBlock/js/lib/megaMenu",
        "heroSlider":                       "Experius_ContentBlock/js/lib/heroSlider",
    	"experius.responsiveCollapsible":   "Experius_ContentBlock/js/lib/responsiveCollapsible",
    	"experiusContentSlider":            "experius/js/experius-contentSlider" // = lib/web/experius/js/experius-contentSlider.js
    },
    shim: {
	    "heroSlider": {
	        deps: [
	            'jquery'
	        ]
	    },
	    "experiusContentSlider": {
            deps: [
                'jquery',
                'bxSlider'
            ]
        },
	}
};
require.config(config);
})();
(function() {
var config = {
    "config": {
        "mixins": {
            "Experius_ContentBlock/js/lib/megaMenu": {
                'Experius_ImprovedMobileMenu/js/improvedMobileMenu': false
            },
            "Experius_ContentBlockVerticalMegamenu/js/lib/megaMenuVertical": {
                'Experius_ImprovedMobileMenu/js/improvedMobileMenu': true
            },
        },
    },
    map: {
        '*': {
            mobileMenuSettings: 'Experius_ImprovedMobileMenu/js/mobileMenuSettings',
            'jquery-ui-modules/core': 'Experius_ImprovedMobileMenu/js/jquery-1.10.4/core',
            'jquery-ui-modules/menu': 'Experius_ImprovedMobileMenu/js/jquery-1.10.4/menu',
            'jquery/ui-modules/widgets/menu': 'Experius_ImprovedMobileMenu/js/jquery-1.10.4/menu',
            'jquery-ui-modules/position': 'Experius_ImprovedMobileMenu/js/jquery-1.10.4/position',
            'jquery-ui-modules/widget': 'Experius_ImprovedMobileMenu/js/jquery-1.10.4/widget',
        }
    }
};


require.config(config);
})();
(function() {
var config = {
    config: {
        mixins: {
            "experius.readmore": {
                'js/experius/experius-readmore-mixin': true
            },
            'Experius_EuVatValidation/js/view/form/element/euvatvalidation': {
                'Experius_EuVatValidation/js/view/form/element/euvatvalidation-mixin': true
            }
        }
    }
};

require.config(config);
})();



})(require);