AlkantarClanX12
| Current Path : /www/capitalgmcbuickregina_830/public/wp-content/themes/lbx-egypt/resources/scripts/ |
| 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]);