PageSourceSearch

https://www.jhmofjoplin.com/DesktopModules/Dominion/dist/shiftDigitalAnalytics.bundle.js?cdv=1220

js jhmofjoplin.com collected 2026-10-08 00:25:02 UTC 62,806 bytes, 1,282 lines download raw bytes

1/******/ (function() { // webpackBootstrap
2/******/ 	"use strict";
3/******/ 	var __webpack_modules__ = ({
4
5/***/ 877:
6/***/ (function(__unused_webpack_module, exports) {
7
8
9var __rest = (this && this.__rest) || function (s, e) {
10    var t = {};
11    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
12        t[p] = s[p];
13    if (s != null && typeof Object.getOwnPropertySymbols === "function")
14        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
15            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
16                t[p[i]] = s[p[i]];
17        }
18    return t;
19};
20Object.defineProperty(exports, "__esModule", ({ value: true }));
21var ShiftDigitalAnalyticsApi = /** @class */ (function () {
22    function ShiftDigitalAnalyticsApi(sd) {
23        this.sd = sd;
24    }
25    ShiftDigitalAnalyticsApi.prototype.sendData = function (data) {
26        this.sd('dataLayer', data);
27        this.sd('send');
28    };
29    ShiftDigitalAnalyticsApi.prototype.sendPageView = function () {
30        this.sd('send', 'pageview');
31    };
32    ShiftDigitalAnalyticsApi.prototype.sendDataWithCallBack = function (eventName, data) {
33        var _this = this;
34        return new Promise(function (resolve) {
35            _this.setProp(data);
36            _this.sd('send', 'event', eventName, {
37                hitCallback: function () {
38                    resolve();
39                }
40            });
41        });
42    };
43    ShiftDigitalAnalyticsApi.prototype.setProp = function (data, prefix) {
44        var _this = this;
45        if (prefix === void 0) { prefix = null; }
46        var keys = Object.keys(data);
47        keys.forEach(function (key) {
48            var propertyValue = data[key];
49            if (typeof propertyValue === "object" && propertyValue != null) {
50                var newPrefix = "".concat(prefix !== null && prefix !== void 0 ? prefix : '').concat(key, ".");
51                _this.setProp(propertyValue, newPrefix);
52            }
53            else if (propertyValue) {
54                var propertyName = "".concat(prefix !== null && prefix !== void 0 ? prefix : '').concat(key);
55                _this.sd('setProp', propertyName, propertyValue);
56            }
57        });
58    };
59    ShiftDigitalAnalyticsApi.prototype.sendDataLayerEvent = function (event) {
60        this.sd('dataLayer', event);
61        this.sd('send');
62    };
63    ShiftDigitalAnalyticsApi.prototype.sendDataLayerEventAsync = function (event) {
64        var events = event.events;
65        var payload = this.convertToPayload(event);
66        return this.sendDataWithCallBack(events, payload);
67    };
68    ShiftDigitalAnalyticsApi.prototype.convertToPayload = function (event) {
69        // eslint-disable-next-line @typescript-eslint/no-unused-vars
70        var events = event.events, payload = __rest(event, ["events"]);
71        return payload;
72    };
73    return ShiftDigitalAnalyticsApi;
74}());
75exports["default"] = ShiftDigitalAnalyticsApi;
76
77
78/***/ }),
79
80/***/ 526:
81/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
82
83
84var __extends = (this && this.__extends) || (function () {
85    var extendStatics = function (d, b) {
86        extendStatics = Object.setPrototypeOf ||
87            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
88            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
89        return extendStatics(d, b);
90    };
91    return function (d, b) {
92        if (typeof b !== "function" && b !== null)
93            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
94        extendStatics(d, b);
95        function __() { this.constructor = d; }
96        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
97    };
98})();
99var __importDefault = (this && this.__importDefault) || function (mod) {
100    return (mod && mod.__esModule) ? mod : { "default": mod };
101};
102Object.defineProperty(exports, "__esModule", ({ value: true }));
103var ShiftDigitalAnalyticsBase_1 = __importDefault(__webpack_require__(987));
104var bwmFormTypes = [
105    "Get a Quote",
106    "Test Drive",
107    "Request More Info",
108    "Email a Friend",
109    "General Contact",
110    "Service",
111    "Parts",
112    "Schedule Service",
113    "Employment",
114    "Trade In",
115    "Finance",
116    "Payment Estimator",
117    "Specials",
118    "Vehicle Finder",
119    "Dealer Custom",
120    "Make an Offer",
121    "Send to Mobile",
122];
123var bmwOtherFormType = 'Other';
124var BmwShiftDigitalAnalytics = /** @class */ (function (_super) {
125    __extends(BmwShiftDigitalAnalytics, _super);
126    function BmwShiftDigitalAnalytics() {
127        var _this = _super.call(this, window.sdb) || this;
128        _this.bmwSelectors = {
129            brochureLink: '[data-print-brochure]',
130        };
131        _this.eventNamespace = 'bwm';
132        _this.vehiclePropertyName = 'bwm';
133        return _this;
134    }
135    BmwShiftDigitalAnalytics.prototype.sendBrochureDownloadEvent = function (brochureName) {
136        var payload = {
137            brochureName: brochureName,
138        };
139        _super.prototype.fireBrochureDownloadEvent.call(this, payload);
140    };
141    BmwShiftDigitalAnalytics.prototype.initBrochureDownloadEventHandler = function () {
142        var _this = this;
143        var rootSelector = 'body';
144        var selector = this.bmwSelectors.brochureLink;
145        var eventName = "click.".concat(this.eventNamespace);
146        $(rootSelector).on(eventName, selector, function (e) {
147            var $link = $(e.currentTarget);
148            var brochureName = $link.data("print-brochure");
149            _this.sendBrochureDownloadEvent(brochureName);
150        });
151    };
152    BmwShiftDigitalAnalytics.prototype.getFormType = function (formName) {
153        var bmwFormType = bwmFormTypes.filter(function (x) { return formName.indexOf(x) > -1; }).pop();
154        return bmwFormType ? bmwFormType : bmwOtherFormType;
155    };
156    BmwShiftDigitalAnalytics.prototype.sendFormShownEventImpl = function ($form, formEventData) {
157        var formType = this.getFormType(formEventData.formName);
158        if (!formType) {
159            return;
160        }
161        var displayType = null;
162        var formVehicle = this.getFormVehicle(formEventData);
163        _super.prototype.sendFormShownEventData.call(this, formType, displayType, formVehicle);
164    };
165    BmwShiftDigitalAnalytics.prototype.initFormInitiationEventHandlerImpl = function ($form, formEventData) {
166        var formType = this.getFormType(formEventData.formName);
167        if (!formType) {
168            return;
169        }
170        var displayType = null;
171        var formVehicle = this.getFormVehicle(formEventData);
172        _super.prototype.doInitFormInitiationEventHandlers.call(this, $form, formType, displayType, formVehicle);
173    };
174    BmwShiftDigitalAnalytics.prototype.initEventHandlers = function () {
175        var _a;
176        _super.prototype.initPromotionClickEventHandler.call(this);
177        _super.prototype.initClickToCallEventHandler.call(this);
178        var shiftDigitalAnalyticsData = (_a = window === null || window === void 0 ? void 0 : window.dx1ShiftDigitalAnalytics) === null || _a === void 0 ? void 0 : _a.bmw;
179        if (shiftDigitalAnalyticsData) {
180            if (shiftDigitalAnalyticsData.isHoursAndDirectionPageType) {
181                _super.prototype.sendGetDirectionsEvent.call(this);
182            }
183            this.initBrochureDownloadEventHandler();
184        }
185    };
186    BmwShiftDigitalAnalytics.prototype.sendFormSubmissionEvent = function ($form, formEventData) {
187        var _a, _b, _c;
188        var formType = this.getFormType(formEventData.formName);
189        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;
190        var prefContact = 'email';
191        if (formType) {
192            return _super.prototype.doSendFormSubmissionEvent.call(this, $form, formEventData, formType, formVehicle, prefContact);
193        }
194        return Promise.resolve();
195    };
196    return BmwShiftDigitalAnalytics;
197}(ShiftDigitalAnalyticsBase_1.default));
198exports["default"] = BmwShiftDigitalAnalytics;
199
200
201/***/ }),
202
203/***/ 626:
204/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
205
206
207var __extends = (this && this.__extends) || (function () {
208    var extendStatics = function (d, b) {
209        extendStatics = Object.setPrototypeOf ||
210            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
211            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
212        return extendStatics(d, b);
213    };
214    return function (d, b) {
215        if (typeof b !== "function" && b !== null)
216            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
217        extendStatics(d, b);
218        function __() { this.constructor = d; }
219        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
220    };
221})();
222var __importDefault = (this && this.__importDefault) || function (mod) {
223    return (mod && mod.__esModule) ? mod : { "default": mod };
224};
225Object.defineProperty(exports, "__esModule", ({ value: true }));
226var ShiftDigitalAnalyticsBase_1 = __importDefault(__webpack_require__(987));
227var HdShiftDigitalAnalytics = /** @class */ (function (_super) {
228    __extends(HdShiftDigitalAnalytics, _super);
229    function HdShiftDigitalAnalytics() {
230        var _this = _super.call(this, window.sd) || this;
231        _this.eventNamespace = 'hd';
232        _this.vehiclePropertyName = 'hd';
233        return _this;
234    }
235    HdShiftDigitalAnalytics.prototype.getFormType = function (formTypes, formName) {
236        var filterdFormTypes = formTypes.filter(function (x) { return formName.indexOf(x) > -1; });
237        return filterdFormTypes.length ? filterdFormTypes[0] : null;
238    };
239    HdShiftDigitalAnalytics.prototype.getBasicFormType = function (formName) {
240        var formTypes = ['Get a Quote', 'Test Drive', 'Request More Info', 'Trade-In', 'HD National Event', 'Harley-Davidson Contact Us'];
241        return this.getFormType(formTypes, formName);
242    };
243    HdShiftDigitalAnalytics.prototype.getFormSubmissionErrorFormType = function (formName) {
244        var formTypes = ['HD National Event', 'Harley-Davidson Contact Us', 'Test Drive'];
245        return this.getFormType(formTypes, formName);
246    };
247    HdShiftDigitalAnalytics.prototype.sendFormShownEventImpl = function ($form, formEventData) {
248        var formType = this.getBasicFormType(formEventData.formName);
249        if (!formType) {
250            return;
251        }
252        var displayType = null;
253        var formVehicle = this.getFormVehicle(formEventData);
254        _super.prototype.sendFormShownEventData.call(this, formType, displayType, formVehicle);
255    };
256    HdShiftDigitalAnalytics.prototype.initFormInitiationEventHandlerImpl = function ($form, formEventData) {
257        var formType = this.getBasicFormType(formEventData.formName);
258        if (!formType) {
259            return;
260        }
261        var displayType = null;
262        var formVehicle = this.getFormVehicle(formEventData);
263        _super.prototype.doInitFormInitiationEventHandlers.call(this, $form, formType, displayType, formVehicle);
264    };
265    HdShiftDigitalAnalytics.prototype.initEventHandlers = function () {
266        _super.prototype.initClickToCallEventHandler.call(this);
267        _super.prototype.initPromotionClickEventHandler.call(this);
268        if (window.dx1ShiftDigitalAnalytics
269            && window.dx1ShiftDigitalAnalytics.hd
270            && window.dx1ShiftDigitalAnalytics.hd.isHoursAndDirectionPageType) {
271            _super.prototype.sendGetDirectionsEvent.call(this);
272        }
273    };
274    HdShiftDigitalAnalytics.prototype.sendFormSubmissionEvent = function ($form, formEventData) {
275        var formType = this.getBasicFormType(formEventData.formName);
276        if (formType) {
277            var formVehicle = this.getFormVehicle(formEventData);
278            var prefContact = 'email';
279            return _super.prototype.doSendFormSubmissionEvent.call(this, $form, formEventData, formType, formVehicle, prefContact);
280        }
281        return Promise.resolve();
282    };
283    HdShiftDigitalAnalytics.prototype.sendFormSubmissionErrorEvent = function ($form, formSubmissionErrorEventData) {
284        var formType = this.getFormSubmissionErrorFormType(formSubmissionErrorEventData.formName);
285        if (formType) {
286            var formVehicle = this.getFormVehicle(formSubmissionErrorEventData);
287            return _super.prototype.doSendFormSubmissionErrorEvent.call(this, $form, formSubmissionErrorEventData, formType, formVehicle);
288        }
289        return Promise.resolve();
290    };
291    return HdShiftDigitalAnalytics;
292}(ShiftDigitalAnalyticsBase_1.default));
293exports["default"] = HdShiftDigitalAnalytics;
294
295
296/***/ }),
297
298/***/ 16:
299/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
300
301
302var __extends = (this && this.__extends) || (function () {
303    var extendStatics = function (d, b) {
304        extendStatics = Object.setPrototypeOf ||
305            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
306            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
307        return extendStatics(d, b);
308    };
309    return function (d, b) {
310        if (typeof b !== "function" && b !== null)
311            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
312        extendStatics(d, b);
313        function __() { this.constructor = d; }
314        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
315    };
316})();
317var __importDefault = (this && this.__importDefault) || function (mod) {
318    return (mod && mod.__esModule) ? mod : { "default": mod };
319};
320Object.defineProperty(exports, "__esModule", ({ value: true }));
321var ShiftDigitalAnalyticsBase_1 = __importDefault(__webpack_require__(987));
322var formTypes = [
323    'Get a Quote',
324    'Test Drive',
325    'Request More Info',
326    'Email a Friend',
327    'General Contact',
328    'Service',
329    'Parts',
330    'Schedule Service',
331    'Employment',
332    'Trade In',
333    'Finance',
334    'Payment  Estimator',
335    'Specials',
336    'Vehicle Finder',
337    'Dealer Custom',
338    'Make an Offer',
339    'Send to  Mobile',
340    'Brochure Request',
341    'Newsletter',
342    'Registration'
343];
344var PolarisShiftDigitalAnalytics = /** @class */ (function (_super) {
345    __extends(PolarisShiftDigitalAnalytics, _super);
346    function PolarisShiftDigitalAnalytics() {
347        var _this = _super.call(this, window.sd) || this;
348        _this.eventNamespace = 'polaris';
349        _this.vehiclePropertyName = 'polaris';
350        _this.isSendFormFieldInteractionEvent = true;
351        _this.isSendCarouselClickEventWithOfferClick = false;
352        return _this;
353    }
354    PolarisShiftDigitalAnalytics.prototype.getFormType = function (formName) {
355        var nameMap = {
356            'Contact Us': 'General Contact',
357            'Model Wanted': 'Request More Info',
358            'Free Trade-In Evaluation': 'Trade In',
359        };
360        var normalizedFormName = nameMap[formName] || formName;
361        var matchedType = formTypes.find(function (x) { return normalizedFormName.includes(x); });
362        return matchedType || 'Other';
363    };
364    PolarisShiftDigitalAnalytics.prototype.initScheduleServiceClickEventHandler = function () {
365        var _this = this;
366        $("#dnn_rideReadyServiceLink").on("click", function () {
367            _this.fireScheduleServiceClickEvent({});
368        });
369    };
370    PolarisShiftDigitalAnalytics.prototype.initPolarisFeaturedModelModuleCarouselClickEvent = function () {
371        var _this = this;
372        var $polarisFeatured = $(".dx1-polarisfeatured");
373        if (!$polarisFeatured.length) {
374            return;
375        }
376        $polarisFeatured.on("click", ".swiper-slide-active a.btn", function (e) {
377            var $slideItem = $(e.currentTarget).closest(".swiper-slide-active");
378            var assetPosition = $slideItem.data("swiper-slide-index");
379            var assetName = $slideItem.find(".family-name").text();
380            var payload = {
381                carouselClick: {
382                    assetPosition: assetPosition + 1,
383                    assetName: assetName
384                }
385            };
386            _this.fireCarouselClickEvent(payload);
387        });
388    };
389    PolarisShiftDigitalAnalytics.prototype.sendFormShownEventImpl = function ($form, formEventData) {
390        var formType = this.getFormType(formEventData.formName);
391        var formVehicle = this.getFormVehicle(formEventData);
392        var displayType = this.getDisplayType($form);
393        _super.prototype.sendFormShownEventData.call(this, formType, displayType, formVehicle);
394    };
395    PolarisShiftDigitalAnalytics.prototype.initFormInitiationEventHandlerImpl = function ($form, formEventData) {
396        var formType = this.getFormType(formEventData.formName);
397        var displayType = this.getDisplayType($form);
398        var formVehicle = this.getFormVehicle(formEventData);
399        _super.prototype.doInitFormInitiationEventHandlers.call(this, $form, formType, displayType, formVehicle);
400    };
401    PolarisShiftDigitalAnalytics.prototype.initFormFieldInteractionEventHandlerImpl = function ($form, formEventData) {
402        var formType = this.getFormType(formEventData.formName);
403        var displayType = this.getDisplayType($form);
404        var formVehicle = this.getFormVehicle(formEventData);
405        _super.prototype.doInitFormFieldInteractionEventHandlers.call(this, $form, formType, displayType, formVehicle);
406    };
407    PolarisShiftDigitalAnalytics.prototype.initEventHandlers = function () {
408        this.initScheduleServiceClickEventHandler();
409        _super.prototype.initPromotionClickEventHandler.call(this);
410        this.initPolarisFeaturedModelModuleCarouselClickEvent();
411        _super.prototype.initClickToCallEventHandler.call(this);
412        if (window.dx1ShiftDigitalAnalytics
413            && window.dx1ShiftDigitalAnalytics.polaris
414            && window.dx1ShiftDigitalAnalytics.polaris.isHoursAndDirectionPageType) {
415            _super.prototype.sendGetDirectionsEvent.call(this);
416        }
417    };
418    PolarisShiftDigitalAnalytics.prototype.sendFormSubmissionEvent = function ($form, formSubmissionEventData) {
419        var formType = this.getFormType(formSubmissionEventData.formName);
420        var formVehicle = this.getFormVehicle(formSubmissionEventData);
421        var prefContact = this.getPrefContact($form);
422        var formOptIn = 'in-implicit';
423        return _super.prototype.doSendFormSubmissionEvent.call(this, $form, formSubmissionEventData, formType, formVehicle, prefContact, formOptIn);
424    };
425    PolarisShiftDigitalAnalytics.prototype.sendFormSubmissionErrorEvent = function ($form, formSubmissionErrorEventData) {
426        var formType = this.getFormType(formSubmissionErrorEventData.formName);
427        var formVehicle = this.getFormVehicle(formSubmissionErrorEventData);
428        return _super.prototype.doSendFormSubmissionErrorEvent.call(this, $form, formSubmissionErrorEventData, formType, formVehicle);
429    };
430    return PolarisShiftDigitalAnalytics;
431}(ShiftDigitalAnalyticsBase_1.default));
432exports["default"] = PolarisShiftDigitalAnalytics;
433
434
435/***/ }),
436
437/***/ 987:
438/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
439
440
441var __assign = (this && this.__assign) || function () {
442    __assign = Object.assign || function(t) {
443        for (var s, i = 1, n = arguments.length; i < n; i++) {
444            s = arguments[i];
445            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
446                t[p] = s[p];
447        }
448        return t;
449    };
450    return __assign.apply(this, arguments);
451};
452var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
453    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
454    return new (P || (P = Promise))(function (resolve, reject) {
455        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
456        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
457        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
458        step((generator = generator.apply(thisArg, _arguments || [])).next());
459    });
460};
461var __generator = (this && this.__generator) || function (thisArg, body) {
462    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
463    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
464    function verb(n) { return function (v) { return step([n, v]); }; }
465    function step(op) {
466        if (f) throw new TypeError("Generator is already executing.");
467        while (g && (g = 0, op[0] && (_ = 0)), _) try {
468            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
469            if (y = 0, t) op = [op[0] & 2, t.value];
470            switch (op[0]) {
471                case 0: case 1: t = op; break;
472                case 4: _.label++; return { value: op[1], done: false };
473                case 5: _.label++; y = op[1]; op = [0]; continue;
474                case 7: op = _.ops.pop(); _.trys.pop(); continue;
475                default:
476                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
477                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
478                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
479                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
480                    if (t[2]) _.ops.pop();
481                    _.trys.pop(); continue;
482            }
483            op = body.call(thisArg, _);
484        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
485        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
486    }
487};
488var __importDefault = (this && this.__importDefault) || function (mod) {
489    return (mod && mod.__esModule) ? mod : { "default": mod };
490};
491Object.defineProperty(exports, "__esModule", ({ value: true }));
492/* eslint-disable @typescript-eslint/no-empty-function */
493var ShiftDigitalAnalyticsApi_1 = __importDefault(__webpack_require__(877));
494var selectors = {
495    form: {
496        content: '.formControl:first',
497        input: ':input:not(button.close)',
498        mainButton: ':button.btn-primary,:submit',
499    },
500    promotion: 'a.promo-link[data-promotion=1]',
501    clickToCall: 'a[href^="tel:"]',
502};
503var formFieldNameMapping = {
504    'FirstName': 'firstname',
505    'LastName': 'lastname',
506    'MiddleName': 'middlename',
507    'Phone': 'phonenumber',
508    'Email': 'emailaddress',
509    'Address1': 'address',
510    'City': 'city',
511    'StateProvince': 'state',
512    'ZipCode': 'zipcode',
513    'Comment': 'comments',
514};
515var ShiftDigitalAnalyticsBase = /** @class */ (function () {
516    function ShiftDigitalAnalyticsBase(sd) {
517        this.isSendFormFieldInteractionEvent = false;
518        this.isSendCarouselClickEventWithOfferClick = true;
519        this.carouselClickEventContainers = [];
520        this.formFieldInteractionEventSent = [];
521        this.shiftDigitalAnalyticsApi = new ShiftDigitalAnalyticsApi_1.default(sd);
522    }
523    ShiftDigitalAnalyticsBase.prototype.addCarouselClickEventPromise = function (promises, $promotion) {
524        var _this = this;
525        this.carouselClickEventContainers.forEach(function (container) {
526            if ($promotion.closest(container).length) {
527                promises.push(_this.sendCarouselClickEvent($promotion));
528            }
529        });
530    };
531    ShiftDigitalAnalyticsBase.prototype.handlePromotionClickEvent = function (e) {
532        var url = e.currentTarget.href;
533        var $promotion = $(e.currentTarget);
534        var offerId = $promotion.data('promotion-id');
535        var offerName = $promotion.data('promotion-name');
536        var payload = {
537            offerClick: {
538                offerId: offerId,
539                offerName: offerName,
540            },
541        };
542        e.preventDefault();
543        var sendDataPromise = this.fireOfferClickEvent(payload);
544        var promises = [sendDataPromise];
545        if (this.hasCarouselClickEventHandler && this.isSendCarouselClickEventWithOfferClick) {
546            this.addCarouselClickEventPromise(promises, $promotion);
547        }
548        Promise.all(promises).then(function () {
549            window.location.assign(url);
550        });
551    };
552    ShiftDigitalAnalyticsBase.prototype.addCarouselClickEventHandler = function ($root) {
553        var _this = this;
554        var selector = selectors.promotion;
555        var eventNamespace = this.getEventNamespace();
556        var eventName = "click.".concat(eventNamespace);
557        $root.find(selector).on(eventName, function (e) {
558            var $element = $(e.currentTarget);
559            _this.sendCarouselClickEvent($element);
560        });
561    };
562    ShiftDigitalAnalyticsBase.prototype.sendCarouselClickEvent = function ($element) {
563        var assetPosition = parseInt($element.data('item-index'));
564        var assetName = $element.data('promotion-name');
565        var payload = {
566            carouselClick: {
567                assetPosition: assetPosition,
568                assetName: assetName,
569            },
570        };
571        return this.fireCarouselClickEvent(payload);
572    };
573    ShiftDigitalAnalyticsBase.prototype.getEventNamespace = function () {
574        return "shiftdigitalanalytics-".concat(this.eventNamespace);
575    };
576    ShiftDigitalAnalyticsBase.prototype.getFormVehicle = function (formEventData) {
577        var _a;
578        var shiftDigitalAnalyticsVehicleData = formEventData === null || formEventData === void 0 ? void 0 : formEventData.shiftDigitalAnalyticsVehicleData;
579        var formVehicle = (_a = shiftDigitalAnalyticsVehicleData === null || shiftDigitalAnalyticsVehicleData === void 0 ? void 0 : shiftDigitalAnalyticsVehicleData.overrideData) !== null && _a !== void 0 ? _a : shiftDigitalAnalyticsVehicleData === null || shiftDigitalAnalyticsVehicleData === void 0 ? void 0 : shiftDigitalAnalyticsVehicleData[this.vehiclePropertyName];
580        return formVehicle;
581    };
582    ShiftDigitalAnalyticsBase.prototype.sendDataWithCallBack = function (eventName, data) {
583        return this.shiftDigitalAnalyticsApi.sendDataWithCallBack(eventName, data);
584    };
585    ShiftDigitalAnalyticsBase.prototype.sendData = function (data) {
586        this.shiftDigitalAnalyticsApi.sendData(data);
587    };
588    ShiftDigitalAnalyticsBase.prototype.initClickToCallEventHandler = function () {
589        var _this = this;
590        var rootSelector = 'body';
591        var selector = selectors.clickToCall;
592        var eventNamespace = this.getEventNamespace();
593        var eventName = "click.".concat(eventNamespace);
594        $(rootSelector).on(eventName, selector, function () {
595            var payload = {
596                clickToCallDepartment: 'Sales',
597            };
598            _this.fireClickToCallEvent(payload);
599        });
600    };
601    ShiftDigitalAnalyticsBase.prototype.initLinkClickEventHandler = function (selector, linkType) {
602        var _this = this;
603        var rootSelector = 'body';
604        var eventName = "click.".concat(this.getEventNamespace());
605        $(rootSelector).on(eventName, selector, function () {
606            _this.fireLinkClickEvent({
607                linkType: linkType,
608            });
609        });
610    };
611    ShiftDigitalAnalyticsBase.prototype.initPromotionClickEventHandler = function () {
612        var _this = this;
613        this.hasPromotionClickEventHandler = true;
614        var rootSelector = 'body';
615        var selector = selectors.promotion;
616        var eventNamespace = this.getEventNamespace();
617        var eventName = "click.".concat(eventNamespace);
618        $(rootSelector).on(eventName, selector, function (e) {
619            _this.handlePromotionClickEvent(e);
620        });
621    };
622    ShiftDigitalAnalyticsBase.prototype.sendFormShownEventData = function (formType, displayType, formVehicle) {
623        if (displayType === void 0) { displayType = null; }
624        if (formVehicle === void 0) { formVehicle = null; }
625        var payload = __assign(__assign(__assign({ formType: formType }, (this.getFormLinkType() ? { linkType: this.getFormLinkType() } : {})), (displayType ? { displayType: displayType } : {})), (formVehicle ? { formVehicle: formVehicle } : {}));
626        this.fireFormShownEvent(payload);
627    };
628    ShiftDigitalAnalyticsBase.prototype.handleFormInitiationEvent = function ($form, formType, displayType, formVehicle, e) {
629        e.stopImmediatePropagation();
630        e.preventDefault();
631        var payload = __assign(__assign(__assign({ formType: formType }, (this.getFormLinkType() ? { linkType: this.getFormLinkType() } : {})), (displayType ? { displayType: displayType } : {})), (formVehicle ? { formVehicle: formVehicle } : {}));
632        this.fireFormInitiationEvent(payload);
633        var eventNamespace = this.getEventNamespace();
634        $form.find(selectors.form.content)
635            .off("focusin.".concat(eventNamespace));
636        $form.find(selectors.form.content).find(selectors.form.input)
637            .off("keypress.".concat(eventNamespace))
638            .off("focusin.".concat(eventNamespace));
639        if (this.isSendFormFieldInteractionEvent) {
640            this.doInitFormFieldInteractionEventHandlers($form, formType, displayType, formVehicle);
641        }
642    };
643    ShiftDigitalAnalyticsBase.prototype.doInitFormInitiationEventHandlers = function ($form, formType, displayType, formVehicle) {
644        var _this = this;
645        if (formVehicle === void 0) { formVehicle = null; }
646        var eventNamespace = this.getEventNamespace();
647        $form.find(selectors.form.content)
648            .one("focusin.".concat(eventNamespace), function (e) {
649            _this.handleFormInitiationEvent($form, formType, displayType, formVehicle, e);
650        });
651    };
652    ShiftDigitalAnalyticsBase.prototype.getFormFieldName = function (dx1FieldName) {
653        var _a;
654        return (_a = formFieldNameMapping[dx1FieldName]) !== null && _a !== void 0 ? _a : 'other';
655    };
656    ShiftDigitalAnalyticsBase.prototype.handleFormFieldInteractionEvent = function (formType, displayType, formVehicle, e) {
657        var $currentTarget = $(e.currentTarget);
658        var eventNamespace = this.getEventNamespace();
659        $currentTarget.off("change.".concat(eventNamespace))
660            .off("keypress.".concat(eventNamespace));
661        var dx1FieldName = $currentTarget.closest('[data-question-mapped-key-name]').data('question-mapped-key-name');
662        var formFieldName = this.getFormFieldName(dx1FieldName);
663        if (this.formFieldInteractionEventSent.includes(formFieldName)) {
664            return;
665        }
666        this.formFieldInteractionEventSent.push(formFieldName);
667        var payload = {
668            formType: formType,
669            displayType: displayType,
670            formVehicle: formVehicle,
671            formFieldName: formFieldName
672        };
673        this.fireFormFieldInteractionEvent(payload);
674    };
675    ShiftDigitalAnalyticsBase.prototype.doInitFormFieldInteractionEventHandlers = function ($form, formType, displayType, formVehicle) {
676        var _this = this;
677        this.formFieldInteractionEventSent = [];
678        var eventNamespace = this.getEventNamespace();
679        $form.find(selectors.form.content).find(selectors.form.input)
680            .one("keypress.".concat(eventNamespace), function (e) {
681            _this.handleFormFieldInteractionEvent(formType, displayType, formVehicle, e);
682        })
683            .one("focusin.".concat(eventNamespace), function (e) {
684            _this.handleFormFieldInteractionEvent(formType, displayType, formVehicle, e);
685        });
686    };
687    ShiftDigitalAnalyticsBase.prototype.getPrefContact = function ($form) {
688        var _a;
689        var defaultPrefContact = 'email';
690        var prefContact = (_a = $form.find('[data-question-mapped-key-name=PreferredContact]').find(":radio:checked").val()) === null || _a === void 0 ? void 0 : _a.toLowerCase();
691        return prefContact !== null && prefContact !== void 0 ? prefContact : defaultPrefContact;
692    };
693    ShiftDigitalAnalyticsBase.prototype.getFormLinkType = function () {
694        return null;
695    };
696    ShiftDigitalAnalyticsBase.prototype.getDisplayType = function ($form) {
697        return $form.hasClass('modal') ? 'modal' : 'in-page';
698    };
699    ShiftDigitalAnalyticsBase.prototype.doSendFormSubmissionEvent = function ($form, formEventData, formType, formVehicle, prefContact, formOptIn, includeDisplayType) {
700        if (formOptIn === void 0) { formOptIn = null; }
701        if (includeDisplayType === void 0) { includeDisplayType = true; }
702        if (!formType) {
703            return Promise.resolve();
704        }
705        var leadType = 'lead';
706        var displayType = this.getDisplayType($form);
707        var payload = __assign(__assign(__assign(__assign(__assign(__assign(__assign(__assign({}, (formEventData.leadTransactionId ? { leadId: formEventData.leadTransactionId } : {})), { formType: formType }), (this.getFormLinkType() ? { linkType: this.getFormLinkType() } : {})), { leadType: leadType }), (formOptIn ? { formOptIn: formOptIn } : {})), (prefContact ? { prefContact: prefContact } : {})), (includeDisplayType && displayType ? { displayType: displayType } : {})), (formVehicle ? { formVehicle: formVehicle } : {}));
708        return this.fireFormSubmissionEventAsync(payload);
709    };
710    ShiftDigitalAnalyticsBase.prototype.doSendFormSubmissionErrorEvent = function ($form, formSubmissionErrorEventData, formType, formVehicle) {
711        if (!formType) {
712            return Promise.resolve();
713        }
714        var displayType = this.getDisplayType($form);
715        var payload = {
716            formType: formType,
717            displayType: displayType,
718            formError: formSubmissionErrorEventData.errorMessage,
719            formVehicle: formVehicle
720        };
721        return this.fireFormSubmissionErrorEventAsync(payload);
722    };
723    ShiftDigitalAnalyticsBase.prototype.doInitCarouselClickEventHandler = function ($root) {
724        if (this.hasPromotionClickEventHandler) {
725            this.carouselClickEventContainers.push($root);
726            this.hasCarouselClickEventHandler = true;
727        }
728        else {
729            this.addCarouselClickEventHandler($root);
730        }
731    };
732    ShiftDigitalAnalyticsBase.prototype.sendGetDirectionsEvent = function () {
733        this.fireGetDirectionsEvent({});
734    };
735    ShiftDigitalAnalyticsBase.prototype.doSendPageViewEvent = function () {
736        this.shiftDigitalAnalyticsApi.sendPageView();
737    };
738    ShiftDigitalAnalyticsBase.prototype.doSendEmptyFilterSearchEvent = function () {
739        var filterSearchEventData = {
740            events: 'filterSearch',
741            filterSearch: {
742                status: 'Mixed',
743            },
744        };
745        this.shiftDigitalAnalyticsApi.sendData(filterSearchEventData);
746    };
747    // eslint-disable-next-line @typescript-eslint/no-unused-vars
748    ShiftDigitalAnalyticsBase.prototype.sendFormShownEventImpl = function ($form, formEventData) {
749    };
750    ShiftDigitalAnalyticsBase.prototype.initFormInitiationEventHandlerImpl = function (
751    // eslint-disable-next-line @typescript-eslint/no-unused-vars
752    $form, 
753    // eslint-disable-next-line @typescript-eslint/no-unused-vars
754    formEventData) {
755    };
756    ShiftDigitalAnalyticsBase.prototype.initFormFieldInteractionEventHandlerImpl = function (
757    // eslint-disable-next-line @typescript-eslint/no-unused-vars
758    $form, 
759    // eslint-disable-next-line @typescript-eslint/no-unused-vars
760    formEventData) {
761    };
762    ShiftDigitalAnalyticsBase.prototype.sendFormShownEvent = function ($form, formEventData) {
763        this.sendFormShownEventImpl($form, formEventData);
764    };
765    ShiftDigitalAnalyticsBase.prototype.initFormInitiationEventHandler = function ($form, formEventData) {
766        this.initFormInitiationEventHandlerImpl($form, formEventData);
767    };
768    ShiftDigitalAnalyticsBase.prototype.initFormFieldInteractionEventHandler = function ($form, formEventData) {
769        this.initFormFieldInteractionEventHandlerImpl($form, formEventData);
770    };
771    // eslint-disable-next-line @typescript-eslint/no-unused-vars
772    ShiftDigitalAnalyticsBase.prototype.sendFormSubmissionErrorEvent = function ($form, formSubmissionErrorEventData) {
773        return Promise.resolve();
774    };
775    ShiftDigitalAnalyticsBase.prototype.sendFilterSearchEvent = function (filterSearch, countSearchResults) {
776        var payload = {
777            countSearchResults: countSearchResults.toString(),
778            filterSearch: filterSearch,
779        };
780        this.fireFilterSearchEvent(payload);
781    };
782    ShiftDigitalAnalyticsBase.prototype.sendPageBrandEvent = function (keyword) {
783        var pageBrandEventData = {
784            pagebrand: keyword
785        };
786        this.shiftDigitalAnalyticsApi.sendData(pageBrandEventData);
787    };
788    ShiftDigitalAnalyticsBase.prototype.sendTypedSearchEvent = function (keyword) {
789        this.fireTypedSearchEvent({ typedSearchContent: keyword });
790    };
791    ShiftDigitalAnalyticsBase.prototype.initCarouselClickEventHandler = function ($root) {
792        this.doInitCarouselClickEventHandler($root);
793    };
794    ShiftDigitalAnalyticsBase.prototype.sendPageViewEvent = function () {
795        this.shiftDigitalAnalyticsApi.sendPageView();
796    };
797    ShiftDigitalAnalyticsBase.prototype.sendEmptyFilterSearchEvent = function () {
798        var payload = {
799            countSearchResults: '0',
800            filterSearch: {
801                status: 'Mixed',
802            },
803        };
804        this.fireFilterSearchEvent(payload);
805    };
806    ShiftDigitalAnalyticsBase.prototype.fireFilterSearchEvent = function (payload) {
807        var event = __assign(__assign({}, payload), { events: 'filterSearch' });
808        this.shiftDigitalAnalyticsApi.sendDataLayerEvent(event);
809    };
810    ShiftDigitalAnalyticsBase.prototype.fireTypedSearchEvent = function (payload) {
811        var event = __assign(__assign({}, payload), { events: 'typedSearch' });
812        this.shiftDigitalAnalyticsApi.sendDataLayerEvent(event);
813    };
814    ShiftDigitalAnalyticsBase.prototype.fireVehicleQuickViewEvent = function (payload) {
815        var event = __assign(__assign({}, payload), { events: 'vehicleQuickView' });
816        this.shiftDigitalAnalyticsApi.sendDataLayerEvent(event);
817    };
818    ShiftDigitalAnalyticsBase.prototype.fireFormShownEvent = function (payload) {
819        var event = __assign(__assign({}, payload), { events: 'formShown' });
820        this.shiftDigitalAnalyticsApi.sendDataLayerEvent(event);
821    };
822    ShiftDigitalAnalyticsBase.prototype.fireFormInitiationEvent = function (payload) {
823        var event = __assign(__assign({}, payload), { events: 'formInitiation' });
824        this.shiftDigitalAnalyticsApi.sendDataLayerEvent(event);
825    };
826    ShiftDigitalAnalyticsBase.prototype.fireFormFieldInteractionEvent = function (payload) {
827        var event = __assign(__assign({}, payload), { events: 'formFieldInteraction' });
828        this.shiftDigitalAnalyticsApi.sendDataLayerEvent(event);
829    };
830    ShiftDigitalAnalyticsBase.prototype.fireFormSubmissionEventAsync = function (payload) {
831        return __awaiter(this, void 0, void 0, function () {
832            var event;
833            return __generator(this, function (_a) {
834                switch (_a.label) {
835                    case 0:
836                        event = __assign(__assign({}, payload), { events: 'formSubmission' });
837                        return [4 /*yield*/, this.shiftDigitalAnalyticsApi.sendDataLayerEventAsync(event)];
838                    case 1:
839                        _a.sent();
840                        return [2 /*return*/];
841                }
842            });
843        });
844    };
845    ShiftDigitalAnalyticsBase.prototype.fireFormSubmissionErrorEventAsync = function (payload) {
846        return __awaiter(this, void 0, void 0, function () {
847            var event;
848            return __generator(this, function (_a) {
849                switch (_a.label) {
850                    case 0:
851                        event = __assign(__assign({}, payload), { events: 'formSubmissionError' });
852                        return [4 /*yield*/, this.shiftDigitalAnalyticsApi.sendDataLayerEventAsync(event)];
853                    case 1:
854                        _a.sent();
855                        return [2 /*return*/];
856                }
857            });
858        });
859    };
860    ShiftDigitalAnalyticsBase.prototype.fireOfferClickEvent = function (payload) {
861        return __awaiter(this, void 0, void 0, function () {
862            var event;
863            return __generator(this, function (_a) {
864                event = __assign(__assign({}, payload), { events: 'offerClick' });
865                this.shiftDigitalAnalyticsApi.sendDataLayerEvent(event);
866                return [2 /*return*/];
867            });
868        });
869    };
870    ShiftDigitalAnalyticsBase.prototype.fireServiceOfferClickEvent = function (payload) {
871        var event = __assign(__assign({}, payload), { events: 'serviceOfferClick' });
872        this.shiftDigitalAnalyticsApi.sendDataLayerEvent(event);
873    };
874    ShiftDigitalAnalyticsBase.prototype.fireClickToCallEvent = function (payload) {
875        var event = __assign(__assign({}, payload), { events: 'clickToCall' });
876        this.shiftDigitalAnalyticsApi.sendDataLayerEvent(event);
877    };
878    ShiftDigitalAnalyticsBase.prototype.fireClickToTextEvent = function (payload) {
879        var event = __assign(__assign({}, payload), { events: 'clickToText' });
880        this.shiftDigitalAnalyticsApi.sendDataLayerEvent(event);
881    };
882    ShiftDigitalAnalyticsBase.prototype.fireLinkClickEvent = function (payload) {
883        var event = __assign(__assign({}, payload), { events: 'linkClick' });
884        this.shiftDigitalAnalyticsApi.sendDataLayerEvent(event);
885    };
886    ShiftDigitalAnalyticsBase.prototype.fireLinkClickEventAsync = function (payload) {
887        return __awaiter(this, void 0, void 0, function () {
888            var event;
889            return __generator(this, function (_a) {
890                switch (_a.label) {
891                    case 0:
892                        event = __assign(__assign({}, payload), { events: 'linkClick' });
893                        return [4 /*yield*/, this.shiftDigitalAnalyticsApi.sendDataLayerEventAsync(event)];
894                    case 1:
895                        _a.sent();
896                        return [2 /*return*/];
897                }
898            });
899        });
900    };
901    ShiftDigitalAnalyticsBase.prototype.fireCarouselClickEvent = function (payload) {
902        return __awaiter(this, void 0, void 0, function () {
903            var event;
904            return __generator(this, function (_a) {
905                event = __assign(__assign({}, payload), { events: 'carouselClick' });
906                this.shiftDigitalAnalyticsApi.sendDataLayerEvent(event);
907                return [2 /*return*/];
908            });
909        });
910    };
911    ShiftDigitalAnalyticsBase.prototype.fireGetDirectionsEvent = function (payload) {
912        var event = __assign(__assign({}, payload), { events: 'getDirections' });
913        this.shiftDigitalAnalyticsApi.sendDataLayerEvent(event);
914    };
915    ShiftDigitalAnalyticsBase.prototype.fireBrochureDownloadEvent = function (payload) {
916        var event = __assign(__assign({}, payload), { events: 'brochureDownload' });
917        this.shiftDigitalAnalyticsApi.sendDataLayerEvent(event);
918    };
919    ShiftDigitalAnalyticsBase.prototype.fireScheduleServiceClickEvent = function (payload) {
920        var event = __assign(__assign({}, payload), { events: 'scheduleServiceClick' });
921        this.shiftDigitalAnalyticsApi.sendDataLayerEvent(event);
922    };
923    return ShiftDigitalAnalyticsBase;
924}());
925exports["default"] = ShiftDigitalAnalyticsBase;
926
927
928/***/ }),
929
930/***/ 559:
931/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
932
933
934var __importDefault = (this && this.__importDefault) || function (mod) {
935    return (mod && mod.__esModule) ? mod : { "default": mod };
936};
937Object.defineProperty(exports, "__esModule", ({ value: true }));
938exports.ShiftDigitalAnalyticsManager = void 0;
939var PolarisShiftDigitalAnalytics_1 = __importDefault(__webpack_require__(16));
940var HdShiftDigitalAnalytics_1 = __importDefault(__webpack_require__(626));
941var BmwShiftDigitalAnalytics_1 = __importDefault(__webpack_require__(526));
942var YamahaShiftDigitalAnalytics_1 = __importDefault(__webpack_require__(647));
943var ShiftDigitalAnalyticsManager = /** @class */ (function () {
944    function ShiftDigitalAnalyticsManager() {
945        this.sds = [];
946        this.initShiftDigitalAnalytics();
947    }
948    ShiftDigitalAnalyticsManager.prototype.initShiftDigitalAnalytics = function () {
949        var _a, _b, _c, _d;
950        if ((_a = window.dx1ShiftDigitalAnalytics) === null || _a === void 0 ? void 0 : _a.polaris) {
951            this.sds.push(new PolarisShiftDigitalAnalytics_1.default());
952        }
953        if ((_b = window.dx1ShiftDigitalAnalytics) === null || _b === void 0 ? void 0 : _b.hd) {
954            this.sds.push(new HdShiftDigitalAnalytics_1.default());
955        }
956        if ((_c = window.dx1ShiftDigitalAnalytics) === null || _c === void 0 ? void 0 : _c.bmw) {
957            this.sds.push(new BmwShiftDigitalAnalytics_1.default());
958        }
959        if ((_d = window.dx1ShiftDigitalAnalytics) === null || _d === void 0 ? void 0 : _d.yamaha) {
960            this.sds.push(new YamahaShiftDigitalAnalytics_1.default());
961        }
962    };
963    ShiftDigitalAnalyticsManager.instance = function () {
964        if (!ShiftDigitalAnalyticsManager._instance) {
965            ShiftDigitalAnalyticsManager._instance = new ShiftDigitalAnalyticsManager();
966        }
967        return ShiftDigitalAnalyticsManager._instance;
968    };
969    ShiftDigitalAnalyticsManager.isActivated = function () {
970        return !!(ShiftDigitalAnalyticsManager === null || ShiftDigitalAnalyticsManager === void 0 ? void 0 : ShiftDigitalAnalyticsManager.instance().hasShiftDigitalAnalytics());
971    };
972    ShiftDigitalAnalyticsManager.prototype.hasShiftDigitalAnalytics = function () {
973        return this.sds.length > 0;
974    };
975    ShiftDigitalAnalyticsManager.prototype.initEventHandlers = function () {
976        this.sds.forEach(function (sd) { return sd.initEventHandlers(); });
977    };
978    ShiftDigitalAnalyticsManager.prototype.sendFormShownEvent = function ($form, formEventData) {
979        this.sds.forEach(function (sd) { return sd.sendFormShownEvent($form, formEventData); });
980    };
981    ShiftDigitalAnalyticsManager.prototype.initFormInitiationEventHandler = function ($form, formEventData) {
982        this.sds.forEach(function (sd) { return sd.initFormInitiationEventHandler($form, formEventData); });
983    };
984    ShiftDigitalAnalyticsManager.prototype.initFormFieldInteractionEventHandler = function ($form, formEventData) {
985        this.sds.forEach(function (sd) { return sd.initFormFieldInteractionEventHandler($form, formEventData); });
986    };
987    ShiftDigitalAnalyticsManager.prototype.sendFormSubmissionEvent = function ($form, formSubmissionEventData) {
988        var promises = this.sds.map(function (sd) { return sd.sendFormSubmissionEvent($form, formSubmissionEventData); });
989        return new Promise(function (resolve) {
990            Promise.all(promises).then(function () {
991                resolve();
992            });
993        });
994    };
995    ShiftDigitalAnalyticsManager.prototype.sendFormSubmissionErrorEvent = function ($form, formSUbmissionErrorEventData) {
996        var promises = this.sds.map(function (sd) { return sd.sendFormSubmissionErrorEvent($form, formSUbmissionErrorEventData); });
997        return new Promise(function (resolve) {
998            Promise.all(promises).then(function () {
999                resolve();
1000            });
1001        });
1002    };
1003    ShiftDigitalAnalyticsManager.prototype.sendFilterSearchEvent = function (filterSearch, countSearchResults) {
1004        this.sds.forEach(function (sd) { return sd.sendFilterSearchEvent(filterSearch, countSearchResults); });
1005    };
1006    ShiftDigitalAnalyticsManager.prototype.sendPageBrandEvent = function (keyword) {
1007        this.sds.forEach(function (sd) { return sd.sendPageBrandEvent(keyword); });
1008    };
1009    ShiftDigitalAnalyticsManager.prototype.sendTypedSearchEvent = function (keyword) {
1010        this.sds.forEach(function (sd) { return sd.sendTypedSearchEvent(keyword); });
1011    };
1012    ShiftDigitalAnalyticsManager.prototype.initCarouselClickEventHandler = function ($root) {
1013        this.sds.forEach(function (sd) { return sd.initCarouselClickEventHandler($root); });
1014    };
1015    ShiftDigitalAnalyticsManager.prototype.sendEmptyFilterSearchEvent = function () {
1016        this.sds.forEach(function (sd) { return sd.sendEmptyFilterSearchEvent(); });
1017    };
1018    ShiftDigitalAnalyticsManager.prototype.sendPageViewEvent = function () {
1019        this.sds.forEach(function (sd) { return sd.sendPageViewEvent(); });
1020    };
1021    return ShiftDigitalAnalyticsManager;
1022}());
1023exports.ShiftDigitalAnalyticsManager = ShiftDigitalAnalyticsManager;
1024exports["default"] = ShiftDigitalAnalyticsManager;
1025
1026
1027/***/ }),
1028
1029/***/ 647:
1030/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
1031
1032
1033var __extends = (this && this.__extends) || (function () {
1034    var extendStatics = function (d, b) {
1035        extendStatics = Object.setPrototypeOf ||
1036            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
1037            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
1038        return extendStatics(d, b);
1039    };
1040    return function (d, b) {
1041        if (typeof b !== "function" && b !== null)
1042            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
1043        extendStatics(d, b);
1044        function __() { this.constructor = d; }
1045        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
1046    };
1047})();
1048var __assign = (this && this.__assign) || function () {
1049    __assign = Object.assign || function(t) {
1050        for (var s, i = 1, n = arguments.length; i < n; i++) {
1051            s = arguments[i];
1052            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
1053                t[p] = s[p];
1054        }
1055        return t;
1056    };
1057    return __assign.apply(this, arguments);
1058};
1059var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
1060    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
1061    return new (P || (P = Promise))(function (resolve, reject) {
1062        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
1063        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
1064        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
1065        step((generator = generator.apply(thisArg, _arguments || [])).next());
1066    });
1067};
1068var __generator = (this && this.__generator) || function (thisArg, body) {
1069    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
1070    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
1071    function verb(n) { return function (v) { return step([n, v]); }; }
1072    function step(op) {
1073        if (f) throw new TypeError("Generator is already executing.");
1074        while (g && (g = 0, op[0] && (_ = 0)), _) try {
1075            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
1076            if (y = 0, t) op = [op[0] & 2, t.value];
1077            switch (op[0]) {
1078                case 0: case 1: t = op; break;
1079                case 4: _.label++; return { value: op[1], done: false };
1080                case 5: _.label++; y = op[1]; op = [0]; continue;
1081                case 7: op = _.ops.pop(); _.trys.pop(); continue;
1082                default:
1083                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
1084                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
1085                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
1086                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
1087                    if (t[2]) _.ops.pop();
1088                    _.trys.pop(); continue;
1089            }
1090            op = body.call(thisArg, _);
1091        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
1092        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
1093    }
1094};
1095var __importDefault = (this && this.__importDefault) || function (mod) {
1096    return (mod && mod.__esModule) ? mod : { "default": mod };
1097};
1098Object.defineProperty(exports, "__esModule", ({ value: true }));
1099var ShiftDigitalAnalyticsBase_1 = __importDefault(__webpack_require__(987));
1100var yamahaFormTypes = [
1101    'Get a Quote',
1102    'Test Drive',
1103    'Request More Info',
1104    'Email a Friend',
1105    'General Contact',
1106    'Service',
1107    'Parts',
1108    'Schedule Service',
1109    'Employment',
1110    'Trade In',
1111    'Finance',
1112    'Payment Estimator',
1113    'Specials',
1114    'Vehicle Finder',
1115    'Dealer Custom',
1116    'Make an Offer',
1117    'Send to Mobile',
1118];
1119var YamahaShiftDigitalAnalytics = /** @class */ (function (_super) {
1120    __extends(YamahaShiftDigitalAnalytics, _super);
1121    function YamahaShiftDigitalAnalytics() {
1122        var _this = _super.call(this, window.sdy) || this;
1123        _this.eventNamespace = 'yamaha';
1124        _this.vehiclePropertyName = 'yamaha';
1125        _this.isInitialFilterSearch = true;
1126        _this.inventorySearch = {
1127            status: 'Mixed',
1128        };
1129        _this.inventorySearchResultCount = '0';
1130        _this.inventoryLinkClickFilter = null;
1131        _this.yamahaSelectors = {
1132            vdpLink: '.showroom-result--hits .showroom-item a[href$="Y"]',
1133            inventoryLink: '#MainNavigation .yamaha-inventory-link',
1134        };
1135        return _this;
1136    }
1137    YamahaShiftDigitalAnalytics.prototype.getFormType = function (formName) {
1138        var nameMap = {
1139            'Contact Us': 'General Contact',
1140            'Model Wanted': 'Request More Info',
1141            'Free Trade-In Evaluation': 'Trade In',
1142            'Payment  Estimator': 'Payment Estimator',
1143        };
1144        var normalizedFormName = nameMap[formName] || formName;
1145        return yamahaFormTypes.find(function (x) { return normalizedFormName === null || normalizedFormName === void 0 ? void 0 : normalizedFormName.includes(x); }) || 'Other';
1146    };
1147    YamahaShiftDigitalAnalytics.prototype.getFormLinkType = function () {
1148        return 'Lead Form';
1149    };
1150    YamahaShiftDigitalAnalytics.prototype.sendFormShownEventImpl = function (_form, formEventData) {
1151        var formType = this.getFormType(formEventData.formName);
1152        var formVehicle = this.getFormVehicle(formEventData);
1153        _super.prototype.sendFormShownEventData.call(this, formType, null, formVehicle);
1154    };
1155    YamahaShiftDigitalAnalytics.prototype.initFormInitiationEventHandlerImpl = function ($form, formEventData) {
1156        var formType = this.getFormType(formEventData.formName);
1157        var formVehicle = this.getFormVehicle(formEventData);
1158        _super.prototype.doInitFormInitiationEventHandlers.call(this, $form, formType, null, formVehicle);
1159    };
1160    YamahaShiftDigitalAnalytics.prototype.initEventHandlers = function () {
1161        _super.prototype.initLinkClickEventHandler.call(this, this.yamahaSelectors.vdpLink, 'VDP');
1162        this.initInventoryLinkClickEventHandler();
1163        _super.prototype.initPromotionClickEventHandler.call(this);
1164        _super.prototype.initClickToCallEventHandler.call(this);
1165    };
1166    YamahaShiftDigitalAnalytics.prototype.initInventoryLinkClickEventHandler = function () {
1167        var _this = this;
1168        var eventName = "click.".concat(this.getEventNamespace());
1169        var selector = this.yamahaSelectors.inventoryLink;
1170        $('body')
1171            .off(eventName, selector)
1172            .on(eventName, selector, function () {
1173            _this.inventoryLinkClickFilter = JSON.stringify(_this.inventorySearch);
1174            _this.fireLinkClickEvent({
1175                linkType: 'Inventory Search',
1176            });
1177        });
1178    };
1179    YamahaShiftDigitalAnalytics.prototype.fireLinkClickEvent = function (payload) {
1180        if (payload.linkType === 'Inventory Search') {
1181            _super.prototype.fireLinkClickEvent.call(this, __assign(__assign({}, payload), { countSearchResults: this.inventorySearchResultCount, 'Inventory Search': this.inventorySearch }));
1182            return;
1183        }
1184        _super.prototype.fireLinkClickEvent.call(this, payload);
1185    };
1186    // eslint-disable-next-line @typescript-eslint/no-unused-vars
1187    YamahaShiftDigitalAnalytics.prototype.fireOfferClickEvent = function (_payload) {
1188        return __awaiter(this, void 0, void 0, function () {
1189            return __generator(this, function (_a) {
1190                switch (_a.label) {
1191                    case 0: return [4 /*yield*/, _super.prototype.fireLinkClickEventAsync.call(this, {
1192                            linkType: 'Offers',
1193                        })];
1194                    case 1:
1195                        _a.sent();
1196                        return [2 /*return*/];
1197                }
1198            });
1199        });
1200    };
1201    YamahaShiftDigitalAnalytics.prototype.sendFilterSearchEvent = function (filterSearch, countSearchResults) {
1202        this.inventorySearch = filterSearch;
1203        this.inventorySearchResultCount = countSearchResults.toString();
1204        var filter = JSON.stringify(this.inventorySearch);
1205        if (this.isInitialFilterSearch) {
1206            this.isInitialFilterSearch = false;
1207            this.inventoryLinkClickFilter = null;
1208            return;
1209        }
1210        if (filter === this.inventoryLinkClickFilter) {
1211            this.inventoryLinkClickFilter = null;
1212            return;
1213        }
1214        this.inventoryLinkClickFilter = null;
1215        this.fireLinkClickEvent({
1216            linkType: 'Inventory Search',
1217            countSearchResults: this.inventorySearchResultCount,
1218            'Inventory Search': this.inventorySearch,
1219        });
1220    };
1221    YamahaShiftDigitalAnalytics.prototype.sendEmptyFilterSearchEvent = function () {
1222        this.inventorySearch = {
1223            status: 'Mixed',
1224        };
1225        this.inventorySearchResultCount = '0';
1226        _super.prototype.sendData.call(this, {
1227            linkType: 'Inventory Search',
1228            countSearchResults: this.inventorySearchResultCount,
1229            'Inventory Search': this.inventorySearch,
1230        });
1231    };
1232    YamahaShiftDigitalAnalytics.prototype.sendFormSubmissionEvent = function ($form, formSubmissionEventData) {
1233        var formType = this.getFormType(formSubmissionEventData.formName);
1234        var formVehicle = this.getFormVehicle(formSubmissionEventData);
1235        var prefContact = this.getPrefContact($form);
1236        return _super.prototype.doSendFormSubmissionEvent.call(this, $form, formSubmissionEventData, formType, formVehicle, prefContact, null, false);
1237    };
1238    return YamahaShiftDigitalAnalytics;
1239}(ShiftDigitalAnalyticsBase_1.default));
1240exports["default"] = YamahaShiftDigitalAnalytics;
1241
1242
1243/***/ })
1244
1245/******/ 	});
1246/************************************************************************/
1247/******/ 	// The module cache
1248/******/ 	var __webpack_module_cache__ = {};
1249/******/ 	
1250/******/ 	// The require function
1251/******/ 	function __webpack_require__(moduleId) {
1252/******/ 		// Check if module is in cache
1253/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
1254/******/ 		if (cachedModule !== undefined) {
1255/******/ 			return cachedModule.exports;
1256/******/ 		}
1257/******/ 		// Create a new module (and put it into the cache)
1258/******/ 		var module = __webpack_module_cache__[moduleId] = {
1259/******/ 			// no module.id needed
1260/******/ 			// no module.loaded needed
1261/******/ 			exports: {}
1262/******/ 		};
1263/******/ 	
1264/******/ 		// Execute the module function
1265/******/ 		__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
1266/******/ 	
1267/******/ 		// Return the exports of the module
1268/******/ 		return module.exports;
1269/******/ 	}
1270/******/ 	
1271/************************************************************************/
1272/******/ 	
1273/******/ 	// startup
1274/******/ 	// Load entry module and return exports
1275/******/ 	// This entry module is referenced by other modules so it can't be inlined
1276/******/ 	var __webpack_exports__ = __webpack_require__(559);
1277/******/ 	var __webpack_export_target__ = window;
1278/******/ 	for(var i in __webpack_exports__) __webpack_export_target__[i] = __webpack_exports__[i];
1279/******/ 	if(__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, "__esModule", { value: true });
1280/******/ 	
1281/******/ })()
1282;

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.