\n\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.loaded)?_c('div',{staticClass:\"site\"},[_c('WizardHeader',{attrs:{\"brand\":_vm.brand}}),_vm._v(\" \"),_c('div',{staticClass:\"main\"},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-12\"},[(_vm.wizard.currentStep === 0)?_c('IntroPage',{attrs:{\"brand\":_vm.brand,\"lang\":_vm.getLanguageCode(),\"serviceUrl\":_vm.serviceUrl},on:{\"start\":function($event){return _vm.startWizard()}}}):(_vm.wizard.currentStep === 1)?[_c('WizardTitle',{attrs:{\"brand\":_vm.brand,\"step\":_vm.wizard.currentStep}}),_vm._v(\" \"),_c('WizardSteps',{attrs:{\"firstStep\":true}}),_vm._v(\" \"),_c('StepDevices',{ref:\"stepDevices\",attrs:{\"userData\":_vm.userData,\"brand\":_vm.brand,\"deviceDescriptionInvalid\":_vm.deviceDescriptionInvalid,\"devicePurchaseDateInvalid\":_vm.devicePurchaseDateInvalid,\"v\":_vm.$v}}),_vm._v(\" \"),_c('StepAddDevices',{attrs:{\"userData\":_vm.userData,\"brand\":_vm.brand,\"show-add-device\":_vm.wizard.showAddDevice,\"v\":_vm.$v},on:{\"hideAddDevice\":_vm.hideAddDeviceButton}})]:(_vm.wizard.currentStep === 2)?[_c('WizardTitle',{attrs:{\"brand\":_vm.brand,\"step\":_vm.wizard.currentStep}}),_vm._v(\" \"),_c('WizardSteps',{attrs:{\"firstStep\":false}}),_vm._v(\" \"),(_vm.country.toLowerCase() === 'nl')?_c('StepPersonalInfoNL',{attrs:{\"userData\":_vm.userData,\"brand\":_vm.brand,\"v\":_vm.$v,\"serviceUrl\":_vm.serviceUrl}}):_vm._e(),_vm._v(\" \"),(_vm.country.toLowerCase() === 'be')?_c('StepPersonalInfoBE',{attrs:{\"userData\":_vm.userData,\"brand\":_vm.brand,\"v\":_vm.$v,\"serviceUrl\":_vm.serviceUrl}}):_vm._e()]:(_vm.wizard.currentStep === 3)?[_c('WizardTitle',{attrs:{\"brand\":_vm.brand,\"step\":_vm.wizard.currentStep}}),_vm._v(\" \"),_c('StepConfirm',{attrs:{\"userData\":_vm.userData,\"wizard\":_vm.wizard,\"brand\":_vm.brand,\"v\":_vm.$v,\"lang\":_vm.getLanguageCode()},on:{\"editDevices\":function($event){return _vm.goToStep(1, false)},\"editPersonalData\":function($event){return _vm.goToStep(2, false)}}})]:(_vm.wizard.currentStep === 4)?_c('ResultPage',{attrs:{\"brand\":_vm.brand,\"lang\":_vm.getLanguageCode(),\"serviceUrl\":_vm.serviceUrl}}):[_c('WizardTitle',{attrs:{\"title\":_vm.$tr('oeps'),\"subtitle\":_vm.$tr('gingietsmis'),\"brand\":_vm.brand,\"step\":_vm.wizard.currentStep}})]],2)])])]),_vm._v(\" \"),(_vm.wizard.currentStep !== 0)?[(_vm.wizard.currentStep === 1)?[(_vm.userData.articlelist.length > 0)?_c('WizardButtonsWrapper',{attrs:{\"alignbuttons\":\"justify-content-between\"}},[(!_vm.wizard.showAddDevice)?_c('button',{staticClass:\"btn btn-outline-primary\",on:{\"click\":_vm.deleteArticle}},[_c('i',{staticClass:\"fal fa-arrow-left\"}),_vm._v(\" \"),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.$tr('selecteerapparaat'))}})]):_vm._e(),_vm._v(\" \"),(_vm.deviceDescriptionInvalid || _vm.devicePurchaseDateInvalid || _vm.$v.userData.articlelist.$error)?_c('button',{staticClass:\"btn btn-danger\",attrs:{\"disabled\":\"\"}},[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.$tr('ongeldigeinvoervelden'))}}),_vm._v(\" \"),_c('i',{staticClass:\"fal fa-times\"})]):_c('button',{staticClass:\"btn btn-next\",on:{\"click\":function($event){return _vm.goToStep(2, true)}}},[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.$tr('naarstap'))}}),_c('span',[_vm._v(\" 2\")]),_vm._v(\" \"),_c('i',{staticClass:\"fal fa-arrow-right\"})])]):_vm._e()]:(_vm.wizard.currentStep === 2)?_c('WizardButtonsWrapper',{attrs:{\"alignbuttons\":\"justify-content-between\"}},[_c('button',{staticClass:\"btn btn-outline-primary\",on:{\"click\":function($event){return _vm.goToStep(1, false)}}},[_c('i',{staticClass:\"fal fa-arrow-left\"}),_vm._v(\" \"),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.$tr('pasapparaatgegevensaan'))}})]),_vm._v(\" \"),(_vm.$v.$error)?_c('button',{staticClass:\"btn btn-danger\",attrs:{\"disabled\":\"\"}},[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.$tr('fouten'))}}),_vm._v(\" \"),_c('i',{staticClass:\"fal fa-times\"})]):_c('button',{staticClass:\"btn btn-next\",on:{\"click\":function($event){return _vm.goToStep(3, true)}}},[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.$tr('naarstap'))}}),_c('span',[_vm._v(\" 3\")]),_vm._v(\" \"),_c('i',{staticClass:\"fal fa-arrow-right\"})])]):(_vm.wizard.currentStep === 3)?_c('WizardButtonsWrapper',{attrs:{\"alignbuttons\":\"justify-content-between\"}},[_c('button',{staticClass:\"btn btn-outline-primary\",on:{\"click\":function($event){return _vm.goToStep(2, false)}}},[_c('i',{staticClass:\"fal fa-arrow-left\"}),_vm._v(\" \"),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.$tr('aanpassenpersoonlijkegegevens'))}})]),_vm._v(\" \"),(_vm.wizard.validationTerms && (!_vm.userData.terms || !_vm.userData.termsInstaller))?_c('button',{staticClass:\"btn btn-danger\",attrs:{\"disabled\":\"\"}},[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.$tr('accepteervoorwaarden'))}}),_vm._v(\" \"),_c('i',{staticClass:\"fal fa-times\"})]):_c('button',{staticClass:\"btn btn-next\",on:{\"click\":function($event){return _vm.sendForm()}}},[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.$tr('verzenden'))}}),_c('span'),_vm._v(\" \"),_c('i',{staticClass:\"fal fa-arrow-right\"})]),_vm._v(\" \"),(_vm.loading)?_c('div',{staticClass:\"c-wizard__btns--loader\"},[_c('span',{staticClass:\"c-wizard__btns--loader--spinner\"},[_c('i',{staticClass:\"fal fa-spinner-third\"})]),_vm._v(\" \"),_c('span',{staticClass:\"c-wizard__btns--loader--txt\",domProps:{\"innerHTML\":_vm._s(_vm.$tr('aanvraagverstuurd.'))}})]):_vm._e()]):(_vm.wizard.currentStep === 4)?void 0:_c('WizardButtonsWrapper',{attrs:{\"alignbuttons\":\"justify-content-center\"}},[_c('button',{staticClass:\"btn btn-outline-primary\",on:{\"click\":function($event){return _vm.goToStep(1, false)}}},[_c('i',{staticClass:\"fal fa-arrow-left\"}),_vm._v(\" \"),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.$tr('beginovernieuw'))}})])])]:_vm._e(),_vm._v(\" \"),_c('WizardFooter',{attrs:{\"brand\":_vm.brand,\"lang\":_vm.getLanguageCode(),\"serviceUrl\":_vm.serviceUrl}})],2):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","function _typeof(obj) {\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\n/* vuex-i18n-store defines a vuex module to store locale translations. Make sure\n** to also include the file vuex-i18n.js to enable easy access to localized\n** strings in your vue components.\n*/\n// define a simple vuex module to handle locale translations\nvar i18nVuexModule = {\n namespaced: true,\n state: {\n locale: null,\n fallback: null,\n translations: {}\n },\n mutations: {\n // set the current locale\n SET_LOCALE: function SET_LOCALE(state, payload) {\n state.locale = payload.locale;\n },\n // add a new locale\n ADD_LOCALE: function ADD_LOCALE(state, payload) {\n // reduce the given translations to a single-depth tree\n var translations = flattenTranslations(payload.translations);\n\n if (state.translations.hasOwnProperty(payload.locale)) {\n // get the existing translations\n var existingTranslations = state.translations[payload.locale]; // merge the translations\n\n state.translations[payload.locale] = Object.assign({}, existingTranslations, translations);\n } else {\n // just set the locale if it does not yet exist\n state.translations[payload.locale] = translations;\n } // make sure to notify vue of changes (this might break with new vue versions)\n\n\n try {\n if (state.translations.__ob__) {\n state.translations.__ob__.dep.notify();\n }\n } catch (ex) {}\n },\n // replace existing locale information with new translations\n REPLACE_LOCALE: function REPLACE_LOCALE(state, payload) {\n // reduce the given translations to a single-depth tree\n var translations = flattenTranslations(payload.translations); // replace the translations entirely\n\n state.translations[payload.locale] = translations; // make sure to notify vue of changes (this might break with new vue versions)\n\n try {\n if (state.translations.__ob__) {\n state.translations.__ob__.dep.notify();\n }\n } catch (ex) {}\n },\n // remove a locale from the store\n REMOVE_LOCALE: function REMOVE_LOCALE(state, payload) {\n // check if the given locale is present in the state\n if (state.translations.hasOwnProperty(payload.locale)) {\n // check if the current locale is the given locale to remvoe\n if (state.locale === payload.locale) {\n // reset the current locale\n state.locale = null;\n } // create a copy of the translations object\n\n\n var translationCopy = Object.assign({}, state.translations); // remove the given locale\n\n delete translationCopy[payload.locale]; // set the state to the new object\n\n state.translations = translationCopy;\n }\n },\n SET_FALLBACK_LOCALE: function SET_FALLBACK_LOCALE(state, payload) {\n state.fallback = payload.locale;\n }\n },\n actions: {\n // set the current locale\n setLocale: function setLocale(context, payload) {\n context.commit({\n type: 'SET_LOCALE',\n locale: payload.locale\n });\n },\n // add or extend a locale with translations\n addLocale: function addLocale(context, payload) {\n context.commit({\n type: 'ADD_LOCALE',\n locale: payload.locale,\n translations: payload.translations\n });\n },\n // replace locale information\n replaceLocale: function replaceLocale(context, payload) {\n context.commit({\n type: 'REPLACE_LOCALE',\n locale: payload.locale,\n translations: payload.translations\n });\n },\n // remove the given locale translations\n removeLocale: function removeLocale(context, payload) {\n context.commit({\n type: 'REMOVE_LOCALE',\n locale: payload.locale,\n translations: payload.translations\n });\n },\n setFallbackLocale: function setFallbackLocale(context, payload) {\n context.commit({\n type: 'SET_FALLBACK_LOCALE',\n locale: payload.locale\n });\n }\n }\n}; // flattenTranslations will convert object trees for translations into a\n// single-depth object tree\n\nvar flattenTranslations = function flattenTranslations(translations) {\n var toReturn = {};\n\n for (var i in translations) {\n // check if the property is present\n if (!translations.hasOwnProperty(i)) {\n continue;\n } // get the type of the property\n\n\n var objType = _typeof(translations[i]); // allow unflattened array of strings\n\n\n if (isArray(translations[i])) {\n var count = translations[i].length;\n\n for (var index = 0; index < count; index++) {\n var itemType = _typeof(translations[i][index]);\n\n if (itemType !== 'string') {\n console.warn('i18n:', 'currently only arrays of strings are fully supported', translations[i]);\n break;\n }\n }\n\n toReturn[i] = translations[i];\n } else if (objType == 'object' && objType !== null) {\n var flatObject = flattenTranslations(translations[i]);\n\n for (var x in flatObject) {\n if (!flatObject.hasOwnProperty(x)) continue;\n toReturn[i + '.' + x] = flatObject[x];\n }\n } else {\n toReturn[i] = translations[i];\n }\n }\n\n return toReturn;\n}; // check if the given object is an array\n\n\nfunction isArray(obj) {\n return !!obj && Array === obj.constructor;\n}\n\nvar plurals = {\n getTranslationIndex: function getTranslationIndex(languageCode, n) {\n switch (languageCode) {\n case 'ay': // Aymará\n\n case 'bo': // Tibetan\n\n case 'cgg': // Chiga\n\n case 'dz': // Dzongkha\n\n case 'fa': // Persian\n\n case 'id': // Indonesian\n\n case 'ja': // Japanese\n\n case 'jbo': // Lojban\n\n case 'ka': // Georgian\n\n case 'kk': // Kazakh\n\n case 'km': // Khmer\n\n case 'ko': // Korean\n\n case 'ky': // Kyrgyz\n\n case 'lo': // Lao\n\n case 'ms': // Malay\n\n case 'my': // Burmese\n\n case 'sah': // Yakut\n\n case 'su': // Sundanese\n\n case 'th': // Thai\n\n case 'tt': // Tatar\n\n case 'ug': // Uyghur\n\n case 'vi': // Vietnamese\n\n case 'wo': // Wolof\n\n case 'zh':\n // Chinese\n // 1 form\n return 0;\n\n case 'is':\n // Icelandic\n // 2 forms\n return n % 10 !== 1 || n % 100 === 11 ? 1 : 0;\n\n case 'jv':\n // Javanese\n // 2 forms\n return n !== 0 ? 1 : 0;\n\n case 'mk':\n // Macedonian\n // 2 forms\n return n === 1 || n % 10 === 1 ? 0 : 1;\n\n case 'ach': // Acholi\n\n case 'ak': // Akan\n\n case 'am': // Amharic\n\n case 'arn': // Mapudungun\n\n case 'br': // Breton\n\n case 'fil': // Filipino\n\n case 'fr': // French\n\n case 'gun': // Gun\n\n case 'ln': // Lingala\n\n case 'mfe': // Mauritian Creole\n\n case 'mg': // Malagasy\n\n case 'mi': // Maori\n\n case 'oc': // Occitan\n\n case 'pt_BR': // Brazilian Portuguese\n\n case 'tg': // Tajik\n\n case 'ti': // Tigrinya\n\n case 'tr': // Turkish\n\n case 'uz': // Uzbek\n\n case 'wa': // Walloon\n\n /* eslint-disable */\n\n /* Disable \"Duplicate case label\" because there are 2 forms of Chinese plurals */\n\n case 'zh':\n // Chinese\n\n /* eslint-enable */\n // 2 forms\n return n > 1 ? 1 : 0;\n\n case 'lv':\n // Latvian\n // 3 forms\n return n % 10 === 1 && n % 100 !== 11 ? 0 : n !== 0 ? 1 : 2;\n\n case 'lt':\n // Lithuanian\n // 3 forms\n return n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2;\n\n case 'be': // Belarusian\n\n case 'bs': // Bosnian\n\n case 'hr': // Croatian\n\n case 'ru': // Russian\n\n case 'sr': // Serbian\n\n case 'uk':\n // Ukrainian\n // 3 forms\n return n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2;\n\n case 'mnk':\n // Mandinka\n // 3 forms\n return n === 0 ? 0 : n === 1 ? 1 : 2;\n\n case 'ro':\n // Romanian\n // 3 forms\n return n === 1 ? 0 : n === 0 || n % 100 > 0 && n % 100 < 20 ? 1 : 2;\n\n case 'pl':\n // Polish\n // 3 forms\n return n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2;\n\n case 'cs': // Czech\n\n case 'sk':\n // Slovak\n // 3 forms\n return n === 1 ? 0 : n >= 2 && n <= 4 ? 1 : 2;\n\n case 'csb':\n // Kashubian\n // 3 forms\n return n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2;\n\n case 'sl':\n // Slovenian\n // 4 forms\n return n % 100 === 1 ? 0 : n % 100 === 2 ? 1 : n % 100 === 3 || n % 100 === 4 ? 2 : 3;\n\n case 'mt':\n // Maltese\n // 4 forms\n return n === 1 ? 0 : n === 0 || n % 100 > 1 && n % 100 < 11 ? 1 : n % 100 > 10 && n % 100 < 20 ? 2 : 3;\n\n case 'gd':\n // Scottish Gaelic\n // 4 forms\n return n === 1 || n === 11 ? 0 : n === 2 || n === 12 ? 1 : n > 2 && n < 20 ? 2 : 3;\n\n case 'cy':\n // Welsh\n // 4 forms\n return n === 1 ? 0 : n === 2 ? 1 : n !== 8 && n !== 11 ? 2 : 3;\n\n case 'kw':\n // Cornish\n // 4 forms\n return n === 1 ? 0 : n === 2 ? 1 : n === 3 ? 2 : 3;\n\n case 'ga':\n // Irish\n // 5 forms\n return n === 1 ? 0 : n === 2 ? 1 : n > 2 && n < 7 ? 2 : n > 6 && n < 11 ? 3 : 4;\n\n case 'ar':\n // Arabic\n // 6 forms\n return n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5;\n\n default:\n // Everything else\n return n !== 1 ? 1 : 0;\n }\n }\n};\n\nvar VuexI18nPlugin = {}; // internationalization plugin for vue js using vuex\n\nVuexI18nPlugin.install = function install(Vue, store, config) {\n // TODO: remove this block for next major update (API break)\n if (typeof arguments[2] === 'string' || typeof arguments[3] === 'string') {\n console.warn('i18n: Registering the plugin vuex-i18n with a string for `moduleName` or `identifiers` is deprecated. Use a configuration object instead.', 'https://github.com/dkfbasel/vuex-i18n#setup');\n config = {\n moduleName: arguments[2],\n identifiers: arguments[3]\n };\n } // merge default options with user supplied options\n\n\n config = Object.assign({\n warnings: true,\n moduleName: 'i18n',\n identifiers: ['{', '}'],\n preserveState: false,\n translateFilterName: 'translate',\n translateInFilterName: 'translateIn',\n onTranslationNotFound: function onTranslationNotFound() {}\n }, config); // define module name and identifiers as constants to prevent any changes\n\n var moduleName = config.moduleName;\n var identifiers = config.identifiers;\n var translateFilterName = config.translateFilterName;\n var translateInFilterName = config.translateInFilterName; // initialize the onTranslationNotFound function and make sure it is actually\n // a function\n\n var onTranslationNotFound = config.onTranslationNotFound;\n\n if (typeof onTranslationNotFound !== 'function') {\n console.error('i18n: i18n config option onTranslationNotFound must be a function');\n\n onTranslationNotFound = function onTranslationNotFound() {};\n } // register the i18n module in the vuex store\n // preserveState can be used via configuration if server side rendering is used\n\n\n store.registerModule(moduleName, i18nVuexModule, {\n preserveState: config.preserveState\n }); // check if the plugin was correctly initialized\n\n if (store.state.hasOwnProperty(moduleName) === false) {\n console.error('i18n: i18n vuex module is not correctly initialized. Please check the module name:', moduleName); // always return the key if module is not initialized correctly\n\n Vue.prototype.$i18n = function (key) {\n return key;\n };\n\n Vue.prototype.$getLanguage = function () {\n return null;\n };\n\n Vue.prototype.$setLanguage = function () {\n console.error('i18n: i18n vuex module is not correctly initialized');\n };\n\n return;\n }\n\n var render = renderFn(identifiers, config.warnings); // get localized string from store. note that we pass the arguments passed\n // to the function directly to the translateInLanguage function\n\n var translate = function $t() {\n // get the current language from the store\n var locale = store.state[moduleName].locale;\n return translateInLanguage.apply(void 0, [locale].concat(Array.prototype.slice.call(arguments)));\n }; // get localized string from store in a given language if available.\n // there are two possible signatures for the function.\n // we will check the arguments to make up the options passed.\n // 1: locale, key, options, pluralization\n // 2: locale, key, defaultValue, options, pluralization\n\n\n var translateInLanguage = function translateInLanguage(locale) {\n // read the function arguments\n var args = arguments; // initialize options\n\n var key = '';\n var defaultValue = '';\n var options = {};\n var pluralization = null;\n var count = args.length; // check if a default value was specified and fill options accordingly\n\n if (count >= 3 && typeof args[2] === 'string') {\n key = args[1];\n defaultValue = args[2];\n\n if (count > 3) {\n options = args[3];\n }\n\n if (count > 4) {\n pluralization = args[4];\n }\n } else {\n key = args[1]; // default value was not specified and is therefore the same as the key\n\n defaultValue = key;\n\n if (count > 2) {\n options = args[2];\n }\n\n if (count > 3) {\n pluralization = args[3];\n }\n } // return the default value if the locale is not set (could happen on initialization)\n\n\n if (!locale) {\n if (config.warnings) console.warn('i18n: i18n locale is not set when trying to access translations:', key);\n return defaultValue;\n } // get the translations from the store\n\n\n var translations = store.state[moduleName].translations; // get the last resort fallback from the store\n\n var fallback = store.state[moduleName].fallback; // split locale by - to support partial fallback for regional locales\n // like de-CH, en-UK\n\n var localeRegional = locale.split('-'); // flag for translation to exist or not\n\n var translationExists = true; // check if the language exists in the store. return the key if not\n\n if (translations.hasOwnProperty(locale) === false) {\n translationExists = false; // check if the key exists in the store. return the key if not\n } else if (translations[locale].hasOwnProperty(key) === false) {\n translationExists = false;\n } // return the value from the store\n\n\n if (translationExists === true) {\n return render(locale, translations[locale][key], options, pluralization);\n } // check if a regional locale translation would be available for the key\n // i.e. de for de-CH\n\n\n if (localeRegional.length > 1 && translations.hasOwnProperty(localeRegional[0]) === true && translations[localeRegional[0]].hasOwnProperty(key) === true) {\n return render(localeRegional[0], translations[localeRegional[0]][key], options, pluralization);\n } // invoke a method if a translation is not found\n\n\n var asyncTranslation = onTranslationNotFound(locale, key, defaultValue); // resolve async translations by updating the store\n\n if (asyncTranslation) {\n Promise.resolve(asyncTranslation).then(function (value) {\n var additionalTranslations = {};\n additionalTranslations[key] = value;\n addLocale(locale, additionalTranslations);\n });\n } // check if a vaild fallback exists in the store.\n // return the default value if not\n\n\n if (translations.hasOwnProperty(fallback) === false) {\n return render(locale, defaultValue, options, pluralization);\n } // check if the key exists in the fallback locale in the store.\n // return the default value if not\n\n\n if (translations[fallback].hasOwnProperty(key) === false) {\n return render(fallback, defaultValue, options, pluralization);\n }\n\n return render(locale, translations[fallback][key], options, pluralization);\n }; // add a filter function to translate in a given locale (i.e. {{ 'something' | translateIn('en') }})\n\n\n var translateInLanguageFilter = function translateInLanguageFilter(key, locale) {\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n return translateInLanguage.apply(void 0, [locale, key].concat(args));\n }; // check if the given key exists in the current locale\n\n\n var checkKeyExists = function checkKeyExists(key) {\n var scope = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'fallback';\n // get the current language from the store\n var locale = store.state[moduleName].locale;\n var fallback = store.state[moduleName].fallback;\n var translations = store.state[moduleName].translations; // check the current translation\n\n if (translations.hasOwnProperty(locale) && translations[locale].hasOwnProperty(key)) {\n return true;\n }\n\n if (scope == 'strict') {\n return false;\n } // check any localized translations\n\n\n var localeRegional = locale.split('-');\n\n if (localeRegional.length > 1 && translations.hasOwnProperty(localeRegional[0]) && translations[localeRegional[0]].hasOwnProperty(key)) {\n return true;\n }\n\n if (scope == 'locale') {\n return false;\n } // check if a fallback locale exists\n\n\n if (translations.hasOwnProperty(fallback) && translations[fallback].hasOwnProperty(key)) {\n return true;\n } // key does not exist in the store\n\n\n return false;\n }; // set fallback locale\n\n\n var setFallbackLocale = function setFallbackLocale(locale) {\n store.dispatch({\n type: \"\".concat(moduleName, \"/setFallbackLocale\"),\n locale: locale\n });\n }; // set the current locale\n\n\n var setLocale = function setLocale(locale) {\n store.dispatch({\n type: \"\".concat(moduleName, \"/setLocale\"),\n locale: locale\n });\n }; // get the current locale\n\n\n var getLocale = function getLocale() {\n return store.state[moduleName].locale;\n }; // get all available locales\n\n\n var getLocales = function getLocales() {\n return Object.keys(store.state[moduleName].translations);\n }; // add predefined translations to the store (keeping existing information)\n\n\n var addLocale = function addLocale(locale, translations) {\n return store.dispatch({\n type: \"\".concat(moduleName, \"/addLocale\"),\n locale: locale,\n translations: translations\n });\n }; // replace all locale information in the store\n\n\n var replaceLocale = function replaceLocale(locale, translations) {\n return store.dispatch({\n type: \"\".concat(moduleName, \"/replaceLocale\"),\n locale: locale,\n translations: translations\n });\n }; // remove the givne locale from the store\n\n\n var removeLocale = function removeLocale(locale) {\n if (store.state[moduleName].translations.hasOwnProperty(locale)) {\n store.dispatch({\n type: \"\".concat(moduleName, \"/removeLocale\"),\n locale: locale\n });\n }\n }; // we are phasing out the exists function\n\n\n var phaseOutExistsFn = function phaseOutExistsFn(locale) {\n if (config.warnings) console.warn('i18n: $i18n.exists is depreceated. Please use $i18n.localeExists instead. It provides exactly the same functionality.');\n return checkLocaleExists(locale);\n }; // check if the given locale is already loaded\n\n\n var checkLocaleExists = function checkLocaleExists(locale) {\n return store.state[moduleName].translations.hasOwnProperty(locale);\n }; // register vue prototype methods\n\n\n Vue.prototype.$i18n = {\n locale: getLocale,\n locales: getLocales,\n set: setLocale,\n add: addLocale,\n replace: replaceLocale,\n remove: removeLocale,\n fallback: setFallbackLocale,\n localeExists: checkLocaleExists,\n keyExists: checkKeyExists,\n translate: translate,\n translateIn: translateInLanguage,\n exists: phaseOutExistsFn\n }; // register global methods\n\n Vue.i18n = {\n locale: getLocale,\n locales: getLocales,\n set: setLocale,\n add: addLocale,\n replace: replaceLocale,\n remove: removeLocale,\n fallback: setFallbackLocale,\n translate: translate,\n translateIn: translateInLanguage,\n localeExists: checkLocaleExists,\n keyExists: checkKeyExists,\n exists: phaseOutExistsFn\n }; // register the translation function on the vue instance directly\n\n Vue.prototype.$t = translate; // register the specific language translation function on the vue instance directly\n\n Vue.prototype.$tlang = translateInLanguage; // register a filter function for translations\n\n Vue.filter(translateFilterName, translate);\n Vue.filter(translateInFilterName, translateInLanguageFilter);\n}; // renderFn will initialize a function to render the variable substitutions in\n// the translation string. identifiers specify the tags will be used to find\n// variable substitutions, i.e. {test} or {{test}}, note that we are using a\n// closure to avoid recompilation of the regular expression to match tags on\n// every render cycle.\n\n\nvar renderFn = function renderFn(identifiers) {\n var warnings = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (identifiers == null || identifiers.length != 2) {\n console.warn('i18n: You must specify the start and end character identifying variable substitutions');\n } // construct a regular expression ot find variable substitutions, i.e. {test}\n\n\n var matcher = new RegExp('' + identifiers[0] + '{1}(\\\\w{1}|\\\\w.+?)' + identifiers[1] + '{1}', 'g'); // define the replacement function\n\n var replace = function replace(translation, replacements) {\n // check if the object has a replace property\n if (!translation.replace) {\n return translation;\n }\n\n return translation.replace(matcher, function (placeholder) {\n // remove the identifiers (can be set on the module level)\n var key = placeholder.replace(identifiers[0], '').replace(identifiers[1], '');\n\n if (replacements[key] !== undefined) {\n return replacements[key];\n } // warn user that the placeholder has not been found\n\n\n if (warnings) {\n console.group ? console.group('i18n: Not all placeholders found') : console.warn('i18n: Not all placeholders found');\n console.warn('Text:', translation);\n console.warn('Placeholder:', placeholder);\n\n if (console.groupEnd) {\n console.groupEnd();\n }\n } // return the original placeholder\n\n\n return placeholder;\n });\n }; // the render function will replace variable substitutions and prepare the\n // translations for rendering\n\n\n var render = function render(locale, translation) {\n var replacements = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var pluralization = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n // get the type of the property\n var objType = _typeof(translation);\n\n var pluralizationType = _typeof(pluralization);\n\n var resolvePlaceholders = function resolvePlaceholders() {\n if (isArray$1(translation)) {\n // replace the placeholder elements in all sub-items\n return translation.map(function (item) {\n return replace(item, replacements, false);\n });\n } else if (objType === 'string') {\n return replace(translation, replacements, true);\n }\n }; // return translation item directly\n\n\n if (pluralization === null) {\n return resolvePlaceholders();\n } // check if pluralization value is countable\n\n\n if (pluralizationType !== 'number') {\n if (warnings) console.warn('i18n: pluralization is not a number');\n return resolvePlaceholders();\n } // --- handle pluralizations ---\n // replace all placeholders\n\n\n var resolvedTranslation = resolvePlaceholders(); // initialize pluralizations\n\n var pluralizations = null; // if translations are already an array and have more than one entry,\n // we will not perform a split operation on :::\n\n if (isArray$1(resolvedTranslation) && resolvedTranslation.length > 0) {\n pluralizations = resolvedTranslation;\n } else {\n // split translation strings by ::: to find create the pluralization array\n pluralizations = resolvedTranslation.split(':::');\n } // determine the pluralization version to use by locale\n\n\n var index = plurals.getTranslationIndex(locale, pluralization); // check if the specified index is present in the pluralization\n\n if (typeof pluralizations[index] === 'undefined') {\n if (warnings) {\n console.warn('i18n: pluralization not provided in locale', translation, locale, index);\n } // return the first element of the pluralization by default\n\n\n return pluralizations[0].trim();\n } // return the requested item from the pluralizations\n\n\n return pluralizations[index].trim();\n }; // return the render function to the caller\n\n\n return render;\n}; // check if the given object is an array\n\n\nfunction isArray$1(obj) {\n return !!obj && Array === obj.constructor;\n}\n\n// import the vuex module for localization\n\nvar index = {\n store: i18nVuexModule,\n plugin: VuexI18nPlugin\n};\n\nexport default index;\n","import Vue from 'vue';\nimport Vuex from 'vuex';\nimport VueRouter from 'vue-router';\nimport store from './store';\nimport storingmelden from './modules/storingmelden/storingmelden.vue';\nimport Vuelidate from 'vuelidate';\nimport vuexI18n from 'vuex-i18n';\nimport Autocomplete from 'vue2-autocomplete-js';\n\nVue.use(Vuex);\nVue.use(VueRouter);\nVue.use(Vuelidate);\nVue.component('autocomplete', Autocomplete);\nVue.use(require('vue-moment'));\n\nVue.use(vuexI18n.plugin, store);\n\nVue.mixin({\n methods: {\n convertFileToBase64String(file) {\n return new Promise((resolve, reject) => {\n var reader = new FileReader();\n reader.onload = () => {\n resolve(reader.result);\n };\n reader.onerror = error => {\n reject(error);\n };\n reader.readAsDataURL(file);\n });\n },\n $tr(key,defaultFallback){\n let translation = this.$t(key,\"no_translation_found\");\n if(translation === \"no_translation_found\"){\n if(defaultFallback){\n return defaultFallback;\n }else{\n return \"[\" + key + \"]\";\n }\n }\n return translation;\n } \n }\n});\n\nconst router = new VueRouter({\n mode: 'history'\n});\n\nfunction init() {\n const elStoringmelden = document.getElementById('storingmelden');\n\n if (elStoringmelden !== null && elStoringmelden !== undefined) {\n // ReSharper disable once ConstructorCallNotUsed\n new Vue({\n el: '#storingmelden',\n router,\n store,\n render: (h) =>\n h(storingmelden, {\n props: {\n language: elStoringmelden.getAttribute('data-language') || 'nl',\n brand: elStoringmelden.getAttribute('data-brand') || 'atag',\n url: elStoringmelden.getAttribute('data-url') || '#',\n country: elStoringmelden.getAttribute('data-country') || 'nl',\n retailer: elStoringmelden.getAttribute('data-retailer') || false\n }\n })\n });\n }\n}\n\nexport default {\n init\n};\n","import components from './components';\ncomponents.init();"],"sourceRoot":""}