{"version":3,"file":"phone_mask_controller-BHP6Fvyd.js","sources":["../../app/assets/javascript/controllers/input_masks/phone_mask_controller.js"],"sourcesContent":["import { Controller } from '@hotwired/stimulus'\n\nexport default class extends Controller {\n\n connect() {\n this.element.addEventListener('input', this.mask.bind(this))\n this.mask()\n }\n\n disconnect(){\n this.element.removeEventListener('input', this.mask.bind(this))\n }\n\n mask(event) {\n const input = event ? event.target : this.element\n let value = input.value.replace(/\\D/g, '')\n\n if (value.length == 0) {\n input.value = ''\n return\n }\n\n if (value.length > 10) {\n value = value.slice(0, 10)\n }\n\n const areaCode = value.slice(0, 3)\n const middle = value.slice(3, 6)\n const last = value.slice(6, 10)\n\n if (value.length <= 3) {\n input.value = `(${areaCode}`\n } else if (value.length <= 6) {\n input.value = `(${areaCode}) ${middle}`\n } else {\n input.value = `(${areaCode}) ${middle}-${last}`\n }\n }\n}\n"],"names":["phone_mask_controller","Controller","event","input","value","areaCode","middle","last"],"mappings":"8HAEe,MAAKA,UAASC,CAAW,CAEtC,SAAU,CACR,KAAK,QAAQ,iBAAiB,QAAS,KAAK,KAAK,KAAK,IAAI,CAAC,EAC3D,KAAK,KAAI,CACb,CAEE,YAAY,CACV,KAAK,QAAQ,oBAAoB,QAAS,KAAK,KAAK,KAAK,IAAI,CAAC,CAClE,CAEE,KAAKC,EAAO,CACV,MAAMC,EAAQD,EAAQA,EAAM,OAAS,KAAK,QAC1C,IAAIE,EAAQD,EAAM,MAAM,QAAQ,MAAO,EAAE,EAEzC,GAAIC,EAAM,QAAU,EAAG,CACrBD,EAAM,MAAQ,GACd,MACN,CAEQC,EAAM,OAAS,KACjBA,EAAQA,EAAM,MAAM,EAAG,EAAE,GAG3B,MAAMC,EAAWD,EAAM,MAAM,EAAG,CAAC,EAC3BE,EAASF,EAAM,MAAM,EAAG,CAAC,EACzBG,EAAOH,EAAM,MAAM,EAAG,EAAE,EAE1BA,EAAM,QAAU,EAClBD,EAAM,MAAQ,IAAI,OAAAE,GACTD,EAAM,QAAU,EACzBD,EAAM,MAAQ,IAAI,OAAAE,EAAQ,MAAK,OAAAC,GAE/BH,EAAM,MAAQ,IAAI,OAAAE,EAAQ,MAAK,OAAAC,EAAM,KAAI,OAAAC,EAE/C,CACA"}