{"version":3,"file":"js/page__shared_sms_token_handlers-2ebd163cf733c8661a3f.chunk.js","mappings":"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","sources":["webpack://nodalview/./node_modules/pincode-input/dist/pincode-input.es.js","webpack://nodalview/./app/javascript/src/shared/sms_token_handlers/index.js","webpack://nodalview/./app/javascript/src/shared/api/client.js"],"sourcesContent":["var CELL_REGEXP = '^\\\\d{1}$';\n\nvar PincodeInput = /** @class */ (function () {\r\n function PincodeInput(selector, args) {\r\n var _a = args.count, count = _a === void 0 ? 4 : _a, _b = args.secure, secure = _b === void 0 ? false : _b, _c = args.previewDuration, previewDuration = _c === void 0 ? 200 : _c, _d = args.numeric, numeric = _d === void 0 ? true : _d, _e = args.uppercase, uppercase = _e === void 0 ? true : _e;\r\n this.args = args;\r\n this.selector = document.querySelector(selector);\r\n this.count = count;\r\n this.secure = secure;\r\n this.previewDuration = previewDuration;\r\n this.numeric = numeric;\r\n this.uppercase = uppercase;\r\n this.cells = [];\r\n this.focusedCellIdx = 0;\r\n this.value = '';\r\n this.setCells();\r\n }\r\n PincodeInput.prototype.setCells = function () {\r\n for (var i = 0; i < this.count; i++) {\r\n var cell = document.createElement('input');\r\n cell.classList.add('pincode-input');\r\n if (this.numeric)\r\n cell.setAttribute('inputmode', 'numeric');\r\n if (!this.uppercase)\r\n cell.style.textTransform = 'lowercase';\r\n this.cells.push(cell);\r\n this.selector.appendChild(cell);\r\n }\r\n this.initCells();\r\n };\r\n PincodeInput.prototype.initCells = function () {\r\n var _this = this;\r\n this.cells.forEach(function (p, i) {\r\n p.addEventListener('input', function (e) {\r\n var element = e.currentTarget;\r\n var value = element.value;\r\n _this.onCellChanged(i, value);\r\n });\r\n p.addEventListener('focus', function () {\r\n _this.focusedCellIdx = i;\r\n });\r\n p.addEventListener('keydown', function (e) {\r\n _this.onKeyDown(e, i);\r\n if (e.key !== 'ArrowLeft' && e.key !== 'ArrowRight' && e.key !== 'ArrowUp' &&\r\n e.key !== 'ArrowDown' && e.key !== 'Backspace' && e.key !== 'Delete') {\r\n _this.cells[i].setAttribute('type', 'text');\r\n }\r\n });\r\n p.addEventListener('focus', function () {\r\n p.classList.add('pincode-input--focused');\r\n });\r\n p.addEventListener('blur', function () {\r\n p.classList.remove('pincode-input--focused');\r\n });\r\n });\r\n };\r\n PincodeInput.prototype.onCellChanged = function (index, newVal) {\r\n var _this = this;\r\n if (!this.isTheCellValid(newVal)) {\r\n this.cells[index].classList.remove('pincode-input--filled');\r\n this.cells[index].value = '';\r\n this.getValue();\r\n return;\r\n }\r\n this.cells[index].classList.add('pincode-input--filled');\r\n if (this.secure && this.previewDuration) {\r\n setTimeout(function () {\r\n _this.cells[index].setAttribute('type', 'password');\r\n }, this.previewDuration);\r\n }\r\n this.getValue();\r\n this.focusNextCell();\r\n };\r\n PincodeInput.prototype.onKeyDown = function (e, index) {\r\n switch (e.key) {\r\n case 'ArrowLeft':\r\n this.focusPreviousCell();\r\n break;\r\n case 'ArrowRight':\r\n this.focusNextCell();\r\n break;\r\n case 'Backspace':\r\n if (!this.cells[index].value.length)\r\n this.onCellErase(index, e);\r\n }\r\n };\r\n PincodeInput.prototype.onCellErase = function (index, e) {\r\n var isThisCellFilled = this.cells[index].value.length;\r\n if (!isThisCellFilled) {\r\n this.focusPreviousCell();\r\n e.preventDefault();\r\n }\r\n };\r\n PincodeInput.prototype.focusPreviousCell = function () {\r\n if (!this.focusedCellIdx)\r\n return;\r\n this.focusCellByIndex(this.focusedCellIdx - 1);\r\n };\r\n PincodeInput.prototype.focusNextCell = function () {\r\n if (this.focusedCellIdx === this.cells.length - 1)\r\n return;\r\n this.focusCellByIndex(this.focusedCellIdx + 1);\r\n };\r\n PincodeInput.prototype.focusCellByIndex = function (index) {\r\n if (index === void 0) { index = 0; }\r\n var el = this.cells[index];\r\n el.focus();\r\n el.select();\r\n this.focusedCellIdx = index;\r\n };\r\n PincodeInput.prototype.isTheCellValid = function (cell) {\r\n return this.numeric ? !!cell.match(CELL_REGEXP) : cell.length <= 1;\r\n };\r\n PincodeInput.prototype.getValue = function () {\r\n var _this = this;\r\n this.value = '';\r\n this.cells.forEach(function (p) {\r\n _this.value += _this.uppercase ? p.value.toUpperCase() : p.value;\r\n });\r\n if (this.args.onInput)\r\n this.args.onInput(this.value);\r\n };\r\n return PincodeInput;\r\n}());\n\nexport default PincodeInput;\n","import axios from 'axios';\nimport intlTelInput from 'intl-tel-input';\nimport libphonenumbers from 'libphonenumber-js';\nimport PincodeInput from 'pincode-input';\nimport webRestClientApi from '../api/client';\n\n// This is still used in the old showcase and smartlinks (non property gallery for private links\n\nexport default class PrivateToken {\n constructor({ resourceType, viewer_country }) {\n this.resourceType = resourceType;\n this.viewer_country = viewer_country;\n this.tokenSubmitButton = document.querySelector('[data-verification-submit]');\n }\n\n boot() {\n this.initIntTelNumber();\n this.getSessionUuid();\n this.initFormSubmit();\n this.pincodeInput();\n this.initVerificationTokenSubmit();\n this.initResendLink();\n this.isAlreadyAuthorized();\n }\n\n initIntTelNumber() {\n const phoneInput = document.querySelector('input#phone');\n this.phoneIntlTel = intlTelInput(phoneInput, {\n responsiveDropdown: true,\n autoFormat: true,\n utilsScript: libphonenumbers,\n initialCountry: this.viewer_country,\n preferredCountries: ['fr', 'es', 'pt', 'be', 'it', 'us'],\n });\n }\n\n initFormSubmit() {\n const self = this;\n const form = document.querySelector('[data-private-information-form] > form');\n const submitButton = document.querySelector('[data-submit-for-private]');\n\n form?.addEventListener('submit', async (e) => {\n try {\n e.preventDefault();\n\n submitButton.classList.add('hidden');\n showLoader(true);\n\n this.formData = Object.fromEntries(new FormData(e.currentTarget));\n this.formData.country = this.phoneIntlTel.getSelectedCountryData().iso2;\n this.formData.session_uuid = this.virtualVisitSessionUuid;\n\n window.eventsManager.logEvent('Virtual visit - Private - Get verification number - click');\n\n const body = { phone_verifications: this.formData };\n const response = await webRestClientApi('smartlinks/phone_verifications', {\n method: 'post',\n body: JSON.stringify(body),\n });\n if (!response.ok) {\n throw new Error(response.statusText);\n }\n\n const { token } = await response.json();\n self.token = token;\n self.showTokenForm(true);\n showLoader(false);\n submitButton.classList.remove('hidden');\n } catch (e) {\n new Toast({\n message: I18n.t('showcases.access.private.wrong_phone_number'),\n type: 'error',\n }).show();\n } finally {\n showLoader(false);\n submitButton.classList.remove('hidden');\n document.getElementById('phone-number').innerText = self.formData.phone;\n self.phoneNumber = self.formData.phone;\n }\n });\n }\n\n pincodeInput() {\n this.pincodeInputValue = null;\n new PincodeInput('[data-pincode-input]', {\n count: 6,\n secure: false,\n numeric: true,\n previewDuration: 200,\n onInput: (value) => {\n this.pincodeInputValue = Number(value);\n },\n });\n }\n\n showTokenForm(bool) {\n const tokenForm = document.querySelector('[data-private-token-form]');\n const informationForm = document.querySelector('[data-private-information-form]');\n if (bool) {\n tokenForm.classList.remove('hidden');\n informationForm.classList.add('hidden');\n } else {\n tokenForm.classList.add('hidden');\n informationForm.classList.remove('hidden');\n }\n }\n\n initVerificationTokenSubmit() {\n this.tokenSubmitButton.addEventListener('click', (e) => {\n e.preventDefault();\n if (this.pincodeInputValue === this.token) {\n this.tokenSubmitButton.disabled = true;\n this.saveInLocalStorage();\n this.sendEmailToAgent();\n setTimeout(this.grantAccess.bind(this), 500);\n window.eventsManager.logEvent('Virtual visit - Private - Submit code button - click');\n } else {\n new Toast({\n message: I18n.t('showcases.access.private.wrong_token_message'),\n type: 'error',\n }).show();\n }\n });\n }\n\n initResendLink() {\n const self = this;\n const resendLink = document.querySelector('[data-resend-link] > span');\n resendLink.addEventListener('click', () => {\n self.showTokenForm(false);\n });\n }\n\n grantAccess() {\n this.tokenSubmitButton.disabled = false;\n const accessDiv = document.getElementById('private-access-token');\n accessDiv.remove();\n }\n\n isAlreadyAuthorized() {\n try {\n const jsonAutorizedTours = localStorage.getItem('private_tour_authorised') || '[]';\n this.autorizedTours = JSON.parse(jsonAutorizedTours) ?? [];\n\n if (this.autorizedTours.includes(this.uuid)) {\n new Toast({\n message: I18n.t('showcases.access.private.already_authorised'),\n type: 'success',\n }).show();\n this.grantAccess();\n }\n } catch (error) {\n console.error(error);\n }\n }\n\n saveInLocalStorage() {\n this.autorizedTours.push(this.uuid);\n localStorage.setItem('private_tour_authorised', JSON.stringify(this.autorizedTours));\n }\n\n sendEmailToAgent() {\n axios.post('/api/web_rest/smartlinks/lead_access', {\n data: this.formData,\n });\n }\n\n getSessionUuid() {\n this.virtualVisitSessionUuid = document\n .querySelector('meta[name=\"smartlink-view-uuid\"]')\n ?.getAttribute('content');\n }\n}\n\nconst showLoader = (bool) => {\n const loader = document.getElementById('loader');\n if (bool) {\n loader.classList.remove('hidden');\n } else {\n loader.classList.add('hidden');\n }\n};\n","export const clientApi = (url, options) => {\n const csrfTokenTag = document.querySelector(\"meta[name='csrf-token']\");\n\n const headers = {\n ...(!!csrfTokenTag && { 'X-CSRF-TOKEN': csrfTokenTag.getAttribute('content') }),\n ...(options?.headers ?? {}),\n };\n\n return fetch(url, { ...options, headers });\n};\n\nexport const webRestClientApi = (url, options) => {\n const jwtMetaTag = document.querySelector(\"meta[name='jwt']\");\n\n const headers = {\n 'Content-Type': 'application/json',\n ...(!!jwtMetaTag && { Authorization: `Bearer ${jwtMetaTag.getAttribute('content')}` }),\n ...(options?.headers ?? {}),\n };\n\n return clientApi(`/api/web_rest/${url}`, { ...options, headers });\n};\n\nexport const responseToJson = async (response) => {\n try {\n return await response.json();\n } catch (err) {\n return null;\n }\n};\n\nexport const responseToJsonOrCatchError = async (response) => {\n const data = await responseToJson(response);\n if (!response.ok) throw new Error(data);\n return data;\n};\n\nexport default webRestClientApi;\n"],"names":["PincodeInput","selector","args","_a","count","_b","secure","_c","previewDuration","_d","numeric","_e","uppercase","this","document","querySelector","cells","focusedCellIdx","value","setCells","prototype","i","cell","createElement","classList","add","setAttribute","style","textTransform","push","appendChild","initCells","_this","forEach","p","addEventListener","e","currentTarget","onCellChanged","onKeyDown","key","remove","index","newVal","isTheCellValid","getValue","setTimeout","focusNextCell","focusPreviousCell","length","onCellErase","preventDefault","focusCellByIndex","el","focus","select","match","toUpperCase","onInput","PrivateToken","constructor","resourceType","viewer_country","tokenSubmitButton","boot","initIntTelNumber","getSessionUuid","initFormSubmit","pincodeInput","initVerificationTokenSubmit","initResendLink","isAlreadyAuthorized","phoneInput","phoneIntlTel","responsiveDropdown","autoFormat","utilsScript","initialCountry","preferredCountries","self","form","submitButton","showLoader","formData","Object","fromEntries","FormData","country","getSelectedCountryData","iso2","session_uuid","virtualVisitSessionUuid","window","eventsManager","logEvent","body","phone_verifications","response","method","JSON","stringify","ok","Error","statusText","token","json","showTokenForm","Toast","message","I18n","t","type","show","getElementById","innerText","phone","phoneNumber","pincodeInputValue","Number","bool","tokenForm","informationForm","disabled","saveInLocalStorage","sendEmailToAgent","grantAccess","bind","jsonAutorizedTours","localStorage","getItem","autorizedTours","parse","includes","uuid","error","console","setItem","data","getAttribute","loader","clientApi","url","options","csrfTokenTag","headers","fetch","webRestClientApi","jwtMetaTag","Authorization","responseToJson","err","responseToJsonOrCatchError"],"sourceRoot":""}