webpackJsonp([1],{ /***/ "./assets/js/Components/Contact/ContactForm.vue": /***/ (function(module, exports, __webpack_require__) { var disposed = false function injectStyle (ssrContext) { if (disposed) return __webpack_require__("./node_modules/vue-style-loader/index.js!./node_modules/css-loader/index.js?sourceMap!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-43a2b584\",\"scoped\":true,\"hasInlineConfig\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./assets/js/Components/Contact/ContactForm.vue") } var normalizeComponent = __webpack_require__("./node_modules/vue-loader/lib/component-normalizer.js") /* script */ var __vue_script__ = __webpack_require__("./node_modules/babel-loader/lib/index.js?{\"cacheDirectory\":true,\"presets\":[[\"env\",{\"modules\":false,\"targets\":{\"browsers\":[\"> 2%\"],\"uglify\":true}}]],\"plugins\":[\"transform-object-rest-spread\",[\"transform-runtime\",{\"polyfill\":false,\"helpers\":false}]]}!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./assets/js/Components/Contact/ContactForm.vue") /* template */ var __vue_template__ = null /* template functional */ var __vue_template_functional__ = false /* styles */ var __vue_styles__ = injectStyle /* scopeId */ var __vue_scopeId__ = "data-v-43a2b584" /* moduleIdentifier (server only) */ var __vue_module_identifier__ = null var Component = normalizeComponent( __vue_script__, __vue_template__, __vue_template_functional__, __vue_styles__, __vue_scopeId__, __vue_module_identifier__ ) Component.options.__file = "assets/js/Components/Contact/ContactForm.vue" /* hot reload */ if (false) {(function () { var hotAPI = require("vue-hot-reload-api") hotAPI.install(require("vue"), false) if (!hotAPI.compatible) return module.hot.accept() if (!module.hot.data) { hotAPI.createRecord("data-v-43a2b584", Component.options) } else { hotAPI.reload("data-v-43a2b584", Component.options) } module.hot.dispose(function (data) { disposed = true }) })()} module.exports = Component.exports /***/ }), /***/ "./assets/js/Components/Recaptcha/Index.vue": /***/ (function(module, exports, __webpack_require__) { var disposed = false function injectStyle (ssrContext) { if (disposed) return __webpack_require__("./node_modules/vue-style-loader/index.js!./node_modules/css-loader/index.js?sourceMap!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-1ea2c299\",\"scoped\":true,\"hasInlineConfig\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./assets/js/Components/Recaptcha/Index.vue") } var normalizeComponent = __webpack_require__("./node_modules/vue-loader/lib/component-normalizer.js") /* script */ var __vue_script__ = __webpack_require__("./node_modules/babel-loader/lib/index.js?{\"cacheDirectory\":true,\"presets\":[[\"env\",{\"modules\":false,\"targets\":{\"browsers\":[\"> 2%\"],\"uglify\":true}}]],\"plugins\":[\"transform-object-rest-spread\",[\"transform-runtime\",{\"polyfill\":false,\"helpers\":false}]]}!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./assets/js/Components/Recaptcha/Index.vue") /* template */ var __vue_template__ = __webpack_require__("./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-1ea2c299\",\"hasScoped\":true,\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./assets/js/Components/Recaptcha/Index.vue") /* template functional */ var __vue_template_functional__ = false /* styles */ var __vue_styles__ = injectStyle /* scopeId */ var __vue_scopeId__ = "data-v-1ea2c299" /* moduleIdentifier (server only) */ var __vue_module_identifier__ = null var Component = normalizeComponent( __vue_script__, __vue_template__, __vue_template_functional__, __vue_styles__, __vue_scopeId__, __vue_module_identifier__ ) Component.options.__file = "assets/js/Components/Recaptcha/Index.vue" /* hot reload */ if (false) {(function () { var hotAPI = require("vue-hot-reload-api") hotAPI.install(require("vue"), false) if (!hotAPI.compatible) return module.hot.accept() if (!module.hot.data) { hotAPI.createRecord("data-v-1ea2c299", Component.options) } else { hotAPI.reload("data-v-1ea2c299", Component.options) } module.hot.dispose(function (data) { disposed = true }) })()} module.exports = Component.exports /***/ }), /***/ "./assets/js/Components/Recaptcha/defer.helper.js": /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var defer = function defer() { var state = false; // Resolved or not var callbacks = []; var resolve = function resolve(val) { if (state) { return; } state = true; for (var i = 0, len = callbacks.length; i < len; i++) { callbacks[i](val); } }; var then = function then(cb) { if (!state) { callbacks.push(cb); return; } cb(); }; return { resolved: function resolved() { return state; }, resolve: resolve, promise: { then: then } }; }; exports.default = defer; /***/ }), /***/ "./assets/js/Components/Recaptcha/recaptcha.helper.js": /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createRecaptcha = createRecaptcha; var _defer = __webpack_require__("./assets/js/Components/Recaptcha/defer.helper.js"); var _defer2 = _interopRequireDefault(_defer); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function createRecaptcha() { var deferred = (0, _defer2.default)(); return { notify: function notify() { deferred.resolve(); }, wait: function wait() { return deferred.promise; }, render: function render(ele, options, cb) { this.wait().then(function () { cb(window.grecaptcha.render(ele, options)); }); }, reset: function reset(widgetId) { if (typeof widgetId === "undefined") { return; } this.assertLoaded(); this.wait().then(function () { return window.grecaptcha.reset(widgetId); }); }, execute: function execute(widgetId) { if (typeof widgetId === "undefined") { return; } this.assertLoaded(); this.wait().then(function () { return window.grecaptcha.execute(widgetId); }); }, checkRecaptchaLoad: function checkRecaptchaLoad() { if (window.hasOwnProperty("grecaptcha") && window.grecaptcha.hasOwnProperty("render")) { this.notify(); return true; } return false; }, assertLoaded: function assertLoaded() { if (!deferred.resolved()) { throw new Error("ReCAPTCHA has not been loaded"); } } }; } var recaptchaHelper = createRecaptcha(); if (typeof window !== "undefined" && typeof window.grecaptcha !== "undefined") { window.vueRecaptchaApiLoaded = recaptchaHelper.notify; } exports.default = recaptchaHelper; /***/ }), /***/ "./assets/js/Components/index.js": /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _ContactForm = __webpack_require__("./assets/js/Components/Contact/ContactForm.vue"); var _ContactForm2 = _interopRequireDefault(_ContactForm); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } //Assign Components to variables var components = { "contact-form": _ContactForm2.default }; // Import Components exports.default = components; /***/ }), /***/ "./assets/js/app.js": /***/ (function(module, exports, __webpack_require__) { "use strict"; /* WEBPACK VAR INJECTION */(function(__webpack_provided_window_dot_jQuery) { var _axios = __webpack_require__("./node_modules/axios/index.js"); var _axios2 = _interopRequireDefault(_axios); var _lodash = __webpack_require__("./node_modules/lodash/lodash.js"); var _ = _interopRequireWildcard(_lodash); var _Components = __webpack_require__("./assets/js/Components/index.js"); var _Components2 = _interopRequireDefault(_Components); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } window.Vue = __webpack_require__("./node_modules/vue/dist/vue.common.js"); /** * First we will load all of this project's JavaScript dependencies which * includes Vue and other libraries. It is a great starting point when * building robust, powerful web applications using Vue and Laravel. */ try { window.$ = __webpack_provided_window_dot_jQuery = __webpack_require__("./node_modules/jquery/dist/jquery.js"); __webpack_require__("./node_modules/popper.js/dist/esm/popper.js"); __webpack_require__("./node_modules/bootstrap/dist/js/bootstrap.js"); __webpack_require__("./node_modules/slick-carousel/slick/slick.js"); __webpack_require__("./assets/js/jquery.js"); __webpack_require__("./assets/js/progressive_image.js"); } catch (error) { console.error(error); } var priorityNav = __webpack_require__("./node_modules/priority-nav/dist/priority-nav.js"); _axios2.default.defaults.headers.common["X-Requested-With"] = "XMLHttpRequest"; /** * Next we will register the CSRF Token as a common header with Axios so that * all outgoing HTTP requests automatically have it attached. This is just * a simple convenience so we don't have to attach every token manually. */ var token = document.head.querySelector("meta[name=\"csrf-token\"]"); if (token) { (function () { var send = XMLHttpRequest.prototype.send; XMLHttpRequest.prototype.send = function (data) { this.setRequestHeader("X-CSRF-Token", token.content); return send.apply(this, arguments); }; })(); } else { console.error("CSRF token not found: https://laravel.com/docs/csrf#csrf-x-csrf-token"); } Vue.prototype.$http = _axios2.default.create(); Vue.config.errorHandler = function (err, vm, info) { console.error(err); }; Vue.mixin({ data: function data() { return { errorResponse: {} }; }, methods: { hasError: function hasError(name) { if (this.errorResponse.errors !== undefined) { return _.get(this.errorResponse.errors, name, false); } return false; }, getError: function getError(name) { if (this.hasError(name)) { return _.head(this.hasError(name)); } }, clearError: function clearError(name) { if (this.hasError(name)) { delete this.errorResponse.errors[name]; } } } }); //Vue instance new Vue({ el: "#app", components: _Components2.default }); // Priority Nav var nav = priorityNav.init({ mainNavWrapper: ".nav-wrapper", mainNav: ".nav", navDropdownLabel: ':' }); /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__("./node_modules/jquery/dist/jquery.js"))) /***/ }), /***/ "./assets/js/common.js": /***/ (function(module, exports, __webpack_require__) { "use strict"; /* WEBPACK VAR INJECTION */(function($) { Object.defineProperty(exports, "__esModule", { value: true }); var responsiveText = exports.responsiveText = function responsiveText(selector) { var rtWrappers = document.querySelectorAll(selector); rtWrappers.forEach(function (wrapper) { var width = wrapper.offsetWidth, height = wrapper.offsetHeight, text = wrapper.innerHTML; var textLength = typeof text === "string" ? text.trim().replace(" ", "").length : 0; var bestRatio = height / 1.4; var fontSize = 0; if (textLength > 0) { fontSize = Math.floor(1.6 * width / textLength); } wrapper.style.fontSize = (fontSize > bestRatio ? bestRatio : fontSize) + "px"; wrapper.style.lineHeight = height + "px"; }); }; var scrollToTop = exports.scrollToTop = function scrollToTop(selector) { var scrollShowAfter = 700; //px var button = $(selector); var showScrollButton = function showScrollButton() { var scrollTop = $(window).scrollTop(); if (scrollTop > scrollShowAfter) { button.addClass("show"); } else { button.removeClass("show"); } }; showScrollButton(); $(window).on("scroll", function () { showScrollButton(); }); button.on("click", function (event) { event.preventDefault(); $("html,body").animate({ scrollTop: 0 }, scrollShowAfter); }); }; /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__("./node_modules/jquery/dist/jquery.js"))) /***/ }), /***/ "./assets/js/jquery.js": /***/ (function(module, exports, __webpack_require__) { "use strict"; /* WEBPACK VAR INJECTION */(function($) { var _common = __webpack_require__("./assets/js/common.js"); $(document).ready(function () { /** * Responsive Title */ (0, _common.responsiveText)(".responsive-logo"); /** * Scroll to top button */ (0, _common.scrollToTop)("#back-to-top"); /** * Menu Toggler */ $(".menu-toggler-icon").click(function () { $(".menu-mobile, body").toggleClass("menu-open"); }); /** * Slick Sliders */ $(".hero-slider").slick({ infinite: true, slidesToShow: 1, slidesToScroll: 1, autoplay: true, dots: true }); $(".gallery-main").slick({ slidesToShow: 1, slidesToScroll: 1, fade: true, asNavFor: ".gallery-nav" }); $(".gallery-nav").slick({ slidesToShow: 5, slidesToScroll: 1, asNavFor: ".gallery-main", centerMode: true, focusOnSelect: true, infinite: true }); // Responsive dropdown menu var mainMenuToggle = $('.mobile-nav-item.has-submenu > .mobile-nav-link'); var mainMenuToggleTarget = $('.mobile-nav-item.has-submenu > .mobile-sub-menu'); var subMenuToggle = $('.mobile-nestednav-item.has-submenu > .mobile-sub-nav-link'); var subMenuToggleTarget = $('.mobile-nestednav-item > .mobile-sub-menu'); mainMenuToggle.on('click', function () { event.preventDefault(); $(this).toggleClass('arrow-rotate'); $(this).find('+ .mobile-sub-menu').toggleClass('open'); }); subMenuToggle.on('click', function () { event.preventDefault(); $(this).toggleClass('arrow-rotate'); $(this).find('+ .mobile-sub-menu').toggleClass('open'); }); }); /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__("./node_modules/jquery/dist/jquery.js"))) /***/ }), /***/ "./assets/js/progressive_image.js": /***/ (function(module, exports, __webpack_require__) { "use strict"; var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; if (window.addEventListener && window.requestAnimationFrame && document.getElementsByClassName) window.addEventListener("load", function () { var ImageArray = document.querySelectorAll(".progressive"); ImageArray.forEach(function (image) { var newImage = new Image(); if (_typeof(image.dataset.srcset) !== undefined) { newImage.srcset = image.dataset.srcset; newImage.src = extractUrl(image.dataset.srcset); newImage.onload = function () { image.src = newImage.src; }; } }); }); function extractUrl() { var srcset = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ''; var sources = srcset.split(","), urls = {}; var widths = sources.map(function (source) { var widthUrl = source.trim().split(" "), width = null; if (widthUrl.length === 2) { width = parseInt(widthUrl[1].replace(/[^\d]/g, "")); urls[width] = widthUrl[0]; } return width; }).filter(function (width) { return width; }); var currentWidth = window.innerWidth; widths = widths.sort(function (a, b) { return b - a; }); return urls[widths.reduce(function (best, width) { return width >= currentWidth ? width : best; }, widths[0])]; } /***/ }), /***/ "./assets/sass/app.scss": /***/ (function(module, exports) { // removed by extract-text-webpack-plugin /***/ }), /***/ "./node_modules/babel-loader/lib/index.js?{\"cacheDirectory\":true,\"presets\":[[\"env\",{\"modules\":false,\"targets\":{\"browsers\":[\"> 2%\"],\"uglify\":true}}]],\"plugins\":[\"transform-object-rest-spread\",[\"transform-runtime\",{\"polyfill\":false,\"helpers\":false}]]}!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./assets/js/Components/Contact/ContactForm.vue": /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; // noinspection ES6UnusedImports var _vue = __webpack_require__("./node_modules/vue/dist/vue.common.js"); var _vue2 = _interopRequireDefault(_vue); var _Index = __webpack_require__("./assets/js/Components/Recaptcha/Index.vue"); var _Index2 = _interopRequireDefault(_Index); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } exports.default = { name: "ContactForm", components: { "recaptcha": _Index2.default }, data: function data() { return { full_name: "", email: "", message: "", isLoading: false, isVerifying: false, successNotification: "", errorNotification: "" }; }, computed: { formData: function formData() { return { full_name: this.full_name, email: this.email, message: this.message }; }, successButtonLabel: function successButtonLabel() { return this.isVerifying ? "Verifying..." : this.isLoading ? "Submitting..." : "Submit"; } }, methods: { handleSubmit: function handleSubmit() { if (this.isVerifying || this.isLoading) { return; } _vue2.default.set(this, "isVerifying", true); this.$refs.recaptcha.execute(); }, recaptchaVerified: function recaptchaVerified(reCaptchaToken) { var _this = this; if (this.isLoading) { return; } _vue2.default.set(this, "isVerifying", false); _vue2.default.set(this, "isLoading", true); var formData = _extends({}, this.formData, { reCaptchaToken: reCaptchaToken }); var url = this.$el.action; this.$http.post(url, formData).then(function (response) { _vue2.default.set(_this, "isLoading", false); _vue2.default.set(_this, "successNotification", response.data.message); _this.resetForm(); }).catch(function (error) { _vue2.default.set(_this, "isLoading", false); if (error.hasOwnProperty("response") && error.response.hasOwnProperty("status") && error.response.status === 422) { _this.errorResponse = error.response.data; } else { console.error(error.response); } }); }, resetForm: function resetForm() { _vue2.default.set(this, "full_name", ""); _vue2.default.set(this, "email", ""); _vue2.default.set(this, "message", ""); } } }; /***/ }), /***/ "./node_modules/babel-loader/lib/index.js?{\"cacheDirectory\":true,\"presets\":[[\"env\",{\"modules\":false,\"targets\":{\"browsers\":[\"> 2%\"],\"uglify\":true}}]],\"plugins\":[\"transform-object-rest-spread\",[\"transform-runtime\",{\"polyfill\":false,\"helpers\":false}]]}!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./assets/js/Components/Recaptcha/Index.vue": /***/ (function(module, exports, __webpack_require__) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _recaptcha = __webpack_require__("./assets/js/Components/Recaptcha/recaptcha.helper.js"); var _recaptcha2 = _interopRequireDefault(_recaptcha); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } exports.default = { name: "Recaptcha", props: { siteKey: { type: String, required: true } }, data: function data() { return { widgetId: 0 }; }, mounted: function mounted() { this.init(); }, methods: { init: function init() { var _this = this; setTimeout(function () { var isLoaded = _recaptcha2.default.checkRecaptchaLoad(); if (!isLoaded) { _this.init(); return; } _recaptcha2.default.render("recaptcha", { sitekey: _this.siteKey, size: "invisible", badge: "inline", callback: _this.emitVerify, "expired-callback": _this.emitExpired }, function (id) { _this.widgetId = id; _this.$emit("render", id); }); }, 500); }, emitVerify: function emitVerify(response) { this.$emit("verify", response); this.reset(); }, emitExpired: function emitExpired() { this.$emit("expired"); }, reset: function reset() { _recaptcha2.default.reset(this.widgetId); }, execute: function execute() { _recaptcha2.default.execute(this.widgetId); } } }; // // // // /***/ }), /***/ "./node_modules/css-loader/index.js?sourceMap!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-1ea2c299\",\"scoped\":true,\"hasInlineConfig\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./assets/js/Components/Recaptcha/Index.vue": /***/ (function(module, exports, __webpack_require__) { exports = module.exports = __webpack_require__("./node_modules/css-loader/lib/css-base.js")(true); // imports // module exports.push([module.i, "\n.recaptcha[data-v-1ea2c299] {\n display: none !important;\n}\n", "", {"version":3,"sources":["/Users/dhondup/htdocs/ngodistro/themes/Emerald/assets/js/Components/Recaptcha/assets/js/Components/Recaptcha/Index.vue"],"names":[],"mappings":";AAiEA;IACA,yBAAA;CACA","file":"Index.vue","sourcesContent":["\n\n\n\n\n"],"sourceRoot":""}]); // exports /***/ }), /***/ "./node_modules/css-loader/index.js?sourceMap!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-43a2b584\",\"scoped\":true,\"hasInlineConfig\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./assets/js/Components/Contact/ContactForm.vue": /***/ (function(module, exports, __webpack_require__) { exports = module.exports = __webpack_require__("./node_modules/css-loader/lib/css-base.js")(true); // imports // module exports.push([module.i, "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n", "", {"version":3,"sources":[],"names":[],"mappings":"","file":"ContactForm.vue","sourceRoot":""}]); // exports /***/ }), /***/ "./node_modules/css-loader/lib/css-base.js": /***/ (function(module, exports) { /* MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ // css base code, injected by the css-loader module.exports = function(useSourceMap) { var list = []; // return the list of modules as css string list.toString = function toString() { return this.map(function (item) { var content = cssWithMappingToString(item, useSourceMap); if(item[2]) { return "@media " + item[2] + "{" + content + "}"; } else { return content; } }).join(""); }; // import a list of modules into the list list.i = function(modules, mediaQuery) { if(typeof modules === "string") modules = [[null, modules, ""]]; var alreadyImportedModules = {}; for(var i = 0; i < this.length; i++) { var id = this[i][0]; if(typeof id === "number") alreadyImportedModules[id] = true; } for(i = 0; i < modules.length; i++) { var item = modules[i]; // skip already imported module // this implementation is not 100% perfect for weird media query combinations // when a module is imported multiple times with different media queries. // I hope this will never occur (Hey this way we have smaller bundles) if(typeof item[0] !== "number" || !alreadyImportedModules[item[0]]) { if(mediaQuery && !item[2]) { item[2] = mediaQuery; } else if(mediaQuery) { item[2] = "(" + item[2] + ") and (" + mediaQuery + ")"; } list.push(item); } } }; return list; }; function cssWithMappingToString(item, useSourceMap) { var content = item[1] || ''; var cssMapping = item[3]; if (!cssMapping) { return content; } if (useSourceMap && typeof btoa === 'function') { var sourceMapping = toComment(cssMapping); var sourceURLs = cssMapping.sources.map(function (source) { return '/*# sourceURL=' + cssMapping.sourceRoot + source + ' */' }); return [content].concat(sourceURLs).concat([sourceMapping]).join('\n'); } return [content].join('\n'); } // Adapted from convert-source-map (MIT) function toComment(sourceMap) { // eslint-disable-next-line no-undef var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))); var data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,' + base64; return '/*# ' + data + ' */'; } /***/ }), /***/ "./node_modules/priority-nav/dist/priority-nav.js": /***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/* * priority-nav - v1.0.13 | (c) 2018 @gijsroge | MIT license * Repository: https://github.com/gijsroge/priority-navigation.git * Description: Priority+ pattern navigation that hides menu items if they don't fit on screen. * Demo: http://gijsroge.github.io/priority-nav.js/ */ (function (root, factory) { if (true) { !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory(root)), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); } else if (typeof exports === "object") { module.exports = factory(root); } else { root.priorityNav = factory(root); } })(window || this, function (root) { "use strict"; /** * Variables */ var priorityNav = {}; // Object for public APIs var breaks = []; // Object to store instances with breakpoints where the instances menu item"s didin"t fit. var supports = !!document.querySelector && !!root.addEventListener; // Feature test var settings = {}; var instance = 0; var count = 0; var mainNavWrapper, totalWidth, restWidth, mainNav, navDropdown, navDropdownToggle, dropDownWidth, toggleWrapper; var viewportWidth = 0; /** * Default settings * @type {{initClass: string, navDropdown: string, navDropdownToggle: string, mainNavWrapper: string, moved: Function, movedBack: Function}} */ var defaults = { initClass: "js-priorityNav", // Class that will be printed on html element to allow conditional css styling. mainNavWrapper: "nav", // mainnav wrapper selector (must be direct parent from mainNav) mainNav: "ul", // mainnav selector. (must be inline-block) navDropdownClassName: "nav__dropdown", // class used for the dropdown. navDropdownToggleClassName: "nav__dropdown-toggle", // class used for the dropdown toggle. navDropdownLabel: "more", // Text that is used for the dropdown toggle. navDropdownBreakpointLabel: "menu", //button label for navDropdownToggle when the breakPoint is reached. breakPoint: 500, //amount of pixels when all menu items should be moved to dropdown to simulate a mobile menu throttleDelay: 50, // this will throttle the calculating logic on resize because i'm a responsible dev. offsetPixels: 0, // increase to decrease the time it takes to move an item. count: true, // prints the amount of items are moved to the attribute data-count to style with css counter. //Callbacks moved: function () { }, movedBack: function () { } }; /** * A simple forEach() implementation for Arrays, Objects and NodeLists * @private * @param {Array|Object|NodeList} collection Collection of items to iterate * @param {Function} callback Callback function for each iteration * @param {Array|Object|NodeList} scope Object/NodeList/Array that forEach is iterating over (aka `this`) */ var forEach = function (collection, callback, scope) { if (Object.prototype.toString.call(collection) === "[object Object]") { for (var prop in collection) { if (Object.prototype.hasOwnProperty.call(collection, prop)) { callback.call(scope, collection[prop], prop, collection); } } } else { for (var i = 0, len = collection.length; i < len; i++) { callback.call(scope, collection[i], i, collection); } } }; /** * Get the closest matching element up the DOM tree * @param {Element} elem Starting element * @param {String} selector Selector to match against (class, ID, or data attribute) * @return {Boolean|Element} Returns false if not match found */ var getClosest = function (elem, selector) { var firstChar = selector.charAt(0); for (; elem && elem !== document; elem = elem.parentNode) { if (firstChar === ".") { if (elem.classList.contains(selector.substr(1))) { return elem; } } else if (firstChar === "#") { if (elem.id === selector.substr(1)) { return elem; } } else if (firstChar === "[") { if (elem.hasAttribute(selector.substr(1, selector.length - 2))) { return elem; } } } return false; }; /** * Merge defaults with user options * @private * @param {Object} defaults Default settings * @param {Object} options User options * @returns {Object} Merged values of defaults and options */ var extend = function (defaults, options) { var extended = {}; forEach(defaults, function (value, prop) { extended[prop] = defaults[prop]; }); forEach(options, function (value, prop) { extended[prop] = options[prop]; }); return extended; }; /** * Debounced resize to throttle execution * @param func * @param wait * @param immediate * @returns {Function} */ function debounce(func, wait, immediate) { var timeout; return function () { var context = this, args = arguments; var later = function () { timeout = null; if (!immediate) func.apply(context, args); }; var callNow = immediate && !timeout; clearTimeout(timeout); timeout = setTimeout(later, wait); if (callNow) func.apply(context, args); }; } /** * Toggle class on element * @param el * @param className */ var toggleClass = function (el, className) { if (el.classList) { el.classList.toggle(className); } else { var classes = el.className.split(" "); var existingIndex = classes.indexOf(className); if (existingIndex >= 0) classes.splice(existingIndex, 1); else classes.push(className); el.className = classes.join(" "); } }; /** * Check if dropdown menu is already on page before creating it * @param mainNavWrapper */ var prepareHtml = function (_this, settings) { /** * Create dropdow menu * @type {HTMLElement} */ toggleWrapper = document.createElement("span"); navDropdown = document.createElement("ul"); navDropdownToggle = document.createElement("button"); /** * Set label for dropdown toggle * @type {string} */ navDropdownToggle.innerHTML = settings.navDropdownLabel; /** * Set aria attributes for accessibility */ navDropdownToggle.setAttribute("aria-controls", "menu"); navDropdownToggle.setAttribute("type", "button"); navDropdown.setAttribute("aria-hidden", "true"); /** * Move elements to the right spot */ if(_this.querySelector(mainNav).parentNode !== _this){ console.warn("mainNav is not a direct child of mainNavWrapper, double check please"); return; } _this.insertAfter(toggleWrapper, _this.querySelector(mainNav)); toggleWrapper.appendChild(navDropdownToggle); toggleWrapper.appendChild(navDropdown); /** * Add classes so we can target elements */ navDropdown.classList.add(settings.navDropdownClassName); navDropdown.classList.add("priority-nav__dropdown"); navDropdownToggle.classList.add(settings.navDropdownToggleClassName); navDropdownToggle.classList.add("priority-nav__dropdown-toggle"); //fix so button is type="button" and do not submit forms navDropdownToggle.setAttribute("type", "button"); toggleWrapper.classList.add(settings.navDropdownClassName+"-wrapper"); toggleWrapper.classList.add("priority-nav__wrapper"); _this.classList.add("priority-nav"); }; /** * Get innerwidth without padding * @param element * @returns {number} */ var getElementContentWidth = function(element) { var styles = window.getComputedStyle(element); var padding = parseFloat(styles.paddingLeft) + parseFloat(styles.paddingRight); return element.clientWidth - padding; }; /** * Get viewport size * @returns {{width: number, height: number}} */ var viewportSize = function() { var doc = document, w = window; var docEl = (doc.compatMode && doc.compatMode === "CSS1Compat")? doc.documentElement: doc.body; var width = docEl.clientWidth; var height = docEl.clientHeight; // mobile zoomed in? if ( w.innerWidth && width > w.innerWidth ) { width = w.innerWidth; height = w.innerHeight; } return {width: width, height: height}; }; /** * Get width * @param elem * @returns {number} */ var calculateWidths = function (_this) { totalWidth = getElementContentWidth(_this); //Check if parent is the navwrapper before calculating its width if (_this.querySelector(navDropdown).parentNode === _this) { dropDownWidth = _this.querySelector(navDropdown).offsetWidth; } else { dropDownWidth = 0; } restWidth = getChildrenWidth(_this) + settings.offsetPixels; viewportWidth = viewportSize().width; }; /** * Move item to array * @param item */ priorityNav.doesItFit = function (_this) { /** * Check if it is the first run */ var delay = _this.getAttribute("instance") === 0 ? delay : settings.throttleDelay; /** * Increase instance */ instance++; /** * Debounced execution of the main logic */ (debounce(function () { /** * Get the current element"s instance * @type {string} */ var identifier = _this.getAttribute("instance"); /** * Update width */ calculateWidths(_this); /** * Keep executing until all menu items that are overflowing are moved */ while (totalWidth <= restWidth && _this.querySelector(mainNav).children.length > 0 || viewportWidth < settings.breakPoint && _this.querySelector(mainNav).children.length > 0) { //move item to dropdown priorityNav.toDropdown(_this, identifier); //recalculate widths calculateWidths(_this, identifier); //update dropdownToggle label if(viewportWidth < settings.breakPoint) updateLabel(_this, identifier, settings.navDropdownBreakpointLabel); } /** * Keep executing until all menu items that are able to move back are moved */ while (totalWidth >= breaks[identifier][breaks[identifier].length - 1] && viewportWidth > settings.breakPoint) { //move item to menu priorityNav.toMenu(_this, identifier); //update dropdownToggle label if(viewportWidth > settings.breakPoint) updateLabel(_this, identifier, settings.navDropdownLabel); } /** * If there are no items in dropdown hide dropdown */ if (breaks[identifier].length < 1) { _this.querySelector(navDropdown).classList.remove("show"); //show navDropdownLabel updateLabel(_this, identifier, settings.navDropdownLabel); } /** * If there are no items in menu */ if (_this.querySelector(mainNav).children.length < 1) { //show navDropdownBreakpointLabel _this.classList.add("is-empty"); updateLabel(_this, identifier, settings.navDropdownBreakpointLabel); }else{ _this.classList.remove("is-empty"); } /** * Check if we need to show toggle menu button */ showToggle(_this, identifier); }, delay ))(); }; /** * Show/hide toggle button */ var showToggle = function (_this, identifier) { if (breaks[identifier].length < 1) { _this.querySelector(navDropdownToggle).classList.add("priority-nav-is-hidden"); _this.querySelector(navDropdownToggle).classList.remove("priority-nav-is-visible"); _this.classList.remove("priority-nav-has-dropdown"); /** * Set aria attributes for accessibility */ _this.querySelector(".priority-nav__wrapper").setAttribute("aria-haspopup", "false"); } else { _this.querySelector(navDropdownToggle).classList.add("priority-nav-is-visible"); _this.querySelector(navDropdownToggle).classList.remove("priority-nav-is-hidden"); _this.classList.add("priority-nav-has-dropdown"); /** * Set aria attributes for accessibility */ _this.querySelector(".priority-nav__wrapper").setAttribute("aria-haspopup", "true"); } }; /** * Update count on dropdown toggle button */ var updateCount = function (_this, identifier) { _this.querySelector(navDropdownToggle).setAttribute("priorityNav-count", breaks[identifier].length); }; var updateLabel = function(_this, identifier, label){ _this.querySelector(navDropdownToggle).innerHTML = label; }; /** * Move item to dropdown */ priorityNav.toDropdown = function (_this, identifier) { /** * move last child of navigation menu to dropdown */ if (_this.querySelector(navDropdown).firstChild && _this.querySelector(mainNav).children.length > 0) { _this.querySelector(navDropdown).insertBefore(_this.querySelector(mainNav).lastElementChild, _this.querySelector(navDropdown).firstChild); } else if (_this.querySelector(mainNav).children.length > 0) { _this.querySelector(navDropdown).appendChild(_this.querySelector(mainNav).lastElementChild); } /** * store breakpoints */ breaks[identifier].push(restWidth); /** * check if we need to show toggle menu button */ showToggle(_this, identifier); /** * update count on dropdown toggle button */ if (_this.querySelector(mainNav).children.length > 0 && settings.count) { updateCount(_this, identifier); } /** * If item has been moved to dropdown trigger the callback */ settings.moved(); }; /** * Move item to menu */ priorityNav.toMenu = function (_this, identifier) { /** * move last child of navigation menu to dropdown */ if (_this.querySelector(navDropdown).children.length > 0) _this.querySelector(mainNav).appendChild(_this.querySelector(navDropdown).firstElementChild); /** * remove last breakpoint */ breaks[identifier].pop(); /** * Check if we need to show toggle menu button */ showToggle(_this, identifier); /** * update count on dropdown toggle button */ if (_this.querySelector(mainNav).children.length > 0 && settings.count) { updateCount(_this, identifier); } /** * If item has been moved back to the main menu trigger the callback */ settings.movedBack(); }; /** * Count width of children and return the value * @param e */ var getChildrenWidth = function (e) { var children = e.childNodes; var sum = 0; for (var i = 0; i < children.length; i++) { if (children[i].nodeType !== 3) { if(!isNaN(children[i].offsetWidth)){ sum += children[i].offsetWidth; } } } return sum; }; /** * Bind eventlisteners */ var listeners = function (_this, settings) { // Check if an item needs to move if(window.attachEvent) { window.attachEvent("onresize", function() { if(priorityNav.doesItFit)priorityNav.doesItFit(_this); }); } else if(window.addEventListener) { window.addEventListener("resize", function() { if(priorityNav.doesItFit)priorityNav.doesItFit(_this); }, true); } // Toggle dropdown _this.querySelector(navDropdownToggle).addEventListener("click", function () { toggleClass(_this.querySelector(navDropdown), "show"); toggleClass(this, "is-open"); toggleClass(_this, "is-open"); /** * Toggle aria hidden for accessibility */ if(-1 !== _this.className.indexOf( "is-open" )){ _this.querySelector(navDropdown).setAttribute("aria-hidden", "false"); }else{ _this.querySelector(navDropdown).setAttribute("aria-hidden", "true"); _this.querySelector(navDropdown).blur(); } }); /* * Remove when clicked outside dropdown */ document.addEventListener("click", function (event) { if (!getClosest(event.target, "."+settings.navDropdownClassName) && event.target !== _this.querySelector(navDropdownToggle)) { _this.querySelector(navDropdown).classList.remove("show"); _this.querySelector(navDropdownToggle).classList.remove("is-open"); _this.classList.remove("is-open"); } }); /** * Remove when escape key is pressed */ document.onkeydown = function (evt) { evt = evt || window.event; if (evt.keyCode === 27) { document.querySelector(navDropdown).classList.remove("show"); document.querySelector(navDropdownToggle).classList.remove("is-open"); mainNavWrapper.classList.remove("is-open"); } }; }; /** * Remove function */ Element.prototype.remove = function() { this.parentElement.removeChild(this); }; /*global HTMLCollection */ NodeList.prototype.remove = HTMLCollection.prototype.remove = function() { for(var i = 0, len = this.length; i < len; i++) { if(this[i] && this[i].parentElement) { this[i].parentElement.removeChild(this[i]); } } }; /** * Destroy the current initialization. * @public */ priorityNav.destroy = function () { // If plugin isn"t already initialized, stop if (!settings) return; // Remove feedback class document.documentElement.classList.remove(settings.initClass); // Remove toggle toggleWrapper.remove(); // Remove settings settings = null; delete priorityNav.init; delete priorityNav.doesItFit; }; /** * insertAfter function * @param n * @param r */ if (supports && typeof Node !== "undefined"){ Node.prototype.insertAfter = function(n,r) {this.insertBefore(n,r.nextSibling);}; } var checkForSymbols = function(string){ var firstChar = string.charAt(0); if (firstChar === "." || firstChar === "#") { return false; }else{ return true; } }; /** * Initialize Plugin * @public * @param {Object} options User settings */ priorityNav.init = function (options) { /** * Merge user options with defaults * @type {Object} */ settings = extend(defaults, options || {}); // Feature test. if (!supports && typeof Node === "undefined"){ console.warn("This browser doesn't support priorityNav"); return; } // Options check if (!checkForSymbols(settings.navDropdownClassName) || !checkForSymbols(settings.navDropdownToggleClassName)){ console.warn("No symbols allowed in navDropdownClassName & navDropdownToggleClassName. These are not selectors."); return; } /** * Store nodes * @type {NodeList} */ var elements = document.querySelectorAll(settings.mainNavWrapper); /** * Loop over every instance and reference _this */ forEach(elements, function(_this){ /** * Create breaks array * @type {number} */ breaks[count] = []; /** * Set the instance number as data attribute */ _this.setAttribute("instance", count++); /** * Store the wrapper element */ mainNavWrapper = _this; if (!mainNavWrapper) { console.warn("couldn't find the specified mainNavWrapper element"); return; } /** * Store the menu elementStore the menu element */ mainNav = settings.mainNav; if (!_this.querySelector(mainNav)) { console.warn("couldn't find the specified mainNav element"); return; } /** * Check if we need to create the dropdown elements */ prepareHtml(_this, settings); /** * Store the dropdown element */ navDropdown = "."+settings.navDropdownClassName; if (!_this.querySelector(navDropdown)) { console.warn("couldn't find the specified navDropdown element"); return; } /** * Store the dropdown toggle element */ navDropdownToggle = "."+settings.navDropdownToggleClassName; if (!_this.querySelector(navDropdownToggle)) { console.warn("couldn't find the specified navDropdownToggle element"); return; } /** * Event listeners */ listeners(_this, settings); /** * Start first check */ priorityNav.doesItFit(_this); }); /** * Count amount of instances */ instance++; /** * Add class to HTML element to activate conditional CSS */ document.documentElement.classList.add(settings.initClass); }; /** * Public APIs */ return priorityNav; }); /***/ }), /***/ "./node_modules/vue-loader/lib/component-normalizer.js": /***/ (function(module, exports) { /* globals __VUE_SSR_CONTEXT__ */ // IMPORTANT: Do NOT use ES2015 features in this file. // This module is a runtime utility for cleaner component module output and will // be included in the final webpack user bundle. module.exports = function normalizeComponent ( rawScriptExports, compiledTemplate, functionalTemplate, injectStyles, scopeId, moduleIdentifier /* server only */ ) { var esModule var scriptExports = rawScriptExports = rawScriptExports || {} // ES6 modules interop var type = typeof rawScriptExports.default if (type === 'object' || type === 'function') { esModule = rawScriptExports scriptExports = rawScriptExports.default } // Vue.extend constructor export interop var options = typeof scriptExports === 'function' ? scriptExports.options : scriptExports // render functions if (compiledTemplate) { options.render = compiledTemplate.render options.staticRenderFns = compiledTemplate.staticRenderFns options._compiled = true } // functional template if (functionalTemplate) { options.functional = true } // scopedId if (scopeId) { options._scopeId = scopeId } var hook if (moduleIdentifier) { // server build hook = function (context) { // 2.3 injection context = context || // cached call (this.$vnode && this.$vnode.ssrContext) || // stateful (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional // 2.2 with runInNewContext: true if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') { context = __VUE_SSR_CONTEXT__ } // inject component styles if (injectStyles) { injectStyles.call(this, context) } // register component module identifier for async chunk inferrence if (context && context._registeredComponents) { context._registeredComponents.add(moduleIdentifier) } } // used by ssr in case component is cached and beforeCreate // never gets called options._ssrRegister = hook } else if (injectStyles) { hook = injectStyles } if (hook) { var functional = options.functional var existing = functional ? options.render : options.beforeCreate if (!functional) { // inject component registration as beforeCreate hook options.beforeCreate = existing ? [].concat(existing, hook) : [hook] } else { // for template-only hot-reload because in that case the render fn doesn't // go through the normalizer options._injectStyles = hook // register for functioal component in vue file options.render = function renderWithStyleInjection (h, context) { hook.call(context) return existing(h, context) } } } return { esModule: esModule, exports: scriptExports, options: options } } /***/ }), /***/ "./node_modules/vue-loader/lib/template-compiler/index.js?{\"id\":\"data-v-1ea2c299\",\"hasScoped\":true,\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./assets/js/Components/Recaptcha/Index.vue": /***/ (function(module, exports, __webpack_require__) { var render = function() { var _vm = this var _h = _vm.$createElement var _c = _vm._self._c || _h return _c("div", { staticClass: "recaptcha", attrs: { id: "recaptcha" } }) } var staticRenderFns = [] render._withStripped = true module.exports = { render: render, staticRenderFns: staticRenderFns } if (false) { module.hot.accept() if (module.hot.data) { require("vue-hot-reload-api") .rerender("data-v-1ea2c299", module.exports) } } /***/ }), /***/ "./node_modules/vue-style-loader/index.js!./node_modules/css-loader/index.js?sourceMap!./node_modules/vue-loader/lib/style-compiler/index.js?{\"vue\":true,\"id\":\"data-v-1ea2c299\",\"scoped\":true,\"hasInlineConfig\":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./assets/js/Components/Recaptcha/Index.vue": /***/ (function(module, exports, __webpack_require__) { // style-loader: Adds some css to the DOM by adding a