{"version":3,"file":"main.js","mappings":"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","sources":["webpack://login.funda/./Views/Shared/Scripts/Assets/Analytics.js","webpack://login.funda/webpack/bootstrap","webpack://login.funda/webpack/runtime/define property getters","webpack://login.funda/webpack/runtime/hasOwnProperty shorthand","webpack://login.funda/./Views/Shared/Scripts/Assets/Main.js"],"sourcesContent":["window.dataLayer = window.dataLayer || [];\n\nfunction gtag() {\n dataLayer.push(arguments);\n}\n\ngtag('js', new Date());\ngtag('config', 'UA-3168440-18');\n\nexport function gtagTrackEvent(event) {\n gtag('event', event, {\n event_category: 'interactions-login',\n });\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","import { gtagTrackEvent } from './Analytics.js';\n\nconst passwordStrengthFeedback = [\n 'zeer zwak',\n 'zwak',\n 'gemiddeld',\n 'sterk',\n 'zeer sterk',\n];\n(function() {\n document.addEventListener('DOMContentLoaded', function() {\n document.documentElement.classList.remove('no-js');\n const userInput = document.querySelector('[data-user-input]');\n const showPasswordButtons = document.querySelectorAll(\n '[data-show-password-button]'\n );\n const passwordStrengthInput = document.querySelector(\n '[data-password-strength-input]'\n );\n const passwordStrengthBar = document.querySelector(\n '[data-password-strength-bar]'\n );\n const passwordStrengthText = document.querySelector(\n '[data-password-strenght-text]'\n );\n const gtagClick = document.querySelector('[data-gtag-click-event]');\n\n if (userInput) userInput.focus();\n if (showPasswordButtons.length) {\n for (let i = 0; i < showPasswordButtons.length; i++) {\n showPasswordButtons[i].addEventListener('click', function() {\n togglePassword(i);\n });\n }\n }\n if (passwordStrengthInput) {\n const passwordRegex = passwordStrengthInput.getAttribute(\n 'data-val-regex-pattern'\n );\n passwordStrengthInput.addEventListener('keyup', function(e) {\n if (e.target.value === '') {\n passwordStrengthText.innerText = getPasswordStrengthText();\n passwordStrengthBar.setAttribute('data-value', 0);\n }\n passwordStrengthCheck(\n e.target.value,\n passwordStrengthBar,\n passwordStrengthText,\n passwordRegex\n );\n });\n }\n if (gtagClick) {\n gtagClick.addEventListener('click', function() {\n gtagTrackEvent(gtagClick.getAttribute('data-gtag-click-event'));\n });\n }\n preventMultipleSubmission();\n });\n\n function togglePassword(i) {\n const hideClass = 'button-show-password--hide';\n const password = document.querySelectorAll(\n '[data-show-password-input]'\n )[i];\n const icon = document.querySelectorAll('[data-show-password-button]')[\n i\n ];\n const showPasswordText = document\n .querySelectorAll('[data-show-password-button]')\n [i].getAttribute('data-show-password-text');\n const hidePasswordText = document\n .querySelectorAll('[data-show-password-button]')\n [i].getAttribute('data-hide-password-text');\n const titleText = icon.classList.contains(hideClass)\n ? showPasswordText\n : hidePasswordText;\n password.type = password.type === 'password' ? 'text' : 'password';\n icon.setAttribute('title', titleText);\n icon.classList.toggle(hideClass);\n }\n\n // prevent multiple submission in combination with unobtrusive validation\n function preventMultipleSubmission() {\n if (window.jQuery) {\n $('[data-form-submit-once]').on('submit', function() {\n const form = $(this);\n const gtagEvent = form.data('gtag-event');\n const buttons = form.find('[type=\"submit\"]');\n const disabled = form.valid();\n buttons.each(function(btn) {\n $(buttons[btn]).prop('disabled', disabled);\n });\n gtagTrackEvent(gtagEvent);\n });\n }\n }\n\n function passwordStrengthCheck(password, bar, text, passwordRegex) {\n if (!password || !bar || !text) {\n return false;\n }\n\n const passwordStrength = window.zxcvbn(password);\n const regx = new RegExp(passwordRegex);\n\n // avoid maximum score if it doesn't match password requirements\n const updatedScore =\n passwordStrength.score > 1 && !regx.test(password)\n ? passwordStrength.score - 1\n : passwordStrength.score;\n\n // provide feedback to the user, in the bar and text\n bar.setAttribute('data-value', updatedScore);\n text.innerText = getPasswordStrengthText(updatedScore);\n }\n\n function getPasswordStrengthText(score = 0) {\n return `Wachtwoordsterkte: ${passwordStrengthFeedback[score]}`;\n }\n})();\n"],"names":["gtag","dataLayer","push","arguments","gtagTrackEvent","event","event_category","window","Date","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","__webpack_modules__","d","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","passwordStrengthFeedback","togglePassword","i","hideClass","password","document","querySelectorAll","icon","showPasswordText","getAttribute","hidePasswordText","titleText","classList","contains","type","setAttribute","toggle","getPasswordStrengthText","length","addEventListener","documentElement","remove","userInput","querySelector","showPasswordButtons","passwordStrengthInput","passwordStrengthBar","passwordStrengthText","gtagClick","focus","passwordRegex","e","target","value","innerText","bar","text","passwordStrength","zxcvbn","regx","RegExp","updatedScore","score","test","passwordStrengthCheck","jQuery","$","on","form","this","gtagEvent","data","buttons","find","disabled","valid","each","btn"],"sourceRoot":""}