﻿!function(o,e){function i(o){for(var e=i.options,t=e.parser[e.strictMode?"strict":"loose"].exec(o),n={},a=14;a--;)n[e.key[a]]=t[a]||"";return n[e.q.name]={},n[e.key[12]].replace(e.q.parser,function(o,i,t){i&&(n[e.q.name][i]=t)}),n}i.options={strictMode:!1,key:["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],q:{name:"queryKey",parser:/(?:^|&)([^&=]*)=?([^&]*)/g},parser:{strict:/^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,loose:/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/}};var t=function(){var e=!1;return function(o){(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(o)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(o.substr(0,4)))&&(e=!0)}(navigator.userAgent||navigator.vendor||o.opera),e}();o.dnnModal={load:function(){try{if(void 0!==parent.location.href){var o=parent;if(void 0!==o.parent.$find)if(-1==location.href.indexOf("popUp")||o.location.href.indexOf("popUp")>-1){var e=o.jQuery("#iPopUp"),i=e.dialog("option","refresh"),t=e.dialog("option","closingUrl"),n=e.dialog("option","minWidth"),a=e.dialog("option","minHeight"),r=e.dialog("option","showReturn");t||(t=location.href),!0===e.dialog("isOpen")&&e.dialog("option",{close:function(o,e){dnnModal.refreshPopup({url:t,width:n,height:a,showReturn:r,refresh:i})}}).dialog("close")}else o.jQuery("#iPopUp").dialog({autoOpen:!1,title:document.title})}return!1}catch(o){return!0}},show:function(n,a,r,l,d,s){var p=e("#iPopUp");p.length&&(p[0].src="about:blank",p.remove()),p=e('<iframe id="iPopUp" name="iPopUp" src="about:blank" scrolling="auto" frameborder="0"></iframe>'),e(document.body).append(p),e(document).find("html").css("overflow","hidden");for(var c=document.styleSheets,h=!1,m=0,g=c.length;m<g;m++){var u=c[m].href;if("string"==typeof u&&u.indexOf("admin.css")>-1){h=!0;break}}var f=!h&&(e(o).width()<481||t);f?e("html").addClass("mobileView"):e("html").removeClass("mobileView");var w=0,b=function(){p.prev(".dnnLoading").remove()},v=function(){p.on("load",function(){b();var e=document.getElementById("iPopUp"),t=o.location.hostname.toLowerCase(),a=o.location.port.toLowerCase(),r=i(n),l=r.host.toLowerCase(),d=r.port.toLowerCase();if(l=l||t,d=d||a,t===l&&a===d)try{if(f){var s=e.contentDocument.body,c=e.contentDocument.documentElement;c.style.width=w+"px",s.className+="mobileView dnnFormPopup dnnFormPopupMobileView";var h=Math.max(s.scrollHeight,s.offsetHeight,c.clientHeight,c.scrollHeight,c.offsetHeight);p.css("height",h+100).dialog("option","position",{my:"top",at:"top"})}e.contentWindow.dnnModal.show=function(o,e,i,t,n,a){var r=parent.jQuery("#iPopUp");a||(a=location.href),r.dialog("isOpen")&&r.dialog("option",{close:function(){parent.dnnModal.show(o,e,i,t,n,a)}}).dialog("close")}}catch(o){}}),p[0].src=n,"function"==typeof e.ui.dialog.prototype.options.open&&e.ui.dialog.prototype.options.open.apply(this,arguments)};if(f){w=e(o).width()-100;var y=e("body").css("height");p.dialog({modal:!0,autoOpen:!0,dialogClass:"dnnFormPopup dnnFormPopupMobileView",resizable:!1,closeOnEscape:!0,refresh:d,showReturn:a,closingUrl:s,minHeight:r,position:{my:"top",at:"top"},draggable:!1,open:function(){e("#Form").hide(),e("body").css("height","auto"),p.parent().css({width:"auto",left:"0",right:"0",top:"0","box-shadow":"none"}),o.scrollTo(0,0),v()},close:function(){e("#Form").show(),y&&e("body").css("height",y),o.scrollTo(0,0),o.dnnModal.closePopUp(d,s)}})}else if(p.dialog({modal:!0,autoOpen:!0,dialogClass:"dnnFormPopup",position:{my:"center",at:"center"},minWidth:l,minHeight:r,maxWidth:1920,maxHeight:1080,resizable:!0,closeOnEscape:!0,refresh:d,showReturn:a,closingUrl:s,open:v,close:function(){o.dnnModal.closePopUp(d,s)}}).width(l-11).height(r-11),0===p.parent().find(".ui-dialog-title").next("a.dnnModalCtrl").length){var k=e('<a class="dnnModalCtrl"></a>');p.parent().find(".ui-dialog-titlebar-close").wrap(k);var x=e('<a href="#" class="dnnToggleMax"><span>Max</span></a>');p.parent().find(".ui-dialog-titlebar-close").before(x),x.click(function(i){i.preventDefault();var t,n,a=e(o),r="center",l="center",d=0,s=0;if(e("button.ui-dialog-titlebar-close").length&&(s=e("button.ui-dialog-titlebar-close").parent(".dnnModalCtrl").height(),d=e("button.ui-dialog-titlebar-close").parent(".dnnModalCtrl").width()),p.data("isMaximized")){var c=p.data("height")+100;c>=a.height()&&(c=p.data("height")),t=c-s,n=p.data("width"),p.data("isMaximized",!1)}else{p.data("height",p.dialog("option","minHeight")).data("width",p.dialog("option","minWidth"));var h=0;e("#personaBar-iframe").length&&(h=e("#personaBar-iframe").width()),n=a.outerWidth()-h-d/7.5-40,t=a.height()-s,r="right-"+d/5.5+" center",l="right center-"+s/11,p.data("isMaximized",!0)}p.dialog("option","height",t),p.dialog("option","width",n),p.dialog("option","position",{my:r,at:l,of:o})})}if(function(){var o=e('<div class="dnnLoading"></div>');o.css({width:p.width(),height:p.height()}),p.before(o)}(),"true"===a.toString())return!1},closePopUp:function(o,i){var t=parent,n=t.jQuery("#iPopUp");void 0!==o&&null!=o||(o=!0),"true"==o.toString()?(void 0!==i&&""!=i||(i=t.location.href),t.location.href=i,n.hide()):n.dialog("option","close",null).dialog("close"),e(t.document).find("html").css("overflow","")},refreshPopup:function(o){var e=parent,i=e.parent;e.location.href!==i.location.href&&e.location.href!==o.url?i.dnnModal.show(o.url,o.showReturn,o.height,o.width,o.refresh,o.closingUrl):dnnModal.closePopUp(o.refresh,o.url)}},o.dnnModal.load()}(window,jQuery);
;;;/******/ (function() { // webpackBootstrap
/******/ 	"use strict";
/******/ 	var __webpack_modules__ = ({

/***/ 555:
/***/ (function(__unused_webpack_module, exports) {


var __assign = (this && this.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
var GoogleCampignManager360Api = /** @class */ (function () {
    function GoogleCampignManager360Api(floodlightConfigCode) {
        this.allowCustomScripts = true;
        this.floodlightConfigCode = floodlightConfigCode;
    }
    GoogleCampignManager360Api.prototype.sendStandardActivityCounterEvent = function (activityGroupTagString, activityTagString, customData) {
        var activityName = 'standard';
        this.sendCounterEvent(activityGroupTagString, activityTagString, activityName, customData);
    };
    GoogleCampignManager360Api.prototype.sendUniqueActivityCounterEvent = function (activityGroupTagString, activityTagString, customData) {
        var activityName = 'unique';
        this.sendCounterEvent(activityGroupTagString, activityTagString, activityName, customData);
    };
    GoogleCampignManager360Api.prototype.sendCounterEvent = function (activityGroupTagString, activityTagString, acitivityName, customData) {
        var defaultData = {
            'allow_custom_scripts': this.allowCustomScripts,
            'send_to': this.floodlightConfigCode + "/" + activityGroupTagString + "/" + activityTagString + "+" + acitivityName,
        };
        var data = __assign(__assign({}, defaultData), customData);
        this.sendConversionEvent(data);
    };
    GoogleCampignManager360Api.prototype.sendConversionEvent = function (data) {
        if (!window.pdtFloodlightGtag
            || typeof window.pdtFloodlightGtag !== "function") {
            return;
        }
        window.pdtFloodlightGtag('event', 'conversion', data);
    };
    return GoogleCampignManager360Api;
}());
exports["default"] = GoogleCampignManager360Api;


/***/ }),

/***/ 821:
/***/ (function(__unused_webpack_module, exports) {


Object.defineProperty(exports, "__esModule", ({ value: true }));
var GoogleTagManagerApi = /** @class */ (function () {
    function GoogleTagManagerApi(dataLayer) {
        this.dataLayer = dataLayer;
    }
    GoogleTagManagerApi.prototype.pushData = function (data) {
        this.dataLayer.push(data);
    };
    return GoogleTagManagerApi;
}());
exports["default"] = GoogleTagManagerApi;


/***/ }),

/***/ 471:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {


var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.PolarisDigitasManager = void 0;
var GoogleCampignManager360Api_1 = __importDefault(__webpack_require__(555));
var GoogleTagManagerApi_1 = __importDefault(__webpack_require__(821));
var UnitType;
(function (UnitType) {
    UnitType[UnitType["All"] = 0] = "All";
    UnitType[UnitType["Inventory"] = 1] = "Inventory";
    UnitType[UnitType["Model"] = 2] = "Model";
})(UnitType || (UnitType = {}));
var PolarisDigitasManager = /** @class */ (function () {
    function PolarisDigitasManager() {
        this.manufacturerMappings = [
            {
                manufacturerName: "Slingshot",
                brand: "SLG"
            },
            {
                manufacturerName: "Indian",
                brand: "IMC"
            },
            {
                manufacturerName: "Timbersled",
                brand: "TSL"
            },
        ];
        this.typeMappings = [
            {
                type: "Ranger",
                brand: "RGR"
            },
            {
                type: "RZR",
                brand: "RZR"
            },
            {
                type: "Sportsman",
                brand: "ATV"
            },
            {
                type: "General",
                brand: "GRL"
            },
            {
                type: "Youth",
                brand: "YTH"
            }
        ];
        this.leadTypeMappings = [
            {
                formNames: ["Test Ride", "Test Drive"],
                leadType: "testride",
                unitType: UnitType.All
            },
            {
                formNames: ["Request More Information"],
                leadType: "getquote",
                unitType: UnitType.Model
            },
            {
                formNames: ["Request More Information"],
                leadType: "invsearch",
                unitType: UnitType.Inventory
            },
            {
                formNames: ["Finance App", "Financing"],
                leadType: "financeapp",
                unitType: UnitType.All
            },
            {
                formNames: ["Pre-Order", "Preorder"],
                leadType: "preorder",
                unitType: UnitType.All
            },
        ];
        if (window.dx1PolarisDigitas) {
            this.floodlightConfigCode = window.dx1PolarisDigitas.floodlightConfigCode;
            this.dealerId = window.dx1PolarisDigitas.dealerId;
        }
        this.googleCampignManager360 = new GoogleCampignManager360Api_1.default(this.floodlightConfigCode);
        this.googleTagManagerApi = new GoogleTagManagerApi_1.default(window.pdtDataLayer);
    }
    PolarisDigitasManager.instance = function () {
        if (!PolarisDigitasManager._instance) {
            PolarisDigitasManager._instance = new PolarisDigitasManager();
        }
        return PolarisDigitasManager._instance;
    };
    PolarisDigitasManager.isActivated = function () {
        return !!window.dx1PolarisDigitas;
    };
    PolarisDigitasManager.prototype.sendLandingPageEvent = function () {
        var activityGroupTagString = 'loc_orv';
        var activityTagString = 'locorvlp';
        var url = this.getCurrentUrl();
        var customData = {
            'u13': this.dealerId,
            'u14': url,
        };
        this.googleCampignManager360.sendStandardActivityCounterEvent(activityGroupTagString, activityTagString, customData);
    };
    PolarisDigitasManager.prototype.sendThankyouPageEvent = function (modelName) {
        var activityGroupTagString = 'loc_orv';
        var activityTagString = 'locorvty';
        var url = this.getCurrentUrl();
        var customData = {
            'u13': this.dealerId,
            'u14': url,
            'u4': modelName,
        };
        this.googleCampignManager360.sendUniqueActivityCounterEvent(activityGroupTagString, activityTagString, customData);
    };
    PolarisDigitasManager.prototype.sendFormSubmitEvent = function (data) {
        if (!data) {
            return;
        }
        var formType = this.getFormTypeForSubmitEvent({
            isInventory: data.isInventory,
            manufacturerName: data.manufacturerName,
            category: data.category,
            type: data.type,
            formTitle: data.formTitle
        });
        if (!formType) {
            return;
        }
        var eventData = {
            event: "formSubmit",
            formType: formType,
            formId: data.leadTransactionId,
        };
        this.googleTagManagerApi.pushData(eventData);
    };
    PolarisDigitasManager.prototype.getFormTypeForSubmitEvent = function (data) {
        var brand = this.getBrand(data.manufacturerName, data.category, data.type);
        var leadType = this.getLeadType(data.formTitle, data.isInventory);
        if (!brand || !leadType) {
            return null;
        }
        return "PO-" + brand + "-" + leadType;
    };
    PolarisDigitasManager.prototype.getBrand = function (manufacturerName, category, type) {
        var filteredManufacturerMappings = this.manufacturerMappings.filter(function (x) { return x.manufacturerName.toLowerCase() === manufacturerName.toLowerCase(); }).pop();
        if (filteredManufacturerMappings) {
            return filteredManufacturerMappings.brand;
        }
        if (manufacturerName === "Polaris") {
            if (category.toLowerCase() === "snowmobiles") {
                return "SNO";
            }
            var filteredTypeMappings = this.typeMappings.filter(function (x) { return type.toLowerCase().indexOf(x.type.toLowerCase()) > -1; }).pop();
            if (filteredTypeMappings) {
                return filteredTypeMappings.brand;
            }
        }
        return null;
    };
    PolarisDigitasManager.prototype.getLeadType = function (formTitle, isInventory) {
        if (!formTitle) {
            return null;
        }
        var unitType = this.convertToUnitType(isInventory);
        var filteredLeadTypeMappings = this.leadTypeMappings.filter(function (x) {
            return x.formNames.filter(function (formName) { return formTitle.indexOf(formName) > -1; }).length > 0
                && (x.unitType === UnitType.All || x.unitType === unitType);
        })
            .pop();
        if (filteredLeadTypeMappings) {
            return filteredLeadTypeMappings.leadType;
        }
        return null;
    };
    PolarisDigitasManager.prototype.convertToUnitType = function (isInventory) {
        if (isInventory === true) {
            return UnitType.Inventory;
        }
        return UnitType.Model;
    };
    PolarisDigitasManager.prototype.getCurrentUrl = function () {
        return window.location.href;
    };
    return PolarisDigitasManager;
}());
exports.PolarisDigitasManager = PolarisDigitasManager;
exports["default"] = PolarisDigitasManager;


/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
/******/ 	
/******/ 	// startup
/******/ 	// Load entry module and return exports
/******/ 	// This entry module is referenced by other modules so it can't be inlined
/******/ 	var __webpack_exports__ = __webpack_require__(471);
/******/ 	var __webpack_export_target__ = window;
/******/ 	for(var i in __webpack_exports__) __webpack_export_target__[i] = __webpack_exports__[i];
/******/ 	if(__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, "__esModule", { value: true });
/******/ 	
/******/ })()
;
;;;/******/ (function() { // webpackBootstrap
/******/ 	"use strict";
/******/ 	var __webpack_modules__ = ({

/***/ 909:
/***/ (function(__unused_webpack_module, exports) {


Object.defineProperty(exports, "__esModule", ({ value: true }));
var ShiftDigitalAnalyticsApi = /** @class */ (function () {
    function ShiftDigitalAnalyticsApi(sd) {
        this.sd = sd;
    }
    ShiftDigitalAnalyticsApi.prototype.sendData = function (data) {
        this.sd('dataLayer', data);
        this.sd('send');
    };
    ShiftDigitalAnalyticsApi.prototype.sendPageView = function () {
        this.sd('send', 'pageview');
    };
    ShiftDigitalAnalyticsApi.prototype.sendDataWithCallBack = function (eventName, data) {
        var _this = this;
        return new Promise(function (resolve) {
            _this.setProp(data);
            _this.sd('send', 'event', eventName, {
                hitCallback: function () {
                    resolve();
                }
            });
        });
    };
    ShiftDigitalAnalyticsApi.prototype.setProp = function (data, prefix) {
        var _this = this;
        if (prefix === void 0) { prefix = null; }
        var keys = Object.keys(data);
        keys.forEach(function (key) {
            var propertyValue = data[key];
            if (typeof propertyValue === "object") {
                var newPrefix = "" + (prefix !== null && prefix !== void 0 ? prefix : '') + key + ".";
                _this.setProp(propertyValue, newPrefix);
            }
            else {
                var propertyName = "" + (prefix !== null && prefix !== void 0 ? prefix : '') + key;
                _this.sd('setProp', propertyName, propertyValue);
            }
        });
    };
    return ShiftDigitalAnalyticsApi;
}());
exports["default"] = ShiftDigitalAnalyticsApi;


/***/ }),

/***/ 526:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {


var __extends = (this && this.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (this && this.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
var ShiftDigitalAnalyticsBase_1 = __importDefault(__webpack_require__(987));
var bwmFormTypes = [
    "Get a Quote",
    "Test Drive",
    "Request More Info",
    "Email a Friend",
    "General Contact",
    "Service",
    "Parts",
    "Schedule Service",
    "Employment",
    "Trade In",
    "Finance",
    "Payment Estimator",
    "Specials",
    "Vehicle Finder",
    "Dealer Custom",
    "Make an Offer",
    "Send to Mobile",
];
var bmwOtherFormType = 'Other';
var BmwShiftDigitalAnalytics = /** @class */ (function (_super) {
    __extends(BmwShiftDigitalAnalytics, _super);
    function BmwShiftDigitalAnalytics() {
        var _this = _super.call(this, window.sdb) || this;
        _this.bmwSelectors = {
            brochureLink: '[data-print-brochure]',
        };
        _this.eventNamespace = 'bwm';
        return _this;
    }
    BmwShiftDigitalAnalytics.prototype.sendBrochureDownloadEvent = function (brochureName) {
        var eventName = 'brochureDownload';
        var data = {
            events: eventName,
            brochureName: brochureName,
        };
        _super.prototype.sendData.call(this, data);
    };
    BmwShiftDigitalAnalytics.prototype.initBrochureDownloadEventHandler = function () {
        var _this = this;
        var rootSelector = 'body';
        var selector = this.bmwSelectors.brochureLink;
        var eventName = "click." + this.eventNamespace;
        $(rootSelector).on(eventName, selector, function (e) {
            var $link = $(e.currentTarget);
            var brochureName = $link.data("print-brochure");
            _this.sendBrochureDownloadEvent(brochureName);
        });
    };
    BmwShiftDigitalAnalytics.prototype.getFormType = function (formName) {
        var bmwFormType = bwmFormTypes.filter(function (x) { return formName.indexOf(x) > -1; }).pop();
        return bmwFormType ? bmwFormType : bmwOtherFormType;
    };
    BmwShiftDigitalAnalytics.prototype.sendFormShownEventImpl = function (formEventData) {
        var _a, _b, _c;
        var formType = this.getFormType(formEventData.formName);
        if (!formType) {
            return;
        }
        var formVehicle = (_b = (_a = formEventData === null || formEventData === void 0 ? void 0 : formEventData.shiftDigitalAnalyticsVehicleData) === null || _a === void 0 ? void 0 : _a.overrideData) !== null && _b !== void 0 ? _b : (_c = formEventData === null || formEventData === void 0 ? void 0 : formEventData.shiftDigitalAnalyticsVehicleData) === null || _c === void 0 ? void 0 : _c.bmw;
        _super.prototype.sendFormShownEventData.call(this, formType, formVehicle);
    };
    BmwShiftDigitalAnalytics.prototype.initFormInitiationEventHandlerImpl = function ($form, formEventData) {
        var _a, _b, _c;
        var formType = this.getFormType(formEventData.formName);
        if (!formType) {
            return;
        }
        var formVehicle = (_b = (_a = formEventData === null || formEventData === void 0 ? void 0 : formEventData.shiftDigitalAnalyticsVehicleData) === null || _a === void 0 ? void 0 : _a.overrideData) !== null && _b !== void 0 ? _b : (_c = formEventData === null || formEventData === void 0 ? void 0 : formEventData.shiftDigitalAnalyticsVehicleData) === null || _c === void 0 ? void 0 : _c.bmw;
        _super.prototype.doInitFormInitiationEventHandlers.call(this, $form, formType, formVehicle);
    };
    BmwShiftDigitalAnalytics.prototype.sendTypedSearchEventImpl = function (keyword) {
        _super.prototype.doSendTypedSearchEvent.call(this, keyword);
    };
    BmwShiftDigitalAnalytics.prototype.initCarouselClickEventHandlerImpl = function ($root) {
        _super.prototype.doInitCarouselClickEventHandler.call(this, $root);
    };
    BmwShiftDigitalAnalytics.prototype.sendPageViewEventImpl = function () {
        _super.prototype.doSendPageViewEvent.call(this);
    };
    BmwShiftDigitalAnalytics.prototype.sendEmptyFilterSearchEventImpl = function () {
        _super.prototype.doSendEmptyFilterSearchEvent.call(this);
    };
    BmwShiftDigitalAnalytics.prototype.initEventHandlers = function () {
        var _a;
        _super.prototype.initPromotionClickEventHandler.call(this);
        _super.prototype.initClickToCallEventHandler.call(this);
        var shiftDigitalAnalyticsData = (_a = window === null || window === void 0 ? void 0 : window.dx1ShiftDigitalAnalytics) === null || _a === void 0 ? void 0 : _a.bmw;
        if (shiftDigitalAnalyticsData) {
            if (shiftDigitalAnalyticsData.isHoursAndDirectionPageType) {
                _super.prototype.sendGetDirectionsEvent.call(this);
            }
            this.initBrochureDownloadEventHandler();
        }
    };
    BmwShiftDigitalAnalytics.prototype.sendFormSubmissionEvent = function (formEventData) {
        var _a, _b, _c;
        var extendedData = {
            leadType: 'lead',
            prefContact: 'email',
        };
        if (formEventData.leadTransactionId) {
            extendedData = __assign(__assign({}, extendedData), { leadId: formEventData.leadTransactionId });
        }
        var formVehicle = (_b = (_a = formEventData === null || formEventData === void 0 ? void 0 : formEventData.shiftDigitalAnalyticsVehicleData) === null || _a === void 0 ? void 0 : _a.overrideData) !== null && _b !== void 0 ? _b : (_c = formEventData === null || formEventData === void 0 ? void 0 : formEventData.shiftDigitalAnalyticsVehicleData) === null || _c === void 0 ? void 0 : _c.bmw;
        if (formVehicle) {
            extendedData = __assign(__assign({}, extendedData), { formVehicle: formVehicle });
        }
        var formType = this.getFormType(formEventData.formName);
        if (formType) {
            return _super.prototype.doSendFormSubmissionEvent.call(this, formEventData, formType, extendedData);
        }
        return Promise.resolve();
    };
    return BmwShiftDigitalAnalytics;
}(ShiftDigitalAnalyticsBase_1.default));
exports["default"] = BmwShiftDigitalAnalytics;


/***/ }),

/***/ 626:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {


var __extends = (this && this.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (this && this.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
var ShiftDigitalAnalyticsBase_1 = __importDefault(__webpack_require__(987));
var HdShiftDigitalAnalytics = /** @class */ (function (_super) {
    __extends(HdShiftDigitalAnalytics, _super);
    function HdShiftDigitalAnalytics() {
        var _this = _super.call(this, window.sd) || this;
        _this.eventNamespace = 'hd';
        return _this;
    }
    HdShiftDigitalAnalytics.prototype.getFormType = function (formName) {
        var formTypes = ['Get a Quote', 'Test Drive', 'Request More Info', 'Trade-In'];
        var filterdFormTypes = formTypes.filter(function (x) { return formName.indexOf(x) > -1; });
        return filterdFormTypes.length ? filterdFormTypes[0] : null;
    };
    HdShiftDigitalAnalytics.prototype.sendFormShownEventImpl = function (formEventData) {
        var _a, _b, _c;
        var formType = this.getFormType(formEventData.formName);
        if (!formType) {
            return;
        }
        var formVehicle = (_b = (_a = formEventData === null || formEventData === void 0 ? void 0 : formEventData.shiftDigitalAnalyticsVehicleData) === null || _a === void 0 ? void 0 : _a.overrideData) !== null && _b !== void 0 ? _b : (_c = formEventData === null || formEventData === void 0 ? void 0 : formEventData.shiftDigitalAnalyticsVehicleData) === null || _c === void 0 ? void 0 : _c.hd;
        _super.prototype.sendFormShownEventData.call(this, formType, formVehicle);
    };
    HdShiftDigitalAnalytics.prototype.initFormInitiationEventHandlerImpl = function ($form, formEventData) {
        var _a, _b, _c;
        var formType = this.getFormType(formEventData.formName);
        if (!formType) {
            return;
        }
        var formVehicle = (_b = (_a = formEventData === null || formEventData === void 0 ? void 0 : formEventData.shiftDigitalAnalyticsVehicleData) === null || _a === void 0 ? void 0 : _a.overrideData) !== null && _b !== void 0 ? _b : (_c = formEventData === null || formEventData === void 0 ? void 0 : formEventData.shiftDigitalAnalyticsVehicleData) === null || _c === void 0 ? void 0 : _c.hd;
        _super.prototype.doInitFormInitiationEventHandlers.call(this, $form, formType, formVehicle);
    };
    HdShiftDigitalAnalytics.prototype.sendFilterSearchEventImpl = function (filterSearch, countSearchResults) {
        _super.prototype.doSendFilterSearchEvent.call(this, filterSearch, countSearchResults);
    };
    HdShiftDigitalAnalytics.prototype.sendTypedSearchEventImpl = function (keyword) {
        _super.prototype.doSendTypedSearchEvent.call(this, keyword);
    };
    HdShiftDigitalAnalytics.prototype.initCarouselClickEventHandlerImpl = function ($root) {
        _super.prototype.doInitCarouselClickEventHandler.call(this, $root);
    };
    HdShiftDigitalAnalytics.prototype.sendPageViewEventImpl = function () {
        _super.prototype.doSendPageViewEvent.call(this);
    };
    HdShiftDigitalAnalytics.prototype.sendEmptyFilterSearchEventImpl = function () {
        _super.prototype.doSendEmptyFilterSearchEvent.call(this);
    };
    HdShiftDigitalAnalytics.prototype.initEventHandlers = function () {
        _super.prototype.initClickToCallEventHandler.call(this);
        _super.prototype.initPromotionClickEventHandler.call(this);
        if (window.dx1ShiftDigitalAnalytics
            && window.dx1ShiftDigitalAnalytics.hd
            && window.dx1ShiftDigitalAnalytics.hd.isHoursAndDirectionPageType) {
            _super.prototype.sendGetDirectionsEvent.call(this);
        }
    };
    HdShiftDigitalAnalytics.prototype.sendFormSubmissionEvent = function (formEventData) {
        var _a, _b, _c;
        var extendedData = {
            leadType: 'lead',
            prefContact: 'email',
        };
        if (formEventData.leadTransactionId) {
            extendedData = __assign(__assign({}, extendedData), { leadId: formEventData.leadTransactionId });
        }
        var formVehicle = (_b = (_a = formEventData === null || formEventData === void 0 ? void 0 : formEventData.shiftDigitalAnalyticsVehicleData) === null || _a === void 0 ? void 0 : _a.overrideData) !== null && _b !== void 0 ? _b : (_c = formEventData === null || formEventData === void 0 ? void 0 : formEventData.shiftDigitalAnalyticsVehicleData) === null || _c === void 0 ? void 0 : _c.hd;
        if (formVehicle) {
            extendedData = __assign(__assign({}, extendedData), { formVehicle: formVehicle });
        }
        var formType = this.getFormType(formEventData.formName);
        if (formType) {
            return _super.prototype.doSendFormSubmissionEvent.call(this, formEventData, formType, extendedData);
        }
        return Promise.resolve();
    };
    return HdShiftDigitalAnalytics;
}(ShiftDigitalAnalyticsBase_1.default));
exports["default"] = HdShiftDigitalAnalytics;


/***/ }),

/***/ 16:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {


var __extends = (this && this.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __assign = (this && this.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
var ShiftDigitalAnalyticsBase_1 = __importDefault(__webpack_require__(987));
var PolarisShiftDigitalAnalytics = /** @class */ (function (_super) {
    __extends(PolarisShiftDigitalAnalytics, _super);
    function PolarisShiftDigitalAnalytics() {
        var _this = _super.call(this, window.sd) || this;
        _this.eventNamespace = 'polaris';
        return _this;
    }
    PolarisShiftDigitalAnalytics.prototype.initEventHandlers = function () {
        _super.prototype.initClickToCallEventHandler.call(this);
        if (window.dx1ShiftDigitalAnalytics
            && window.dx1ShiftDigitalAnalytics.polaris
            && window.dx1ShiftDigitalAnalytics.polaris.isHoursAndDirectionPageType) {
            _super.prototype.sendGetDirectionsEvent.call(this);
        }
    };
    PolarisShiftDigitalAnalytics.prototype.sendFormSubmissionEvent = function (formEventData) {
        var _a;
        var formType = formEventData.formName;
        var extendedData = null;
        if (formEventData.isPolarisOrIndianVendor) {
            extendedData = __assign({ VehicleDetails: (_a = formEventData === null || formEventData === void 0 ? void 0 : formEventData.shiftDigitalAnalyticsVehicleData) === null || _a === void 0 ? void 0 : _a.polaris });
        }
        return _super.prototype.doSendFormSubmissionEvent.call(this, formEventData, formType, extendedData);
    };
    return PolarisShiftDigitalAnalytics;
}(ShiftDigitalAnalyticsBase_1.default));
exports["default"] = PolarisShiftDigitalAnalytics;


/***/ }),

/***/ 987:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {


var __assign = (this && this.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
/* eslint-disable @typescript-eslint/no-empty-function */
var shiftDigitalAnalyticsApi_1 = __importDefault(__webpack_require__(909));
var ShiftDigitalAnalyticsBase = /** @class */ (function () {
    function ShiftDigitalAnalyticsBase(sd) {
        this.inputSelector = ':input';
        this.mainButtonSelector = ':button.btn-primary,:submit';
        this.selectors = {
            promotion: 'a.promo-link[data-promotion=1]',
            clickToCall: 'a[href^="tel:"]',
        };
        this.carouselClickEventContainers = [];
        this.shiftDigitalAnalyticsApi = new shiftDigitalAnalyticsApi_1.default(sd);
    }
    ShiftDigitalAnalyticsBase.prototype.addCarouselClickEventPromise = function (promises, $promotion) {
        var _this = this;
        this.carouselClickEventContainers.forEach(function (container) {
            if ($promotion.closest(container).length) {
                promises.push(_this.sendCarouselClickEvent($promotion));
            }
        });
    };
    ShiftDigitalAnalyticsBase.prototype.handlePromotionClickEvent = function (e) {
        var url = e.currentTarget.href;
        var $promotion = $(e.currentTarget);
        var offerId = $promotion.data('promotion-id');
        var offerName = $promotion.data('promotion-name');
        var eventName = 'offerClick';
        var data = {
            offerClick: {
                offerId: offerId,
                offerName: offerName,
            },
        };
        e.preventDefault();
        var sendDataPromise = this.sendDataWithCallBack(eventName, data);
        var promises = [sendDataPromise];
        if (this.hasCarouselClickEventHandler) {
            this.addCarouselClickEventPromise(promises, $promotion);
        }
        Promise.all(promises).then(function () {
            window.location.assign(url);
        });
    };
    ShiftDigitalAnalyticsBase.prototype.addCarouselClickEventHandler = function ($root) {
        var _this = this;
        var selector = this.selectors.promotion;
        var eventNamespace = this.getEventNamespace();
        var eventName = "click." + eventNamespace;
        $root.find(selector).on(eventName, function (e) {
            var $element = $(e.currentTarget);
            _this.sendCarouselClickEvent($element);
        });
    };
    ShiftDigitalAnalyticsBase.prototype.sendCarouselClickEvent = function ($element) {
        var assetPosition = parseInt($element.data('item-index'));
        var assetName = $element.data('promotion-name');
        var eventName = 'carouselClick';
        var data = {
            carouselClick: {
                assetPosition: assetPosition,
                assetName: assetName,
            },
        };
        return this.sendDataWithCallBack(eventName, data);
    };
    ShiftDigitalAnalyticsBase.prototype.getEventNamespace = function () {
        return "shiftdigitalanalytics-" + this.eventNamespace;
    };
    ShiftDigitalAnalyticsBase.prototype.sendData = function (data) {
        this.shiftDigitalAnalyticsApi.sendData(data);
    };
    ShiftDigitalAnalyticsBase.prototype.sendDataWithCallBack = function (eventName, data) {
        return this.shiftDigitalAnalyticsApi.sendDataWithCallBack(eventName, data);
    };
    ShiftDigitalAnalyticsBase.prototype.initClickToCallEventHandler = function () {
        var _this = this;
        var rootSelector = 'body';
        var selector = this.selectors.clickToCall;
        var eventNamespace = this.getEventNamespace();
        var eventName = "click." + eventNamespace;
        $(rootSelector).on(eventName, selector, function () {
            var data = {
                clickToCallDepartment: 'Sales',
                events: 'clickToCall',
            };
            _this.sendData(data);
        });
    };
    ShiftDigitalAnalyticsBase.prototype.initPromotionClickEventHandler = function () {
        var _this = this;
        this.hasPromotionClickEventHandler = true;
        var rootSelector = 'body';
        var selector = this.selectors.promotion;
        var eventNamespace = this.getEventNamespace();
        var eventName = "click." + eventNamespace;
        $(rootSelector).on(eventName, selector, function (e) {
            _this.handlePromotionClickEvent(e);
        });
    };
    ShiftDigitalAnalyticsBase.prototype.sendFormEvent = function (eventName, formType, formVehicle) {
        if (formVehicle === void 0) { formVehicle = null; }
        if (!eventName || !formType) {
            return;
        }
        var data = {
            formType: formType,
            events: eventName,
        };
        if (formVehicle) {
            data = __assign(__assign({}, data), { formVehicle: formVehicle });
        }
        this.sendData(data);
    };
    ShiftDigitalAnalyticsBase.prototype.sendFormShownEventData = function (formType, formVehicle) {
        if (formVehicle === void 0) { formVehicle = null; }
        var eventName = 'formShown';
        this.sendFormEvent(eventName, formType, formVehicle);
    };
    ShiftDigitalAnalyticsBase.prototype.handleFormInitiationEvent = function ($form, formType, formVehicle) {
        if (formVehicle === void 0) { formVehicle = null; }
        this.sendFormEvent('formInitiation', formType, formVehicle);
        var eventNamespace = this.getEventNamespace();
        $form.find(this.inputSelector)
            .off("change." + eventNamespace)
            .off("keypress." + eventNamespace);
        $form.find(this.mainButtonSelector)
            .off("click." + eventNamespace);
    };
    ShiftDigitalAnalyticsBase.prototype.doInitFormInitiationEventHandlers = function ($form, formType, formVehicle) {
        var _this = this;
        if (formVehicle === void 0) { formVehicle = null; }
        var eventNamespace = this.getEventNamespace();
        $form.find(this.inputSelector)
            .one("change." + eventNamespace, function () {
            _this.handleFormInitiationEvent($form, formType, formVehicle);
        }).one("keypress." + eventNamespace, function () {
            _this.handleFormInitiationEvent($form, formType, formVehicle);
        });
        $form.find(this.mainButtonSelector)
            .one("click." + eventNamespace, function () {
            _this.handleFormInitiationEvent($form, formType, formVehicle);
        });
    };
    ShiftDigitalAnalyticsBase.prototype.doSendFormSubmissionEvent = function (formEventData, formType, extendedData) {
        if (extendedData === void 0) { extendedData = null; }
        if (!formType) {
            return Promise.resolve();
        }
        if (formEventData
            && formEventData.relativeUrl
            && formEventData.relativeUrl.toLowerCase().indexOf('postfinanceapplicationlead') > -1
            && formEventData.productId
            && formEventData.productId === '00000000-0000-0000-0000-000000000000'
            && formEventData.shiftDigitalAnalyticsVehicleData == null) {
            return Promise.resolve();
        }
        var eventName = 'formSubmission';
        var data = {
            formType: formType,
        };
        if (extendedData) {
            data = __assign(__assign({}, data), extendedData);
        }
        return this.sendDataWithCallBack(eventName, data);
    };
    ShiftDigitalAnalyticsBase.prototype.doInitCarouselClickEventHandler = function ($root) {
        if (this.hasPromotionClickEventHandler) {
            this.carouselClickEventContainers.push($root);
            this.hasCarouselClickEventHandler = true;
        }
        else {
            this.addCarouselClickEventHandler($root);
        }
    };
    ShiftDigitalAnalyticsBase.prototype.doSendFilterSearchEvent = function (filterSearch, countSearchResults) {
        var eventName = 'filterSearch';
        var data = {
            events: eventName,
            countSearchResults: countSearchResults,
            filterSearch: filterSearch,
        };
        this.shiftDigitalAnalyticsApi.sendData(data);
    };
    ShiftDigitalAnalyticsBase.prototype.doSendTypedSearchEvent = function (keyword) {
        if (!keyword) {
            return;
        }
        var typedSearchEventData = {
            events: 'typedSearch',
        };
        this.shiftDigitalAnalyticsApi.sendData(typedSearchEventData);
    };
    ShiftDigitalAnalyticsBase.prototype.sendGetDirectionsEvent = function () {
        var eventName = 'getDirections';
        var data = {
            events: eventName,
        };
        this.shiftDigitalAnalyticsApi.sendData(data);
    };
    ShiftDigitalAnalyticsBase.prototype.doSendPageViewEvent = function () {
        this.shiftDigitalAnalyticsApi.sendPageView();
    };
    ShiftDigitalAnalyticsBase.prototype.doSendEmptyFilterSearchEvent = function () {
        var filterSearchEventData = {
            events: 'filterSearch',
            filterSearch: {
                status: 'Mixed',
            },
        };
        this.shiftDigitalAnalyticsApi.sendData(filterSearchEventData);
    };
    // eslint-disable-next-line @typescript-eslint/no-unused-vars
    ShiftDigitalAnalyticsBase.prototype.sendFormShownEventImpl = function (formEventData) {
    };
    ShiftDigitalAnalyticsBase.prototype.initFormInitiationEventHandlerImpl = function (
    // eslint-disable-next-line @typescript-eslint/no-unused-vars
    $form, 
    // eslint-disable-next-line @typescript-eslint/no-unused-vars
    formEventData) {
    };
    ShiftDigitalAnalyticsBase.prototype.sendFilterSearchEventImpl = function (
    // eslint-disable-next-line @typescript-eslint/no-unused-vars
    filterSearch, 
    // eslint-disable-next-line @typescript-eslint/no-unused-vars
    countSearchResults) {
    };
    // eslint-disable-next-line @typescript-eslint/no-unused-vars
    ShiftDigitalAnalyticsBase.prototype.sendTypedSearchEventImpl = function (keyword) {
    };
    // eslint-disable-next-line @typescript-eslint/no-unused-vars
    ShiftDigitalAnalyticsBase.prototype.initCarouselClickEventHandlerImpl = function ($root) {
    };
    ShiftDigitalAnalyticsBase.prototype.sendPageViewEventImpl = function () {
    };
    ShiftDigitalAnalyticsBase.prototype.sendEmptyFilterSearchEventImpl = function () {
    };
    ShiftDigitalAnalyticsBase.prototype.sendFormShownEvent = function (formEventData) {
        this.sendFormShownEventImpl(formEventData);
    };
    ShiftDigitalAnalyticsBase.prototype.initFormInitiationEventHandler = function ($form, formEventData) {
        this.initFormInitiationEventHandlerImpl($form, formEventData);
    };
    ShiftDigitalAnalyticsBase.prototype.sendFilterSearchEvent = function (filterSearch, countSearchResults) {
        this.sendFilterSearchEventImpl(filterSearch, countSearchResults);
    };
    ShiftDigitalAnalyticsBase.prototype.sendTypedSearchEvent = function (keyword) {
        this.sendTypedSearchEventImpl(keyword);
    };
    ShiftDigitalAnalyticsBase.prototype.initCarouselClickEventHandler = function ($root) {
        this.initCarouselClickEventHandlerImpl($root);
    };
    ShiftDigitalAnalyticsBase.prototype.sendPageViewEvent = function () {
        this.sendPageViewEventImpl();
    };
    ShiftDigitalAnalyticsBase.prototype.sendEmptyFilterSearchEvent = function () {
        this.sendEmptyFilterSearchEventImpl();
    };
    return ShiftDigitalAnalyticsBase;
}());
exports["default"] = ShiftDigitalAnalyticsBase;


/***/ }),

/***/ 559:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {


var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ShiftDigitalAnalyticsManager = void 0;
var PolarisShiftDigitalAnalytics_1 = __importDefault(__webpack_require__(16));
var HdShiftDigitalAnalytics_1 = __importDefault(__webpack_require__(626));
var BmwShiftDigitalAnalytics_1 = __importDefault(__webpack_require__(526));
var ShiftDigitalAnalyticsManager = /** @class */ (function () {
    function ShiftDigitalAnalyticsManager() {
        this.sds = [];
        this.initShiftDigitalAnalytics();
    }
    ShiftDigitalAnalyticsManager.prototype.initShiftDigitalAnalytics = function () {
        var _a, _b, _c;
        if ((_a = window.dx1ShiftDigitalAnalytics) === null || _a === void 0 ? void 0 : _a.polaris) {
            this.sds.push(new PolarisShiftDigitalAnalytics_1.default());
        }
        if ((_b = window.dx1ShiftDigitalAnalytics) === null || _b === void 0 ? void 0 : _b.hd) {
            this.sds.push(new HdShiftDigitalAnalytics_1.default());
        }
        if ((_c = window.dx1ShiftDigitalAnalytics) === null || _c === void 0 ? void 0 : _c.bmw) {
            this.sds.push(new BmwShiftDigitalAnalytics_1.default());
        }
    };
    ShiftDigitalAnalyticsManager.instance = function () {
        if (!ShiftDigitalAnalyticsManager._instance) {
            ShiftDigitalAnalyticsManager._instance = new ShiftDigitalAnalyticsManager();
        }
        return ShiftDigitalAnalyticsManager._instance;
    };
    ShiftDigitalAnalyticsManager.isActivated = function () {
        return !!(ShiftDigitalAnalyticsManager === null || ShiftDigitalAnalyticsManager === void 0 ? void 0 : ShiftDigitalAnalyticsManager.instance().hasShiftDigitalAnalytics());
    };
    ShiftDigitalAnalyticsManager.prototype.hasShiftDigitalAnalytics = function () {
        return this.sds.length > 0;
    };
    ShiftDigitalAnalyticsManager.prototype.initEventHandlers = function () {
        this.sds.forEach(function (sd) { return sd.initEventHandlers(); });
    };
    ShiftDigitalAnalyticsManager.prototype.sendFormShownEvent = function (formEventData) {
        this.sds.forEach(function (sd) { return sd.sendFormShownEvent(formEventData); });
    };
    ShiftDigitalAnalyticsManager.prototype.initFormInitiationEventHandler = function ($form, formEventData) {
        this.sds.forEach(function (sd) { return sd.initFormInitiationEventHandler($form, formEventData); });
    };
    ShiftDigitalAnalyticsManager.prototype.sendFormSubmissionEvent = function (formEventData) {
        var promises = this.sds.map(function (sd) { return sd.sendFormSubmissionEvent(formEventData); });
        return new Promise(function (resolve) {
            Promise.all(promises).then(function () {
                resolve();
            });
        });
    };
    ShiftDigitalAnalyticsManager.prototype.sendFilterSearchEvent = function (filterSearch, countSearchResults) {
        this.sds.forEach(function (sd) { return sd.sendFilterSearchEvent(filterSearch, countSearchResults); });
    };
    ShiftDigitalAnalyticsManager.prototype.sendTypedSearchEvent = function (keyword) {
        this.sds.forEach(function (sd) { return sd.sendTypedSearchEvent(keyword); });
    };
    ShiftDigitalAnalyticsManager.prototype.initCarouselClickEventHandler = function ($root) {
        this.sds.forEach(function (sd) { return sd.initCarouselClickEventHandler($root); });
    };
    ShiftDigitalAnalyticsManager.prototype.sendEmptyFilterSearchEvent = function () {
        this.sds.forEach(function (sd) { return sd.sendEmptyFilterSearchEvent(); });
    };
    ShiftDigitalAnalyticsManager.prototype.sendPageViewEvent = function () {
        this.sds.forEach(function (sd) { return sd.sendPageViewEvent(); });
    };
    return ShiftDigitalAnalyticsManager;
}());
exports.ShiftDigitalAnalyticsManager = ShiftDigitalAnalyticsManager;
exports["default"] = ShiftDigitalAnalyticsManager;


/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
/******/ 	
/******/ 	// startup
/******/ 	// Load entry module and return exports
/******/ 	// This entry module is referenced by other modules so it can't be inlined
/******/ 	var __webpack_exports__ = __webpack_require__(559);
/******/ 	var __webpack_export_target__ = window;
/******/ 	for(var i in __webpack_exports__) __webpack_export_target__[i] = __webpack_exports__[i];
/******/ 	if(__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, "__esModule", { value: true });
/******/ 	
/******/ })()
;
;;;var DNN_COL_DELIMITER=String.fromCharCode(16);var DNN_ROW_DELIMITER=String.fromCharCode(15);var __dnn_m_bPageLoaded=false;if(window.addEventListener){window.addEventListener("load",__dnn_Page_OnLoad,false)}else{window.attachEvent("onload",__dnn_Page_OnLoad)}function __dnn_ClientAPIEnabled(){return typeof(dnn)!="undefined"&&typeof (dnn.dom)!="undefined"}function __dnn_Page_OnLoad(){if(__dnn_ClientAPIEnabled()){dnn.dom.attachEvent(window,"onscroll",__dnn_bodyscroll)}__dnn_m_bPageLoaded=true}function __dnn_KeyDown(iKeyCode,sFunc,e){if(e==null){e=window.event}if(e.keyCode==iKeyCode){eval(unescape(sFunc));return false}}function __dnn_bodyscroll(){var a=document.forms[0];if(__dnn_ClientAPIEnabled()&&__dnn_m_bPageLoaded&&typeof(a.ScrollTop)!="undefined"){a.ScrollTop.value=document.documentElement.scrollTop?document.documentElement.scrollTop:dnn.dom.getByTagName("body")[0].scrollTop}}function __dnn_setScrollTop(c){if(__dnn_ClientAPIEnabled()){if(c==null){c=document.forms[0].ScrollTop.value}var a=dnn.getVar("ScrollToControl");if(a!=null&&a.length>0){var b=dnn.dom.getById(a);if(b!=null){c=dnn.dom.positioning.elementTop(b);dnn.setVar("ScrollToControl","")}}if(document.getElementsByTagName("html")[0].style.overflow!="hidden"){window.scrollTo(0,c)}}}function __dnn_SetInitialFocus(a){var b=dnn.dom.getById(a);if(b!=null&&__dnn_CanReceiveFocus(b)){b.focus()}}function __dnn_CanReceiveFocus(b){if(b.style.display!="none"&&b.tabIndex>-1&&b.disabled==false&&b.style.visible!="hidden"){var a=b.parentElement;while(a!=null&&a.tagName!="BODY"){if(a.style.display=="none"||a.disabled||a.style.visible=="hidden"){return false}a=a.parentElement}return true}else{return false}}function __dnn_ContainerMaxMin_OnClick(i,b){var g=dnn.dom.getById(b);if(g!=null){var e=i.childNodes[0];var l=dnn.getVar("containerid_"+b);var j=dnn.getVar("cookieid_"+b);var d=e.src.toLowerCase().substr(e.src.lastIndexOf("/"));var a;var h;var k;if(dnn.getVar("min_icon_"+l)){k=dnn.getVar("min_icon_"+l)}else{k=dnn.getVar("min_icon")}if(dnn.getVar("max_icon_"+l)){h=dnn.getVar("max_icon_"+l)}else{h=dnn.getVar("max_icon")}a=h.toLowerCase().substr(h.lastIndexOf("/"));var c=5;var f=dnn.getVar("animf_"+b);if(f!=null){c=new Number(f)}if(d==a){e.src=k;dnn.dom.expandElement(g,c);e.title=dnn.getVar("min_text");if(j!=null){if(dnn.getVar("__dnn_"+l+":defminimized")=="true"){dnn.dom.setCookie(j,"true",365)}else{dnn.dom.deleteCookie(j)}}else{dnn.setVar("__dnn_"+l+"_Visible","true")}}else{e.src=h;dnn.dom.collapseElement(g,c);e.title=dnn.getVar("max_text");if(j!=null){if(dnn.getVar("__dnn_"+l+":defminimized")=="true"){dnn.dom.deleteCookie(j)}else{dnn.dom.setCookie(j,"false",365)}}else{dnn.setVar("__dnn_"+l+"_Visible","false")}}return true}return false}function __dnn_Help_OnClick(a){var b=dnn.dom.getById(a);if(b!=null){if(b.style.display=="none"){b.style.display=""}else{b.style.display="none"}return true}return false}function __dnn_SectionMaxMin(f,c){var d=dnn.dom.getById(c);if(d!=null){var g=f.getAttribute("max_icon");var e=f.getAttribute("min_icon");var a=f.getAttribute("userctr")!=null;var b;if(d.style.display=="none"){f.src=e;d.style.display="";if(a){b="True"}else{dnn.setVar(f.id+":exp",1)}}else{f.src=g;d.style.display="none";if(a){b="False"}else{dnn.setVar(f.id+":exp",0)}}if(a){dnncore.setUserProp(f.getAttribute("userctr"),f.getAttribute("userkey"),b,null)}return true}return false}function __dnn_enableDragDrop(){var b=dnn.getVar("__dnn_dragDrop").split(";");var e;for(var c=0;c<b.length;c++){e=b[c].split(" ");if(e[0].length>0){var a=dnn.dom.getById(e[0]);var d=dnn.dom.getById(e[1]);if(a!=null&&d!=null){a.setAttribute("moduleid",e[2]);dnn.dom.positioning.enableDragAndDrop(a,d,"__dnn_dragComplete()","__dnn_dragOver()")}}}}var __dnn_oPrevSelPane;var __dnn_oPrevSelModule;var __dnn_dragEventCount=0;function __dnn_dragOver(){__dnn_dragEventCount++;if(__dnn_dragEventCount%75!=0){return}var c=dnn.dom.getById(dnn.dom.positioning.dragCtr.contID);var a=__dnn_getMostSelectedPane(dnn.dom.positioning.dragCtr);if(__dnn_oPrevSelPane!=null){__dnn_oPrevSelPane.pane.style.border=__dnn_oPrevSelPane.origBorder}if(a!=null){__dnn_oPrevSelPane=a;a.pane.style.border="4px double "+DNN_HIGHLIGHT_COLOR;var e=__dnn_getPaneControlIndex(c,a);var b;var f;for(var d=0;d<a.controls.length;d++){if(e>d&&a.controls[d].id!=c.id){b=a.controls[d]}if(e<=d&&a.controls[d].id!=c.id){f=a.controls[d];break}}if(__dnn_oPrevSelModule!=null){dnn.dom.getNonTextNode(__dnn_oPrevSelModule.control).style.border=__dnn_oPrevSelModule.origBorder}if(f!=null){__dnn_oPrevSelModule=f;dnn.dom.getNonTextNode(f.control).style.borderTop="5px groove "+DNN_HIGHLIGHT_COLOR}else{if(b!=null){__dnn_oPrevSelModule=b;dnn.dom.getNonTextNode(b.control).style.borderBottom="5px groove "+DNN_HIGHLIGHT_COLOR}}}}function __dnn_dragComplete(){var f=dnn.dom.getById(dnn.dom.positioning.dragCtr.contID);var d=f.getAttribute("moduleid");if(__dnn_oPrevSelPane!=null){__dnn_oPrevSelPane.pane.style.border=__dnn_oPrevSelPane.origBorder}if(__dnn_oPrevSelModule!=null){dnn.dom.getNonTextNode(__dnn_oPrevSelModule.control).style.border=__dnn_oPrevSelModule.origBorder}var b=__dnn_getMostSelectedPane(dnn.dom.positioning.dragCtr);var e;if(b==null){var a=__dnn_Panes();for(var c=0;c<a.length;c++){if(a[c].id==f.parentNode.id){b=a[c]}}}if(b!=null){e=__dnn_getPaneControlIndex(f,b);__dnn_MoveToPane(b,f,e);dnn.callPostBack("MoveToPane","moduleid="+d,"pane="+b.paneName,"order="+e*2)}}function __dnn_MoveToPane(a,e,d){if(a!=null){var c=new Array();for(var b=d;b<a.controls.length;b++){if(a.controls[b].control.id!=e.id){c[c.length]=a.controls[b].control}dnn.dom.removeChild(a.controls[b].control)}dnn.dom.appendChild(a.pane,e);e.style.top=0;e.style.left=0;e.style.position="relative";for(var b=0;b<c.length;b++){dnn.dom.appendChild(a.pane,c[b])}__dnn_RefreshPanes()}else{e.style.top=0;e.style.left=0;e.style.position="relative"}}function __dnn_RefreshPanes(){var b=dnn.getVar("__dnn_Panes").split(";");var a=dnn.getVar("__dnn_PaneNames").split(";");__dnn_m_aryPanes=new Array();for(var c=0;c<b.length;c++){if(b[c].length>0){__dnn_m_aryPanes[__dnn_m_aryPanes.length]=new __dnn_Pane(dnn.dom.getById(b[c]),a[c])}}}var __dnn_m_aryPanes;var __dnn_m_aryModules;function __dnn_Panes(){if(__dnn_m_aryPanes==null){__dnn_m_aryPanes=new Array();__dnn_RefreshPanes()}return __dnn_m_aryPanes}function __dnn_Modules(a){if(__dnn_m_aryModules==null){__dnn_RefreshPanes()}return __dnn_m_aryModules[a]}function __dnn_getMostSelectedPane(g){var c=new dnn.dom.positioning.dims(g);var f=0;var a;var h;for(var e=0;e<__dnn_Panes().length;e++){var b=__dnn_Panes()[e];var d=new dnn.dom.positioning.dims(b.pane);a=dnn.dom.positioning.elementOverlapScore(d,c);if(a>f){f=a;h=b}}return h}function __dnn_getPaneControlIndex(f,b){if(b==null){return}var a=new dnn.dom.positioning.dims(f);var e;if(b.controls.length==0){return 0}for(var c=0;c<b.controls.length;c++){e=b.controls[c];var d=new dnn.dom.positioning.dims(e.control);if(a.t<d.t){return e.index}}if(e!=null){return e.index+1}else{return 0}}function __dnn_Pane(a,b){this.pane=a;this.id=a.id;this.controls=new Array();this.origBorder=a.style.border;this.paneName=b;var f=0;var e="";for(var d=0;d<a.childNodes.length;d++){var g=a.childNodes[d];if(dnn.dom.isNonTextNode(g)){if(__dnn_m_aryModules==null){__dnn_m_aryModules=new Array()}var c=g.getAttribute("moduleid");if(c!=null&&c.length>0){e+=c+"~";this.controls[this.controls.length]=new __dnn_PaneControl(g,f);__dnn_m_aryModules[c]=g.id;f+=1}}}this.moduleOrder=e}function __dnn_PaneControl(a,b){this.control=a;this.id=a.id;this.index=b;this.origBorder=a.style.border}function __dnn_ShowModalPage(a){dnnModal.show(a,true,550,950,true,"")}function __dnncore(){this.GetUserVal=0;this.SetUserVal=1}__dnncore.prototype={getUserProp:function(b,c,a){this._doUserCallBack(dnncore.GetUserVal,b,c,null,new dnncore.UserPropArgs(b,c,a))},setUserProp:function(c,d,a,b){this._doUserCallBack(dnncore.SetUserVal,c,d,a,new dnncore.UserPropArgs(c,d,b))},_doUserCallBack:function(c,d,e,a,b){if(dnn&&dnn.xmlhttp){var f=c+COL_DELIMITER+d+COL_DELIMITER+e+COL_DELIMITER+a;dnn.xmlhttp.doCallBack("__Page",f,dnncore._callBackSuccess,b,dnncore._callBackFail,null,true,null,0)}else{alert("Client Personalization not enabled")}},_callBackSuccess:function(a,b,c){if(b.pFunc){b.pFunc(b.namingCtr,b.key,a)}},_callBackFail:function(a,b){window.status=a}};__dnncore.prototype.UserPropArgs=function(b,c,a){this.namingCtr=b;this.key=c;this.pFunc=a};var dnncore=new __dnncore();
;;;