AlkantarClanX12

Your IP : 216.73.217.24


Current Path : /www/capitalgmcbuickregina_830/public/wp-content/themes/lbx-egypt/resources/scripts/
Upload File :
Current File : /www/capitalgmcbuickregina_830/public/wp-content/themes/lbx-egypt/resources/scripts/app.js

// import external dependencies
import Vue from "vue";
import { i18n } from "./i18n";
import VueCookies from "vue-cookies";
import vClickOutside from "v-click-outside";

Vue.use(VueCookies);
Vue.use(vClickOutside);

//vue event bus
import EventBus from "./event-bus.vue";
import GraphqlData from "./graphql-data.vue";

import { ToggleList } from "./components/atomic/toggle-list.vue";
import { ToggleListV2 } from "./components/atomic/toggle-list-v2.vue";
import { ToggleListAbsolute } from "./components/atomic/toggle-list-absolute.vue";
import { ToggleListNewAbsolute } from "./components/atomic/toggle-list-new-absolute.vue";
import { LeadboxHeader } from "./components/leadbox-header.vue";
import { HoursFooter } from "./components/atomic/hours-footer.vue";
import { DealerHoursBlk } from "./components/atomic/dealer-hours-blk.vue";
import { SocialNetworks } from "./components/social-networks.vue";
import { ListWViewMore } from "./components/atomic/list-w-view-more.vue";
import { Dealertrack } from "./components/atomic/dealertrack.vue";
import { ToggleList3 } from "./components/atomic/toggle-list-3.vue";
import { ReadMore } from "./components/vdp/read-more.vue";

Vue.component("toggle-list", ToggleList);
Vue.component("toggle-list-v2", ToggleListV2);
Vue.component("toggle-list-absolute", ToggleListAbsolute);
Vue.component("toggle-list-new-absolute", ToggleListNewAbsolute);
Vue.component("leadbox-header", LeadboxHeader);
Vue.component("hours-footer", HoursFooter);
Vue.component("dealer-hours-blk", DealerHoursBlk);
Vue.component("social-networks", SocialNetworks);
Vue.component("list-w-view-more", ListWViewMore);
Vue.component("dealertrack", Dealertrack);
Vue.component("toggle-list-3", ToggleList3);
Vue.component("read-more", ReadMore);
//Vue.component('panorama', Panorama);

document.addEventListener("DOMContentLoaded", () => {
  const vueAppContainerClass = ".vue-app";
  const vueAppContainers = document.querySelectorAll(vueAppContainerClass);

  Array.from(vueAppContainers).forEach((vueAppContainer) => {
    var styleEls = vueAppContainer.querySelectorAll("style");

    Array.from(styleEls).forEach((styleEl) => {
      styleEl.parentElement.removeChild(styleEl);
      document.head.appendChild(styleEl);
    });

    // Move script[type="text/template"] outside of Vue scope to prevent
    // Vue from trying to compile Underscore/Backbone templates (e.g., Ninja Forms Multi-Part)
    var templateScripts = vueAppContainer.querySelectorAll('script[type="text/template"]');
    Array.from(templateScripts).forEach((script) => {
      document.body.appendChild(script);
    });

    new Vue({
      el: vueAppContainer,
      i18n,
      methods: {
        closeAllOpenComponents() {
          EventBus.$emit("CLOSE_ALL_OPEN_COMPONENTS", null);
        },
      },
      events: {
        sendGAEvent: function (data) {
          console.log("sendGAEvent" + data);
        },
      },
    });
  });
});

window.Vue = Vue;
window.EventBus = EventBus;
window.GraphqlData = GraphqlData;
Vue.$cookies.config("30d");
Vue.config.devtools = process.env.NODE_ENV !== 'production';

import jQueryController from "./jQuery/Controller";
import Header from "./jQuery/Header";
import Footer from "./jQuery/Footer";

jQueryController.addComponents([Header, Footer]);