{"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":""}