window.Vue = require("vue/dist/vue.min.js"); window.axios = require("axios"); window.rater = require("rater-js"); window.ScrollReveal = require("scrollreveal"); require("smoothscroll-polyfill").polyfill(); require("fslightbox"); import { tns } from "tiny-slider/src/tiny-slider.js"; import { chunk, flatten } from "lodash"; import Toastify from "toastify-js"; let detectElementOverflow = require('detect-element-overflow').default; window.Toastify = Toastify; window.tns = tns; window.axios.defaults.headers.common["X-Requested-With"] = "XMLHttpRequest"; // cookie notice import { LdcwebCn } from "./front/ldcweb-cn.js"; window.LdcwebCn = LdcwebCn; // ProgressBar de l'inscription require("./front/functions.js"); __Gaul.detectElementOverflow = detectElementOverflow; const pages = require.context("./pages", true, /\.js$/i); const ignorePages = ["history.js", "onepage.js"]; pages.keys().map(key => { key = key.replace("./", ""); if (ignorePages.includes(key)) { return; } require(`./pages/${key}`); }); let vueOptions = { el: "#app" }; Vue.prototype.$vueEventBus = new Vue() // register modules const modules = require.context("./modules", true, /\.js$/i); modules.keys().map(key => Vue.mixin(modules(key).default)); // Register components const vues = require.context("./components/fo", true, /\.vue$/i); vues.keys().map(key => Vue.component( key .split("/") .pop() .split(".")[0] .replace(/\.?([A-Z])/g, function (x, y) { return "-" + y.toLowerCase(); }) .replace(/^-/, "") .replace("-component", ""), vues(key).default ) ); // Activate router on pages that needs it if (document.getElementById("vue-use-router")) { //yaah we have app with routes window.VueRouter = require("vue-router").default; const routes = require("./routes.js")(Vue); const router = new VueRouter({ routes }); vueOptions["router"] = router; } const app = new Vue(vueOptions); Vue.filter('str_limit', function (value, size) { if (!value) return ''; value = value.toString(); if (value.length <= size) { return value; } return value.substr(0, size) + '...'; }); // Alias for Vuejs Vue.prototype.__Gaul = window.__Gaul; Vue.prototype.scrollTo = window.scrollTo; Vue.prototype.window = window;