{"version":3,"file":"application_samir-6413fcdf.js","sources":["../../../app/whitelabels/samir/assets/javascripts/custom.js","../../../app/whitelabels/samir/assets/javascripts/login_signup.js","../../../app/whitelabels/samir/assets/javascripts/catalog.js","../../../app/whitelabels/samir/assets/javascripts/parsley_validations.js","../../../app/whitelabels/samir/assets/javascripts/application.js","../../../app/frontend/entrypoints/application_samir.js"],"sourcesContent":["/* CUSTOM SELECT */\nvar x, i, j, l, ll, selElmnt, a, b, c;\n/*look for any elements with the class \"custom-select\":*/\nx = document.getElementsByClassName(\"custom-select\");\nl = x.length;\nfor (i = 0; i < l; i++) {\n selElmnt = x[i];\n selElmnt.classList.add(\"d-none\");\n ll = selElmnt.length;\n /*for each element, create a new DIV that will act as the selected item:*/\n a = document.createElement(\"DIV\");\n a.setAttribute(\"class\", \"select-selected fa \" + selElmnt.getAttribute(\"data-page\"));\n a.innerHTML = selElmnt.options[selElmnt.selectedIndex].innerHTML;\n x[i].parentElement.appendChild(a);\n /*for each element, create a new DIV that will contain the option list:*/\n b = document.createElement(\"DIV\");\n b.setAttribute(\"class\", \"select-items select-hide\");\n for (j = 0; j < ll; j++) {\n /*for each option in the original select element,\n create a new DIV that will act as an option item:*/\n c = document.createElement(\"DIV\");\n c.innerHTML = selElmnt.options[j].innerHTML;\n if (j == 0) {\n c.setAttribute(\"class\", \"same-as-selected\");\n }\n c.addEventListener(\"click\", function (e) {\n /*when an item is clicked, update the original select box,\n and the selected item:*/\n var y, i, k, s, h, sl, yl;\n s = this.parentNode.parentNode.getElementsByTagName(\"select\")[0];\n sl = s.length;\n h = this.parentNode.previousSibling;\n for (i = 0; i < sl; i++) {\n if (s.options[i].innerHTML == this.innerHTML) {\n s.selectedIndex = i;\n h.innerHTML = this.innerHTML;\n y = this.parentNode.getElementsByClassName(\"same-as-selected\");\n yl = y.length;\n for (k = 0; k < yl; k++) {\n y[k].removeAttribute(\"class\");\n }\n this.setAttribute(\"class\", \"same-as-selected\");\n break;\n }\n }\n h.click();\n });\n b.appendChild(c);\n }\n x[i].parentElement.appendChild(b);\n a.addEventListener(\"click\", function (e) {\n /*when the select box is clicked, close any other select boxes,\n and open/close the current select box:*/\n e.stopPropagation();\n closeAllSelect(this);\n this.nextSibling.classList.toggle(\"select-hide\");\n this.classList.toggle(\"select-arrow-active\");\n });\n}\nfunction closeAllSelect(elmnt) {\n /*a function that will close all select boxes in the document,\n except the current select box:*/\n var x,\n y,\n i,\n xl,\n yl,\n arrNo = [];\n x = document.getElementsByClassName(\"select-items\");\n y = document.getElementsByClassName(\"select-selected\");\n xl = x.length;\n yl = y.length;\n for (i = 0; i < yl; i++) {\n if (elmnt == y[i]) {\n arrNo.push(i);\n } else {\n y[i].classList.remove(\"select-arrow-active\");\n }\n }\n for (i = 0; i < xl; i++) {\n if (arrNo.indexOf(i)) {\n x[i].classList.add(\"select-hide\");\n }\n }\n}\n/*if the user clicks anywhere outside the select box,\nthen close all select boxes:*/\ndocument.addEventListener(\"click\", closeAllSelect);\n/* END CUSTOM SELECT */\n\n$(document).ready(function () {\n $(\"body\").tooltip({ selector: \"[data-bs-toggle=tooltip]\" });\n});","$(function() {\n $(\"header.user-role-select-form .signup-steps input:submit[name!='commit']\").on('click', function(event) {\n event.preventDefault();\n manageStepChange(this);\n });\n\n $('header.user-role-select-form .flat-box-steps-circle div').on('click', function() {\n manageStepCircles(this);\n });\n\n $(\"header.user-role-select-form .signup-steps input:submit[name='commit']\").on('click', function(event) {\n event.preventDefault();\n $(this).closest('form').submit();\n });\n\n $('header.user-role-select-form input').on('change keyup', function() {\n manageInputChange(this);\n });\n\n // ---> START ---- role 1\n\n $('.step-1-role1 input').on('change keyup', function() {\n manageDisableBtn(this, 1);\n });\n\n $('.step-1-role1 select').on('change keyup', function() {\n manageDisableBtn(this, 1);\n });\n\n $('.step-1-role1 select').on('change keyup', function() {\n // $('.userbday-day').parsley().validate();\n // $('.userbday-month').parsley().validate();\n // $('.userbday-year').parsley().validate();\n manageDisableBtn(this, 1);\n });\n\n $(\".step-2-role1 input\").on(\"change keyup\", function () {\n manageDisableBtn(this, 2);\n });\n\n $(\".step-3-role1 input\").on(\"change keyup\", function () {\n manageDisableBtn(this, 3);\n });\n\n // <--- END ---- role 1\n\n // ---> START ---- role 2\n\n $(\".step-1-role2 input\").on(\"change keyup\", function () {\n manageDisableBtn(this, 1);\n });\n\n $(\".step-1-role2 select\").on(\"change keyup\", function () {\n // $('.userbday-day').parsley().validate();\n // $('.userbday-month').parsley().validate();\n // $('.userbday-year').parsley().validate();\n manageDisableBtn(this, 1);\n });\n\n $(\".step-2-role2 input\").on(\"change keyup\", function () {\n manageDisableBtn(this, 2);\n });\n\n $(\".step-3-role2 input\").on(\"change keyup\", function () {\n manageDisableBtn(this, 3);\n });\n\n $(\".step-3-role2 select\").on(\"change keyup\", function () {\n // $('.parentbday-day').parsley().validate();\n // $('.parentbday-month').parsley().validate();\n // $('.parentbday-year').parsley().validate();\n manageDisableBtn(this, 3);\n });\n\n $(\".step-4-role2 input\").on(\"change keyup\", function () {\n manageDisableBtn(this, 4);\n });\n\n // <--- END ---- role 2\n\n // ---> START ---- role 3\n\n $(\".step-3-role3 input\").on(\"change keyup\", function () {\n manageDisableBtn(this, 3);\n });\n\n $(\".step-1-role3 input\").on(\"change keyup\", function () {\n manageDisableBtn(this, 1);\n });\n $(\".step-2-role3 input\").on(\"change keyup\", function () {\n manageDisableBtn(this, 2);\n });\n\n // <--- END ---- role 3\n\n // required to avoid double-click on submit button\n $(\".btn-signup-flow-last\").one('click', function (event) {\n $(this).prop('disabled', true);\n });\n $(\".btn-signup-flow-last\").dblclick(function(e){\n e.preventDefault();\n });\n});\n\n\n// --- START login/sign-up flow functions ----\n\nvar getCurrentStep = window.getCurrentStep = function($this) {\n var classesParent = $($this).closest('.signup-steps').attr('class').split(' ');\n var curStep = classesParent[2].split('-')[1];\n return curStep;\n};\n\nvar manageDisableBtn = window.manageDisableBtn = function($this, step) {\n var btn = $($this).closest('.signup-steps').find(\"input[type='submit']\");\n var filled = $('#new_user').parsley({excluded: \"\"}).isValid({group: 'step_' + step});\n if (filled === true) {\n $(btn).prop('disabled', false);\n } else {\n $(btn).prop('disabled', true);\n }\n};\n\nvar onPrivaciesChange = window.onPrivaciesChange = function($this, step) {\n if ($($this).is(':checked')) {\n $($this).attr('value', '1');\n $($this).attr('checked', true);\n } else {\n $($this).attr('value', '');\n $($this).attr('checked', null);\n }\n manageDisableBtn($this, step);\n};\n\nvar dateSeparator = '/';\n\nvar correctCaptcha = window.correctCaptcha = function(response) {\n $('#recaptcha_status').val('1');\n var classesParent = $(\".g-recaptcha\").closest('.signup-steps').attr('class').split(' ');\n var curStep = classesParent[2].split('-')[1];\n manageDisableBtn(\".g-recaptcha\", curStep);\n};\n\nvar manageStepCircles = window.manageStepCircles = function($this) {\n var currentIndex = $($this).siblings('.active').attr('class').split(' ')[0].split('-')[1];\n var selected = $($this).attr('class').split(' ')[0];\n var selectedIndex = selected.split('-')[1];\n if (selectedIndex*1 < currentIndex*1) {\n $('.flat-box.signup-steps').hide();\n $('.flat-box-header.signup-steps').hide();\n $('.flat-box-steps-circle').hide();\n $('.flat-box.signup-steps.'+ selected).show();\n $('.flat-box-header.signup-steps.'+ selected).show();\n $('.flat-box-steps-circle.'+selected).show();\n $(\"html, body\").animate({ scrollTop: 0 }, \"slow\");\n }\n};\n\nvar manageInputChange = window.manageInputChange = function($this) {\n var step = getCurrentStep($this);\n if ($($this).is(':checkbox')) {\n if ($($this).attr('id') == 'checkbox-form-tos_agreement') {\n $('.privacies input:checkbox').prop('checked', $($this).is(':checked'));\n $('.privacies input:checkbox').each(function() {\n onPrivaciesChange(this);\n });\n } else {\n $('#checkbox-form-tos_agreement').prop('checked', false);\n $('#checkbox-form-tos_agreement').attr('value', '');\n }\n onPrivaciesChange($this, step);\n }\n};\n\nvar manageStepChange = window.manageStepChange = function($this) {\n var classesParent = $($this).closest('.signup-steps').attr('class').split(' ');\n var curStep = classesParent[2].split('-')[1];\n var curFlow = classesParent[2].split('-')[2]\n var nextStep = curStep*1+1;\n $('.signup-steps').hide();\n if ($('.step-'+ nextStep + '-' + curFlow).hasClass('skip-step')) {\n console.log('skip this step');\n nextStep = nextStep +1;\n }\n $('.step-'+ nextStep + '-' + curFlow).show();\n $(\"html, body\").animate({ scrollTop: 0 }, \"slow\");\n};\n\nvar gobackSignupFlow = window.gobackSignupFlow = function($this) {\n // event.preventDefault();\n var classesParent = $($this).closest(\".signup-steps\").attr(\"class\").split(\" \").reverse();\n var curStep = classesParent[0].split(\"-\")[1];\n var curFlow = classesParent[0].split(\"-\")[2];\n var nextStep = curStep * 1 - 1;\n $(\".signup-steps\").hide();\n if ($(\".step-\" + nextStep + \"-\" + curFlow).hasClass(\"skip-step\")) {\n nextStep = nextStep - 1;\n }\n $(\".step-\" + nextStep + \"-\" + curFlow).show();\n $(\"html, body\").animate({ scrollTop: 0 }, \"slow\");\n};\n\n// --- START login/sign-up flow functions ----\n\n","const accordions = document.querySelectorAll(\".filter-group\");\nconst breakpoint = 768;\n\nif (window.innerWidth <= breakpoint) {\n close_all_accordions(accordions);\n initialize_accordions(accordions);\n} else {\n remove_accordions(accordions);\n}\n\nwindow.addEventListener(\"resize\", () => {\n if (window.innerWidth <= breakpoint) {\n close_all_accordions(accordions);\n initialize_accordions(accordions);\n } else {\n open_all_accordions(accordions);\n remove_accordions(accordions);\n }\n});\n\nfunction initialize_accordions(accordions) {\n accordions.forEach((accordion) => {\n let accordion_title = accordion.querySelector(\".filter-title\");\n let accordion_content = accordion.querySelector(\".filter-options\");\n accordion_content.style.maxHeight = \"0px\";\n accordion_title.addEventListener(\"click\", toggleAccordion);\n });\n}\n\nfunction remove_accordions(accordions) {\n accordions.forEach((accordion) => {\n let accordion_title = accordion.querySelector(\".filter-title\");\n accordion_title.removeEventListener(\"click\", toggleAccordion);\n });\n}\n\nfunction toggleAccordion() {\n const accordion = this.parentElement;\n const accordion_content = accordion.querySelector(\".filter-options\");\n if (accordion_content.style.maxHeight != \"0px\") {\n accordion_content.style.maxHeight = \"0px\";\n accordion_content.parentElement.style.paddingBottom = \"0px\";\n } else {\n close_all_accordions(accordions);\n accordion_content.style.maxHeight = accordion_content.scrollHeight + \"px\";\n accordion_content.parentElement.style.paddingBottom = \"22px\";\n }\n}\n\nfunction open_all_accordions(elements) {\n elements.forEach((accordion) => {\n let accordion_content = accordion.querySelector(\".filter-options\");\n accordion_content.style.maxHeight = accordion_content.scrollHeight + \"px\";\n accordion_content.parentElement.style.paddingBottom = \"22px\";\n });\n}\n\nfunction close_all_accordions(elements) {\n elements.forEach((accordion) => {\n let accordion_content = accordion.querySelector(\".filter-options\");\n accordion_content.style.maxHeight = \"0px\";\n accordion_content.parentElement.style.paddingBottom = \"0px\";\n });\n}\n","var userLang = navigator.language || navigator.userLanguage;\nuserLang = userLang.substring(0, 2).toLowerCase();\nif (![\"en\", \"fr\"].includes(userLang)) {\n userLang = \"fr\";\n}\nwindow.Parsley.setLocale(userLang);\n\nif ($(\"#new_user\").length != 0) {\n $(\"#new_user\").parsley();\n}\n","import \"@hotwired/turbo-rails\";\nimport \"jquery\";\nimport \"parsleyjs/src/parsley.js\";\nimport \"parsleyjs/src/i18n/fr.js\";\nimport \"parsleyjs/src/i18n/es.js\";\nimport \"parsleyjs/src/i18n/it.js\";\nimport \"parsleyjs/src/i18n/de.js\";\nimport \"jquery-ui/dist/jquery-ui.js\";\n// import \"bootstrap/dist/js/bootstrap.bundle.js\";\nimport \"moment/src/moment.js\";\nimport \"moment/src/locale/de.js\";\nimport \"moment/src/locale/es.js\";\nimport \"moment/src/locale/fr.js\";\nimport \"moment/src/locale/it.js\";\nimport \"@vendor/jquery.rwdImageMaps.js\";\nimport \"@vendor/jquery.capsChecker.js\";\nimport \"@vendor/handlebars-v1.2.0\";\nimport \"./custom.js\";\nimport \"./login_signup.js\";\nimport \"./catalog.js\";\nimport \"./parsley_validations.js\";\n\n$(function () {\n window.Parsley.addValidator(\"rejectEmoji\", {\n // requirementType: \"string\",\n validateString: function (value) {\n var regex = new RegExp(\n /[\\u{1f300}-\\u{1f5ff}\\u{1f900}-\\u{1f9ff}\\u{1f600}-\\u{1f64f}\\u{1f680}-\\u{1f6ff}\\u{2600}-\\u{26ff}\\u{2700}-\\u{27bf}\\u{1f1e6}-\\u{1f1ff}\\u{1f191}-\\u{1f251}\\u{1f004}\\u{1f0cf}\\u{1f170}-\\u{1f171}\\u{1f17e}-\\u{1f17f}\\u{1f18e}\\u{3030}\\u{2b50}\\u{2b55}\\u{2934}-\\u{2935}\\u{2b05}-\\u{2b07}\\u{2b1b}-\\u{2b1c}\\u{3297}\\u{3299}\\u{303d}\\u{00a9}\\u{00ae}\\u{2122}\\u{23f3}\\u{24c2}\\u{23e9}-\\u{23ef}\\u{25b6}\\u{23f8}-\\u{23fa}]/gu\n );\n return !regex.test(value);\n },\n });\n\n window.Parsley.addValidator(\"rejectPattern\", {\n requirementType: \"string\",\n validateString: function (value, requirement) {\n // check that the email value does not contain http or // via regex\n var regex = new RegExp(requirement);\n return !regex.test(value);\n },\n });\n\n window.Parsley.addAsyncValidator(\n \"emailUnique\",\n function (xhr) {\n // Ritorna true anche se la richiesta non funziona per far\n // comunque andare avanti l'utente.\n // La validazione della mail c'รจ comunque alla fine del form.\n return xhr.status !== 200 || !xhr.responseJSON.found;\n },\n \"/api/v5/users/email/check?email={value}\"\n );\n});\n","import \"../src/shared/wrap_ready.js\";\nimport Cookie from \"../src/shared/cookie\";\n// import Header from \"../src/samir/components/header\";\n\nwindow.Samir = {};\n\nwindow.addEventListener(\"DOMContentLoaded\", () => {\n window.Samir.Cookie = new Cookie();\n\n // window.Samir.Header = new Header({ selector: \".nav-bar\" });\n // window.Samir.Header.start();\n});\n\n// we moved Bootstrap here afer updating to BS5 because\n// it wasn't loaded in the right order in application.js\nimport * as bootstrap from '../../../node_modules/bootstrap/dist/js/bootstrap.bundle.js';\n\nwindow.bootstrap = bootstrap;\n\nimport \"../../whitelabels/samir/assets/javascripts/application.js\";\n"],"names":["x","i","j","l","ll","selElmnt","a","b","c","e","y","k","s","h","sl","yl","closeAllSelect","elmnt","xl","arrNo","$","event","manageStepChange","manageStepCircles","manageInputChange","manageDisableBtn","getCurrentStep","$this","classesParent","curStep","step","btn","filled","onPrivaciesChange","response","currentIndex","selected","selectedIndex","curFlow","nextStep","accordions","breakpoint","close_all_accordions","initialize_accordions","remove_accordions","open_all_accordions","accordion","accordion_title","accordion_content","toggleAccordion","elements","userLang","value","regex","requirement","xhr","Cookie","bootstrap"],"mappings":"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"}