/* Minification failed. Returning unminified contents.
(106,48-53): run-time warning JS1028: Expected identifier or string: class
(111,39-40): run-time warning JS1014: Invalid character: `
(54,5-33): run-time error JS1284: Function declaration should not be inside a statement. Cross-browser behavior difference: function heroSlider(options)
(97,9-35): run-time error JS1284: Function declaration should not be inside a statement. Cross-browser behavior difference: function loadSlick(result)
 */
(function (window, $) {
    'use strict';

    var Gap = window.Gap = window.Gap || {};
    Gap.navigateTo = navigateTo;

    function navigateTo(options) {
        if (!options) {
            return;
        };
        
        if (options.clickElement) {
            $(options.clickElement).on('click', function(event) {
                event.preventDefault();

                if (options.targetUrl) {
                    window.location.href = options.targetUrl;
                }
            });
        };
    };

})(window, jQuery);;(function (window, $) {
    'use strict';

    var Gap = window.Gap = window.Gap || {};
    Gap.scrollPage = scrollPage;

    function scrollPage(options) {
        if (!options) {
            return;
        };

        var settings = $.extend( {}, options );

        if (options.clickElement) {

            $(options.clickElement).on('click', function(event) {
                event.preventDefault();

                if (options.targetElement) {
                    document.querySelector(options.targetElement).scrollIntoView({ behavior: 'smooth' });
                }
            });
        };
    };

})(window, jQuery);;(function (window, $) {
    'use strict';

    var Gap = window.Gap = window.Gap || {};
    Gap.heroSlider = heroSlider;

    function heroSlider(options) {
        if (!options) {
            return;
        }

        Gap.heroSlider.options = options;

        var $heroCarousel = $(options.container);
        $heroCarousel.css('clear', 'both');

        if (options.bannerJsonUrl) {
            try {
                $.get(options.bannerJsonUrl)
                    .done(function (result) {
                        gotData(result);
                    })
                    .fail(function (error) {
                        return 'Unable to get data - ' + error;
                    });
            }
            catch (ex) {
                gotError(ex);
            }
        }

        function gotData(result) {
            if (result) {
                try {
                    $heroCarousel.empty();
                    loadSlick(result);
                }
                catch (ex) {
                    gotError('No data retrieved - ' + ex);
                }
            }
        }

        function gotError(ex) {
            if (appInsights) {
                appInsights.trackException(ex);
            }
        }

        function loadSlick(result) {
            if (typeof result === 'undefined')
                gotError('No data provided');

            if (!result.items || !result.items.length)
                gotError('No images in data provided');

            $.each(result.items, function (i, item) {

                var slide = $('<div></div>', { class: 'homepage-hero-slider-item' });
                $(slide).data('time', item.heading ? "6000" : "4000").append(getSlideImg(item));

                if (item.heading) {

                    var viewAuction = `<div class="homepage-hero-cta container homepage-hero-slider-item-img-gradient">
                                    <div class="section">
                                        <div class="section-container">
                                            <div class="homepage-hero-info">
                                                <div class="homepage-hero-info-text">
                                                    <span class="homepage-hero-info-header">`+ item.auctionHouseName + `</span>
                                                    <span class="homepage-hero-info-header-date">`+ item.date + `</span>
                                                </div>                                            
                                                <h2 class="homepage-hero-info-title"><span >`+ item.heading + `</span></h2>
                                                <a href="`+ item.itemLink + `" id="` + 'reskin_adBanner_auction' + i + `" class="ui button secondary homepage-hero-info-auctionBtn">` + Gap.heroSlider.options.viewThisAuctionDescription + `</a>
                                            </div>
                                        </div>
                                    </div>
                                </div>`;
                    $(slide).append(viewAuction);
                    $heroCarousel.append(slide);

                } else {

                    var viewAuctions = `<div class="homepage-hero-cta container homepage-hero-slider-item-img-gradient">
                                    <div class="section">
                                        <div class="section-container">
                                            <h2 class="homepage-hero-info-titleAll"><span>` + Gap.heroSlider.options.auctionsDescription + `</span></h2>
                                            <a href="" id="`+ 'reskin_adBanner' + i + `" class="ui button secondary">` + Gap.heroSlider.options.viewAllAuctionDescription + `</a>
                                        </div>
                                    </div>
                                </div>`;

                    $(slide).append(viewAuctions);
                    $heroCarousel.append(slide);

                    if (typeof Gap.navigateTo === 'function') {
                        Gap.navigateTo({
                            clickElement: '#reskin_adBanner' + i,
                            targetUrl: Gap.heroSlider.options.auctionNavigateUrl
                        });
                    }

                }

            });

            $heroCarousel.slick({
                dots: true,
                arrows: false,
                infinite: true,
                slidesToShow: 1,
                autoplay: true,
                speed: 1000,
                autoplaySpeed: function (context) { return $(context.$slides[context.currentSlide]).data('time'); },
                pauseOnHover: false,
                fade: true,
                cssEase: 'linear'
            });

        }

        function getSlideImg(item) {
            if (typeof item === 'undefined')
                return '';

            var imageContainer = $('<div></div>', { class: 'homepage-hero-slider-item-img' });

            var itemImage;

            if (!item.mainImage) {
                itemImage = [
                    '<span class="no-image">',
                    '<span>', portalScriptResources.No_Image, '</span>',
                    '<img src="/content/sr/images/blank-image-120x120.png" alt="', portalScriptResources.No_Image, '" />',
                    '</span>'
                ].join('');
            } else {
                var imageSrc = document.createElement("A");
                imageSrc.href = item.mainImage.url + item.mainImage.extension;

                $(imageContainer).attr('style', 'background-image: url(' + imageSrc.origin + imageSrc.pathname + ');');
                if (item.heading) {
                    itemImage = '<img src="' + imageSrc.origin + imageSrc.pathname + '" alt="' + Gap.Common.UI.escapeHtml(item.heading) + '" />';
                } else {
                    itemImage = '<img src="' + imageSrc.origin + imageSrc.pathname + '" alt="' + Gap.Common.UI.escapeHtml(item.title) + '" />';
                }
                
            };

            $(imageContainer).append(itemImage);

            return imageContainer;
        }
    }
})(window, jQuery);;